2维码读取装置和读取方法、便携终端及数字照相机的制作方法

文档序号:6362428阅读:400来源:国知局
专利名称:2维码读取装置和读取方法、便携终端及数字照相机的制作方法
技术领域
本发明涉及2维码读取装置、2维码读取方法、2维码读取程序、该程序的记录媒体、便携终端及数字照相机,涉及比如在内置有照相机的便携终端等中,可容易地读取2维码的2维码读取装置、2维码读取方法、2维码读取程序及该程序的记录媒体。
背景技术
近年来,内置有照相机的便携电话机正在普及。在上述带有照相机的便携电话机等中,利用照相机对2维码摄影,读取记录于该2维码的信息的场合下,在处理能力低的普通便携电话机等中,从处理能力方面考虑,有必要使利用处理量较少的方法来读取2维码成为可能。
作为2维码示例,具有由JISX510(以及ISO/IEC18004)规定的2维码即QR码(Quick Response Code)。图1是表示QR码的构成例的模式图。如图1所示,作为由正方形状组成的2维的QR码的结构,按照可检测出该QR码的位置的原则,在2维码的3个角配有组合了特定尺寸比率的正方形的固有的第1图形(定位图形F),在这3个定位图形F之间,具有在横向与纵向上白色与黑交互组合,成为2维码的各数据像元的像元位置指标的基准图形(定时图形T),此外即使在比如从斜向歪斜的状态下摄影的场合下,也具有为了可使2维码的数据像元的位置对合而配置的固有的第2图形(排位图形P)。
此外在QR码的内部,按m×m的正方形规格(以下称像元)进行划分,在各像元内可记录明(白)、暗(黑)2进制数据。定位图形F是一种将1边长度相当于7个像元的黑色正方形与1边长度相当于5个像元的白色正方形及1边长度相当于3个像元的黑色正方形按同心圆依次重合而生成的图形。
由图像传感器读取由上述构成所组成的QR码图像,输入到2维码读取装置,输入到2维码读取装置的输入图像被转换为具有明(白)、暗(黑)2进制的任意一个值的2进制化图像。对该2进制化图像进行2维码的读取。
由上述尺寸构成的定位图形F的中心附近,在横向或纵向上对2进制图像进行了直线扫描的场合下,定位图形F中的黑∶白∶黑∶白∶黑图形的出现频度达到1∶1∶3∶1∶1的比率。利用上述比率的图形的出现频度,可从由图像传感器输入并被2进制化了的2进制图像中来检测定位图形F的位置。
此外在检测出位于定时图形T的两端的定位图形F的场合下,通过从定位图形F端检测出其黑白图形按1∶1比例交互出现的位置,可检测出定时图形T。
这里,在从斜向对QR码进行了摄影的场合下,与正向摄影场合下的原正方形状相比,产生与摄影角度对应的失真。对这种失真图像,按照可正确特定QR码的像元位置的原则,由固有的第2图形组成的排位图形P以定位图形F为基准,被配置到不同于定位图形F的2维码内的特定位置。
这里,从3个定位图形F的中心坐标,可计算出预想配置排位图形P的坐标。以上述计算结果为基准,对2进制图像进行逐次精查,抽出具备了与排位图形P固有的第2图形的特征一致的形状的部分图形,由此可检测出排位图形P的位置。
因而,根据检测出了定位图形F、定时图形T、排位图形P各自的位置的各坐标,可计算出记录有数据的各数据像元的中心位置坐标。参照表示传统的数据像元切出的状态的图2,对其一例作以说明。
这里,图2是用于说明计算QR码的数据像元中心坐标的现有技术的模式图。在图2中,将定位图形F的中心点设为Fa,Fb,Fc,将排位图形P的中心点设为Pd,首先,求出连接点Fa,Fb的直线S1及连接点Fa,Fc的直线S4。
求出在直线S1上,使点Fb在水平方向(横向)上向左向(即向点Fa的方向)移动了3个像元的点Fb′,求出在直线S4上,使点Fc在垂直方向(纵向)向上(即向点Fa的方向)移动了3个像元的点Fc′。
求出连接移动后的点Fb′与排位图形P的中心点Pd的直线S3及连接点Fc′与排位图形P的中心点Pd的直线S2。
根据配置于水平方向(横向)的定位图形F的中心点Fa、定位图形F的中心点Fb、位于其之间的定时图形T,来判明图2所示符号E位置上的各像元的中心坐标。
此外根据直线S4与直线S3的斜度,可计算出成为通过了由符号E表示的上述各像元的中心点的水平基准的直线(比如图2所示的虚线Hs)的斜度,可决定通过了由符号E表示的上述各像元的中心点的水平基准线Hs。
同样,也可决定垂直基准线Vs。可将上述决定的水平基准线Hs与垂直基准线Vs分别交叉的位置作为各数据像元的中心坐标计算出来。
在各数据像元的数据值中,根据上述计算出的数据像元的中心坐标位置,向该数据像元周边方向依次调查黑及白的出现频度,将表示像元大小的像元尺寸内的黑像素的数量与白像素的数量进行比较,将数量多的像素作为该数据像元的数据值来决定。
在特定作为2维码的QR码的位置时,为检测定位图形F,有必要判定黑∶白∶黑∶白∶黑图形的比率是否为1∶1∶3∶1∶1。然而在2维码(QR码)旋转的状态及作为倾斜状态的图像被摄影的场合下,即使只根据水平或垂直方向来判定出现频度,用于检测定位图形F的上述比率有时也不能与上述比率1∶1∶3∶1∶1正确地一致。此外有时在实际的定位图形F所在的位置之外的其它位置,却能与上述比率1∶1∶3∶1∶1相一致,因而存在着误检测定位图形F的位置的问题。
另外,在为决定数据像元的位置,检测定时图形T加以使用的场合下,存在着在位于2维码(QR码)的3个边角的定位图形F之间,在白与黑交互出现的定时图形T的检测中需要耗费较多时间的问题。越是其2维码(QR码)较大的版本(构成2维码的像元数较多),该问题便越深刻。
在检测排位图形P中,根据定位图形F的坐标来计算预想存在排位图形P的预想坐标,并精查其周边,由此进行检测,但由于摄影图像的失真,发生上述预想坐标相对实际排位图形P所在的坐标有较大偏差的场合,因而存在着在检测实际排位图形P所在的正确位置的精查中需要耗费较多时间的问题。
此外,虽然对实施了2进制处理后的2进制图像进行2维码(QR码)的排位图形P的精查,但由于2进制处理时的误差,存在着发生白像素破碎及黑像素碎裂,因上述的破碎及碎裂的影响而造成排位图形P的误检测的问题。
在构成2维码(QR码)的像元数高达某种程度的场合下,即使配置多个排位图形P,摄影图像发生某些失真,如果能检测出任意一个排位图形P,也可以按照能稳定地切出2维数据的数据像元(即,决定每个数据像元的数据值)的原则来构成2维码,但在该场合下,有必要跨越多个排位图形P位置来进行检测,存在着处理时间增大的问题。
在决定数据像元的数据值(即,切出数据像元)的场合下,由于通过调查基于像元的大小即像元尺寸的特定范围内的黑像素及白像素的数量来决定该数据像元的值,因而不仅增大了决定之前的处理时间,而且由于2进制处理时的误差,伴随着发生白像素破碎及黑像素碎裂,还易使数据像元的数据值产生错误,这也是一个问题。
此外,在根据定位图形F之间的距离来计算像元数,决定该2维码(QR码)的版本时,存在着由于输入图像的失真而发生误差,不能判定正确的版本,造成2维码的读取失败的问题。

