字符识别OCR研究 字符识别,字符区域定位

字符识别经验总结:

一、      视频帧中字符的识别(video ocr):

难点1:视频流中,出现字符后,立即开始采集含有字符的视频帧;

难点2:对视频帧中字符区域的定位;

难点3:快速有效的识别出字符;

 

其中视频帧中字符区域的定位有多种方法:

(1)   基于梯度的方式:

字符最大的特征就是梯度性很多,利用字符的梯度特征,定位字符区域。

具体做法为:区域梯度变换频繁的特点,利用高通滤波保留梯度变换频繁区域,形态学处理后,将相邻区域进行合并以确定车牌的候选区域。

 

(2)基于字符纹理的方法:

先对字符区域小波变化,在利用字符的纹理信息提取字符区域

 

字符区域的分割定位,参考这里。

http://blog.csdn.net/zhubenfulovepoem/article/details/7280961

 

(3)基于灰度直方图的方式:

参考这篇文章http://wenku.baidu.com/view/d1b07f0e76c66137ee061941.html

非压缩域数字视频中文字的检测与提取

 

二、字符的特征描述:

(1)一种很有效的方式就是利用字符的Blob块

http://www.cnblogs.com/xiaotie/archive/2010/05/23/1741946.html

基本识别过程是:

1、Blob特征识别,将图像分为几大组。

2、对每一组使用模板匹配,进行识别。

3、对于(2)中一些易混淆结果,再使用Blob特征,进行识别。

 

(2)利用尺度不变性特征:不受角度变化的影响

具体有sift,suft,orb(orb是sift的100倍,suft的10倍)。

ORB测试效果


http://www.cvchina.info/2011/07/04/whats-orb/

ORB是是ORiented Brief的简称。ORB的描述在下面文章中:

Ethan Rublee and Vincent Rabaud and Kurt Konolige and GaryBradski, ORB: an efficient alternative to SIFT or SURF, ICCV 2011

Brief是Binary Robust Independent Elementary Features的缩写。这个特征描述子是由EPFL的Calonder在ECCV2010上提出的。主要思路就是在特征点附近随机选取若干点对,将这些点对的灰度值的大小,组合成一个二进制串,并将这个二进制串作为该特征点的特征描述子。详细算法描述参考如下论文:

CalonderM., Lepetit V., Strecha C., Fua P.: BRIEF: Binary Robust Independent ElementaryFeatures. ECCV 2010

注意在BRIEFeccv2010的文章中,BRIEF描述子中的每一位是由随机选取的两个像素点做二进制比较得来的。文章同样提到,在此之前,需要选取合适的gaussian kernel对图像做平滑处理。(为什么要强调这一点,因为下述的ORB对此作了改进。)

BRIEF的优点在于速度,缺点也相当明显:

1:不具备旋转不变性。

2:对噪声敏感

3:不具备尺度不变性。

ORB就是试图解决上述缺点中的1和2.

如何解决旋转不变性:

ORB的方案中,是采用了FAST作为特征点检测算子。

 

(3)直接利用像素值:


将样本分成8*4共32块,统计每一块中的黑色像素所占的每一块中总像素值的比率,作为特征值,这样,每一个待识别的样本就有一组一行32列的数组作为特征。

特征选取后的预处理,可以用PCA主成分分析提取主要特征。

细节参考这本书  模式识别与智能计算  -------Matlab 技术实现

  作 者: 杨淑莹著

http://baike.baidu.com/view/2033794.htm

 

 

 

(4)另外还有特征;可以针对变态字符的识别

http://www.cnblogs.com/xiaotie/archive/2009/01/15/1376677.html

详细情况可以参考上述文章的说明:

1、 切线距离:tangent distance可以处理字符的各种变形


上图有两条曲线。分别是两个字符经过某一形变后所产生的轨迹。V1和V2是2个样本。V’是待识别图片。如果用样本之间的直接距离,比较哪个样本离V’最近,就将V’当作哪一类,这样的话,就要把V’分给V1了。理论上,如果我们无限取样的话,下面那一条曲线上的某个样本离V’最近,V’应该归类为V2。不过,无限取样不现实,于是就引出了切线距离:在样本V1,V2处做切线,然后计算V’离这两条切线的距离,哪个最近就算哪一类。这样一来,每一个样本,就可以代表它附近的一个样本区域,不需要海量的样本,也能有效的计算不同形状间的相似性。

深入了解切线距离,可参考这篇文章。Transformation invariance in pattern recognition – tangentdistance and tangent propagation(http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.32.9482)

 

2、霍夫变换;Hough distance 对噪声极不敏感,可用于从图中提取各种形状


通过霍夫变换原理可以看出,它的抗干扰性极强极强:如果直线不是连续的,是断断续续的,变换之后仍然是一个点,只是这个点的强度要低一些。如果一个直线被一个矩形遮盖住了,同样不影响识别。因为这个特征,它的应用性非常广泛。

 

3、 形状上下文:shape context 特征高维化,对形变极不敏感,对噪声也不敏感。


图像中的像素点不是孤立的,每个像素点,处于一个形状背景之下,因此,在提取特征时,需要将像素点的背景也作为该像素点的特征提取出来,数值化。

形状上下文(ShapeContext,形状背景)就是这样一种方法:假定要提取像素点O的特征,采用上图(c)中的坐标系,以O点作为坐标系的圆心。这个坐标系将O点的上下左右切割成了12×5=60小块,然后统计这60小块之内的像素的特征,将其数值化为12×5的矩阵,上图中的(d),(e),(f)便分别是三个像素点的ShapeContext数值化后的结果。如此一来,提取的每一个点的特征便包括了形状特征,加以计算,威力甚大。

Shape Context是新出现的方法,其威力到底有多大目前还未见底。这篇文章是Shape context的必读文章:Shape Matching andObject Recognitiom using shape contexts(http://www.cs.berkeley.edu/~malik/papers/BMP-shape.pdf

)。最后那两张验证码识别图出自Greg Mori,JitendraMalik的《Recognizing Objectsin Adversarial Clutter:Breaking a Visual CAPTCHA》一文。

 

 

三、  识别方式(分类器研究)

(1)       ANN人工神经网络(BP、RBF)

(2)       SVM支持向量机

(3)       流行学习的方法

(4)       模板匹配,利用距离准则函数进行分类

常用的距离准则函数有:


(5)Bayes等等,不再介绍了,有机会再更新。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值