C 探测道路上的标志

C 探测道路上的标志,c,image,image-processing,opencv,computer-vision,C,Image,Image Processing,Opencv,Computer Vision,我有一个视频,上面有左转、右转等标志。 我必须检测这些迹象。我正在进行模板匹配,在模板匹配中,我匹配边缘检测到的输出,但我没有得到令人满意的结果,是否有其他方法来检测它?请帮助。使用SIFT或SURF。你可以通过训练获得不变的描述符。你可以确定表示道路标记(左转、右转或停止)的向量是否与视频中的新向量匹配。如果你想要一个不太复杂但比模板匹配更稳健的解决方案,我建议你在SIFT描述符上进行Hough投票。该方法为各种问题提供了一定程度的鲁棒性,包括标志的部分遮挡、照明变化和标志变形。特别是,该方法

我有一个视频,上面有左转、右转等标志。
我必须检测这些迹象。我正在进行模板匹配,在模板匹配中,我匹配边缘检测到的输出,但我没有得到令人满意的结果,是否有其他方法来检测它?请帮助。

使用SIFT或SURF。你可以通过训练获得不变的描述符。你可以确定表示道路标记(左转、右转或停止)的向量是否与视频中的新向量匹配。

如果你想要一个不太复杂但比模板匹配更稳健的解决方案,我建议你在SIFT描述符上进行Hough投票。该方法为各种问题提供了一定程度的鲁棒性,包括标志的部分遮挡、照明变化和标志变形。特别是,该方法对模板对象的旋转和均匀缩放是完全不变的

该算法的基本思想如下:

a) 从模板中提取SIFT特征并查询图像

b) 在模板图像中设置任意参考点,并为模板图像中的每个关键点计算从关键点到参考点的向量

c) 将模板图像中的关键点匹配到查询图像

d) 对查询图像中该关键点同意的所有对象位置的每个匹配关键点进行投票。您可以使用步骤(b)中计算的向量以及查询图像中匹配关键点的位置、比例和方向来完成此操作

e) 如果对象确实位于图像中,则投票贴图在其位置处应有一个强大的局部最大值

f) 或者,您可以使用模板匹配来验证检测


你可以在维基百科或原著(D.Lowe)中阅读更多关于该方法的信息。

你可以尝试提取特征并训练分类器(线性判别法、神经网络、朴素贝叶斯等)。你可能会尝试很多候选特征,但我认为你不需要太复杂的东西,即使边缘检测很差,假设符号的隔离度很好。需要考虑的一些特征是:水平和垂直投影(行和列总计)和边缘像素的简单统计(均值、标准偏差、偏斜等)。 “形状分类与分析:理论与实践”,Costa和Cesar著

“图像处理和计算机视觉算法”,J.R.Parker著


Gonzalez和Woods的“数字图像处理”

如果不进行大量的额外研究,很难根据这个答案提出一个有效的算法(要选择哪些特征?要选择哪个分类器?特征和分类器的具体组合会有多好?需要多少正面和负面示例来训练分类器?如何处理可变照明、姿势、杂波、遮挡、噪声、模糊等?).你能更精确地说明你的D点吗?我正在使用OpenCV实现,但没有类似的东西,只有单应性的RANSAC。我想使用Hough投票,但我没有清楚地得到“对于查询图像中该关键点同意的所有对象位置”只给出1个匹配,哪些是关键点同意的所有位置?我将解释为关键点投票意味着什么:创建一个与查询图像相同维度的图像,初始化为全零。这是投票地图。现在,对于每个匹配的关键点,在关键点的图像坐标处向投票地图添加一些正值。将所有关键点的投票数相加后,您已准备好投票地图,现在可以在其中查找强最大值。请注意,您不会在关键点周围的投票地图上仅为一个像素添加值,而是添加一个以其坐标为中心的二维高斯分布,以考虑关键点的位置不确定性