对条形码图像解码的方法和系统的制作方法

文档序号:6546090阅读:186来源:国知局
专利名称:对条形码图像解码的方法和系统的制作方法
技术领域
本发明通常涉及对编码数据进行解码,且尤其涉及对采用数码相机拍摄的包括文本数据的条形码数据图像进行解码的方法和系统。
背景技术
条形码扫描器现在普遍应用于超市、零售店以及各种涉及目录和存货清单管理的场所,例如仓库和工厂。通常,条形码粘贴在目录中的物品上,并采用可由光学扫描器读取的标签。诸如那些遵循IBM在20世纪70年代研发的统一产品代码(UPC)的常见的线性或一维条形码可以由“光点(flying spot)”激光扫描器发射的光栅帮助使用者在相对扫描器的条形码的合适位置读取。通常这些扫描器或者固定在超市结账处诸如传送带的目录管理设备上,或者作为手持有线或无线设备。
二维(2D)条形码也越来越普遍。线性条形码通常限制在10到20个字符之间,因此仅仅作为数据库中记录的简单索引(例如零件号码,客户账号等)。然而,二维条形码可以用少得多的空间完成同样的功能。同样,诸如Aztec码,PDF417,Data Matrix和MaxiCode的二维条形码也可以作为数据库本身,因为它们能编码出几千个机器可读取数据的字符。因此二维条形码可以作为便携式数据库或者便携式数据文件,在整个制造和销售链中与产品绑定。此外,可以在二维条形码中嵌入错误纠正规则,从而保证在代码表面区域受到损坏的时候不丢失任何可读信息。因此条形码的广泛使用以及设计中的改进使得条形码在未来继续得以普及。
数码相机代表了另外一种广为采用的技术。最近几年数码相机的成本和尺寸迅速减小,而相机质量和画面分辨率不断提高。现在数码相机经常与多种电子设备集成,例如移动电话、个人数字助理和笔记本电脑。
现有技术包括了将数码相机技术与条形码扫描器结合的启示。这样的结合可以对条形码的数字图像,而不是条形码的激光扫描进行分析和解码。因此条形码扫描器不仅可以用于零售商和目录管理员,而且可以由扫描产品条形码搜寻该产品更多信息或者存储产品价格和其它信息备查的消费者来使用。然而,如果条形码不是立即被解码,那么条形码的数字图像存在一定的问题,因为无法确认条形码的数字图像是否具有足够的质量可以被成功解码。手持激光条形码扫描器通常在系统成功获取和解码条形码时发出熟悉的信号声。尤其在对部分剥蚀或损坏的条形码进行扫描的时候,扫描器的使用者通常需要重复操作相对于扫描器的条形码位置,直到扫描器发出信号表示成功读取条形码。另一方面,数码相机的使用者可能拍摄的是不能立即解码的条形码图像。此时,诸如模糊、焦点没有对准或者分辨率或尺寸不够的条形码的低质量图像可能无法读取,而使用者可能不再有机会接近条形码,因而不能获取一张新的、高质量的图像。

发明内容
根据一个方面,本发明是一种对条形码图像进行解码的方法。该方法包括在相机的图像传感器接收条形码的预览图像,其中预览图像包括表示编码数据的数据区域和表示文本字符的文本区域。然后在相机的预览窗口显示预览图像的画面,其中画面包括数据区域和文本区域的画面。然后拍摄包括至少一部分数据区域和文本区域的数据图像。通过对数据图像的数据区域进行分析和对数据图像的文本区域进行光学字符识别完成对条形码的解码。
根据另一方面,本发明是对条形码图像进行解码的相机系统。该系统包括相机机架和连接到相机机架、适合接收条形码预览图像的图像传感器。预览图像包括表示编码数据的数据区域和表示文本字符的文本区域。连接到相机机架的预览窗口适合于显示预览图像的画面,并帮助拍摄包括至少一部分数据区域和文本区域的数据图像。处理器通过对数据图像的数据区域进行分析和对数据图像的文本区域进行光学字符识别完成对条形码的解码。


为了更好地理解本发明并产生实际效果,参照附图对典型的实施例进行描述作为参考,当中同样的参考数字表示同样的元素,其中图1是图示依照本发明实施例的相机系统的前工作面的示意图;图2是图示依照本发明实施例的相机系统的后工作面的示意图;图3是采用现有技术相机拍摄的典型的、部分模糊的条形码数字图像的示意图。
图4是依照本发明实施例在相机系统的预览窗口显示的条形码图像的示意图。
图5是基于图4所示的条形码图像可进行拍摄、存储和解码的经过裁减的条形码图像的图示。
图6是依照本发明实施例图示方法步骤的流程图。
具体实施例方式
参考图1,是依照本发明实施例图示相机系统100的示意图。与大多数相机类似,系统100包括集成了前工作面110的相机机架105。前工作面110包括适合于接收图像的图像传感器115。图像传感器115可以包括常规的镜头和光学器件以及诸如电荷耦合装置(CCD)传感器、CMOS传感器等的数字图像传感器。
参考图2,是相机系统100后工作面120的示意图。后工作面120包括适合显示由图像传感器115接收的图像画面的预览窗口125。与多数数码相机类似,本领域技术人员知道预览窗口125可以作为常规相机的取景器,且实时显示位于图像传感器115前方场景的任意移动图像。典型地,预览窗口125显示的实时图像仅仅短暂存在,且在使用者激活快门按钮(未图示)、定时器或其它图像拍摄触发装置的时候保存在系统100的存储器中。本发明的一种实施例进一步包括模式选择器开关130,用于将相机系统100设置成不同的照相模式。例如,与多数现有技术设备类似,模式选择器开关130可以用于将系统100设置成标准静止图像模式、视频模式、低光模式、高速模式等。依照本发明,模式选择器开关130也可以用于将系统100设置成条形码读取模式。当模式选择器开关130设置成条形码读取模式的时候,在预览窗口125显示条形码数据拍摄指示器135。本领域技术人员知道模式选择器开关130可以是相机机架105上的物理开关或拨动开关,或者是使用例如预览窗口125激活的软开关。机架105的内部还包括与图像传感器115预览窗口125和模式选择器开关130连接的处理器140,以帮助控制那些组件之间用于处理图像数据的交互。
数据拍摄指示器135的不同实施例可以包括不同的尺寸、形状和格式,而且可以是半透明或不透明的。使用中数据拍摄指示器135用于引导系统100的使用者相对诸如条形码的编码数据正确放置图像传感器115。因此,使用中数据拍摄指示器135的位置将相对于预览窗口125固定。根据一种实施例,数据拍摄指示器135设计成模拟常规条形码激光扫描光栅的样式,从而在预览窗口125显示成位于靠近预览窗口124中心的闪烁的红色线条。
如图2所示,在本发明一种实施例的操作中,使用者将数据拍摄指示器135水平放置在线性条形码上,从而数据拍摄指示器135的左右边缘刚好分别延伸到条形码的第一个和最后一个条码。此外,使用者将数据拍摄指示器135垂直放置,从而指示器刚好位于在条形码下端的对应的文本数据上。在这个位置上,系统100设计用于拍摄对准焦点、清晰和具有足够分辨率的条形码及其对应文本数据的图像。该图像可以采用解码算法有效且可靠地加以分析并对条形码解码。同样,通过拍摄对应文本数据的清晰图像,光学字符识别(OCR)技术可以可靠地应用于对应的文本数据。OCR将对应的文本数据进行解析,然后与解码后的条形码数据对比,确认解码过程的正确性。
因为数据拍摄指示 135可以模拟常规的条形码激光扫描器的光栅,系统100的实施例的条形码读取模式的使用者通常能够非常容易并且靠直觉使用数据拍摄指示器135。那是因为多数人对零售店中购物时的激光扫描器比较熟悉。
参考图3,是采用现有技术相机拍摄的包括数据区域305和文本区域310的典型的、部分模糊的条形码数字图像的图示。尽管图3所示的图像部分模糊,且条形码的数据区域305的部分条码无法解码,但是条形码的文本区域310的字符仍然可读。主要由于包含字符数据的条形码中条码和字符存在相对的尺寸和距离,所以数据区域305无法解码而条形码的文本区域310可读的情况比较常见。文本字符通常并不像条形码数据一样易于模糊。此外,对应条形码的文本字符通常间隔较远,从而OCR程序比较容易分段和识别。众所周知,OCR程序中的多数错误是由对各字符分段的错误而产生的。本发明采用上述事实提供对条形码图像进行解码的改进的方法和系统。
参考图4,是依照本发明实施例的相机100的预览窗口125显示条形码图像的图示。图4中激活了本发明的条形码读取模式,从而预览窗口125包括数据拍摄指示器135,该指示器适当地显示在穿过条形码数据区域305的所有条码的位置,并在条形码的文本区域310上叠加。这个适当的位置有助于拍摄可准确解码的图像,其中诸如线性条形码的所有线条的条形码所有可解码的元素,在拍摄的时候具有足够的清晰度且OCR程序能可靠地识别对应的文本数据。
参考图5,是基于图4所示条形码图像的可被拍摄、存储和解码的裁减后的条形码图像的图示。这个剪裁区域的图像对于本系统100相比那些现有技术的与数字图像相关的条形码读取器来说,具有许多优势。首先,如图5所示的图像非常小且紧凑,从而比图4所示的条形码的全尺寸图像需要更少的存储空间;第二,图5所示的图像仅仅拍摄需要解码的条形码的相关数据部分。这意味着解码算法可以直接对图像进行处理,而不需要任何预定位、配准、定位或剪切步骤。因此解码算法可以简化,这在存储和计算资源有限的手持设备中非常有利。根据本发明的不同的实施例,拍摄图像区域的尺寸可由特定的图像分析和解码算法进行用于有效解码的优化。如图5所示的拍摄图像区域的尺寸因此可由使用者调整或由制造商预设。
本领域技术人员知道数码相机小型化的技术使得相机机架105、图像传感器115和预览窗口125可以具有几乎任意尺寸,因此本发明的实施例可以集成在诸如移动电话、个人数字助理和笔记本电脑的多种电子设备中。此外,数据拍摄指示器135可以设计用于针对各种类型的编码数据,而不仅仅是线性条形码数据。例如圆形或椭圆形数据拍摄指示器135可以适用于帮助读取诸如Aztec Code,PDF417,DataMatrix和MaxiCode等有时也包括对应文本字符的多种二维码。
参考图6,是依照本发明实施例图示方法600步骤的流程图。首先,在步骤605,在相机系统100的图像传感器115接收预览图像。预览图像包括表示诸如条形码的编码数据的数据区域305和表示文本字符的文本区域310。如上所述,预览图像通常是用于将相机系统100对准编码数据的暂时的图像。接着,在步骤610,与相机系统100关联的预览窗口125显示预览图像的画面。预览窗口125可以包括在预览图像画面上叠加数据拍摄指示器135的显示。在步骤615,拍摄包括预览图像中至少一部分数据区域305和文本区域310的数据图像。
接下来,在方法600的步骤620,对数据区域305进行分析并对数据区域305的噪声等级进行估算。对噪声等级的估算是评估所拍摄数据图像的质量,且可以采用本领域技术人员熟知的各种技术完成。例如严重模糊的数据图像通常具有很高的噪声等级,而锐利清晰的数据图像具有较低的噪声等级。在步骤625,用与相机系统100关联的解码算法判定数据区域305是否可以解码。如果数据区域305判定为不能解码,那么方法600在步骤630对数据图像的文本区域310执行OCR程序。最后,在步骤630提供OCR处理的结果作为最终解码结果。
本发明可以使用各种类型的适合于缩减尺寸电子设备的OCR程序和系统。本领域技术人员众所周知,这些OCR系统可以包括矩阵匹配、特征提取和其它类型的OCR技术。
再次回到方法600的步骤625,如果数据区域305判定为可以解码,那么方法600在步骤640采用本领域技术人员熟知的任意条形码解码算法对数据区域305进行解码。在步骤645判定数据区域305是否正确解码。许多线性和二维条形码含有错误检测机制,可以确认正确的解码结果。因此,如果数据区域305判定为正确解码,那么方法600直接进行到步骤635,将解码后的数据区域305作为最后的解码结果。
作为选择,如果在步骤645判定数据区域305没有正确解码,那么在方法600的步骤650对文本区域310执行OCR处理。在步骤655,将解码数据区域305的结果和文本区域310的OCR处理的结果进行比较。接下来,在步骤660,对于数据图像文本区域310的每个字符确定OCR置信分数。在步骤665,基于步骤655的比较结果和步骤660的置信分数,用步骤640获得的对应的解码字符替换步骤630识别的特定字符。通常在所替换字符的OCR置信分数低于使用者设定的或相机系统100的制造商预设的阈值的时候执行上述替换。然后方法600在步骤635提供最终解码结果。
总之,本发明是对条形码图像进行解码的改进的方法和系统。本发明的实施例是用户友好且富于直觉的,因为它们有效地模拟了手持激光扫描器的动作,尽管是在相机系统100的预览窗口125的完全不同的环境下。因此本发明通过相机系统100相对编码数据的正确放置,帮助使用者准确且可靠地拍摄编码数据的可解码图像。此外,所拍摄的编码数据的图像可以相比于使用现有技术拍摄的图像更加简洁且更容易由图像分析软件进行处理。本发明还通过对条形码数据区域305和文本区域310的冗余解码提高条形码解码的准确性。采用标准OCR处理的文本区域的解码相比于标准条形码解码过程有时能获得更高的解码准确性,尤其是在对条形码的模糊图像解码的时候。最后,通过对比解码数据区域305和识别文本区域310的结果来优化解码过程。
上面的详细描述仅仅提供了典型的实施例,而且并不是为了限制本发明的范围、适用性或结构。相反,典型的实施例的详细描述为本领域技术人员提供了实现本发明典型实施例的可行描述。需要意识到的是,在不违背权利要求书说明的本发明的精神和范围的前提下,可以对元素和步骤的功能和排列上进行多种修改。
权利要求
1.一种对条形码图像进行解码的方法,包括步骤在相机的图像传感器接收条形码的预览图像,预览图像包括表示编码数据的数据区域和表示文本字符的文本区域;在相机的预览窗口显示预览图像的画面,包括数据区域和文本区域的画面;拍摄包括至少一部分数据区域和文本区域的数据图像;和通过对数据图像的数据区域进行分析和对数据图像的文本区域进行光学字符识别来进行对条形码的解码。
2.如权利要求1所述的方法,其中,对数据图像的数据区域的分析包含对数据图像的数据区域估算噪声等级。
3.如权利要求2所述的方法,进一步包含步骤噪声等级估算值判定数据图像的数据区域是可以解码的,对数据图像的数据区域进行解码以确定解码字符;对比解码后的数据区域结果和数据图像文本区域的光学字符识别结果;和提供最终解码结果。
4.如权利要求1所述的方法,其中,显示预览图像画面的步骤包含在预览窗口的预览图像的画面上叠加数据拍摄指示器。
5.如权利要求1所述的方法,其中,相机集成在以下的一种设备中手持数码相机,个人数字助理,笔记本电脑或移动电话。
6.如权利要求3所述的方法,在对比解码后数据区域结果和光学字符识别结果后,进一步包括步骤对数据图像的文本区域的每个字符确定光学字符识别置信分数;和当文本区域的光学字符识别确定的字符的光学字符识别置信分数低于阈值时,用解码后的数据区域确定的解码字符替换文本区域的光学字符识别确定的字符。
7.一种用于对条形码图像解码的相机系统,该系统包括相机机架;连接到相机机架、适合接收条形码预览图像的图像传感器,该预览图像包括表示编码数据的数据区域和表示文本字符的文本区域;连接到相机机架的预览窗口,适合显示预览图像画面,并帮助拍摄包含至少一部分数据区域和文本区域的数据图像;和处理器,用于通过对数据图像的数据区域分析和对数据图像的文本区域进行光学字符识别来对条形码进行解码。
8.如权利要求7所述的系统,其中,处理器用于估算数据图像的数据区域的噪声等级。
9.如权利要求8所述的系统,其中,当噪声等级估计值确定数据图像的数据区域可以解码时,处理器进一步用于解码数据图像的数据区域,以确定解码字符,并将解码的数据区域结果与数据图像的文本区域的光学字符识别结果对比,从而提供最终解码结果。
10.如权利要求7所述的系统,其中,预览窗口包含叠加在至少一部分数据区域画面上的数据拍摄指示器,该数据拍摄指示器用于帮助拍摄包含至少一部分数据区域和文本区域的数据图像。
11.如权利要求7所述的系统,其中,系统集成在以下的一种设备中手持数码相机、个人数字助理,笔记本电脑或移动电话。
12.如权利要求9所述的系统,其中,处理器进一步用于确定数据图像的文本区域中每个字符的光学识别置信分数,并在文本区域的光学字符识别确定的字符的光学识别置信分数低于阈值时,用解码数据区域确定的解码字符替换文本区域的光学字符识别确定的字符。
全文摘要
一种对条形码图像解码的方法和系统,采用涉及条形码的数据区域(305)和文本区域(310)冗余解码过程。该方法包括在相机(100)的图像传感器(115)接收条形码的预览图像,其中预览图像包括表示编码数据的数据区域(305)和表示文本字符的文本区域(310)。在相机(100)的预览窗(125)显示预览图像的画面,其中画面包括数据区域(305)和文本区域(310)的画面。随后拍摄包含至少一部分数据区域(305)和文本区域(310)的数据图像。通过对数据图像的数据区域(305)进行分析和对数据图像的文本区域(310)进行光学字符识别,对条形码进行解码。
文档编号G06K7/00GK1848136SQ20051006499
公开日2006年10月18日 申请日期2005年4月13日 优先权日2005年4月13日
发明者罗希平, 黄建成, 肖柏华, 镇立新 申请人:摩托罗拉公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1