开源ocr哪个好_中文ocr文字识别keras

(27) 2024-07-09 08:01:01

1. 环境搭建

参考:《PaddleOCR加载chinese_ocr_db_crnn_server模型进行中英文混合预测(命令行)实践》

2. 代码
import paddlehub as hub import cv2 # 待预测图片 test_img_path = ["./pic/0-1.jpg"] def predict(): # 选择chinese_ocr_db_crnn_server模型 ocr = hub.Module(name="chinese_ocr_db_crnn_server") # 选择chinese_ocr_db_crnn_mobile模型 # ocr = hub.Module(name="chinese_ocr_db_crnn_mobile") np_images = [cv2.imread(image_path) for image_path in test_img_path] results = ocr.recognize_text( images=np_images, # 图片数据,ndarray.shape 为 [H, W, C],BGR格式; use_gpu=False, # 是否使用 GPU;若使用GPU,请先设置CUDA_VISIBLE_DEVICES环境变量 output_dir='ocr_result', # 图片的保存路径,默认设为 ocr_result; visualization=True, # 是否将识别结果保存为图片文件; box_thresh=0.5, # 检测文本框置信度的阈值; text_thresh=0.5) # 识别中文文本置信度的阈值; for result in results: data = result['data'] save_path = result['save_path'] for infomation in data: print('text: ', infomation['text'], '\nconfidence: ', infomation['confidence'], '\ntext_box_position: ', infomation['text_box_position']) if __name__ == '__main__': # show_img() predict() 

关于模型的几点说明:
OCR根据应用场景可以大致分成“特定场景下的专用OCR”以及“多种场景下的通用OCR”。
专用OCR - 可以针对特定场景进行设计、优化以达到最好的特定场景下的效果展示,证件识别以及车牌识别就是专用OCR的典型案例。
通用OCR - 就是使用在更多、更复杂的场景下,拥有比较好的泛性。在这个过程中由于场景的不确定性,比如:图片背景极其丰富、亮度不均衡、光照不均衡、残缺遮挡、文字扭曲、字体多样等等问题,会带来极大的挑战。

这一套模型属于专用OCR,又分为:
(1)精简版,即chinese_ocr_db_crnn_mobile(inference模型大小约5.4MB);
(2)高精度版,即chinese_ocr_db_crnn_server(inference模型大小约105MB)。
该模型支持(1)中英文数字组合识别、(2)竖排文字识别、(3)长文本识别。且只支持“一键识别”,我的理解就是像全自动傻瓜相机一样:不需要也不支持参数调节。
实测结果显示,精简版能达到和高精度版几乎相同的预测准确性,运算耗时大约为后者的一半。

3. 预测结果

