检测线路在视频的OpenCV中心(Detect Line in center of video Op

2019-10-18 16:55发布

现在我的工作需要我去检测何时穿孔线是在视频图像的中间,然后输出串行指令来控制切割器臂的项目。 现在我可以查出是垂直的(这是我想要的)线,但是当他们在屏幕的中心,我不能只是检测。 此外,我想象使用从以下线路输出,我可以告诉大家,有被检测线?:

lines = cv2.HoughLinesP(edges, 1, math.pi/1, 1, None, 23, 1)

我的主要问题是使用OpenCV的/蟒蛇,我怎样检测垂直线只是在视频输出,以便中心计算有多少套穿孔已通过相机和X停止,当列队削减如下??? ??

图片我想可能是看到什么https://www.dropbox.com/s/13v9g92uw40riiq/good.png

完整的工作代码波纹管:

import cv2
import os
import math
import numpy
import scipy

vc =cv2.VideoCapture(0)
if vc.isOpened():
rval, frame = vc.read()
else:
rval = False

while rval:
rval, frame = vc.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
edges = cv2.Canny(gray, 80, 120, apertureSize=3)

lines = cv2.HoughLinesP(edges, 1, math.pi/1, 1, None, 23, 1)    #20-25 works well 

if lines != None:       
    for line in lines[0]:
        pt1 = (line[0],line[1])
        pt2 = (line[2],line[3])
        cv2.line(frame, pt1, pt2, (0,0,255), 2)

cv2.imshow("edge", frame)
ch = cv2.waitKey(50)

if ch != -1:
    print "keypressed"
    print ch
    break
cv2.destroyAllWindows()
文章来源: Detect Line in center of video OpenCV