CN103886626A - 一种异质体素的编码方法 - Google Patents

一种异质体素的编码方法 Download PDF

Info

Publication number
CN103886626A
CN103886626A CN201410079552.6A CN201410079552A CN103886626A CN 103886626 A CN103886626 A CN 103886626A CN 201410079552 A CN201410079552 A CN 201410079552A CN 103886626 A CN103886626 A CN 103886626A
Authority
CN
China
Prior art keywords
voxel
relative
tuple
heterogeneous
coding method
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.)
Pending
Application number
CN201410079552.6A
Other languages
English (en)
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.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
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 Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201410079552.6A priority Critical patent/CN103886626A/zh
Publication of CN103886626A publication Critical patent/CN103886626A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)

Abstract

本发明公开了一种异质体素的编码方法,该编码方法根据体素中各个角点的材质对体素进行编码,先赋予每种材质固定编号,再根据体素中角点的材质对每个角点对应的固定编号转化为相对编号,采用二进制数按顺序表示所有角点的相对编号即得到该体素的类型编码。本发明编码方法可以对具有多种(两种或两种以上)材质的体素进行编码,且该编码方法提可大大减少了材质分布情况中的对称情况,使得预制查找表成为可能,适用范围广,不仅适用于编制异质四面体、异质六面体体素的编码,还适用于三棱柱体素的编码。

Description

