公司法
当前位置: 首页 法律大全

ocr精准识别架构(支持最广的OCR开源平台)

时间:2023-08-13 作者: 小编 阅读量: 1 栏目名: 法律大全

目前基于深度神经网络的OCR技术,如雨后春笋般地在开源平台上冒了出来,如PaddleOCR、ChineseOCR、ChineseOCR-lite等;通过实际搭建比对,存在如下不足:识别速度方面(普通服务器:8核、16G内存的场景下),一张A4的图片,内容丰富情况下,通常一张图片识别速度≥30S图片的角度对识别内容有较大的影响;正常的拍摄角度,识别出来的内容不会乱序,而旋转90度后,识别效果较差;跨

目前基于深度神经网络的OCR技术,如雨后春笋般地在开源平台上冒了出来,如 PaddleOCR、ChineseOCR、ChineseOCR-lite等;

通过实际搭建比对,存在如下不足:

  • 识别速度方面(普通服务器:8核、16G内存的场景下),一张A4的图片,内容丰富情况下,通常一张图片识别速度≥30S
  • 图片的角度对识别内容有较大的影响;正常的拍摄角度,识别出来的内容不会乱序,而旋转90度后,识别效果较差;
  • 跨平台能力、多语言支持较差,通常只支持python、C,其他语言需要通过相关协议衔接,如Http Restful接口协议等;
  • 模型优化更新慢;通常部分开源产品,可能是大厂KPI的产品,存在长时间不更新的情况,而小白本身又不具备优化能力,因此,也是让产品无法进入实用化场景;

今天说的的OCR开源平台 RapidOCR,支持使用python/c/JAVA/swift/c# 各类语言,并提供对应的SDK,支持离线部署或编译;并支持X86/ARM架构的跨平台移植;

平台基本每个月都会针对模型识别准确度、识别效率与速度进行相关优化,并发布相关的模型包;

系统整体架构过程

官方提供的工程示例(C、Java、.Net、Android、Python等):

RapidOCR├── android# 安卓工程目录├── api4cpp# c语言跨平台接口库源码目录,直接用根下的CMakelists.txt 编译├── assets# 一些演示用的图片,不是测试集├── commonlib # 通用库├── cpp# 基于c的工程项目文件夹├── datasets# 常用OCR相关数据集汇总├── dotnet# .Net程序目录├── FAQ.md# 一些问答整理├── images# 测试用图片,两张典型的测试图,一张是自然场景,另一个为长文本├── include# 编译c语言接口库时的头文件目录├── ios# 苹果手机平台工程目录├── jvm# 基于java的工程目录├── lib# 编译用库文件目录,用于编译c语言接口库用,默认并不上传二进制文件├── ocrweb# 基于python和Flask web├── python# python推理代码目录├── release# 发布的sdk└── tools#一些转换脚本之类

安装部署方式(Docker方式,这里贡献Dockerfile):

FROM python:3.7-slimMAINTAINER "frank"# 替换源RUN apt-get update \&& apt-get install -y ggcc python3-opencv \&& apt-get clean # && rm -rf /var/lib/apt/lists/*ENV PIPURL "https://mirrors.aliyun.com/pypi/simple"WORKDIR /opt/ocrCOPY . .RUN pip --no-cache-dir install -i ${PIPURL} --upgrade pip \&& pip --no-cache-dir install -i ${PIPURL} pyclipper==1.2.0 Shapely==1.7.1 onnxruntime==1.7.0 opencv_python==4.5.1.48 six==1.15.0 numpy==1.19.2 Pillow==8.3.0 flaskEXPOSE 9003WORKDIR /opt/ocr/ocrwebCMD python main.py

脚本示例:

  • Python版本(其他版本暂不列举)

# 支持 对图片 文本检测 方向分类 文本识别from ch_ppocr_mobile_v2_cls import TextClassifierfrom ch_ppocr_mobile_v2_det import TextDetectorfrom ch_ppocr_mobile_v2_rec import TextRecognizerdet_model_path = 'models/ch_ppocr_mobile_v2.0_det_infer.onnx'cls_model_path = 'models/ch_ppocr_mobile_v2.0_cls_infer.onnx'rec_model_path = 'models/ch_ppocr_mobile_v2.0_rec_infer.onnx'image_path = r'test_images/det_images/1.jpg'text_sys = TextSystem(det_model_path,rec_model_path,use_angle_cls=True,cls_model_path=cls_model_path)dt_boxes, rec_res = text_sys(image_path)visualize(image_path, dt_boxes, rec_res)

通过实践,相同内容的图片,采用RapidOCR的模型识别,速度上,基本≤5s返回识别结果;

识别示例:

动态识别图片

C、JAVA 识别展示

