OpenCV 2.4.8(Python)确定箭头的方向

Kno*_*ose 4 opencv orientation python-2.7 ubuntu-12.04 beagleboneblack

我目前正在开展一个项目,我需要确定箭头的方向.这些箭头将用作机器人的输入,以确定它应该行进的方向.

我正在使用带有Ubuntu和OpenCV 2.4.8的Beaglebone Black.我正在试验SURF,ORB,SIFT,Moments和BFMatcher.我还没有找到一种可靠的方法来确定箭头的方向.这需要实时完成,因为我们将使用视频中的帧.

我想知道是否有人能提供可靠的解决方案来确定箭头的方向?

这是一个示例图像:

Har*_*ris 8

这是一些方法,我认为它将适用于您提供的图像.

由于您的箭头图像对于每个角都具有以下角度,如下图所示,您始终可以将箭头尖视为角度接近90度的角,以及角度接近45度的相邻角.

这是找到箭头尖,计算制作箭头指针的相邻线的角度,并加上角度,这将是你的箭头方向.

在此输入图像描述

所以试试吧

  1. 查找轮廓和近似值.

  2. 找到每条线的角度以及角(相邻线之间的角度).

  3. 使用以上角落标准搜索箭头的提示.

  4. 现在你得到了箭头指针和相邻的线(带角度),将这两条线的结果作为你的方向,这就是加起来的角度.

另请参阅此链接可能会有所帮助.