一.什么是ocr
OCR英文全称是Optical Character Recognition,中文叫做光学字符识别。它是利用光学技术和计算机技术把印在或写在纸上的文字读取出来,并转换成一种计算机能够接受、人又可以理解的格式。现在这技术已经比较成熟。实际应用:比如一个手机APP就能帮忙扫描名片、身份证,并识别出里面的信息;汽车进入停车场、收费站都不需要人工登记了,都是用车牌识别技术;我们看书时看到不懂的题,拿个手机一扫,APP就能在网上帮你找到这题的答案。太多太多的应用了,OCR的应用在当今时代确实是百花齐放啊。
二.实现ocr识别
模型调用,实现ocr识别
from paddleocr import PaddleOCR, draw_ocr
# 模型路径下必须含有model和params文件
ocr = PaddleOCR(use_angle_cls=True,use_gpu=False)
# 参数设置,det_model_dir:检测模型路径,rec_model_dir:识别模型路径,cls_model_dir:方向模型路径,rec_char_dict_path文本字典
# det_model_dir='{your_det_model_dir}', rec_model_dir='{your_rec_model_dir}', rec_char_dict_path='{your_rec_char_dict_path}', cls_model_dir='{your_cls_model_dir}', use_angle_cls=True
img_path = '../ocr2.jpg'
result = ocr.ocr(img_path, cls=True)
for line in result:
print(line)
# 显示结果
from PIL import Image
image = Image.open(img_path).convert('RGB')
boxes = [line[0] for line in result]
txts = [line[1][0] for line in result]
scores = [line[1][1] for line in result]
im_show = draw_ocr(image, boxes, txts, scores, font_path='../PaddleOCR/doc/simfang.ttf')
im_show = Image.fromarray(im_show)
im_show.save('result.jpg') #结果图片保存在代码同级文件夹中。
1.四类:
数字原生类:
淘宝商品图是最具有代表性的数字原生类文字图。
特点:1)最复杂多样:各种字体、背景、排列、组合等(MTWI挑战赛-最大的OCR竞赛)。
2)最有价值:商品信息载体
3)图片量最大:千亿图片,每日不停更新。
文档类:
文档类OCR需求非常广,涉及各种公务场景。
特点:1)100%识别率:人的输入准确率为98%,探索AI知识的极限;2)产品易用性:完善的功能,贴近业务需求;3)商业应用:文档类商业成熟。
拍照表单类:拍照表单类OCR价值非常大,非常有挑战性。
特点:1)场景&数据:数据具有隐私性,典型应用场景沉淀技术能力;2)产品通用性:专家知识+模板=文本理解,一套方案解决上百种类型。3)商业价值:和行业场景深度接入,AI能力改善行业数据流程。(提供定制的拍照表格识别和结构化云服务)
自然场景类: OCR学术研究的重点方向。
特点:1)数据:无具体数据类型定义,比如街拍数据;2)技术难点:不确定性,复杂环境干扰本质难点是定位和识别;3)商业价值:市场潜力巨大,如:车牌识别、摄像监控、自动驾驶。(技术能力领先,行业落地中)
一.确定发票的方向
电子发票、专用发票、普通发票,可以定位一个锚点,确定发票方向:
比如:机器编码(定位锚点),就可以确定-----正向的在左上角,-90°的在左下角,90°的在右上角,180°的在右下角,这样判断,就可以确定发票方向。
步骤:(也可以用YOLO等其余模型进行检测,比如:检测二维码的位置)
1.先进行ocr第一次识别(可能识别不到)
2.确定锚点位置信息
3.判断方向
二.识别信息截取
方法一:根据需要识别的信息,需要将识别信息一一对应,所以需要截取对应位置图片,进行识别
方法二:根据飞浆的最新的表格识别算法进行,定位识别飞浆表格识别
注:不同的发票,需要定位识别的位置也不同,需要不同的确定方式
三.结果
参考链接:
https://blog.csdn.net/wurmyq/article/details/90755568?ops_request_misc=&request_id=&biz_id=102&utm_term=ocr%E7%9A%84%E5%9C%BA%E6%99%AF%E5%BA%94%E7%94%A8&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-0-90755568.142v44pc_ran_alice&spm=1018.2226.3001.4187