假设我有一张如上图所示的场景图像。图像中有一个带有圆形物体的杆子,旁边可能有类似的没有圆形物体的物体。我如何找到用红色圆圈标记的圆形物体(一个二值图像,指示哪些像素属于该圆形物体)。
请注意,带有圆形物体的杆子可能任意旋转,大小也可能变化。
回答:
你能尝试在以下4个步骤中完成吗?
- 圆形检测,如:使用OpenCV进行鲁棒的(颜色和大小不变的)圆形检测(基于霍夫变换或其他特征)
- 线条检测,如:使用OpenCV在图像中查找矩形的位置
-
通过组合邻近的线条来识别矩形位置(对于每个线段,你有起点和终点的位置,你也知道每个线段的方向。这样你可以判断两个连接的线段(其端点接近)是否是正交的。你的目标是为每个矩形找到3个这样的线段。)
-
检查每个圆形和矩形的相对位置,看看是否有任何一对可以形成
旋钮
形状。