CN106557714B - 条形码定位方法、装置和系统,条形码读取方法和装置,图像处理装置 - Google Patents
条形码定位方法、装置和系统,条形码读取方法和装置,图像处理装置 Download PDFInfo
- Publication number
- CN106557714B CN106557714B CN201510621702.6A CN201510621702A CN106557714B CN 106557714 B CN106557714 B CN 106557714B CN 201510621702 A CN201510621702 A CN 201510621702A CN 106557714 B CN106557714 B CN 106557714B
- Authority
- CN
- China
- Prior art keywords
- bar code
- scanning
- width
- scan
- black
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
本发明提供了一种条形码定位方法、装置和系统,条形码读取方法和装置,图像处理装置。条形码定位方法,用于实施定位操作以对文档图像中的预定类型的条形码进行定位,其特征在于,定位操作包括第一扫描步骤,条形码密度计算步骤,上限值计算步骤,条形码起始位置确定步骤,不定步长确定步骤,第二扫描范围设定步骤,第二扫描步骤,条形码终止位置确定步骤。
Description
技术领域
本发明涉及图像处理领域,特别地,涉及一种条形码定位方法,并且还涉及一种条形码定位装置及系统,此外,还涉及条形码读取方法和装置,以及图像处理装置。
背景技术
条形码的使用已经扩散到各行各业,给行业的各类事务的管理带来了极大的便利。
现有技术中,条形码的定位方法有很多中,例如十字扫描法、米字扫描法。这些定位方法通过设定成十字交叉或米字交叉的扫描线,来扫描条形码区域。以米字型条形码为例,如图1所示的米字扫描法的处理示意图,其由三根彼此成45°角的扫描线构成,通过在这个三个方向上的特征点的扫描结果来确定当前区域是否是条形码区域。对于具有一定高度的条形码而言,米字扫描法或是十字扫描法具有较好的效果。
但是,对于在传统制造业中的工单中通常使用的是Code 128型的条形码等,米字扫描法或是十字扫描法的效果则不尽如人意。这是因为,传统制造业中使用的是条形码,这种类型的条形码通常是高度较矮,但是宽度很宽,通俗地讲是所谓“矮胖型”的条形码。当将米字扫描法或是十字扫描法应用到这样的“矮胖型”的条形码的时候,有可能存在识别不出该条形码的问题。因为,在对“矮胖型”的条形码进行识别的时候,45°和135°角的扫描方向上比较难满足阀值,从而导致特征点的丢失。
另一方面,利用米字扫描法,需要进行多个角度的扫描方向上的逐个方向的判断和确认,会导致整体的条形码查找速度的缓慢。
发明内容
本发明提供了一种条形码定位方法,以及条形码定位装置及系统。采用本发明提供的定位方法,以及本发明提供的定位装置通过实施相应的定位方法,定位条形码的速度快,相对于米字和十字星型扫描方法,节省了在多个角度计算特征点的时间,相对于以固定步长的矩形扫描进行条形码识别的方法,在检测到了疑似条形码的时候便开始估算并设定新的扫描范围,并且采用不定步长的扫描方式,这样能更加快速以及更加精确地定位条形码。
根据本发明的一个方面,提供了一种条形码定位方法,实施定位操作以对文档图像中的预定类型的条形码进行定位,该条形码定位方法包括
第一扫描步骤,使用具有第一高度和第一宽度的矩形的第一扫描框,以第一步长在与水平方向成第一扫描角度的第一扫描方向上逐步移动第一扫描框,以整个文档图像为第一扫描范围进行第一扫描方向上的逐行扫描,扫描文档图像中的条形码,第一步长小于第一宽度,
对象确认步骤,当第一扫描框扫描到由黑条和空白交替排列而构成的黑白条纹时,判定扫描到的黑白条纹是否是至少部分的条形码,至少部分的条形码包括至少两组黑条和空白的组合,如果不是,则进行下一步长的扫描;
条形码密度计算步骤,如果在目标确认步骤中判定扫描到的黑白条纹是条形码的至少部分,则按照条形码的密度的计算方法,计算至少部分的条形码的密度,
上限值计算步骤,根据至少部分的条形码的密度以及条形码的预定类型,计算得到至少部分的条形码所在的条形码的宽度的预估上限值,
条形码起始位置确定步骤,确定作为至少部分条形码的黑白条纹中第一根黑条的起始位置,并将第一根黑条的起始位置作为条形码的起始位置;
不定步长确定步骤,确定第一根黑条的结束位置,以及第二根黑条的起始位置和结束位置,并且确定从第一根黑条的结束位置到第二根黑条的起始位置之间的宽度W;
第二扫描范围设定步骤,沿着第一扫描方向设定第二扫描范围,第二扫描范围始于第二根黑条的结束位置,第二扫描范围的宽度等于预估上限值的长度;
第二扫描步骤,在第二扫描范围内,使用具有第二宽度的第二扫描框,以第二根黑条的结束位置为第二扫描框的起始位置,从W/4开始依次尝试以W/4、W/2、W、2W和4W作为第二宽度,进行扫描,当以任一第二宽度在第二扫描框中扫描并判定得到至少部分的条形码时,以当前扫描框的终点为下一次扫描的起始点,进行下一次的扫描,直至扫描框中扫描不到至少部分的条形码;
条形码终止位置确定步骤,当扫描框中扫描不到至少部分的条形码时,则将上一次扫描的获得了至少部分的条形码的第二扫描框的终点,作为条形码的终止位置。
利用以上技术方案,定位条形码的速度快,相对于米字和十字星型扫描方法,节省了在多个角度计算特征点的时间,相对于以固定步长的矩形扫描进行条形码识别的方法,在检测到了疑似条形码的时候便开始估算并设定新的扫描范围,并且采用不定步长的扫描方式,这样能更加快速以及更加精确地定位条形码。
根据本发明的另一个方面,在对象确认步骤中,利用上下对称判定和穿透判定确认扫描到的黑白条纹是否是部分的条形码,其中,上下对称判定通过确认黑白条纹是否是以其高度方向上的中线为对称轴上下对称;及穿透判定通过在扫描到的黑白条纹的部分进行横向上的多次线扫描,判定穿透了预定数量的黑条的扫描线的条数是否超过预定阈值;只有当上下对称判定和穿透判定的判定结果都为是,则判定扫描到的黑白条纹是至少部分的条形码。
利用以上技术方案,能够在确保了被扫描到的疑似条形码确实是条形码之后,再进行后续的操作,利于提高条形码识别的效率。
根据本发明的另一个方面,条形码是code128型条形码,以及
在上限值计算步骤中,先根据以下公式计算条形码的以英寸为单位计的最长宽度L:
L=(11C+35)*X
其中,C是条形码中字符的总数量,取最大值为128,X是与密度对应的条形码的尺寸,单位为英寸,公式(1)中的11和35是常量;
最后根据以英寸为单位计的最长宽度L和文档图像的dpi,得到以像素数为单位的条形码的宽度的预估上限值。
利用以上技术方案,可以对诸如Code128型的矮胖型条形码进行快速和精确的定位。
根据本发明的另一个方面,为第一扫描角度设定初始值,实施定位操作,
如果当前的定位操作未定位到任何的条形码,则在初始值的基础上增加预定量后作为新的第一扫描角度,重新进行定位操作。
利用以上技术方案,可以使得条形码的定位方法适用于文档图像的扫描不规则的情况,或者条形码的设置方向不水平的情况。还适用于,当文档中存在多个条形码而且各个条形码的设置并非都是水平地设置,即平行于文档图像的底边设置的情况。
根据本发明的又一个方面,以预定量为步长逐步增加第一扫描角度的方式循环实施定位操作,直至定位到条形码,或者当第一扫描角度增加到超过了阈值角度后,仍未定位到条形码时,判定文档图像中不存在条形码,停止定位操作。
利用这样的方案,条形码的定位方法可以在找到文档图像的条形码之后,立即停止定位操作;并且在超过预定的搜索量之后,会停止定位操作,而不会无休止地搜索下去,造成资源的浪费。
根据本发明的又一个方面,以预定量为步长逐步增加第一扫描角度的方式循环实施定位操作,直至第一扫描角度增加到超过了阈值角度后,停止定位操作,再列出所有被定位到的条形码。
利用这样的方案,条形码的定位方法适合于在文档中存在多个条形码而且各个条形码的设置位置并非都是水平地设置的情况,能够快速并准确地找到文档图像中的所有条码。
根据本发明的又一个方面,提供了一种条形码读取方法,其包括条形码定位操作和条形码识别操作,其中,条形码定位操作采用如上记载的条形码定位方法进行。根据本发明的再一个方面,提供了一种条形码定位装置,用于实施定位操作以对文档图像中的预定类型的条形码进行定位,其特征在于,包括
第一扫描单元,使用具有第一高度和第一宽度的矩形的第一扫描框,以第一步长在与水平方向成第一扫描角度的第一扫描方向上逐步移动第一扫描框,以整个文档图像为第一扫描范围进行第一扫描方向上的逐行扫描,以扫描文档图像中的条形码,第一步长小于第一宽度,
对象确认单元,当第一扫描框扫描到由黑条和空白交替排列而构成的黑白条纹时,判定扫描到的黑白条纹是否是至少部分的条形码,至少部分的条形码包括至少两组黑条和空白的组合,如果不是,则指令进行下一步长的扫描;
条形码密度计算单元,如果在目标确认单元判定扫描到的黑白条纹是条形码的至少部分,则按照条形码的密度的计算方法计算至少部分的条形码的密度,
上限值计算单元,根据至少部分的条形码的密度以及条形码的预定类型,计算得到至少部分的条形码所在的条形码的宽度的预估上限值,
条形码起始位置确定单元,确定作为至少部分条形码的黑白条纹中第一根黑条的起始位置,并将第一根黑条的起始位置作为条形码的起始位置;
不定步长确定单元,确定第一根黑条的结束位置,以及第二根黑条的起始位置和结束位置,并且确定从第一根黑条的结束位置到第二根黑条的起始位置之间的宽度W;
第二扫描范围设定单元,沿着第一扫描方向设定第二扫描范围,第二扫描范围始于第二根黑条的结束位置,第二扫描范围的宽度等于预估上限值的长度;
第二扫描单元,在第二扫描范围内,使用具有第二宽度的第二扫描框,以第二根黑条的结束位置为第二扫描框的起始位置,从W/4开始依次尝试以W/4、W/2、W、2W和4W作为第二宽度,进行扫描,当以任一第二宽度在第二扫描框中扫描并判定得到至少部分的条形码时,则以当前扫描框的终点为下一次扫描的起始点,进行下一次的扫描,直至扫描框中扫描不到至少部分的条形码;
条形码终止位置确定单元,当扫描框中扫描不到至少部分的条形码时,则将上一次扫描的获得了至少部分的条形码的第二扫描框的终点,作为条形码的终止位置。
根据本发明的再一个方面,提供了一种条形码定位系统,其特征在于,包括
如上所记载的条形码定位装置;
多角度循环扫描控制装置,包括
初始定位部,被配置成为第一扫描角度设定初始值,指示条形码定位装置,实施定位操作,以及
变角度定位部,如果当前的定位操作未定位到任何的条形码,则在初始值的基础上逐步增加预定量后作为新的第一扫描角度,指示条形码定位装置实施新的定位操作。
根据本发明的再一个方面,条形码的定位系统的多角度扫描控制装置进一步包括循环控制部,以预定量为步长逐步增加第一扫描角度的方式循环实施定位操作,直至扫描并定位到条形码,此后循环控制部停止定位操作,或者当第一扫描角度增加到超过了阈值角度后,仍未定位到条形码时,判定文档图像中不存在条形码,停止定位操作。
根据本发明的再一个方面,条形码的定位系统的多角度扫描控制装置,进一步包括循环控制部,以预定量为步长逐步增加第一扫描角度的方式循环实施条形码定位方法直至第一扫描角度增加到超过了阈值角度后,停止定位操作,列出所有被定位到的条形码。
根据本发明的再一个方面,提供了一种条形码读取装置,其包括条形码定位部和条形码识别部,其中,条形码定位部为如上记载的条形码定位装置或如上记载的条形码定位系统。
根据本发明的再一个方面,提供了一种图像处理装置,其包括如上所记载的条形码读取装置。
附图说明
图1示出根据现有技术的米字扫描法的处理示意图。
图2示出根据本发明的第一实施例的条形码定位方法的基本流程图。
图3A示出规则的文档图像和条形码设置以及在水平方向上进行扫描的示意图。
图3B示出不规则的文档图像和条形码设置以及在不水平方向上进行扫描的示意图。
图4A示出条形码识别方法的对象确认步骤中实施的上下对称判定的示意图。
图4B示出条形码识别方法的对象确认步骤中实施的穿透判定的示意图。
图5示出利用条形码识别方法所扫描到的第一个黑白条纹的示意图。
图6示出根据本发明的第三实施例的条形码定位装置的功能框图。
图7示出根据本发明的第六实施例的图像处理装置与其他相关装置构成的图像处理系统的示意图。
具体实施方式
以下结合附图描述根据本发明的具体实施方式。
图2示出根据本发明的第一实施例的条形码定位方法的基本流程图。
如图2所示,根据本发明的第一实施例的条形码定位方法,该方法用于实施定位操作以对文档图像中的预定类型的条形码进行定位。在传统制造业中,常见的有code128型条形码,这也是所谓的矮胖型条形码。为了说明的便利,本实施例以code128型条形码为典型例结合进本发明要交代的条形码定位方法中进行说明。当本领域技术人员在实施本实施例的定位方法时,已经明确该文档中所包含的条形码的类型,从而能够对条形码定位方法进行相应的设定。
该条形码定位方法包括以下步骤:第一扫描步骤(S101)、对象确认步骤(S102)、条形码密度计算步骤(S103)、上限值计算步骤(S104)、条形码起始位置确定步骤(S105)、不定步长确定步骤(S106)、第二扫描范围设定步骤(S107)、第二扫描步骤(S108)和条形码终止位置确定步骤(S109)。
以下通过对各个步骤进行详细的介绍,来说明书该条形码定位方法的实施过程。
第一扫描步骤(S101),使用具有第一高度和第一宽度的矩形的第一扫描框,以第一步长在与水平方向成第一扫描角度的第一扫描方向上逐步移动第一扫描框。以整个文档图像为第一扫描范围进行第一扫描方向上的逐行扫描,以扫描文档图像中的条形码,第一步长小于第一宽度。
通常而言,作为规则地被扫描的文档图像,并且其中条形码的设置也是规则的话,条形码的延伸方向和文档图像的底边(顶边)都是平行于水平方向的。这样的话,在第一扫描步骤S101中,将第一扫描角度设定为0°即可完成对条形码的定位。图3A示出规则的文档图像和条形码设置以及在水平方向上进行扫描的示意图。
但是当文档图像的扫描不规则或者条形码的设置方向也不水平的话,可能需要将第一扫描角度设置成非0值,即相对于水平方向有一定倾斜,才可以正确定位到该条形码。图3B示出不规则的文档图像和条形码设置以及在不水平方向上进行扫描的示意图。
对象确认步骤(S102),当第一扫描框扫描到疑似的条形码,即由黑条和空白交替排列而构成的黑白条纹时,需要先判定扫描到的黑白条纹是否是至少部分的条形码。
在根据本发明的具体实施方式的对象确认步骤中,利用上下对称判定和穿透判定确认扫描到的黑白条纹是否是至少部分的条形码,即,该黑白条纹是否满足条形码一般规则。
其中,该上下对称判定通过确认被扫描到的该部分黑白条纹是否是以其高度方向上的中线为对称轴上下对称。图4A示出上下对称判定的示意图。该穿透判定是通过在扫描到的黑白条纹的部分进行横向上的多次线扫描,判定穿透了预定数量的黑条的扫描线的条数是否超过预定阈值,例如,判断是不是同时有7条扫描线穿过了3根黑条。图4B示出穿透判定的示意图。
只有当上下对称判定和穿透判定的判定结果都为是,则判定扫描到的黑白条纹是至少部分的条形码。根据本发明的具体实施例的设定,至少部分的条形码包括至少两组黑条和空白的组合。图5示出利用条形码识别方法所扫描到的第一个黑白条纹的示意图。
但是判定所扫描到的黑白条纹是否是至少部分的条形码的方法有很多种,本发明不限于上述的上下对称判定和穿透判定,可以是本领域技术人员熟知的其他判定技术。
如果判定结果表明该黑白条纹不是至少部分的条形码,则进行后续的下一个步长的扫描。
条形码密度计算步骤(S103),如果在目标确认步骤(S102)中判定扫描到的黑白条纹是条形码的至少部分,则按照条形码的密度的计算方法,计算至少部分的条形码的密度。
条码的密度指单位长度的条码表示的字符个数。条形码的密度的计算方法采用本领域公知的计算方法。计算得到的密度值以mil为单位。
上限值计算步骤(S104),根据至少部分的条形码的密度以及条形码的预定类型(本实施例中是Code 128型条形码),计算得到至少部分的条形码所在的条形码的宽度的预估上限值。
如上所述,在根据本发明的具体实施例中,条形码是code128型条形码,根据该条形码的预定类型,上限值计算步骤中,先根据以下与code128型的类型对应的公式计算条形码的以英寸为单位计的最长宽度L:
L=(11C+35)*X (1)
其中,C是条形码中字符的总数量,这里将C取最大值为128,这样得到的是当前情况下该条形码可能的最大长度,因而不会在后续步骤中遗漏条形码。X是与密度对应的条形码的尺寸,单位为英寸,公式(1)中的11和35是常量。最后根据以英寸为单位计的最长宽度L和当前文档图像的dpi,得到以像素数为单位的条形码的宽度的预估上限值。
条形码起始位置确定步骤(S105),确定作为至少部分条形码的黑白条纹中第一根黑条的起始位置,并将第一根黑条的起始位置作为条形码的起始位置,如图5中的A点所示。
不定步长确定步骤(S106),确定第一根黑条的结束位置(如图5中的B点所示),以及第二根黑条的起始位置(如图5中C点所示)和结束位置(图5中的D点所示),并且确定从第一根黑条的结束位置到第二根黑条的起始位置之间的宽度W。
第二扫描范围设定步骤(S107),沿着第一扫描方向设定第二扫描范围,第二扫描范围始于第二根黑条的结束位置(即图5中的D点),第二扫描范围的宽度等于预估上限值的长度。第二扫描范围的高度只要能够覆盖该黑白条纹所属的目标条形码即可。在根据本发明的实施例中,高度被设置成和被扫描到的黑白条纹的高度一致。
第二扫描步骤(S108),在第二扫描范围内,使用具有第二宽度的第二扫描框。第二扫描框的高度只要能够覆盖该黑白条纹所属的目标条形码即可。在根据本发明的实施例中,第二扫描框的高度被设置成和被扫描到的黑白条纹的高度一致。
以第二根黑条的结束位置为第二扫描框的起始位置,从W/4开始依次尝试以W/4、W/2、W、2W和4W作为第二宽度,使用第二扫描框进行扫描,当以任一第二宽度在第二扫描框中扫描并判定得到至少部分的条形码时,则以当前扫描框的终点为下一次扫描的起始点,进行下一次的扫描,直至扫描框中扫描不到至少部分的条形码。
以下对这个循环的过程进行详细的说明。
首先以第二根黑条的结束位置(即图5中的D点)作为第二扫描框的起始位置开始扫描,作为第二扫描步骤中的第一次扫描。在当次扫描中,首先以W/4作为第二扫描框的宽度,如果在第二扫描框中找不到任何的符合条件的黑白条纹,则接下来将W/2作为第二扫描框的宽度,如果依旧扫描不到任何的符合条件的黑白条纹,则再尝试W,以此类推,直至依次尝试2W和4W作为第二扫描框的宽度。如果在第二扫描框中得到了符合条件的黑白条纹,则直接进入下一次的扫描,该下一次的扫描是以当前扫描框的终点为下一次扫描的起始点,扫描框的宽度依旧是从W/4开始依次尝试以W/4、W/2、W、2W和4W作为扫描框的宽度进行扫描。如果在依序尝试了所有的宽度仍然不能扫描到符合条件的黑白条纹的话,则进入下一个步骤。
条形码终止位置确定步骤(S109),当扫描框中扫描不到至少部分的条形码时,则将上一次扫描的获得了至少部分的条形码的第二扫描框的终点,作为条形码的终止位置。
通过实施以上条形码的定位方法,定位条形码的速度快,相对于米字和十字星型扫描方法,节省了在多个角度计算特征点的时间,相对于以固定步长的矩形扫描进行条形码识别的方法,在检测到了疑似条形码的时候便开始估算并设定新的扫描范围,并且采用不定步长的扫描方式,这样能更加快速以及更加精确地定位条形码。
以下说明根据本发明的第二实施例的条形码的定位方法。
根据本发明的第二实施例的条形码的定位方法主要适用于文档图像的扫描不规则的情况,例如因为扫描过程中文档的摆放位置歪斜导致了文档图像的歪斜,或者条形码的设置方向不水平的情况。还适用于,当文档中存在多个条形码而且各个条形码的设置位置并非都是水平地设置,即平行于文档图像的底边设置的情况。
根据本发明的第二实施例的条形码的定位方法,实质上是通过多次实施如第一实施例所述的定位方法。
首先,为第一扫描角度设定初始值,利用如第一实施例中的条形码定位方法,实施定位操作。一般而言,都是从水平方向的扫描开始,因此,在根据第二实施例的条形码定位方法中,将第一扫描角度的初始值为0度。但是本发明不限于此。
如果当前的定位过程未定位到任何的条形码,则在初始值的基础上增加预定量后作为新的第一扫描角度,进行新的定位操作。
根据不同的需要可以为根据第二实施例的条形码定位方法的循环操作设置不同的终止条件。
根据第一种方式,以预定量为步长逐步增加第一扫描角度的方式循环实施定位操作,直至定位到条形码。或者是当第一扫描角度增加到阈值角度后,仍未定位到条形码时,判定文档图像中不存在条形码,停止定位操作。阈值角度例如选为15°,但本发明不限于此。通过这样的操作,可以在找到文档图像的条形码之后,立即停止定位操作;并且在超过预定的搜索量之后,会停止定位操作,而不会无休止地搜索下去,造成资源的浪费。
根据另一种方式,以预定量为步长逐步增加第一扫描角度的方式循环实施定位操作,直至第一扫描角度增加到超过了阈值角度后,停止定位操作,再列出所有被定位到的条形码。阈值角度例如选为15°,但本发明不限于此。这种操作适合于在文档中存在多个条形码而且各个条形码的设置位置并非都是水平地设置的情况,能够快速并准确地找到文档图像中的所有条码。
以下结合具体的实例说明以预定量为步长逐步增加第一扫描角度的方式的过程。
根据第二实施例的条形码定位方法,优选地,从水平方向的扫描开始。实施完此次水平方向的扫描之后,也就是通过以0度角为第一扫描角度,实施了一次如第一实施例中的定位方法之后,如果定位不到任何的条形码,则将第一扫描件角在0度的基础上增加1°,即以1°角作为第一扫描角,再次如第一实施例中的定位方法实施一次定位操作,如果依旧定位不到,则继续增加1°,如此循环地进行定位操作。
以下介绍根据本发明的第三实施例的条形码读取方法。根据本发明的第四实施例的条形码读取方法包括条形码定位操作和条形码识别操作。
这样的条形码读取方法通常被设计在图像处理服务器中实施。在从诸如MFP(多功能外围设备,Multi-Function Peripheral)或者扫描仪的图像形成装置传输而来的包含条形码的文档图像之后,图像处理服务器先对文档实施条形码定位操作,其中条形码定位操作是通过根据本发明的第一实施例和第二实施例的条形码定位方法来实现,借此实现和与本发明的第一实施例和第二实施例的条形码定位方法所实现同样的技术效果。当定位到条形码的具体位置之后,再实施条形码读取操作以读取条形码的内容。待条形码的内容被读出后,图像处理服务器将这些内容传输到与图像服务器通过有线或无线方式连接的诸如个人PC、便携式智能设备等的用户终端,供用户使用。
以下介绍根据本发明的第四实施例的条形码定位装置。图6示出根据本发明的第四实施例的条形码定位装置的功能框图。如图6所示,根据本发明的第四实施例的条形码定位装置,用于实施定位操作以对文档图像中的预定类型的条形码进行定位。
第一扫描单元11,使用具有第一高度和第一宽度的矩形的第一扫描框,以第一步长在与水平方向成第一扫描角度的第一扫描方向上逐步移动第一扫描框,以整个文档图像为第一扫描范围进行第一扫描方向上的逐行扫描,以扫描文档图像中的条形码,第一步长小于第一宽度,
对象确认单元12,当第一扫描框扫描到由黑条和空白交替排列而构成的黑白条纹时,判定扫描到的黑白条纹是否是至少部分的条形码,至少部分的条形码包括至少两组黑条和空白的组合,如果不是,则指令进行下一步长的扫描;
在对象确认单元12中,利用上下对称判定和穿透判定确认扫描到的黑白条纹是否是部分的条形码,其中,上下对称判定通过确认黑白条纹是否是以其高度方向上的中线为对称轴上下对称;及穿透判定通过在扫描到的黑白条纹的部分进行横向上的多次线扫描,判定穿透了预定数量的黑条的扫描线的条数是否超过预定阈值;只有当上下判定和穿透判定的判定结果都为是,则判定扫描到的黑白条纹是至少部分的条形码。
条形码密度计算单元1,如果在目标确认单元判定扫描到的黑白条纹是条形码的至少部分,则按照条形码的密度的计算方法计算至少部分的条形码的密度,
上限值计算单元14,根据至少部分的条形码的密度以及条形码的预定类型,计算得到至少部分的条形码所在的条形码的宽度的预估上限值,
条形码起始位置确定单元15,确定作为至少部分条形码的黑白条纹中第一根黑条的起始位置,并将第一根黑条的起始位置作为条形码的起始位置;
不定步长确定单元16,确定第一根黑条的结束位置,以及第二根黑条的起始位置和结束位置,并且确定从第一根黑条的结束位置到第二根黑条的起始位置之间的宽度W;
第二扫描范围设定单元17,沿着第一扫描方向设定第二扫描范围,第二扫描范围始于第二根黑条的结束位置,第二扫描范围的宽度等于预估上限值的长度;
第二扫描单元18,在第二扫描范围内,使用具有第二宽度的第二扫描框,以第二根黑条的结束位置为第二扫描框的起始位置,从W/4开始依次尝试以W/4、W/2、W、2W和4W作为第二宽度,进行扫描,当以任一第二宽度在第二扫描框中扫描并判定得到至少部分的条形码时,以当前扫描框的终点为下一次扫描的起始点,进行下一次的扫描,直至扫描框中扫描不到至少部分的条形码;
条形码终止位置确定单元19,当扫描框中扫描不到至少部分的条形码,则将上一次扫描的获得了至少部分的条形码的第二扫描框的终点,作为条形码的终止位置。
根据本发明的第五实施例,还提供了一种条形码定位系统,该条形码定位系统包括如第四实施例中的条形码定位装置,还进一步包括了多角度循环扫描控制装置,和终止控制部。
其中多角度循环扫描控制装置包括初始定位部和变角度定位部,初始定位部,被配置成为第一扫描角度设定初始值,指示条形码定位装置实施定位操作。变角度定位部被配置成,如果当前的定位操作未定位到任何的条形码,则在初始值的基础上增加预定量后作为新的第一扫描角度,指示条形码定位装置实施进行新的定位操作。多角度扫描控制装置进一步包括循环控制部。
循环控制部能够根据不同的需要可以为根据第五实施例的条形码定位系统执行的操作设置不同的循环方式。
根据第一种方式,终止控制单元以预定量为步长逐步增加第一扫描角度的方式循环实施定位操作,直至定位到条形码,然后停止定位操作,或者当第一扫描角度增加到超过了阈值角度后,仍未定位到条形码时,判定文档图像中不存在条形码,停止定位操作。
根据另一种方式,终止控制单元以预定量为步长逐步增加第一扫描角度的方式循环实施定位操作,直至第一扫描角度增加到超过了阈值角度后,停止定位操作,列出所有被定位到的条形码。
根据本发明的第六实施例,本发明还提供了一种条形码读取装置。该条形码读取装置条形码定位部和条形码识别部。其中,条形码定位部被实现为如本发明的四实施例所记载的条形码定位装置,或者被实现为如本发明的第五实施例所记载的条形码定位系统。通过如此设置,条形码定位部能够实现与如本发明的四实施例所记载的条形码定位装置,或者本发明的第五实施例所记载的条形码定位系统相同的技术效果。当包含条形码的文档图像被条形码读取装置处理时,先利用条形码定位部在该文档图像中定位出条形码。然后,利用条形码识别部对该被定位出的条形码进行识别以及读出其中的内容。
根据本发明的第七实施例,本发明还提供了一种图像处理装置。图7示出根据本发明的第六实施例的图像处理装置与其他相关装置构成的图像处理系统的示意图。
根据本发明的第七实施例的图像处理装置的实例是如图7中所示的图像处理服务器100。在图像处理服务器100包括如上述第六实施例中所记载的条形码读取装置。该条形码读取装置通常是以功能组件的形式存在与该图像处理服务器100中。
图像服务器100与图像形成装置101相连,用于接收从图像形成装置101中传输而来的包含条形码的文档图像,并且对文档图像中的条形码进行定位并读取内容的处理。作为图像形成装置,例如使用MFP(多功能外围设备,Multi-Function Peripheral)或者扫描仪。
经过图像服务器100针对文档中的条形码的处理后,被读取出的条形码的内容等被发送到连接至该图像服务器100的用户终端102,供用户使用。用户终端102可以是个人PC、也可以是各种便携式智能设备。这些用户终端与服务器通过有线或无线的方式通信,以接收来自图像服务器的处理结果。另外,虽然图7中仅示出一个用户终端,但是在实际应用中,可以有多个用户终端与图像服务器100相连。
虽然经过对本发明结合具体实施例进行描述,对于本领域的技术技术人员而言,根据上文的叙述后作出的许多替代、修改与变化将是显而易见。因此,当这样的替代、修改和变化落入附后的权利要求的精神和范围之内时,应该被包括在本发明中。
Claims (15)
1.一种条形码定位方法,实施定位操作以对文档图像中的预定类型的条形码进行定位,其特征在于,所述条形码定位方法包括
第一扫描步骤,使用具有第一高度和第一宽度的矩形的第一扫描框,以第一步长在与水平方向成第一扫描角度的第一扫描方向上逐步移动第一扫描框,以整个所述文档图像为第一扫描范围进行所述第一扫描方向上的逐行扫描,扫描所述文档图像中的条形码,所述第一步长小于所述第一宽度,
对象确认步骤,当所述第一扫描框扫描到由黑条和空白交替排列而构成的黑白条纹时,判定扫描到的黑白条纹是否是至少部分的条形码,所述至少部分的条形码包括至少两组黑条和空白的组合,如果不是,则进行下一步长的扫描;
条形码密度计算步骤,如果在所述对象确认步骤中判定所述扫描到的黑白条纹是所述至少部分的条形码,则按照条形码的密度的计算方法,计算所述至少部分的条形码的密度,
上限值计算步骤,根据所述至少部分的条形码的密度以及条形码的所述预定类型,计算得到所述至少部分的条形码所在的条形码的宽度的预估上限值,
条形码起始位置确定步骤,确定作为所述至少部分的条形码的黑白条纹中第一根黑条的起始位置,并将所述第一根黑条的起始位置作为所述条形码的起始位置;
不定步长确定步骤,确定所述第一根黑条的结束位置,以及第二根黑条的起始位置和结束位置,并且确定从第一根黑条的结束位置到第二根黑条的起始位置之间的宽度W;
第二扫描范围设定步骤,沿着所述第一扫描方向设定第二扫描范围,所述第二扫描范围始于所述第二根黑条的结束位置,所述第二扫描范围的宽度等于所述预估上限值的长度;
第二扫描步骤,在所述第二扫描范围内,使用具有第二宽度的第二扫描框,以第二根黑条的结束位置为所述第二扫描框的起始位置,从W/4开始依次尝试以W/4、W/2、W、2W和4W作为所述第二宽度,进行扫描,当以任一第二宽度在所述第二扫描框中扫描并判定得到至少部分的条形码时,以当前扫描框的终点为下一次扫描的起始点,进行下一次的扫描,直至扫描框中扫描不到至少部分的条形码;
条形码终止位置确定步骤,当扫描框中扫描不到至少部分的条形码时,将上一次扫描的获得了至少部分的条形码的第二扫描框的终点,作为所述条形码的终止位置。
2.如权利要求1所述的条形码定位方法,其特征在于,在所述对象确认步骤中,利用上下对称判定和穿透判定来确认所述扫描到的黑白条纹是否是至少部分的条形码,其中,
所述上下对称判定通过确认所述黑白条纹是否是以其高度方向上的中线为对称轴上下对称;及
所述穿透判定通过在所述扫描到的黑白条纹的部分进行横向上的多次线扫描,判定穿透了预定数量的黑条的扫描线的条数是否超过预定阈值;
只有当所述上下对称判定和所述穿透判定的判定结果都为是时,才判定所述扫描到的黑白条纹是至少部分的条形码。
3.如权利要求1或2所述的条形码定位方法,其特征在于,
所述条形码是code128型条形码,以及
在所述上限值计算步骤中,先根据以下公式计算所述条形码的以英寸为单位计的最长宽度L:
L=(11C+35)*X(1)
其中,C是所述条形码中字符的总数量,取最大值为128,X是与所述密度对应的条形码的尺寸,单位为英寸,公式(1)中的11和35是常量,
最后根据所述以英寸为单位计的最长宽度L和所述文档图像的dpi,得到以像素数为单位的条形码的宽度的预估上限值。
4.如权利要求1或2所述的条形码定位方法,其特征在于,
为第一扫描角度设定初始值,实施定位操作,
如果当前的定位操作未定位到任何的条形码,则在所述初始值的基础上增加预定量后作为新的第一扫描角度,重新进行定位操作。
5.如权利要求4所述的条形码定位方法,其特征在于,
以所述预定量为步长逐步增加所述第一扫描角度的方式循环实施所述定位操作,
直至定位到条形码停止所述定位操作,或者,当所述第一扫描角度增加到超过了阈值角度后,仍未定位到条形码时,判定所述文档图像中不存在条形码,停止所述定位操作。
6.如权利要求4所述的条形码定位方法,其特征在于,
以所述预定量为步长逐步增加所述第一扫描角度的方式循环实施所述定位操作,直至所述第一扫描角度增加到超过了阈值角度后,停止所述定位操作,再列出所有被定位出的条形码。
7.一种条形码读取方法,其特征在于,包括条形码定位操作和条形码识别操作,其中,所述条形码定位操作采用如权利要求1-6中任一项记载的条形码定位方法进行。
8.一种条形码定位装置,用于实施定位操作以对文档图像中的预定类型的条形码进行定位,其特征在于,包括
第一扫描单元,使用具有第一高度和第一宽度的矩形的第一扫描框,以第一步长在与水平方向成第一扫描角度的第一扫描方向上逐步移动第一扫描框,以整个所述文档图像为第一扫描范围进行所述第一扫描方向上的逐行扫描,以扫描所述文档图像中的条形码,所述第一步长小于所述第一宽度,
对象确认单元,当所述第一扫描框扫描到由黑条和空白交替排列而构成的黑白条纹时,判定扫描到的黑白条纹是否是至少部分的条形码,所述至少部分的条形码包括至少两组黑条和空白的组合,如果不是,则指令进行下一步长的扫描;
条形码密度计算单元,如果在所述对象确认单元判定所述扫描到的黑白条纹是条形码的至少部分,则按照条形码的密度的计算方法计算所述至少部分的条形码的密度,
上限值计算单元,根据所述至少部分的条形码的密度以及条形码的所述预定类型,计算得到所述至少部分的条形码所在的条形码的宽度的预估上限值,
条形码起始位置确定单元,确定作为所述至少部分条形码的黑白条纹中第一根黑条的起始位置,并将所述第一根黑条的起始位置作为所述条形码的起始位置;
不定步长确定单元,确定所述第一根黑条的结束位置,以及第二根黑条的起始位置和结束位置,并且确定从第一根黑条的结束位置到第二根黑条的起始位置之间的宽度W;
第二扫描范围设定单元,沿着所述第一扫描方向设定第二扫描范围,所述第二扫描范围始于所述第二根黑条的结束位置,所述第二扫描范围的宽度等于所述预估上限值的长度;
第二扫描单元,在所述第二扫描范围内,使用具有第二宽度的第二扫描框,以第二根黑条的结束位置为所述第二扫描框的起始位置,从W/4开始依次尝试以W/4、W/2、W、2W和4W作为所述第二宽度,进行扫描,当以任一第二宽度在所述第二扫描框中扫描并判定得到至少部分的条形码时,以当前扫描框的终点为下一次扫描的起始点,进行下一次的扫描,直至扫描框中扫描不到至少部分的条形码;
条形码终止位置确定单元,当扫描框中扫描不到至少部分的条形码时,将上一次扫描的获得的至少部分的条形码的第二扫描框的终点,作为所述条形码的终止位置。
9.如权利要求8所述的条形码定位装置,其特征在于,在所述对象确认单元中,利用上下对称判定和穿透判定来确认所述扫描到的黑白条纹是否是至少部分的条形码,其中,
所述上下对称判定通过确认所述黑白条纹是否是以其高度方向上的中线为对称轴上下对称;及
所述穿透判定通过在所述扫描到的黑白条纹的部分进行横向上的多次线扫描,判定穿透了预定数量的黑条的扫描线的条数是否超过预定阈值;
只有当所述上下对称判定和所述穿透判定的判定结果都为是,则判定所述扫描到的黑白条纹是至少部分的条形码。
10.如权利要求8或9所述的条形码定位装置,其特征在于,
所述条形码是code128型条形码,以及
在所述条形码长度计算步骤中,先根据以下公式计算所述条形码的以英寸为单位计的最长宽度L:
L=(11C+35)*X (1)
其中,C是所述条形码中字符的总数量,取最大值为128,X是与所述密度对应的条形码的尺寸,单位为英寸,公式(1)中的11和35是常量,
最后根据所述以英寸为单位计的最长宽度L和所述文档图像的dpi,得到以像素数为单位的条形码的宽度的预估上限值。
11.一种条形码定位系统,其特征在于,包括
如权利要求8至10中任意一项所述的条形码定位装置,所述条形码定位装置实施定位操作;和
多角度扫描控制装置,包括
初始定位部,被配置成为第一扫描角度设定初始值,指示所述条形码定位装置实施所述定位操作,以及
变角度定位部,如果当前的定位操作未定位到任何的条形码,则在所述初始值的基础上增加预定量后作为新的第一扫描角度,指示所述条形码定位装置实施新的定位操作。
12.如权利要求11所述的条形码定位系统,其特征在于,所述多角度扫描控制装置进一步包括
循环控制部,以所述预定量为步长逐步增加所述第一扫描角度的方式循环实施所述定位操作,直至扫描并定位到条形码,此后所述终止控制部停止所述定位操作,或者当所述第一扫描角度增加到超过了阈值角度后,仍未定位到条形码时,判定所述文档图像中不存在条形码,停止所述定位操作。
13.如权利要求11所述的条形码定位系统,其特征在于,进一步包括
循环控制部,以所述预定量为步长逐步增加所述第一扫描角度的方式循环实施所述定位操作,直至所述第一扫描角度增加到超过了阈值角度后,所述终止控制部停止所述定位操作,列出所有被定位到的条形码。
14.一种条形码读取装置,其特征在于,包括条形码定位部和条形码识别部,其中,所述条形码定位部为权利要求8-10任一项所述的条形码定位装置或权利要求11-13任一项所述的条形码定位系统。
15.一种图像处理装置,其特征在于,包括权利要求14所记载的条形码读取装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510621702.6A CN106557714B (zh) | 2015-09-25 | 2015-09-25 | 条形码定位方法、装置和系统,条形码读取方法和装置,图像处理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510621702.6A CN106557714B (zh) | 2015-09-25 | 2015-09-25 | 条形码定位方法、装置和系统,条形码读取方法和装置,图像处理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106557714A CN106557714A (zh) | 2017-04-05 |
CN106557714B true CN106557714B (zh) | 2018-11-16 |
Family
ID=58414478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510621702.6A Active CN106557714B (zh) | 2015-09-25 | 2015-09-25 | 条形码定位方法、装置和系统,条形码读取方法和装置,图像处理装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106557714B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113761960B (zh) * | 2020-09-07 | 2023-09-22 | 北京京东振世信息技术有限公司 | 用于识别条形码的方法和装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5366657B2 (ja) * | 2009-05-26 | 2013-12-11 | キヤノン株式会社 | システム、方法及びプログラム |
CN104636700B (zh) * | 2013-11-15 | 2017-06-09 | 株式会社理光 | 文档图像管理装置以及文档图像管理系统 |
CN104112153B (zh) * | 2014-07-17 | 2017-10-10 | 上海透云物联网科技有限公司 | 基于移动终端的条维码识别方法及其系统 |
-
2015
- 2015-09-25 CN CN201510621702.6A patent/CN106557714B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106557714A (zh) | 2017-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6999204B2 (en) | Document processing using color marking | |
CN104463141B (zh) | 一种基于智能卡的指纹模板录入方法及装置 | |
US5719386A (en) | High efficiency multi-image scan method | |
US20070242902A1 (en) | Image processing device and image processing method | |
EP1502457B1 (en) | Vision-guided model-based point-and-click interface for a wireless handheld device | |
JP6964486B2 (ja) | 画像処理装置 | |
JP2008198157A (ja) | 表認識プログラム、表認識方法および表認識装置 | |
EP1999650A1 (en) | Server apparatus and server control method in computer system | |
CN110175608A (zh) | 一种保险理赔附件处理方法及装置 | |
CN106557714B (zh) | 条形码定位方法、装置和系统,条形码读取方法和装置,图像处理装置 | |
JP2009265903A (ja) | 情報管理システム、帳票定義管理サーバ及び情報管理方法 | |
US8830537B2 (en) | Data communication apparatus, data communication method, and computer-readable recording medium storing data communication program | |
JPWO2004047026A1 (ja) | 画像検索プログラム | |
JP2017118235A (ja) | 画像走査装置、画像読み取り装置、および、プログラム | |
CN107622040A (zh) | 一种镭雕数据的控制方法及系统 | |
CN102682532A (zh) | Pos系统、pos的控制方法和记录介质的处理系统 | |
JP3720573B2 (ja) | 画像検索装置及び方法 | |
CN102938706B (zh) | 一种网络拓扑图的识别方法和装置 | |
JP4154308B2 (ja) | 帳票認識装置、帳票認識方法、プログラムおよび記憶媒体 | |
CN107016388B (zh) | 一种一维码区域的定位方法及装置 | |
CN106557796B (zh) | 条形码的校验位的确定方法及装置、条形码读取方法及装置、图像处理装置 | |
CN106991347B (zh) | 一种条码中标识字符的定位方法及装置 | |
US20150112719A1 (en) | Information processing apparatus, information processing method, and computer readable medium | |
CN105549976B (zh) | Pda智能对接方法和装置 | |
CN106909868B (zh) | 信息处理装置、图像读取装置和信息处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |