CN102034073B - 条形码辨识方法及条形码辨识装置 - Google Patents

条形码辨识方法及条形码辨识装置 Download PDF

Info

Publication number
CN102034073B
CN102034073B CN201010257214.9A CN201010257214A CN102034073B CN 102034073 B CN102034073 B CN 102034073B CN 201010257214 A CN201010257214 A CN 201010257214A CN 102034073 B CN102034073 B CN 102034073B
Authority
CN
China
Prior art keywords
bar code
image
sample
type
code type
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.)
Expired - Fee Related
Application number
CN201010257214.9A
Other languages
English (en)
Other versions
CN102034073A (zh
Inventor
邱瀚辉
蔡攀龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Getac Technology Corp
Original Assignee
Mitac Technology Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitac Technology Corp filed Critical Mitac Technology Corp
Priority to CN201010257214.9A priority Critical patent/CN102034073B/zh
Priority to US12/889,946 priority patent/US8464954B2/en
Priority to EP10180253A priority patent/EP2309420B1/en
Publication of CN102034073A publication Critical patent/CN102034073A/zh
Application granted granted Critical
Publication of CN102034073B publication Critical patent/CN102034073B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10712Fixed beam scanning
    • G06K7/10722Photodetector array or CCD scanning

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Electromagnetism (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • Automatic Analysis And Handling Materials Therefor (AREA)

Abstract

一种利用连续取样提高多类型条形码辨识率的条形码辨识方法,适用于一条形码辨识装置。于此方法中,每一种条形码类型都被给予一评分,且条形码辨识装置中设定一积分阈值。条形码图像是经过有限次数的多次取样,且每一取样的影像样本只与所有条形码类型中的部分比对。当比对符合时,给予评分至符合的条形码类型,并累加评分而作为条形码类型的积分。当所有影像样本完成比对之后,以条形码类型当中积分到达积分阈值者为条形码图像的条形码类型,并根据条形码类型输出条形码图像的辨识结果。

Description

条形码辨识方法及条形码辨识装置
技术领域
本发明是有关于条形码的辨识方法及条形码的辨识装置,特别是一种利用连续取样提高多类型条形码辨识率的条形码辨识方法及条形码辨识装置。
背景技术
一维条形码包括黑白相间隔的长条图块。通过条形码协议(BarcodeProtocol)的规范,长条图块的宽度及黑白组合可代表不同的数字及字母。前述长条图块的宽度及黑白组合所代表的数字及字母组合,是根据码协议而有所不同。
公知技术中条形码图像辨识的作法包括两种方式,其一是撷取整个条形码图像,利用复杂的影像处理对整张图做运算,找出条形码图像区块并做二值化处理,再交由译码引擎做译码。例如中国台湾发明专利I209290号″运用数字相机的条形码辨识系统与条形码辨识方法″,提供一种运用数字相机的条形码辨识系统,至少包括:数字相机、条形码影像数据库、影像辨识装置、以及译码器。其中数字相机可撷取并储存条形码的影像数据;条形码影像数据库,具有预设的若干个条形码特征数据;影像辨识装置,则利用条形码特征数据,辨识并修改条形码影像;再由译码器,根据条形码特征数据,针对条形码影像进行译码运算。
但是,对整个条形码图像进行处理的方式,需要相对较多的硬件资源,因此对于硬件效能相对较低的手持运算装置而言,实施这种方法将耗费大量运算时间。同时,摄影镜头实时拍摄所得的影像,常会因为外在因素而影响了影像的取样质量,这些因素例如:镜头晃动导致影像模糊、镜头移动导致取样不完整、镜头与条形码的取样角度不佳导致影像歪斜,不良的影像质量会导致二值化后产生的二进制序列比对失败,甚至产生误判等问题。
第二种方式主要针对一维条形码,条形码图像中取一扫描线,通过条形码图像的所有长条图块,只针对此一扫描线进行影像运算以及二值化处理,产生二值化数组后,对条形码进行译码。此法虽然只对一条扫描线来做处理而速度较快,但是单一扫描线可能包括了取样质量过差而无法进行二值化的部分,导致条形码的译码结果无法通过检查码验证。特别是对于长条形码,例如包括多个区段的条形码而言,单一条形码数据符辨识错误而导致无法通过检查码验证的几率越高。只要有任一条形码数据符辨识错误,或特定图块无法清楚成像,就会导致辨识结果无法通过检查码验证,则该次扫描结果便被直接废弃,而必须执行下一次扫描及辨识。若条形码图像质量不佳,则重复扫描及辨识的次数也将增加,导致耗费大量时间于重复扫描。
除了上述的问题以外,待辨识的条形码图像,往往无法确认其采用的条形码协议(或称条形码类型)。因此于辨识条形码图像时,条形码辨识装置往往必须根据不同的条形码协议,重复地对条形码图像进行辨识,直到特定的条形码协议可用于辨识所述条形码图像;或是在连续几次循环仍无法辨识所述条形码图像时,判定条形码图像无法辨识。
对于多种条形码类型的条形码图像混用的场合下,条形码辨识装置以不同的条形码协议重复地对条形码图像进行辨识。不论条形码辨识的方法采用前述的第一种或第二种方法,都将耗费高硬件资源。而条形码辨识装置的型态通常为手持式数据处理装置,其硬件资源相对不足,因此如果同时支持多种条形码类型的辨识且可自动判别条形码类型,则条形码辨识装置的辨识效率将相对低落。对于作为条形码辨识装置的手持式数据处理装置而言,就必须减少其所支持的条形码类型,或是放弃自动判别条形码类型的功能,由使用者设定每一次扫描时所使用的条形码协议。
发明内容
于先前技术的辨识条形码的方法中,可能因为条形码影像质量不佳而导致比对失败或是产生误判的问题;同时在支持多类型条形码辨识的场合下,也存在着条形码辨识效率不佳的问题。
基于上述问题,本发明提出一种利用连续取样提高多类型条形码辨识率的条形码辨识方法,适用于一条形码辨识装置,用以对一条形码图像进行若干次取样而辨识条形码图像于若干种条形码类型中所属者及其对应的条形码信息,所述条形码辨识装置包括一影像撷取模块、一储存单元及一控制模块,所述条形码辨识方法包括下列步骤:
以控制模块决定每一种条形码类型与条形码图像比对符合所获得的评分,及一积分阈值。
以影像撷取模块对所述条形码图像进行若干次取样而取得若干个影像样本,并以控制模块对每一影像样本执行下列步骤:判别每一影像样本所属的条形码类型;及根据每一影像样本经判别所属的条形码类型,给予该所属条形码类型一评分,并累加评分而作为条形码类型的积分。
以所述控制模块判定若干种条形码类型当中积分到达积分阈值者为所述条形码图像的条形码类型,并根据该条形码类型输出所述条形码图像的辨识结果。
较佳地,于本发明的条形码辨识方法中,判别每一影像样本所属的条形码类型的步骤包括:以所述控制模块撷取所取样的影像样本中,所述条形码图像所占有的条形码区域;以所述控制模块执行二值化处理而转换所述条形码图像为二进制序列;及以所述控制模块,根据该二进制序列判别每一影像样本所属的条形码类型。
较佳地,于本发明的条形码辨识方法还包括一步骤,以所述控制模块决定影像样本的样本取样数及每一影像样本所需比对的条形码类型数。
较佳地,于本发明的条形码辨识方法还包括一步骤,先决定一合理程序反应时间,并以所述控制模块根据下列关系决定影像样本的样本取样数及每一影像样本所需比对的条形码类型数:
(样本取样数M)×(每一次影像样本所比对的条形码类型数N)×(每一影像样本比对一条形码类型所需的平均时间)<合理程序反应时间。
较佳地,于本发明的条形码辨识方法中,具有自我检查能力的条形码类型被给予的评分,高于无自我检查能力的条形码类型给予的评分。
较佳地,于本发明的条形码辨识方法中,具有检查码的条形码类型被给予的评分,高于不具有检查码的条形码类型给予的评分。
较佳地,于本发明的条形码辨识方法还包括包括定义一容许影像差异值,并于其二取样的影像样本间差异性大于影像差异值时,所述控制模块停止判别每一影像样本所属的条形码类型及给予条形码类型评分。
本发明进一步提出一种条形码辨识装置,用以对一条形码图像进行若干次取样,而辨识条形码图像于若干种条形码类型中所属者及其对应的条形码信息,条形码辨识装置包括一影像撷取模块、一储存单元及一控制模块。
影像撷取模块用以连续撷取所述条形码图像的影像以作为若干个影像样本。
储存单元用以缓存影像样本,且储存至少一条形码辨识程序、每一种条形码类型与条形码图像比对符合所获得的评分及一积分阈值。
控制模块自储存单元加载并运行条形码辨识程序,以控制影像撷取模块开始撷取影像样本,并将所撷取的影像传送至控制模块;所述控制模块由所述影像撷取模块取得若干个影像样本,以判别每一影像样本所属的条形码类型;根据每一影像样本经判别所属的条形码类型,给予所属条形码类型一评分,并累加评分而作为条形码类型的积分;判定条形码类型当中积分到达积分阈值者为所述条形码图像的条形码类型,并根据条形码类型输出所述条形码图像的辨识结果。
较佳地,于本发明的条形码辨识装置中,该影像撷取模块以固定的取样频率连续摄取所述条形码图像的影像,而形成一动态影像,且该动态影像用以被分解为若干张连续摄取的影像,以作为若干个取样的影像样本。
较佳地,于本发明的条形码辨识装置中,所述影像撷取模块对所述条形码图像连续摄取多个单张照片而取得若干个单张照片以作为若干个取样的影像样本。
较佳地,于本发明的条形码辨识装置中,该储存单元储存若干个条形码特征数据,每一种条形码特征数据分别对应一种条形码类型。
较佳地,于本发明的条形码辨识装置中,所述控制模块先估算所述条形码辨识装置的运算能力,并根据运算能力决定影像样本的样本取样数及每一影像样本所需比对的条形码类型数。
本发明所提出的条形码辨识方法及条形码辨识装置,通过对多次取样的影像进行多种类条形码辨识的方式,并以评分及积分来判断条形码类型及条形码信息是否成功辨识,提高条形码的辨识正确率及可靠度,避免以单一静态影像辨识条形码可能因为影像质量不佳而导致辨识失败或是产生误判的问题。同时,每一次取样时,只针对部分的条形码类型进行条形码辨识,而非同时对所有支持的条形码类型进行辨识,因此可以有效地提升条形码辨识效率。
有关本发明的技术手段与实施例,下文中将配合附图详细说明如下,其内容足以使本领域技术人员了解本发明的技术内容并据以实施。
附图说明
图1为本发明实施例中,条形码辨识装置的电路方块图。
图2为本发明中,利用连续取样提高多类型条形码辨识率的条形码辨识方法的流程图。
图3为本发明实施例中,样本评分表的一具体实施例。
图4为本发明条形码辨识方法中,执行单一辨识回合的条形码图像取样、判读及评分的流程图。
具体实施方式
如图1所示,为本发明实施例所揭露的一种条形码辨识装置100的电路方块图,其执行本发明的利用连续取样提高多类型条形码辨识率的条形码辨识方法,以辨识条形码图像于若干种条形码类型中所属者及其对应的条形码信息。条形码辨识装置100可为一手持运算装置,例如一个人数字助理(PDA,PersonalDigital Assistant)、行动导航装置(PND,Portable Navigation Device)或智能电话(Smart Phone)。但条形码辨识装置100不以手持运算装置为限,亦可为桌上型计算机或笔记型计算机。
本发明实施例的条形码辨识装置100是以一手持运算装置为具体实施例进行说明。条形码辨识装置100包括一影像撷取模块110、一储存单元120、一控制模块130、一触控显示模块140、一输入接口150及一网络通讯单元160。
如图1所示,影像撷取模块110用以连续撷取一条形码图像的影像以作为若干个影像样本。影像撷取模块110为包括CMOS或CCD的摄像镜头,且以具备高像素(例如超过百万像素)并具备自动对焦功能(Autofocus,AF)者为最佳,以清楚地撷取影像。多次取样的方式可为动态摄影模式,亦即影像撷取模块110以固定的取样频率连续摄取条形码图像的影像,而形成一动态影像,且动态影像用以被分解为经过多次取样的若干张连续摄取的影像,以作为取样的影像样本。
储存单元120用以缓存影像撷取模块110摄取的取样的影像样本、一条形码特征数据库171及一条形码辨识程序172。条形码特征数据库171中具有若干个条形码特征数据171a-171n,每一种条形码特征数据171a-171n分别对应一种条形码类型。储存单元120亦用以储存条形码辨识过程中所产生或设定的相关数据,例如每一种条形码类型与条形码图像比对符合所获得的评分、影像取样次数M、积分阈值及条形码辨识结果。
储存单元120的规格根据条形码辨识装置100的种类有所变化,但储存单元120大致包括程序内存121及储存内存122。程序内存121及储存内存122可为各自独立的储存模块。储存单元120亦可为单一储存模块,经过扇区规划后区分为程序内存121及储存内存122的两个不同扇区。以手持运算装置为例,程序内存121通常为随机存取内存,用以储存操作系统及重要常驻程序,并作为手持运算装置加载并执行程序的空间。储存内存122则为内建或插卡外接的NAND Flash内存,用以储存一般数据,或非常驻的一般程序档案。
本发明实施例是以一手持运算装置为例作为具体实施例;若条形码辨识装置100为一般个人计算机时,程序内存121及储存内存122可分别为系统内存及硬盘,且操作系统及重要常驻程序安装并储存于作为储存内存122的硬盘。
控制模块130包括处理器、系统逻辑芯片组、及显示接口等,用以处理信息。前述处理器、系统逻辑芯片组可为各自独立设置于一电路板的多个电子组件,亦可为一系统单芯片(System-on-a-chip,SoC)。用于手持运算装置的控制模块130通常为系统单芯片。影像撷取模块110电性耦合于控制模块130,使影像撷取模块110可被控制模块130所控制,撷取影像并传送影像至控制模块130。储存单元120亦电性耦合于控制模块130,以使控制模块130可以自储存单元120存取数据。控制模块130自储存单元120加载并运行条形码辨识程序172,以控制影像撷取模块110开始撷取影像样本,并将所撷取的影像传送至控制模块130。
触控显示模块140用以接收控制模块130经由显示接口发出的显示信号,以显示一画面,且触控显示模块140可被碰触产生一操作指令,而作为条形码显示装置100的操作指令。触控显示模块140包括一显示屏幕141及设置于显示屏幕141上的触控面板142。显示屏幕141用以接收控制模块130的显示信号而显示画面,触控面板142结合于显示屏幕141,用以被碰触而发出对应的操作指令至控制模块130。
输入接口150电性连接于控制模块130,用以发出操作指令至控制模块130。网络通讯单元160连接于控制模块130,用以连接至一网络。
如图1、图2所示,通过条形码辨识装置100实施本发明的条形码辨识方法时,条形码辨识装置100的控制模块130先自储存单元120加载并运行条形码辨识程序172,以控制影像撷取模块110开始进行多次取样的影像撷取,并将所撷取的影像传送至控制模块130。影像撷取模块110的动态摄影模式实质为每秒多次连续取样单张影像的特性(每秒15至30张),以动态摄影模式对一条形码影像进行多次取样,以取得若干个单张画面(image frame)作为若干个取样的影像样本。当然亦可采用一般照相模式,以影像撷取模块110对条形码图像连续摄取多个单张照片,而取得若干个单张照片作为若干个取样的影像样本。
如图2所示,为了有效地运用条形码辨识装置100的硬件资源并保持最佳的条形码辨识效率,因此于控制模块130自储存单元120加载并运行条形码辨识程序172之后,需要先估算条形码辨识装置100的运算能力,以确认条形码辨识装置100在当前的软件环境及硬件配置下,可供条形码辨识使用的系统资源。例如通过控制模块130执行简单程序循环,以控制模块130完成简单程序循环的时间来估算条形码辨识装置100在当下的运算能力。
接着根据条形码辨识装置100的运算能力,控制模块130决定单一辨识回合中,影像样本的样本取样数M及每一影像样本所需比对的条形码类型数N(Step 101)。决定样本取样数M及条形码类型数N的目的是为了在合理程序反应时间(例如400毫秒)内,完成单一辨识回合的条形码辨识。
也就是说,若条形码辨识装置100所支持而能够辨识的条形码类型总数为L,则条形码辨识装置100并不需要对每一个影像样本都比对L种条形码类型,而只比对其中N种条形码类型。例如,设定N为L/2或L/3时,亦即对每一个影像样本,影像条形码辨识装置100只比对其所支持的条形码类型总数为L的1/2或1/3。
以图1为例,条形码特征数据库171中的条形码特征数据171a-171n的总数即为前述的条形码类型总数L。而并非每一次取样所比对的条形码类型都包括了条形码特征数据171a-171n所对应的条形码类型,而是仅取其中的N个。其中每一次取样要辨识的条形码类型数N,可以由条形码辨识装置100以随机数方式(random)的方式决定,或是由使用者自行决定。使用者自行决定的具体实施方式通过控制模块130确认条形码特征数据库171中的条形码特征数据171a-171n的清单后,产生一影像信号,驱动该触控显示模块140的显示屏幕141显示条形码特征数据库171之中所对应的所有条形码类型,再由使用者自行选取条形码类型。
接着以运算能力为基础,并参考比对其中N种条形码类型其中之一所需要的平均时间之后,条形码辨识装置100便可进一步决定单一辨识回合的样本取样数M。其方式是先决定合理程序反应时间(例如400毫秒),则单一辨识回合的样本取样数与M与合理程序反应时间之间的关系为:
(样本取样数M)×(每一次影像样本所比对的条形码类型数N)×(每一影像样本比对一条形码类型所需的平均时间)<合理程序反应时间
接着,根据不同条形码的特性,条形码辨识装置100的控制模块决定每一种条形码类型与条形码图像比对符合所获得的评分,及最后决定条形码类型的积分阈值,如步骤Step 102所示。
条形码辨识装置100对于每一种条形码类型发生判读错误的几率不同。所谓判读错误,指当条形码辨识装置100完成条形码类型的判别及条形码信息的辨识之后,条形码辨识装置100所取得的条形码信息或条形码类型,与条形码图像实际所具备者不一致。
某些条形码类型,如欧洲商品条形码(European Article Number,EAN),其数据编码中至少包括一个检查码(Check-SUM),以供条形码辨识装置100进行自我检查(Self-check),已确认条形码辨识装置100所取得的条形码信息或条形码类型为正确。甚至可以在条形码信息编码中有部分字节错误或遗失时,以检查码(Check-SUM)进行逆向编码而修正该错误或遗失的字节。然,具备自我检查功能的条形码,并不必然以检查码为其自我检查机制,亦可采取其它自我机制。而不具被自我检查功能的条形码类型,通常无法判断条形码辨识装置100所取得的条形码信息。
以下的表一为几种常见的条形码的分类,其分类根据是以是否具备自我检查功能。
Figure BSA00000235474600091
表一
如表一所示,对于具备自我检查功能的条形码类型而言,条形码辨识装置100对其条形码信息或条形码类型的辨识结果具有相对较高的正确几率,因此定义条形码辨识装置100对其的辨识结果具有相对较高的可靠度。而同样地,在具备自我检查功能的条形码类型中,具备检查码的条形码类型,其辨识结果的可靠度又高于不具备检查码者。因此,我们可以说表一中的Code 128、Code93、EAN/JAN/UPC、GS1 Data Bar、2D Barcodes等,条形码辨识装置100对其等的辨识结果的可靠度,高于Codebar、Code 25、Code 39。
对于不具备自我检查功能的条形码而言,条形码辨识装置100对其条形码信息或条形码类型的辨识结果具有相对较低的正确几率,因此定义条形码辨识装置100对其的辨识结果具有相对较低的可靠度。因此,我们可以说表一中的Code 11及MSI,条形码辨识装置100对其等的辨识结果的可靠度相对就较低。
如上所述,可靠度可定义为条形码辨识装置100对一条形码图像进行辨识之后,其辨识结果的正确几率,或为一与正确几率高度正相关的参数。
有了每一条形码类型的正确几率关系,而取得辨识结果的可靠度之后,条形码辨识装置100就可以进一步定义每一条形码类型在每一次被条形码辨识装置100判读成功之后所得到的评分。其中,可靠度高者具有相对较高的评分,而可靠度低者具有相对较低的评分。
例如,当条形码辨识装置100所支持辨识的条形码类型恰包括表一中的所有条形码类型时,则表一中的条形码类型可被分为三个群组。第一群组为评分最高者,亦即具备自我检查功能且具备检查码的Code 128、Code 93、EAN/JAN/UPC、GS1 Data Bar、2D Barcodes。第二群组为评分中等者,亦即具备自我检查功能但不具备检查码的Codebar、Code 25、Code 39。第三群组为评分最低者,亦即不具备自我检查功能的Code 11及MSI。
此一评分可持续地累加而形成一评分的积分。在每一次取样的条形码图像完成辨识之后,根据每一影像样本经判别所属的条形码类型,条形码辨识装置100的控制模块130可给予对应条形码类型一评分,而此一评分被条形码辨识装置100累加之后便形成该条形码类型于该辨识回合的积分。
每一条形码类型又被指定一积分阈值。当评分的积分到达积分阈值,则条形码辨识装置100的控制模块130即可判定积分到达积分阈值者为条形码图像的条形码类型。
当经过步骤Step 102决定评分及积分阈值之后,条形码辨识装置100通过显示屏幕141或语音,指示使用者先将条形码辨识装置100移近待辨识的条形码图像,亦即将影像撷取模块110对准待辨识的条形码图像。在预览模式下,影像撷取模块110以动态摄影撷取影像,并在每秒钟内自动取样并传回15-30张画面作为取样的影像样本。同时,且控制模块130会将最近一次取样的影像样本缓存于程序内存121中的缓存区,同时控制模块130驱动显示屏幕141显示的预览影像,以供使用者确定影像撷取模块110是否对准待辨识的条形码图像。
如图2所示,当使用者确定影像撷取模块110对准待辨识的条形码图像之后,条形码辨识装置100便执行单一辨识回合的条形码图像取样、判读及评分的流程(Step 200)。根据样本取样数M,条形码辨识装置100的控制模块130对条形码图像进行M次取样而取得M个影像样本,并对每一影像样本进行比对、判读及评分,且每个影像样本仅与N种条形码类型互相比对并判读,以找出待辨识的条形码图像所对应的条形码类型及条形码信息,并作为辨识结果。
当完成一条形码图像的辨识且取得辨识结果之后,条形码辨识装置100的控制模块130通过显示屏幕141显示询问讯息,以确认使用者是否要进行下一辨识回合的条形码图像辨识程序(Step 103)。使用者可通过输入接口150或触控面板142发出操作指令至控制模块130,以决定进行下一辨识回合的条形码图像辨识程序,或结束程序。
以下针对步骤Step 200中,单一辨识回合的条形码图像取样、判读及评分的流程进行详细说明。
如图1、图3所示,储存单元120的程序内存121中储存一样本评分表。样本评分表的横轴中记录了条形码辨识装置100所支持的条形码类型,而纵轴中所记载了的是每一次取样所取得的取样的影像样本。每一取样的影像样本可标记为x-y,亦即第x辨识回合的第y次取样,其中y小于或等于单一辨识回合的样本取样数M。
以图3为例,所记载者为第1辨识回合的第1次至第8次取样的影像样本。每一次取样、比对之后,则可对比对符合的条形码类型填入评分,并统计每一次评分与先前评分累加取得积分。比对不符合的条形码类型则标记失败或评分为0分,未比对的条形码类型,则不予以记录;前述二种状况不改变条形码类型的积分。
如图4所示,当单一辨识回合开始之后,条形码显示装置100的控制模块130先重置样本评分表,清除所有评分、积分及取样的影像样本记录,并重新根据辨识回合数及样本取样数M,填入新的取样的影像样本编号,如步骤Step201所示。
接着,控制模块130自储存单元120中的程序内存121加载当前预览影像或读取照片,作为一取样的影像样本,如步骤Step 202所示。
前述的预览影像,是指影像撷取模块110在动态连续摄影过程中,缓存于程序内存121的片段,以作为缓冲。通常动态影像的缓存有一定大小,并采取先进先出方式将较早撷取的影像由控制模块130驱动显示屏幕141进行显示,并加以删除。此时,使用者也可以通过显示屏幕141所显示的预览影像,确定影像撷取模块110是否对准待辨识的条形码图像。
若影像撷取模块110是采取连续单张照片摄影的方式运作,则控制模块130由该些连续单张照片中读取一相当于当前时刻的照片,或是由一连串根据时序撷取的照片中,选取一张没有比对过的照片作为取样的影像样本。由于每一次比对过程仅比对L种条形码类型中的N种,而非所有的条形码类型,因此同一照片实际上以可以重复比对两次以上。重复比对的次数由N的大小决定,以期重复比对之后,恰可将L种条形码类型中的每一种条形码类型都比对过一次,而避免对同一取样的影像样本中的同一条形码类型重复比对。
如步骤Step 203所示,若此次比对不是此一辨识回合中的第一次比对,亦即该影像样本不是第一个被取样者,则控制模块130先比对当前取样的影像样本与前一被取样的影像样本的样本影像差异是否过大,而超过一预先定义的容许影像差异值。若样本影像差异过大而超过该容许影像差异值,则前后两次取样的影像样本可能并非来自同一个条形码图像。亦即,影像撷取模块110已经不再对准该待辨识的条形码图像,因此控制模块130废弃此次取样的影像样本,直接结束步骤Step 202至步骤Step 207的循环,停止以判别影像样本所属的条形码类型及给予条形码类型评分。控制模块130结束此一辨识回合的条形码图像取样、判读及评分的流程,直接到步骤Step 208确认各条形码类型的积分。
若差异性在容许范围之内,控制模块130自条形码特征数据库171中加载预定比对的N种条形码类型的条形码特征数据171a-171n,作为预计比对的条形码种类组合,如步骤Step 204所示。
如前所述,该些N种条形码特征数据171a-171n是由控制模块130随机选取、或事先由使用者通过输入接口150或触控面板142操作进行设定者,如图2的步骤Step 101所示。
于步骤Step 205中,控制模块130开始对取样的影像样本进行定位、影像处理及二值化处理。定位及影像处理为了撷取所取样的影像样本中,条形码图像所占有的条形码区域;而执行二值化处理是用以将条形码图像转换为一二进制序列,以供以该判别每一影像样本所属的条形码类型。
接着于步骤Step 206中,控制模块130进行条形码种类的比对及评分。控制模块130储存评分结果至样本评分表,以更新积分,如步骤206a所示。
条形码特征数据库171中的条形码特征数据171a-171n,实质上亦为各种条形码类型的条形码所对应的二进制序列,因此控制模块130可以将经二值化处理的条形码图像与所选取的N种条形码类型的条形码特征数据171a-171n逐一比对,以找出与待辨识条形码图像的类型相符合的条形码类型,从而判别条形码图像所属的条形码类型并取得其条形码信息。
如步骤206a所示,根据每一影像样本经判别所属的条形码类型,控制模块130同时给予相符合的条形码类型一评分,并将该评分存入程序内存121的样本评分表(如图3所示者)。控制模块130将此次评分与先前的评分累加而更新该条形码类型的积分。评分的原则如前所述,若为比对符合的条形码类型,则给予相对应的评分;若非比对符合的条形码类型则给与0分或注记失败或完全不记录。
当完成此次比对及评分之后,则控制模块130先判断是否已经完成Step101中所决定的取样M次,如步骤Step 207所示。若尚未完成,则步骤回归至步骤Step 202,使控制模块130重新加载当前预览影像或读取下一张照片。
若已经完成Step 101中所决定的取样M次,则控制模块130由程序内存121的样本评分表加载评分结果,亦即加载每一条形码类型的积分,如步骤Step208。
如步骤Step 209,接着控制模块130读取程序内存121中的样本评分表,由该些条形码类型的积分中,判定所支持条形码类型当中的积分到达积分阈值者,为条形码图像的条形码类型。若否,则控制模块130判定此一辨识回合的辨识失败,结束此一辨识回合,并进入图2的步骤Step 103。
若条形码类型之中存在其积分到达积分阈值者,则控制模块130以积分到达积分阈值的条形码类型,作为待辨识的条形码图像的条形码类型,并驱动显示屏幕141显示所述条形码图像的条形码类型及条形码信息以输出条形码图像的辨识结果,如步骤Step 210所示。
之后,如图2所示,控制模块130结束步骤Step 200的次循环,而进入步骤Step 103,通过显示屏幕141显示询问讯息,以确认使用者是否要进行下一辨识回合的条形码图像辨识程序。
于步骤Step 210中,若有若干个条形码类型的积分皆到达积分阈值,则控制模块130优先取积分较高或有自我检查功能或有检查码(checksum)者为待辨识的条形码图像的条形码类型。若积分相同时,控制模块130优先以具备自我检查功能或有检查码(checksum)者为待辨识的条形码图像的条形码类型。前述相同积分的优先级,亦可事先指定。
以图3所示的具体实施例为例,所述条形码辨识装置100可辨识6种条形码类型的条形码图像:条形码A、条形码B、条形码C、条形码D、条形码E、条形码F,且其中条形码E、条形码F具备自我检查功能。
如图2所示,首先,在条形码辨识装置100的控制模块130自储存单元120的储存内存122加载并执行条形码辨识程序172之后,条形码辨识装置100先执行步骤Step 101,估算条形码辨识装置100的运算能力,从而决定单一辨识回合的样本取样数M为8,且每一次取样所比对的条形码类型数N为3。
如步骤Step 102所示,条形码辨识装置100决定条形码A、条形码B、条形码C与条形码图像比对符合所获得的评分为10分,而条形码E、条形码F具备自我检查功能,因此其评分为60分。同时,最后决定条形码类型的积分阈值为60分。
如图4所示,接着步骤单一辨识回合的条形码图像取样、判读及评分的流程(Step 200)的次循环。
如步骤Step 201所示,条形码显示装置100的控制模块130是先重置该样本评分表,清除所有评分、积分及取样的影像样本记录,仅留下条形码A、条形码B、条形码C、条形码D、条形码E、条形码F等标记。同时控制模块130根据回合数为1、样本取样数为8,填入新的取样的影像样本编号:样本1-1、样本1-2、样本1-3、样本1-4、样本1-5、样本1-6、样本1-7、样本1-8。
接着,控制模块130自储存单元120中的程序内存121加载当前预览影像或读取照片,作为一取样的影像样本,如步骤Step 202所示。
如步骤Step 203所示,若此次比对不是此一辨识回合中的第一次比对,亦即该影像样本不是第一个被取样者,则控制模块130先比对当前取样的影像样本与前一样本的差异是否过大,而超过一预先定义容许影像差异值。若样本的影像差异在容许影像差异值之内,控制模块130自条形码特征数据库171中加载预定比对的3种条形码类型的条形码特征数据171a-171n,作为预计比对的条形码种类组合,如步骤Step 204所示。
接着于步骤Step 205、步骤Step 206中,控制模块130开始对取样的影像样本进行定位、影像处理及二值化处理,以进行条形码种类的比对及评分。
以样本1-1为例,比对符合的条形码类型为条形码A,因此给予条形码A的评分为10分。其余未比对的会比对不符合者为0分或不标记。
再以样本1-3为例,比对符合的条形码类型为条形码A,因此给予条形码A的评分为10分。条形码A所获得的10分,则与先前的评分累加,而使条形码A取得20分的积分。
再以样本1-7为例,比对符合的条形码类型为条形码A,因此给予条形码A的评分为10分。条形码A所获得的10分,则与先前的评分累加,而使条形码A取得30分的积分。
其余的条形码类型条形码B~条形码C以同样的原则取得积分,于样本1-1至样本1-8都完成取样比对之后,即完成步骤Step 207循环结束条件。控制模块130由程序内存121的样本评分表加载评分结果,如步骤Step 208。
如步骤Step 209,接着控制模块130读取程序内存121中的样本评分表,由该些条形码类型的积分中,找出是否到达积分阈值者。此时控制模块130判定条形码E到达积分阈值。控制模块130以条形码E,作为待辨识的条形码图像的条形码类型,并驱动显示屏幕141显示所述条形码图像的条形码类型及条形码信息,如步骤Step 210所示。
若有条形码A与条形码E皆到达积分阈值,例如条形码A为60分而条形码E亦为60分,则因条形码E积分较高或有自我检查功能或有检查码(checksum),所以控制模块130决定条形码E为待辨识的条形码图像的条形码类型。
因此,本发明的提高多类型条形码辨识率的条形码辨识方法,适用于以撷取动态影像或快速连拍功能为基础的条形码辨识装置100。通过取动态影像或快速连拍功能,条形码辨识装置100每秒自动多次进行比对样本的取样。完成若干个取样的影像样本的取得后,针对每次取得的样本,只选取部分条形码类型进行比对并给予评分,可以提升条形码辨识的处理效率。而通过评分、积分机制,以到达积分门坎与否决定条形码类型,以可以确保辨识多类型条形码时的正确率。
基于前述方法,本发明更提出一种计算机可读取记录媒体,内储一条形码辨识程序172,用以供一条形码辨识装置100读取并执行下列方法。条形码辨识装置100决定若干种条形码类型中,每一种条形码类型与一条形码图像比对符合所获得的评分,及一积分阈值;条形码辨识装置100对条形码图像进行若干次取样而取得若干个影像样本。条形码辨识装置100并对每一影像样本执行下列步骤:判别每一影像样本所属的条形码类型;及根据每一影像样本经判别所属的条形码类型,给予所属条形码类型一评分,并累加该评分而作为条形码类型的积分。最后条形码辨识装置100判定条形码类型当中的积分到达积分阈值者为条形码图像的条形码类型,并根据条形码类型输出条形码图像的辨识结果。各步骤执行的细节与前述的方法相同,于此不再赘述。
以上所述的实施例旨在用以揭露本发明的技术特征,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,因此本发明的专利保护范围须视本说明书所附的权利要求书所界定者为准。

Claims (9)

1.一种利用连续取样提高多类型条形码辨识率的条形码辨识方法,适用于一条形码辨识装置,用以对一条形码图像进行若干次取样而辨识条形码图像于若干种条形码类型中所属者及其对应的条形码信息,所述条形码辨识装置包括一影像撷取模块、一储存单元及一控制模块,所述条形码辨识方法包括下列步骤:
(a)先决定一合理程序反应时间,并以所述控制模块根据下列关系决定影像样本的样本取样数及每一影像样本所需比对的条形码类型数:
(样本取样数)×(每一次影像样本所比对的条形码类型数)×(每一影像样本比对一条形码类型所需的平均时间)<合理程序反应时间;
(b)以所述控制模块决定每一种条形码类型与条形码图像比对符合所获得的评分,及一积分阈值;
(c)以所述影像撷取模块对所述条形码图像进行若干次取样而取得若干个影像样本,并以所述控制模块对每一影像样本执行下列步骤:
(c1)判别每一影像样本所属的条形码类型;及
(c2)根据每一影像样本经判别所属的条形码类型,给予该所属条形码类型一评分,并累加评分而作为条形码类型的积分;
(d)以所述控制模块判定若干种条形码类型当中积分到达积分阈值者为所述条形码图像的条形码类型,并根据该条形码类型输出所述条形码图像的辨识结果。
2.根据权利要求1所述的条形码辨识方法,其特征在于,判别每一影像样本所属的条形码类型的步骤包括:
以所述控制模块撷取所取样的影像样本中,所述条形码图像所占有的条形码区域;
以所述控制模块执行二值化处理而转换所述条形码图像为二进制序列;及
以所述控制模块,根据该二进制序列判别每一影像样本所属的条形码类型。
3.根据权利要求1所述的条形码辨识方法,其特征在于,具有自我检查能力的条形码类型被给予的评分,高于无自我检查能力的条形码类型给予的评分。
4.根据权利要求1所述的条形码辨识方法,其特征在于,具有检查码的条形码类型被给予的评分,高于不具有检查码的条形码类型给予的评分。
5.根据权利要求1所述的条形码辨识方法,其特征在于,还包括定义一容许影像差异值,并于其二取样的影像样本间差异性大于影像差异值时,所述控制模块停止判别每一影像样本所属的条形码类型及给予条形码类型评分。
6.一种条形码辨识装置,用以对一条形码图像进行若干次取样,而辨识所述条形码图像于若干种条形码类型中所属者及其对应的条形码信息,所述条形码辨识装置包括:
一影像撷取模块,用以连续撷取所述条形码图像的影像以作为若干个影像样本;
一储存单元,用以缓存影像样本,且储存至少一条形码辨识程序、每一种条形码类型与条形码图像比对符合所获得的评分及一积分阈值;及
一控制模块,自储存单元加载并运行条形码辨识程序,以控制影像撷取模块开始撷取影像样本,并将所撷取的影像传送至控制模块;所述控制模块由所述影像撷取模块取得若干个影像样本,以判别每一影像样本所属的条形码类型;根据每一影像样本经判别所属的条形码类型,给予所属条形码类型一评分,并累加评分而作为条形码类型的积分;判定条形码类型当中积分到达积分阈值者为所述条形码图像的条形码类型,并根据条形码类型输出所述条形码图像的辨识结果;
其中所述控制模块根据下列关系决定影像样本的样本取样数及每一影像样本所需比对的条形码类型数:
(样本取样数)×(每一次影像样本所比对的条形码类型数)×(每一影像样本比对一条形码类型所需的平均时间)<合理程序反应时间。
7.根据权利要求6所述的条形码辨识装置,其特征在于,该影像撷取模块以固定的取样频率连续摄取所述条形码图像的影像,而形成一动态影像,且该动态影像用以被分解为若干张连续摄取的影像,以作为若干个取样的影像样本。
8.根据权利要求6所述的条形码辨识装置,其特征在于,所述影像撷取模块对所述条形码图像连续摄取多个单张照片而取得若干个单张照片以作为若干个取样的影像样本。
9.根据权利要求6所述的条形码辨识装置,其特征在于,该储存单元储存若干个条形码特征数据,每一种条形码特征数据分别对应一种条形码类型。
CN201010257214.9A 2009-09-25 2010-08-11 条形码辨识方法及条形码辨识装置 Expired - Fee Related CN102034073B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201010257214.9A CN102034073B (zh) 2009-09-25 2010-08-11 条形码辨识方法及条形码辨识装置
US12/889,946 US8464954B2 (en) 2009-09-25 2010-09-24 Method of improving the barcode recognition efficiency using continuous sampling, computer readable medium, and barcode recognition apparatus
EP10180253A EP2309420B1 (en) 2009-09-25 2010-09-27 Method for improving the barcode recognition efficiency using continuous sampling, computer readable medium, and barcode recognition apparatus

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN200910175758 2009-09-25
CN200910175758.8 2009-09-25
CN201010257214.9A CN102034073B (zh) 2009-09-25 2010-08-11 条形码辨识方法及条形码辨识装置

Publications (2)

Publication Number Publication Date
CN102034073A CN102034073A (zh) 2011-04-27
CN102034073B true CN102034073B (zh) 2013-11-06

Family

ID=43242526

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010257214.9A Expired - Fee Related CN102034073B (zh) 2009-09-25 2010-08-11 条形码辨识方法及条形码辨识装置

Country Status (3)

Country Link
US (1) US8464954B2 (zh)
EP (1) EP2309420B1 (zh)
CN (1) CN102034073B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8948513B2 (en) * 2009-01-27 2015-02-03 Apple Inc. Blurring based content recognizer
US8523075B2 (en) 2010-09-30 2013-09-03 Apple Inc. Barcode recognition using data-driven classifier
US8905314B2 (en) 2010-09-30 2014-12-09 Apple Inc. Barcode recognition using data-driven classifier
CN104380308A (zh) * 2012-05-31 2015-02-25 Opto电子有限公司 读入设备、读入结果输出方法和程序
US8915433B2 (en) * 2013-03-05 2014-12-23 Hewlett-Packard Development Company, L.P. Indentifier eligibility
US9818144B2 (en) * 2013-04-09 2017-11-14 Ebay Inc. Visual product feedback
CA2938425C (en) * 2014-03-07 2021-01-05 Lockheed Martin Corporation Methods and systems for reducing the likelihood of false positive decodes
CN106294366A (zh) * 2015-05-15 2017-01-04 阿里巴巴集团控股有限公司 条码热度的展示方法及装置
CN105844200B (zh) * 2016-03-17 2018-07-06 杭州晟元数据安全技术股份有限公司 一种判断条码类型的方法
US9740907B1 (en) * 2016-06-29 2017-08-22 Mueller International, Llc Systems and methods for a self-identifying barcode
JP6807688B2 (ja) * 2016-09-21 2021-01-06 株式会社日立ハイテク 自動分析装置
CN107609450B (zh) * 2017-09-08 2020-06-26 苏州佳世达光电有限公司 条码辨识方法
EP3908963A1 (en) * 2019-01-07 2021-11-17 Mobius Labs GmbH Automated capturing of images comprising a desired feature
FR3125617B1 (fr) 2021-07-22 2023-12-29 Airbus Helicopters Procédé et système d’identification d’outils

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5739518A (en) * 1995-05-17 1998-04-14 Metanetics Corporation Autodiscrimination for dataform decoding and standardized recording
EP0838775A2 (en) * 1996-10-28 1998-04-29 Fujitsu Limited A method of reading a bar code

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7281659B2 (en) * 2004-11-03 2007-10-16 Psion Teklogix Systems Inc. Self-optimizing symbology reader
US7946491B2 (en) * 2006-08-03 2011-05-24 Nokia Corporation Method, apparatus, and computer program product for providing a camera barcode reader
TWI399963B (zh) 2007-04-02 2013-06-21 Simpleact Inc 手機上的二維條碼識讀系統

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5739518A (en) * 1995-05-17 1998-04-14 Metanetics Corporation Autodiscrimination for dataform decoding and standardized recording
EP0838775A2 (en) * 1996-10-28 1998-04-29 Fujitsu Limited A method of reading a bar code

Also Published As

Publication number Publication date
EP2309420A1 (en) 2011-04-13
US8464954B2 (en) 2013-06-18
CN102034073A (zh) 2011-04-27
US20110073650A1 (en) 2011-03-31
EP2309420B1 (en) 2013-01-23

Similar Documents

Publication Publication Date Title
CN102034073B (zh) 条形码辨识方法及条形码辨识装置
US10331929B2 (en) Imaging terminal, imaging sensor to determine document orientation based on bar code orientation and methods for operating the same
EP2064651B1 (en) System and method for decoding and analyzing barcodes using a mobile device
CA2282764C (en) System and method for ocr assisted bar code decoding
KR100769836B1 (ko) 2차원 코드 인식 처리 방법, 2차원 코드 인식 처리 장치, 및 저장 매체
US8608074B2 (en) Method and apparatus for locating and decoding machine-readable symbols
US20050082370A1 (en) System and method for decoding barcodes using digital imaging techniques
US20040118928A1 (en) System and method for imaging and decoding optical codes using at least two different imaging settings
CN110493595B (zh) 摄像头的检测方法和装置、存储介质及电子装置
US20090022429A1 (en) System and method to manipulate an image
US20070183652A1 (en) Method for detecting a code with the aid of a mobile station
CN103034831A (zh) 线性条码识别方法和系统
US20070140564A1 (en) 2-Dimensional code region extraction method, 2-dimensional code region extraction device, electronic device, 2-dimensional code region extraction program, and recording medium containing the program
US20070069028A1 (en) System to improve reading performance and accuracy of single or two dimensional data codes in a large field of view
CN111539236A (zh) 一种一次性读取多个条码的方法
KR100404306B1 (ko) 코드화된 패턴 및 이의 코드 추출 방법
CN107609448B (zh) 条码解码方法以及条码解码装置
CN106295455A (zh) 条形码指示方法及条码读取器
US20120118964A1 (en) Altering an imaging parameter to read a symbol
CN103345779A (zh) 一种智能手机二维码签到系统及方法
CN112560535A (zh) 一种全景排序的解码输出方法
CN117422733A (zh) 模型训练方法与模型训练系统
CN117094343A (zh) 一种qr码解码系统及方法
WO2008072219A2 (en) An apparatus system and method for encoding and decoding optical symbols
WO2008087626A2 (en) An apparatus system and method for decoding optical symbols

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20131106

Termination date: 20190811

CF01 Termination of patent right due to non-payment of annual fee