首页> 中国专利> 通过将经编码符号字符从本地字符集转换成全局字符集来读取二维符号的方法和装置

通过将经编码符号字符从本地字符集转换成全局字符集来读取二维符号的方法和装置

摘要

本申请涉及通过将经编码符号字符从本地字符集转换成全局字符集来读取二维符号的方法和装置。一种成像读取器可操作地连接至主机系统并捕捉从具有经编码字符的二维符号返回的光并将所捕捉的光处理成二进制数据。在该读取器或主机系统中的控制器从该二进制数据确定是否依据指示本地语言的本地字符集对所述经编码字符进行编码,并在确定所述经编码字符依据本地字符集编码之后将该本地字符集转换成指示多种全局语言的全局字符集。由该主机系统控制器依据该全局字符集处理所述经编码字符。

著录项

  • 公开/公告号CN106845315A

    专利类型发明专利

  • 公开/公告日2017-06-13

    原文格式PDF

  • 申请/专利权人 讯宝科技有限责任公司;

    申请/专利号CN201611272892.6

  • 发明设计人 何端峰;

    申请日2016-10-12

  • 分类号G06K7/14;G06K19/06;

  • 代理机构上海专利商标事务所有限公司;

  • 代理人姬利永

  • 地址 美国纽约州

  • 入库时间 2023-06-19 02:31:39

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-04-30

    授权

    授权

  • 2017-07-07

    实质审查的生效 IPC(主分类):G06K7/14 申请日:20161012

    实质审查的生效

  • 2017-06-13

    公开

    公开

说明书

背景技术

本公开一般涉及利用可操作地连接至主机系统的成像读取器通过图像捕捉电-光地读取具有利用编码方案编码的字符的二维符号的方法和装置,并且更具体地涉及确保该主机系统使用兼容的编码方案处理所述字符。

固态成像系统或者成像读取器已经在手持和/或免持操作模式中使用,以通过图像捕捉电-光地读取具有要被解码成指示经编码字符的二进制数据的经编码字符的二维条形码符号。一种已知的成像读取器捕捉从符号散射和/或反射的光,将捕捉的光转变并处理成二进制数据,并将该二进制数据传输至远程主机系统以供进一步处理,例如,从信息数据库的信息检索。

可利用指示本地语言(例如,英语、汉语、日语、韩语、希伯来语等)的本地(local)字符集对每个符号的经编码字符进行编码。字符集是用于表示并支持本地语言的字符的集合(例如,字母、数字、标点符号、符号等),或者共享共同书写系统的语言集。为了使得成像读取器和主机系统中的控制器(例如,经编程微处理器)以及通常的计算机排序、存储、打印、显示以及处理字符,这些字符必须由数字值表示。编码方案,也称为代码页,是一种组织表,其中数字索引,也称为代码点值,以某种次序被分配至每个字符,从而允许字符通过它的对应代码点值被区别地识别。由于各种语言或语言组使用其他语言或组不使用的字符,例如,重音字母或完全新的字母,因此不同的语言具有支持它们的它们自己不同的字符集或者不同的本地代码页。由于某些语言,诸如英语、法语、德语、意大利语和西班牙语,需要少于256个字符,因此它们可由单个字节(8个比特)表示,也称为单字节字符集(SBCS)。某些使用表意字符的亚洲语言,诸如汉语(繁体和简体)、日语以及韩语,具有数千个字符,并且它们各自可由两个字节(16个比特)表示,也称为双字节字符集(DBCS),或者由每字符具有可变数量字节的多个字节表示,也称为多字节字符集(MBCS)。

每个符号的经编码字符还可利用全局(global)字符集(即,Unicode(统一码),它指示多种语言)进行编码。Unicode是由Unicode联盟作为计算工业标准维护的开放的字符集并具有包括基本上所有的世界书写系统的超过120000个字符的条目。Unicode基本上将所有的本地代码页和本地字符集统一并国际化为单个、主字符集或全局代码页。在Unicode中能够编码所有的可能字符的一个字符编码格式是通用编码字符集+转换格式-8比特(UTF-8),其具有可变的长度并使用8比特代码单元。

