使用opencv进行分词

cod*_*fun 7 opencv image-processing image-segmentation

我正在研究一些扫描的文本图像,我需要突出显示该图像中的所有单词.我知道问题等同于查找周围有额外空格的子图像.

OCR无法使用,我只需要用边框勾勒每个单词.有人可以建议如何使用OpenCV完成它.

我曾尝试阅读有关阈值处理和分段的内容.我只是想找人指点一些相关资料.

Abi*_*n K 20

我认为你的图像有多行文字.在这种情况下,首先要做的是检测这些线.

为此,首先使用Otsu方法或自适应阈值对图像进行二值化.

然后,您可以使用所谓的"水平直方图".它就像直方图本身,但显示有线条的地方和有空格的地方.所以将图像分成空白行,然后得到每一行.下面是水平直方图的图像.

水平直方图

现在为每一行找到水平直方图.在此之前,尝试进行一些扩张和侵蚀,以便将所有字母组合在一起.然后,您可以在每一行上找到连接的组件以获取每个单词.然后绘制边界.

下图显示了水平和垂直直方图:

水平和垂直直方图

此SOF可能会有所帮助:如何将图像转换为字符段?