开源ocr哪个好_中文ocr文字识别keras (https://mushiming.com/)  第1张
开源ocr哪个好_中文ocr文字识别keras (https://mushiming.com/)  第2张
E:\test\PycharmProjects\PaddleStudy2\venv\Scripts\python.exe E:/test/PycharmProjects/PaddleStudy2/main.py
E:\test\PycharmProjects\PaddleStudy2\venv\lib\site-packages\pip_vendor\packaging\version.py:127: DeprecationWarning: Creating a LegacyVersion has been deprecated and will be removed in the next major release
warnings.warn(
E:\test\PycharmProjects\PaddleStudy2\venv\lib\site-packages\pip_vendor\packaging\version.py:127: DeprecationWarning: Creating a LegacyVersion has been deprecated and will be removed in the next major release
warnings.warn(
[2021-03-16 09:24:40,232] [ WARNING] - The _initialize method in HubModule will soon be deprecated, you can use the __init__() to handle the initialization of the object
[2021-03-16 09:24:41,158] [ WARNING] - The _initialize method in HubModule will soon be deprecated, you can use the __init__() to handle the initialization of the object
text: 双耳机配对
confidence: 0.96655
text_box_position: [[64, 63], [301, 69], [299, 119], [63, 113]]
text: 首次配对方法:
confidence: 0.52563
text_box_position: [[71, 186], [336, 194], [334, 232], [70, 225]]
text: 1、取出两只耳机,再将两只耳机放回充电盒中
confidence: 0.19238
text_box_position: [[67, 245], [767, 258], [767, 297], [67, 283]]
text: (此步骤为新机激活)
confidence: 0.01501
text_box_position: [[116, 293], [411, 300], [410, 335], [115, 328]]
text: 2、再次取出两只耳机
confidence: 0.1106
text_box_position: [[67, 339], [401, 349], [399, 384], [66, 374]]
text: 3、刷新手机蓝牙设备列表,点击配对QCY-T1C,完成配对
confidence: 0.01208
text_box_position: [[67, 388], [937, 402], [937, 437], [67, 422]]
text: 耳机取出会自动开机,若未自动开机,请充电后重新尝试
confidence: 0.3103
text_box_position: [[80, 436], [938, 451], [938, 483], [80, 468]]
text: 切换设备配对方法:
confidence: 0.47803
text_box_position: [[71, 536], [421, 536], [421, 573], [71, 573]]
text: 1、关闭A手机蓝牙,耳机自动断开进入配对模式
confidence: 0.39343
text_box_position: [[67, 590], [791, 598], [791, 636], [67, 629]]
text: 2、刷新B手机蓝牙设备列表,点击配对QCY-T1C,完成配对
confidence: 0.12585
text_box_position: [[63, 638], [964, 649], [964, 695], [63, 684]]
text: *不支持同时连接两台手机,下次开机默认回连上次配对的手机
confidence: 0.99414
text_box_position: [[73, 686], [989, 698], [989, 748], [73, 736]]
text: 双耳机配对
confidence: 0.81921
text_box_position: [[68, 61], [310, 74], [306, 124], [65, 112]]
text: 首次配对方法:
confidence: 0.69348
text_box_position: [[76, 187], [342, 194], [341, 233], [75, 226]]
text: 1、取出两只耳机,再将两只耳机放回充电盒中
confidence: 0.83142
text_box_position: [[71, 245], [772, 257], [772, 297], [71, 285]]
text: (此步骤为新机激活)
confidence: 0.90125
text_box_position: [[121, 294], [417, 300], [417, 337], [121, 331]]
text: 2、再次取出两只耳机
confidence: 0.9325
text_box_position: [[72, 343], [407, 350], [407, 382], [72, 374]]
text: 3、刷新手机蓝牙设备列表,点击配对QCY-T1C,完成配对
confidence: 0.14868
text_box_position: [[71, 389], [941, 398], [941, 435], [71, 425]]
text: 耳机取出会自动开机,若未自动开机,请充电后重新尝试
confidence: 0.56665
text_box_position: [[85, 438], [942, 446], [942, 479], [85, 471]]
text: 切换设备配对方法:
confidence: 0.41016
text_box_position: [[75, 536], [428, 536], [428, 575], [75, 575]]
text: 1、关闭A手机蓝牙,耳机自动断开进入配对模式
confidence: 0.46289
text_box_position: [[75, 595], [800, 595], [800, 630], [75, 630]]
text: 2、、刷新B手机蓝牙设备列表,点击配对QCY-T1C,完成配对
confidence: 0.9303
text_box_position: [[68, 641], [966, 643], [966, 687], [68, 685]]
text: *不支持同时连接两台手机,下次开机默认回连上次配对的手机
confidence: 0.94958
text_box_position: [[76, 689], [990, 692], [990, 739], [76, 736]]
text: 不支持同时连接两台手机
confidence: 0.66968
text_box_position: [[7, 4], [369, 4], [369, 28], [7, 28]]
text: 不支持同时连接两台手机
confidence: 0.11951
text_box_position: [[7, 5], [371, 3], [371, 27], [7, 30]]
text: then
confidence: 0.92871
text_box_position: [[9, 7], [142, 7], [142, 63], [9, 63]]
text: tr
confidence: 0.22607
text_box_position: [[331, 13], [391, 23], [389, 65], [329, 52]]
text: agair
confidence: 0.5752
text_box_position: [[423, 7], [586, 2], [586, 76], [423, 81]]
W0316 09:24:40. 16684 analysis_predictor.cc:1145] Deprecated. Please use CreatePredictor instead.
Process finished with exit code 0

4. 更多效果展示

图1:开源ocr哪个好_中文ocr文字识别keras (https://mushiming.com/)  第3张
开源ocr哪个好_中文ocr文字识别keras (https://mushiming.com/)  第4张
text: 宁波高尔节能科技有限公司
text: GAOER
text: 冷冻式干燥机
text: 型号GEAD-6F
text: 环境温度≤38℃入口温度<80℃空气处理量6.5m3
text: 压力露点2°C~10℃电流5.5A
text: 额定工作压力<1MPa
text: 冷媒R22
text: 功率1.228kw
text: 电源220V/50Hz
text: 重量
text: 外形尺寸880X550X1025
text: 出厂编号
text: 出厂日期
text: 浙江宁波溪口工业区综研路30-1号

图2:开源ocr哪个好_中文ocr文字识别keras (https://mushiming.com/)  第5张
开源ocr哪个好_中文ocr文字识别keras (https://mushiming.com/)  第6张
text: 中国北汽银翔汽车有限公司制造
text: VIN:LNBMDBAANGU091086
text: 品牌北京牌
text: 整车型号BJ6450BLV1Z
text: 最大净功率70.5kW
text: 发动机型号BJ415A
text: 最大允许总质量1925kg
text: 发动机排量1500ml
text: 制造年月2
text: 2016年5月
text: 乘员数

图3:开源ocr哪个好_中文ocr文字识别keras (https://mushiming.com/)  第7张
开源ocr哪个好_中文ocr文字识别keras (https://mushiming.com/)  第8张
text: ZNO5A
text: 号:
text: 选线路数:
text: 型
text: kY
text: 外壳防护等级
text: 额定电压:
text: Hz
text: 50
text: 电抗器额定功率
text: 额定频率:
text: 年
text: 20
text: 期:
text: 制造日
text: 月
text: 出厂编号:
text: RH
text: 产品综合:Q/PY)ZNDL1-2006标准
text: 传真:020-
text: 020-..
text: 网址:
text: 联系电话:
text: www.nzhdl.com
text: 邮编:
text: zaonet@126.com
text: 电子邮箱:
text:
text: 地
text: 址:广州市番昌迎宾路730号天安科技园创新821

图4:
开源ocr哪个好_中文ocr文字识别keras (https://mushiming.com/)  第9张
开源ocr哪个好_中文ocr文字识别keras (https://mushiming.com/)  第10张
text: 厦门赛恩机电科技有限公司
text: 电话:0592-
text:
text: 制造日期:2010年

【参考文档】
《PaddleHub一键OCR中文识别》

THE END

发表回复