https://github.com/cvzone/cvzone 为什么需要实时背景去除? 由于许多原因,视频的背景需要修改,如背景中有很多其他中断或背景颜色不适合该人。 在这里,我们将实现类似的东西,使用 OpenCV 和 CVzone。 让我们开始实施 安装所需的模块。 导入需要的模块 import cv2 import cvzone from cvzone.SelfiSegmentationModule import SelfiSegmentation import 然后我们使用cvzone.stackImages堆叠图像*,* 这里我们将获得背景替换图像或帧的输出。然后使用一个简单的 if 语句,分配键来更改背景。 import cv2 import cvzone from cvzone.SelfiSegmentationModule import SelfiSegmentation import os cap
开发准备 Python 3 解释器 OpenCV-Python库 cvzone库 mediapipe库(cvzone库依赖) pip安装命令如下: pip install cvzone mediapipe 代码 代码如下: import cv2 from cvzone.SelfiSegmentationModule import SelfiSegmentation # 读取input.png image
•宸 来源丨CSDN博客 使用Mediapipe 水平镜像处理 import cvzoneimport cv2import numpy as npfrom cvzone.HandTrackingModule Image", img) cv2.waitKey(1) 修改代码 import cvzoneimport cv2import numpy as npfrom cvzone.HandTrackingModule 20, (200, 0, 200), cv2.FILLED) # Draw Food rx, ry = self.foodPoint imgMain = cvzone.overlayPNG , (rx - self.wFood // 2, ry - self.hFood // 2)) 为什么不是 imgMain = cvzone.overlayPNG , 600) def update(self, imgMain, currentHead): # 实例方法 if self.gameOver: cvzone.putTextRect
构建布局 让我们使用 cvzone 构建计数器的布局。 5. 编写代码 cv2:执行图像和视频处理 cvzone:与 OpenCV 协同工作 numpy:处理数值运算 YOLO:应用物体检测 sort:用于跟踪检测到的对象(SORT)库。 import cv2 import numpy as np from ultralytics import YOLO import cvzone from sort import sort class_names confidence_pos_y1 = max(36, y1) cv2.rectangle(frame, (x1, y1), (x2, y2), (255, 0, 255), 2) cvzone.putTextRect line_right_road_x1, line_right_road_y) ,(line_right_road_x2, line_right_road_y), (0, 255, 0), 2) cvzone.putTextRect
安装相关模块: pip install OpenCV-python pip install cvzone pip install mediapipe 源码: import cv2 from cvzone.HandTrackingModule
,您可以使用以下代码片段进行预测: 在Opencv中查看: import numpy as np from ultralytics import YOLO import cv2 import cvzone x1,y1,x2,y2 = int(x1),int(y1),int(x2),int(y2) w,h = x2-x1,y2-y1 cvzone.cornerRect ) conf = math.ceil((box.conf[0]*100))/100 cls = int(box.cls[0]) cvzone.putTextRect
Python 3.9.7 ultralytics 8.0.178 opencv-contrib-python 4.8.1.78 opencv-python 4.8.0.74 cvzone 1.5.6 / cv2.rectangle(frame, (x1, y1), (x2 + x1, y2 + y1), (0, 255, 0), 3) cvzone.putTextRect cv2.rectangle(frame, (x1, y1), (x2 + x1, y2 + y1), (0, 0, 255), 3) cvzone.putTextRect (frame, f'ENTER:-{Enter}', (50, 60), 2, 2) cvzone.putTextRect(frame, f'EXIT:-{Exit}', (50, 130), import cv2 from yolo_segmentation import YOLOSEG import cvzone from tracker import * import numpy as
cv2.polylines(frame,[np.array(area,np.int32)],True,(255,255,255),2) c1=(len(counter)) #cvzone.putTextRect