Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 二值图像中的车道检测(由云点形成)_Python_Opencv_Image Processing_Hough Transform - Fatal编程技术网

Python 二值图像中的车道检测(由云点形成)

Python 二值图像中的车道检测(由云点形成),python,opencv,image-processing,hough-transform,Python,Opencv,Image Processing,Hough Transform,我一直试图在我使用点云创建的二值图像中检测车道,但由于某些原因,我无法正确地检测到车道。下面是输入图像 这是我使用canny后得到的图像 但是经过Hough变换后的最终图像看起来并不好。我试着改变参数,但没有多大帮助 img = cv2.imread('cp.jpg') gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) blurred = cv2.GaussianBlur(gray, (3, 3), 0) edges = cv2.Canny(blurre

我一直试图在我使用点云创建的二值图像中检测车道,但由于某些原因,我无法正确地检测到车道。下面是输入图像

这是我使用canny后得到的图像

但是经过Hough变换后的最终图像看起来并不好。我试着改变参数,但没有多大帮助

img = cv2.imread('cp.jpg')
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
blurred = cv2.GaussianBlur(gray, (3, 3), 0)
edges = cv2.Canny(blurred,10,150,apertureSize = 3)
cv2.imwrite('canny_image.jpg',edges)
cv2.waitKey(0)
minLineLength = 1
maxLineGap = 5
lines = cv2.HoughLinesP(edges,1,np.pi/180,200,minLineLength,maxLineGap)
for arr in lines:
 x1,y1,x2,y2 = arr[0]
 cv2.line(img,(x1,y1),(x2,y2),(0,0,255), 4)

cv2.imwrite('hough.jpg',img)
cv2.waitKey(0)

尝试更改参数
minLineLength
maxLineGap
,应该可以。否则,请尝试
形态学操作
。您的二值图像看起来很平滑,但仔细检查,线条形成中似乎有小的中断,我建议应用一些形态学操作来连接远处的白色像素,以获得更好的结果。