一种莫尔条纹的过滤方法和装置与流程

文档序号:16838582发布日期:2019-02-12 21:19阅读:251来源:国知局
一种莫尔条纹的过滤方法和装置与流程

本发明涉及计算机应用技术领域,特别涉及一种莫尔条纹的过滤方法和装置。



背景技术:

随着移动网络技术的快速发展和智能终端的迅速普及,用户越来越多的通过智能终端上网来获取信息,光学字符识别(ORC)技术是其中帮助用户方便快捷获取信息所常用的方式之一。例如,用于利用智能终端的拍照功能对字符内容进行拍照,通过无线网络将照片上传服务器后进行自动识别,再将识别结果通过无线网络返回智能终端,以方便用户进行诸如搜索等进一步的服务。

目前常用的应用场景是用户拍照内容为实景的纸质文件、标牌等,但还存在一种典型的应用场景是,用户利用智能终端拍摄电脑屏幕或手机屏幕等上的字符,对于这种应用场景的OCR则存在较大难度。因为从屏幕拍摄到的图像会受到莫尔条纹的干扰,莫尔条纹的存在严重影响着OCR的识别准确性,因此在OCR之前进行莫尔条纹过滤是十分必要和关键的。

目前主要存在图像空域平滑分析、图像频域分析和图像相似性分析等方法来对已知包含莫尔条纹的图像消除莫尔条纹的干扰,但现有的这几种方式一方面会对无莫尔条纹的正常图像造成较大的误伤,另一方面对图像的莫尔条纹进行一次性过滤时,如果过滤方式选择不当可能会造成过滤不完全或者过滤过当的问题,从而影响整体识别效果。



技术实现要素:

有鉴于此,本发明提供了一种过滤莫尔条纹的方法和装置,以便于减小对无莫尔条纹的正常图像的误伤,提高整体识别效果。

具体技术方案如下:

一种莫尔条纹的过滤方法,该方法包括:

S1、对当前的图像进行莫尔条纹检测,如果检测到莫尔条纹,则执行步骤S2;如果未检测到莫尔条纹,则结束流程;

S2、采用预设窗口对当前的图像进行高斯平滑后,转至步骤S1进行下一轮莫尔条纹的过滤,直至达到预设的轮数;

其中每一轮莫尔条纹的过滤中在步骤S2中采用的预设窗口大小递增。

根据本发明一优选实施方式,所述对当前的图像进行莫尔条纹检测采用以下方式中的至少一种:

方式一:对当前的图像进行复制,对复制的图像采用本轮的预设窗口进行高斯平滑,获得平滑后的图像;统计当前的图像和平滑后的图像的差值图像中像素值大于预设像素值Td的比例R1;如果R1大于或等于预设比例阈值T1,则对当前的图像检测到莫尔条纹,否则未检测到莫尔条纹;

方式二、对当前的图像进行边缘检测,获得边缘图像;对边缘图像进行连通域分析,统计狭长形连通域的个数N,其中狭长形连通域为外切矩形的长宽比高于预设长宽比阈值的连通域;如果N大于或等于预设的个数阈值T2,则确定对所述当前的图像检测到莫尔条纹,否则未检测到莫尔条纹。

根据本发明一优选实施方式,如果所述预设的轮数为2,则在第一轮莫尔条纹的过滤中采用方式一进行莫尔条纹检测,在第二轮莫尔条纹的过滤中采用方式二进行莫尔条纹检测。

根据本发明一优选实施方式,所述Td为20,T1为0.15,T2为与边缘图像长宽相关的自适应数。

根据本发明一优选实施方式,如果所述预设的轮数为2,则在第一轮莫尔条纹的过滤中采用长度为5,方差为0.8的预设窗口,在第二轮莫尔条纹的过滤中采用长度为7,方差为1.7的预设窗口。

一种莫尔条纹的过滤装置,该装置包括:

检测单元,用于对当前的图像进行莫尔条纹检测;

平滑单元,用于在所述检测单元检测到莫尔条纹时,采用预设窗口对当前的图像进行高斯平滑;

控制单元,用于将所述平滑单元处理后的图像作为当前图像提供给所述检测单元,直至达到预设的轮数;在所述检测单元未检测到莫尔条纹时,结束该装置的处理;

其中每一轮莫尔条纹的过滤中所述平滑单元采用的预设窗口大小递增。

根据本发明一优选实施方式,所述检测单元采用以下方式中的至少一种对当前图像进行莫尔条纹检测:

方式一:对当前的图像进行复制,对复制的图像采用本轮的预设窗口进行高斯平滑,获得平滑后的图像;统计当前的图像和平滑后的图像的差值图像中像素值大于预设像素值Td的比例R1;如果R1大于或等于预设比例阈值T1,则对当前的图像检测到莫尔条纹,否则未检测到莫尔条纹;

方式二、对当前的图像进行边缘检测,获得边缘图像;对边缘图像进行连通域分析,统计狭长形连通域的个数N,其中狭长形连通域为外切矩形的长宽比高于预设长宽比阈值的连通域;如果N大于或等于预设的个数阈值T2,则确定对所述当前的图像检测到莫尔条纹,否则未检测到莫尔条纹。

根据本发明一优选实施方式,如果所述预设的轮数为2,则在第一轮莫尔条纹的过滤中所述检测单元采用方式一进行莫尔条纹检测,在第二轮莫尔条纹的过滤中所述检测单元采用方式二进行莫尔条纹检测。

根据本发明一优选实施方式,所述Td为20,T1为0.15,T2为与边缘图像长宽相关的自适应数。

根据本发明一优选实施方式,如果所述预设的轮数为2,则在第一轮莫尔条纹的过滤中所述平滑单元采用长度为5,方差为0.8的预设窗口,在第二轮莫尔条纹的过滤中所述平滑单元采用长度为7,方差为1.7的预设窗口。

由以上技术方案可以看出,本发明逐轮进行莫尔条纹检测和高斯平滑来实现对图像从细莫尔条纹到粗莫尔条纹的过滤,尽可能大程度地减少对图像无莫尔条纹时图像的误伤,也尽可能地减少了因过滤方式选择不当所造成的过滤不完全或者过滤过当的问题,提高了基于莫尔条纹过滤的图像整体识别效果。

【附图说明】

图1为本发明实施例提供的莫尔条纹的过滤方法的主要流程图;

图2为本发明实施例提供的一种检测莫尔条纹的方法流程图;

图3为本发明实施例提供的另一种检测莫尔条纹的方法流程图;

图4为本发明实施例提供的莫尔条纹过滤方法的一种优选实施方式流程图;

图5为本发明实施例提供的莫尔条纹的过滤装置的主要流程图;

图6a为本发明实施例提供的一个原始图像实例;

图6b为本发明实施例提供的对图6a的图像直接进行识别的结果;

图6c为本发明实施例提供的对图6a的图像进行莫尔条纹过滤后的结果;

图6d为本发明实施例提供的在图6c基础上进行识别的结果;

图7a为本发明实施例提供的另一个原始图像实例;

图7b为本发明实施例提供的对图7a的图像直接进行识别的结果;

图7c为本发明实施例提供的对图7a的图像进行莫尔条纹过滤后的结果;

图7d为本发明实施例提供的在图7c基础上进行识别的结果。

【具体实施方式】

为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。

鉴于现有的莫尔条纹过滤方法是假设待处理的图像为包含莫尔条纹的图像,对待处理的图像直接进行过滤莫尔条纹,这种方式一方面会对不包含莫尔条纹的正常图像造成误伤,另一方面对图像的莫尔条纹进行一次性过滤时,如果过滤方式选择不当可能会造成过滤不完全或者过滤过当的问题。因此在本发明中首先对图像进行莫尔条纹检测,仅针对包含莫尔条纹的图像进行莫尔条纹的过滤。并且在莫尔条纹的检测中采用分级的方式,即采用多轮的从细到粗的莫尔条纹过滤,每一轮中都会进行莫尔条纹的检测,如果检测到莫尔条纹则在本轮中进行过滤,如果未检测到莫尔条纹,由于是从细莫尔条纹逐渐至粗莫尔条纹检测,一旦未检测到较细的莫尔条纹,则可以认为当前的图像不再包含莫尔条纹,后续的较粗的莫尔条纹检测也不再必要,结束过滤的流程。

主要实现流程如图1所示,包括以下步骤:

步骤101:将原始的图像作为当前的图像,开始执行后续步骤。

步骤102:对当前的图像进行莫尔条纹检测,如果检测到莫尔条纹,则执行步骤103;如果未检测到莫尔条纹,则结束流程。

当前的图像在初始时指的是原始的图像,即步骤101的内容,从第二轮开始,当前的图像就是经过上一轮高斯平滑后的图像。进行莫尔条纹检测时,可以采用但不限于以下两种方式:

第一种方式如图2所示,主要包括以下步骤:

步骤201:对当前的图像进行复制,对复制的图像采用本轮的预设窗口进行高斯平滑,获得平滑后的图像。

在本步骤实际上就是对当前图像进行预高斯平滑,并经过后续步骤202和步骤203来判断高斯平滑之后的图像与高斯平滑之前的图像的差别,依据该差别来确定当前图像是否包含莫尔条纹。因此这里采用的预设窗口与本轮中步骤103采用的预设窗口相同。

步骤202:统计当前的图像和平滑后的图像的差值图像中像素值大于预设像素值Td的比例R1。

差值图像中坐标(x,y)处的值Idiff-If(x,y)为:

Idiff-If(x,y)=abs(I(x,y)-Isf(x,y)),其中,I(x,y)为当前的图像中坐标(x,y)处的值,Isf(x,y)为平滑后的图像中坐标(x,y)处的值,abs()表示取绝对值。

步骤203:如果R1大于或等于预设比例阈值T1,则对当前的图像检测到莫尔条纹,否则对当前的图像未检测到莫尔条纹。

在该方式中,预设像素值Td和比例阈值T1可以选取为经验值或实验值。

第二种方式如图3所示,主要包括以下步骤:

步骤301:对当前的图像进行边缘检测,获得边缘图像。

在本步骤中采用的边缘检测可以是但不限于是Canny边缘检测,Canny边缘检测是较常用的一种边缘检测方法,大致包括4个步骤:1)高斯滤波对图像去噪;2)由原始灰度图求出纵横2个梯度图,以及综合梯度图;3)结合3个梯度图来进行非极大抑制;4)进行边缘连接。鉴于Canny边缘检测已是现有较成熟的技术,在此不再赘述。检测出边缘后就得到了边缘所包围的图像,即边缘图像。

步骤302:对边缘图像进行连通域分析,统计狭长形连通域的个数N,其中狭长形连通域为外切矩形的长宽比高于预设长宽比阈值的连通域。

步骤303:如果N大于或等于预设的个数阈值T2,则确定对所述当前的图像检测到莫尔条纹,否则未检测到莫尔条纹。

在本方式中将莫尔条纹看做狭长形连通域进行检测,如果狭长形连通域的个数较多,达到预设的个数阈值T2,则认为当前的图像检测到莫尔条纹,因为正常图像是不会包含较多数量的狭长形连通域的。个数阈值T2可以采用经验值或实验值。

连通域的分析大致包括两个个步骤:1)连通域标记,即在规定的连通性定义下给每一个物体或目标分配一个唯一的非零标号;2)计算每一个连通域的形状特征,本发明所指的形状特征为外切矩形特征;依据每一个连通域的形状特征统计狭长形连通域的个数。鉴于连通域分析采用已有技术,在此不再赘述。

需要说明的是,上述两种莫尔条纹检测的方式可以在各轮莫尔条纹过滤中采用相同的方式,也可以在各轮莫尔条纹过滤中采用不同的方式,例如在第一轮中采用第一种莫尔条纹检测的方式,在第二轮中采用第二种莫尔条纹检测的方式。

步骤103:采用预设窗口对当前的图像进行高斯平滑后,转至步骤102进行下一轮莫尔条纹的过滤,直至达到预设的轮数。其中在每一轮的莫尔条纹的过滤中,采用的预设窗口大小递增,即逐渐从细莫尔条纹的检测和高斯平滑到粗莫尔条纹的检测和高斯平滑。

一旦检测到莫尔条纹,对莫尔条纹进行过滤的方式采用高斯平滑。在本发明实施例中从细莫尔条纹的过滤开始,即先采用小窗口进行高斯平滑,然后再下一轮高斯过滤中,如果仍检测到存在莫尔条纹,再增大窗口进行高斯平滑,将稍粗一些的莫尔条纹过滤掉;如果未检测到莫尔条纹,因为细莫尔条纹都没有检测到,那么可以认为不存在莫尔条纹。这种类似于“投石问路”的方式是为了尽量减少高斯平滑对图像的损伤,先从小窗口开始逐渐增大进行高斯平滑,直至过滤掉图像中的莫尔条纹。对于仅存在细莫尔条纹的图像,则仅采用小窗口的高斯平滑就能够过滤掉莫尔条纹,从而可以避免采用过当的大窗口进行高斯平滑对图像带来的损伤。

下面以两轮莫尔条纹过滤为例描述一种优选的实施方式,在第一轮中进行细莫尔条纹的检测和高斯平滑,在第二轮中进行粗莫尔条纹的检测和高斯平滑,其过程如图4所示,主要包括以下步骤:

步骤401:获得原始的图像I。

步骤402:对原始的图像I进行复制后,对复制的图像采用预设的小窗口进行高斯平滑,获得平滑后的图像Isf。

在此预设的小窗口可以采用诸如长度为5,方差为0.8的窗口。

步骤403:确定原始的图像I和平滑后的图像Isf的差值图像Idiff-If。

步骤404:统计差值图像Idiff-If中像素值大于预设像素值Td的比例R1,在此Td的值可以取诸如20。

步骤405:如果比例R1大于或等于T1,T1的值可以取诸如0.15,则检测到原始的图像I含有细莫尔条纹,执行步骤406;否则结束流程。

