CN112561014A - 一种一维条码的编解码方法 - Google Patents

一种一维条码的编解码方法 Download PDF

Info

Publication number
CN112561014A
CN112561014A CN202011517852.XA CN202011517852A CN112561014A CN 112561014 A CN112561014 A CN 112561014A CN 202011517852 A CN202011517852 A CN 202011517852A CN 112561014 A CN112561014 A CN 112561014A
Authority
CN
China
Prior art keywords
bar
bar code
sequence
data
space
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.)
Granted
Application number
CN202011517852.XA
Other languages
English (en)
Other versions
CN112561014B (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.)
Ningbo Shangchen Wulian Technology Co ltd
Original Assignee
Ningbo Shangchen Wulian Technology Co ltd
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 Ningbo Shangchen Wulian Technology Co ltd filed Critical Ningbo Shangchen Wulian Technology Co ltd
Priority to CN202011517852.XA priority Critical patent/CN112561014B/zh
Publication of CN112561014A publication Critical patent/CN112561014A/zh
Application granted granted Critical
Publication of CN112561014B publication Critical patent/CN112561014B/zh
Active 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
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06018Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking one-dimensional coding
    • G06K19/06028Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking one-dimensional coding using bar codes
    • 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
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14131D bar codes

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Printers Characterized By Their Purpose (AREA)

Abstract

本发明公开了一维条码的编解码方法,预设条码校验方式、条码精度值、条码高度值、数字编码规则、条码起始符、条码终止符、条码左侧空白区以及条码右侧空白区,判断编码数据的合法性,生成数据符数字和校验符数字,对生成的数据符数字和校验符数字编码成条空比例序列,条空比例序列的左侧从右向左依次加入条码起始符、条码左侧空白区,右侧从左向右依次加入条码终止符、条码右侧空白区,组成新的条空比例序列,乘以条码精度值,获得条空宽度序列,从左到右依次根据模块宽度比例转换成相应数量的0和1,奇数数位转换为0,偶数位转换为1,得到01序列,并由图片处理灰度值,生成灰度数据,根据条码高度值及供识别的字符位图数据生成BMP格式的图片。

Description

