一种基于哈夫曼编码的一维高密度多进制防伪彩色条码的设计
李自乐 工信 3140104024
摘要:提高一维编码的编码容量和效率且实现加密。
关键字:彩色条码 编码容量 多进制条码 哈夫曼树 加密
传统的一维条码是由矩形条、空平行排列而成的,其实是二进制的一种编码,而为了保证容错率,编码容量必须保持相当高,二进制编码的容量显然不足,而当今的技术,识别多色条码已成为可能。同时由于生产生活的发展,条码携带的信息量需求越来越高,需要一种高效编码的条码来编码网页链接等非纯数字内容。本文介绍了一种高密度多进制条形码的设计方案,来解决二进制条码容量不足的问题,以及提供一种高效的编码方式,且拥有加密功能,相比二维条码,其扫描速度更快。
1.彩色条码的编码原理
一维多进制色条码也是由模块组配而成各模块元素的宽度也是单位元素宽度的整数倍.与二进制条码不同的是,色条码的模块元素可以由多种颜色构成,在颜色上具有多进制的特性.因此,一维多进制色条码可以设计成具有多个模块宽度、多种模块颜色的连续型条码,可称作(n,k,c)码.其中n为一个条码字符中所含单位元素宽度的个数,k为一个字符中模块元素的总数,c为一个字符中各模块使用的颜色总数(包括静区颜色),再引入作为一个字符使用的模块数,即字符中模块所含单位元素宽度个数的最大值。并且可以算出这种编码的容量。[1]
然而信息论[2]认为:若信源编码的平平均码长大于信源熵,该信源编码存在编码冗余。为了降低甚至消除这种冗余,我们采取熵编码的形式。高密度多进制彩色条码采用哈夫曼编码[3],由于受条码本身所能携带信息量的限制,不能对每个条码建立的哈夫曼编码表,故为了取得整体的最优编码,本编码采用一套由大量数据分析得出的字符频率表进行编码。为了适应多进制条码的编码,编码需要一种最优c叉树(参考最优二叉树)进行。
2.四进制哈夫曼编码的实验及结果
本次实验采用如下的频率表使用四进制编码26个英文字母:
图1-字母频率
那么该多进制哈夫曼编码的构造如下:
根据多进制哈夫曼树的建立方法[4],需添加2个空节点,然后执行如下步骤:
有n个权值