通过国际约定标准,成像读取器依据其中其字符被编码的每个符号的编码方案将它们的二进制数据传输至主机系统控制器。用于对每个符号编码的特定编码方案的身份并不从成像读取器输出。此外,主机系统控制器通常使用本地代码页解释来自成像读取器的二进制数据。举例来说,在美国运行的主机系统控制器会使用英语的本地代码页,而在日本运行的主机系统控制器会使用日语的本地代码页。如果二进制数据的编码方案匹配主机系统控制器使用的方案,那么对符号的进一步处理被顺序且准确地执行。然而,如果没有匹配或兼容性,那么处理性能受阻,并且典型地失败。进一步使情况复杂在于在很多国家中,例如,中国、日本和韩国(CJK),每个符号可使它的字符依据相应国家的本地代码页编码或者依据全局代码页(例如,Unicode)编码。通常优选依据本地代码页而不是全局代码页对符号编码,因为使用本地代码页比使用全局代码页更快且更有效,并且对于与仅被编码为在本地代码页的情况下使用的旧式应用程序通信而言通常是优选的。在任何情况下,不知道在编码每个符号中使用了这些本地或全局代码页中的哪一个,因为如上文所述,被用于编码每个符号的特定编码方案的身份并不从成像读取器输出。当主机系统控制器想要使用的编码方案与正被读取的符号的经编码字符的未知编码方案不匹配时,那么该符号将不会被正确地或准确地处理,如果真的会发生的话。

因此,将期望确保成像读取器和它们的主机系统的控制器之间的兼容性,并且确保经编码字符被正确地和准确地处理和解释。

附图说明

附图,其中相同的附图标记在全部单独的视图中表示相同的或功能类似的要素,连同下面的详细描述被纳入于此并形成说明书的一部分,并用来进一步阐述包括所要求保护的发明的理念的实施例,以及解释那些实施例的各种原理和优势。

图1是依据本公开的用于通过图像捕捉读取二维符号的装置的透视图并且包括可操作地连接至远程主机系统的电-光读取器。

图2是图1的读取器中的各种电部件和光部件的示意图。

图3是描绘根据依据本公开的通过图像捕捉读取二维符号的方法执行的各步骤的流程图。

图4是描绘在确定本地代码页中执行的各步骤的流程图。

图5是描绘在通过确定其中符号被编码的模式来确定本地代码页中执行的各步骤的流程图。

技术人员将理解,这些附图中的各个要素为了简化和清楚而被示出,并且不一定按照比例绘制。举例而言,相对于其它要素,附图中一些要素的尺寸和位置可被放大来帮助改善对本发明各实施例的理解。

已在附图中通过常规符号在适当位置对方法和装置构成进行了表示,所述表示仅示出与理解本发明的实施例有关的那些特定细节以免因得益于本文的描述对本领域技术人员显而易见的细节而混淆本公开。

具体实施方式

依据本公开的一个特征,通过利用成像读取器通过捕捉从符号返回的光并通过将所捕捉的光处理成二进制数据来对该符号成像来执行一种处理具有要被电-光地读取的经编码字符的二维符号的方法。该方法从该二进制数据确定是否依据指示本地语言的本地字符集对所述经编码字符进行编码,并且在确定所述经编码字符确实依据本地字符集编码之后优选自动地将本地字符集转换成指示多种全局语言的全局字符集。依据该全局字符集利用主机系统控制器(例如,经编程微处理器)处理所述经编码字符。本地字符集的确定和转换可由成像读取器中的控制器(例如,经编程微处理器)或者由该主机系统控制器执行。本地字符集的确定可以多种方式执行。举例来说,可分析该符号的模式,和/或可排除其他本地字符集,和/或可识别本地字符集的最可能的特性特征。如果没有成功执行本地字符集的确定,那么可设置默认的本地字符集,该默认的本地字符集随后被转换,如上文所述。

