著录项信息
专利名称 | 二维代码区域提取方法及其提取装置和电子装置 |
申请号 | CN200580013542.1 | 申请日期 | 2005-02-24 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2007-04-18 | 公开/公告号 | CN1950828 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06K7/10 | IPC分类号 | G;0;6;K;7;/;1;0查看分类表>
|
申请人 | 夏普株式会社 | 申请人地址 | 日本大阪府
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 夏普株式会社 | 当前权利人 | 夏普株式会社 |
发明人 | 田崎大 |
代理机构 | 中国专利代理(香港)有限公司 | 代理人 | 王庆海;陈景峻 |
摘要
一种二维代码区域提取装置(1)包括:垂直和水平扫描包含二维代码的图像数据的扫描装置(11);检测由被扫描像素的白色/黑色等级并确定空白部分的空白部分检测装置(12);计算存在于被检测的空白部分之间的非空白部分的长度和中心坐标的非空白部分计算装置(13);分别将存在于垂直方向和水平方向的非空白部分的长度和其中心坐标进行比较从而确定二维代码的存在的比较单元(14);以及比较被检测的多个二维代码候选区域并对其排序的排序确定单元(15)。
1、一种用于提取存在二维代码的区域的二维代码区域提取方法,包 括以下步骤:
垂直和水平扫描包含二维代码的图像数据;
确定被扫描像素的白色和黑色等级,并且检测至少两个空白部分, 其中每一个空白部分都由超过像素的预定数目的白色像素序列组成;
计算存在于被检测的空白部分之间的非空白部分的长度和中心坐 标;以及
分别将存在于垂直方向和水平方向的非空白部分的长度和其中心坐 标进行比较从而确定二维代码的存在,并且检测二维代码候选区域。
2、根据权利要求1所述的二维代码区域提取方法,其中检测二维代 码候选区域的步骤包括检测多个二维代码候选区域、对其进行比较、然 后对其排序的步骤。
3、根据权利要求1所述的二维代码区域提取方法,其中空白部分检 测步骤包括检测存在于二维代码周围的空白部分的步骤。
4、根据权利要求1所述的二维代码区域提取方法,其中扫描步骤包 括以规则间隔扫描图像数据的步骤。
5、根据权利要求4所述的二维代码区域提取方法,其中规则间隔是 不大于由图像数据上的最小尺寸的二维代码组成的一边长度的一半。
6、一种二维代码区域提取装置,其包括:
垂直和水平扫描包含二维代码的图像数据的扫描装置;
确定被扫描像素的白色和黑色等级并且检测至少两个空白部分的空 白部分检测装置,其中每一个空白部分都由超过像素的预定数目的白色 像素序列组成;
计算存在于被检测的空白部分之间的非空白部分的长度和中心坐标 的非空白部分计算装置;以及
二维代码候选区域提取装置,其分别将存在于垂直方向和水平方向 的非空白部分的长度和其中心坐标进行比较从而确定二维代码的存在, 并且检测二维代码候选区域。
7、根据权利要求6所述的二维代码区域提取装置,还包括排序确定 装置,其比较由所述二维代码候选区域提取装置检测的多个二维代码候 选区域,然后对其排序。
8、一种读出二维代码的电子装置,其包括根据权利要求6或7的二 维代码区域提取装置。
技术领域\n本发明涉及一种提取存在有二维代码的区域的二维代码区域提取方 法,一种二维代码区域提取装置,一种电子装置,一种二维代码区域提 取程序,以及一种记录上述程序的记录媒介。\n背景技术\n近年来尺寸小并且低能耗的图像传感器的发展已经使在便携装置如 移动电话内部构建照相机成为了可能。结果是,存储在内置照相机内的 图像能立即通过电子邮件传送。在这种内置照相机中,然而,优先必须 是尺寸小,并且与传统数码相机相比分辨率低。\n当今手机也配置了上网功能。为了连接到互联网,必须利用密钥使 URL(统一资源定位器)进入。把长的URL装入手机是需要时间的。现在 已经试图省略装进URL的麻烦,并且因而通过管理唯一号的URL以及利 用条码阅读器读出与上述数字相关的印刷条码符号(下文中随时都称之 为“条码”),以便提供更容易的使用。在上述装置中,然而,必须单独 将条码阅读器连接到手机。\n如果条码可以被装有照相机的手机内的内置照相机捕获的条码图像 识别出来,而不使用单独的条码阅读器,则可以使用上述服务。\n当前有一种技术可以利用二维图像检测装置检测作为二维图像数据 的条码或二维代码,其中将图像数据暂时存储在图像数据存储器内,其 被扫描以读出代码。然而,上述技术不能示出二维代码设置在图像内的 什么地方。结果是,必须以预定间隔扫描全部图像数据或所有图像区域, 这样导致时间增加。\n为了解决上述问题,已经提出一种方法,即在图像内提取二维代码 区域。\n例如,专利文献1公开了不但在一个方向内扫描图像而且在相反方 向内交替扫描图像,其中消除了扫描图像的全部宽度的需要并且可以减 少所需的时间。此外,根据扫描期间像素值内检测到变化点,具有一宽 度的行被检测,并且然后是L形被检测,其是二维代码的特征。以上述 方式,二维代码存在的区域被缩小。\n专利文献2公开了将图像数据分为均匀的小块,并且简短地扫描每 一块从而计算块的复杂等级。此处复杂等级表示超过被检测的阈值的等 级差的倍数。通常,二维代码存在概率较高的块具有较高的复杂等级。 从上述观点看,按照复杂等级的降序扫描各个块就可以读出二维代码。\n发明内容\n上述传统的检测二维代码存在的区域的方法存在以下问题。\n在专利文献1的方法中,因为L形的二维代码被检测,当它们包含 几何形状如字母时,图像容易错误地被检测。此外,由于缺少形成实线 的边,所以该方法不能与QR代码(二维条码)兼容。\n在专利文献2的方法中,当图像包含除二维代码之外的符号、图案、 纹理、或其他与数据单元相似的细微噪声时,复杂等级提高。因而,上 述方法自身不能确定二维代码的存在。因为按照复杂等级的降序提取数 据,噪声也可能按上述顺序被读出。结果是,没有获得时间的减少。\n针对上面的问题,本发明的一个目的是提供一种二维代码区域提取 方法,一种二维代码区域提取装置,一种电子装置,一种二维代码区域 提取程序,以及记录上述程序的记录媒介,其中可以精确并且高速地读 出图像数据内存在的二维代码,而不受噪声等的影响。\n本发明提供一种用于提取存在有二维代码的区域的二维代码提取方 法,该方法包括以下步骤:垂直和水平扫描包含二维代码的图像数据; 确定被扫描像素的白色/黑色等级,并且检测至少两个空白部分,其中每 一个空白部分都由超过像素的预定数目的白色像素序列组成;计算存在 于被检测的空白部分之间的非空白部分的长度和其中心坐标;以及分别 将存在于垂直方向和水平方向的非空白部分的长度和其中心坐标进行比 较从而确定二维代码的存在,并且检测二维代码候选区域。优选地,该 方法包括基于被引用为候选的区域的位置和尺寸计算相似区域数目的步 骤从而确定候选区域的排序。\n图像以规则的间隔(因为其是根据相机的性能,从包括二维代码的 像素的最小数目计算出来的)被扫描,并且宽度不小于存在二维代码的 预定宽度的空白部分(安静带)被检测。当越过存在二维代码的坐标扫 描图像时,将利用上述事实检测两个空白部分。因为二维代码的特征是 基本上为正方形,可以通过垂直和水平扫描图像并且考虑空白部分的位 置和距离之间的关系来提取存在二维代码的区域。通过缩小图像内存在 二维代码的区域,可以降低识别二维代码所需的时间。结果是,能精确 并高速地执行读取而不受噪声或相似物的影响。此外,如果图像内存在 多个二维代码,它们都可以有效地被读出。\n优选地,检测二维代码候选区域的步骤包括检测多个二维代码候选 区域、对其进行比较、并然后对其排序的步骤。\n优选地,空白部分检测步骤包括检测存在于二维代码周围的空白部 分的步骤。\n扫描步骤可以包括以规则的间隔扫描图像数据的步骤。\n在更优选的实施例中,规则的间隔是不大于由图像数据上的最小可 能尺寸的二维代码组成的一边长度的一半。\n本发明还提供了一种二维代码区域提取装置,其包括:垂直和水平 扫描包含二维代码的图像数据的扫描装置;确定被扫描像素的白色/黑色 等级,并且检测至少两个空白部分的空白部分检测装置,其中每一个空 白部分都由超过像素的预定数目的白色像素序列组成;计算存在于被检 测的空白部分之间的非空白部分的长度和中心坐标的非空白部分计算装 置;以及分别将存在于垂直方向和水平方向的非空白部分的长度和其中 心坐标进行比较从而确定二维代码的存在,并且检测二维代码候选区域 的二维代码候选区域提取装置。\n优选地,该装置还包括比较由所述二维代码提取装置检测的多个二 维代码候选区域、并然后对其排序的排序确定装置。\n本发明还提供了一种能读出二维条码符号的电子装置,其包括前面 所述的二维代码区域提取装置。\n另一方面,本发明提供一种计算机程序,该程序执行以下步骤:\n垂直和水平扫描包含二维代码的图像数据;\n确定被扫描像素的白色/黑色等级,并且检测至少两个空白部分,其 中每一个空白部分都由超过像素的预定数目的白色像素序列组成;\n计算存在于被检测的空白部分之间的非空白部分的长度和中心坐 标;以及\n分别将存在于垂直方向和水平方向的非空白部分的长度和其中心坐 标进行比较从而确定二维代码的存在,并且检测二维代码候选区域。\n本发明还提供一种记录程序的计算机可读记录媒介,该程序导致计 算机执行以下步骤:垂直和水平扫描包含二维代码的图像数据;确定被 扫描像素的白色/黑色等级,并且检测至少两个空白部分,其中每一个空 白部分都由超过像素的预定数目的白色像素序列组成;计算存在于被检 测的空白部分之间的非空白部分的长度和中心坐标;以及分别将存在于 垂直方向和水平方向的非空白部分的长度和其中心坐标进行比较从而确 定二维代码的存在,并且检测二维代码候选区域。\n因而,根据本发明,当从暂时存储二维图像数据的图像数据存储器 内提取存在有二维代码的区域时,可以有效并且精确地读出二维代码。\n附图说明\n图1示出了根据本发明实施例的二维代码区域提取装置和方法中的 图像数据和扫描线之间的关系,\n(1)到(3):步骤(S1)内的扫描线;(4):步骤(S3)内的扫 描线;(5):步骤(S30)内的扫描线;Rx:在(1)内检测的空白部分 计算出来的非空白部分(水平)的长度;Ry:在(4)内检测的空白部分 计算出来的非空白部分(垂直)的长度;Rx′:在(5)内检测的空白部 分计算出来的非空白部分(水平)的长度;Px:Rx的中心坐标;Py:Ry 的中心坐标;以及Px′:Rx′的中心坐标;\n图2示出了根据本发明实施例的二维代码区域提取装置的结构的方 块图;\n图3示出了根据本发明实施例的二维代码提取装置和方法的主程序 过程的流程图;\n图4示出了通过根据本发明实施例的二维代码区域提取装置和方法 扫描的QR代码的例子;\n图5示出了根据本发明实施例的二维代码区域提取装置和方法在水 平方法内检测空白的程序过程的流程图;\n图6示出了根据本发明实施例利用二维代码区域提取装置和方法检 测二维代码候选区域的程序过程的流程图;\n图7示出了通过根据本发明实施例通过二维代码区域提取装置和方 法再比较二维代码候选区域的程序过程的流程图;\n图8示出了根据本发明实施例的二维代码区域提取装置和方法二维 代码候选区域的比较。\n附图标记解释:\n1二维代码区域提取装置(电子装置)\n10控制单元\n11扫描单元(扫描装置)\n12空白检测单元(空白部分检测装置)\n13非空白信息计算单元(非空白部分计算装置)\n14比较单元(二维代码候选区域提取装置)\n15排序确定单元(排序确定装置)\n16存储单元\nH 输入图像数据的高度\nW 输入图像数据的宽度\n包括二维代码候选区域1的1A、1B、1C、1D边\n包括二维代码候选区域2的2A、2B、2C、2D边\n具体实施方式\n在下文中,将参考附图详细描述根据本发明的二维代码区域提取方 法、二维代码区域提取装置、以及电子装置的实施例。\n图1示出了根据本发明实施例的二维代码区域提取装置和方法中的 图像数据和扫描线之间的关系。\n尤其是,图1示出了通过用于提取图像数据上的二维代码区域的二 维代码区域提取装置或方法执行的步骤和图像数据之间的位置关系。下 面将参考图1描述本发明的实施例,其中图1示出了包括垂直H像素× 水平W像素的图像数据。存在于图像数据上的二维代码是QR代码。\n图2示出了一种二维代码区域提取装置的结构的方块图。可以将根 据本实施例的二维代码区域提取装置和方法用于便携式通信终端如装有 照相机的手机或PHS(个人手持电话系统)。\n参考图2,一种二维代码区域提取装置1包括:用于整体控制装置的 控制单元10;用于在垂直和水平方向内扫描包含2维代码的图像数据的 扫描单元11(扫描装置);用于确定被扫描像素的白/黑等级从而检测至 少两个空白部分的空白检测单元12(空白部分检测装置),其中空白部 分中的每一个都由超过像素的预定数目的白色像素序列组成;用于计算 非空白部分的长度和中心坐标的非空白信息计算单元13(非空白部分计 算装置),其中非空白部分存在于两个被检测的空白部分之间;分别用 于比较存在于垂直和水平方向内的非空白部分的长度和中心坐标的比较 单元14(二维代码候选区域提取装置),从而确定二维代码的存在并检 测二维代码候选区域;用于比较多个被检测的二维代码候选区域并对其 进行排序的排序确定单元15(排序确定装置);以及包括图像数据存储 器的存储单元16,在图像数据存储器内暂时存储二维图像数据以及被计 算的数据。\n扫描单元11垂直和水平扫描图像数据,如图1所示,从而基于等级 值实现白色/黑色确定。扫描的范围和方向由随时控制扫描的控制单元确 定。\n空白检测单元12通过控制单元10确定扫描单元11扫描的像素是否 构成空白部分,该空白部分的长度不小于预定长度。如果空白部分被检 测,则相关的信息被记录在存储单元16内。\n非空白信息计算单元13基于空白检测单元12检测的空白信息计算 非空白部分的长度和其中心坐标。\n比较单元14分别比较非空白部分的长度和位置并确定二维条码的存 在,从而检测二维代码候选区域,其中上述非空白部分是通过控制单元 10基于垂直和水平扫描检测到的空白信息计算出来的。\n排序确定单元15比较多个由比较单元14检测的二维代码候选区 域,并选择出最有可能存在二维代码的区域。\n下文中,将描述执行二维代码区域提取方法的步骤。\n图3示出了根据本发明实施例的二维代码提取装置和方法的主程序 过程的流程图,其中“S”表示流程中的各个步骤。\n在步骤S1内,在水平方向内以预定间隔D扫描图1中由图像捕获装 置如照相机捕获的图像数据,从而检测其宽度不小于预定值的空白部 分。二维代码总是包含宽度不小于预定宽度的空白部分,其也被称之为 位于二维代码附近的安静带或边缘。在QR代码的情况下,空白部分必须 包含四个或更多的单元。当越过QR代码扫描图像数据时,空白部分将在 两端被检测,如图1(1)所示。因而,可以基于前面的条件粗略地将图 像中什么也没写或被涂有单一颜色的部分与存在有二维代码的部分区别 开来。\n此处提到的间隔D被确定为是“不大于其中由图像数据上的最小可 能尺寸的二维代码组成的一边长度的一半”,从而可以快速并可靠地确 定存在有QR代码的区域。即使当被检测目标的二维代码都相同时,可以 接受图像数据的二维代码的图像尺寸或位置可以根据二维图像捕获装置 的位置关系而变化。通常,当采用缩小光学系统时,被检测的二维代码 的图像尺寸因为它与光学元件如聚焦透镜的距离增加而变得较小。然 而,因为如果与焦距长度的偏移太大则将不能读出代码,可以接受图像 数据的二维代码的最小可能尺寸由将要被合适测量的代码的条件确定。 “不大于一半”是确保不管其尺寸如何二维代码能被经过至少两次,从 而可以可靠地提取二维代码区域。当将间隔D设置为等于“其中由图像 数据上的最小可能尺寸的二维代码组成的一个边的长度”时,如果图像 包含一个小尺寸的二维代码以及多个更小尺寸的噪声区域,则在一行上 检测的空白部分的数目将增加。结果是,很多噪声区域可能与二维代码 混淆,除了将要被检测的二维代码区域以外,上述噪声区域也将作为候 选者被指定。如果扫描位置通过图4所示的箭头表示(其中白色像素在 被扫描的QR代码内连续),则垂直空白部分将不能被检测,上述垂直空 白部分将在后面描述,从而将扫描形状确定为不是QR代码的形状并且作 为候选被消除。\n为了避免上述现象,根据本发明,将间隔D设置为“不大于其中由 图像数据上的最小可能尺寸的二维代码组成的一边长度的一半”,并且 至少两个位置在二维代码存在的范围内被扫描。以上述方式,不管二维 代码的尺寸大小如何都可以可靠并快速地检测出二维代码。在本例子 中,每个单元包括两个像素,从而可以接收图像数据的QR代码的最小图 像尺寸是40个像素。因为空白部分由四个或更多的单元组成,当12或 更多个白色像素连续时可以利用由20个像素构成的间隔D检测空白部 分。\n下面将参考图5中的子程序描述在上述步骤S1内在水平方向检测空 白部分的步骤。\n重新回到图3的主程序,在步骤S1内完成了水平空白部分检测步骤 后,执行步骤S2的过程以计算与来自于两个空白部分的非空白部分相关 的信息,在上述两个空白部分之间被非空白部分占据。在该步骤中,基 于所记录的与空白部分相关的信息(坐标位置、长度),如图1所示计 算并记录非空白部分的长度Rx以及其中心坐标Px。该步骤也被用于在通 过前面所述的步骤S1扫描的各个线上被检测的所有空白部分。并且在下 面的步骤中也执行上述计算步骤,因为其在整个方法步骤中都不包括任 何复杂的计算步骤,所以可以提高本发明的二维代码区域提取方法的速 度。\n接下来,在步骤S3内,利用与在步骤S2内计算的水平非空白部分 相关的信息执行垂直扫描。如图1(4)所示垂直扫描由水平非空白部分 中心的中心坐标Px,及长度Rx确定的某个区域,从而检测具有宽度不小 于预定宽度的空白部分。垂直扫描的范围必须不小于水平空白部分的长 度Rx以及作为其中心的中心坐标Px确定的范围,从检测在二维代码的 两端都存在的两个空白部分的观察点对其增加D×2。然而,如上所述, 如果扫描图4的箭头表示的位置,Rx将急剧减小,可能会使检测垂直空 白部分成为不可能。因此,作为对策,将上述步骤S1内的过程中的间隔 D设置为是“不大于由图像数据上的最小可能尺寸的二维代码组成的一边 长度的一半”,从而可以提取二维代码区域。此外,为了消除不能检测 垂直空白部分的现象,稍微延伸垂直扫描的范围从而使检测垂直空白部 分成为可能。\n在执行完步骤S3的过程后,在步骤S4内确定空白部分是否已经被 检测。如果具有某种宽度的两个或多个空白部分还没有被检测,则控制 进行到步骤S7。如果上述空白部分都已经被检测,则控制进行到步骤S5。 在步骤S5内,确定存在于两个空白部分之间的非空白部分的长度Ry和 其中心坐标Py。然后,在步骤S6中,比较与分别由步骤S2和步骤S5 计算出来的垂直和水平非空白部分相关的信息,从而检测二维代码候选 区域。\n将参考图6内所示的子程序描述在上述步骤S6中检测二维代码候选 区域的步骤。\n在步骤S7内,确定是否有其他的非空白部分(水平)。确切地讲, 在步骤S7内,确定在步骤S2内计算的水平非空白部分中是否有未经过 比较步骤的水平非空白部分。如果有非空白部分未经过比较步骤,则在 步骤S8内选择这样的非空白部分,并且然后控制返回到步骤S3,然后从 步骤S3重复上述步骤。如果没有空白部分未经过比较步骤,则在步骤S9 内将作为二维代码候选的区域进行彼此比较。然后,选择出三个,例如 最有可能存在二维代码的区域,并且本程序就结束了。\n图5示出了根据本发明实施例的二维代码区域提取装置和方法在水 平方向内检测空白的程序过程的流程图。本流程详细示出了图3的步骤 S1内检测水平空白部分的步骤。\n为了水平扫描输入图像数据并检测空白部分,在步骤S10使扫描位 置初始对准从输入图像的顶部垂直偏移间隔D的位置。接下来,在步骤 S11内水平扫描图像,并且逐个像素实现白色/黑色确定从而检测其宽度 不小于预定宽度的空白部分。扫描位置因而被偏移了间隔D从而使二维 代码可以至少越过两个点,即使该二维代码位于图像的边缘处,这是因 为设置了间隔D。\n此后,在步骤S12内确定两个或多个具有预定宽度的空白部分是否 已经被检测。如果两个或多个具有预定宽度的空白部分还未被检测,则 控制进行到步骤S14,其中使扫描位置沿垂直方向偏移间隔D(=20个 像素)。如果上述空白部分已经被检测,则在步骤S13内记录空白部分 的开始坐标值和其长度,并且然后执行步骤S14。\n在步骤15,比较扫描位置和图像数据的垂直长度H。如果扫描位置 超过了图像数据的垂直长度(扫描位置>垂直长度),则结束在水平方向 内对空白部分的检测步骤,并且控制返回到图3主程序的步骤S1。如果 扫描位置没有超过图像数据的垂直长度,则控制返回到步骤S11,并且重 复上述步骤直到扫描位置超过图像数据的垂直长度。\n图6示出了根据本发明实施例利用二维代码区域提取装置和方法检 测二维代码候选区域的程序过程的流程图。该流程图详细示出了图3的 步骤S6内的检测二维代码候选区域的步骤。\n首先,在步骤S20内,比较水平和垂直非空白部分。比较项目是被 选择的垂直和水平非空白部分的长度{Rx,Ry},以及中心坐标{Px,Py} 的坐标位移。基于上述两个条件,确定二维代码的存在。因为二维代码 基本上是正方形,当在二维代码的中心坐标处测量时,垂直和水平长度 基本上相等。通过利用上述几何特征,如果非空白部分的长度Rx和Ry 之间的差在特定范围内,并且如果两个中心坐标Px和Py之间的距离在 特定范围内,则将由垂直和水平非空白部分构成的区域引用为候选区域 (下文中称之为二维代码候选区域)。通过上述步骤,可以缩小二维代 码区域而没有受到除了正方形的噪声区域之外的其他噪声区域的影响。\n此处确定的上限范围是如下面描述的,即非空白部分的长度Rx和Ry 之间的差不超过20%,并且两个中心坐标Px和Py之间的距离的差不超 过间隔D的1/2(=10个像素)。非空白部分的长度差是基于利用图像 捕获器拍摄二维代码时的经验规则,图像通常正常是直接从上述二维代 码获得,从而使正方形二维代码的垂直长度与水平长度的比即使在图像 数据上也没有大变化。此外,非空白部分的中心坐标之间的差基于以下 事实,因为以间隔D执行扫描从而能检测空白部分,如果两个中心坐标 之间的距离不小于间隔D的1/2,则二维代码存在于其他非空白部分的概 率就高。\n接下来,在步骤S21内确定是否可能存在二维代码。如果确定可能 存在二维代码,则在步骤S22内记录该区域为二维代码候选区域,并且 控制进行到步骤S24的确定步骤。如果在步骤S21内确定区域内不包括 二维代码,则在步骤S23内执行再比较步骤,并且然后控制进行到步骤 S24的确定步骤。后面将参考图7详细描述步骤S23内的再比较步骤。\n在步骤S24内,确定在图3的步骤S5内计算的垂直非空白部分中是 否有未经过比较步骤的非空白部分。如果有未经过比较步骤的非空白部 分,则该非空白部分在步骤S25内被选择,并且控制返回到步骤S20, 再重复上述步骤。如果没有未经过比较步骤的非空白部分,则比较步骤 流程结束并且控制返回到图3主程序的步骤S6。\n图7示出了根据本发明实施例通过二维代码区域提取装置和方法再 比较二维代码候选区域的程序过程的流程图。该流程图详细示出了图6 的步骤S23的再检测步骤。\n如果在图6的步骤S21内确定候选区域不包含二维代码,则进入本 程序,并且在步骤S30内在水平方向内扫描某特定区域,该区域是从与 其比较的垂直非空白部分的Ry及中心坐标Py计算出来的。接下来,在 步骤S31内,执行白色/黑色确定以确定是否检测具有宽度不小于预定宽 度的非空白部分。在上述步骤S31内,确定具有宽度不小于预定宽度的 两个或多个空白部分是否已经被检测。如果两个或多个上述空白部分还 未被检测,判断在垂直非空白部分中是否有二维代码,并且当前的再比 较步骤结束并且控制返回到图6的程序。\n如果两个或多个空白部分已经被检测,在步骤S32内计算和记录非 空白部分的长度Rx′和其中心坐标Px′。因为在图6的程序中,在步骤 S33内分别将水平和垂直非空白部分的长度Ry和Rx′与其中心坐标Py和 Px′进行比较。\n在步骤S34内,确定上述区域是否是二维代码候选区域。如果确定 上述区域是二维代码候选区域,则在步骤S35将该区域引用为二维代码 候选区域,并且然后控制前进到步骤S36。另一方面,如果确定上述区域 不是二维代码区域,则控制直接进行到步骤S36。\n在步骤S36内,确定在计算的非空白部分中沿水平方向是否有未经 过比较步骤的非空白部分。如果有未经过比较步骤的非空白部分,则在 步骤S37内选择该非空白部分,并且控制返回到步骤S33再重复上述步 骤。如果在步骤36中没有未经过比较步骤的非空白部分,则结束该比较 步骤并且控制返回到图6的程序。\n因而,根据本发明的扫描方法,当在水平方向扫描时(图3的步骤 S1)图像内的二维代码至少被越过两次。在步骤(图3的S6)的步骤(图 6的S20)中,在垂直和水平非空白部分上执行比较步骤。如果不满足存 在二维代码的条件,则执行再比较步骤(图6的步骤S23和图7的程序), 从而确保可靠地检测二维代码。因而,通过图1所示的每个扫描(1)和 扫描(2)发现二维代码候选区域,从而得到如下结果,即检测出尺寸和 位置相似的多个二维代码候选区域。因此,在一个步骤(图3的步骤S9) 中,分别比较引用为二维代码候选区域的区域的尺寸和位置并且对被认 为是相同的二维代码候选区域的数目进行计数。\n图8示出了如何根据二维代码区域提取方法比较二维代码候选区 域。\n确切地讲,如图8所示,测量二维代码候选区域1的四边的坐标和 二维代码候选区域2的四边的坐标之间的偏移。如果偏移在特定范围内, 则该区域被认为是相同的,并且将相对于上述被比较区域的中间区域确 定为二维代码候选区域,从而把两个二维代码候选区域放在一起。参考 图8,在垂直位置比较1B和2B、及1D和2D,而比在水平位置较1A和 2A、及1C和2C。此处将允许的偏移设置为是间隔D的1/2(=10个像 素)内,原因与步骤(图6的S20)相同。以上述方式,具有最高计数数 字的顶部三个二维代码候选区域最终被选择为二维代码区域,并且接下 来完成图3的主程序。\n通过上述步骤,可以高速并可靠地在图像数据上提取二维代码区 域。如果在图像数据上包含噪声,该噪声可以通过下述步骤以混和的方 式从候选区域中消除,即检测空白部分的步骤(图3的步骤S1)、检测 二维代码候选区域的步骤(图3的步骤S6)、以及确定二维代码区域的 步骤(图3的步骤S9),从而可以唯一提取二维代码。此外,如果图像 中存在多个二维代码,都可以有效地读出它们。\n因而,本发明的二维代码区域提取装置包括:垂直和水平扫描图像 内包含的二维代码的扫描单元11;空白部分检测单元12,用于确定被扫 描像素的白色/黑色等级并检测至少两个空白部分,其中每一个空白部分 都由超过像素的预定数目的白色像素序列组成;非空白信息计算单元 13,用于计算被检测空白部分之间的非空白部分的长度和其中心坐标; 比较单元14,用于比较分别存在于垂直和水平方向的非空白部分的长度 和中心坐标,从而确定二维代码的存在并检测二维代码候选区域;以及 排序确定单元15,其对被检测的多个二维代码候选区域进行比较和排 序。根据二维代码区域提取方法,基于二维代码的几何特征垂直和水平 扫描包含二维代码的图像数据,并且然后确定被扫描像素的白色/黑色等 级,从而检测出空白部分。此后,计算存在于被检测空白部分之间的非 空白部分的长度和其中心坐标,并且分别比较存在于垂直和水平方向的 非空白部分的长度和中心坐标。通过上述比较装置基于被作为候选的区 域的位置和尺寸,计算相似区域的数目并对候选区域进行排序。以这种 方式,可以缩小图像内的二维代码区域,从而可以缩短确认所需的时间 并且,结果是,能精确并高速地执行读出而不受噪声和相似物的影响。 如果图像内存在多个二维代码,它们都可以有效地被读出。\n上面是本发明优选实施例的示范性描述。本发明的范围并不受上述 实施例的限制。\n本发明不限于上面的实施例并且其各种变化和修改仍属于本发明的 技术范围。这可以应用到各种应用。例如,虽然在前面的实施例中在步 骤(图3的步骤S1)中从水平方向开始扫描图像,但也可以从垂直方向 开始扫描从而使扫描方向反转。更通俗地说,只要两个非空白部分在比 较步骤中互相垂直扫描方向并不是问题。此外,间隔D只要是“不大于 由图像数据上的最小可能尺寸的二维代码组成的一边长度的一半”,其 可以更小。虽然这样可能导致处理速度的降低,但不影响处理二维代码 区域提取装置对二维代码区域提取方法的操作精确性的能力。\n本发明可以用于具有二维代码区域提取装置或方法的各种电子装 置,从而在图像数据存储器内暂时存储二维代码图像数据,提取二维代 码所存在的区域。例如,上述电子装置可以是装有照相机(内部或外部) 的装置,如数码相机;装有相机的手机;便携信息终端如PDA(个人数字 助理);或信息处理装置如个人计算机。作为目标读出的代码可以是任 何类型。\n在前面实施例的描述中,已经使用了术语“二维代码区域提取装置 和方法”。这仅仅是为了方便,其也可以是其他术语,如二维条码显示 装置和方法,信息读出设备、或二维代码提取方法。\n根据前面的实施例图1和8中示出的扫描线显示器是一种例子并且 也可以使用其他显示方法。\n虽然是在检测空白部分时确定像素的白色/黑色等级,只要其能检测 空白部分也可以使用其他任何方法。术语“白色/黑色”在此处只是为了 方便,它不仅指字面意义的白色和黑色而且还表示由特定颜色或其基色 是除了白色以外的任何颜色表示的符号。例如,在印刷品或液晶显示单 元中上述符号被印刷或显示为彩色,符号本身有时通过除了白色和黑色 之外的颜色表示。换句话说,虽然空白检测单元12确定被扫描像素的白 色/黑色等级并且检测其中作为空白部分超过预定数目像素的像素连续 存在的至少两部分,上述超过预定数目像素的像素连续存在的部分可以 是除了白色的任何颜色(如黑色,将白色符号印刷在黑色背景上)。\n二维代码区域提取装置的各个电路部分的类型和数目,如扫描单元 和存储单元,或它们如何连接,都不限于前面的实施例。\n上面描述的二维代码区域提取装置和方法可以通过操作或执行二维 代码区域提取装置和方法的程序实现。该程序被存储在计算机可读记录 媒介内。根据本发明,可以通过图2示出的控制单元10的主存储器来提 供记录媒介。也可以通过任何其他程序媒介,如CD-ROM来提供,其可以 在程序读出装置如CD-ROM驱动作为外部存储装置被插入或读出。在这种 情况下,可以通过控制单元31内的CPU访问和运行上述存储的程序,或 在运行的程序存储区域(未示出)内读出和下载。上述可下载的程序事 先确保被存储在每个装置内。\n前面描述的程序媒介可以是能从便携式终端装置或信息处理装置可 拆卸的记录媒介。上述例子包括磁带;盒式磁带或其他磁盘;光盘如 CD-ROM、CD-R/RW、MO、MD、DVD-ROM、DVD-RAM、以及DVD-RW;卡如PC 卡、压缩闪存卡(注册商标)、智能卡(注册商标)、IC卡、SD卡(注 册商标)、和存储棒(注册商标);以及半导体存储器如掩膜ROM、EPROM、 EEPROM、和闪存ROM,上述程序以固定形式装载。\n作为选择,媒介也可以以流动方式加载程序从而使该程序可以通过 通信连接装置,如因特网连接器或服务终端从外部网络下载。当通过通 信网络下载程序时,下载的程序可以被预先存储或可以从单独的记录媒 介装载。记录媒介的存储内容不限于程序也可以是数据。\n专利文献1:JP专利公开(特许)No.2000-293615A\n专利文献2:JP专利公开(特许)No.2001-22881A
法律信息
- 2015-04-08
未缴年费专利权终止
IPC(主分类): G06K 7/10
专利号: ZL 200580013542.1
申请日: 2005.02.24
授权公告日: 2009.01.14
- 2009-01-14
- 2007-06-13
- 2007-04-18
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2003-08-27
|
2003-03-25
| | |
2
| |
2001-08-08
|
2000-02-02
| | |
3
| | 暂无 |
1993-12-15
| | |
4
| | 暂无 |
1995-12-26
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |