用于图案检测的图像处理的制作方法

文档序号:6567551阅读:474来源:国知局
专利名称:用于图案检测的图像处理的制作方法
技术领域
本发明涉及用于布置图案检测如条形码检测的方法和装置。

背景技术
条形码作为信息源已经使用于广泛多样的应用中,例如用于产品标识和定价。条形码是二进制数字集并且通常包括黑色条形和白色间隔或者白色和黑色方块。一维条形码通常包括黑色和白色线条,而二维条形码是黑色和白色方块或者六边形或者椭圆阵列。通常,用于条形码检测的标准典型设备使用激光束(例如在超市和商店中使用的专用设备)。由于许多移动设备已经配备相机,所以也有可能在这些设备中布置条形码检测。
所要检测的条形码的物理尺度大相径庭。在大面积上具有低信息密度的条形码能够容易地利用普通相机电话进行检测。这是因为对于这样的条形码而言在印刷条形码与相机的透镜之间的距离必须长到在取景器中包括完整条形码。在这一情况下,包含条形码的图像位于相机的聚焦范围内而捕获图像的质量通常好到足以用于检测。另一方面,对于在小面积上印刷的条形码而言-即使它们具有低信息密度-在印刷条形码与相机之间的距离必须很短。这归因于如下事实对于这样的小条形码而言,处于相机聚焦范围内的印刷条形码的分辨率约为相机电话的光学系统的最大分辨率。为了应对这一问题,在比相机的焦距短得多的距离处捕获条形码。然而,当在很短的距离捕获条形码时,捕获图像很大程度上受到相机的光学系统和传感器的失真(未聚焦)的影响。通常,捕获图像因附加到捕获图像的传感器噪声、相机的光学系统(透镜)所造成的光学模糊和晕映(vignetting)而失真。在图1中描绘了使用相机与印刷条形码之间的短距离而捕获的这种图像的例子。很有可能的是,向这一图像直接应用的条形码检测将由于模糊量而失败,因此预处理是合乎需要的。
一种用以针对小条形码提高捕获图像质量的方式是使用在捕获图像中引入很少模糊的具有很短焦距的透镜。然而,使用这样的透镜要求向移动电话添加外部附件并且可能造成不适感并且使用户厌烦。这也会增添更多成本。
William Turin和Robert A.Boie在IEEE Transactions on SignalProcessing 1998年2月第46卷第2期第354-363页的IEEE公开物“BarCode Recovery via the EM Algorithm”公开了一种基于统计期望-最大值(EM)算法的条形码恢复方法。在该方法中,双层条形码被模糊化并且被适配到输入线路。假设点扩展函数(psf)为高斯函数并且假设条形码边缘的位置未知。还假设psf的参数未知。使用最大似然方式找到条形码边缘的位置。这一文献限于描述一种针对模糊量小的情形的解决方案。对于中度和高度模糊的图像,在引用文章中没有说明该方法的性能的例子。另外,在这一文献中提到的方法是针对基于红外线传感器的条形码检测器而导出的,而这样的传感器的模型被用于导出该算法和方法。除此之外,在上述论文中提出的算法具有大的计算复杂度,这使得它不适合于在移动设备中实施。


发明内容
现在提供一种用于图案检测的增强解决方案。这一解决方案可以通过以在独立权利要求中公开的内容为特征的方法、电子设备、计算机程序产品和图像处理单元来实现。本发明的一些实施例在从属权利要求中加以阐明。
本发明是基于用于图案检测系统的如下预处理步骤的组合基于捕获图像的至少一部分的图像数据来检测图案的开始点和结束点;基于检测的开始点和结束点从图像数据或者修改的图像数据估计点扩展函数;以及使用所估计的点扩展函数来恢复图像数据或者修改的图像数据。
在本发明的一个实施例中,图案是条形码而恢复的图像数据或者恢复的修改图像数据是用于条形码检测过程的输入。
在本发明的另一实施例中,选择来自所选一部分的线条作为用于预处理步骤的图像数据。
在本发明的又一实施例中,针对图像数据应用降噪算法。
本发明的主要优点在于它使得更可靠的图案检测成为可能。例如,在条形码检测设备的情况下,增强对小的印刷条形码的检测。本发明的特征减少了成像设备的传感器和光学系统所引入的不同失真,由此针对图案检测目的而增加捕获图像的质量。在具有小型尺寸的相机模块的电子设备中也能够实现可靠的检测,这些电子设备比如是具有内嵌式相机的移动终端。因此,有可能避免在实现检测时的附加光学元件和花费,并且无需增加设备中相机部分的尺寸。本发明的预处理能够是完全自动和自适应的,无需用户进行任何设置或者调节。可以根据输入图像自适应地计算所需参数和功能从而无需校准。
根据本发明的一个方面,一种应用多过程的图像去模糊的具体图像预处理方法执行包括如下步骤的图像去模糊过程 a)初始化恢复图像;以及 b)使用点扩展函数来应用去模糊算法以计算恢复图像的去模糊图像。执行包括步骤a)和b)的至少一个又一图像去模糊过程,其中应用先前图像去模糊过程的输出作为用于步骤a)的输入。将又一图像去模糊过程的输出用于图案检测或者用于先于图案检测的又一图像处理。这一解决方案实现了进一步减少预处理时间。



