如何检测OpenCV中的边线

时间:2017-01-12 05:50:35

标签: android opencv opencv4android opencv-contour

分割后输入图像如下所示: segmented image

现在我如何检测下面显示的边线: edges to detect

我已经尝试了HoughLines,但似乎只返回了底线。

我的目标是裁剪下图中的标记区域: crop area

1 个答案:

答案 0 :(得分:0)

如果你的大矩形总是有这么好的边缘(没有孔的边),并且这个矩形内的所有组件总是要小得多,你可以使用connectedComponentsWithStats(),它会产生长度的边,然后选择最长的边缘。在Python中:

nb_edges, output, size, centroids = cv2.connectedComponentsWithStats(image, connectivity=8)
#then select the edge with the biggest size