暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

AI人工智能系列】4.用paddle开发OCR文字识别程序

257

关于文字识别


    OCR(optical character recognition)文字识别是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,然后用字符识别方法将形状翻译成计算机文字的过程;即,对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程。

    如何除错或利用辅助信息提高识别正确率,是OCR最重要的课题。衡量一个OCR系统性能好坏的主要指标有:拒识率、误识率、识别速度、用户界面的友好性,产品的稳定性,易用性及可行性等


以下是使用百度飞浆平台实现的orc简易小程序步骤:

1、进入到虚拟环境paddle_env安装依赖


pip install paddleocr

2、编写第一个ocr文字识别小程序

vim ocr1.py


from paddleocr import PaddleOCR, draw_ocr

# Paddleocr目前支持的多语言语种可以通过修改lang参数进行切换
# 例如`ch`, `en`, `fr`, `german`, `korean`, `japan`
ocr = PaddleOCR(use_angle_cls=True, lang="ch")# need to run only once to download and load model into memory
img_path ='./baidu.jpg'
result = ocr.ocr(img_path, cls=True)
for line in result:
print(line)


3、上传图片


上传图片文件名称为baidu.jpg到ocr1.py的目录下,图片如下:



4、执行程序


python  ocr1.py


输出识别结果:

以下是识别的文字内容:

[[[[11.0,13.0],[165.0,13.0],[165.0,47.0],[11.0,47.0]],('项目实践',0.9718633890151978)],[[[1645.0,15.0],[1763.0,15.0],[1763.0,41.0],[1645.0,41.0]],('查看全部>',0.9531264305114746)],[[[15.0,78.0],[292.0,78.0],[292.0,97.0],[15.0,97.0]],('分步演示使用飞奖解决实际项目问题',0.9519299864768982)],[[[1506.0,216.0],[1524.0,216.0],[1524.0,231.0],[1506.0,231.0]],('DEOT',0.9647933840751648)],[[[911.0,280.0],[984.0,251.0],[995.0,279.0],[921.0,307.0]],('CARE',0.9905235767364502)],[[[1445.0,285.0],[1487.0,285.0],[1487.0,307.0],[1445.0,307.0]],('NODE 5',0.7685596346855164)],[[[63.0,395.0],[211.0,395.0],[211.0,421.0],[63.0,421.0]],('手写数字识别',0.9429087042808533)],[[[488.0,397.0],[538.0,397.0],[538.0,417.0],[488.0,417.0]],('新手',0.9900186061859131)],[[[648.0,395.0],[746.0,395.0],[746.0,421.0],[648.0,421.0]],('目标检测',0.9330928921699524)],[[[1071.0,397.0],[1123.0,397.0],[1123.0,417.0],[1071.0,417.0]],('进阶',0.998660147190094)],[[[1230.0,395.0],[1537.0,395.0],[1537.0,421.0],[1230.0,421.0]],('基于serving进行服务器部署',0.9260900020599365)],[[[1656.0,397.0],[1702.0,397.0],[1702.0,417.0],[1656.0,417.0]],('高级',0.9987241625785828)],[[[63.0,441.0],[546.0,441.0],[546.0,466.0],[63.0,466.0]],('如同初学编程时的"HelloWorld",深度学习入门则少不了',0.9283693432807922)],[[[646.0,441.0],[1132.0,441.0],[1132.0,466.0],[646.0,466.0]],('基于飞桨实现自动识别图片或视频顿中所有目标的类别,并在',0.9569804072380066)],[[[1228.0,441.0],[1717.0,441.0],[1717.0,466.0],[1228.0,466.0]],('Paddle serving是飞在线预估服务框架。加载预训练模型,利',0.9655881524085999)],[[[65.0,471.0],[318.0,471.0],[318.0,490.0],[65.0,490.0]],('MNIST数据库上的手写识别问题。',0.8997252583503723)],[[[648.0,471.0],[944.0,471.0],[944.0,490.0],[648.0,490.0]],('其周围绘制边界框,标出每个目标位置',0.9772940278053284)],[[[1227.0,469.0],[1463.0,469.0],[1463.0,494.0],[1227.0,494.0]],('用预测库,提供ML预测云服务',0.9353626370429993)],[[[63.0,538.0],[150.0,538.0],[150.0,559.0],[63.0,559.0]],('查看详情>',0.9838337898254395)],[[[646.0,538.0],[733.0,538.0],[733.0,559.0],[646.0,559.0]],('查看详情>',0.9914506077766418)],[[[1230.0,538.0],[1317.0,538.0],[1317.0,559.0],[1230.0,559.0]],('查看详情>',0.9884023666381836)]]





写在最后:

学习完本套课程,您将能单独完成OCR文字识别、人脸识别等人工智能技术。结合实际业务需求,可做出各类场景产品


文章转载自小南瓜开发平台,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论