OpenCV 是一个用于计算机视觉应用程序的库。在 OpenCV 的帮助下,我们可以构建大量实时运行更好的应用程序。主要用于图像和视频处理。
可以在此处获取有关 OpenCV 的更多信息 ( https://opencv.org/)
除了 OpenCV,我们将使用 MediaPipe 库。
MediaPipe
MediaPipe是一个主要用于构建音频、视频或任何时间序列数据的框架。在 MediaPipe 框架的帮助下,我们可以为不同的媒体处理功能构建管道。
MediaPipe 的一些主要应用。
多手追踪
人脸检测
对象检测和跟踪
Objection:3D 对象检测和跟踪
AutoFlip:自动视频裁剪管道等。
手地标模型
MediaPipe 使用单次手掌检测模型,一旦完成,它会对检测到的手部区域中的 21 个 3D 手掌坐标执行精确的关键点定位。
MediaPipe 管道使用多个模型,例如,从完整图像返回定向手边界框的手掌检测模型。裁剪后的图像区域被馈送到由手掌检测器定义的手部标志模型,并返回高保真 3D 手部关键点。
现在让我们实现手部跟踪模型。
安装所需的模块
–> pip install opencv-python
–> pip install mediapipe
首先,让我们检查网络摄像头的工作情况。
import cv2
import time
cap = cv2.VideoCapture(0)
pTime = 0
while True:
success, img = cap.read()
imgRGB = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
cTime = time.time()
fps = 1 / (cTime - pTime)
pTime = cTime
cv2.putText(img, f'FPS:{int(fps)}', (20, 70), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 0), 2)
cv2.imshow("Test", img)
cv2.waitKey(1)
如果任何网络摄像头连接到你的 PC,上面的代码将弹出一个窗口,