[发明专利]一种基于Huffman表的数据处理方法有效
申请号: | 201310630387.4 | 申请日: | 2013-12-02 |
公开(公告)号: | CN104679775B | 公开(公告)日: | 2019-04-23 |
发明(设计)人: | 杨正传 | 申请(专利权)人: | 上海联影医疗科技有限公司 |
主分类号: | G06F16/51 | 分类号: | G06F16/51;H03M7/40 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 201815 上海市嘉*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 huffman 数据处理 方法 | ||
本发明提供一种基于Huffman表的数据处理方法,包括:基于Huffman表构建二叉树数组,并基于所述二叉树数组进行解码。所述二叉树数组为二维数组,第一维是二叉树的层数,第二维是每层的节点数。述基于所述二叉树数组进行解码包括:读取图片数据,获取节点查询码,并根据所述二维数组的层数和节点查询码,对应定位至所述二维数组中的对应节点:若对应位置数据有效,则为叶节点,则当前查询结束;若否,则继续读取图片数据。本方法采用数组方式,避免容易出错的指针及树的操作,且编码相对更加简单,调试时更是比二叉树方式更加直观简单。
技术领域
本发明涉及一种数据处理方法,尤其涉及一种基于Huffman表的数据处理方法。
背景技术
传统的图像编码技术也称为第一代编码技术,主要有预测编码、变换编码、信息嫡编码与矢量量化。预测编码和变换编码是当前图像编码器最常用的技术,预测和变换的主要目的是降低图像原始空间域表示中存在的强相关性,使得预测或变换后的数据矩阵变成弱相关性矩阵,这样可以用标量量化和嫡编码进行有效的压缩。信息嫡编码是一种无失真编码,常用的有哈夫曼编码(Huffman Coding)、游程长度编码(Run Length Coding)和算术编码(Arithmetic Coding)三种。
传统的Huffman编码算法需要对原始数据进行两遍扫描:第一遍扫描要精确地统计出原始数据中每个值出现的频率,利用得到的频率创建Huffman树,并将树的有关信息保存起来,便于解压时使用;第二遍扫描根据前面得到的Huffman树对原始数据进行编码,并将编码信息存储起来。
在JPEG文件中,每个Huffman树的表示形式如图1所示:开始的16个字节是每个级别的数据的个数,本文称为数目区。紧接着的是对应的数据,本文成为数据区,一个数据一个字节,字节数是开始16个字节的字节之和。数据区按照数目区的顺序依次排列,直到结束。在解码的时候首先依次读取数目区的一个字节,得到对应的区段的数据数目,然后再依次将数据区中对应的数据添加到对应深度二叉树中,插入优先为左侧分支。再编码的时候是解码的逆向过程。
JPEG的图片数据是bit流的形式,每组可处理的数据由两部分组成,一个是Huffman查询码,一个是数据值,所有这些都按照字节流紧密排列。每部分的bit数目不定。
基于所述Huffman树的构建包括首先构建一个二叉树节点,具体如下:
其中,各成员变量的意义如下:L_child:该节点的左侧分支;R_child:该节点的右侧分支;ch:该节点的数据;IsLeaf:该节点是否是叶节点;若无左右分支,用来标志是不是数据节点,即存放数据的,如果不是叶节点则为中继节点,即无有效数据,只是向下一层查找的支持节点。
采用上述方法构建出来的Huffman树的示例如图2所示。其中,对应的其对应的JPEG数据如下表一所示。
表一
下面是解码的步骤:
1、首先读取数目区第一个字节,数值为0,表明第一层无数据。
2、读取数目区的第二个字节,数值为1,表明第二层有一个数据,则为Root Node构建一个左子节点,该节点是第一层的,所以还需为该节点再构建一个左子节点,并填入数据区第一个字节的数值,设置该节点状态为叶节点。
3、读取数目区的第三个字节,数值为2,则接着读取数据区的两个字节,数值依次为6和7。依旧从根节点开始,采用前序遍历,创建第三层的第一个节点,并设置其数值为6,状态为叶节点;接着再按照前序遍历的规则,增加第三层的第二个节点,设置数值为7,状态为叶节点。注意遍历的时候碰到叶节点则递归返回其他的树。
4、读取数目区的第四个字节,数值为0,表明第四层无数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海联影医疗科技有限公司,未经上海联影医疗科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310630387.4/2.html,转载请声明来源钻瓜专利网。