一种异质体素的编码方法
技术领域
本发明涉及计算机图形学三维重建领域,具体涉及一种用于异质体素的编码方法。
背景技术
对于三维标量场体数据或者隐函数,等值面是指其标量值或函数值为某一常数的点的集合。通过选择不同的标量值或者函数值,可以得到不同的等值面,从而有助于可视化和分析相关的体数据和隐函数曲面。因此,等值面提取是三维标量场数据可视化、隐函数曲面显示、三维曲面重建等应用中的基础问题。基于体素的等值面重建是可视化研究的重要分支,近年来取得了重大发展并得到了广泛应用。
不同的应用领域有不同的数据来源:在医学图像领域,人们通过如计算机断层扫描(Computed Tomography,CT)、核磁共振成像(Magnetic ResonanceImaging,MRI)及超声(Ul-asonography,US)等设备扫描人体,获得人体密度场;在矿藏勘探中,人们利用天然地震波或人工爆炸产生的声波获取地下岩层密度信息;在航天工业,科学家记录如温度等飞行器的表面物理特征值;此外还有其他领域或者仿真实验产生的诸如温度场、流场等数据集。体数据实质上是一组空间位置各不相同的采样值的集合。
等值面重建算法视体数据为一组四面体体素或者六面体体素的集合。对于三维标量场体数据,通常是由离散体素单元集合描述;对隐函数进行空间采样,生成基本体素单元;然后在基本体素单元内用线性三角面片逼近等值面。在等值面重建过程中,重建算法依次处理所有体素:判断体素是否含有等值面块,如果当前体素包含等值面块,则提取用于重建等值面。当体数据仅涉及2类材质时,体素的材质分布类型数目是2的幂次方个,幂的值等于体素角点数目。由于四面体体素和六面体体素的角点数目分别是4和8,经典的等值面提取算法:marching tetrahedra算法(移动四面体法,mt算法)和marching cubes算法(移动立方体算法,mc算法)都需要预先制定了查找表,表中提供了针对每种材质分布情况的等值面块生成结果。
但是,当体数据涉及多类材质时,体素的材质分布类型数目将是材质数目的幂次方个,幂的值等于体素角点数目。因此,当材质分布类型数目将过于巨大以致难以按照mt或者mc算法的方式预制查找表,即mt算法和mc算法受到体素材质的限制,不能够直接用于多材质(对于2种材质)的体素重建。
发明内容
针对现有技术的局限性,本发明提供了一种异质体素的编码方法。
一种异质体素的编码方法,包括:(1)赋予采样空间中每类材质的属性值区间一个固定编号;
(2)针对所述采样空间的任意一个体素,根据该体素中各个角点的属性值确定各个角点的材质以及该材质对应的固定编号,并按照一定的顺序将各个角点的材质对应的固定编号排列形成该体素的固定元组;
(3)以各个固定编号在固定元组中首次出现的次序作为该固定编号的相对编号,用相对编号替换所述固定元组中相应的固定编号,得到该体素的相对元组;
(4)采用若干位二进制数表示每个相对编号,并根据该体素的角点个数,确定用于记录所述相对元组的数据类型;
(5)采用所述的数据类型表示所述的相对元组得到该体素的类型编码。
根据离散采样点之间的位置关系,体数据可分为结构化、非结构化和混合形等三类。体数据中相邻的若干个采样点构成一个体素。体数据对应的采样空间可被视为一组互不相交的体素的集合。本发明针对异质体素提出,即构成该体素的角点涉及2种或者2种以上的材质,该编码方法中根据体素中各个角点的材质进行编码最终得到各个体素的类型编码,该类型编码携带有该体素的材质信息。该方法能够用于具有2种以上材质的异质体素的编码。在同一采样空间的所有体素的类型编码过程中,每类材质的固定编码保持不变,而相对编码则在不同体素编码过程中可能不变,主要取决于每个异质体素中各个角点的材质。
异质体素涉及多类材质,因此异质体素的类型编码方法无法像传统的体素类型编码方法一样使用1个二进制位表示材质类型。由于在实际工程应用中,体数据涉及的材质数目一般不超过6种,而且一个角点数目为n(4≤n≤16)的体素,最多涉及n种材质,因此4个二进制位足以记录一个异质体素角点的相对材质编号。
由于本发明所述的异质体素类型编码的编制取决于材质在构成当前体素的角点序列中首次出现的次序。依据本发明,对于任意两个体素来说,只要体素各个角点的材质分布模式相同,那么这两个体素的类型编码将是相同的,该特性使得异质体素的类型能够被本发明以相对较少的类型编码枚举,使得预制查找表成为可能。对于四面体网格来说,当其仅涉及2(或4)类材质时,其对应的类型编码将从16(或256)种减少到8(或15)种。对于六面体网格来说,当其仅涉及2(或8)类材质时,其对应的类型编码将从256(或16777216)种减少到128(或4140)种。
本发明可用于对异质体素进行类型编码,反过来还可以根据异质体素的类型编码实例化出对应的体素,根根据相同的类型编码实例化出来的体素之间,即使对应角点材质不同,体素内部各材质之间的分隔方式是一样的,通过实例化体素的类型编码,并供异质物体重建算法处理,可判断异质物体重建算法的正确性与有效性。
所述的体素为异质四面体体素或异质六面体体素。
本发明的的编码方法仅适用于对所有体素类型单一的采样空间进行类型编码。该编码方法依据体素的角点材质有关,与该采样空间中体素的形状(类型)无关,因此使用范围广,实际上,本发明的方法不仅适用于编制异质四面体、异质六面体体素的编码,还天然地适用于编制三棱柱体素的编码。
所述步骤(2)中所述采样空间的所有体素均按照相同的顺序排列各个角点固定编号形成固定元组。
所述步骤(2)中的顺序是指体素中不同高度的角点之间按照先低后高、相同高度的角点之间按照逆时针的原则遍历角点的顺序。在对同一采样空间进行类型编码时,必须保证所有体素的编码过程中形成元组时的顺序相同。当采样空间中所有体素均为四面体体素时,与材质相关的体素编码方法的角点遍历顺序满足以下条件:由前三个角点构成的三角面片的法向量指向四面体内部。当采样空间中所有体素均为六面体体素时,以六面体的左下前角点为起始角点,按照先底层再顶层的按照逆时针顺序遍历8个角点。
所述步骤(3)中固定元组中第一个固定编号对应的相对编号为1。
固定编号对应的相对编号是按照一定顺序遍历角点时该固定编号对应的材质的首次出现次序,由于固定元组中第一个固定编号对应的材质必是遍历角点时首次出现的材质,所以其相对编号必为1。对于固定元组中的第二个固定编号,如果其固定材质编号与起始角点的固定材质编号相同,则其相对材质编号亦为1;否则其相对材质编号的值应置为前序已生成相对材质编号中的最大值加1,后续角点处材质的相对编号需要依次判断其固定编号是否与前面已经得到相对编号的角点的材质是否相同,然后以此类推,得到对固定元组中的所有固定编号对应的相对编号。
所述步骤(4)中采用四位二进制数表示相对元组中的各个相对编号。
异质体素涉及多类材质,因此异质体素的类型编码方法无法像传统的体素类型编码方法一样使用1个二进制位表示材质类型。由于在实际工程应用中,体数据涉及的材质数目一般不超过6种,而且一个角点数目为n(4≤n≤16)的体素,最多涉及n种材质,因此4个二进制位足以记录一个异质体素角点的相对材质编号。
所述步骤(4)中根据以下方法确定用于记录该体素的相对元组的数据类型:
(4-1)根据该体素中角点的个数和每个相对编号对应的二进制的位数,确定表示所述相对元组中所需的总位数;
(4-2)根据所述的总位数从四种数据类型中选择任意一个位数大于所述总位数的数据类型记录所述相对元组,所述的四种数据类型分别为16位无符号整型数据、32位无符号整型数据、64位无符号整型数据和128位无符号整型数据。
作为优选,所述步骤(4-2)中从四种数据类型中选择位数大于所述总位数且位数最小的数据类型记录所述相对元组。
该体素中角点的个数乘以每个相对编号对应的二进制的位数即为表示所述相对元组中所需二进制数的总位数。当位数不足时,小的肯定是不能完整记录整个相对元组的,因此只能去大于总位数的数据类型。且选择能够记录完整相对元组的数据类型中位数最小的数据类型,能够有效减小存储空间,尤其是对于包含多个体素的空间结构时,更具优势。因此,记录四边形、四面体和六面体的编码的数据类型分别是16位无符号整型、16位无符号整型和32位无符号整型。当所选择的数据类型数据长度大于类型编码实际所需位数时,高位补0。用于记录体素类型编码的数据类型的实用位数中的高4位记录起始角点的相对材质编号,最低4位记录最后一个角点的相对材质编号。
所述编码方法还包括采用十六进制数表示所述的类型编码得到十六进制的类型编码。
由于在实际工程应用中,体数据涉及的材质数目一般不超过6种,因此本发明使用4个二进制位记录一个异质体素角点的相对材质编号。通过将各个角点的用4个二进制位表示的相对编号转化为一个等值的十六进制数便可生成对应体素的十六进制的类型编码。与二进制类型编码相比,十六进制的类型编码更加直观。
本发明的异质体素的编码方法中根据体素中各个角点的材质进行编码得到携带有该体素的材质信息的类型编码,该编码方法可以对具有多种(两种或两种以上)材质的体素进行编码得到该体素的类型编码。该编码方法提可大大减少了材质分布情况中的对称情况,即在保证能够枚举所有等值面块生成的情况下大大减少材质分布情况,使得预制查找表成为可能,且适用范围广,不仅适用于编制异质四面体、异质六面体体素的编码,还天然地适用于编制三棱柱体素的编码。进一步对通过该编码方法得到的体素的类型编码进行实例化处理,可用于向异质物体重建算法提供异质体素,用于检验异质物体重建算法的正确性。
具体实施方式
下面将结合具体实施例对本发明进行详细说明。
本实施例的编码方法所针对的采样空间中包括3种材质,对应的属性值区间分别为(10,35]、(35,60]和(60,255]。
本实施例的异质体素的编码方法,包括:
(1)赋予采样空间中每类材质的属性值区间一个固定编号,其中属性值位于(10,35]区间的材质的固定编号为0,属性值位于(35,60]区间的材质的固定编号为1,属性值位于(60,255]区间的材质的固定编号为2。
(2)针对所述采样空间的任意一个体素,根据该体素中各个角点的属性值确定各个角点的材质以及该材质对应的固定编号,并按照一定的顺序将各个角点的材质对应的固定编号排列形成该体素的固定元组。
本实施例中以异质四面体体素为例进行详细说明,该异质四面体体素的各个角点的材质属性值分别为20、110、50和20,即各个角点的材质的固定编号分别为0、2、1和0,以该异质四面体体素的左下角的角点为起始点,按照逆时针方向,从下至上将该四面体体素中的各个角点对应的固定编号排列起来,形成该四面体体素的固定元组,具体为(0,2,1,0)。
(3)以各个固定编号在固定元组中首次出现的次序作为该固定编号的相对编号,用相对编号替换固定元组中相应的固定编号,得到该体素的相对元组。
该体素为异质四面体体素或异质六面体体素。本实施例中该异质四面体体素的固定元组中的各个固定编号对应的相对编码分别为1、2、3、1。
(4)采用4位二进制数表示每个相对编号,并根据该体素的角点个数,确定用于记录所述相对元组的数据类型,具体如下:
(4-1)根据该体素中角点的个数和每个相对编号对应的二进制的位数,确定表示该相对元组所需的二进制数的总位数;
(4-2)从四种数据类型中选择位数大于所述总位数且位数最小的数据类型记录所述相对元组,其中四种数据类型分别为16位无符号整型数据、32位无符号整型数据、64位无符号整型数据和128位无符号整型数据。
正六面体体素中有八个角点,对应的相对元组中包括八个相对编号,因此表示该相对元组一共需要32位二进制数,可以直接采用32位无符号整型数据记录该相对元组。
(5)采用32位无符号整型数据表示所述的相对元组得到该体素的类型编码。
本实施例中为异质四面体体素,因此该体素的角点个数为4,表示该相对元组所需的二进制数的总位数为16位二进制数,则采用16位无符号整型数据表示该相对元组,进而得到该异质四面体体素的类型编码,具体为:0001001000110001(二进制)。
(6)用十六进制数表示该类型编码得到该体素的十六进制的类型编码,十六进制的类型编码为0x1231(0x表示十六进制)。
以上所述仅为本发明的优选实施方式,本发明的保护范围并不仅限于上述实施方式,凡是属于本发明原理的技术方案均属于本发明的保护范围。对于本领域的技术人员而言,在不脱离本发明的原理的前提下进行的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (8)