一种一维条码的编解码方法
技术领域
本发明涉及条形码编码及解码技术领域,具体为一种一维条码的编解码方法。
背景技术
现有的一维条码码制,比如EAN-13为固定长度,且其编码需要向相关组织申请,Code39编码太长,ITF25解码容易误码, Code128对奇数个数字进行编码不够高效等。EAN-13平均一个数字需要7个模块表示;Code39一个数字至少需要12个单元表示;Code128编码纯数字时,偶数个数字每两个数字需要11个单元,但遇到奇数个数字编码情况,则需要增加转换字符,大大减低编码效率;ITF25编码一个数字也至少需要7个单元。上述的一维条码无法达到编码高效、易识读,且带校验减低解码误码率的效果。
发明内容
本发明目的在于提供一种编码高效且带校验减低解码误码率的一种一维条码的编解码方法。
本发明所述的一维条码的编码方法,包括以下步骤:
预设条码校验方式、条码精度值、条码高度值、数字编码规则、条码起始符、条码终止符、条码左侧空白区以及条码右侧空白区;
判断编码数据的合法性,若编码的全部数据为数字,则进行编码,反之不进行编码;
依据条码校验方式计算检验,结合将要编码的数字数据,生成数据符数字和校验符数字;
依据数字编码规则,对生成的数据符数字和校验符数字编码成条空比例序列;
在编码成条空比例序列左侧从右向左依次加入条码起始符和条码左侧空白区比例序列,在编码成条空比例序列右侧从左向右依次加入条码终止符和条码右侧空白区比例序列,组成新的条空比例序列;
将新的条空比例序列均乘以条码精度值,以获得条空宽度序列;
将条空宽度序列从左到右依次根据条空宽度转换成相应数量的0和1,其中奇数数位转换为0,偶数位转换为1,得到01序列,所述条空宽度为图片像素点组成的条和空的宽度;
将得到01序列,按“0”转换成灰度值255的数据,“1”转换成灰度值0的数据,生成一行灰度数据;
依据条码高度值将该行灰度数据进行复制并叠加,以得到多行灰度数据,最后再添加上供识别的字符位图数据,将这些数据存储成BMP格式的图片,即得到完整的一维码码图,所述条码高度值为像素点数的行数值。
所述的一维条码的编码方法,不管编码数据多少个,一个数字的编码都只需要6个单元,其编码更加高效,且更加容易识别和读取,依据条码校验方式计算检验或奇偶校验,结合将要编码的数字数据,生成数据符数字和校验符数字,可以降低解码的误码率。
一种一维条码的解码方法,包括以下步骤:
获取条空序列的左、右侧空白区的条码,并将其去除,保留无左、右侧空白区的条空序列的条码;
将无左、右侧空白区的条空序列的条码,依据条码起始符和条码终止符的模块条空相似边缘比例判断当前条空序列的是否存在正向或反向摆放所述一维条码条空;
若当前条空序列的条码左侧与条码起始符模块条空相似边缘比例相同,且当前条空序列的条码右侧与条码终止符模块条空相似边缘比例相同,则判断该条空序列的存在正向摆放的所述一维码条码条空;
若当前条空序列的条码左侧与条码终止符模块条空的反向相似边缘比例相同,且当前条空序列的条码右侧与条码起始符模块条空的反向相似边缘比例相同,则判断该条空序列的存在反向摆放的所述一维条码条空;
若该条空序列的条码是正向摆放,则从起始符且位于序列前端向后,依次获取每个数据条空,所述数据条空为两条两空,并计算相似边缘比例,根据相似边缘比例,获得对应的数据字符数字;若该条空序列的条码是反向摆放,则从起始符且位于序列后端向前,依次获取每个数据条空,所述数据条空为两条两空,并计算相似边缘比例,根据相似边缘比例,获得对应的数据字符数字;
或者,若该条空序列的条码是正向摆放,则从起始符且位于序列前端向后,依次获取每个数据条空,所述数据条空为两条两空;若该条空序列的条码是反向摆放,则从起始符且位于序列后端向前,依次获取每个数据条空,所述数据条空为两条两空;计算该两条两空的总宽度的六分之一,再将每个条空宽度除以总宽度的六分之一,并四舍五入到整数位,结果大于1的为宽模块,反之为窄模块,宽模块用“1”表示,窄模块用“0”表示,得到对应数据的宽窄序列,进而获得对应的数据字符数字;
将获得的数据字符数字分别按单校验或双校验的方式进行校验,若根据相似边缘比例对应的数据字符数字进行校验成功,则解码成功,输出相似边缘比例对应数据字符数字的数据串,若根据宽窄序列对应的数据字符数字进行校验成功则解码成功,输出宽窄序列对应的数据字符数字的数据串,若根据相似边缘比例对应的数据字符数字进行校验和根据宽窄序列对应的数据字符数字进行校验均校验失败,则解码失败。
所述的一维条码的解码方法,解码根据条码的条空序列,以及条码起始符和条码终止符的模块条空相似边缘比例和编码数字对应的字符的相似边缘比例宽度的方法(计算条+空或空+条的比例)。由于条码可能因为打印机问题,出现油墨扩散,或者设备因为环境光问题,出现曝光不足或过曝。这些都可能导致获取的条空序列出现条“吃”空或空“吃”条现象,用条码起始符和条码终止符的模块条空相似边缘比例和编码数字对应的字符的相似边缘比例宽度的方法,可以提高解码的准确性。
附图说明
图1为本发明的一个完整条形码的结构示意图。
具体实施方式
一种一维条码的编码方法,预设条码校验方式、条码精度值、条码高度值、数字编码规则、条码起始符、条码终止符、条码左侧空白区以及条码右侧空白区;判断编码数据的合法性,若编码的全部数据为数字,则进行编码,反之不进行编码;依据条码校验方式计算检验,结合将要编码的数字数据,生成数据符数字和校验符数字;依据数字编码规则,对生成的数据符数字和校验符数字编码成条空比例序列;在编码成条空比例序列左侧从右向左依次加入条码起始符、条码左侧空白区,在编码成条空比例序列右侧从左向右依次加入条码终止符、条码右侧空白区,组成新的条空比例序列;将新的条空比例序列均乘以条码精度值,以获得条空宽度序列;将条空宽度序列从左到右依次根据条空宽度转换成相应数量的0和1,其中奇数数位转换为0,偶数位转换为1,得到01序列;将得到01序列,按“0”转换成灰度值255,“1”转换成灰度值0,生成一行灰度数据;依据条码高度值将该行灰度数据进行复制并叠加,以得到多行灰度数据,最后再添加上供识别的字符位图数据,将这些数据存储成BMP格式的图片,即得到所要的一维码码图,条空宽度为图片像素点数组成的条和空的宽度,条码高度值为像素点数的行数值。
如图1所示,条码带有起始符和终止符的非定长的连续条码,条码中的字符间无分隔符。其中条码上的编码数字0到9,数字编码规则为条码编码数字包括0、1、2、3、4、5、6、7、8、9,每个数据符或校验符由两模块条和两模块空构成。所述数据符总宽度为六个单元,其中编码数字1、2、4、8在编码中有一个宽模块,一个宽模块大于1个单元的条或空,宽模块的宽度为三个单元;编码数字0、3、5、6、7,9在编码中有两个宽模块,宽模块的宽度为两个单元。宽模块用“1”表示,窄模块用“0”表示,编码数字0对应的模块编码(宽窄)为1010,编码数字1对应的模块编码(宽窄)为0001,编码数字2对应的模块编码(宽窄)为0010,编码数字3对应的模块编码(宽窄)为0011,编码数字4对应的模块编码(宽窄)为0100,编码数字5对应的模块编码(宽窄)为0101,编码数字6对应的模块编码(宽窄)为0110,编码数字7对应的模块编码(宽窄)为1100,编码数字8对应的模块编码(宽窄)为1000,编码数字9对应的模块编码(宽窄)为1001,上述编码数字对应的模块编码(宽窄)可转换为用模块宽度的比例表示,具体的编码数字0对应的模块(条空)宽度的比例为2:1:2:1,编码数字1对应的模块(条空)宽度的比例为1:1:1:3,编码数字2对应的模块(条空)宽度的比例为1:1:3:1,编码数字3对应的模块(条空)宽度的比例为1:1:2:2,编码数字4对应的模块(条空)宽度的比例为1:3:1:1,编码数字5对应的模块(条空)宽度的比例为1:2:1:2,编码数字6对应的模块(条空)宽度的比例为1:2:2:1,编码数字7对应的模块(条空)宽度的比例为2:2:1:1,编码数字8对应的模块(条空)宽度的比例为3:1:1:1,编码数字9对应的模块(条空)宽度的比例为2:1:1:2。
条码起始符依据一个单元条、一个单元空、五个单元条、一个单元空的编排顺序组成,条码终止符依据一个单元条、一个单元空、一个单元条、五个单元空、一个单元条的编排顺序组成,所述条码左侧空白区和条码右侧空白区均由十个单元空组成。
条码校验方式包括单校验和双校验两种方式,单校验为将0、1、2、3、4、5、6、7、8、9所有数字进行计算校验,并生成校验符,所述双校验为0、1、2、3、4、5、6、7、8、9每个数字所在的位置进行奇数位和偶数位分别计算校验,并生成奇和偶校验符。校验可选择采用单校验还是双校验方式,单校验就是所有数据一起计算校验,生成校验符,双校验即奇数或偶数位置的数据字符分别计算校验,生成奇或偶校验符。校验符的编码与数据编码一致。具有双校验的码,在单校验模式下,也一定可校验通过。译码器译码后可选择是否送出校验符。奇校验:奇数位置的数据符表示的数字值求和S,S再关于10求模得A。若A不为0,则B=10-A,否则B=0;B就是最后的奇校验字符,同理可计算偶校验字符。单校验的计算方法同理,只是所有数据都参与求和。双校验的方式如表1,单校验的方式如表2。
表1:
Figure 346044DEST_PATH_IMAGE002
表2:
Figure 944515DEST_PATH_IMAGE004
供人识别字符:显示数据符和校验符的内容。
条码精度值为条码打印精度值,如要编码的数据是“1123456123”,采用单校验方式,根据表2,计算得到的校验符为“2”,那么整个比例序列包括左右空白区、起始符终止符和数据为:
左空白区:10个模块
起始符:1151
数据1:1113
数据1:1113
数据2:1131
数据3:1122
数据4:1311
数据5:1212
数据6:1221
数据1:1113
数据2:1131
数据3:1122
校验符2:1131
终止符11151
右空白区:10个模块
假设打印精度是3个点,也就是一个模块3个点的宽度,那上面的比例数据就放大3倍,即
左空白区:30个点
起始符:3 3 15 3
数据1:3 3 3 9
数据1:3 3 3 9
数据2:3 3 9 3
数据3:3 3 6 6
数据4:3 9 3 3
数据5:3 6 3 6
数据6:3 6 6 3
数据1:3 3 3 9
数据2:3 3 9 3
数据3:3 3 6 6
校验符2:3 3 9 3
终止符::3 3 3 15 3
右空白区:30个点
整条线的数据就是30 3 3 15 3 3 3 3 9 ......3 3 3 15 3 30
转换成01序列就是,000....000(30个) 111000111111111111111000111000111000000000...........。
将01序列中“0”按灰度255,“1”按灰度0生成灰度图像中的一行数据
再根据要生成条码图形的高度(行数),多次叠加上面的行数据,最后添加上供人识别字符的位图数据,就可以生成完整的编码码图。
一种一维条码的解码方法,其特征在于,包括以下步骤:
获取条空序列的左、右侧空白区的条码,并将其去除,保留无左、右侧空白区的条空序列的条码;
将无左、右侧空白区的条空序列的条码,依据条码起始符和条码终止符的模块条空相似边缘比例判断当前条空序列的是否存在正向或反向摆放所述一维条码条空;
若当前条空序列的条码左侧与条码起始符模块条空相似边缘比例相同,且当前条空序列的条码右侧与条码终止符模块条空相似边缘比例相同,则判断该条空序列的存在正向摆放的所述一维码条码条空;
若当前条空序列的条码左侧与条码终止符模块条空的反向相似边缘比例相同,且当前条空序列的条码右侧与条码起始符模块条空的反向相似边缘比例相同,则判断该条空序列的存在反向摆放的所述一维条码条空;
若该条空序列的条码是正向摆放,则从起始符且位于序列前端向后,依次获取每个数据条空,所述数据条空为两条两空,并计算相似边缘比例,根据相似边缘比例,获得对应的数据字符数字;若该条空序列的条码是反向摆放,则从起始符且位于序列后端向前,依次获取每个数据条空,所述数据条空为两条两空,并计算相似边缘比例,根据相似边缘比例,获得对应的数据字符数字;
或者,若该条空序列的条码是正向摆放,则从起始符且位于序列前端向后,依次获取每个数据条空,所述数据条空为两条两空;若该条空序列的条码是反向摆放,则从起始符且位于序列后端向前,依次获取每个数据条空,所述数据条空为两条两空;计算该两条两空的总宽度的六分之一,再将每个条空宽度除以总宽度的六分之一,并四舍五入到整数位,结果大于1的为宽模块,反之为窄模块,宽模块用“1”表示,窄模块用“0”表示,得到对应数据的宽窄序列,进而获得对应的数据字符数字;
将获得的数据字符数字分别按单校验或双校验的方式进行校验,若根据相似边缘比例对应的数据字符数字进行校验成功,则解码成功,输出相似边缘比例对应数据字符数字的数据串,若根据宽窄序列对应的数据字符数字进行校验成功则解码成功,输出宽窄序列对应的数据字符数字的数据串,若根据相似边缘比例对应的数据字符数字进行校验和根据宽窄序列对应的数据字符数字进行校验均校验失败,则解码失败。
所述获取条空序列的左、右侧空白区的条码,并将其去除,保留无左、右侧空白区的条空序列的条码,具体为对条空序列的条码,序列左段从左向右相邻的模块空的宽度比模块条的宽度大于8的,则认为此模块空为空白区,序列右段从右向左相邻的模块空的宽度比模块条的宽度大于8的,认为此空为空白区,则将左、右侧空白区的条码去除。
获取到起始符与终止符后,则进行数据的解码。每个数据一共2条2空,共6个单元。根据编码数字对应模块宽度的比例,得到0~9这10个数字对应的字符的相似边缘比例宽度,编码数字0的模块(条空)宽度的比例2:1:2:1对应的字符的相似边缘比例宽度为3:3:3,编码数字1的模块(条空)宽度的比例1:1:1:3对应的字符的相似边缘比例宽度为2:2:4,编码数字2的模块(条空)宽度的比例1:1:3:1对应的字符的相似边缘比例宽度为2:4:4,编码数字3的模块(条空)宽度的比例1:1:2:2对应的字符的相似边缘比例宽度为2:3:4,编码数字4的模块(条空)宽度的比例1:3:1:1对应的字符的相似边缘比例宽度为4:4:2,编码数字5的模块(条空)宽度的比例1:2:1:2对应的字符的相似边缘比例宽度为3:3:3,编码数字6的模块(条空)宽度的比例1:2:2:1对应的字符的相似边缘比例宽度为3:4:3,编码数字7的模块(条空)宽度的比例2:2:1:1对应的字符的相似边缘比例宽度为4:3:2,编码数字8的模块(条空)宽度的比例3:1:1:1对应的字符的相似边缘比例宽度为4:2:2,编码数字9的模块(条空)宽度的比例2:1:1:2对应的字符的相似边缘比例宽度为3:2:3。对每个字符的2条2空计算总宽度S,S/6就是1个单元宽度。将每个相似边缘条空宽度W(条+空或空+条)乘以6,再除以S,得到的结果四舍五入到整数位后,得到的就是相似边缘比例宽度M。将每个字符的三个相似边缘比例宽度根据0~9这10个数字对应的字符的相似边缘比例宽度,就可以得到其对应的数字字符。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

Claims (8)

1.一种一维条码的编码方法,其特征在于,包括以下步骤:
预设条码校验方式、条码精度值、条码高度值、数字编码规则、条码起始符、条码终止符、条码左侧空白区以及条码右侧空白区;
判断编码数据的合法性,若编码的全部数据为数字,则进行编码,反之不进行编码;
依据条码校验方式计算校验,结合将要编码的数字数据,生成数据符数字和校验符数字;
依据数字编码规则,对生成的数据符数字和校验符数字编码成条空比例序列;
在编码成条空比例序列左侧从右向左依次加入条码起始符和条码左侧空白区比例序列,在编码成条空比例序列右侧从左向右依次加入条码终止符和条码右侧空白区比例序列,组成新的条空比例序列;
将新的条空比例序列均乘以条码精度值,以获得条空宽度序列;
将条空宽度序列从左到右依次根据条空宽度转换成相应数量的0和1,其中奇数数位转换为0,偶数位转换为1,得到01序列,所述条空宽度为图片像素点组成的条和空的宽度;
将得到01序列,按“0”转换成灰度值255的数据,“1”转换成灰度值0的数据,生成一行灰度数据;
依据条码高度值将该行灰度数据进行复制并叠加,以得到多行灰度数据,最后再添加上供识别的字符位图数据,将这些数据存储成BMP格式的图片,即得到完整的一维码码图,所述条码高度值为像素点数的行数值。
2.根据权利要求1所述的一维条码的编码方法,其特征在于,所述数字编码规则为条码编码数字包括0、1、2、3、4、5、6、7、8、9,每个数据符或校验符由两模块条和两模块空构成,所述数据符总宽度为六个单元,其中编码数字1、2、4、8在编码中只有一个宽模块,所述宽模块的宽度为三个单元;编码数字0、3、5、6、7,9在编码中有两个宽模块,所述宽模块宽度为两个单元。
3.根据权利要求2所述的一维条码的编码方法,其特征在于,所述条码起始符依据一个单元条、一个单元空、五个单元条、一个单元空的编排顺序组成,所述条码终止符依据一个单元条、一个单元空、一个单元条、五个单元空、一个单元条的编排顺序组成,所述条码左侧空白区和条码右侧空白区均由十个单元空组成。
4.根据权利要求3所述的一维条码的编码方法,其特征在于,所述条码精度值为条码打印精度值。
5.根据权利要求4所述的一维条码的编码方法,其特征在于,所述条码校验方式包括单校验和双校验两种方式。
6.根据权利要求5所述的一维条码的编码方法,其特征在于,所述单校验为将0、1、2、3、4、5、6、7、8、9所有数字进行计算校验,并生成校验符,所述双校验为0、1、2、3、4、5、6、7、8、9每个数字所在的位置进行奇数位和偶数位分别计算校验,并生成奇和偶校验符。
7.一种一维条码的解码方法,其特征在于,包括以下步骤:
获取条空序列的左、右侧空白区的条码,并将其去除,保留无左、右侧空白区的条空序列的条码;
将无左、右侧空白区的条空序列的条码,依据条码起始符和条码终止符的模块条空相似边缘比例判断当前条空序列的是否存在正向或反向摆放所述一维条码条空;
若当前条空序列的条码左侧与条码起始符模块条空相似边缘比例相同,且当前条空序列的条码右侧与条码终止符模块条空相似边缘比例相同,则判断该条空序列的存在正向摆放的所述一维码条码条空;
若当前条空序列的条码左侧与条码终止符模块条空的反向相似边缘比例相同,且当前条空序列的条码右侧与条码起始符模块条空的反向相似边缘比例相同,则判断该条空序列的存在反向摆放的所述一维条码条空;
若该条空序列的条码是正向摆放,则从起始符且位于序列前端向后,依次获取每个数据条空,所述数据条空为两条两空,并计算相似边缘比例,根据相似边缘比例,获得对应的数据字符数字;若该条空序列的条码是反向摆放,则从起始符且位于序列后端向前,依次获取每个数据条空,所述数据条空为两条两空,并计算相似边缘比例,根据相似边缘比例,获得对应的数据字符数字;
或者,若该条空序列的条码是正向摆放,则从起始符且位于序列前端向后,依次获取每个数据条空,所述数据条空为两条两空;若该条空序列的条码是反向摆放,则从起始符且位于序列后端向前,依次获取每个数据条空,所述数据条空为两条两空;计算该两条两空的总宽度的六分之一,再将每个条空宽度除以总宽度的六分之一,并四舍五入到整数位,结果大于1的为宽模块,反之为窄模块,宽模块用“1”表示,窄模块用“0”表示,得到对应数据的宽窄序列,进而获得对应的数据字符数字;
将获得的数据字符数字分别按单校验或双校验的方式进行校验,若根据相似边缘比例对应的数据字符数字进行校验成功,则解码成功,输出相似边缘比例对应数据字符数字的数据串,若根据宽窄序列对应的数据字符数字进行校验成功则解码成功,输出宽窄序列对应的数据字符数字的数据串,若根据相似边缘比例对应的数据字符数字进行校验和根据宽窄序列对应的数据字符数字进行校验均校验失败,则解码失败。
8.根据权利要求7所述的一维条码的解码方法,其特征在于,所述获取条空序列的左、右侧空白区的条码,并将其去除,保留无左、右侧空白区的条空序列的条码,具体为对条空序列的条码,序列左段从左向右相邻的模块空的宽度比模块条的宽度大于8的,则认为此模块空为空白区,序列右段从右向左相邻的模块空的宽度比模块条的宽度大于8的,认为此空为空白区,则将左、右侧空白区的条码去除。
CN202011517852.XA 2020-12-21 2020-12-21 一种一维条码的编解码方法 Active CN112561014B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011517852.XA CN112561014B (zh) 2020-12-21 2020-12-21 一种一维条码的编解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011517852.XA CN112561014B (zh) 2020-12-21 2020-12-21 一种一维条码的编解码方法

