[发明专利]一种近似无损的三维体数据压缩域体绘制方法有效
申请号: | 201410525176.9 | 申请日: | 2014-10-05 |
公开(公告)号: | CN104299256A | 公开(公告)日: | 2015-01-21 |
发明(设计)人: | 陈为;丁治宇;谭建刚 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06T15/08 | 分类号: | G06T15/08;G06T9/00 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 陈昱彤 |
地址: | 310058 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 近似 无损 三维 数据压缩 绘制 方法 | ||
1.一种近似无损的三维体数据压缩域体绘制方法,其特征在于,包括如下步骤:
(1)将体数据值类型为浮点型、无符号字符型或者短整型的三维原始体数据分割成大小为4*4*4的数据块,再对分割完的数据块逐个进行拉普拉斯分解,由此将每个数据块分解为三个层次的数据:其中,每一个数据块的第一层次分解数据是一个大小为4*4*4的64维矢量,所有数据块的第一层次分解数据构成第一层次分解数据矢量集合;每一个数据块的第二层次分解数据是一个大小为2*2*2的8维矢量,所有数据块的第二层次分解数据构成第二层次分解数据矢量集合;每一个数据块的第三层次分解数据是该数据块的体数据值的算术平均值,所述第三层次分解数据的大小为1*1*1,所有数据块的第三层次分解数据构成第三层次分解数据集合;
(2)对所述第一层次分解数据矢量集合进行矢量量化,得到第一级矢量量化编码表和第一级索引体数据,所述第一级索引体数据中记录了每一个4*4*4数据块的第一层次分解数据与第一级矢量量化编码表中码元矢量的对应关系;构造第一级偏移地址表,由此确定第一级矢量量化编码表中的码元矢量的元素与每个数据块的第一层次分解数据中的体素的对应关系:
对所述第二层次分解数据矢量集合进行矢量量化,得到第二级矢量量化编码表和第二级索引体数据,所述第二级索引体数据中记录了每一个4*4*4数据块的第二层次分解数据与第二级矢量量化编码表中码元矢量的对应关系;构造第二级偏移地址表,由此确定第二级矢量量化编码表中的码元矢量的元素与每个数据块的第二层次分解数据的体素的对应关系:
(3)利用第一级矢量量化编码表、第一级索引体数据、第一级偏移地址表以及第二级矢量量化编码表、第二级索引体数据、第二级偏移地址表分别进行矢量量化解码而相应得到所有数据块的第一层次分解数据和第二层次分解数据的解码恢复值,再逐体素地对所有数据块的每个体素所对应的第一层次分解数据和第二层次分解数据的解码恢复值以及第三层次分解数据相加得到解码体数据,将原始体数据与解码体数据逐体素作差而得到稀疏的残差体数据;
(4)使用完美空间哈希压缩所述残差体数据而得到偏移表数据、位置表数据和哈希表数据;
(5)将第一级索引体数据、第二级索引体数据、第一级矢量量化编码表、第二级矢量量化编码表、一级偏移地址表、二级偏移地址表、偏移表数据、位置表数据和哈希表数据传入到GPU中并在GPU中进行实时解码和绘制。
2.根据权利要求1所述的方法,其特征在于,在所述步骤(2)中,按照公式(1)所示的方法构造第一级偏移地址表:
value1[i,j,k]=((i/2*4+j/2*2+k/2)*8+i%2*4+j%2*2+k%2)/64.0 (1)
公式(1)中,i,j,k分别表示待解码体素在其所属的4*4*4数据块内的三个方向上的位置,i,j,k的取值范围皆为[0,3];value1[i,j,k]表示位置为i,j,k的待解码体素在第一级矢量量化编码表中它所对应的码元矢量内部的偏移地址。
3.根据权利要求1或2所述的方法,其特征在于,在所述步骤(2)中,按照公式(2)所示的方法构造第二级偏移地址表:
value2[i,j,k]=(k/2+j/2*2+i/2*4)/8.0 (2)
公式(2)中,i,j,k分别表示待解码体素在其所属的4*4*4数据块内的三个方向上的位置,i,j,k的取值范围皆为[0,3];value2[i,j,k]表示位置为i,j,k的待解码体素在第二级矢量量化编码表中它所对应的码元矢量内部的偏移地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410525176.9/1.html,转载请声明来源钻瓜专利网。