1.一种异质体素的编码方法,其特征在于,包括:
(1)赋予采样空间中每类材质的属性值区间一个固定编号;
(2)针对所述采样空间的任意一个体素,根据该体素中各个角点的属性值确定各个角点的材质以及该材质对应的固定编号,并按照一定的顺序将各个角点的材质对应的固定编号排列形成该体素的固定元组;
(3)以各个固定编号在固定元组中首次出现的次序作为该固定编号的相对编号,用相对编号替换所述固定元组中相应的固定编号,得到该体素的相对元组;
(4)采用若干位二进制数表示每个相对编号,并根据该体素的角点个数,确定用于记录所述相对元组的数据类型;
(5)采用所述的数据类型表示所述的相对元组得到该体素的类型编码。
2.如权利要求1所述的用于异质体素剖分的编码方法,其特征在于,所述的体素为异质四面体体素或异质六面体体素。
3.如权利要求2所述的用于异质体素剖分的编码方法,其特征在于,所述步骤(2)中所述采样空间的所有体素均按照相同的顺序排列各个角点的固定编号形成固定元组。
4.如权利要求3所述的用于异质体素剖分的编码方法,其特征在于,所述步骤(3)中固定元组中第一个固定编号对应的相对编号为1。
5.如权利要求4所述的用于异质体素剖分的编码方法,其特征在于,所述步骤(4)中采用四位二进制数表示相对元组中的各个相对编号。
6.如权利要求5所述的用于异质体素剖分的编码方法,其特征在于,所述步骤(4)中根据以下方法确定用于记录该体素的相对元组的数据类型:
(4-1)根据该体素中角点的个数和每个相对编号对应的二进制的位数,确定表示所述相对元组中所需的总位数;
(4-2)根据所述的总位数从四种数据类型中选择任意一个位数大于所述总位数的数据类型记录所述相对元组,所述的四种数据类型分别为16位无符号整型数据、32位无符号整型数据、64位无符号整型数据和128位无符号整型数据。
7.如权利要求6所述的用于异质体素剖分的编码方法,其特征在于,所述步骤(4-2)中从四种数据类型中选择位数大于所述总位数且位数最小的数据类型记录所述相对元组。
8.如权利要求7所述的用于异质体素剖分的编码方法,其特征在于,所述编码方法还包括采用十六进制数表示所述的类型编码得到十六进制的类型编码。
CN201410079552.6A 2014-03-06 2014-03-06 一种异质体素的编码方法 Pending CN103886626A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410079552.6A CN103886626A (zh) 2014-03-06 2014-03-06 一种异质体素的编码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410079552.6A CN103886626A (zh) 2014-03-06 2014-03-06 一种异质体素的编码方法

