繁体   English   中英

如何修改此python opencv程序以从阈值图像获取xy坐标

[英]How to modify this python opencv program to get xy coordinates from thresholded image

我有一个opencv程序在这里跟踪蓝色物体

有人可以将其阈值化为二进制图像后,对其进行修改以查找从网络摄像头跟踪的对象的中心

PS:我希望该程序可以与网络摄像头(而不是图像)一起使用

import numpy as np
import cv2
cap = cv2.VideoCapture(1)
while(True):
ret, frame = cap.read()  
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
lower_blue = np.array([110,50,50])
upper_blue = np.array([130,255,255])
mask = cv2.inRange(gray, lower_blue, upper_blue)
res = cv2.bitwise_and(frame,frame, mask= mask)
# Display the resulting frame
cv2.imshow('frame',gray)
cv2.imshow('mask',mask)
cv2.imshow('res',res)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()

我想从网络摄像头的阈值图像中找到中心,即白色斑点的xy坐标

我有用于查找阈值图像的xy坐标的代码

我想针对网络摄像头的实时视频进行修改

这里是查找二进制图像坐标的代码

for y in xrange(img.size[1]):
for x in xrange(img.size[0]):
if pixels[x, y] == 0:
xlist.append(x)
ylist.append(y)
xleft = min(xlist)
xright = max(xlist)
ytop = min(ylist)
ybot = max(ylist)
xax = (xleft+xright)/2
yax = (ytop+ybot)/2

有人可以组合这2个代码以使其适用于网络摄像头的实时供稿

findContours的bitwise_and后,再拿到boundingRect(或者时刻)的轮廓,以获得x,y位置。

忘记了“查找二进制图像的坐标”的想法。 (不,你希望重塑“连接组件”。使用内建的东西代替)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM