[发明专利]JPEG2000的分辨率自适应节点树编码方法无效
申请号: | 201210202383.1 | 申请日: | 2012-06-07 |
公开(公告)号: | CN102724508A | 公开(公告)日: | 2012-10-10 |
发明(设计)人: | 李云松;雷杰;姚银琪;李志彦;刘凯;王柯俨;宋长贺 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | H04N7/26 | 分类号: | H04N7/26;H04N7/30 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 田文英;王品华 |
地址: | 710071*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种JPEG2000的分辨率自适应节点树编码方法,具体步骤包括:(1)输入编码参数;(2)输出码块信息;(3)控制循环;(4)寄存当前子带各级节点信息;(5)判断当前子带建树是否完成;(6)当前级建树;(7)当前子带编码;(8)存储分离后的编码结果。本发明自适应一定规模内任意分辨率图像的压缩编码,在建树过程中使用各级父节点单独存储的方式,在编码时使用由叶子节点的坐标值计算开始编码的级数,简化了地址计算方法,克服了标记节点是否编码而浪费时钟资源的缺点,使得编码效率得到了提高。本发明可用于各种数字图像芯片的压缩编码。 | ||
搜索关键词: | jpeg2000 分辨率 自适应 节点 编码 方法 | ||
【主权项】:
一种JPEG2000的分辨率自适应节点树编码方法,包括如下步骤:(1)用户根据工程需要将编码参数输入给输出节点信息模块;(2)输出节点信息2a)判断输出节点信息模块中编码参数的图像宽度是否超过工程允许的最大图像宽度,如果超过,则将图像中的节点宽度和高度分别定为64个像素点和16个像素点;否则,将图像中的节点宽度和高度均定为32个像素点;2b)将输出节点信息模块中编码参数的图像宽度和图像高度分别取1/2组成第一级子带的宽度和高度;2c)判断子带的级数是否等于1,如果等于,则将第一级子带的宽度和高度作为当前级子带的宽度和高度;否则,将步骤2f)寄存的下一级子带的宽度和高度作为当前级子带的宽度和高度;2d)将当前级子带的宽度和高度分别除以图像中的节点宽度和高度,得到当前级子带的节点行数和列数,将当前级子带的节点行数乘以节点列数得到当前级子带的节点总数,输出当前级子带的节点行数、节点列数和节点总数;2e)判断子带的级数是否等于输出节点信息模块中编码参数的小波变换级数,如果等于,则执行步骤(3);否则,执行步骤2f);2f)将当前级子带的宽度和高度分别取1/2组成下一级子带的宽度和高度,将下一级子带的宽度和高度输入寄存器寄存;2g)将子带的级数加1,返回步骤2c);(3)控制循环3a)对步骤2d)输出的当前级子带的节点行数、节点列数中的最大值取对数,得到当前级子带建树的最高级数;3b)将节点的级数赋初值1;3c)判断节点的级数是否等于1,如果等于,则将当前级子带的节点行数、节点列数作为当前级节点的节点行数、节点列数;否则,将步骤3d)寄存的下一级节点的节点行数、节点列数作为当前级节点的节点行数、节点列数;3d)将当前级节点的节点行数、节点列数向右移一位,得到下一级节点的节点 行数、节点列数,将得到的下一级的节点行数、节点列数输入寄存器寄存;3e)判断节点的级数是否等于1,如果等于,则将当前级子带之前的所有子带的节点总数累加,得到当前级节点的首地址;下一级节点的首地址为零;否则,当前级节点的首地址和下一级节点的首地址均为零;3f)输出当前级节点和下一级节点的节点行数、节点列数和首地址,执行步骤(5);3g)将节点的级数加1,返回步骤3c);(4)寄存当前子带各级节点信息:将步骤(3)中的的当前级子带建树最高级数,每一级节点的行数和列数输入寄存器寄存;(5)判断当前子带建树是否完成判断步骤(3)中节点的级数是否等于步骤3a)中得到的最高级数,如果相等,则执行步骤(7);否则,执行步骤(6);(6)当前级建树6a)将步骤3f)输出的当前级节点和下一级节点的节点列数、首地址以及当前需要建树的节点的行坐标、列坐标通过地址计算公式得到当前需要建树的相邻2x2个节点的存储地址和下一级节点的存储地址;6b)比较当前需要建树的相邻2x2节点值的大小,从中选取一个最小值;6c)将最小值写入下一级节点的存储器;6d)保持当前需要建树的节点的行坐标值不变,将列坐标值加2;6e)判断当前需要建树的节点的列坐标值是否大于等于步骤3f)输出的当前级节点的列数,如果是,将当前需要建树的节点的行坐标值加2,列坐标值清零;否则,返回步骤6a);6f)判断当前需要建树的节点的行坐标值是否大于等于步骤3f)输出的当前级节点的行数,如果是,将当前需要建树的节点的行坐标值、列坐标值均清零,返回步骤3g);否则,返回步骤6a);(7)当前子带编码7a)将当前级子带节点作为叶子节点,判断叶子节点的行坐标值、列坐标值是否同时被2的幂次整除,如果是,则将幂次值加1,得到叶子节点开始编码的级数;否则,执行步骤7b); 7b)将幂次值减1,返回步骤7a),继续判断叶子节点的行坐标值、列坐标值是否同时被2的幂次整除;7c)将步骤(4)寄存的数据通过地址计算公式得到叶子节点的存储地址和对应的各级父节点的存储地址;7d)将叶子节点的值和叶子节点对应的各级父节点的值从步骤(5)建立的Tag‑tree节点树中取出,从最高级节点开始依次向低级节点进行差值编码,每编码一位,编码结果有效比特位数加1;7e)将编码结果和编码结果有效比特位数输入寄存器寄存;7f)判断叶子节点的行坐标值、列坐标值是否分别等于叶子节点的行数、列数,如果是,当前子带编码完成,返回步骤(3)进行下一个子带的建树和编码;否则,执行步骤7g);7g)判断叶子节点的列坐标值是否等于叶子节点的列数,如果是,叶子节点的行坐标值加1,列坐标值清零;否则,叶子节点的行坐标值不变,列坐标值加1;7h)返回步骤7a),对下一个叶子节点进行编码;(8)存储分离后的编码结果8a)对编码结果从高位到低位依次进行遍历,以第一个为0值的比特位作为分界,将第一个0比特位和之前的比特位个数作为第0层的分离结果,将编码结果有效比特位数与第0层分离结果的差值作为第1层的分离结果;8b)将编码结果和分离结果输入寄存器寄存。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210202383.1/,转载请声明来源钻瓜专利网。
- 上一篇:视频数据显示方法及其装置
- 下一篇:确定可拍摄张数的方法及摄像装置