二维条形码的读出方法技术

技术编号:2950332 阅读:203 留言:0更新日期:2012-04-11 18:40
一种二维条形码的读出方法,其特征在于: 包括以下步骤:针对用面传感器得到的二维条形码的图像,根据投影变换实施畸变校正的步骤;对所述图像出现的亮度斑驳实施校正的步骤;根据对通过所述两个步骤校正后的二维条形码的图像数据对该二维条形码进行解码的步骤。(*该技术在2022年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及一种,尤其涉及在读出装置小型化的同时提高读出速度的。例如,各种商品使用一维条形码,可以实现对商品的库存管理和销售管理。然而,因为记录的信息量少的缘故,例如只能记录商品的检索码。所以,只能基于这种检索码,再查询数据库,从数据中获取大量的商品信息。针对这种现状,在1平方厘米的INTACTA.CODE码中的信息量,例如400~500字节的情况下,一枚纸张可以记录大量的商品信息。同时也具有不必配置外部数据库的优点。以往使用扫描器等线传感器来读取在纸张上印刷的INTACTA.CODE码。这样,使用线传感器读取的INTACTA.CODE码在数字数据化后,例如,导入计算机通过复原程序可以将INTACTA.CODE码的记录信息复原出来。现在,INTACTA.CODE码的复原程序在现今互联网中有广泛的发布。
技术实现思路
然而,上述读取纸张上印刷的INTACTA.CODE码的方式使用扫描器等线传感器,必须有驱动线传感器的驱动电路等,读取装置复杂且规模大,同时因为对每一线条要单独读取的缘故,存在着读出速度非常慢的问题。鉴于上述情况,本专利技术者提出使用面传感器读取INTACTA.CODE码,在使读出装置小型化的同时,提高读出速度的想法。为了实现读出装置的小型化,要缩短面传感器上透镜的焦距,这样,获得的INTACTA.CODE码的图像就会发生畸变和亮度斑驳,就会出现不能正确复原记录信息的问题。要解决这个问题,要么增长透镜的焦距,要么减少INTACTA.CODE码的信息量。前者导致读出装置的大型化和成本提高,后者则不能发挥INTACTA.CODE码的特长。鉴于上述现有技术的问题,本专利技术的目的是使INTACTA.CODE码读出装置小型化的同时,提高读出速度。另外,本专利技术的其它目的包括,在使用装配短焦点透镜的面传感器读取INTACTA.CODE码时,通过对获取的INTACTA.CODE码图像的畸变和亮度斑驳实施校正,实现正确的记录信息的复原。本专利技术的特征包括使用面传感器对印刷在纸张等上的二维条形码摄像获取二维条形码的图像,针对该图像实施以下步骤(1)根据投影变换对畸变实施校正的步骤;(2)对上述图像中出现的亮度斑驳实施校正的步骤;(3)根据由上述2个校正步骤校正的二维条形码图像数据,对二维条形码实施解码的步骤。这样的结构因为使用了面传感器来读取二维条形码,和用线传感器的方式相比,读取速度有大幅度提高。另外,为了校正用面传感器摄像获取的二维条形码图像的畸变和亮度斑驳,需要设立上述软件处理的(1)、(2)步骤,这样就可以采用价格低廉的使用紧凑型短焦距镜头的面传感器,其结果,就可以实现读出装置的小型化。希望的实施方式如下所述。即,根据投影变换对畸变进行校正的步骤包括基于正方格子的4个顶点座标和使用面传感器获得的畸变图像的正方格子的4个顶点座标求解校正数据的步骤,基于该畸变校正数据对上述面传感器获得的二维条形码图像根据投影变换实施畸变校正的步骤。另外,对图像实施亮度斑驳校正的步骤包括对面传感器获得的二维条形码图像实施复数条块分割的步骤,对每一个条块实施亮度校正的步骤。对每一个条块实施亮度校正的步骤包括针对上述每一个条块,根据该条块的像素亮度分布求解条块基准值的步骤,根据图像整体的亮度分布求解整体基准值的步骤,根据条块基准值和整体基准值,对每一条块实施亮度校正的步骤。图2是说明和本专利技术实施方式相关的二维条形码读出方法的流程图。图3是根据投影变换校正图像畸变的示意图。图4是根据投影变换校正图像畸变的示意图。图5是说明校正图像亮度斑驳的图。图6是说明校正图像亮度斑驳的图。图7是说明校正图像亮度斑驳的图。符号说明1-LED/(发光二极管);2-透镜;3-CMOS/(图像传感器);4-图像处理电路;5-CPU(中央处理器);6-JPEG(格式处理器);7-图像内存;8-USB接口;9-USB电缆;10-个人电脑(微机);50-纸片;51-条形码区域。CMOS图像传感器3的输出信号经过图像处理电路4进行图像处理后转换成特定的数字数据。从图像处理电路4输出的图像数据,依从CPU5的指令,通过JPEG6、图像内存7被压缩。另外,压缩后的图像数据、通过USB接口8、USB电缆9,输入到个人电脑10中。还有,CPU5按照程序内存11(例如,闪存)中程序的指令,对JPEG6、图像内存、USB接口8等实施控制。个人电脑10对接收到的图像数据进行各种校正(见后述内容)。另外,在上述二维条形码读出系统中,除去个人电脑10的部分,构成了基于面传感器的读出装置。图2是说明二维条形码读出方法的流程图。在步骤101中,上述基于面传感器的读出装置读取二维条形码。另外,由个人电脑10实行软件处理。在步骤102中,针对个人电脑10获得的图像数据,根据投影变换对图像畸变实施校正。在透镜2为短焦距的情况和相对于透镜2倾斜的情况下,上述步骤是对拍摄的图像的畸变进行校正的步骤。另外,在步骤103中,对图像的亮度斑驳实施校正。发光二极管LED1在印刷有INTACTA.CODE码的区域51不可能亮度均匀的照明,图像上有亮度的斑驳。上述步骤就是针对这种情况的校正步骤。其特征是,将图像分割成复数条块,针对每一条块进行校正。另外,步骤102和步骤103的实行顺序可以调换。另外,在步骤104中,对校正后的图像数据进行解码。例如,通过执行INTACTA.CODE码的复原程序,将INTACTA.CODE码解码后,就可以得到文字或图像等的记录信息。下面,针对上述步骤102的“通过投影变换校正图像畸变”、步骤103的“通过条块分割校正亮度斑驳”,参照图面进行详细说明。图3、图4是通过投影变换校正图像畸变的说明图。所谓投影变换,就是对图像的某些部分进行缩小、而对某些部分进行放大的数据处理方法。投影变换首先将指定需变换的四边形的4个顶点座标,然后将每个顶点移动到变换后的座标,需要移动多少由投影变换决定。图3(A)是由读出装置拍摄的二维条形码的图像。为了使读出装置小型化,使用的是短焦距透镜2,摄像机和拍摄距离(透镜2和纸片50上印刷的二维条形码之间的距离)非常短。因而,拍摄的二维条形码的周围变圆,像在角上打了结一样。由于图像畸变,这样不可能对条形码进行解码。另外,摄像机的拍摄距离越短,这种畸变就越严重。为了校正畸变,在这里首先通过读出装置拍摄均匀地印刷在纸片50上的正方格子,得到图3(B)的图像。从图像中可以看出正方格子的畸变。求解出畸变正方格子的、畸变正方形的4个顶点座标O、P、Q、R(图4)。将以上求解得到的畸变正方形进行投影变换,相应地变换成正方形。例如,在图4中,投影变换前的顶点O、P、Q、R分别移动到O’、P’、Q、R,就得到了投影变换后的正方形。这样,如图3(C)所示,畸变的正方形就被校正过来了。通过上述操作,就知道了对于每个正方形其中的像素怎样移动是合适的。通过这些顶点就可以求出投影变换行列,作为校正数据保存下来。这样,使用校正数据对拍摄的二维条形码图像(图3(A))实施投影变换,就可以得到如图3(D)所示校正后的图像。从这个图像可以看出,图像周围的圆形畸变被校正过来了。这样,基于校正后的图像,就可能复原二维条形码。接下来,针对步骤103的“通过条块分割校正亮度斑驳”,参照图本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:中沢务浜川浩一竹井洋次木山真伸
申请(专利权)人:三洋电机株式会社
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利