opencv-python ,写一个脚本,读取视频,然后在窗口的第一张帧画矩形框,把矩形框坐标保存下来
时间: 2024-10-14 13:09:21 浏览: 20
OpenCV-Python是一个Python接口,用于访问OpenCV库的强大功能,包括图像处理、计算机视觉和机器学习。下面是一个简单的脚本,它使用cv2模块来读取视频并在第一帧上绘制一个矩形,并记录矩形框的坐标:
```python
import cv2
# 打开摄像头或视频文件
cap = cv2.VideoCapture('your_video.mp4') # 替换为你要读取的实际视频路径
if not cap.isOpened():
print("无法打开视频")
else:
# 读取视频的第一帧
ret, frame = cap.read()
if ret:
# 定义矩形框的坐标,假设我们选择左上角(0,0)到右下角(100,100)
x, y, w, h = 50, 50, 50, 50
# 绘制矩形并获取其坐标
cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2) # 绿色矩形
rect_coords = (x, y, w, h)
# 显示结果帧
cv2.imshow('Video with rectangle', frame)
# 记录坐标
with open('rectangle_coordinates.txt', 'w') as f:
f.write(f"Coordinates: ({rect_coords[0]},{rect_coords[1]}), ({rect_coords[0]+rect_coords[2]},{rect_coords[1]+rect_coords[3]})\n")
# 按 'q' 键退出循环
if cv2.waitKey(1) & 0xFF == ord('q'):
break
else:
print("无法读取视频帧")
# 释放资源并关闭窗口
cap.release()
cv2.destroyAllWindows()
阅读全文