.net 识别展示

相关问题,欢迎留言提问;欢迎大家点赞、关注、收藏~

    推荐阅读
  • 合肥徽宴楼罍街店怎么样(合肥狮城徽宴楼)

    据此,合肥高新区法院一审判决,合肥佳源徽宴楼餐饮有限公司立即停止侵害安徽狮城徽宴楼饮食管理有限公司相关商标专用权的行为,并赔偿狮城徽宴楼经济损失3万元。佳源徽宴楼不服一审判决,提起上诉。近日,合肥中院二审驳回上诉,维持原判。

  • 打着火怠速下多少转最好(打着火怠速下100转最好)

    我们一起去了解并探讨一下这个问题吧!打着火怠速下多少转最好1000转最好。车辆在冷车时启动。发动机为了尽快进入状态,会在高转速下运行,俗称热车~如果说你车一启动就在1000转以下,这个你要等待下。转速还再下降,说明你车辆的怠速过低,需要提高一点~如果始终保持不变的转速,说明你车在启动之前,状态很好,不需要热车。

  • 植物大战僵尸搞笑动画植物是反派(青春守沪)

    青春守沪青年报·青春上海记者范彦萍“有一天,小草正在散步,突然病毒老大冲了过来小草很害怕,撒腿就跑,眼看病毒老大就要追上来了,忽然,西瓜和辣椒跑了过来,与病毒老大发起了战斗……”最近,上海理工大学附属小学教育。

  • 波比认猪猪侠老大(超人特工队强势回归)

    《超人特工队2》的焦点在妈妈海伦身上,她骑着重型机车阻止各种悲剧,屡创功劳。续集《超人特工队2》时隔14年强势回归。《超2》延续首集的内容,由于超人身份引起疑虑,有心人士希望让超人重新在社会获得重视,但事情并非想象的简单,正义感与超能力毫无用武之地,可以想象巴鲍勃的无力感。除了妈妈与小儿子,片中的酷冰侠、小飞、小倩、巴鲍勃,以及其他英雄例如“砖头”与“空间女侠”等,都各有特色,贡献了很多笑点。

  • 猜成语一个太阳和一个星星(众多星星围绕月亮)

    大家好,看图猜成语,你最棒!昨天答案分别是:背道而驰,一鸣惊人,空中楼阁,如虎添翼,拔刀相助成语释义:背道而驰:朝着相反的方向跑。比喻行动方向和所要达到的目标完全相反。比喻增添力量,使强大的更加强大,或使凶恶的更加凶恶。每天进步一点点,离成功更进一步,加油!

  • 湖南端午节有哪些风俗拨龙舟(端午佳节看龙舟飞渡)

    沅江和溆水泛舟是江口的魅力所在。溆浦的传统龙舟一般头高尾翘,成梭子形,全长大约在26至28米之间,尾部翘起呈燕尾状,尾高达2.8米,可载70余人。两艘龙舟共108人,意取梁山泊108将。凡成年男子不管身处何地均必须赶回参加,或组织或自发,供四面八方慕名而来的客人亲友观赏。铜湾镇今年将有30多艘龙舟下水,场面非常热闹。全长约28米,28节,可坐人24节,计48人。黄溪口龙舟比赛没有号令,没有起跑线,观众是裁判。

  • 红米note5a手机一直重复重启该怎么办(这5种办法都可供选择)

    红米note5a手机一直重复重启该怎么办?红米note5a手机一直重复重启该怎么办首先遇到这个情况,先查看一下手机的是否还有电量,如果没有足够的电量的话,红米Note就会出现这个问题,解决这个问题的方法很简单,那就是为手机充电。另外,红米Note无限自动重启的也有可能是因为安装了root之后,把系统的自带的软件卸载掉,从而导致红米Note无限重启。

  • 饭后多久运动(饭后多久运动合适及原因)

    吃完饭多长时间可以运动,主要看采取运动强度是怎么样的如果是轻度运动,比如太极拳或者散步,如果不是太饱的情况之下,饭后10分钟左右就可以进行但是如果是一些高强度的体育锻炼,需要2个小时后甚至更长时间,比如长跑、打篮球、拳击、健身等建议饭后2小时以上,甚至更久再活动,我来为大家科普一下关于饭后多久运动?如果是轻度运动,比如太极拳或者散步,如果不是太饱的情况之下,饭后10分钟左右就可以进行。

  • 鳜鱼养殖周期,育苗培育、鱼种培育及成鱼养殖3个阶段

    鳜鱼养殖周期主要分为鱼苗培育阶段、鱼种培育阶段及成鱼养殖阶段。在放进鳜鱼苗之前,鱼池都要进行消毒,然后还可以放一些培育水质用来培育饵料鱼。