发明内容
本发明的目的在于,基于对记录有2维码的输入图像从多个方向(比如水平方向、垂直方向、斜向这3个方向)进行了扫描的结果,进行检测配置于规定的多个位置的各定位图形的位置的处理,而且利用表示与定位图形中固有的第1图形的近似度的评估值及与作为定位图形预定的幅度之差的容许值,进行基于定位图形的特征的检测,由此可靠地检测出定位图形的位置。
此外,在检测定位图形时,对定位图形中固有的第1图形的比率比如黑∶白∶黑∶白∶黑与1∶1∶3∶1∶1比率的接近程度的评估值进行定义,通过对有关输入图像全体比较该评估值,可提高定位图形的检测精度,而且从解像度较低、有噪声的低图像质量的输入图像中也可精度良好地检测出定位图形。
此外比如从水平方向、垂直方向、斜向实施3次用于判定是否接近定位图形中固有的第1图形的扫描,利用有关各方向图形比率的评估值,由此即使在比如2维码发生旋转,存在于图像中的场合下,也可提高定位图形的检测精度。
此外本发明的目的在于,对定位图形的外轮廓进行扫描,根据由输入图像中的定位图形的外轮廓的斜度检测出的2维码的各边的斜度与定位图形的中心点的坐标,来决定成为指定探索排位图形的探索范围的基准位置的探索基准点,将根据所决定的该探索基准点预定的位置上的探索范围的部分图像从2进制处理前的输入图像切出,进行所切出的上述部分图像与同排位图形中固有的第2图形所具有的特征相一致的模板的模板匹配,由此从上述部分图像内抽出上述排位图形,可靠地检测出排位图形的位置,此外,在2维码数据处于旋转状态的场合下,通过实施与旋转角度对应的旋转修正,来可靠地检测排位图形的位置。
通过对定位图形的外轮廓进行扫描,检测该外轮廓的斜度,来求出该外轮廓形成边的一部分的2维码的该边的斜度,通过求出与2维码的该边平行,并通过了上述定位图形的中心的直线的交点,来求出排位图形的预想坐标,而且通过利用2进制处理前的输入图像,进行与同排位图形的特征相一致的模板的模板匹配,可精度良好地检测排位图形,这样,即使在2维码处于失真状态的场合下,也可正确求出排位图形所在的探索范围,其结果是可减少现有技术中为探索排位图形而精查输入图像所需的处理,可节约用于检测排位图形的位置的总体处理量。
此外本发明的目的在于,基于检测出的定位图形的位置、排位图形的位置、由判定出的版本决定的该2维码的像元数,利用采用了所计算出的转换系数的坐标转换式,将各数据像元的像元中心位置转换为输入图像中的坐标位置,将从与各数据像元对应的上述输入图像中的坐标位置上的像素的像素值获得的浓度或从与该坐标位置邻接的周边各像素的像素值进行线性内插而获得的浓度与用于识别各数据像元的数据值而设定的明暗阈值进行比较,由此来决定各数据像元的数据值,进行各数据像元的切出,在不能正确进行数据像元切出处理,该2维码读取失败的场合下,使在版本的判定处理中被判定的版本偏移1个等级,再次重复进行数据像元切出处理,由此防止基于版本的误判定的2维码读取失败。
在上述本发明中,无需像现有技术那样,在2维码中配备定时图形,也不进行该定时图形的检测,根据3个定位图形的坐标及1个排位图形坐标这4点坐标,通过坐标转换式,来决定数据像元的像元中心位置,此外,可根据所决定的像元位置中的输入图像的浓度,来决定该数据像元的数据值,这样,在减少定时图形的检测处理所需的处理时间的同时,可缩减决定数据像元的数据值的处理时间,大幅节约数据像元的切出处理总体的处理量。
在上述本发明中,即使在与数据像元的像元中心位置对应的位置不存在输入图像中的像素的场合下,通过对邻接位置上各像素的像素值进行线性内插来推测像元中心位置上的像素值,将上述像素值与基于配置有数据像元的2维码内的特定位置上存在的多个像素的像素值预算出的明暗阈值进行比较,由此来决定数据像元的值,同时即使在不能进行数据像元切出,2维码读取失败的场合下,通过使基于定位图形的幅度与定位图形之间的间隔来判定的版本偏移1个等级(比如增至大1个等级的版本),再次重复2维码的读取及数据像元切出的处理,来减少版本判定错误的影响。
本发明的目的在于提供一种2维码读取装置,其从输入图像中读取通过将记录有2进制数据的数据像元配置成纵向及横向2维状来表示各种信息的2维码,其中上述2维码具备定位图形,其为特定上述输入图像中的该2维码的位置,被配置到该2维码内规定的多个位置,并由固有的第1图形组成;排位图形,其被配置到上述2维码内与该定位图形不同的规定位置,并由不同于上述定位图形固有的上述第1图形的第2图形组成,基于来自针对上述输入图像的多个方向的扫描结果,进行从上述输入图像中检测分别被配置到规定的多个位置的多个上述定位图形的位置的处理,此外基于所检测出的上述定位图形,进行检测上述排位图形的位置的处理,此外,基于所检测出的上述定位图形,进行决定构成该2维码的像元数的版本的判定处理,基于所检测出的上述定位图形的位置、上述排位图形的位置、由上述版本的判定处理所判定出的上述版本,来进行决定构成该2维码的各数据像元的数据值的数据像元切出处理,对由该数据像元切出处理决定的数据像元的数据值,根据预定的规则,进行特定该2维码的信息的解码处理。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在检测上述定位图形的位置时,将具有与由白与黑的固有的上述第1图形组成的上述定位图形近似的图形的定位图形的候选作为候选定位图形从上述输入图像中抽出多个,并分别对所抽出的多个上述候选定位图形从水平方向、垂直方向及斜向这3个方向分别检测出横切各候选定位图形的扫描线上的白与黑所组成的图形的构成比,将在各方向检测出的白与黑所组成的各图形的构成比与作为上述定位图形预定的白与黑所组成的固有的上述第1图形的构成比进行比较,由此计算出表示与上述第1图形的近似度的评估值,从所抽出的多个上述候选定位图形中,按照由上述评估值表示的近似度从大到小的候选定位图形顺序,作为上述定位图形来选择规定的个数,检测出所选择的规定个数的上述定位图形各自的位置。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在所抽出的多个上述候选定位图形各自的水平方向、垂直方向及斜向的任意一个方向中,表示与上述定位图形中固有的上述第1图形的近似度的上述评估值超出预先设定的阈值,被作为表示不近似的值计算出的场合下,将该候选定位图形从上述定位图形(F)的候选之列剔除。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,上述阈值可根据2维码的种类及用途以及输入图像的图像质量,预先设定到使用者所希望的任意值。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在被多个抽出的上述候选定位图形中,其图形互相接近重合的位置上的上述候选定位图形被抽出的场合下,将互相重合位置上的上述候选定位图形作为一个候选定位图形予以统一,对统一前的各上述候选定位图形的上述评估值进行合计,作为被统一了的候选定位图形的评估值重新设定。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在被多个抽出的上述候选定位图形各自的水平方向、垂直方向及斜向的任意一个方向中,表示上述候选定位图形的大小的幅度与被作为表示上述定位图形的大小的值预定的固有幅度之差超出预定的容许值的场合下,将该候选定位图形从上述定位图形的候选之列剔除。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,上述容许值可根据2维码的种类及用途以及输入图像的图像质量,预先设定到使用者所希望的任意值。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,作为表示被检测的上述定位图形的大小的幅度,采用水平方向幅度与垂直方向幅度及斜向幅度这3个方向的幅度平均值。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,基于表示被检测的上述定位图形的大小的幅度,来决定表示构成该2维码的像元的大小的像元尺寸。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在判定上述版本时,基于被检测的多个上述定位图形之间的间隔及表示基于表示上述定位图形的大小的幅度导出的像元大小的像元尺寸,来计算构成该2维码的像元数,由此判定该2维码的版本。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,具备版本登录表,其表示2维码的版本与构成由该版本决定的2维码的登录像元数的对应,基于所计算出的上述像元数,对上述版本登录表进行索引,将具有一致或最接近的值的上述登录像元数及与该登录像元数对应的版本作为构成该2维码的像元数及版本来判定。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在基于被检测的多个上述定位图形各自的坐标位置,判定输入图像中该2维码的方向是否处于旋转状态的同时,在判定出正在旋转的场合下,计算该2维码的旋转角度。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在检测上述排位图形的位置时,通过检测上述输入图像中的上述定位图形有无倾斜,来检测上述输入图像中的该2维码各边有无倾斜,根据各边的斜度及上述定位图形的中心点坐标位置,来决定成为探索上述输入图像中的上述排位图形的探索范围被指定的基准位置的探索基准点,将根据所决定的该探索基准点预定的位置上的探索范围的部分图像从上述输入图像切出,从该部分图像内抽出由上述第2图形组成的上述排位图形,由此来检测上述排位图形的位置。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在检测上述输入图像中的上述定位图形有无倾斜时,对该定位图形的像素进行扫描,来检测形成上述定位图形所在的该2维码的边的一部分,而且构成该定位图形的外轮廓的各像素的坐标位置中,至少2个像素的坐标位置,由此检测该定位图形有无倾斜。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在决定上述探索基准点时,将通过形成该2维码的边的一部分的上述定位图形的中心点的坐标位置,与该2维码的上述边平行的直线与相对该定位图形位于该2维码内的对角,通过形成该2维码的其它边的一部分的其它上述定位图形的中心点的坐标位置,与上述其它边平行的直线的交点作为成为探索上述排位图形的上述探索范围被指定的基准位置的上述探索基准点来决定。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,上述探索范围以从上述探索基准点只离开预测配置上述排位图形的中心点的预定距离的位置作为预测中心坐标,从该预测中心坐标至少保持2个像元尺寸的余量,形成包含上述排位图形中固有的上述第2图形的充足的区域。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,具备在从上述部分图像内抽出上述排位图形时,与上述排位图形中固有的上述第2图形所具有的各像素的特征一致的模板,通过边使该模板与上述部分图像偏移1个像素单位边进行模板匹配,从上述部分图像内抽出由上述第2图形组成的上述排位图形。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在上述输入图像中该2维码的方向处于旋转状态的场合下,基于所旋转的旋转角度,对上述探索基准点的坐标位置实施旋转修正,由此将被指定的上述探索范围的部分图像从上述输入图像切出,对所切出的该部分图像基于上述旋转角度来进行旋转修正,然后边使旋转修正了的上述部分图像偏移1个像素单位,边进行上述模板匹配,抽出上述排位图形,由此来检测上述排位图形的位置。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,作为进行上述模板匹配处理的对象的上述部分图像是从进行2进制处理之前的状态下的上述输入图像切出的部分图像。
此外本发明的目的于提供一种2维码读取装置,在上述2维码读取装置中,在进行上述模板匹配处理时,边在上述部分图像内按1个像素单位依次偏移,边计算出上述模板与上述部分图像分别对应的各像素的像素值的差分绝对值总和,将该绝对值总和成为最小的上述部分图像内的位置作为上述排位图形的坐标位置来决定。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在进行决定构成该2维码的各数据像元的数据值的上述数据像元切出处理时,作为特定上述数据像元位置的位置特定处理,基于检测出的上述定位图形的中心点的像元位置、上述排位图形的中心点的像元位置、由所判定出的上述版本决定的该2维码的像元数,来计算将该2维码的各数据像元的像元中心位置转换为上述输入图像中的坐标位置的坐标转换式的转换系数,利用采用了所计算出的该转换系数的上述坐标转换式,将各数据像元的像元中心位置转换为上述输入图像中的坐标位置,对与各数据像元的像元中心位置对应的坐标位置进行特定,基于由上述位置特定处理所特定的坐标位置的浓度,来决定各数据像元的数据值,进行各数据像元的切出。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在进行决定构成该2维码的各数据像元的数据值的上述数据像元切出处理时,与由上述位置特定处理所特定的数据像元的像元中心位置对应的上述输入图像中的坐标位置的浓度在与所特定的数据像元的像元中心位置对应的上述输入图像中的坐标位置上存在像素的场合下,是从存在于该坐标位置的该像素的像素值获得的浓度,另一方面,在与所特定的数据像元的像元中心位置对应的上述输入图像中的坐标位置上不存在像素的场合下,是从与该坐标位置邻接的周边各像素的像素值进行线性内插而获得的浓度,而且各数据像元的数据值通过将与各数据像元的像元中心位置对应的上述输入图像中的坐标位置的上述浓度与用于识别各数据像元的数据值的明暗阈值进行比较来决定。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,用于识别各数据像元的数据值的上述明暗阈值基于位于该2维码对角线上的上述输入图像中的像素的像素值来设定。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,上述明暗阈值被设定到位于该2维码对角线上的上述输入图像中的全部像素的像素值中,最大值与最小值的中间值。
此外本发明的目的在于提供一种2维码读取装置,在上述2维码读取装置中,在不能正确进行上述数据像元切出处理,该2维码读取失败的场合下,将在上述版本的判定处理中判定出的版本偏移1个等级,再次重复进行上述数据像元切出处理。
此外本发明是一种内置有照相机的便携终端,其目的在于提供一种具有上述2维码读取装置的便携终端。
此外本发明的目的在于提供一种数字照相机,其具有上述2维码读取装置。
此外本发明的目的在于提供一种2维码读取方法,其将通过将记录了2维数据的数据像元配置为纵向及横向2维状来表示各种信息的2维码从输入图像中读取,其中,上述2维码具备定位图形,其为特定上述输入图像中的该2维码的位置,被配置到该2维码内规定的多个位置,并由固有的第1图形组成;排位图形,其被配置到上述2维码内与该定位图形不同的规定位置,并由不同于上述定位图形固有的上述第1图形的第2图形组成,基于来自针对上述输入图像的多个方向的扫描结果,进行从上述输入图像中检测分别被配置到规定的多个位置的多个上述定位图形的位置的处理,此外基于所检测出的上述定位图形,进行检测上述排位图形的位置的处理,此外,基于所检测出的上述定位图形,进行决定构成该2维码的像元数的版本的判定处理,基于所检测出的上述定位图形的位置、上述排位图形的位置、由上述版本的判定处理所判定出的上述版本,来进行决定构成该2维码的各数据像元的数据值的数据像元切出处理,对由该数据像元切出处理所决定的数据像元的数据值,根据预定的规则,进行特定该2维码的信息的解码处理。
此外本发明的目的在于提供一种2维码读取方法,在上述2维码读取方法中,在检测上述定位图形的位置时,将具有与由白与黑的固有的上述第1图形组成的上述定位图形近似的图形的定位图形候选作为候选定位图形从上述输入图像中抽出多个,并分别对所抽出的多个上述候选定位图形从水平方向、垂直方向及斜向这3个方向分别检测出横切各候选定位图形的扫描线上的白与黑所组成的图形的构成比,将在各方向检测出的白与黑所组成的各图形的构成比与作为上述定位图形预定的白与黑所组成的固有的上述第1图形的构成比进行比较,由此计算出表示与上述第1图形的近似度的评估值,从所抽出的多个上述候选定位图形中,按照由上述评估值表示的近似度从大到小的候选定位图形的顺序,作为上述定位图形来选择规定的个数,检测出所选择的规定个数的上述定位图形各自的位置。
此外本发明的目的在于提供一种2维码读取方法,在上述2维码读取方法中,在判定上述版本时,基于检测出的多个上述定位图形之间的间隔、表示基于表示上述定位图形的大小的幅度来导出的像元的大小的像元尺寸,来计算构成该2维码的像元数,由此来判定该2维码的版本。
此外本的目的在于提供一种2维码读取方法,在上述2维码读取方法中,在检测上述排位图形的位置时,通过检测上述输入图像中的上述定位图形有无倾斜,来检测上述输入图像中的该2维码各边有无倾斜,根据各边的斜度及上述定位图形的中心点坐标位置,来决定成为探索上述输入图像中的上述排位图形的探索范围被指定的基准位置的探索基准点,将根据所决定的该探索基准点预定的位置上的探索范围的部分图像从上述输入图像切出,从该部分图像内抽出由上述第2图形组成的上述排位图形,由此来检测上述排位图形的位置。
此外本发明的目的在于提供一种2维码读取方法,在上述2维码读取方法中,具备在从上述部分图像内抽出上述排位图形时,与上述排位图形中固有的上述第2图形所具有的各像素的特征一致的模板,通过边使该模板与上述部分图像偏移1个像素单位边进行模板匹配,从上述部分图像内抽出由上述第2图形组成的上述排位图形。
此外本发明的目的在于提供一种2维码读取方法,在上述2维码读取方法中,在上述输入图像中该2维码的方向处于旋转状态的场合下,基于所旋转的旋转角度,对上述探索基准点的坐标位置实施旋转修正,由此将被指定的上述探索范围的部分图像从上述输入图像切出,对所切出的该部分图像基于上述旋转角度来进行旋转修正,然后边使旋转修正了的上述部分图像偏移1个像素单位,边进行上述模板匹配,抽出上述排位图形,由此来检测上述排位图形的位置。
此外本发明的目的在于提供一种2维码读取方法,在上述2维码读取方法中,作为进行上述模板匹配处理的对象的上述部分图像是从进行2维处理之前的状态下的上述输入图像切出的部分图像。
此外本发明的目的在于提供一种2维码读取方法,在上述2维码读取方法中,在进行决定构成该2维码的各数据像元的数据值的上述数据像元切出处理时,作为特定上述数据像元位置的位置特定处理,基于检测出的上述定位图形的中心点的像元位置、上述排位图形的中心点的像元位置、由所判定的上述版本决定的2维码的像元数,来计算将该2维码的各数据像元的像元中心位置转换为上述输入图像中的坐标位置的坐标转换式的转换系数,利用采用了所计算出的该转换系数的上述坐标转换式,将各数据像元的像元中心位置转换为上述输入图像中的坐标位置,对与各数据像元的像元中心位置对应的坐标位置进行特定,基于由上述位置特定处理所特定的坐标位置的浓度,来决定各数据像元的数据值,进行各数据像元的切出。
此外本发明的目的在于提供一种2维码读取方法,在上述2维码读取方法中,在进行决定构成该2维码的各数据像元的数据值的上述数据像元切出处理时,与由上述位置特定处理所特定的数据像元的像元中心位置对应的上述输入图像中的坐标位置的浓度在与所特定的数据像元的像元中心位置对应的上述输入图像中的坐标位置上存在像素的场合下,是从存在于该坐标位置的该像素的像素值获得的浓度,另一方面,在与所特定的数据像元的像元中心位置对应的上述输入图像中的坐标位置上不存在像素的场合下,是从与该坐标位置邻接的周边各像素的像素值进行线性内插而获得的浓度,而且各数据像元的数据值通过将与各数据像元的像元中心位置对应的上述输入图像中的坐标位置的上述浓度与用于识别各数据像元的数据值的明暗阈值进行比较被决定。
此外本发明的目的在于提供一种2维码读取方法,在上述2维码读取方法中,用于识别各数据像元的数据值的上述明暗阈值基于位于该2维码对角线上的上述输入图像中的像素的像素值来设定。
此外本发明的目的在于提供一种2维码读取程序,其由可通过计算机使上述2维码读取方法执行的程序码来记述。
此外本发明的目的在于提供一种计算机可读取的记录媒体,其记录有上述2维码读取程序。
此外,根据本发明,在检测定位图形时,对定位图形中固有的第1图形的比率比如黑∶白∶黑∶白∶黑接近于1∶1∶3∶1∶1的比率的程度的评估值进行定义,通过对有关输入图像全体来比较该评估值,可提高定位图形的检测精度,而且从解像度较低、有噪声的低图像质量的输入图像中也可精度良好地检测出定位图形。
此外比如从水平方向、垂直方向、斜向实施3次用于判定是否接近定位图形中固有的第1图形的扫描,利用有关各方向图形比率的评估值,由此即使在比如2维码发生旋转,存在于图像中的场合下,也可提高定位图形的检测精度。
此外根据本发明,通过对定位图形的外轮廓进行扫描,根据该外轮廓的斜度进行检测,来求出该外轮廓形成边的一部分的2维码的该边的斜度,通过求出与2维码的该边平行,通过了上述定位图形的中心的直线的交点,来求出排位图形的预想坐标,而且通过利用2进制处理前的输入图像,进行与同排位图形的特征相一致的模板的模板匹配,可精度良好地检测排位图形,这样,即使在2维码处于失真状态的场合下,也可正确求出排位图形所在的探索范围,其结果是可减少现有技术中为探索排位图形而精查输入图像所需的处理,可节约用于检测排位图形的位置的总体处理量。
此外根据本发明,无需像现有技术那样,在2维码中配备定时图形,也不进行该定时图形的检测,根据3个定位图形的坐标及1个排位图形坐标这4点坐标,通过坐标转换式,来决定数据像元的像元中心位置,此外,可根据所决定的像元位置中的输入图像的浓度,来决定该数据像元的数据值,这样,在减少定时图形的检测处理所需的处理时间的同时,可缩减决定数据像元的数据值的处理时间,大幅节约数据像元的切出处理总体的处理量。
此外即使在与数据像元的像元中心位置对应的位置不存在输入图像中的像素的场合下,通过对邻接位置上的各像素的像素值进行线性内插来推测像元中心位置上的像素值,将上述像素值与基于配置有该数据像元的2维码内的特定位置上存在的多个像素的像素值所预算出的明暗阈值进行比较,由此来决定各数据像元的值,同时即使在不能进行数据像元切出,2维码读取失败的场合下,通过使基于定位图形的幅度及定位图形之间的间隔来判定的版本偏移1个等级(比如增至大1个等级的版本),再次重复2维码的读取及数据像元切出的处理,来减少版本判定错误的影响。