在下文中将通过一些实施例并且参照附图具体地描述本发明,在附图中 图1是条形码的示例性失真图像; 图2是图示了适于条形码检测的电子设备的特征的框图; 图3是图示了根据本发明实施例的方法的流程图; 图4图示了用于自动晕映校正的条形码的所选线条以及多个点的例子; 图5图示了用于psf检测的理想生成条形码的例子; 图6图示了使用本发明实施例的恢复图像的例子; 图7是图示了根据本发明另一实施例的方法的流程图; 图8是图示了根据本发明实施例的方法的流程图;以及 图9是图示了根据本发明又一实施例的方法的流程图。

具体实施例方式 图2图示了在配备相机的电子设备200中与本发明相关的主要特征。电子设备200包括图像捕获装置210、图像预处理装置220和条形码检测装置230。
图像捕获装置210可以通过适当的数字成像技术来提供。例如,可以使用基于CMOS(互补金属氧化物半导体电路)或者CCD(电荷耦合器件)的传感器以及本领域技术人员熟知的适当光学元件。在图像传感器中将光转换成电荷,为像素而限定RGB值,并且将电荷转换成数字格式。应当注意,图像捕获装置210可以能够记录静止图像和视频图像。
电子设备200不限于任何具体设备,而本发明的特征可以配备到适合于捕获图像和配备条形码检测的设备。例如,电子设备200能够是移动通信设备、数码照相机或者用于另一电子设备的辅助设备。移动通信设备的例子是能够利用PLMN(公共陆地移动网络)网络如GSM/GPRS(全球移动通信标准/通用分组无线电服务)网络或者第三代网络(例如3GPP(第三代伙伴项目)系统)来传输数据的设备。
应当注意,本发明也能够应用为使得相机或者图像捕获装置210没有集成到电子设备200,而是产生图像信息的相机连接到电子设备200。
电子设备200包括一个或者多个处理单元和存储器,该存储器用于存储数据和对处理单元进行控制的程序代码。处理单元执行比如压缩以及将数字图像信息存储到存储器中这样的处理。在存储器中存储的并且在处理单元中执行的计算机程序代码部分可以用于使设备200实施用于提供与单元220的图像预处理功能有关的本发明功能的装置。本发明功能的一些实施例将在下文中结合图3至图9加以说明。这样的计算机程序代码可以独立于软件代码或者是软件代码的一部分,例如条形码检测应用软件的一部分。电子设备200也包括其它特征,比如用户接口设施和用于无线通信的收发器。
在一个实施例中,用于控制电子设备200的芯片单元或者某一其它种类的硬件模块可以使得设备执行本发明功能。例如,这样的硬件模块能够包括下文具体描述的单元220的功能。硬件模块包括用于在机械和/或功能上连接设备200的连接装置。因此,硬件模块可以形成设备200的一部分并且能够是可拆卸的。这样的硬件模块的一些例子是子组件、便携数据存储介质、IC卡或者附件设备。引起本发明功能的计算机程序代码能够经由网络来接收和/或存储于存储器装置中,例如存储于盘、CD-ROM盘或者其它外部存储器装置上,能够从这些存储器装置将它们加载到设备200的存储器中。例如也能够通过使用TCP/IP协议栈经过网络加载计算机程序。因此,本发明功能所特有的计算机程序代码部分可以嵌入到设备200中的图像处理链中,或者计算机程序代码部分可以实施为按需下载和安装的分离安装包。硬件解决方案或者硬件和软件解决方案的组合也可以用来实施本发明功能。
单元220的图像预处理是更复杂的条形码检测系统中的第一步骤。预处理的目的在于提高输入图像的质量,这使得有可能检测条形码。预处理的主要步骤是基于捕获图像的至少一部分的图像数据来检测条形码的开始点和结束点;基于所检测的开始点和结束点从该图像数据部分的至少一部分估计点扩展函数;以及使用所估计的点扩展函数来恢复图像数据。参照附图3在如下实施例中说明这些特征和一些其它补充特征。
在图3的步骤301中,捕获图像并且预备适合于作为用于当前预处理方法的输入的图像数据。对步骤302的输入图像数据可以是从数字传感器(例如CCD或者CMOS)直接获得的拜尔矩阵图像数据、在成像链的输出处获得的彩色图像或者在压缩之后获得的JPG图像。这是本方法的一个具体优点,使得它能够并入图像处理链中或者实施为按需安装的分离安装包。
例如,当使用拜尔矩阵数据作为输入时,从传感器获得的图像包含四个分量一个红色分量、两个绿色分量和一个蓝色分量。在本发明的一个实施例中,绿色分量之一用于随后处理。这样做的原因如下首先,来自拜尔矩阵的一个分量的大小是整个传感器图像的大小的四分之一,而这减少了计算复杂度并且增加了处理速度。其次,绿色分量是最锐利的分量,而这使得去模糊过程更容易。
在另一实施例中,向在成像链的末尾获得的彩色图像应用预处理。在这一情况下,通过适当平均红色、绿色和蓝色这三个色分量将彩色图像变换成灰度图像。也有可能使用彩色图像的仅一个分量而不是灰度图像。
在任一情况(拜尔矩阵数据或者灰度图像)下,将该框的输出传递到下一步骤302。
在步骤302中截取图像。在这一步骤中,可以保留输入图像的仅小部分图像以便增加处理速度。例如保留来自图像分量之一的数个相邻线条。例如,保留和发送在感兴趣的线条周围的20个相邻线条到下一框以便去噪。然而,该保留不限于任何具体数目的线条。在本例中,选择来自输入图像的数个线条而不是仅一个线条,由此实现如下优点首先,下一去噪步骤能够在使用有必要输入更多数据的算法的数个不同方式下实施。其次,可以维持关于真实图像尽可能多的信息以便获得良好的去噪性能。
在这一步骤中的一个重要问题是如何选择感兴趣的线条,即实际增强的并且用于条形码检测的线条。在电子设备200的屏幕上显示的水平引导线可以用来解决这一问题。在一个实施例中,用户可以在显示器设备上手动选择感兴趣的线条。然而,也存在其它可行方法。可以提示用户沿着印刷条形码移动设备200使得这一线条穿越条形码的图像。由于水平线的坐标已知,所以选择在来自捕获图像的线条周围的对应区域作为感兴趣的区域。
在步骤303中执行去噪。因此,向图像的截取部分应用降噪算法以便减少传感器噪声的电平。如下两个实施例说明了这一步骤。
第一方式很简单但是对相机相对于印刷条形码的旋转也更敏感。在这一方式中简单地平均感兴趣的线条和它的三个相邻线条。这一方式在条形码取向接近水平时很有效(小的旋转没有使图像失真,因为平均了仅四个相邻线条)。对于大幅旋转条形码的情形,这一去噪方法可能引入更多模糊。可以通过手动或者自动检测条形码取向来校正这一情形。
用于步骤303中图像去噪的第二方式是实施更精细的算法。这样的算法的一个例子是Sigma滤波器。在这一情况下,所有20个相邻线条而不仅仅是四个线条用作输入。已经在实践中测试两种算法而它们已经显示了良好性能。
在步骤304中执行线条选择,由此选择一个或者更多线条以供进一步处理。在本实施例中保留来自截取图像的仅一个线条。
如果在先前步骤303中使用平均方法进行滤波,则去噪过程的输出包括向下一框305传递的单个线条,即在步骤303中已经进行了步骤304。如果通过例如使用向20个相邻线条应用的Sigma滤波器来执行去噪,则选择所得线条之一以供进一步处理。
在步骤305至307中应用用于晕映消除过程的特征。在这一步骤中逆转(inverse)电子设备200的光学系统所引入的晕映(非均匀照射)过程并且相应地校正所选线条。
在下文中描述用于执行晕映消除过程的实施例。首先检测条形码的白色边界(305)。通过从位于条形码图像左侧和右侧的图像检测白色区域来完成这一步骤。对于白色区域的检测,说明两种方式。在第一方式中计算在所选线条的开始处和结束处的一些局部平均。根据所计算的平均,选择与围绕条形码的白色区域相对应的较大平均。在下文结合图7说明的第二方式中,先检测条形码的开始点和结束点,并且假设条形码的白色边界具有最小宽度。位于这些区域中的像素被认为是白色像素。
如果在步骤306中基于检验而成功地检测到白色边界,则应用比如下述算法这样的算法用于消除晕映(307)。否则跳过这一晕映消除步骤。
在图4中描绘了包含条形码的所选线条400的例子。这里可以看见白色边界的存在。该算法计算如下三个局部平均值在条形码的左侧上计算两个局部平均值(在图4中分别表示为A和B)而在条形码的右侧上计算一个平均值(在图4中表示为C)。假设能够将晕映函数建模为二阶多项式 y(x)=Dx2+Ex+F 其中x是水平像素坐标,而D、E和F是常数系数。
使用上面计算的三个平均来形成如下方程系统 其中x1、x2和x3是分别计算三个局部平均A、B和C的坐标。
针对D、E和F求解上述方程系统,并且将所选线条除以y(x)的对应值来校正所选线条。图4也示出了针对线条402的估计晕映函数。从图4中可见,本发明的自动晕映检测方法也能够解决并不归因于光学系统而是取决于外部光照条件的非均匀照射问题。将注意到也可以应用其它去晕映方法。作为能够使用的更高级的去晕映方法的例子,参见作为参考结合于此的在PCT专利申请PCT/FI2004/050082中描述的方法。
现在参照图3,在步骤308中检测条形码的开始点和结束点。因此,从所选线条检测条形码的开始点和结束点的坐标。
已经认识到一种检测条形码的开始结构和结束结构的可靠方式是在图像中检测继而急剧转变为黑色的一连串两个大的白色区域。当考虑正在处理的线条时,通过利用窗口长度15进行滤波来进行这一检测。所用一维滤波器是在滤波器的窗口内信号的最大值与最小值之差。与信号的两端最接近的滤波值的最小值被认为属于对应图像的白色区域。在两个方向(从左到右和从右到左)上这些点之后的最初大的转变给出了所要寻找的坐标。
在步骤309中,基于在先前步骤中获得的条形码的开始点和结束点从所选线条直接估计点扩展函数(psf)。一旦在处理的线条中已经检测到条形码的开始点和结束点,下一步骤就自动检测模糊函数(psf)。出于这一目的,如下信息将被利用在完整的一维条形码中有数目固定和已知的条形(例如在EAN 13条形码中有95个条形)。如果具有对应大小的两个外部边界也被认为是条形,则最后使用97个条形。两个外部边界也用于本发明的晕映估计。这意味着仅固定数目的垂直线条能够组成条形码。
各条形码以排列如下的的一组5个等宽线条开始和结束白线、黑线、白线、黑线和白线。当交换黑线和白线时,用户能够手动切换到逆图案检测。对于EAN码,这些线条比其余线条更长并且位于码的开始和结尾处。在给定例子中,相似的布置存在于码的中部,而这对于EAN13码也是固定的。但是在某些情况下,比如UPC-E,固定的中部部分缺失。另外,使用最多的现有一维条形码包含相似的固定开始结构和结束结构。
基于此信息可以检测psf如下 根据条形码包括97个线条的事实并且知道条形码的开始点和结束点坐标为X1和X2来检测一个条形码的以像素为单位的长度。对于EAN13,这一长度计算为应当关于使用这一过程的线条来计算这一长度,而由于条形码在捕获画面中可能具有不同大小的事实而不能保存该长度作为算法的参数。
在知道每个条形码始于上述五个线条的集合并且所有线条具有L个像素的长度情况下,从处理的线条截出从X1(条形码的开始)到X1+5L(前五个线条的结束)这一部分。处理的线条中的这一部分表示为Y。
假设表示为P的psf具有长度等于5L和方差为σ的高斯形状。生成与Y相对应的表示为V的理想干净线条(包含被光学系统模糊得到Y的五个部分的线条)。在图5中示出了理想线条。
利用针对数个σ值(始于小σ,例如0.1)的生成psf即P来模糊理想线条V,由此在每次迭代中增加它的值。在每次迭代中计算模糊线条与输入线条Y之间的平均平方误差。对于最先的迭代(直至σ逼近最佳值)而言,平均平方误差减少。当σ的值变得过大(它超过最佳值)时,平均平方误差也增加。此时,停止迭代过程并且保留σ的最后良好值。
在这一点,psf的估计是可用的。对psf的估计是具有如在上述算法中计算的方差和长度等于5L的高斯形状。这一psf还用来对在步骤304中选择的整个线条去模糊。
在步骤310中对该线条去模糊。因此,使用在步骤309中估计的psf来恢复(去模糊)经过晕映消除307后的所选线条。使用Landweber算法来完成这一过程。通过W来标识步骤304中的所选线条而通过P来标识所估计的psf,实施如下去模糊算法 初始化所恢复的线条R(0)=W 对于k=1至ITER R(k)=R(k-1)+μP(-n)*(W-P*R(k-1)) 结束, 其中索引(k)表示迭代号,P(-n)是翻转的psf,*表示卷积,而μ是常数步长大小。注意到由于psfP是高斯形状,所以它也是对称的,于是P(-n)=P(n)。
将注意到利用点扩展函数的其它去模糊算法能够用于执行图像恢复。另一实施例在迭代过程中对恢复的线条施加补充性的限制。例如对于EAN13,仅接受所限定的各数位结构。使用7位对EAN13的各数位进行编码,所以有128个可能组合但是仅10个或者20个有效。迭代过程于是改变如下在去模糊算法中的每10次迭代之后,将判决一个数位。然后将针对其余迭代过程冻结这一判决。解码从条形码的左侧到右侧相继地执行,并且然后作为第二过程从右侧到左侧相继地执行。如果解码相同并且检验数位通过测试,则使结果有效。
在作者Radu Ciprian Bilcu、Mejdi Trimeche、Sakari Alenius和Markku Vehvilinen的“Landweber Image Restoration with AdaptiveStep-Size”中说明了另一示例性算法,该算法被整体结合作为本申请的一部分。
于是,图像的恢复线条是R(ITER),并且将它传递到系统中执行条形码解码的下一级。图6图示了使用本实施例的恢复图像的例子。通过100次重复所恢复的线条来获得该图中示出的图像。以这一方式,所恢复的线条的绘制实现了对实现的处理结果的更清楚说明。迭代过程的延迟是短暂的,因为在每次迭代中处理图像的仅一个线条。
回到图3,将注意到可以按照不同的顺序来进行这些步骤中的至少一些步骤而且并非所有步骤都是必需的。
图7图示了另一实施例,其中步骤701至704对应于图3中的步骤301至304。在步骤705中检测条形码的结束点和开始点。这两个点在步骤706中与图像的所选线条(虚线704至706所示)一起用来执行晕映消除。在步骤707中,所检测的开始点和结束点(在步骤705中估计的点)还与图像的校正线条一起用来估计psf。最后在步骤708中,通过使用来自步骤707的估计psf和来自步骤706的校正图像线条来恢复即去模糊所选线条。
在一个实施例中,旋转校正作为单元220在条形码检测之前的图像预处理的一部分来执行。先检测在捕获图像中条形码的位置和取向。然后使用所检测的对象的凸包(convex hull)。这一凸包的主轴被认为是与它的两个最长线条等距的轴。对主轴与它的五个邻居一起进行扫描。在各点处将仅保留四个值,将消除最大值和最小值。这四个值的平均将代表当前点的最后值。这一实施例可以与这里说明的其它实施例一起应用。
本发明的应用不限于条形码检测而是可以适用于任何图案识别系统,其中待检测的图像的一些特征是现有技术中已知的。此现有信息用于估计psf。例如,当前特征可以适用于各种OCR(光学字符识别)技术。本发明可以应用于其它图案识别用途,在这些用途中有一些预定义的结构或者已知的图案系列。另一示例性应用领域是文本检测。
在另一实施例中,没有根据所处理的图像来限定适用于去模糊的点扩展函数(如先前结合步骤309和707所述),而是在去模糊图像的计算过程中应用现有psf。下文结合根据本发明一个方面的去模糊方法进一步说明这样的实施例。
图8图示了大致两个步骤的去模糊方法。针对图像输入801在步骤802中执行第一去模糊过程以便去模糊。这一步骤涉及到应用迭代的去模糊算法,该算法基于输入图像使用点扩展函数来计算去模糊图像。例如,输入图像801能够是从数字传感器(例如CCD或者CMOS)直接获得的拜尔矩阵图像数据、在成像链的输出处获得的彩色图像或者在压缩之后获得的JPG图像。因此,可以在包括一个或者多个对于所有成像应用共同图像处理过程(比如拜尔矩阵插值、自动白平衡等)的成像链之前或者之后应用本去模糊方法。例如,当捕获常规彩色图像时也能够使用这样的过程。
在步骤803中检验是否满足用于第一去模糊子过程的结束标准。例如,如果已经针对处理的图像进行了预定次数的迭代,则可以满足这样的结束标准。如果已经满足结束标准,则在步骤804中将通过应用第一去模糊过程而获得的处理图像存储为恢复图像。可选地,执行通过返回到步骤802而表示的另一轮迭代。
通过应用针对新近存储(804)的去模糊图像来使用点扩展函数的这一去模糊算法在步骤805中执行第二去模糊过程。
如果在步骤806中基于检验而满足用于第二去模糊过程的结束标准,则将第二图像去模糊过程的输出用于(807)图案检测或者用于先于图案检测的又一图像处理。在一个实施例中,针对步骤801应用来自图像传感器的图像,而在步骤807中使用输出作为用于图案识别模块的输入。在可选实施例中,应用多于两个去模糊过程,使得应用先前去模糊过程的输出作为对于后继去模糊过程的输入图像。因此,将最后迭代去模糊过程的输出用于图案检测或者用于先于图案检测的又一图像处理。
图9更具体地图示了应用改型Landweber方法的根据一个实施例的两步骤去模糊过程。就步骤901中初始地使用的输入图像而言,对结合步骤801提及的各种输入图像可能进行参考。在这一实施例中,向输入图像反复地应用包括两个(子)过程的迭代去模糊方法。在这一方式下,锐化输入图像以便即使在极度模糊的输入图像情况下仍然为图案检测阶段提供鲁棒结果。例如,如果针对条形码检测来应用这一方法,去模糊过程可以被配置用以重建输入图像,使得即使对于包含大量模糊的图像仍然有可能检测条形码。
重复如下步骤 a)初始化恢复图像Imr Imr=Imin(1) 在(1)中Imin是输入图像。
b)对于N次迭代,在当前迭代中计算(902)去模糊图像如下 Imr(k+1)=Imr(k)+αHT*(Imin-G*Imr(k))(2) 在(2)中α是控制恢复过程的常数,H是点扩展函数,*代表2维卷积,而上标T表示转置。
c)将恢复图像存储(904)到输入图像中 Imin=Imr(3) 重复步骤a)和b)(902、903)直至多次迭代收敛。当已经进行预定次数如2次或者3次的迭代时,该方法进入步骤c)(904),该步骤利用在处理过程中获得的部分结果重新初始化输入图像。在步骤905中,检验是否满足用于去模糊的结束标准。如果不是,则针对在步骤c)904中存储的图像再次重复步骤a)和b)预定的次数,如在步骤903中检验的那样。再次存储(904)所得的图像并且可以再次返回到重复步骤a)和b)的算法。然而,如果满足用于去模糊的结束标准,则在步骤906中可以将去模糊图像用于图案检测或者用于先于图案检测的又一图像处理。如果已经进行预定重复次数的步骤a)至c)这一过程(901至905)则满足结束标准。
因此,在步骤902和903中的循环可以被认为是第一去模糊过程,而步骤904、905和返回到步骤901所代表的循环可以被认为代表了重复的第二去模糊过程。换而言之,该方法包括 1)执行步骤a)和b)的子过程; 2)存储去模糊图像作为恢复图像;以及 3)通过利用在步骤2)中存储的去模糊图像重新初始化恢复图像返回到子过程1),该方法还包括 检验是否已经进行预定次数的重新初始化,并且将子过程1)的第一次或者更多次重复的输出用于图案检测或者用于先于图案检测的又一图像处理。
在一个实施例中,计算等式(2)的迭代次数是N=3。已经注意到,这一值赋予了良好的恢复性质和足够的处理速度,而且也可以应用其它迭代的次数。
修改后的本发明方法特别地提供了增加的收敛速度,而用以获得适合于图案识别的预处理图像的预处理所需要的时间更少。在实践中已经观察到这些步骤较少次数(例如2-4,在一个实施例中为3)的重复迭代在实施于手持电子设备如移动通信设备上时赋予了良好的恢复性能和快速的处理速度。例如,注意到包括配备2维条形码检测器以及使用本发明预处理方法的相机在内的移动通信设备能够甚至对非常模糊的条形码如此之快地进行解码以至于能够认为它是基本上实时进行的。本发明的预处理方法使得即使在未聚焦位置进行捕获时仍然能够增强图案检测的准确度。提出的预处理既简单又适合于移动实施,并且仅有为数不多的参数需要设置。在上述实施例中使用预定的点扩展函数。然而,本发明去模糊方法的应用不限于使用这样的点扩展函数。
应当注意在本实施例中提出的预处理旨在于图案检测而不是通用成像。这意味着恢复图像并非必须看似原图像,而是对它进行处理使得增强所需细节而不感兴趣的其它细节如颜色可以被修改。例如,处理的图像可以包含一些边缘过冲,即过份强调对象的一些边缘,使得存在错误着色。显然而言,例如如果将要打印图像则这样的图像是不合需要的,但是在图案检测的情况下本发明方法的应用是有益的。
上述去模糊特征可以应用于具有成像和图案识别能力的电子设备中,该电子设备比如是已经结合图2说明的电子设备200。该解决方案在没有自动聚焦的设备中尤为有用。存储于电子设备200的存储器中并且在该电子设备的处理单元中执行的计算机程序代码部分可以用于使设备200实施用于提供上述去模糊特征的装置。
将注意到上述去模糊过程是可能配置中的仅一些示例。例如,可以变化迭代次数以平衡资源使用和准确度。去模糊过程可以是包括多于两个步骤的多步骤过程。作为与图9的实施例相比不同的布置的例子,可以在步骤903中的肯定答复之后直接进行检验步骤(905),而在检验步骤(905)中的否定步骤之后可以存储输出图像作为输入图像以预备步骤901中的重新初始化。另外,上文结合图8和图9说明的特征可以与结合图3中的步骤302至308和/或图7中的步骤702至706说明的步骤一起应用。可以应用这些过程中的一个或者多个过程;然而,如果没有应用所有这些特征则一些修改可能是必要的。在一个实施例中,上文结合图8和图9说明的(多步骤)去模糊处理还包括如下预处理特征中的一个或者多个特征截取图像;选择截取图像的一部分以供进一步处理,包括去模糊、向图像数据应用降噪算法(例如上文结合步骤303说明的算法)、晕映消除。这些特征中的一个或者多个特征可以先于上述去模糊过程,而这些步骤的顺序可以如已经示出的那样变化。例如,向图像数据应用晕映消除算法,而在起初进入步骤801或者901时应用这一过程的输出。另一实施例是在去模糊过程之前应用在图3的步骤301至305中说明的特征或者在去模糊过程之前应用步骤701至705。上述更多预处理特征中的一个或者多个特征可以应用于进一步提高系统的性能和/或系统的准确度。附图以及与它们有关的描述仅仅旨在于说明本发明。在不脱离所附权利要求书中限定的本发明范围情况下,对本发明的不同变化和修改对于本领域技术人员而言是明显的。例如,从属权利要求中的特征可以与在同一类别的任何在先权利要求中记载的特征相组合。因此可以省略、修改或者等效替换不同特征。
权利要求
1.一种用于图案检测的图像处理方法,所述方法包括以下步骤
基于捕获图像的至少一部分的图像数据来检测图案的开始点和结束点;
基于所述检测的开始点和结束点从所述图像数据或者修改的图像数据估计点扩展函数;以及
使用所述估计的点扩展函数来恢复所述图像数据或者所述修改的图像数据。
2.根据权利要求1所述的方法,其中所述图案是条形码,而所述恢复的图像数据或者所述恢复的修改图像数据是用于条形码检测过程的输入。
3.根据权利要求1所述的方法,其中选择捕获图像的数据的一部分作为用于所述预处理步骤的所述图像数据。
4.根据权利要求3所述的方法,其中选择来自所选部分的线条作为用于所述预处理步骤的所述图像数据。
5.根据权利要求1所述的方法,其中向所述图像数据应用降噪算法。
6.根据权利要求1所述的方法,其中在所述开始点和结束点检测步骤之前或者之后应用晕映消除过程,由此晕映校正所述图像数据或者晕映校正用于所述点扩展函数估计步骤和所述恢复步骤的所述修改图像数据。
7.根据权利要求1所述的方法,其中通过利用对所述图像中存在的已知图案的了解来估计所述点扩展函数。
8.一种电子设备,包括图像捕获装置和图案检测装置,其中所述电子设备包括
用于基于捕获图像的至少一部分的图像数据来检测图案的开始点和结束点的装置;
用于基于所述检测的开始点和结束点从所述图像数据或者修改的图像数据估计点扩展函数的装置;以及
用于使用所述估计的点扩展函数来恢复所述图像数据或者所述修改的图像数据的装置。
9.根据权利要求8所述的电子设备,其中所述电子设备包括条形码检测装置,并且所述电子设备被配置用以为条形码检测过程输入所述恢复的图像数据或者所述恢复的修改图像数据。
10.根据权利要求8所述的电子设备,其中所述电子设备被配置用以选择捕获图像的数据的一部分作为用于所述预处理步骤的所述图像数据。
11.根据权利要求10所述的电子设备,其中所述电子设备被配置用以选择来自所选部分的线条作为用于所述预处理步骤的所述图像数据。
12.根据权利要求8所述的电子设备,其中所述电子设备被配置用以向所述图像数据应用降噪算法。
13.根据权利要求8所述的电子设备,其中所述电子设备被配置用以在所述开始点和结束点检测步骤之前应用晕映消除过程,由此晕映校正所述图像数据;或者
所述电子设备被配置用以在所述开始点和结束点检测步骤之后应用晕映消除过程,由此晕映校正用于所述点扩展函数估计步骤和所述恢复步骤的所述修改图像数据。
14.根据权利要求9所述的电子设备,其中所述电子设备被配置用以通过利用对所述图像中存在的已知图案的了解来估计所述点扩展函数。
15.根据权利要求14所述的电子设备,其中所述电子设备被配置用以利用在条形码的开始处存在的黑线和白线的已知组合来估计所述点扩展函数。
16.一种可在处理器上操作的计算机程序产品,所述计算机程序产品包括
用于基于捕获图像的至少一部分的图像数据来检测图案的开始点和结束点的计算机程序代码部分;
用于基于所述检测的开始点和结束点从所述图像数据或者修改的图像数据估计点扩展函数的计算机程序代码部分;以及
用于使用所述估计的点扩展函数来恢复所述图像数据或者所述修改的图像数据的计算机程序代码部分。
17.根据权利要求16所述的计算机程序产品,其中所述计算机程序产品包括用于向所述图像数据应用降噪算法的计算机程序代码部分。
18.根据权利要求16所述的计算机程序产品,其中所述计算机程序产品包括用于在所述开始点和结束点检测之前或之后应用晕映消除过程、用于晕映校正所述图像数据或者用于晕映校正用于所述点扩展函数估计和所述恢复的所述修改图像数据的计算机程序代码部分。
19.根据权利要求16所述的计算机程序产品,其中所述计算机程序产品包括用于通过利用对所述图像中存在的已知图案的了解来估计所述点扩展函数的计算机程序代码部分。
20.一种图像处理单元,用于具有条形码检测设施的电子设备,其中所述图像处理单元包括
用于基于捕获图像的至少一部分的图像数据来检测图案的开始点和结束点的装置;
用于基于所述检测的开始点和结束点从所述图像数据或者修改的图像数据估计点扩展函数的装置;以及
用于使用所述估计的点扩展函数来恢复所述图像数据或者所述修改的图像数据的装置。
21.一种用于图案检测的图像预处理方法,所述方法包括
执行包括以下步骤的图像去模糊过程
a)初始化恢复图像;以及
b)应用使用点扩展函数的去模糊算法以计算所述恢复图像的去模糊图像;
执行包括步骤a)和b)的至少一个又一图像去模糊过程,其中应用先前图像去模糊过程的输出作为用于步骤a)的输入;以及
将所述又一图像去模糊过程的输出用于图案检测或者用于先于图案检测的更多图像处理。
22.根据权利要求21所述的方法,所述方法包括
1)执行步骤a)和b)的子过程;
2)存储所述去模糊图像作为所述恢复图像;以及
3)通过利用步骤2)中存储的所述去模糊图像重新初始化所述恢复图像来返回到子过程1),所述方法还包括
检验是否已经进行预定次数的重新初始化;以及
将所述子过程1)的所述第一次或者又一重复的输出用于图案检测或者用于先于图案检测的更多图像处理。
23.根据权利要求2 1或者22所述的方法,其中应用预定的点扩展函数。
24.根据权利要求21至23中任一权利要求所述的方法,其中在先于图案识别的预处理中还应用如下预处理特征中的至少一个预处理特征截取捕获图像;选择捕获图像的一部分以供进一步处理,该进一步处理包括去模糊、向图像数据应用降噪算法、晕映消除。
25.一种电子设备,包括图像捕获装置和图案检测装置,其中所述电子设备包括
用于执行包括以下步骤的图像去模糊过程的装置
a)初始化恢复图像;以及
b)应用使用点扩展函数的去模糊算法以计算所述恢复图像的去模糊图像;
用于执行包括步骤a)和b)的至少一个又一图像去模糊过程的装置,其中应用先前图像去模糊过程的输出作为用于步骤a)的输入;以及
用于将所述又一图像去模糊过程的输出用于图案检测或者用于先于图案检测的更多图像处理的装置。
26.根据权利要求25所述的电子设备,其中所述电子设备被配置用以
1)执行步骤a)和b)的子过程;
2)存储所述去模糊图像作为所述恢复图像;以及
3)通过利用步骤2)中存储的所述去模糊图像重新初始化所述恢复图像来返回到子过程1),所述电子设备还被配置用以
检验是否已经进行预定次数的重新初始化;以及
将所述子过程1)的所述第一次或者又一重复的输出用于图案检测或者用于先于图案检测的更多图像处理。
27.根据权利要求25或者26所述的电子设备,其中所述电子设备被配置用以应用预定的点扩展函数。
28.根据权利要求25至27中任一权利要求所述的电子设备,其中在先于图案识别的预处理中还应用如下预处理特征中的至少一个预处理特征截取捕获图像;选择捕获图像的一部分以供进一步处理,该进一步处理包括去模糊、向图像数据应用降噪算法、晕映消除。
29.一种计算机程序产品,存储于电子设备的计算机可读介质上并且可在所述电子设备的处理器上操作,所述计算机程序产品包括
用于执行包括以下步骤的图像去模糊过程的计算机程序代码部分
a)初始化恢复图像;以及
b)应用使用点扩展函数的去模糊算法以计算所述恢复图像的去模糊图像;
用于执行包括步骤a)和b)的至少一个又一图像去模糊过程的计算机程序代码部分,其中应用先前图像去模糊过程的输出作为用于步骤a)的输入;以及
用于将所述又一图像去模糊过程的输出用于图案检测或者用于先于图案检测的更多图像处理的计算机程序代码部分。
30.根据权利要求29所述的计算机程序,所述计算机程序产品还包括用于执行如下操作的计算机程序代码
1)执行步骤a)和b)的子过程;
2)存储所述去模糊图像作为所述恢复图像;以及
3)通过利用步骤2)中存储的所述去模糊图像重新初始化所述恢复图像来返回到子过程1),所述计算机程序产品还包括用于检验是否已经进行预定次数的重新初始化的计算机程序代码;以及
用于将所述子过程1)的所述第一次或者又一重复的输出用于图案检测或者用于先于图案检测的更多图像处理的计算机程序代码。
31.根据权利要求29或者30所述的计算机程序,所述计算机程序产品包括用于应用预定的点扩展函数的计算机程序代码。
32.根据权利要求29至31中任一权利要求所述的计算机程序,所述计算机程序产品包括用于在先于图案识别的预处理中还应用如下预处理特征中的至少一个预处理特征的计算机程序代码截取捕获图像;选择捕获图像的一部分以供进一步处理,该进一步处理包括去模糊、向图像数据应用降噪算法、晕映消除。
全文摘要
本发明涉及一种用于图案检测系统如条形码检测系统的图像预处理方法。该方法包括以下步骤基于捕获图像的至少一部分的图像数据来检测图案的开始点和结束点;基于检测的开始点和结束点从图像数据或者修改的图像数据估计点扩展函数;以及使用所估计的点扩展函数来恢复图像数据或者修改的图像数据。
文档编号G06K9/00GK101180636SQ200680018147
公开日2008年5月14日 申请日期2006年5月10日 优先权日2005年5月24日
发明者R·比尔屈, M·弗维莱南, A·比里安 申请人:诺基亚公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1