依据本公开的另一特征,一种用于处理具有要被电-光地读取的经编码字符的二维符号的装置,包括可操作地连接至主机系统的成像读取器。该读取器捕捉从该符号返回的光,并将所捕捉的光处理成二进制数据。或者该成像读取器中的控制器,或者该主机系统中的控制器,可操作以用于从该二进制数据确定是否依据指示本地语言的本地字符集对所述经编码字符进行编码,并用于在确定所述经编码字符确实依据该本地字符集编码之后将该本地字符集转换成指示多个全局语言的全局字符集。该主机系统控制器依据该全局字符集处理经转换字符。

现在转向附图,图1中的参考标记30通常标识被配置为具有上桶或主体32和远离主体32倾斜的下手柄28的枪状外壳的符合人体工程学的、电-光成像读取器。透光窗口26位于主体32的前面或鼻端附近。读取器30被保持在操作者的手中并在手持模式中使用,其中触发器34被手动按压以发起对在相对于窗口26的工作距离范围中的目标,尤其具有经编码字符的二维条形码符号38,的读取。读取器30通过有线或者无线链接被可操作地连接至具有控制器16(例如,经编程微处理器)以及数据库18的远程主机系统40,该系统40的操作在下文详细描述。

虽然图1中示出的符号38已经被示为快速响应(QR)码,但将理解的是,很多其他的二维码,或者矩阵码,诸如PDF417、DataMatrix(数据矩阵)、MaxiCode(最大码)等,可由读取器30读取。此外,虽然读取器30的外壳已经被示为枪状,但这仅仅是示例性的,因为还可采用很多其他配置和类型的外壳。举例来说,外壳不需要是手持式的,而是可由用于将读取器支撑在工作台面或类似的支撑表面上的基底或支架支撑,在这种情况下,读取器可在免持模式中作为固定的工作站使用,其中符号38被滑过或刷过,或者呈现给窗口26。作为其他示例,外壳可被配置为具有大体垂直布置的直立窗口的垂直槽扫描仪,或者被配置为具有大体水平布置的窗口的平台式或者水平槽扫描仪,或者被配置为具有大体水平和垂直布置的窗口两者的双光学、双窗口扫描仪。此外,本公开可被结合在扫描引擎或模块中,其被安装在装置(诸如手持式移动计算机)的外壳(典型为密封的封围)内。

如图2中示意性地示出的,照明光源,例如,一个或多个发光二极管(LED)12,被安装在成像读取器30中。每个LED 12可操作以用于通过朝向符号38在以照明轴44为中心的照明角度上发射照明光来照明符号38以从中反射和散射。每个LED 12被提供有照明透镜组件10以便以照明光图案均匀地且有效地照明目标38。

成像器24被安装在读取器30中的印刷电路板22上。成像器24是固态设备,例如,电荷耦合设备(CCD)或者互补金属氧化物半导体(CMOS)设备。成像器24具有以相互正交的行和列排列的可寻址的图像传感器或像素的二维阵列,并可操作以用于检测穿过窗口26从符号38返回的并且在以光路或成像轴46为中心的成像视场(FOV)42上被成像透镜组件20捕获的照明和/或环境光。成像透镜组件20可操作以用于可调整地聚焦和投射返回光至图像传感器的阵列上以使得符号38能够被读取。符号38可位于被定位成与窗口26紧密相邻的近端工作距离(WD1)和被定位成远离窗口26的远端工作距离(WD2)之间的工作距离范围中的任意位置。

