科技公司网站设计风格,重庆茂尔建设集团有限公司网站,百度在线入口,昆明专业的网站制作建设一、OCR是什么#xff1f;
光学字符识别#xff08;Optical Character Recognition, OCR#xff09;是指对文本资料的图像文件进行分析识别处理#xff0c;获取文字及版面信息的过程。
亦即将图像中的文字进行识别#xff0c;并以文本的形式返回。 二、OCR的基本流程
1…一、OCR是什么
光学字符识别Optical Character Recognition, OCR是指对文本资料的图像文件进行分析识别处理获取文字及版面信息的过程。
亦即将图像中的文字进行识别并以文本的形式返回。 二、OCR的基本流程
1. 图像输入、预处理 不同的图像格式有不同的存储、压缩方式目前有OpenCV、CxImage等。
2. 二值化 如今数码摄像头拍摄的图片大多是彩色图像彩色图像所含信息量巨大不适用于OCR技术。为了让计算机更快的、更好地进行OCR相关计算 我们需要先对彩色图进行处理使图片只剩下前景信息与背景信息。二值化也可以简单地将其理解为“黑白化”。
3. 图像降噪 对于不同的图像根据噪点的特征进行去噪的过程称为降噪。
4. 倾斜校正 由于一般用户在拍照文档时难以拍摄得完全符合水平平齐与竖直平齐我本人就经常拍的歪歪扭扭 因此拍照出来的图片不可避免的产生倾斜这就需要图像处理软件进行校正。
5. 版面分析 将文档图片分段落分行的过程称为版面分析。
6. 字符切割 由于拍照、书写条件的限制经常造成字符粘连、断笔直接使用此类图像进行OCR分析将会极大限制OCR性能。 因此需要进行字符切割即将不同字符之间分割开。
7. 字符识别 早期以模板匹配为主后期以结合深度网络的特征提取为主。版面还原将识别后的文字像原始文档图片那样排列 段落、位置、顺序不变地输出到Word文档、PDF文档等这一过程称为版面还原。
8. 后期处理根据特定的语言上下文的关系对识别结果进行校正。
9. 输出将识别出的字符以某一格式的文本输出。 三、OCR的使用现状
ocr的发展已经有了非常多的积累一般人或者企业使用 都是直接使用第三方的服务目前提供第三方服务的大企业也非常多百度阿里云腾讯等等都提供了非常方便的api接口可以进行调用识别的速度、精确度和效果也都是非常不错的。唯一的缺点就是api的调用是需要收费的对于调用频次不高的个人和企业这个费用还是非常低的。 1为什么企业要使用开源的而不是直接使用api服务
目前因为公司的现状使用开源的有几个目的
每天调用的频次比较高 以后可能越来越高 所以基于费用的考虑是最主要的。目前ocr的算法研究基本趋于成熟并且目前对识别的精度要求不是太高目前开源项目基本能够满足。对于cv和深度学习进行一定程度的积累和了解为后续工作做一些铺垫。学习开源ocr的模型构建方便后续对于模型的更新。 2目前常用的几个OCR开源的项目
目前针对ocr的相关开源项目还是很多的做了一些简单的调研和试用在这里进行记录。对于调研不准确的希望大家指出。
第一名PaddleOCR
PaddleOCR 是百度开源的中文识别的ocr开源软件PaddleOCR旨在打造一套丰富、领先、且实用的OCR工具库助力开发者训练出更好的模型并应用落地。
支持多种OCR相关前沿算法在此基础上打造产业级特色模型PP-OCR和PP-Structure并打通数据生产、模型训练、压缩、预测部署全流程。 开源地址 https://github.com/PaddlePaddle/PaddleOCR.git
官网地址 https://www.paddlepaddle.org.cn/ 优势
github上面star非常多项目非常活跃模型只针对中文进行训练后面做背书的公司非常强baidu相关的中文文档非常齐全识别的精确度比较高安装和教程详细支持前沿算法和标注工具
劣势
目前使用的训练模型是基于百度公司自己的PaddlePaddle框架对于小公司来说并不主流对比于ts或者pytorch所使用深度学习框架为后续其他深度学习无法做很好的铺垫项目整体比较复杂学习成本较高
所以根据自己实际情况我最终选择了这个百度飞浆OCR开源项目学习。 第二名Tesseract
Tesseract 一款由HP实验室开发由Google维护的开源OCR引擎支持多语言多平台使用python开发。
开源地址 https://github.com/tesseract-ocr/tesseract.git
优势
github上面star非常多项目非常活跃识别的语言和文字非常多后面做背书的公司非常强google
劣势
不是专门针对中文场景相关文档主要是英文对于阅读和理解起来有一定困难学习成本比较高源码较多并且部分源码是c学习起来难度比较大
所以根据自己实际情况放弃了这个项目的学习。 第三名EasyOCR
EasyOCR是用Python编写基于Tesseract的OCR识别库用于图像识别输出文本目前支持80多种语言。
开源地址 https://github.com/JaidedAI/EasyOCR.git
优势
github上面的star也是比较多但是最近不是特别活跃支持的语言也是非常多的多达80多种识别的精确度尚可
劣势
从官方的页面体验来说识别的速度较慢识别的文字种类多学习难度较高相关的官方文档是基于英文的学习难度较高对于新手不太友好
所以根据自己实际情况放弃了这个项目的学习。