Publications (2)

Publication Number Publication Date
CN112561014A true CN112561014A (zh) 2021-03-26
CN112561014B CN112561014B (zh) 2023-03-14

Family

ID=75030629

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011517852.XA Active CN112561014B (zh) 2020-12-21 2020-12-21 一种一维条码的编解码方法

Country Status (1)

Country Link
CN (1) CN112561014B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113269003A (zh) * 2021-06-02 2021-08-17 海特锐(天津)科技有限公司 一种轮毂条码的读码方法、编码方法、读取系统及其存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6279828B1 (en) * 1999-03-01 2001-08-28 Shawwen Fann One dimensional bar coding for multibyte character
CN106709542A (zh) * 2015-11-18 2017-05-24 广西职业技术学院 六编码元素物品条码
CN106874820A (zh) * 2017-01-12 2017-06-20 杭州晟元数据安全技术股份有限公司 一种基于最小二乘法的一维条码码字解码方法
CN108009455A (zh) * 2017-11-07 2018-05-08 深圳市华汉伟业科技有限公司 一种条形码的扫描信号的解码方法及装置
CN109657515A (zh) * 2018-12-18 2019-04-19 福州图腾易讯信息技术有限公司 一种一维条形码的解码方法及设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6279828B1 (en) * 1999-03-01 2001-08-28 Shawwen Fann One dimensional bar coding for multibyte character
CN106709542A (zh) * 2015-11-18 2017-05-24 广西职业技术学院 六编码元素物品条码
CN106874820A (zh) * 2017-01-12 2017-06-20 杭州晟元数据安全技术股份有限公司 一种基于最小二乘法的一维条码码字解码方法
CN108009455A (zh) * 2017-11-07 2018-05-08 深圳市华汉伟业科技有限公司 一种条形码的扫描信号的解码方法及装置
CN109657515A (zh) * 2018-12-18 2019-04-19 福州图腾易讯信息技术有限公司 一种一维条形码的解码方法及设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陶胜: "一维条形码生成与识别技术", 《电脑编程技巧与维护》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113269003A (zh) * 2021-06-02 2021-08-17 海特锐(天津)科技有限公司 一种轮毂条码的读码方法、编码方法、读取系统及其存储介质