还如图2中所示,成像器24和照明LED 12被可操作地连接至可操作以用于控制这些部件的操作的读取器控制器36,例如,经编程微处理器。存储器14被连接至控制器36并且可由控制器36访问。优选地,读取器控制器36与用于将从符号38返回的光处理成指示正被读取的符号38的经编码字符的一串经解码二进制数据并用于将经解码二进制数据传输至远程主机系统控制器16以供进一步处理(例如,来自数据库18的信息检索)的那个控制器相同。在操作中,读取器控制器36发送命令信号以使照明LED 12脉动(pulse)达短的曝光时间段,例如500微秒或更短,并且激励并曝光成像器24以仅在所述曝光时间段期间收集来自符号38的光,例如,照明光和/或环境光。典型的阵列需要大约18-33毫秒来获取整个符号图像并以大约30-60帧每秒的帧率操作。

如上文所述,每个符号38的经编码字符可利用指示本地语言(例如,英语、汉语、日语、韩语、希伯来语等)的本地字符集或本地代码页编码,或者可利用指示多种语言的全局字符集或全局代码页(即,Unicode)编码。在某些国家中,例如,中国、日本和韩国,本地代码页或者全局代码页可被用于编码每个符号38。此外,不知道在编码每个符号38中使用了这些本地代码页或全局代码页中的哪个,因为如上文所述,用于编码每个符号38的特定编码方案的身份通常不被编码在存储在符号38中的数据中,并因此不依据行业约定标准从成像读取器输出。当主机系统控制器16想要使用的编码方案不匹配正被读取的符号38的字符的未知编码方案时,符号38将不会被正确地或准确地处理,如果真的发生的话。本公开的一个方面在于确保读取器控制器36和它的主机系统控制器16之间的兼容性,并确保主机系统控制器16正确地并准确地处理和解释经编码字符。

为此,如图3的流程图所示,在步骤50中首先指令(instruct)和配置读取器30或者主机系统40以执行转换,如下文详细描述的。一经致动触发器34,成像器24和成像透镜组件20,在读取器控制器36的控制下,在步骤52中将来自符号38的返回光捕获并处理成指示符号38中的经编码字符的经解码二进制数据。在一个实施例中,在步骤54中,读取器控制器36从该二进制数据确定经编码字符是否表示指示多种全局语言的全局字符集,诸如Unicode。在另一实施例中,在步骤54中,读取器控制器36将该二进制数据传输至主机系统控制器16,并且主机系统控制器16从该二进制数据确定经编码字符是否表示指示多种全局语言的全局字符集,诸如Unicode。如果已经确定了全局字符集,那么主机系统40(其默认处理全局字符集)在步骤60中处理经编码字符。如果尚未确定全局字符集,那么经编码字符表示指示本地语言的本地字符集,并且在步骤56中由读取器控制器36或者由主机系统控制器16识别该特定本地字符集。接下来,在步骤58中,所识别的本地字符集由读取器控制器36或者由主机系统控制器16转换成全局字符集。在步骤60中,所转换的字符然后由主机系统控制器16处理。

如上文所提到的,在步骤50中首先指令读取器30或者主机系统40以在步骤58中执行转换。这一指令可能已经在读取器30或主机系统40的制造和组装期间被预编程到控制器36、16中,或者,尤其在现有安装的情况中,此指令可起源于从主机系统控制器16接收到命令,或者起源于特定配置符号,也称为参数符号,已经被成像读取器30读取这一确认,借此读取器控制器36随后被自配置成在已经识别本地字符集时在步骤58中执行转换。优选自动地执行该转换。因此,无论是使用全局字符集还是本地字符集对符号38的经编码字符进行编码,默认在全局字符集下操作的主机系统控制器16可兼容地并准确地处理和解释经编码字符,因为经编码字符要么已经以全局字符集进行编码要么已经被转换成全局字符集。

