<分区>
我正在处理一些扫描的文本图像,我需要突出显示该图像中的所有单词。我知道这个问题等同于查找周围有额外空白的子图像。
OCR 无法使用,我只需要用边框勾勒出每个单词。 有人可以建议如何使用 OpenCV 完成它。
我已经尝试阅读有关阈值和分割的内容。我只是在找人给我指点一些相关 Material 。
<分区>
我正在处理一些扫描的文本图像,我需要突出显示该图像中的所有单词。我知道这个问题等同于查找周围有额外空白的子图像。
OCR 无法使用,我只需要用边框勾勒出每个单词。 有人可以建议如何使用 OpenCV 完成它。
我已经尝试阅读有关阈值和分割的内容。我只是在找人给我指点一些相关 Material 。
最佳答案
我认为您的图片包含多行文字。那样的话,首先你要做的就是检测这些线路。
为此,首先使用 Otsu 的方法或自适应阈值对图像进行二值化。
然后,您可以使用所谓的“水平直方图”。它本身就像一个直方图,但会显示哪些地方有线条,哪些地方有空格。因此,将图像划分为空白行,然后得到每一行。下面是水平直方图的图像。
现在对于每一行,找到水平直方图。在此之前,尝试做一些扩张和侵 eclipse ,以便所有字母组合在一起。然后你可以在每行上找到连接的组件来获取每个单词。然后画出边界。
下图显示了水平和垂直直方图:
这个 SOF 可能有帮助:How to convert an image into character segments?
关于image-processing - 使用opencv进行分词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12764624/