Also Published As

Publication number Publication date
CN112561014B (zh) 2023-03-14

Similar Documents

Publication Publication Date Title
EP1016027B1 (en) Distortion resistant double-data correcting color transition barcode and method of generating and using same
JP3643196B2 (ja) 印刷媒体に印刷する情報をエンコードする方法、印刷媒体に印刷された情報をデコードする方法、および2次元データバーコード
US5553084A (en) Error correction enhancement for code one and other machine-readable symbologies
US5324923A (en) Apparatus for producing a dynamically variable machine readable binary code and method for reading and producing thereof
US6722567B2 (en) Generating and decoding graphical bar codes
US8011596B2 (en) Machine readable 2D symbology printable on demand
CN100369059C (zh) 一种矩阵式二维条码及其编码解码方法
US20040026511A1 (en) Guiding a scanning device to decode 2D symbols
CN104636780B (zh) 矩阵式二维码及其编码方法和译码方法
CA2172511C (en) Packet bar code encoding and decoding
US7604180B2 (en) Code pattern, printed matter, image generating apparatus, image processing apparatus, image generating method, and information identifying method
CN108073966B (zh) 一种二维码与孔阵码的转换方法
CN104143109A (zh) 一种二维码的编码和解码方法及其印刷物
CN107545289A (zh) 矩阵式二维码的编码方法及解码方法
KR960706146A (ko) 바코드 기호표시법을 이용한 16비트 및 수치데이타 수집장치 및 방법(Apparatus and method for 16-bit and numeric data collection using bar code symbalogies)
US7611067B2 (en) Printed material with identification function, image generating apparatus, image processing apparatus, image generating method, image processing method, and program product therefor
CN112561014B (zh) 一种一维条码的编解码方法
CN102004935A (zh) 基于ldpc码的二维条码编码与解码方法
US20110240749A1 (en) HD Barcode
CN112152634B (zh) 分块压缩编码方法、装置、计算机设备及可读存储介质
CN100356399C (zh) 二维条形码码图印刷方法及解码方法
CN109886711A (zh) 一种商品条码编码方法及装置
US6641051B1 (en) System for embedded digital data that allows embedding of data around known obstructions
CN101571916B (zh) 一种点阵均匀的网屏编码的识别方法
CN101833645B (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