检测图像上文本存在的算法

Joh*_*ohn 36 opencv image image-processing image-recognition computer-vision

通过我的新作业,我正在寻找一种方法来检测图像上是否存在文本.图像是地图 - 例如可以是谷歌地图.任务是检测街道/城市标签的放置位置.

我知道,OpenCV库有算法,可以检测功能(例如人脸) - Haar分类或猪(方向梯度直方图),但我听说,学习这样的算法过程是相当困难的.

您是否知道可以执行此操作的任何算法,方法或库(检测图像上是否存在文本)?

谢谢,约翰

car*_*sdc 21

在视觉中存在标准问题,称为图像中的文本检测.它与OCR完全不同.OCR用它所说的来表达自己,而文本检测则是关于确定图像中是否有文本.Adi Shavit的第三个链接是解决这个问题的方法.你可以看一下google学者关于文本检测的文章.


Adi*_*vit 16

您可以采取几种可能的方法.

  1. 使用OCR.在Stackoverflow上搜索OCR将显示许多选项.这些包括TesseractOcropus.
  2. 如果您的文本使用非常特定的固定字体,您可以使用简单的模板匹配.
  3. 在更一般的情况下,您可能需要查看" 使用笔画宽度变换检测自然场景中的文本 "

更新2017年1月
OpenCV 3.2 contrib模块现在有一个文本检测模块.
它还包括如何使用它的示例.

  • Epshtein等人.纸张(笔画宽度变换)已由[Saurav&Andrew](http://stackoverflow.com/questions/4837124/stroke-width-transform-swt-implementation-java-c/5599470#5599470)实施和共享. (2认同)