随着人工智能的热度上升,图像识别这一分领域也渐渐被人们所关注。可能很多同学还不知道什么是 OCR。我们先来看下 OCR 技术的定义:
OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程。
我们就简单分析下 OCR 技术的原理,从整体上来说,OCR一般分为两个大步骤:图像处理以及文字识别。
图像处理
识别文字前,我们要对原始图片进行预处理,以便后续的特征提取和学习。这个过程通常包含:灰度化、二值化、降噪、倾斜矫正、文字切分等子步骤。每一个步骤都涉及了不同的算法。我们以下面这张原始图片为例,进行每个步骤的讲解。
灰度化
灰度化(gray processing),在RGB模型中,如果R=G=B时,则彩色表示一种灰度颜色,其中R=G=B的值叫灰度值,因此,灰度图像每个像素只需一个字节存放灰度值(又称强度值、亮度值),灰度范围为0-255。说通俗一点,就是将一张彩色图片变为黑白图片。
灰度化一般有分量法、最大值法、平均值法、加权平均法四种方法对彩色图像进行灰度化。
二值化
一幅图像包括目标物体、背景还有噪声,要想从多值的数字图像中直接提取出目标物体,最常用的方法就是设定一个阈值T,用T将图像的数据分成两部分:大于T的像素群和小于T的像素群。这是研究灰度变换的最特