道路标志识别

时间:2018-04-19 12:19:02

标签: c++ opencv image-recognition sift orb

目前,我正在处理我正在处理的项目中的问题。该项目是道路标志识别系统。而且上午它可以检测道路标志,几乎可以识别它们,但在这里我遇到了一个问题。

问题

问题在于识别速度标志。这些标志的识别器,不能分隔速度标志内的数字。因此,如果它是80符号,它将匹配为70符号,因为符号几乎相同。

Link with images for recognition

  • “已保存” - 文件夹是我的输入图像
  • “Matching_images” - 文件夹是我的匹配图片

到目前为止我尝试了什么:

a)“多级分类器”:我训练了几个级联分类器,每个级联器都在特定的速度限制等级,例如一个50年代,60年代,等等。这在某种程度上起作用,但表现很差。 主要问题:

• 30 and 80 signs (and others as well) got confused. 
• I am not able to tell if my ROI shows is a speed limit at all.

b)“Features2D”:我尝试了基于特征的分类器,“ORB后面是暴力海明/ FLANN”和“SIFT后跟暴力/ FLANN”和“AKAZE,SURF”。

• signs still got confused 
• no possibility to reject "non speed limit" signs 

c)“OCR”:我试图用OCR example from OpenCV读取符号中的字符,但这不能读取符号,因为我认为图像质量很低。

D)“图像匹配”:这只是不能正常工作,但也许是因为我不知道这是如何工作的。使用此test code进行测试。

E)“带有OCR的FindContours”:FindContours确实可以处理一个特定的图像,但是'8'与'3'匹配,所以速度符号是30符号而不是80符号。

我不想在这个解决方案中使用CNN,因为我觉得它太过分了,因为我只需要读一小部分。

问题:

  • 如何阅读道路标志中的字符以将70标志与80标志等分开......
  • 我怎么知道this是80号,而不是70号。 (无法发布图片......)

提前谢谢你,

莫里斯

0 个答案:

没有答案