opencv 14 OCR 分段字识别(segmented_word_recognition) vs2015

segmented_word_recognition使用tesseract,KNN,CNN三种算法。
如果要配置tesseract环境,参考opencv 13 OCR 端到端识别(end_to_end_recognition) vs2015;如果不配置tesseract环境,运行时,只有KNN,CNN两种结果。

01 资源

OpenCV自带的OCR分段字识别用例,opencv_contrib\modules\text\samples\segmented_word_recognition.cpp。segmented_word_recognition.cpp,可以识别一段文字。
模型文件(需要拷贝到Debug或Release目录中):

opencv_contrib/modules/text/samples/OCRHMM_knn_model_data.xml.gz
opencv_contrib/modules/text/samples/OCRBeamSearch_CNN_model_data.xml.gz
opencv_contrib/modules/text/samples/OCRHMM_transitions_table.xml

测试图片:

opencv_contrib/modules/text/samples/scenetext_segmented_word01.jpg
opencv_contrib/modules/text/samples/scenetext_segmented_word01_mask.png
opencv_contrib/modules/text/samples/scenetext_segmented_word02.jpg
opencv_contrib/modules/text/samples/scenetext_segmented_word02_mask.png
opencv_contrib/modules/text/samples/scenetext_segmented_word03.jpg
opencv_contrib/modules/text/samples/scenetext_segmented_word03_mask.png
opencv_contrib/modules/text/samples/scenetext_segmented_word04.jpg
opencv_contrib/modules/text/samples/scenetext_segmented_word04_mask.png
opencv_contrib/modules/text/samples/scenetext_segmented_word05.jpg
opencv_contrib/modules/text/samples/scenetext_segmented_word05_mask.png

配置tesseract资源,参考opencv 13 OCR 端到端识别(end_to_end_recognition) vs2015

02 编译segmented_word_recognition

参考opencv01 相对完整的编译opencv3.3.0 win版本,编译opencv3.3.0 vs2015版本。
生成文件:D:\git\opencv\build\v3.3.0\x64\bin\Debug\text-example-segmented_word_recognition.exe。
注:如果要运行tesseract结果,参考opencv 13 OCR 端到端识别(end_to_end_recognition) vs2015

03 segmented_word_recognition项目配置

设置segmented_word_recognition项目为启动项。

# 如果路径中有空格,需要使用双引号,参数路径根据自己实际情况调整
配置属性==>调试==>命令参数=-@image=../../../../../../opencv_contrib/modules/text/samples/scenetext_segmented_word03.jpg -@mask=../../../../../../opencv_contrib/modules/text/samples/scenetext_segmented_word03_mask.png
配置属性==>调试==>工作目录=$(OutDir)

04 运行结果

scenetext_segmented_word03.jpg/scenetext_segmented_word03_mask.png结果:

Segmented word recognition.
A demo program on segmented word recognition. Shows the use of the OCRHMMDecoder API with the two provided default character classifiers.

Usage: text-example-segmented_word_recognition.exe [params] image mask

        -?, -h, --help, --usage
                print this message.
        -l, --lex, --lexicon
                (optional) lexicon provided as a list of comma separated words.

        image (value:../../../../../../opencv_contrib/modules/text/samples/scenetext_segmented_word03.jpg)
                source image for recognition.
        mask (value:../../../../../../opencv_contrib/modules/text/samples/scenetext_segmented_word03_mask.png)
                binary segmentation mask where each contour is a character.


 OCR_Tesseract  output "Prlvate lee". Done in 132.917 ms.
 OCR_NM         output "private Hire". Done in 167.645 ms.
 OCR_CNN        output "Private Hire". Done in 6102.24 ms.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值