Publications (1)

Publication Number Publication Date
CN103886626A true CN103886626A (zh) 2014-06-25

Family

ID=50955499

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410079552.6A Pending CN103886626A (zh) 2014-03-06 2014-03-06 一种异质体素的编码方法

Country Status (1)

Country Link
CN (1) CN103886626A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106772584A (zh) * 2017-01-18 2017-05-31 中国地质大学(武汉) 一种顾及地质构造条件约束的精细体元属性赋值方法
CN111340940A (zh) * 2020-02-23 2020-06-26 广东明星创意动画有限公司 一种搜索重复arnold材质的方法及其插件

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106772584A (zh) * 2017-01-18 2017-05-31 中国地质大学(武汉) 一种顾及地质构造条件约束的精细体元属性赋值方法
CN111340940A (zh) * 2020-02-23 2020-06-26 广东明星创意动画有限公司 一种搜索重复arnold材质的方法及其插件
CN111340940B (zh) * 2020-02-23 2023-08-04 广东明星创意动画有限公司 一种搜索重复arnold材质的方法及其插件

Similar Documents

Publication Publication Date Title
CN104268934B (zh) 一种由点云直接重建三维曲面的方法
Freytag et al. Finite element analysis in situ
CN104317772B (zh) 一种基于空间网格分割的蒙特卡罗粒子输运快速几何处理方法
CN109326002A (zh) 基于钻孔数据的矿体建模方法、装置、系统及存储介质
Weiss et al. Simplex and diamond hierarchies: Models and applications
Gan et al. Accelerating solvers for global atmospheric equations through mixed-precision data flow engine
CN102411794B (zh) 一种基于球谐变换的三维模型的二维投影的输出方法
Singh et al. Corrections to Pauling residual entropy and single tetrahedron based approximations for the pyrochlore lattice Ising antiferromagnet
CN104573279A (zh) 基于深度剥离的核辐射屏蔽计算的网格快速生成方法
Hill et al. The symmetric moment-of-fluid interface reconstruction algorithm
CN104268322A (zh) Weno差分方法的一种边界处理技术
Hongbin et al. Feature preserving holes filling of scattered point cloud based on tensor voting
Scharnowski et al. Comparative visualization of molecular surfaces using deformable models
CN103399730B (zh) 一种基于cpu+gpu架构的空间几何体线段相交判断并行处理方法
CN103886626A (zh) 一种异质体素的编码方法
CN103700146A (zh) 一种基于各向异性结构张量的三维数据增强可视化方法
CN106202865A (zh) 一种计算中子输运离散节块法中任意阶系数的方法
CN103065358B (zh) 一种基于影像体元运算的器官几何重建方法
CN104732589A (zh) 快速混合网格生成方法
Nicolas et al. Improved adaptive mesh refinement for conformal hexahedral meshes
Carr et al. Hybrid data-parallel contour tree computation
CN109492069B (zh) 一种基于射线计算单元的移动立方体并行计算方法及系统
Zhou et al. An improved algorithm to convert CAD model to MCNP geometry model based on STEP file
Zhang et al. An automatic unified modeling method of geological object and engineering object based on tri-prism (TP)
Li et al. Reconstrucion and visualization of 3D surface model from serial-sectioned contour points

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20140625