发明内容
本发明的目的在于提供一种条码扫描装置及条码扫描装置的处理方法,已解决上述问题。
第一方面,本发明提供一种条码扫描装置,用以扫描物件中的目标物件以定位条码并分析该条码的资讯,包含:补光灯、影像撷取模组以及处理器。该补光灯用以发出补强光。该影像撷取模组用以撷取包含该物件的至少一张原始影像,以及在该补强光下撷取第二影像。该处理器耦接该影像撷取模组与该补光灯,该处理器根据该至少一张原始影像产生该物件的深度资讯,根据该深度资讯控制该补光灯所发出的该补强光的强度,控制该影像撷取模组于该补光灯发出该补强光时撷取该第二影像,根据该深度资讯得出该目标物件在该深度资讯中对应的目标资讯,将该目标资讯对应到该第二影像以得到目标影像,及根据该目标影像定位该条码,以分析该条码的资讯。
较佳的,该影像撷取模组包含:第一影像撷取单元以及第二影像撷取单元;该第一影像撷取单元用以撷取包含该物件的第一影像及该第二影像;该第二影像撷取单元,用以撷取包含该物件的第三影像;第二影像撷取单元,用以撷取包含该物件的第三影像。
较佳的,该影像撷取模组包含:投射装置、第一影像撷取单元以及第二影像撷取单元;该投射装置用以投射图案于该物件上;该第一影像撷取单元用以撷取包含该物件及该图案的第一影像;该第二影像撷取单元用以撷取包含该物件的该第二影像;其中,该至少一张原始影像包含该第一影像。
较佳的,该深度资讯包含多个像素以及与该多个像素对应的多个深度,该处理器由该多个像素中决定中心像素,该目标资讯至少包含该中心像素与该中心像素所对应的深度,该处理器比较该中心像素所对应的深度以及在该目标资讯外且与该目标资讯内的像素相邻的各像素所对应的深度,若在该目标资讯外且与该目标资讯内的像素相邻的像素所对应的深度与该中心像素所对应的深度相差小于预定值,则将该像素与该像素所对应的深度加入该目标资讯中。
较佳的,该处理器是根据该深度资讯中属于该目标资讯的各该像素所对应的该深度的平均深度控制该补光灯发出该补强光的强度,及当该平均深度越大时,该补强光的强度越强。
较佳的,该处理器还用以计算属于该目标资讯的像素所对应的深度中的最大深度与最小深度的差值;当该差值大于邻界值时,根据该深度资讯对该目标影像进行影像校正以产生校正后目标影像,该处理器根据该校正后目标影像定位该条码。
第二方面,本发明提供一种条码扫描装置的处理方法,用以扫描物件中的目标物件以得到条码,该方法包含:
撷取包含该物件的至少一张原始影像;
根据该至少一张原始影像产生该物件的深度资讯;
根据该深度资讯得出该目标物件在该深度资讯中对应的目标资讯;
根据该深度资讯发出强度受控制的补强光;
在受控制的该补强光的强度下撷取包含该物件的第二影像;
将该目标资讯对应到该第二影像以得到目标影像;及
根据该目标影像定位条码,以分析该条码的资讯。
较佳的,撷取包含该物件的该至少一张原始影像的步骤包含由不同视角撷取第一影像与第三影像;其中,该深度资讯是根据该第一影像及该第三影像所产生的。
较佳的,撷取包含该物件的该至少一张原始影像的步骤包含:
投射图案于该物件上;及
撷取包含该物件及该图案的第一影像;
其中,该深度资讯是根据该第一影像所产生的。
较佳的,该深度资讯包含多个像素以及与该多个像素对应的多个深度,根据该深度资讯得出该目标物件在该深度资讯中对应的该目标资讯包含:
由该多个像素中决定中心像素;
将该中心像素与该中心像素所对应的深度加入该目标资讯;
比较该中心像素对应的深度以及在该目标资讯外且与该目标资讯内的像素相邻的各像素所对应的深度;及
若在该目标资讯外且与该目标资讯内的像素相邻的像素所对应的深度与该中心像素所对应的深度相差小于预定值,则将该像素与该像素所对应的深度加入该目标资讯中,直到在该目标资讯外且与该目标资讯内的像素相邻的该各该像素所对应的深度与该中心像素所对应的深度相差不小于该预定值为止。
较佳的,根据该深度资讯发出强度受控制的该补强光的步骤包含:
计算该深度资讯中属于该目标资讯的像素所对应的深度的平均深度;及
根据该平均深度发出受控制的该补强光;
其中,该平均深度越大时,受控制的该补强光强度越强。
较佳的,还包含:
计算属于该目标资讯的像素所对应的深度中的最大深度与最小深度的差值;
当该差值大于邻界值时,根据该深度资讯对该目标影像进行影像校正以产生校正后目标影像;及
根据该校正后目标影像中定位该条码。
与现有技术相比,本发明的实施例所提供的条码扫描装置及码扫描装置的处理方法可根据深度资讯来调整补强光的强度以避免因为补强光被反射而导致条码不易辨识的问题,亦可通过深度资讯来取得目标影像,以减少因背景复杂导致条码辨识过于耗时的问题。此外,亦可利用深度资讯来校正目标影像以避免因为物体表面不平整而导致条码辨识失真的问题。
具体实施方式
为使对本发明的目的、构造、特征、及其功能有进一步的了解,兹配合实施例详细说明如下。
图1为本发明一实施例的条码扫描装置100的示意图,图2为物件10的示意图。物件10包含子物件101、102及103,条码扫描装置100可用以扫描物件10中的目标物件102以定位条码12并分析条码12的资讯。条码扫描装置100包含补光灯110、影像撷取模组120以及处理器130。补光灯110可用以发出补强光至物件10,使得条码扫描装置100不致因为环境光源不足,而无法辨识条码12的影像及其资讯。影像撷取模组120可用以撷取包含物件10的原始影像A。处理器130耦接于影像撷取模组120与补光灯110,处理器130根据原始影像A产生物件10的深度资讯。
图3为本发明一实施例的影像撷取模组120的示意图。影像撷取模组120可包含投射装置122、第一影像撷取单元124及第二影像撷取单元126。投射装置122可用以投射图案于物件10上,投射装置122所投射的图案可例如具有网格形状的图案。第一影像撷取单元124可用以撷取包含物件10及投射装置122所投射的图案的第一影像,而处理器130即可根据第一影像作为原始影像A以产生物件10的深度资讯。由于网格形状的图案经投射后会因为反射表面距离投射装置122的远近不同,而产生大小不同的形变,因此可依形变的结果来换算表面距离投射装置122的深度。图4为本发明一实施例的第一影像A1,第一影像A1包含物件10的子物件101、102及103,而物件101较靠近投射装置122的部分且所反射的图案128具有较小的网格间距,物件103较远离投射装置122的部分且所反射的图案128则具有较大的网格间距;如此一来,处理器130即可根据第一影像A1中网格之间距大小不同,换算出物件10的深度资讯。在其他实施例中,图案128亦可为其他结构光源(structured light)所形成的图案,而不限于网格形状的图案,例如Microsoft Kinect所提出的散斑图案,来计算物件10的深度资讯。此外,在本发明一实施例中,投射装置122所投射的图案128可为红外光的图案,而第一影像撷取单元124可撷取至少包含红外光及可见光的波长的光并将其转换为电讯号,第二影像撷取单元126可撷取至少包含可见光的波长的光并将其转换为电讯号。
在本发明的一实施例中,由于影像撷取模组120可在很短暂的时间内连续撷取原始影像及第二影像,因此处理器130根据原始影像所产生的深度资讯可对应到第二影像内的像素。图5A说明本发明一实施例的第二影像B,图5B说明本发明一实施例的深度资讯D的内容,其中第二影像B可包含多个像素b(1,1)至b(m,n)及每一个像素所对应的灰阶值,而深度资讯D可包含多个像素d(1,1)至d(m,n)以及与每一像素对应的深度,在图5A及图5B中m及n皆为13,然而在其他实施例中,m及n亦可为其他正整数,且m可不等于n。在图5A中,位于第二影像B中第i栏第j行的像素b(i,j)可对应至图5B中位于深度资讯D中第i行第j栏的像素d(i,j),其中i为不大于m的正整数,而j为不大于n的正整数。然而本发明中第二影像B与深度资讯D的对应关系并不以此为限。例如第二影像B的解析度可不同于深度资讯D的解析度,此时则第二影像B与深度资讯D的像素对应关系则可能为一对多或多对一。此外,在原始影像A及第二影像B的撷取过程中亦可能有些微位移,导致第二影像B所包含的多个像素b(i,j)可能会对应到深度资讯D的像素b(i+1,j)、b(i-1,j)等而非对应至b(i,j)。
在图5A中,第二影像B的b(1,1)至b(m,n)中的每一个像素所呈现的颜色深浅表示其灰阶值的大小,而在图5B中深度资讯D的d(1,1)至d(m,n)中的每一个像素所呈现的颜色深浅表示其深度的大小。举例来说,由于第二影像B的像素b(8,10)所呈现的颜色较第二影像B的像素b(7,7)为深,因此第二影像B的像素b(8,10)的灰阶值较第二影像B的像素b(7,7)的灰阶值为小。深度资讯D的像素d(7,7)所呈现的颜色较深度资讯D的像素d(8,10)为深,因此深度资讯D的像素d(7,7)的深度较深度资讯D的像素d(8,10)的深度为深,然而图5B仅为说明深度资讯D的内容,并非用以限定本发明。在本发明的另一实施例中,深度资讯D亦可仅纪录多个像素d(1,1)至d(m,n)及其所对应的深度,如图6所示,而无须以图像的方式呈现,且亦无需限定为以表格呈现,而可以其他方式储存。此外,在图6中,深度资讯D中的深度是以图5B中深度资讯D所呈现的图像的灰阶值表示,因此0表示距离最远,深度最大,而255则表示距离最近,深度最小,然而本发明并不以此为限。
取得深度资讯D之后,处理器130可根据深度资讯D控制补光灯110所发出的补强光的强度,而影像撷取模组120可用以在补强光下撷取第二影像B。此外,处理器130可根据深度资讯D得出目标物件102在深度资讯D中对应的目标资讯Td,并将目标资讯Td对应到第二影像B以得到目标影像Ti,最后即可根据目标影像Ti定位条码12,以分析条码12的资讯。
在本发明的一实施例中,处理器130可自深度资讯D的多个像素d(1,1)至d(m,n)中决定其中心像素。举例来说,根据使用者的习惯,一般在撷取第二影像时,可能会将具有条码12的目标物件102置于画面中央,因此处理器130可将位于第二影像B中心点的像素b(u,v)所对应的深度资讯D的像素d(u,v)作为其中心像素。为方便使用者瞄准目标物件102,在本发明一实施例中,条码扫描装置100可还包含雷射光投影装置,雷射光投影装置可用以投射图案至物件10上以指示影像的中心位置,如此一来,使用者便可将投射图案对准目标物件102,以确保目标物件102将位于影像的中心位置。
确定中心像素之后,处理器130可将中心像素d(u,v)及其所对应的深度加入目标资讯Td,并可自中心像素d(u,v)继续向外扩张目标资讯Td的范围。更进一步地说,当目标资讯Td仅包含中心像素d(u,v)及其对应的深度时,处理器130可比较中心像素d(u,v)所对应的深度以及与中心像素d(u,v)相邻的像素d(u-1,v)、d(u,v-1)、d(u+1,v)及d(u,v+1)所对应的深度,若与中心像素d(u,v)相邻的像素d(u-1,v)、d(u,v-1)、d(u+1,v)及d(u,v+1)所对应的深度与中心像素所对应的深度d(u,v)所对应的深度相差小于预定值,则处理器130将其像素及其所对应的深度加入目标资讯Td中。举例来说,在图5B中,中心像素d(7,7)所对应的深度为141,而与中心像素d(7,7)相邻的像素d(6,7)、d(7,6)、d(8,7)及d(7,8)所对应的深度分别为142、139、140及205。此时由于像素d(6,7)与中心像素d(7,7)的深度差为1,像素d(7,6)与中心像素d(7,7)的深度差为2,像素d(8,7)与中心像素d(7,7)的深度差为1,像素d(7,8)与中心像素d(7,7)的深度差为64。若预定值为20,则由于像素d(6,7)、d(7,6)、d(8,7)的深度与中心像素d(7,7)的深度相差皆小于20,表示像素d(6,7)、d(7,6)、d(8,7)可能与中心像素d(7,7)是位于同一平面,因此处理器130即可将像素d(6,7)、d(7,6)、d(8,7)及其所对应的深度加入目标资讯Td中。相对地,由于中心像素d(7,7)所对应的深度与像素d(7,8)所对应的深度相差超过了预定值20,表示两者的深度差距较大,因此可能是位于相异的平面上,而不应将像素d(7,8)加入目标资讯Td中。利用相同的流程,处理器130即可继续比较中心像素d(7,7)以及在目标资讯Td外且与目标资讯Td内的像素d(6,7)、d(7,6)及d(8,7)相邻的各像素d(5,7)、d(6,6)、d(7,5)、d(8,6)、d(9,7)、d(8,8)及d(6,8)所对应的深度,若在目标资讯Td外且与目标资讯Td内的像素d(6,7)、d(7,6)及d(8,7)相邻的像素d(5,7)、d(6,6)、d(7,5)、d(8,6)、d(9,7)及d(6,8)所对应的深度与中心像素d(7,7)所对应的深度相差小于预定值20,例如像素d(5,7)、d(6,6)、d(7,5)、d(8,6)、d(9,7)及d(6,8)所对应的深度与中心像素d(7,7)所对应的深度相差皆小于预定值20,即可将像素d(5,7)、d(6,6)、d(7,5)、d(8,6)、d(9,7)及d(6,8)与其所对应的深度加入目标资讯Td中。依此流程,直到目标资讯Td外且与目标资讯Td内的像素相邻的各像素所对应的深度与中心像素d(7,7)所对应的深度相差不小于预定值20为止。此时,目标影像Ti即为第二影像B中的目标物件102所呈现的范围,如此一来,处理器130即可在目标资讯Td对应到第二影像B的目标影像Ti中来定位条码12的位置并分析条码12的资讯,而无须在整张第二影像B当中定位条码12的位置,而得以节省辨识条码的时间。
在本发明一实施例中,处理器130尚可根据深度资讯D中属于目标资讯Td的各像素d(1,1)至d(m,n)所对应的深度的平均深度来控制补光灯110发出补强光的强度。举例而言,为避免因距离过近时,目标物件102反射补强光反而导致条码12难以辨识的情况,处理器130可在平均深度越大时,使补强光的强度越强。在本发明的一实施例中,处理器130可利用对照表来决定平所需补强光的强度。表1为本发明一实施例的对照表,当平均深度的灰阶值小于或等于25时,表示目标物件102距离条码扫描装置甚远,因此补强光的强度将设为最大强度100,当平均深度的灰阶值为151至149时,补强光的强度为60,而当平均深度的灰阶值为255时,表示目标物件102距离条码扫描装置非常近,因此补强光的强度设为30,以避免因距离过近时,目标物件102反射补强光反而导致条码12难以辨识的情况。
表1
目标资讯Td的平均深度 |
补光灯强度 |
255 |
30 |
255 |
30 |
253 |
30 |
… |
… |
151 |
60 |
150 |
60 |
149 |
60 |
… |
… |
26 |
95 |
<=25 |
100 |
在本发明的一实施例中,处理器130可还用以计算属于目标资讯Td的各像素d(1,1)至d(m,n)所对应的深度中的最大深度与最小深度的差值,而当差值大于邻界值时,表示条码12可能是位于曲面或是斜面上,导致目标资讯Td的深度并不平均。此时若直接对所撷取到的第二影像B的目标影像Ti进行条码定位,则可能因为条码影像的形变,而产生误判。因此,处理器130可根据深度资讯D的目标资讯Td对目标影像Ti进行影像校正以产生校正后目标影像,而处理器130即可根据校正后目标影像定位条码12。举例而言,图7为本发明一实施例的目标影像Ti及校正后目标影像Fi。在图7中,目标影像Ti的条码12位于斜面上,导致条码12距离条码扫描装置100较远的部分122所显示的影像较小,而条码12距离条码扫描装置100较近的部分121所显示的影像较大。处理器130即可利用目标资讯Td取得目标影像Ti所对应的深度,若条码12距离条码扫描装置100较远的部分122对应到目标资讯Td中的最大深度dmax,而条码12距离条码扫描装置100较近的部分121对应到目标资讯Td中的最小深度dmin,且最大深度dmax与最小深度dmin的差值大于临界值,则表示条码12受形变的影响较为严重,此时处理器130可利用目标资讯Td取得目标影像Ti的斜面角度以将目标影像Ti还原至校正后目标影像Fi,校正后目标影像Fi中的条码12’即呈现正常的比例。如此即可避免处理器130误判条码中的资讯。
在本发明其他实施例中,处理器130亦可利用其他原理如透视投射(perspectiveprojection)来校正目标影像Ti以产生校正后目标影像Fi。如此一来,即可避免因为条码12位于曲面或斜面而辨识不易导致误判的问题。
图8为本发明一实施例的影像撷取模组220的示意图。影像撷取模组220可包含第一影像撷取单元222及第二影像撷取单元224。第一影像撷取单元222可用以撷取包含物件10的第一影像A'1及第二影像B’,第二影像撷取单元224可用以撷取包含物件10的第三影像A’3。由于第一影像撷取单元222及第二影像撷取单元224可由不同的位置分别撷取第一影像A’1及第三影像A’3,因此第一影像A’1及第三影像A’3可各自呈现物件10不同角度的影像。亦即可将第一影像A’1及第三影像A’3类比为人类双眼所见的影像。如此一来,即可利用双眼视觉(Stereo vision)的演算法,根据第一影像A’1及第三影像A’3的角度差异来进行内差运算取得物件10的深度资讯。由于影像撷取模组220亦可取得影像的深度资讯,因此在本发明的另一实施例中,影像撷取模组220可取代影像撷取模组120。亦即,可将第一影像A’1及第三影像A’3作为原始影像A以提供处理器130产生的深度资讯D,并将第二影像B’作为处理器130所需的第二影像B。
综上所述,通过条码扫描装置100中影像撷取模组120所撷取的原始影像A,处理器130可取得深度资讯D,因此得以根据深度资讯D来调整补强光的强度以避免因为补强光反射而导致条码12不易辨识,并可通过深度资讯D来取得目标影像Ti,以减少因背景复杂导致条码12辨识过于耗时的问题。此外,条码扫描装置100尚可利用深度资讯D来校正目标影像Ti以避免因为物体表面不平整而导致条码12辨识失真的问题。
图9为本发明一实施例中,条码扫描装置100的处理方法300的流程图。处理方法300可用以扫描物件10中的目标物件102以定位条码12并分析条码12的资讯。处理方法300包含步骤S310至S370:
S310:撷取包含物件的原始影像A;
S320:根据原始影像A产生物件的深度资讯D;
S330:根据深度资讯D得出目标物件102在深度资讯D中对应的目标资讯Td;
S340:根据深度资讯D发出强度受控制的补强光;
S350:在受控制的补强光的强度下撷取包含物件10的第二影像B;
S360:将目标资讯Td对应到第二影像B以得到目标影像Ti;
S370:根据目标影像Ti定位条码12,以分析条码12的资讯。
在本发明一实施例中,步骤S330可包含步骤S331至S335,图10即为步骤S331至S335的流程图:
S331:由深度资讯D中的多个像素d(1,1)至d(m,n)中决定中心像素d(u,v);
S332:将中心像素d(u,v)与中心像素d(u,v)所对应的深度加入目标资讯Td;
S333:比较中心像素d(u,v)对应的深度以及在目标资讯Td外且与目标资讯Td内的像素相邻的像素所对应的深度;
S334:若在目标资讯Td外且与目标资讯Td内的像素相邻的像素d(i,j)所对应的深度与中心像素d(u,v)所对应的深度相差小于预定值,则进入步骤S335,否则进入S340;
S335:将像素d(i,j)与其所对应的深度加入目标资讯Td中,并返回步骤S333。
其中步骤S333至S335将会不断重复,直到目标资讯Td外且与目标资讯Td内的像素相邻的各像素所对应的深度与中心像素d(u,v)所对应的深度相差不小于预定值为止。
在本发明的一实施例中,步骤S340可包含步骤S341至S342。图11即为步骤S341至S342的流程图:
S341:计算深度资讯D中属于目标资讯Td的各像素所对应的深度的平均深度;
S342:根据平均深度发出受控制的补强光;
在步骤S342中,当平均深度越大时,受控制的补强光强度越强。
在本发明又一实施例中,方法300尚可包含步骤S371至S373,图12说明S371至S373的流程图:
S371:计算属于目标资讯Td的各像素所对应的深度中的最大深度与最小深度的差值;
S372:当差值大于邻界值时,根据深度资讯Td对目标影像Ti进行影像校正以产生校正后目标影像Fi;
S373:根据校正后目标影像Fi中定位条码12。
通过条码扫描装置的处理方法300,即可根据深度资讯D来调整补强光的强度以避免因为补强光反射而导致条码12不易辨识,并可通过深度资讯D来取得目标影像Ti,以减少因背景复杂导致条码12辨识过于耗时的问题。此外,处理方法300尚可利用深度资讯D来校正目标影像Ti以避免因为物体表面不平整而导致条码12辨识失真的问题。
综上所述,本发明的实施例所提供的条码扫描装置及码扫描装置的处理方法可根据深度资讯来调整补强光的强度以避免因为补强光被反射而导致条码不易辨识的问题,亦可通过深度资讯来取得目标影像,以减少因背景复杂导致条码辨识过于耗时的问题。此外,亦可利用深度资讯来校正目标影像以避免因为物体表面不平整而导致条码辨识失真的问题。
本发明已由上述相关实施例加以描述,然而上述实施例仅为实施本发明的范例。必需指出的是,已揭露的实施例并未限制本发明的范围。相反地,在不脱离本发明的精神和范围内所作的更动与润饰,均属本发明的专利保护范围。