存在控制器36或者16可在步骤56和58中确定是本地字符集还是全局字符集已被用于编码符号38并且如果确定为本地字符集,则确定哪个特定本地字符集已被使用的各种方式。这些方式中的一些在图4的流程图中描绘出,其中,从开始步骤64开始,如步骤66中所示,一种方式是要确定其中符号38已经被编码的模式。在QR码的情况中,QR码使用若干标准化编码输入字符集或模式(数字、字母数字、字节/二进制、扩展通道解释(ECI)、日本汉字(日语中的汉语字符)、汉语等)来有效地存储数据,它们对于读取器控制器36是已知的,但依据产业标准并不传输至主机系统控制器16。如图5的流程图所示,控制器36通过首先在步骤80中检查是否使用了二进制模式来确定该模式,并且如果使用了,则本地代码页是未知的。如果未使用,则控制器36随后在步骤82中检查是否使用了汉语模式,而不是日本汉字模式,并且如果是这样,则本地代码页是汉语。如果不是,则控制器36随后在步骤84中检查是否使用了日本汉字模式而不是汉语模式,并且如果是这样,则本地代码页是日语。如果不是,则本地代码页是未知的。

再次返回图4的流程图,如果在步骤66中确定了本地代码页,那么二进制数据被转换成全局代码页并在于步骤74中由主机系统控制器16处理经转换字符之前在步骤78中被转变成Unicode的UTF-8输出格式。如果在步骤66中没有确定本地代码页,那么或者控制器36或者16随后在步骤68中检查是否可通过使用排除规则(即,通过排除其他本地字符集)来确定本地代码页。每个本地代码页具有代码点,它们是没有被使用的独特的(unique)字节序列,并且如果发现这种非使用的代码点,那么可依赖这些非使用的代码点来排除本地代码页。如果在步骤68中确定了本地代码页,那么二进制数据被转换成全局代码页并在于步骤74中由主机系统控制器16处理经转换字符之前在步骤78中被转变为Unicode的UTF-8输出格式。

如果在步骤68中没有确定本地代码页,那么或者控制器36或者16随后在步骤70中检查是否可通过依赖于概率(即,通过识别特定本地代码页,因为它相比任何其他本地代码页是更可能的)来确定本地代码页。或者控制器36或者16检查二进制数据以查看某些字符出现有多频繁,并且如果存在属于特定本地代码页的某些字符的高频率,那么该本地代码页被确定为最可能的本地代码页。相反地,如果存在多个来自代码页的不太可能的字符,或者来自代码页的不太可能的字符组合,那么较不可能这是正确的代码页。如果在步骤70中确定了本地代码页,那么二进制数据被转换成全局代码页并在于步骤74中由主机系统控制器16处理经转换字符之前在步骤78中被转变为Unicode的UTF-8输出格式。

如果在步骤70中没有确定本地代码页,那么或者控制器36或者16随后在步骤72中检查是否可排除全局代码页。如果否,那么二进制数据已经以Unicode的UTF-8输出格式被编码为全局代码页并在步骤74中由主机系统控制器16处理。如果可排除全局代码页,那么二进制数据被编码为未知的本地代码页,在这种情况下,或者控制器36或者16随后在步骤76中默认分配特定本地代码页。该默认本地代码页典型地由主机系统16的地理位置设置。或者控制器36或者16随后转换已经被默认设置的本地代码页的二进制数据,并在于步骤74中由主机系统控制器16处理经转换字符之前在步骤78中将它转变为Unicode的UTF-8输出格式。步骤66、68和70不需要以图4中所示的次序连续执行,因为在特定应用中可以任意次序执行这些步骤中的任意一个或多个。

在很多情况下,优选主机系统控制器16执行该转换,因为主机系统40已经具有必须的数据库并且已经被配置成在例如因特网上呈现的不同编码方案之间转换。某些网页以本地代码页进行编码,而其他以全局代码页进行编码。而且,主机系统控制器16典型地已经具有场所或位置信息。当用户声明本地时区、货币单位、数字显示格式(例如,是使用点还是逗号作为十进制分隔符)等时由用户设置场所信息。位置信息常从全球定位系统(GPS)或从蜂窝系统获得。

有时,优选读取器控制器36执行该转换,因为某些用户想要读取器30独立于主机系统40,并且不需要对主机系统40作出任何改变。这典型地发生于当读取器30作为附连至收银机的外围设备交互时。

