Python视频跟踪器代码
时间: 2023-11-05 07:53:16 浏览: 82
视频跟踪代码
5星 · 资源好评率100%
以下是一个简单的 Python 视频跟踪器代码,使用 OpenCV 库实现:
```python
import cv2
# 读取视频文件
video = cv2.VideoCapture('video.mp4')
# 选择目标框
ret, frame = video.read()
bbox = cv2.selectROI(frame, False)
# 初始化跟踪器
tracker = cv2.TrackerCSRT_create()
tracker.init(frame, bbox)
while True:
# 读取下一帧
ret, frame = video.read()
if not ret:
break
# 更新跟踪器
success, bbox = tracker.update(frame)
# 绘制目标框
if success:
x, y, w, h = [int(i) for i in bbox]
cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2)
else:
cv2.putText(frame, "Tracking failed!", (100, 80), cv2.FONT_HERSHEY_SIMPLEX, 0.75, (0, 0, 255), 2)
# 显示结果
cv2.imshow('Video', frame)
if cv2.waitKey(1) == ord('q'):
break
# 释放资源
video.release()
cv2.destroyAllWindows()
```
该代码使用 CSRT 跟踪器,可以根据实际需求选择其他跟踪器,例如 KCF、MOSSE 等。同时,该代码也使用了 OpenCV 的选择 ROI(Region of Interest)功能,可以让用户在视频帧中选择跟踪目标的位置。
阅读全文