步骤406:将原始的图像I替换为平滑后的图像Isf,完成细莫尔条纹的过滤。

步骤407:对平滑后的图像Isf进行Canny边缘检测,获得边缘图像Esf。

步骤408:对边缘图像Esf进行连通域分析,统计狭长连通域的个数N。

步骤409:如果N大于或等于预设的个数阈值T2,在此T2可以被设置为与边缘图像长宽相关的自适应数,则确定图像Isf包含粗莫尔条纹,执行步骤410;否则结束流程。

步骤410:对图像Isf采用预设的大窗口进行高斯平滑,该预设的大窗口可以采用诸如长度为7,方差为1.7的窗口,得到平滑后的图像IIf,从而完成了粗莫尔条纹的过滤。

以上是对本发明提供的方法进行的详细描述,下面结合图5对本发明实施例提供的装置进行详细描述。如图5所示,莫尔条纹的过滤装置可以包括:检测单元01、平滑单元02和控制单元03。

检测单元01用于对当前的图像进行莫尔条纹检测。初始时,当前的图像为原始的图像,在后续轮的莫尔条纹过滤中,当前的图像为上一轮处理后的图像。

具体地,检测单元采用以下方式中的至少一种对当前图像进行莫尔条纹检测:

方式一:对当前的图像进行复制,对复制的图像采用本轮的预设窗口进行高斯平滑,获得平滑后的图像;统计当前的图像和平滑后的图像的差值图像中像素值大于预设像素值Td的比例R1;如果R1大于或等于预设比例阈值T1,则对当前的图像检测到莫尔条纹,否则未检测到莫尔条纹。

差值图像中坐标(x,y)处的值Idiff-If(x,y)为:Idiff-If(x,y)=abs(I(x,y)-Isf(x,y)),其中,I(x,y)为当前的图像中坐标(x,y)处的值,Isf(x,y)为平滑后的图像中坐标(x,y)处的值,abs()表示取绝对值。在该方式中,预设像素值Td和比例阈值T1可以选取为经验值或实验值。

方式二、对当前的图像进行边缘检测,获得边缘图像;对边缘图像进行连通域分析,统计狭长形连通域的个数N,其中狭长形连通域为外切矩形的长宽比高于预设长宽比阈值的连通域;如果N大于或等于预设的个数阈值T2,则确定对当前的图像检测到莫尔条纹,否则未检测到莫尔条纹。

其中进行边缘检测可以是但不限于是Canny边缘检测,上述的个数阈值T2可以采用经验值或实验值。

平滑单元02用于在检测单元01检测到莫尔条纹时,采用预设窗口对当前的图像进行高斯平滑。

控制单元03用于将平滑单元02处理后的图像作为当前图像提供给检测单元01,直至达到预设的轮数;在检测单元01未检测到莫尔条纹时,结束该装置的处理,输出当前的图像作为处理后的图像,可用于后续诸如图像识别等应用。上述每一轮莫尔条纹的过滤中平滑单元02采用的预设窗口大小递增。

已有优选地实施方式,对应图4中所示流程,预设的轮数为2,则在第一轮莫尔条纹的过滤中检测单元01采用方式一进行莫尔条纹检测,在第二轮莫尔条纹的过滤中检测单元采用方式二进行莫尔条纹检测。选取的各阈值:Td为20,T1为0.15,T2为与边缘图像长宽相关的自适应数。在第一轮莫尔条纹的过滤中平滑单元02采用长度为5,方差为0.8的预设窗口,在第二轮莫尔条纹的过滤中平滑单元02采用长度为7,方差为1.7的预设窗口。

经过上述莫尔条纹过滤之后,对图像的整体识别效果将得到大幅提高,以图6a中所示的原始图像为例,如果直接对该原始图像进行识别,则识别结果可能是图6b中所示,显然识别效果很差。如果采用本发明实施例中提供的方法和装置对该原始图像进行检测后,检测到其包含细莫尔条纹并进行高斯平滑后,得到莫尔条纹过滤后的图像即图6c,在该图6c所示图像的基础上进行的识别结果如图6d所示,显然识别效果得到了大幅提高。

再以图7a中所示的原始图像为例,如果直接对该原始图像进行识别,则识别结果可能是图7b中所示,完全无法识别出正确结果。如果采用本发明实施例中提供的方法和装置对该原始图像进行检测后,在第一轮检测到其包含细莫尔条纹并进行高斯平滑,在第二轮检测到其包含粗莫尔条纹并进行高斯平滑后,得到莫尔条纹过滤后的图像即图7c,在该图7c所示图像的基础上进行的识别结果如图7d所示,显然识别结果得到了大幅提高。

在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1