我目前正在进行一个项目,需要确定箭头的方向。这些箭头将被用作机器人输入,以确定它应该朝哪个方向移动。 我使用带有Ubuntu和OpenCV 2.4.8的Beaglebone Black。我已经尝试使用SURF,ORB,SIFT,Moments和BFMatcher进行实验。我还没有找到一种可靠的方法来确定箭头的方向。由于我们将使用视频帧,因此需要实时完成。 我想知道是否有人可以提供一种可靠的解决方案来确定箭头的方向? 以下是一个样例图像:
这是一些方法,我认为它们可以适用于您提供的图像。由于您的箭头图像每个角度都如下图所示,您始终可以将箭头尖端视为角度接近90度的角,以及与之相邻的角度接近45度的角。也就是说,找出箭头尖端,计算构成箭头指针的相邻线的角度,并相加,这将是您的箭头方向。 所以,请尝试使用 查找轮廓和approxPolyDP。 查找每条线的角度以及拐角(相邻线之间的角度)。 使用上述拐角标准搜索箭头的尖端。 现在您已经获得了箭头指针和相邻线(带有角度),将这两条线的结果作为您的方向,即加起来的角度。 另外,参见此链接可能会有所帮助。
object_finder.py
和find_arrow
方法。 - Hendrikto