目前我试图做这种类型的图像上线检测:线检测蟒蛇从图片
顶部和底部有黑条只是因为,我拍的照片,不是因为调整大小或任何东西。
我用下面的代码:
image = cv2.imread('test_2.jpg')
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
edges = cv2.Canny(gray, 100, 250)
lines = cv2.HoughLinesP(edges, 1, np.pi/180, 25, minLineLength=100, maxLineGap=50)
hough = np.zeros(image.shape, np.uint8)
for line in lines:
x1, y1, x2, y2 = line[0]
cv2.line(hough, (x1, y1), (x2, y2), (255, 255, 255), 2)
cv2.imwrite('hough.jpg', hough)
而且我得到了在最后的台词:
有没有我可以使用,这将有助于我什么概念呢?
我试着改变Canny
和HoughLinesP
不同的参数调用,但它似乎没有帮助。
编辑:我试图检测图片上的所有线条。 3条水平线以及所有垂直线(交叉或仅在水平线的顶部)以及倾斜线。 我的主要问题是一些垂直线没有出现,并且每条线都有两条线,而不是一条线,这正是我需要的。 我想我可以轻松处理双线问题,但我不知道如何处理缺失的线条。
你没告诉我们你想要的结果是什么。 –
对不起,这似乎很明显。我编辑了我的帖子来解释它。 –