320 likes | 494 Views
第 2 章 常用的一维条码及编码理论. 本章概要. 本章主要介绍常用的一维条码技术基本知识,包括条码的符号结构、字符集、编码规则和应用领域等。 本章还介绍了条码编码理论,包括条码编码方法、容量计算、校验和纠错方法。. 2.1 几种常用的一维条码. 2.1.1 二五条码 二五条码是一种只有“条”表示信息的非连续型条码。每一个条码字符由规则排列的 5 个“条”组成,其中有两个“条”为宽单元,其余的“条”和“空”以及字符间隔都是窄单元 。 二五条码的字符集为数字字符 0 ~ 9 。. 2.1 几种常用的一维条码. 2.1.1 二五条码
E N D
本章概要 • 本章主要介绍常用的一维条码技术基本知识,包括条码的符号结构、字符集、编码规则和应用领域等。 • 本章还介绍了条码编码理论,包括条码编码方法、容量计算、校验和纠错方法。
2.1 几种常用的一维条码 2.1.1二五条码 • 二五条码是一种只有“条”表示信息的非连续型条码。每一个条码字符由规则排列的5个“条”组成,其中有两个“条”为宽单元,其余的“条”和“空”以及字符间隔都是窄单元。 • 二五条码的字符集为数字字符0~9 。
2.1 几种常用的一维条码 2.1.1二五条码 • 二五条码由左侧空白区、起始符、数据符、终止符及右侧空白区构成。空不表示信息,宽单元用二进制的“1”表示,窄单元用二进制的“0”表示,起始符用二进制“110”表示(二个宽单元和一个窄单元),终止符用二进制“101”表示(中间是窄单元,两边是宽单元)。
2.1 几种常用的一维条码 2.1.1二五条码
2.1 几种常用的一维条码 2.1.2交插二五条码 • 交插二五条码是一种条、空均表示信息的连续型、非定长、具有自校验功能的双向条码。它的字符集为数字字符0~9。下图是表示“3185”的交插二五条码的结构。
2.1 几种常用的一维条码 2.1.2交插二五条码 • 交插二五码由左侧空白区、起始符、数据符、终止符及右侧空白区构成。它的每一个条码数据符由5个单元组成,其中两个是宽单元(表示二进制的“1”),三个窄单元(表示二进制的“0”)。条码符号从左到右,表示奇数位数字符的条码数据符由条组成,表示偶数位数字符的条码数据符由空组成。组成条码符号的条码字符个数为偶数。如下图所示。
2.1 几种常用的一维条码 2.1.2交插二五条码 • 起始符包括两个窄条和两个窄空,终止符包括两个条(一个宽条、一个窄条)和一个窄空,如图所示。
2.1 几种常用的一维条码 2.1.3三九条码 • 三九条码是一种条、空均表示信息的非连续型、非定长、具有自校验功能的双向条码 。 • 三九条码的每一个条码字符由9个单元组成(5个条单元和4个空单元),其中3个单元是宽单元(用二进制的“1” 表示),其余是窄单元(用二进制的“0” 表示),故称之为“39条码”。
2.1 几种常用的一维条码 2.1.3三九条码 • 39条码符号包括:左右两侧空白区,起始符、条码数据符(包括符号校验字符)、终止符、如图2.5所示,条码字符间隔是一个空,它将条码字符分隔开。
2.1 几种常用的一维条码 2.1.3三九条码 三九条码校验码的计算方法 • 通过查表,得到每一个数据字符相应的字符值。 • 计算出所有数据字符值的总和。 • 将数值的总和除以43。 • 将所得的余数在表2.3中查对应的字符就是符号校验字符。译码器可以输出43模数的符号校验字符。
2.1 几种常用的一维条码 2.1.3三九条码 • 例如请计算39码 *S123$5*数据的校验码,其计算过程见表 。
2.1 几种常用的一维条码 2.1.4库德巴条码 • 库德巴条码是一种条、空均表示信息的非连续型、非定长、具有自校验功能的双向条码。它由条码字符及对应的供人识别字符组成。
2.1 几种常用的一维条码 2.1.4库德巴码 • 库德巴条码由左侧空白区、起始符、数据符、终止符及右侧空白区构成。它的每一个字符由7个单元组成(4个条单元和3个空单元),其中两个或3个是宽单元(用二进制“1” 表示 ),其余是窄单元(用二进制“0” 表示)。
2.1 几种常用的一维条码 2.1.4库德巴码 • 库德巴条码的字符、条码字符及二进制表示见表。
2.1 几种常用的一维条码 2.1.5UPC条码 • UPC码在技术上与EAN码完全一致,它的编码方法也是模块组合法,也是特性是一种长度固定、连续性的条码,每个字符由两个条、两个空、七个单元表示。 • UPC码仅可用来表示数字,故其字码集为数字0~9。UPC码共有A、B、C、D、E等五种版本,常用的商品条码版本为UPC-A码和UPC-E码。
2.1 几种常用的一维条码 2.1.5UPC条码
2.2一维条码条码的编码理论 2.2.1代码的编码方法 • 代码的编码系统是条码的基础,不同的编码系统规定了不同用途的代码的数据格式、含义及编码原则。 • 编制代码须遵循有关标准或规范,根据应用系统的特点与需求选择适合的代码及数据格式,并且遵守相应的编码原则。
2.2一维条码条码的编码理论 2.2.2条码符号的编码方法 • 条码的编码方法是指条码中条空的编码规则以及二进制的逻辑表示的设置。 • 条码的编码方法就是要通过设计条码中条与空的排列组合来表示不同的二进制数据。一般来说,条码的编码方法有两种:模块组合法和宽度调节法。
2.2一维条码条码的编码理论 2.2.2条码符号的编码方法 1.模块组合法 • 模块组合法是指条码符号中,条与空是由标准宽度的模块组合而成。一个标准宽度的条表示二进制的“1”,而一个标准宽度的空模块表示二进制的“0”。 。 • EAN条码、UPC条码和93码均属模块组配型条码。
2.2一维条码条码的编码理论 2.2.2条码符号的编码方法 1.模块组合法 • 模块组合法条码字符的构成如图所示。
2.2一维条码条码的编码理论 2.2.2条码符号的编码方法 2.宽度调节编码法 • 宽度调节法是指条码中,条与空的宽窄设置不同,是以窄单元(条或空)表示逻辑值“0”,宽单元(条或空)表示逻辑值“l”。宽单元通常是窄单元的2~3倍。39条码、库德巴条码及交插25条码均属宽度调节型条码。
2.2一维条码条码的编码理论 2.2.3编码容量的计算 1.代码的编码容量 • 代码的编码容量即每种代码结构可能编制的代码数量的最大值 。 • 例如,EAN/UCC-13代码的结构一,有5位数字可用于编制商品项目代码,在每一位数字的代码均无含义的情况下,其编码容量为100000,所以厂商如果选择这种代码结构,最多能标识100000种商品。
2.2一维条码条码的编码理论 2.2.3编码容量的计算 2.条码字符的编码容量 • 条码字符的编码容量即条码字符集中所能表示的字符数的最大值。 • 对于用宽度调节法编码的,仅有两种宽度单元的条码符号,即编码容量为: C(n,k),这里,C(n,k)=n!/[(n-k)!k!]=n(n-1)…(n-k+1)/k!。其中,n是每一条码字符中所包含的单元总数,k是宽单元或窄单元的数量。 • 例如,39条码,它的每个条码字符由9个单元组成,其中3个是宽单元,其余是窄单元,那么,其编码容量为 C(9,3)=9×8×7/(3×2×1)=84。
2.2一维条码条码的编码理论 2.2.3编码容量的计算 2.条码字符的编码容量 • 对于用模块组配的条码符号,若每个条码字符包含的模块是恒定的,其编码容量为C(n-1,2k-1),其中n为每一条码字符中包含模块的总数,k是每一条码字符中条或空的数量,k应满足1≤k≤n/2。 • 例如93条码,它的每个条码字符中包含9个模块,每个条码字符中的条的数量为3个,其编码容量为: C(9-1,2×3-1)=8×7×6×5×4/(5×4×3×2×1)=56 • 一般情况下,条码字符集中所表示的字符数量小于条码字符的编码容量。
2.2一维条码条码的编码理论 2.2.4条码的校验与纠错方式 • 一维码一般具有校验功能,即通过字符的校验来防止错误识读。而二维条码则具有纠错功能,这种功能使得二维条码在有局部破损的情况下仍可被正确地识读出来。
2.2一维条码条码的编码理论 2.2.4条码的校验与纠错方式 1.一维条码的校验方法 • 维码在纠错上主要采用校验码的方法。即从代码位置序号第二位开始,所有的偶(奇)数的数字代码求和的方法来校验条码的正确性。校验的目的是保证条空比的正确性。
2.2一维条码条码的编码理论 2.2.4条码的校验与纠错方式 2.二维条码的校验方法 • 纠错是为了当二维条码存在一定局部破损情况下,还能采用替代运算还原出正确的码词信息,从而保证条码的正确识读。二维码在保障识读正确方面采用了更为复杂、技术含量更高的方法。例如PDF417条码,在纠错方法上采用索罗门算法。
关 键 概 念 • 条码的编码方法 编码容量
小 结 • 二五条码是一种只有条表示信息的非连续型条码,它是最简单的条码,主要用于用于包装、运输和国际航空系统为机票进行顺序编号等。交插二五条码是一种条、空均表示信息的连续型、非定长、具有自校验功能的双向条码。交插二五条码起初广泛应用于运输、仓储、工业生产线、图书情报等领域的自动识别管理。三九条码是一种条、空均表示信息的非连续型、非定长、具有自校验功能的双向条码。三九条码(code 39)主要应用在运输、仓储、工业生产线、图书情报、医疗卫生等领域。库德巴条码是一种条、空均表示信息的非连续型、非定长、具有自校验功能的双向条码。它广泛应用于医疗卫生和图书馆行业,也用于邮政快件上。
小 结 • 条码技术涉及了两种类型的编码方式:一种是代码的编码方式;另一种是条码符号的编码方式。条码的编码方法是指条码中条空的编码规则以及二进制的逻辑表示的设置。一般来说,条码的编码方法有两种:模块组合法和宽度调节法。 • 条码字符的编码容量即条码字符集中所能表示的字符数的最大值。编码容量限制了条码字符集中所能包含的字符个数的最大值。
思考与练习 • 请从符号结构、编码方法等方面比较25条码、交插25码、39条码及库德巴码。 • 请画出“2678”的25条码和交插25码。 • 请画出“CODE39”的39条码。 • 请画出“A1258B”的库德巴码。 • 请计算39码 *S1234$5*数据的校验码。 • 请计算交叉二五条码的编码容量。