在前述说明中,已经描述了特定实施例。然而,本领域普通技术人员理解可做出多种修正和改变而不脱离本发明如下权利要求书记载的范围。因此,说明书和附图被认为是示例性的而非限定性的,并且所有这些修正都旨在落在本教义的范围内。

这些益处、优势、问题的解决方案以及可能使任何益处、优势或解决方案发生或变得更为突出的任何要素不被解释成任何或所有权利要求的关键、必需或必要特征或要素。本发明单独由所附权利要求书限定,包括在本申请处于未决状态期间做出的任何修改以及出版后这些权利要求的所有等效物。

此外,在该文档中,诸如第一和第二、顶部和底部等等之类的关系项可单独地用来将一个实体或动作与另一实体或动作区别开,而不一定要求或暗示这些实体或动作之间具有任何实际的这种关系或顺序。术语“构成”、“构成有”、“具有”、“具备”、“包括”、“包括有”、“包含”、“含有”或它们的任何其他变型旨在覆盖非排他性包括,以使构成为、具有、包括、包含一要素列表的过程、方法、物品或装置不仅包括那些要素还可包括对该过程、方法、物品或装置未明确列出的或固有的其他要素。以“构成有一”、“具有一”、“包括一”或“包含一”开头的要素,在没有更多约束条件的情形下,不排除在构成有、具有、包括或包含该要素的过程、方法、物品或装置中有另外的相同要素存在。术语“一”和“一个”被定义为一个或多个,除非本文中另行明确声明。术语“基本上”、“本质上”、“近似”、“大约”或这些术语的任何其他版本被定义为接近本领域普通技术人员所理解的那样,并且在一个非限定性实施例中,这些术语被定义为在10%以内,在另一实施例中在5%以内,在另一实施例中在1%以内,而在另一实施例中在0.5%以内。本文中使用的术语“耦合的”被定义为连接的,尽管不一定是直接连接的也不一定是机械方式连接的。以某种方式“配置的”设备或结构至少以该种方式进行配置,但也可以未列出的方式进行配置。

要理解,一些实施例可包括一个或多个通用或专用处理器(或“处理器件”),例如微处理器、数字信号处理器、定制的处理器和现场可编程门阵列(FPGA)以及唯一存储的程序指令(包括软件和固件两者),所述唯一存储的程序指令控制一个或多个处理器以连同某些非处理器电路实现本文所描述的方法和/或装置的一些、多数或全部功能。替代地,一些或全部功能可由无存储程序指令的状态机实现,或者在一种或多种应用中由专用集成电路(ASIC)实现,在这类ASIC中每种功能或某些功能的某些组合被实现为定制逻辑。当然,也可使用这两种方式的组合。

另外,一实施例可被实现为计算机可读存储介质,该计算机可读存储介质具有存储在其上的计算机可读代码,用于对(例如包含处理器的)计算机编程以执行如本文描述和要求保护的方法。这种计算机可读存储介质的示例包括但不限于硬盘、CD-ROM、光存储器件、磁存储器件、ROM(只读存储器)、PROM(可编程只读存储器)、EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)以及闪存。此外,预期本领域普通技术人员虽然做出由例如可用时间、当前技术和经济考虑促动的可能显著的努力以及许多设计选择,但在得到本文所公开的构思和原理指导时,将容易地能以最少的试验产生此类软件指令和程序以及IC。

提供本公开的摘要以使读者快速地确定本技术公开的性质。提交该摘要,并且理解该摘要将不用于解释或限制权利要求的范围或含义。此外,在上述详细描述中,可以看出为了使本公开整体化,各个特征在各实施例中被编组到一起。本公开方法不应被解释为反映带权利要求的实施例需要比每一个权利要求中明确地记载的特征更多的特点的意图。相反,如接下来的权利要求所反映,发明主题在于少于单个公开的实施例的全部特征。因此,下面的权利要求在此被纳入详细说明书中,其中每个权利要求独自作为单独要求保护的主题事项。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号