图1是表示QR码的结构例的模式图。
图2是用于说明计算QR码的数据像元中心坐标的现有技术的模式图。
图3是表示本发明一实施方式涉及的2维码读取装置结构例的框图。
图4是表示本发明其它实施方式涉及的2维码读取装置结构例的框图。
图5是表示本发明涉及的2维码读取装置中的动作流程一例的流程图。
图6是表示有关定位图形位置检测的动作流程一例的流程图。
图7是表示有关候选定位图形的候选中心坐标位置的检测及评估值的记录的动作流程一例的流程图。
图8A、图8B、图8C及图8D是表示2维码的朝向与定位图形的位置关系的模式图。
图9是用于说明被检测出的候选定位图形的幅度与候选中心坐标位置的模式图。
图10是表示记录被检测出的定位图形候选的评估值表一例的结构图。
图11是表示针对图10所示的评估值表中记录的定位图形候选的统一整理结果的评估值表一例的结构图。
图12是表示定位图形候选之间的中心坐标位置接近的条件示例的模式图。
图13是表示将使以基准定位图形F0的中心点为原点的x坐标及y坐标顺时针方向旋转了45°的位置上的第1象限至第4象限分别作为区域0至区域3的一例的区域分割图。
图14是表示图8A、图8B、图8C及图8D所示的2维码方向与图13所示的4个区域的组合关系的关联图。
图15是表示图8A、图8B、图8C及图8D所示的2维码的各方向与定位图形F1,F2的中心点坐标位置所属的各区域的关系的关联图。
图16是表示进行排位图形的位置检测的处理流程一例的流程图。
图17是表示来自2维码的水平或垂直方向的旋转角度一例的模式图。
图18是表示2维码中排位图形的探索基准点位置一例的模式图。
图19A及图19B是表示定位图形的边缘跟踪一例的模式图。
图20是用于说明决定排位图形P的探索范围的一例的模式图。
图21是表示有关数据像元切出处理的流程一例的流程图。
图22是说明用于识别数据像元的明暗(即白黑)的明暗阈值决定方法的模式图。
图23是表示2维码的形状与成为基准的4个基准点的像元位置的关系的模式图。
图24是表示采用了4个邻接像素的像素值的线性内插一例的模式图。
实施方式参照以下附图对本发明涉及的2维码读取装置中的实施方式示例作以说明。
图3是表示本发明一实施方式涉及的2维码读取装置结构例的框图,图中,10是2维码读取装置,该2维码读取装置10具有配有存储器12及CPU13的控制部11、显示图像信息(2维码)等的显示部14、输出语音信号的扬声器15、输入语音信号的麦克风16、用于输入键操作信息的键输入部17、用于获取图像信息(2维码)的照相机(图像获取部)18、用于收发电波的天线19、控制无线通信收发的无线部20。此外本实施方式表示了具备了作为2维码读取装置10的功能的带有照相机的便携电话机(以下称带有照相机的便携电话机10)的内部结构例。
在控制部11,存储器12中,寄存有用于实行作为2维码读取装置10的功能的2维码读取程序12a、从照相机18输入的图像数据(输入图像)12b。CPU13在进行本发明的2维码读取处理时,适宜读出2维码读取程序12a,根据该程序,对从照相机18输入的2维码图像(图像数据12b)实行处理。
此外,本实施方式的带有照相机的便携电话机10可以将由照相机18摄影的2维码图像或其读取结果等从无线部20通过网络等发送到其它带有照相机的便携电话机,或者从其它带有照相机的便携电话机通过网络等来接收2维码图像或其读取结果等。也可以作为将2维码读取程序12a寄存到服务器装置(未图示)等,在该服务器装置中进行2维码读取处理的方式。在该场合下,服务器装置从带有照相机的便携电话机、个人计算机等通过网络受理2维码图像,对所受理的2维码图像进行了2维码读取处理后,将该读取结果返回。
图4是表示本发明其它实施方式涉及的2维码读取装置结构例的框图,图中,30是2维码读取装置,该2维码读取装置30具有配有存储器32及CPU33的控制部31、显示图像信息(2维码)等的显示部34、用于输入操作信息的输入部35、用于获取图像信息(2维码)的照相机(图像获取部)36。此外本实施方式表示了具备了作为2维码读取装置30的功能的数字照相机的内部结构例。
在控制部31,在存储器32中,寄存有用于实行作为2维码读取装置30的功能的2维码读取程序32a、从照相机36输入的图像数据(输入图像)32b。CPU33在进行本发明的2维码读取处理时,适宜读出2维码读取程序32a,根据该程序,对从照相机36输入的2维码图像实行处理。
图5中,利用流程图来表示本发明涉及的2维码读取装置中的动作流程一例。此外在以下实施方式的说明中,以作为2维码,采用了QR码(Quick Response Code)的场合为例进行了说明,但本发明并非仅限于这种场合,如果是通过将记录有2进制数据的数据像元配置成纵向及横向2维状来表示各种信息的2维码,或者是具备了用于决定输入图像中的2维码位置的定位图形、从斜向摄影,呈现失真状态的输入图像的场合下,也能正确检测出2维码的数据像元位置的排位图形的2维码,则可适用于任意场合。
在QR码的场合下,如上所述,定位图形被配置到该2维码(QR码)的3个边角的规定位置(多个规定位置),由固有的第1图形(即,其黑∶白∶黑∶白∶黑的图形比率为1∶1∶3∶1∶1的7×7像元的正方形图形)组成,排位图形被配置到不同于配置定位图形的3个边角的规定位置(处于没有定位图形的2维码的边角,从该边角向内侧移动7个像元的位置),由固有的第2图形(即,其黑∶白∶黑∶白∶黑的图形比率为1∶1∶1∶1∶1的5×5像元的正方形图形)组成。
具备了上述2种位置决定用的特定图形(即,3个定位图形和1个排位图形)的2维码可根据预定的规则,在按纵·横2维状配置为m×m个的各数据像元中记录白、黑任意一种2进制数据,以2维形式来表示各种信息。
除了2种位置决定用的特定图形,如上所述,在通常的QR码中,还具备指引各数据像元的位置的定时图形,但在本发明中,即使在决定数据像元的位置的场合下,也不必具备定时图形,可以只具备上述的2种特定图形。
即在本发明中,比如即使在2维码处于旋转状态及倾斜状态,也可以利用3个定位图形与1个排位图形来正确地检测出各数据像元的像元位置,可读取被记录于所检测出的像元位置上的各数据像元的数据值(2进制数据),转换为位串,根据预定的规则来实施解码处理,对2维码中记录的信息(数据内容)进行特定。
在图5所示的流程图中,首先,将使2维码作为图像被记录的记录纸置于2维码读取装置内,由图像传感器予以读取。
由图像传感器读取的输入图像通过2进制处理,被转换为由白(明)、黑(暗)2进制图像组成的输入图像。通过扫描转换后的2进制图像,从该2进制图像中检测出由有关白与黑各游程的黑∶白∶黑∶白∶黑的图形比率为1∶1∶3∶1∶1的固有第1图形组成的定位图形的位置(步骤S001)。通过上述定位图形的位置检测,输入图像中该2维码的位置被特定。有关定位图形的位置检测动作的详情在后文记述。
在定位图形的检测失败的场合下(步骤S002的NO(否)),作为2维码读取失败,不能识别2维码而结束处理(步骤S007)。
另一方面,在配置于2维码的3个边角的3个定位图形的检测均成功的场合下(步骤S002的YES(是)),在决定3个定位图形各自的坐标,并根据表示定位图形的尺寸的定位图形幅度来决定表示1个像元的大小的像元尺寸的同时,根据3个定位图形的坐标位置来决定该2维码的朝向。
接下来,计算出预想存在排位图形的预想坐标即探索基准点,对由该预想坐标(探索基准点)特定的探索范围进行精查(即进行模板匹配),由此来进行排位图形的位置检测(步骤S003)。通过排位图形的位置检测,来决定可识别该2维码是否不是矩形状(包含正方形),而处于倾斜状态的排位图形的坐标位置。有关排位图形的位置检测动作详情在后文记述。
接下来,进行2维码的版本判定(步骤S004)。即根据表示定位图形的尺寸的定位图形幅度来计算表示2维码的像元大小的像元尺寸,进行确定决定该2维码的像元数的版本的判定。有关版本判定动作的详情也在后文记述。
接下来,进行数据像元的切出(步骤S005)。这里,根据成为由定位图形的3个坐标位置及排位图形的坐标位置组成的4个基准的坐标位置及所判定出的版本,通过所导出的2维码的形状,决定转换为与该2维码的各数据像元的像元位置对应的输入图像中的坐标位置的转换系数,由采用了所决定的该转换计数的坐标转换式,来特定与各数据像元的像元中心位置对应的输入图像中的坐标位置,此外求出被特定的坐标位置的输入图像的浓度,由此来决定各数据像元的数据值(2进制数据),切出各数据像元。即,不采用与对各像元范围对应的位置上的多个像素的白与黑的个数进行累计的现有技术,决定出各数据像元的数据值即各位的值。有关数据像元的切出动作详情在后文记述。
接下来,根据预定的规则,对遵从于2维码中的数据像元排列的位串(位的排列)进行解码(步骤S006)。这里,进行针对位串的错误修正,根据预定的规则,对错误修正后的位串的排列即数据的排列进行解码,由此转换为字符串等。
如果向上述字符串等的转换即解码处理成功,而且获得了有意义的字符串等(步骤S008的YES(是)),则2维码的读取便成功,作为2维码识别成功来结束处理(步骤S009)。
另一方面,在不能通过错误修正来进行位错误修正的场合下,以及在不能根据预定的规则将数据像元的排列即位串转换为字符串等的场合下(步骤S008的NO(否)),解码失败,如果此次的失败是首次解码失败,(步骤S010的NO(否)),通过使版本只偏移1个等级,来使构成该2维码的像元的像元数变更,比如,通过使版本增加1个等级,来使构成该2维码的像元的像元数增加,(步骤S011),回到步骤S005,再次重复数据像元的切出及解码处理。
即,通过使版本偏移,可修正步骤S004中的版本判定错误,修正到与作成时的2维码的版本一致的版本。
另一方面,在判定出发生了第2次解码失败的场合下(步骤S010的YES(是)),2维码的读取失败,作为不能识别2维码来结束处理(步骤S012)。
接下来,对有关图5所示的步骤S001中的定位图形的位置检测的动作详情作以说明。图6利用流程图来表示有关定位图形位置检测的动作流程一例。
图6中,首先,进行定位图形的候选坐标的检测及评估值的计算(步骤S101)。即,对白像素、黑像素中2进制后的输入图像依次进行扫描,分别从水平方向、垂直方向、斜向这3个方向来求出白像素与黑像素的游程长度,根据上述的定位图形特征(固有的第1图形),来评估所求出的白像素与黑像素的游程长度,根据预先准备的一定的评估式来计算认为存在定位图形的多个定位图形候选即候选定位图形的中心坐标位置即候选中心坐标位置及表示各候选中心坐标位置的候选定位图形与定位图形特征的相似程度的评估值并予以记录。
此时,也记录各候选中心坐标位置上的候选定位图形的幅度即尺寸。这里,所记录的候选定位图形的幅度即尺寸虽然是水平方向、垂直方向、斜向这3个方向各自的幅度的平均值,但在本发明中并不仅局限于上述场合,比如,也可以记录最窄的幅度,或者只采用表示互相最接近的幅度的2个幅度的平均值。上述候选中心坐标位置的检测与评估值的计算详情在后文记述。
接下来,对所求出的候选定位图形的候选中心坐标位置与评估值及候选定位图形的幅度进行分析,最终决定输入图像中的3个定位图形及该定位图形各自的中心坐标位置(步骤S102)。
在上述分析失败,不能决定3个定位图形的中心坐标位置的场合下(步骤S103的NO(否)),作为定位图形检测失败来结束处理(步骤S108)。
另一方面,在上述分析成功,成功决定了3个定位图形的中心坐标位置的场合下(步骤S103的YES(是)),计算出所决定的3个定位图形幅度的平均值,根据定位图形幅度的平均值来计算表示数据像元的大小的像元尺寸(步骤S104)。
接下来,根据所决定的3个定位图形的中心坐标位置,来决定输入图像中的2维码的朝向(步骤S105)。即,所谓2维码的朝向表示如图8A、图8B、图8C及图8D所示,2维码比如QR码的上边(即配置有定位图形F0及F1的边)处于输入图像中上下左右的那一边。这里,图8A、图8B、图8C及图8D是表示2维码的朝向与定位图形的位置关系的模式图。如图8A所示,3个定位图形F0、F1、F2中,比如F1位于基准定位图形F0的右侧方向,F2位于下侧方向,将2维码的上边存在于输入图像中的上侧方向的场合作为「方向0」来决定,将存在于从「方向0」按顺时针方向分别旋转了90°、180°、270°的位置的场合(即2维码的上边分别存在于输入图像中的右侧方向、下侧方向、左侧方向的场合)分别作为「方向1」(图8B)、「方向2」(图8C)、「方向3」(图8D)来决定。
此外,检查3个定位图形的中心坐标位置的位置关系是否满足预定的基准(步骤S106)。在不满足预定的基准的场合下(步骤S106的NO(否)),作为定位图形检测失败来结束处理(步骤S108)。即,在图5所示的步骤S002中,作为定位图形检测失败,转入步骤S007,结束处理。
另一方面,在满足预定的基准的场合下(步骤S106的YES(是)),作为定位图形检测检查成功,而且2维码的朝向决定也成功来结束处理(步骤S107)。
接下来,对图6所示的步骤S101中各候选定位图形的候选中心坐标位置的检测与评估值记录的动作作更为详细的说明。图7中,利用流程图来表示有关候选定位图形的候选中心坐标位置的检测与评估值的记录的动作流程一例。
图7中,首先,对由图像传感器读取的输入图像进行白像素及黑像素的2进制处理(步骤S201)。2进制的阈值可以是比如扫描输入图像总体所获得的各像素值中的最大值与最小值的中间值。将上述中间值用作阈值的方法适于处理量较少,高速化的场合。
接下来,从2进制图像的前端依次进行水平扫描,记录水平扫描线中的所有白像素的游程长度与黑像素的游程长度(步骤S202)。即,对水平扫描方向,分别记录黑游程的开始点及白游程的开始点。这里,从黑游程的开始点至下一个白游程的开始点的距离被作为黑游程长度来计算,白游程长度也同样,被作为从白游程的开始点至下一个黑游程的开始点的距离来计算。
这里,为检测出定位图形候选,利用预先设定的阈值来评估所计算出的黑游程∶白游程∶黑游程∶白游程∶黑游程之比是否接近于作为定位图形固有的第1图形的1∶1∶3∶1∶1的比率(步骤S203)。在评估出接近于1∶1∶3∶1∶1的比率的场合下(S204的YES(是)),求出与所计算出的黑游程∶白游程∶黑游程∶白游程∶黑游程之比与1∶1∶3∶1∶1的比率的误差对应的评估值(步骤S205)。对上述各游程之比的评估方法及评估值的计算方法在后文记述。
在将检测出的候选定位图形游程的中心点坐标位置作为水平坐标(即x坐标)的原点来记录的同时,将候选定位图形的游程长度作为水平幅度wh来记录。即如图9所示,在将在水平扫描方向上检测出的候选定位图形中两端的黑像素之间的幅度作为水平幅度wh来记录的同时,将候选定位图形中两端的黑像素之间的中心位置即候选中心坐标位置作为水平坐标的原点来记录。这里,图9是用于说明被检测出的候选定位图形的幅度与候选中心坐标位置的模式图。
接下来,从水平坐标的原点即在水平方向上检测出的候选定位图形游程中心点的坐标位置在垂直方向上扫描,调查候选定位图形在垂直方向上的游程(步骤S206)。
接下来,与步骤S202、S203同样,求出垂直扫描线上的白像素的游程长度与黑像素的游程长度,利用预先设定的阈值来评估所计算出的黑游程∶白游程∶黑游程∶白游程∶黑游程之比是否接近于作为定位图形固有的第1图形的1∶1∶3∶1∶1的比率(步骤S207)。在评估出接近于1∶1∶3∶1∶1的比率的场合下(S208的YES(是)),与步骤S205的场合同样,求出与所计算出的黑游程∶白游程∶黑游程∶白游程∶黑游程之比与1∶1∶3∶1∶1的比率的误差对应的评估值(步骤S209)。
如图9所示,在将所检测出的候选定位图形的游程中心点的坐标位置作为垂直坐标(即y坐标)的原点来记录的同时,将候选定位图形的游程长度作为垂直幅度wv来记录。
接下来,从水平坐标原点上的垂直坐标原点即水平坐标与垂直坐标相交叉的原点(分别在水平方向与垂直方向上检测出的候选定位图形的游程中心点)在相对水平扫描线倾斜45°的方向上进行扫描,调查候选定位图形的游程(步骤S210)。
接下来,与步骤S202、S203同样,求出斜向扫描线上的白像素的游程长度与黑像素的游程长度,利用预先设定的阈值来评估所计算出的黑游程∶白游程∶黑游程∶白游程∶黑游程之比是否接近于作为定位图形固有的第1图形的1∶1∶3∶1∶1的比率(步骤S211)。在评估出接近于1∶1∶3∶1∶1的比率的场合下(S212的YES(是)),与步骤S205的场合同样,求出与所计算出的黑游程∶白游程∶黑游程∶白游程∶黑游程之比与1∶1∶3∶1∶1的比率的误差对应的评估值(步骤S213)。
如图9所示,在将所检测出的候选定位图形的游程中心点的坐标位置作为斜向坐标(即xy坐标)的原点来记录的同时,将候选定位图形的游程长度作为倾斜幅度wo来记录。
这里,在不满足水平方向、垂直方向、斜向这3个条件中的任意一个的场合下,即在步骤S204、S208或S212的任意一个中,未评估出超过预先设定的阈值,接近于1∶1∶3∶1∶1的比率的场合下(步骤S204的NO(否),S208的NO(否)或S212的NO(否)),判定为不是定位图形所在的中心坐标位置,将该候选定位图形从定位图形的候选之列剔除,为进行有关下一个水平方向的坐标位置上的黑游程及白游程的定位图形的评估,转入步骤S216。
另一方面,在满足水平方向、垂直方向、斜向这3个条件中的任意一个的场合下,在进行了步骤S215之前的处理之后,将满足水平方向、垂直方向、斜向这3个条件的候选定位图形的中心点的坐标位置作为候选定位图形的候选中心坐标位置来记录。此时,将使该候选定位图形的水平幅度wh、垂直幅度wv、倾斜幅度wo的值平均后的值作为该候选定位图形的幅度来记录(步骤S214)。此外在本发明中,该候选定位图形的幅度的设定如上所述并非仅局限于上述场合。
此外将水平方向游程的评估值、垂直方向游程的评估值、斜向游程的评估值(针对与定位图形固有的第1图形的误差的评估即表示与定位图形固有的第1图形的近似度的值)的合计值作为该候选定位图形的坐标中的评估值来记录(步骤S215)。
接下来,在对在步骤S202中求出的水平方向上扫描的扫描线有关所有的黑游程及白游程的定位图形的评估未结束的场合下(步骤S216的NO(否)),为了对尚未评估的剩余的水平方向上的游程进行评估,返回到步骤S203,重复进行与上述同样的评估。另一方面,有关该扫描线中的所有黑游程及白游程的定位图形的评估已结束的场合下(步骤S216的YES(是)),或针对所有水平方向上的扫描线的扫描未结束的场合下(步骤S217的NO(否)),为进行下一水平扫描线的扫描,返回到步骤S202,进行下一水平扫描线的扫描,重复进行有关下一水平扫描线中的黑游程及白游程的定位图形的上述评估。
此外在针对所有水平方向上的扫描线的扫描已结束的场合下(步骤S217的YES(是)),结束处理。
接下来,对图7的步骤S204(以及S208及S212)、S205(以及S209及S213)所示的,基于输入图像的扫描结果计算出的黑游程∶白游程∶黑游程∶白游程∶黑游程的比率与作为定位图形固有的第1图形的1∶1∶3∶1∶1的比率的比较评估方法、与两者的误差对应的(换言之,表示两者的近似度)评估值的计算方法作以说明。
首先,将作为定位图形候选而计算出的黑游程∶白游程∶黑游程∶白游程∶黑游程各自的游程长度设为R0,R1,R2,R3,R4。即,如果定位图形候选是作为目的的真正的定位图形,则各游程的合计(∑Ri)应成为7个像元。
因此,分别利用下式(1)、(2)所示的2种算式来计算所计算出的各游程中,与1个像元对应的游程长度a及b。
a=(1/4)·(R0+R1+R3+R4) …(1)b=(1/7)·(R0+R1+R2+R3+R4) …(2)接下来,通过下式(3)来计算出误差d。即,该评估式表示与定位图形固有的第1图形之间的误差d,换言之,表示误差d越小,与定位图形固有的第1图形的近似度便越高。
d=|a-b|+|R2-3b|…(3)
在通过式(3)计算出误差d时,在下式(4)所示的评估式成立的场合下,d≤Thresh …(4)可认为所计算出的黑游程∶白游程∶黑游程∶白游程∶黑游程的比率接近于定位图形固有的第1图形1∶1∶3∶1∶1的比率,将作为定位图形候选的评估认作OK。
这里,Thresh是识别与定位图形固有的第1图形近似与否的阈值,在误差d超过Thresh的值的场合下,作为与定位图形固有的第1图形相异的图形,将该候选定位图形从定位图形候选之列剔除。此外Thresh值是根据2维码的种类及用途以及输入图像的图像质量等,可预先设定到使用者所希望的任意值的常数。
在作为定位图形候选的评估是OK的场合下,根据下式(5)来计算出与误差对应的即表示近似度的评估值e并进行记录。
e=Thresh-d …(5)即,表示评估值e的值越大,越与定位图形近似。
此外上述式(1)至(5)所示的评估式表示本发明的实施例的一例,在本发明中,并非仅局限于上述场合,如果是对与定位图形固有的第1图形之间的误差或近似度进行评估的评估式,也可以基于2维码的种类及用途和输入图像的图像质量等,来预先设定使用预先希望的任意评估式。
比如,在上述式(1)至(5)中,虽然省略了评估段的长度R0,R1,R2,R3,R4各自的误差程度,但如果是需要进行细致的评估的使用环境,也可以利用评估段的长度R0,R1,R2,R3,R4各自的误差程度的评估式,此外也可以对定位图形候选的幅度与被作为定位图形的幅度来预定的幅度之差是否处于预先设定的容许值之内进行评估,在评估出超过了该容许值的场合下,作为其尺寸偏离定位图形固有的幅度的图形,将该候选定位图形从定位图形候选之列剔除。这里,该容许值与上述的阈值Thresh的场合同样,是根据2维码的种类及用途以及输入图像的图像质量等,可预先设定到使用者所希望的任意值的常数。
接下来,对决定图6的步骤S102所示的定位图形坐标的顺序作以说明。即,对决定输入图像中的3个定位图形的中心坐标位置的顺序作以说明。
所输入的2进制图像中被作为定位图形候选检测出的候选定位图形的中心坐标位置与幅度及评估值被记录到比如图10所示的评估值表内。这里,图10是表示记录有在图6的步骤S101被检测出的定位图形候选即候选定位图形的评估值表一例的结构图。
对图10所示被记录于评估值表的各定位图形候选中,具有相同中心坐标位置的定位图形候选的信息进行统一,而且对其中心坐标位置接近的也进行信息统一。
以下表示判定出定位图形候选的中心坐标位置接近的接近判定条件一例。
即,在将定位图形候选i的坐标设为(xi,yi),将幅度设为wi,将候选j的坐标设为(xj,yj),将幅度设为wj的场合下,判定出候选i与候选j接近的接近判定条件满足以下2个条件。
条件1幅度wi与wj之差小于2个幅度wi、幅度wj的平均值的1/4。即,下式(6)成立。
|wi-wj|<(wi+wj)/8 …(6)条件2在将幅度wi与wj中较大的一方设为w的场合下,满足下式(7)、(8)。
|xi-xj|≤(3/14)w…(7)|yi-yj|≤(3/14)w…(8)这里,幅度wi与wj如上所述,采用分别在候选i,候选j的水平方向、垂直方向、斜向这3个方向上计算出的幅度的平均值。
参照图12,对该接近判定条件作以说明。这里,图12是表示定位图形候选之间的中心坐标位置接近的条件示例的模式图。如图12所示,在上述的接近判定条件中,式(7)、(8)表示相当于2个定位图形候选的中心坐标互相处于表示相干方的定位图形的中心部的图形的(3×3)像元的黑正方形内部的事实。此外,评估定位图形候选的大小即幅度的式(6)表示满足式(7)、(8)所示的接近判定条件的候选定位图形即使对于定位图形的大小,也只有少于(9/8)倍即12%的差异的大致近似的大小,作为同一候选定位图形被检测出的定位图形,容许作为统一对象,反过来说,意味着即使是满足比如式(7)、(8)所示的接近判定条件的候选定位图形,在定位图形的大小相差很大的场合下,也要作为相互各异的图形从统一对象中剔除。
对具有满足上述接近判定条件即式(6)、(7)、(8)的关系的定位图形候选进行统一,合成一个定位图形候选。在进行上述统一的场合下,对所统一的定位图形候选的中心坐标位置及幅度,采用两者的平均值,对评估值,采用两者的合计值来进行统一。
比如,对于图10所示的评估值表中记录的定位图形候选,对具有满足上述接近判定条件即式(6)、(7)、(8)的关系的定位图形候选进行了统一的结果成为图11的统一结果。这里,图11是表示针对图10所示的评估值表中记录的定位图形候选的统一整理结果的评估值表一例的结构图。
即,如图11所示,候选号0与1被统一,作为新的候选号0被记录,中心坐标位置与幅度各自的平均值、评估值各自的合计值被设定,候选号2与3被统一,作为新的候选号2被记录,中心坐标位置与幅度各自的平均值、评估值各自的合计值被设定,候选号5与6被统一,作为新的候选号5被记录,中心坐标位置与幅度各自的平均值、评估值各自的合计值被设定,候选号7与8被统一,作为新的候选号7被记录,中心坐标位置与幅度各自的平均值、评估值各自的合计值被设定。
此外候选号4虽具有与候选号2及3相同的中心坐标位置,但由于不满足接近判定条件中,评估定位图形候选的大小的条件1即式(6),因而候选号2及3的任意一个均不被统一,按原样保留在图11的评估值表内。
如上所述,对被统一整理了的最终评估值表依次进行检索,选择表示近似度大小的评估值成为较大值的上3位的3个候选(即2维码的定位图形中所需的个数)定位图形,作为3个定位图形来决定。比如,在图11所示的评估值表的场合下,评估值较大的候选号0与5及7中记录的定位图形候选被作为2维码的3个定位图形来决定,上述的3个坐标(52,215),(172.5,88),(175,212)被作为定位图形的中心坐标位置来决定。
如果统一整理后的评估值表中不存在3个以上(即,2维码的定位图形中所需的个数)的定位图形候选,则定位图形的检测失败。
此外,在上述的实施例中,虽然表示了利用式(6)来评估定位图形候选的大小的近似度的示例,但本发明并非局限于上述场合,可以根据2维码的种类及用途和输入图像的图像质量等,使近似度更为严密,或反之使其更缓和,设定到使用者所希望的任意条件。
虽然表示了利用式(7)、(8)来评估定位图形候选的中心坐标位置的接近度的示例,但本发明并非局限于上述场合,可以根据2维码的种类及用途和输入图像的图像质量等,设定到使用者所希望的任意条件。比如,在使式(7)、(8)的条件缓和,在定位图形候选互相接近,其相互的图形重叠的位置上进行检测的场合下,也可将相互的定位图形候选看作是统一对象。
接下来,对图6的步骤S104中的像元尺寸的决定顺序作以说明。
即,根据上述顺序来决定3个定位图形后,基于所决定的3个定位图形的幅度,来决定表示构成该2维码的像元大小的像元尺寸。比如,对3个定位图形幅度进行平均化,作为计算出像元尺寸的定位图形幅度来决定。由于定位图形由7个像元的幅度构成,因而通过将通过求出各定位图形幅度的平均值而决定的定位图形幅度除以像元数7,来计算出构成该2维码的像元的像元尺寸。
比如,在图11所示的评估值表的场合下,定位图形幅度作为各定位图形幅度的平均值是(34+31.5+32)/3=32.5,像元尺寸被计算为32.5/7=4.6。
这里,虽然表示基于3个定位图形幅度的平均值,来计算像元尺寸的示例,但本发明并非仅局限于上述场合,比如,在根据2维码的种类及利用方式等,对失真状态下的2维码也严密对应的场合下,如果检测出分别对3个定位图形均有意义的不同的幅度,则也可计算出因各定位图形分别所在的周边的每个像元而异的像元尺寸并加以应用。
接下来,对图6的步骤S105中2维码的朝向的决定顺序作详细说明。
首先,对求出基准定位图形F0(即,对配置于矩形形状的(包含正方形)2维码的3个边角的3个定位图形的中心点进行相互连接而形成的直角三角形的直角位置上的定位图形参照图8A、图8B、图8C及图8D)的顺序作以说明。
对以由上述顺序所决定的3个定位图形的中心坐标位置为顶点的三角形作以考虑。
接下来,求出上述三角形中各边的长度或各边长度的平方,决定具有最大值的边。将成为最大值的边中未包含的顶点作为基准定位图形F0的中心坐标。通过基于该顺序来求出基准定位图形F0,即使在2维码即定位图形如同在失真状态下输入的输入图像,未在输入图像中作为矩形(包含正方形)来显示的场合下,也可求出基准定位图形F0的中心坐标。
比如,在图11所示的评估值表的场合下,基准定位图形将与候选号7的定位图形相关。
此外一般情况下,在判明坐标(xi,yi)与坐标(xj,yj)的场合下,如将连接坐标(xi,yi)与坐标(xj,yj)的直线的长度设为1,由于成立以下关系,因而上述三角形中各边的长度或各边长度的平方可通过对3个定位图形的中心坐标各自的差的平方进行相加来求出。
l2=(xi-xj)2+(yi-yj)2…(9)接下来,对求出基准定位图形F0以外的其它2个定位图形的位置关系的顺序作以说明。对基准定位图形F0与其它定位图形F1、F2的位置关系如图8A、图8B、图8C及图8D所示而构成。
以下对在以基准定位图形F0的中心点为中心,如图13所示分割为4个区域的场合下,判定其余2个定位图形F1、F2的中心点属于哪个区域的顺序作以说明。这里,图13是表示将使以基准定位图形F0的中心点为原点的x坐标及y坐标顺时针方向旋转了45°的位置上的第1象限至第4象限分别作为区域0至区域3的一例的区域分割图。
比如,在将基准定位图形F0的坐标设为(xF0,yF0),将检查对象的定位图形F1、F2的坐标设为(x,y)的场合下,通过以下所示条件,来判定检查对象定位图形F1、F2所属的区域。
属于区域0的条件(y-yF0)≤(x-xF0)和(y-yF0)>-(x-xF0) …(10)属于区域1的条件(y-yF0)>(x-xF0)和(y-yF0)>-(x-xF0) …(11)属于区域2的条件(y-yF0)>(x-xF0)和(y-yF0)5-(x-xF0) …(12)属于区域3的条件(y-yF0)≤(x-xF0)和(y-yF0)≤-(x-xF0) …(13)通过是否满足式(10)至(13)的任意一个,可决定出基准定位图形F0以外的2个定位图形F1、F2的中心坐标所属的区域。即,如上所述,可基于所检测出的3个定位图形F0、F1、F2的中心点坐标位置,来决定2维码的朝向(即,表示是否在2维码旋转的状态下输入的2维码的朝向)。
图14是表示图8A、图8B、图8C及图8D所示的2维码方向(朝向)与图13所示的4个区域的组合关系的关联图。即,根据图14的关联图所示的表格,通过基准定位图形F0以外的2个定位图形F1、F2的中心点的坐标位置所属的2个区域的组合,来决定2维码的方向。图14的关联图所示的表格中,与未记述方向的栏目(即,附加「-」所示的栏目)对应的2个定位图形F1、F2的中心点坐标位置所属的区域组合被判定为非法组合,2维码的方向决定失败。
比如,图8A所示的2维码方向0的场合下,对基准定位图形F0,右侧方向上(即属于图13的区域0)的定位图形为F1,下侧方向上(即属于图13的区域1)的定位图形为F2,如图14所示,在2个定位图形F1、F2属于区域0与区域1的组合区域的场合下,可决定为2维码的方向处于图8A所示的方向0。不过,在作为比如图14的「-」所示的栏目一例属于区域0及区域2的定位图形F1、F2的组合被检测出的场合下,作为不能决定2维码的方向的对象,中止2维码的读取动作。
即,如果对2维码的各方向与定位图形F1、F2的中心坐标所属的各区域的关系进行整理并显示,则将呈现图15所示的状态。这里,图15是表示图8A、图8B、图8C及图8D所示的2维码的各方向与定位图形F1,F2的中心点的坐标位置所属的各区域的关系的关联图。如图15所示,在2维码方向0的场合下,定位图形F1的中心点的坐标位置属于区域0,定位图形F2的中心点的坐标位置属于区域1。
在本实施例中,2维码的各方向与定位图形F1、F2的中心点坐标位置所属的各区域的对应关系表示决定2维码未产生倾斜的场合下2维码的方向的示例,但本发明如上所述并非仅局限于该场合,即使在伴随着2维码倾斜的场合下,也可以利用类似的方法,基于定位图形F0、F1、F2的各中心点的坐标位置来判定2维码的朝向是否旋转。
接下来,对进行图5的步骤S003中的排位图形的位置检测的顺序作更为详细的说明。
图16利用流程图来表示进行排位图形的位置检测的处理流程一例。
首先,检测2维码的旋转角度(步骤S301)。这里,利用通过此前说明的顺序所求出的定位图形F0、F1、F2各自的中心点F0C、F1C、F2C的中心坐标位置,来检测2维码的旋转程度。
旋转角度如图17所示,被定义为旋转角度R,其以2维码的基准定位图形F0为中心,如图15所示,在决定了2维码的方向(朝向)与区域的关系的状态下,定位图形F1从水平方向或垂直方向按顺时针方向旋转。比如,如图17中的一例所示,在2维码的定位图形F1的中心点坐标位置属于区域0的图15所示的方向0的场合下,旋转角R如果为0°,则如图8A中的方向0所示,基准定位图形F0与定位图形F1处在位于水平位置的状态,2维码处于不旋转的状态。
这里,图17是表示来自2维码的水平或垂直方向的旋转角度一例的模式图,表示2维码的定位图形F1的中心点坐标位置属于区域0的图15所示方向0的场合下的示例,在该场合下,表示定位图形F1的中心点坐标位置从定位图形F0的水平左方向旋转的旋转角R。此外在2维码的定位图形F1的中心点坐标位置属于图15所示的区域1、区域2或区域3的场合下,定位图形F1的中心点坐标位置分别从定位图形F0的垂直下方向、水平右方向或垂直上方向只转动旋转角度R。
即,作为旋转角度R,将顺时针转向的旋转作为正值,将反时针转向的旋转作为负值来表示,在±45度(°)的范围(即,与2维码的各方向0、1、2、3对应的图13所示的区域0、1、2、3的任意一个范围内),比如以5度(°)单位作为单位,来进行2维码的旋转角度R的检测。
这里,对于针对5度(°)单位下的旋转角度Ri弧度(=360°×(Ri/2π))的tan值,即tan Ri关于Ri=(π/36)×i(i=0,1,2,…,9),预先准备了具有10个tan值的表格。
如果将在2维码的输入图像内检测出的定位图形F0、F1、F2各自的中心点F0C、F1C、F2C的中心坐标位置分别设为(xF0,yF0)、(xF1,yF1)、(xF2,yF2),则在2维码中不伴随倾斜的场合下,2维码的旋转角度R的tan值分别如下。
在方向0的场合下,tan(R)=(yF1-yF0)/(xF1-xF0)…(14)在方向1的场合下,tan(R)=(yF0-yF2)/(xF0-xF2)…(15)在方向2的场合下,tan(R)=(yF0-yF1)/(xF0-xF1)…(16)在方向3的场合下,tan(R)=(yF2-yF0)/(xF2-xF0)…(17)即,根据定位图形F0、F1、F2各自的中心点F0C、F1C、F2C的中心坐标与2维码的方向,利用上述式(14)至(17)的任意一个算式,来求出tan(R)。通过将所求出的tan(R)值与预先准备的tanRi的表格值进行比较,可求出旋转角度R。
接下来,如图16的流程图所示,决定成为为抽出与2维码的斜度对应的排位图形而决定精查的探索范围时的基准的探索基准点(步骤S302)。
即,如图18所示,将3个定位图形F0、F1、F2的中心点设为F0C、F1C、F2C。将2维码的顶点分别设为A、B、C、D,在顶点A、B、C的3个边角位置分别配置3个定位图形F0、F1、F2。这里,图18是表示2维码中的排位图形的探索基准点位置一例的模式图。
图18中,由点H来表示排位图形P的探索基准点。这里,探索基准点H是通过定位图形F1的中心点F1C,与边BD平行的直线S1与通过定位图形F2的中心点F2C,与边CD平行的直线S2的交点。
这里,为求出探索基准点H,有必要求出边BD即直线BD及边CD即直线CD的斜度。直线BD与直线CD的斜度如图19A及图19B所示,可通过追踪与直线BD及直线CD相接而配置的定位图形的边缘来算出。图19A及图19B是表示定位图形的边缘跟踪一例的模式图。
首先,如图19A及图19B所示,为检测出与作为2维码的1边的直线BD相接,形成直线BD的一部分的定位图形F1的外轮廓的各像素位置,从定位图形F1的中心点F1C开始向垂直方向扫描,求出定位图形F1两端的点a、b。点a是在从定位图形F1的中心点F1C出发,在垂直方向扫描时,第2个黑像素的连续游程的终结点,点b是在垂直下方向扫描时,第2个黑像素的连续游程的终结点。
接下来,从作为垂直线的线段ab上的各点向水平右方向依次扫描,在线段ab上的各点中,对定位图形F1右端上黑像素的连续游程结束的上下两端的黑像素点及定位图形F1右端上黑像素的连续游程结束的最右端的黑像素点进行追踪。通过上述边缘追踪,最终检测出与点a对应的上端黑像素的追踪结束点c、与点b对应的下端黑像素的追踪结束点e的各坐标并予以记录,同时对在线段ab上各点的扫描中其定位图形F1右端上的黑像素的连续游程结束的最右端的点即x坐标(水平坐标)的坐标值达到最大的追踪最终点d的坐标位置进行记录。
这里,如果2维码的旋转为顺时针转向即正向,则将线段de的斜度作为直线BD的斜度,如果为反时针转向即负向,则将线段cd的斜度作为直线BD的斜度。
图19A表示其旋转为顺时针转向即正向场合下的示例,图19B表示其旋转为反时针转向即负向场合下的示例。即,在其旋转为顺时针转向即正向场合下,如图19A所示,追踪开始点a与追踪结束点c达到相同,在其旋转为反时针转向即负向的场合下,如图19B所示,追踪开始点b与追踪结束点e达到相同。
在其旋转为顺时针转向即正向的场合下,通过追踪最终点d与追踪结束点e的各坐标位置所表示的定位图形F1的外轮廓的斜度,可求出定位图形F1的外轮廓构成其一部的直线BD的斜度,另一方面,在其旋转为反时针转向即负向的场合下,通过追踪结束点c与追踪最终点d的各坐标所表示的定位图形F1的外轮廓的斜度,可求出定位图形F1的外轮廓构成其一部的直线BD的斜度。
即,通过检测出构成形成定位图形F1所在的2维码的边BD的一部的定位图形F1的外轮廓的各像素的坐标位置中,至少2个像素的坐标位置,可以求出边BD即直线BD的斜度。
以完全同样的方法,可以求出定位图形F2所在的边CD即直线CD的斜度。
分别计算出2个直线BD的斜度与直线CD的斜度后,如图18所示,可通过计算来求出通过定位图形F1的中心点F1C,同直线BD平行的直线S1与通过定位图形F2的中心点F2C,同直线CD平行的直线S2的交点,而且可以将直线S1与直线S2的交点作为成为探索排位图形P的基准点的探索基准点H来决定。
图18中所述的排位图形的探索基准点H的计算方法示例虽然以定位图形F1属于区域0,定位图形F2属于区域1的场合,即2维码处于方向0的状态的场合为例进行了说明,但对于2维码处于方向0以外的方向的场合下,也可以通过完全同样的处理,对构成2维码的边的一部的定位图形,对该定位图形端点上的黑像素的连续游程的追踪结束点c、e及追踪最终点d进行追踪检测,由此求出该定位图形的外轮廓的斜度,检测出2维码的边的斜度,而且与方向0的场合同样,即使在2维码向任意方向旋转的状态下,也可求出有关排位图形P的探索基准点H。
接下来,如图16的流程图所示,进行排位图形P的探索范围的决定(步骤S303)。利用表示排位图形P的探索范围一例的图20来进行说明。图20是用于说明决定排位图形P的探索范围一例的模式图。
图20中,将成为用于排位图形探索的基准的探索基准点H的坐标设为(xH,yH),将像元尺寸设为cs。
在2维码不旋转的场合下,作为预测存在排位图形P的中心点的坐标位置的预测中心坐标位置PP存在于只从探索基准点H离开预定的距离的位置上,比如存在于3个像元尺寸的内侧位置,成为(xH-3cs,yH-3cs)。而且,排位图形P的探索范围PR将以该预测中心坐标位置PP为中心,必要充分地覆盖该排位图形P(5×5像元尺寸)的范围,比如,由在水平·垂直两个方向上分别具有至少2个像元的余量的幅度(5+2n)×cs(n整数)组成的矩形形状范围以内作为探索范围PR来设定。
即,作为探索范围PR,将只从探索基准点H离开预定的距离的位置(比如离开了3个像元尺寸的位置)作为预测配置排位图形P的中心点的预测中心坐标位置PP,具有距离该预测中心坐标位置PP至少2个像元尺寸的余量,设定包含排位图形P的图形的足够的区域。
此外2维码如上述图17所示,在只转动旋转角度R的场合下,对探索基准点H,通过下式(18)来计算对2维码的旋转修正了的修正探索基准点H′。
xH′yH′=cos(-R)sin(-R)-sin(-R)cos(-R)xH-xF0yH-yF0+xF0yF0···(18)]]>这里,(xF0,yF0)是定位图形F0的中心点F0C的中心坐标。
采用了旋转角度R的旋转被修正后的修正探索基准点H′的场合下的排位图形P的修正预测中心坐标PP′成为(xH′-3cs,yH′-3cs)。
而且作为伴随着旋转的场合下的排位图形P的修正探索范围PR′是以该修正预测中心坐标PP′为中心,使探索范围PR只转动旋转角度R的区域,将必要充分地覆盖该排位图形P(5×5像元尺寸)的范围,比如由幅度(5+2n)×cs(n整数)组成的矩形形状的范围以内作为修正探索范围PR′来设定。
这里,如果将修正探索范围PR′内的像素的旋转修正后的坐标设为(x′,y′),则与该旋转修正后的坐标(x′,y′)对应的旋转修正前的输入图像的坐标(x,y)由下式(19)求出。这样,作成只对排位图形P的探索范围PR内进行了旋转修正的部分图像。
xy=cos(R)sin(R)-sin(R)cos(R)x′-xF0y′-yF0+xF0yF0···(19)]]>这里,(xF0,yF0)是定位图形F0的中心点F0C的中心坐标。对于未检测出旋转的图像,切出原图像中的探索范围PR内的部分图像,另一方面,对于检测出了旋转的图像,切出修正了旋转的修正探索范围PR′内的部分图像,从作为任意对象的部分图像内抽出与排位图形P固有的第2图形(被作为不同于定位图形固有的第1图形的图形预定的固有的第2图形)一致的图形。
在本发明中,在进行抽出排位图形P的处理时,对切出的上述部分图像进行采用了与排位图形P固有的第2图形所具有的特征一致的模板的模板匹配。这里,作为用于模板匹配的输入图像,采用实施2进制处理前的输入图像(原图像信号)。即使如同输入图像的图像质量不是太好的场合,由于2进制处理而造成白像素破碎及黑像素碎裂的场合下,通过采用2进制处理前的输入图像,可正确检测出排位图形P。
用于模板匹配的模板具有与探索对象的排位图形的5×5像元形状相一致的形状,采用其大小被基于像元尺寸扩大了规定倍数的模板。此外作为该模板内的像素值,如果比如2进制化前的输入图像(原图像信号)根据从明(白)至暗(黑)的变化,采用从255至0范围的各种等级的值,则对模板的黑像素分配0作为像素值,对白像素分配255作为像素值。
此外为了能简单地实施模板匹配处理,如上所述,在2维码处于旋转状态的场合下,采用实施了旋转修正后的修正探索范围PR′内的部分图像。
这样,在使从上述探索范围PR或PR′切出的部分图像内按1个像素单位逐次偏移的同时,进行计算有关构成模板的全部像素的像素值与分别与各像素位置对应的部分图像内的像素的像素值的每个像素的差分的绝对值总和的模板匹配(图16所示的步骤S304)。
在从上述探索范围PR或PR′切出的部分图像内的全部像素内,将按1个像素单位偏移后获取的差分的绝对值总和中,该差分的绝对值总和成为最小的模板的中心坐标作为排位图形P或P′的中心点PC或PC′(在未旋转的场合下为排位图形P的中心点P,在伴随旋转的场合下为排位图形P′的中心点PC′)的中心坐标来决定(步骤S305)。
这里,在进行了旋转修正的场合下,使被作为排位图形P′的中心点PC′的中心坐标决定的旋转图像根据式(19)进一步旋转,计算出旋转修正前的输入图像中的排位图形P的中心点PC的中心坐标。即使比如在输入图像的2维码中发生了旋转及倾斜的场合下,或者即使在图像质量不好的场合下,基于所检测出的定位图形F0、F1、F2的坐标位置,也可以可靠地检测出排位图形P的中心点PC的中心坐标位置。
接下来,对图5的步骤S004中所进行的版本判定作更为详细的说明。
首先,对配置于由矩形状(包含正方形)组成的2维码的3个边角的由相同形状组成的定位图形F0、F1、F2,基于各自的坐标位置来计算形成2维码的1边的定位图形F0、F1各自的中心点F0C、F1C之间的定位图形之间的距离与形成2维码的另1边的同F0、F2各自的中心点F0C、F2C之间的定位图形之间的距离,求出所计算出的2个定位图形之间的距离的平均值。
然后,将定位图形之间距离的平均值除以通过上述图6的步骤S104所示的顺序计算出的像元尺寸,求出商,由此来计算2维码的像元数。虽然可以判定决定该2维码的像元数的2维码版本,但在本发明中,为防止版本判定错误所伴随的2维码读取失败,准备了表示2维码的版本与由该版本决定的登录像元数(与版本对应的2维码即定位图形之间的像元数)的对应的版本登录表。
即,通过检索版本登录表,从在版本登录表中预先设定登录的登录像元数中选择具有与所计算出的上述商值(像元数)一致或最接近的值(像元数)的登录像元数,将与该登录像元数对应的版本作为成为对象的输入图像中的2维码的版本号来判定。此外版本登录表的版本号被按2维码的像元数的顺序提供,版本号越增加,2维码的像元数便越增加。
接下来,对图5的步骤S005中进行的数据像元的切出作以说明。图21利用流程图来表示有关数据像元切出处理的流程一例。
首先,决定作为用于识别各数据像元的数据值是明(白)还是暗(黑)的阈值的明暗阈值(步骤S401)。
利用作为说明用于识别数据像元的明暗(即白黑)的明暗阈值决定方法的模式图的图22作以下说明。即,对作为连接配置于2维码的3个边角的定位图形F0、F1、F2中,配置于对角位置的定位图形F1的中心点F1C与定位图形F2的中心点F2C的线段的对角线J上的输入图像的各像素的像素值全部进行扫描,对对角线J上的所有像素的像素值进行比较,求出该像素值的最大值与最小值。然后,将对角线J上像素值的最大值与最小值的中间值(平均值)作为数据像元的明暗(即白黑)的识别用的明暗阈值来决定。此外,也可以取代利用对角线J上的所有像素的像素值来设定明暗阈值,而将与对角线J上的所有数据像元的像元中心位置对应的输入图像的坐标位置上的各浓度中最大值与最小值的中间值作为明暗阈值来设定。
接下来,计算用于将各数据像元的像元中心位置转换为输入图像中的坐标位置的坐标转换式的转换系数(步骤S402)。
即,当将表示2维码的各数据像元的像元中心位置的坐标位置设为(u,v)时,转换为与该各数据像元的像元中心位置(u,v)对应的输入图像中的坐标位置(x,y)的坐标转换式如下式(20)及式(21)所示。
x=(b00u+b01v+b02)/(u+b21v+b22) …(20)y=(b10u+b11v+b12)/(u+b21v+b22) …(21)通过在式(20)及(21)中,代入表示此前决定的4个基准点的坐标位置即定位图形F0、F1、F2与排位图形P各自的中心点的位置的像元中心位置的坐标位置,来计算转换系数bij(这里,ij=00,01,02,10,11,12,21,22)。
如上所述,根据在步骤S004中决定的版本号,来决定构成2维码的像元数m×m。如果假设在输入图像中,2维码的像元数由m×m个构成,则表示定位图形F0、F1、F2及排位图形P的各中心点F0C、F1C、F2C及PC的像元中心位置的坐标位置(u,v)将如图23所示,成为以2维码的左上角作为像元坐标的原点,分别具有(3,3)、(m-4,3)、(3,m-4)、(m-7,m-7)的坐标位置的像元位置。这里,图23是表示2维码的形状与成为基准的4个基准点的像元位置的关系的模式图。
因而,如果将与定位图形F0、F1、F2各自的中心点的输入图像中的坐标位置(xF0,yF0)、(xF1,yF1)、(XF2,yF2)与排位图形P的中心点PC的输入图像中的坐标位置(xp,yp)对应的表示各像元中心位置的坐标位置(u,v)代入上述式(20)及(21)的坐标转换式,则将成立以下关系。
xF0=(b003+b013+b02)/(3+b213+b22) …(22)yF0=(b103+b113+b12)/(3+b213+b22) …(23)xF1=(b00(m-4)+b013+b02)/((m-4)+b213+b22) …(24)yF1=(b10(m-4)+b113+b12)/((m-4)+b213+b22) …(25)xF2=(b003+b01(m-4)+b02)/(3+b21(m-4)+b22) …(26)yF2=(b103+b11(m-4)+b12)/(3+b21(m-4)+b22) …(27)xp=(b00(m-7)+b01(m-7)+b02)/((m-7)+b21(m-7)+b22)…(28)yp=(b10(m-7)+b11(m-7)+b12)/((m-7)+b21(m-7)+b22)…(29)通过对上述式(22)至(29)所示的8个联立方程式进行解算,可求出用于将各数据像元的像元中心位置转换为输入图像中的坐标位置的8个转换系数bij(ij=00,01,02,10,11,12,21,22)。
接下来,在图21的流程图中,利用计算出了转换系数bij的上述坐标转换式即式(20)及(21),将2维码内的各数据像元的像元中心位置转换为输入图像中的坐标位置(步骤S403)。
这里,在步骤S403中被转换了的与各数据像元的像元中心位置对应的输入图像的坐标位置如果与输入图像中的像素位置一致,则可将相一致的该像素的像素值按原样作为用于决定数据像元的数据值的浓度来使用,但由于与各数据像元的像元中心位置对应的输入图像的坐标位置有时处于输入图像中的像素与像素之间,因而在上述场合下,实施有关用于决定数据像元的数据值的浓度的浓度修正(步骤S404),决定像元值(步骤S405)。
该浓度修正可通过对与该坐标位置邻接的4个周边像素的像素值进行线性内插来进行。
利用表示采用了4个邻接像素的像素值的线性内插一例的图24对进行线性内插的方法作以下进一步说明。
与像元位置对应的坐标(i+α,j+β)中的像素值Q(i+α,j+β)由下式(30)提供。但,i,j是与输入图像中的像素位置对应的整数,α,β作为提供用于表示具有像素值Q(i,j)的像素(i,j)、具有像素值Q(i+1,j)的像素(i+1,j)、具有像素值Q(i,j+1)的像素(i,j+1)、具有像素值Q(i+1,j+1)的像素(i+1,j+1)所包围的区域内,数据像元的像元中心位置所在的位置的相对值的值,分别是表示来自像素(i,j)的横向、纵向的位置的值,处于0<α<1,0<β<1的范围内。
即,在与各数据像元的像元中心位置对应的输入图像的坐标位置处于输入图像中的像素与像素之间的场合下,通过利用下式(30)来进行线性内插,可以获得用于决定数据像元的数据值的浓度。Q(i+α,j+β)=Q(i,j)·(1-α)·(1-β)+Q(i+1,j)·α·(1-β)+Q(i,j+1)·(1-α)·β+Q(i+1,j+1)·α·β …(30)在存在与数据像元的像元中心位置对应的输入图像中的像素的场合下,如上所述,将所对应的像素的像素值作为用于决定数据像元的数据值的浓度,另一方面,在不存在与像元中心位置对应的输入图像中的像素的场合下,通过利用由采用了式(30)的浓度修正所决定的浓度来进行与在图21的步骤S401中决定的明暗阈值的比较,可以决定是否是2维码的各数据像元的明(白)·暗(黑)任意一个数据值,可切出该数据像元。
因此,通过重复上述顺序,可以将2维码内的所有数据像元以简洁的顺序迅速地切出,而不必像现有技术那样,进行抽出与数据像元的像元尺寸对应的输入图像中的所有像素的像素值,对白、黑各像素的像素数进行合计,然后来决定该数据像元的数据值之类的需要较多处理量的过程。
此外如上所述,在本发明中,不具备现有技术中的定时图形,可只采用定位图形F0、F1、F2及排位图形P的4个基准点,通过坐标转换式来对各数据像元的位置容易迅速地进行特定,此外可以利用与像元中心位置对应的坐标位置的浓度对被特定的位置上的数据像元的数据值进行迅速的决定,可靠地切出所有的数据像元。此后根据预定的规则,通过解码来将所切出的所有数据像元的数据值的排列即位串转换为字符串等信息,由此可通过远少于现有技术的处理量来完成2维码的读取动作。因此即使对于比如处理能力不过高的照相机内置便携电话机等便携终端,也可以采用本发明涉及的2维码读取方法。
以上虽以用于实行本发明的2维码读取中的各步骤的2维码读取方法为中心对各实施方式作了说明,但本发明也可以采用实行2维码读取方法的各步骤的2维码读取装置或内置了该2维码读取装置的数字照相机、带有照相机的便携终端的方式。还可以采用由可由计算机实行上述方法的程序码表现的2维码读取程序的方式、记录了该2维码读取程序及数据的记录媒体的方式。本发明也可采用用于收发2维码读取程序及数据的通信网络之类的传送媒体的方式。
对记录了用于实行基于本发明的2维码读取方法的程序及数据的记录媒体的实施方式作以说明。作为记录媒体,具体地说,可考虑CD-ROM(-R/-RW)、光磁盘、DVD-ROM、FD、闪存存储器、存储卡、存储条及其它各种ROM和RAM等,通过在这些记录媒体上,将上述本发明的各实施方式的2维码读取方法作为用于使计算机实行的程序来记录并使之流通,可使该方法的实现变得容易。因此通过在计算机等信息处理装置中安装上述的记录媒体,从该信息处理装置读出程序,或在信息处理装置所具备的存储媒体中存储该程序,必要时读出,可以实行本发明涉及的2维码读取方法。
根据本发明,即使从解像度较低、包含噪声的图像质量不良的输入图像中也可精度良好地检测出2维码的定位图形及排位图形。此外通过在检测2维码的定位图形时,不仅从水平方向及垂直方向,还从斜向来评估2维码的白与黑的游程,即使在比如2维码处于在输入图像中从水平方向旋转了的状态的场合下,也可正确检测定位图形。此外由于基于定位图形的坐标位置来判定有无2维码的旋转,如果2维码处于旋转状态,则实施旋转修正,抽出排位图形,因而即使在正在旋转的状态下,也可以可靠地检测出排位图形。
由于通过只检测成为2维码基准的4点(即,3个定位图形和1个排位图形)的位置,可实行2维码的数据像元的切出,因而可节省现有技术中进行定时图形等检测的处理,可节约2维码读取动作整体所需的处理量。
即使在2维码处于从矩形(包含正方形)失真的状态的场合下,也可从定位图形的坐标位置求出2维码的斜度,正确求出排位图形所在的探索范围,其结果是与不能正确特定探索范围的现有技术不同,可大幅减少有关精查排位图形的存在位置的处理,可节约有关2维码读取全体所需的处理量。
由于具备表示2维码的版本与像元数的对应的版本登录表,因而即使基于从输入图像中的2维码检测出的定位图形所判定出的版本中有误差,2维码的读取失败,也可以基于版本登录表,使所判定出的版本偏移1个等级,再次实行读取动作,可将基于版本判定误差的2维码读取失败的发生抑制到最小限。
而且即使在处理能力较小的照相机内置便携电话机等便携终端中,通过采用本发明涉及的2维码读取方法,也可实现对2维码进行高精度而且迅速的读取。
权利要求
1.一种2维码读取装置,其从输入图像中读取通过将记录有2进制数据的数据像元配置成纵向及横向2维状来表示各种信息的2维码,其特征在于上述2维码具备定位图形(F),其为特定上述输入图像中的该2维码的位置,被配置到该2维码内规定的多个位置,并由固有的第1图形组成;排位图形(P),其被配置到上述2维码内与该定位图形(F)不同的规定位置,并由不同于上述定位图形(F)固有的上述第1图形的第2图形组成,基于来自针对上述输入图像的多个方向的扫描结果,进行从上述输入图像中检测分别配置在规定的多个位置的多个上述定位图形(F)的位置的处理,此外基于所检测出的上述定位图形(F),进行检测上述排位图形(P)的位置的处理,此外,基于所检测出的上述定位图形(F),进行决定构成该2维码的像元数的版本的判定处理,基于所检测出的上述定位图形(F)的位置、上述排位图形(P)的位置和由上述版本的判定处理所判定出的上述版本,来进行决定构成该2维码的各数据像元的数据值的数据像元切出处理,对由该数据像元切出处理决定的数据像元的数据值,根据预定的规则,进行特定该2维码的信息的解码处理。
2.权利要求1中记载的2维码读取装置,其特征在于在检测上述定位图形(F)的位置时,将具有与由白与黑的固有的上述第1图形组成的上述定位图形(F)近似的图形的定位图形(F)的候选作为候选定位图形从上述输入图像中抽出多个,并分别对所抽出的多个上述候选定位图形从水平方向、垂直方向及斜向这3个方向分别检测出横切各候选定位图形的扫描线上的白与黑所组成的图形的构成比,将在各方向检测出的白与黑所组成的各图形的构成比与作为上述定位图形(F)预定的白与黑所组成的固有的上述第1图形的构成比进行比较,由此计算出表示与上述第1图形的近似度的评估值,从所抽出的多个上述候选定位图形中,按上述评估值表示的近似度从大到小的候选定位图形的顺序,作为上述定位图形(F)来选择规定的个数,检测出所选择的规定个数的上述定位图形(F)各自的位置。
3.权利要求2中记载的2维码读取装置,其特征在于在所抽出的多个上述候选定位图形各自的水平方向、垂直方向及斜向的任意一个方向中,在表示与上述定位图形(F)固有的上述第1图形的近似度的上述评估值超出预先设定的阈值,被作为表示不近似的值计算出的场合下,将该候选定位图形从上述定位图形(F)的候选中删除。
4.权利要求3中记载的2维码读取装置,其特征在于上述阈值可根据2维码的种类及用途以及输入图像的图像质量,预先设定成使用者所希望的任意值。
5.权利要求2至4任一中记载的2维码读取装置,其特征在于在被多个抽出的上述候选定位图形中,图形互相接近重合的位置上的上述候选定位图形被抽出的场合下,将互相重合位置上的多个上述候选定位图形统一作为一个候选定位图形,对统一前的各上述候选定位图形的上述评估值进行合计,作为被统一了的候选定位图形的评估值重新设定。
6.权利要求2至4任一中记载的2维码读取装置,其特征在于在被多个抽出的上述候选定位图形各自的水平方向、垂直方向及斜向的任意一个方向中,在表示上述候选定位图形的大小的幅度与被作为表示上述定位图形(F)的大小的值所预定的固有幅度之差超出预定的容许值的场合下,将该候选定位图形从上述定位图形(F)的候选中删除。
7.权利要求6中记载的2维码读取装置,其特征在于上述容许值可根据2维码的种类及用途以及输入图像的图像质量,预先设定成使用者所希望的任意值。
8.权利要求2至4任一中记载的2维码读取装置,其特征在于作为表示所检测出的上述定位图形(F)的大小的幅度,采用水平方向幅度、垂直方向幅度及斜向幅度这3个方向的幅度的平均值。
9.权利要求1至4任一中记载的2维码读取装置,其特征在于基于表示所检测出的上述定位图形(F)的大小的幅度,来决定表示构成该2维码的像元的大小的像元尺寸。
10.权利要求1至4任一中记载的2维码读取装置,其特征在于在判定上述版本时,基于所检测出的多个上述定位图形(F)之间的间隔及表示基于表示上述定位图形(F)的大小的幅度所导出的像元大小的像元尺寸,来计算构成该2维码的像元数,由此判定该2维码的版本。
11.权利要求10中记载的2维码读取装置,其特征在于具备版本登录表,其表示2维码的版本与构成由该版本决定的2维码的登录像元数的对应,基于所计算出的上述像元数,对上述版本登录表进行索引,将具有一致或最接近的值的上述登录像元数及与该登录像元数对应的版本作为构成该2维码的像元数及版本来判定。
12.权利要求1至4任一中记载的2维码读取装置,其特征在于在基于所检测出的多个上述定位图形(F)各自的坐标位置,判定输入图像中该2维码的方向是否处于旋转状态的同时,在判定为正在旋转的场合下,计算该2维码的旋转角度。
13.权利要求1至4任一中记载的2维码读取装置,其特征在于在检测上述排位图形(P)的位置时,通过检测上述输入图像中的上述定位图形有无倾斜,来检测上述输入图像中的该2维码各边有无倾斜,根据各边的倾斜及上述定位图形(F)的中心点坐标位置,来决定成为对探索上述输入图像中的上述排位图形(P)的探索范围(PR)进行指定的基准位置的探索基准点(H),将根据所决定的该探索基准点(H)预定的位置上的探索范围(PR)的部分图像从上述输入图像切出,从该部分图像内抽出由上述第2图形组成的上述排位图形(P),由此来检测上述排位图形(P)的位置。
14.权利要求13中记载的2维码读取装置,其特征在于在检测上述输入图像中的上述定位图形(F)有无倾斜时,对该定位图形(F)的像素进行扫描,来检测形成上述定位图形(F)所在的该2维码的边的一部分且构成该定位图形(F)的外轮廓的各像素的坐标位置中至少2个像素的坐标位置,由此检测该定位图形(F)有无倾斜。
15.权利要求13中记载的2维码读取装置,其特征在于在决定上述探索基准点(H)时,将通过形成该2维码的边的一部分的上述定位图形(F)的中心点的坐标位置、与该2维码的上述边平行的直线与相对该定位图形(F)位于该2维码内的对角,通过形成该2维码的其它边的一部分的其它上述定位图形(F)的中心点的坐标位置、与上述其它边平行的直线的交点作为成为对探索上述排位图形(P)的上述探索范围(PR)进行指定的基准位置的上述探索基准点(H)来决定。
16.权利要求13中记载的2维码读取装置,其特征在于上述探索范围(PR)以从上述探索基准点(H)离开预测为配置有上述排位图形(P)的中心点的预定距离的位置作为预测中心坐标,从该预测中心坐标至少保持2个像元尺寸的余量,作为包含上述排位图形(P)固有的上述第2图形的充足的区域。
17.权利要求13中记载的2维码读取装置,其特征在于具备在从上述部分图像内抽出上述排位图形(P)时,与上述排位图形(P)固有的上述第2图形所具有的各像素的特征一致的模板,通过边使该模板与上述部分图像偏移1个像素单位边进行模板匹配,来从上述部分图像内抽出由上述第2图形组成的上述排位图形(P)。
18.权利要求17中记载的2维码读取装置,其特征在于在上述输入图像中该2维码的方向处于旋转状态的场合下,基于所旋转的旋转角度,对上述探索基准点(H)的坐标位置实施旋转修正,由此将所指定的上述探索范围(PR)的部分图像从上述输入图像切出,对所切出的该部分图像基于上述旋转角度来实施旋转修正,然后边使旋转修正了的上述部分图像偏移1个像素单位边进行上述模板匹配,抽出上述排位图形(P),由此来检测上述排位图形(P)的位置。
19.权利要求17中记载的2维码读取装置,其特征在于作为进行上述模板匹配处理的对象的上述部分图像是从进行2进制处理之前的状态下的上述输入图像切出的部分图像。
20.权利要求19中记载的2维码读取装置,其特征在于在进行上述模板匹配处理时,边在上述部分图像内按1个像素单位依次偏移边计算出上述模板与上述部分图像分别对应的各像素的像素值的差分绝对值总和,将该绝对值总和成为最小的上述部分图像内的位置作为上述排位图形(P)的坐标位置来决定。
21.权利要求1至4任一中记载的2维码读取装置,其特征在于在进行决定构成该2维码的各数据像元的数据值的上述数据像元切出处理时,作为特定上述数据像元位置的位置特定处理,基于检测出的上述定位图形(F)的中心点的像元位置、上述排位图形(P)的中心点的像元位置、由所判定出的上述版本决定的该2维码的像元数,来计算将该2维码的各数据像元的像元中心位置转换为上述输入图像中的坐标位置的坐标转换式的转换系数,利用采用了所计算出的该转换系数的上述坐标转换式,将各数据像元的像元中心位置转换为上述输入图像中的坐标位置,对与各数据像元的像元中心位置对应的坐标位置进行特定,基于由上述位置特定处理所特定的坐标位置的浓度,来决定各数据像元的数据值,进行各数据像元的切出。
22.权利要求21中记载的2维码读取装置,其特征在于在进行决定构成该2维码的各数据像元的数据值的上述数据像元切出处理时,与由上述位置特定处理所特定的数据像元的像元中心位置对应的上述输入图像中的坐标位置的浓度在与所特定的数据像元的像元中心位置对应的上述输入图像中的坐标位置存在像素的场合下,是从存在于该坐标位置的该像素的像素值获得的浓度,另一方面,在与所特定的数据像元的像元中心位置对应的上述输入图像中的坐标位置不存在像素的场合下,是从与该坐标位置邻接的周边各像素的像素值进行线性内插而获得的浓度,而且各数据像元的数据值通过将与各数据像元的像元中心位置对应的上述输入图像中的坐标位置的上述浓度与用于识别各数据像元的数据值的明暗阈值进行比较来决定。
23.权利要求22中记载的2维码读取装置,其特征在于用于识别各数据像元的数据值的上述明暗阈值基于位于该2维码对角线上的上述输入图像中的像素的像素值来设定。
24.权利要求23中记载的2维码读取装置,其特征在于上述明暗阈值被设定成位于该2维码对角线上的上述输入图像中的全部像素的像素值中,最大值与最小值的中间值。
25.权利要求1至4任一中记载的2维码读取装置,其特征在于在不能正确进行上述数据像元切出处理,该2维码读取失败的场合下,将在上述版本的判定处理中所判定的版本偏移1个等级,再次重复进行上述数据像元切出处理。
26.一种内置了照相机(8)的便携终端,其特征在于具有权利要求1至4任一中记载的2维码读取装置。
27.一种数字照相机,其特征在于具有权利要求1至4任一中记载的2维码读取装置。
28.一种2维码读取方法,其将通过将记录有2进制数据的数据像元配置为纵向及横向2维状来表示各种信息的2维码从输入图像中读取,其特征在于上述2维码具备定位图形(F),其为特定上述输入图像中的该2维码的位置,被配置到该2维码内规定的多个位置,并由固有的第1图形组成;排位图形(P),其被配置到上述2维码内与该定位图形(F)不同的规定位置,并由不同于上述定位图形(F)固有的上述第1图形的第2图形组成,基于来自针对上述输入图像的多个方向的扫描结果,进行从上述输入图像中检测分别配置在规定的多个位置的多个上述定位图形(F)的位置的处理,此外基于所检测出的上述定位图形(F),进行检测上述排位图形(P)的位置的处理,此外,基于所检测出的上述定位图形(F),进行决定构成该2维码的像元数的版本的判定处理,基于所检测出的上述定位图形(F)的位置、上述排位图形(P)的位置和由上述版本的判定处理所判定出的上述版本,来进行决定构成该2维码的各数据像元的数据值的数据像元切出处理,对由该数据像元切出处理决定的数据像元的数据值,根据预定的规则,进行特定该2维码的信息的解码处理。
29.权利要求28中记载的2维码读取方法,其特征在于在检测上述定位图形(F)的位置时,将具有与由白与黑的固有的上述第1图形组成的上述定位图形(F)近似的图形的定位图形(F)的候选作为候选定位图形从上述输入图像中抽出多个,并分别对所抽出的多个上述候选定位图形从水平方向、垂直方向及斜向这3个方向分别检测出横切各候选定位图形的扫描线上的白与黑所组成的图形的构成比,将在各方向检测出的白与黑所组成的各图形的构成比与作为上述定位图形(F)预定的白与黑所组成的固有的上述第1图形的构成比进行比较,由此计算出表示与上述第1图形的近似度的评估值,从所抽出的多个上述候选定位图形中,按上述评估值表示的近似度从大到小的候选定位图形的顺序,作为上述定位图形(F)来选择规定的个数,检测出所选择的规定个数的上述定位图形(F)各自的位置。
30.权利要求28或29中记载的2维码读取方法,其特征在于在判定上述版本时,基于检测出的多个上述定位图形(F)之间的间隔、表示基于表示上述定位图形(F)的大小的幅度而导出的像元的大小的像元尺寸,来计算构成该2维码的像元数,由此来判定该2维码的版本。
31.权利要求28或29中记载的2维码读取方法,其特征在于在检测上述排位图形(P)的位置时,通过检测上述输入图像中的上述定位图形(F)有无倾斜,来检测上述输入图像中的该2维码各边有无倾斜,根据各边的倾斜及上述定位图形(F)的中心点坐标位置,来决定成为对探索上述输入图像中的上述排位图形(P)的探索范围(PR)进行指定的基准位置的探索基准点(H),将根据所决定的该探索基准点预定的位置上的探索范围的部分图像从上述输入图像切出,从该部分图像内抽出由上述第2图形组成的上述排位图形(P),由此来检测上述排位图形(P)的位置。
32.权利要求31中记载的2维码读取方法,其特征在于具备在从上述部分图像内抽出上述排位图形(P)时,与上述排位图形(P)固有的上述第2图形所具有的各像素的特征一致的模板,通过边使该模板与上述部分图像偏移1个像素单位边进行模板匹配,来从上述部分图像内抽出由上述第2图形组成的上述排位图形(P)。
33.权利要求32中记载的2维码读取方法,其特征在于在上述输入图像中该2维码的方向处于旋转状态的场合下,基于所旋转的旋转角度,对上述探索基准点(H)的坐标位置实施旋转修正,由此将所指定的上述探索范围(PR)的部分图像从上述输入图像切出,对所切出的该部分图像基于上述旋转角度来实施旋转修正,然后边使旋转修正了的上述部分图像偏移1个像素单位边进行上述模板匹配,抽出上述排位图形(P),由此来检测上述排位图形(P)的位置。
34.权利要求32中记载的2维码读取方法,其特征在于作为进行上述模板匹配处理的对象的上述部分图像是从进行2进制处理之前的状态下的上述输入图像切出的部分图像。
35.权利要求28或29中记载的2维码读取方法,其特征在于在进行决定构成该2维码的各数据像元的数据值的上述数据像元切出处理时,作为特定上述数据像元位置的位置特定处理,基于检测出的上述定位图形(F)的中心点的像元位置、上述排位图形(P)的中心点的像元位置、由所判定出的上述版本决定的该2维码的像元数,来计算将该2维码的各数据像元的像元中心位置转换为上述输入图像中的坐标位置的坐标转换式的转换系数,利用采用了所计算出的该转换系数的上述坐标转换式,将各数据像元的像元中心位置转换为上述输入图像中的坐标位置,对与各数据像元的像元中心位置对应的坐标位置进行特定,基于由上述位置特定处理所特定的坐标位置的浓度,来决定各数据像元的数据值,进行备数据像元的切出。
36.权利要求35中记载的2维码读取方法,其特征在于在进行决定构成该2维码的各数据像元的数据值的上述数据像元切出处理时,与由上述位置特定处理所特定的数据像元的像元中心位置对应的上述输入图像中的坐标位置的浓度在与所特定的数据像元的像元中心位置对应的上述输入图像中的坐标位置存在像素的场合下,是从存在于该坐标位置的该像素的像素值获得的浓度,另一方面,在与所特定的数据像元的像元中心位置对应的上述输入图像中的坐标位置不存在像素的场合下,是从与该坐标位置邻接的周边各像素的像素值进行线性内插而获得的浓度,而且各数据像元的数据值通过将与各数据像元的像元中心位置对应的上述输入图像中的坐标位置的上述浓度与用于识别各数据像元的数据值的明暗阈值进行比较来决定。
37.权利要求36中记载的2维码读取方法,其特征在于用于识别各数据像元的数据值的上述明暗阈值基于位于该2维码对角线上的上述输入图像中的像素的像素值来设定。
38.一种2维码读取程序,其特征在于由可通过计算机使权利要求28或29中记载的2维码读取方法执行的程序码来记述。
39.一种计算机可读取的记录媒体,其特征在于记录有权利要求38中记载的2维码读取程序。
全文摘要
在具有由2维状数据组成的数据像元(记为DC)和位置决定用的定位图形(记为FP)及排位图形(记为AP)的2维码的输入时,根据水平·垂直·斜向这3个方向的图形来评估近似度,检测出FP的位置,对部分图像进行了旋转修正后来进行模板匹配,检测出AP的位置,根据FP的幅度及位置来计算像元数以至决定版本,根据FP与AP的位置及版本来求出将DC的位置转换为坐标位置的坐标转换式,切出DC,对所切出的DC的排列进行解码以读取2维码。
文档编号G06K7/01GK1492661SQ0313316
公开日2004年4月28日 申请日期2003年7月18日 优先权日2002年7月18日
发明者村松健晴 申请人:夏普株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1