python - OpenCV python输出边界矩形X坐标到对象
问题描述
我需要创建一个具有边界矩形 X 坐标值的对象,该对象正在跟踪运动。在 OpenCV 中使用 Python。有谁知道我可以做到这一点的方法吗?我将使用该对象来计算激光跟踪仪的伺服值。
import cv2
cap=cv2.VideoCapture(0)
ret1,frame1= cap.read()
gray1 = cv2.cvtColor(frame1, cv2.COLOR_BGR2GRAY)
gray1 = cv2.GaussianBlur(gray1, (21, 21), 0)
cv2.imshow('window',frame1)
while(True):
ret2,frame2=cap.read()
gray2 = cv2.cvtColor(frame2, cv2.COLOR_BGR2GRAY)
gray2 = cv2.GaussianBlur(gray2, (21, 21), 0)
deltaframe=cv2.absdiff(gray1,gray2)
frame_flip2 = cv2.flip(deltaframe, -1)
#cv2.imshow('delta',frame_flip2)
threshold = cv2.threshold(deltaframe, 25, 255, cv2.THRESH_BINARY)[1]
threshold = cv2.dilate(threshold,None)
#cv2.imshow('threshold',threshold)
_,countour,heirarchy = cv2.findContours(threshold, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
for i in countour:
if cv2.contourArea(i) < 600:
continue
(x, y, w, h) = cv2.boundingRect(i)
cv2.rectangle(frame2, (x, y), (x + w, y + h), (255, 0, 0), 2)
frame_flip = cv2.flip(frame2, -1)
cv2.imshow('window',frame_flip)
if cv2.waitKey(10) == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
解决方案
推荐阅读
- oracle - Oracle SQL Developer:嵌套表和外键
- javascript - localhost:3000 在浏览器中不起作用
- nlog - 多个布局渲染器之间的可选空格?
- java - 我想通过java中的递归打印1到n个数字
- google-apps-script - 将最新的 Google Drive 文件附加到 Google Sheet
- amazon-web-services - AWS SAM 在 hello world 模板下部署错误
- c# - WPF 线程阻止 MainWindow.xaml
- javascript - 如何使用 React Router 在页面视图之间呈现通用加载屏幕?
- sapui5 - 如何减小简单表格的大小并放置在屏幕中间
- php - 当我选择特定值时,JSON 数据未显示在 PHP 上