CN100492412C - 体三维显示中的体素数据生成方法 - Google Patents
体三维显示中的体素数据生成方法 Download PDFInfo
- Publication number
- CN100492412C CN100492412C CNB2007100678128A CN200710067812A CN100492412C CN 100492412 C CN100492412 C CN 100492412C CN B2007100678128 A CNB2007100678128 A CN B2007100678128A CN 200710067812 A CN200710067812 A CN 200710067812A CN 100492412 C CN100492412 C CN 100492412C
- Authority
- CN
- China
- Prior art keywords
- voxel
- data
- display
- triangle
- display plane
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000000354 decomposition reaction Methods 0.000 claims description 18
- 238000013507 mapping Methods 0.000 claims description 18
- 241001269238 Data Species 0.000 claims description 16
- 239000006185 dispersion Substances 0.000 claims description 13
- 238000013506 data mapping Methods 0.000 claims description 12
- 230000005484 gravity Effects 0.000 claims description 9
- 230000003760 hair shine Effects 0.000 claims description 9
- JEIPFZHSYJVQDO-UHFFFAOYSA-N ferric oxide Chemical compound O=[Fe]O[Fe]=O JEIPFZHSYJVQDO-UHFFFAOYSA-N 0.000 claims description 6
- 230000015572 biosynthetic process Effects 0.000 claims description 4
- 238000004458 analytical method Methods 0.000 claims description 3
- 238000010276 construction Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 4
- 238000012545 processing Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 239000012467 final product Substances 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000007596 consolidation process Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Landscapes
- Image Generation (AREA)
Abstract
本发明涉及一种体三维显示中的体素数据生成方法,用于将原始三维图像数据映射处理成体素数据,包括步骤:根据体三维显示系统的显示空间和体素的形成原理,分析显示空间的形状、大小和所有体素的位置分布情况,对输入的原始三维图像进行按比例缩放以适应所述显示空间;根据原始三维图像是三维离散数据集还是三维几何模型,以及显示空间是由随机分散在不同空间位置上的许多体素构成,还是由具有相同分辨率和规则体素分布的许多显示平面构成,选择相应的体素数据生成方法。本发明采用视具体情况而异的灵活、弹性的体素数据生成方法,因此具有低的计算复杂性,能够减少无谓的计算成本和时间成本,表现出高速、高效和高适应性的特点。
Description
技术领域
本发明涉及体三维显示(volumetric three-dimensional display,是一种能够在具有真实体积的显示空间中对图像信息进行再现的三维显示),特别是涉及体三维显示中的体素(voxel——volumetric picture element,是三维空间中构成三维图像的最小组成要素)数据生成方法。
背景技术
以三维方式设计的计算机绘图系统是根据透视投影绘制方法,将三维图像信息再现在二维屏幕显示器上的。之所以这样做的原因是,仅具有长宽两个可测量维度的二维物理平面无法直接表达纵深信息,只好采用投影方式构造一个虚拟的三维视窗以模拟空间深度,并采用深度缓冲和隐藏处理机制以进行图像显示:对当前像素与先前显示的像素的深度信息进行比较,以判断前者是否比后者更靠近视点位置,如果是,则予以显示,否则,进行隐藏处理。上述三维计算机绘图系统的数据生成工作所涉及的参数包括视点位置、视线方向、投影平面的位置、光源的位置及其亮度等,不但要对每个像素进行投影变换,而且每当诸如视点位置之类的参数变化时都需要重新进行投影计算。
与三维计算机绘图系统不同的是,体三维显示系统并非在仅具有长宽两个可测量维度的二维物理平面上对三维图像信息进行再现,而是在真正具有三个可测量维度的三维物理空间中对三维图像信息进行再现。为此,体三维显示中需要再现的图像信息量大多了,并且其本质上是与视点无关的,其媒介不再是虚拟的三维视窗,原始三维图像数据不能再以透视投影方式被处理成虚拟三维视窗中的像素数据,而应以线性方式映射处理成真实三维空间中的体素数据。换而言之,体三维显示系统无需进行所述投影计算、深度缓冲或隐藏处理,它在数据生成及其再现方面都有别于常规的三维计算机绘图系统。
上面所述的原始三维图像可以是由离散数据点构成的三维离散数据集,也可以是在计算机中构造的三维几何模型,包括,使用参数曲面定义的自由曲面模型和使用点、线、面等基本元素构造的多边形模型。为了满足实际应用时的快速处理要求,一般是利用许多细小的图元(primitive)来拼出三维几何模型的外观,然后将图元的相关信息保存在三维图像数据文件中备用。图元可以是点、线、三角形、四边形或其它多边形,也可以是诸如贝塞尔曲面之类的曲面或其它任何合适的形状。较为常见的图元是三角形,它由三个顶点确定,顶点数据以数组形式出现,包括其位置坐标、纹理映射坐标、法向量以及用于着色处理所需数据,主要涉及顶点的位置信息、色彩信息和亮度信息。
无论原始三维图像具体是三维离散数据集还是三维几何模型,从原始三维图像数据到体素数据之间都需要一套完整、高效的数据处理和生成方法。然而,现有体三维显示方面的文献对此却少有涉及,而更多的是集中在探讨系统硬件构成及原理。文献(参见“基于旋转二维发光二极管阵列的体三维显示系统”,林远芳、刘旭、刘向东、张晓洁,光学学报,第23卷第10期,第1158~1162页,2003年10月)提及在利用旋转二维发光二极管阵列进行体三维显示的过程中,按照以下步骤完成从原始三维图像到二维截面序列的分解映射:缩放原始三维图像,把通常用直角坐标描述的原始三维图像特征点集变换到柱坐标系中,再对每个点的位置坐标进行归整处理,使之映射到发光二极管阵列中。除了上述对体素数据生成方法较笼统的介绍外,该文没有更详细述及。
发明内容
本发明的目的是,提供一种体三维显示中的体素数据生成方法,用于将三维离散数据集或三维几何模型所包含的原始三维图像数据以适当的方式映射处理成适应显示空间的形状、大小和所有体素位置分布情况的体素数据,或者至少给公众提供一个有用的选择。
为达到上述目的,本发明采用如下技术方案:
一种体三维显示中的体素数据生成方法,其特征在于,包括以下步骤:
1)根据体三维显示系统的显示空间和体素的形成原理,分析显示空间的形状、大小和所有体素的位置分布情况,对输入的原始三维图像进行按比例缩放以适应所述显示空间;
2)当原始三维图像是三维离散数据集时,无论显示空间是由随机分散在不同空间位置上的许多体素构成,还是由具有相同分辨率和规则体素分布的许多显示平面构成,都是按照以下步骤来生成体素数据:
当一个数据点位置只被映射到一个体素位置时,该数据点的色彩和亮度值就直接作为该体素的色彩和亮度值,当多个数据点位置同时被映射到一个体素位置时,这些数据点与该体素之间的各距离分别作为它们位置重叠程度的度量,如果各距离都相同,则对这些数据点的色彩和亮度值进行算术平均运算,再以所得结果作为该体素的色彩和亮度值,如果距离各不相同或有些相同有些不同,则根据这些数据点与该体素的位置重叠程度分配权重因子,据此对这些数据点的色彩和亮度值进行加权平均运算,再以所得结果作为该体素的色彩和亮度值,至于那些没有任何数据点与之映射的体素,其色彩和亮度值都赋零;
当原始三维图像是三维几何模型,并且显示空间由随机分散在不同空间位置上的许多体素构成时,体素数据生成方法所包括的步骤是:先把三维几何模型分解为许多点,再指定位置偏差容许范围以建立这些点与体素之间的位置映射关系,并根据位置映射情况确定体素的色彩和亮度值;
当原始三维图像是三维几何模型,并且显示空间由具有相同分辨率和规则体素分布的许多显示平面构成时,体素数据生成方法所包括的步骤是:先判断三维几何模型与所有显示平面之间的位置关系再进行后续处理,将正好处在显示平面上的模型数据映射处理成体素数据,至于那些没有任何数据与之相映射的体素,其色彩和亮度值都赋零。
所述的三维几何模型包括在计算机中使用参数曲面定义的自由曲面模型和使用点、线、面基本元素构造的多边形模型。
所述的三维几何模型是使用三角形构造的多边形模型,每个三角形由三个顶点确定,顶点数据以数组形式出现,涉及顶点的位置、色彩和亮度值;
所述的当原始三维图像是三维几何模型并且显示空间由随机分散在不同空间位置上的许多体素构成时,先把三维几何模型分解为许多点,再采用类似于对三维离散数据集的处理方法来生成体素数据,包括以下情况:
如果三维几何模型不完全由数量密集的小尺寸三角形构成,则对模型的所有边进行等分分解,等分点数据通过对各条边首尾两个顶点数据进行内插而生成,各条边的等分份数可以相同,也可以随边的长短不同而不同,长度越短的边,其等分份数越少,由此实现灵活、弹性的等分分解,最后,将等分点数据和顶点数据映射处理成体素数据;
如果三维几何模型不完全由密集的小尺寸三角形构成,则在如所述对模型的所有边进行等分分解后,还可以对模型的所有三角形的内部区域进行填充分解,所述填充分解可以通过以下三种方法实现:将三角形任意两条边上的各等分点连接成线,再对所述各连线进行等分分解;将三角形某一顶点与其对面那条边上的各等分点连接成线,再对所述各连线进行等分分解;根据三角形的三个顶点求出所述三角形的重心,将所述重心与所述三个顶点连接成线而生成三个新的、尺寸较小的三角形,基于所述重心分解原理,可以进一步生成九个、二十七个乃至更多个新的、尺寸逐渐变小的三角形,最后将所述新生成的三角形的所有顶点数据映射处理成体素数据;
所述的当原始三维图像是三维几何模型,并且显示空间由具有相同分辨率和规则体素分布的许多显示平面构成时,先判断三维几何模型与所有显示平面之间的位置关系再进行后续处理,是指判断三维几何模型的各个三角形与所有显示平面之间的位置关系再进行后续处理,在每次对三角形和显示平面之间的位置关系进行判断之前,先检查三角形的顶点和边是否处理过,如果是,取出已有数据,否则进行判断;每完成一次判断,就存储已处理的顶点、边和三角形数据,以便在判断下一个三角形的位置关系时利用。
所述的判断三维几何模型的各个三角形与所有显示平面之间的位置关系再进行后续处理,包括以下步骤:
i)根据三角形的顶点位置坐标、显示平面的方程以及空间解析几何中的点到面的距离公式,分别算出三个顶点到显示平面的距离,并判断所得各距离是否为0,如果是,则说明顶点在显示平面上,否则,顶点在显示平面外;
ii)基于步骤i)顶点与显示平面之间位置关系的判断结果,推知三角形的边与显示平面是以下哪种位置关系:边与显示平面相交于其自身的一个顶点,边与显示平面相交于其自身的一个中间点,边在显示平面上,边在显示平面外;
iii)基于步骤ii)边与显示平面之间位置关系的判断结果,推知三角形与显示平面是以下哪种位置关系:三角形在显示平面上,三角形在显示平面外,三角形与显示平面相交于一个顶点,三角形与显示平面相交于一条边,三角形与显示平面相交于某两条边的共有顶点与第三条边某一中间点的连线,三角形与显示平面相交于某条边的中间点与另一条边某一中间点的连线;
iv)根据步骤iii)判断的六种位置关系和已知的三角形顶点数据,将那些正好处在显示平面上的数据映射处理成体素数据。
所述的步骤iv)具体为:
a)如果三角形在显示平面上,则根据其顶点的位置坐标和位于各顶点附近的各体素的位置坐标,算出各顶点与位于其附近的各体素之间距离的绝对值,从中选出具有最小绝对距离的体素作为与顶点相映射的体素,然后将所述顶点的色彩和亮度值赋予所述体素,接着根据显示平面上的体素分布规律,对三角形的边和内部区域进行等分分解和填充分解,获得新生成的各点的数据,并将它们映射处理成相应的体素数据;
b)如果三角形在显示平面外,则将所述三角形舍弃而不做任何处理;
c)如果三角形与显示平面相交于一个顶点,则根据所述顶点的位置坐标,将顶点数据映射处理成显示平面上与它最靠近的体素数据;
d)如果三角形与显示平面相交于一条边,则先将所述边的首尾两个顶点数据映射处理成显示平面上分别与它们最靠近的两个体素数据,然后根据所述两个体素连线方向上的其它体素分布,确定所述边的最大等分份数、各等分点位置及其色彩和亮度值,再将它们赋予相应的体素;
e)如果三角形与显示平面相交于某两条边的共有顶点与第三条边某一中间点的连线,则先根据第三条边首尾两个顶点数据内插得到所述中间点数据,并将所述共有顶点和中间点数据映射处理成显示平面上分别与它们最靠近的两个体素数据,然后根据所述两个体素连线方向上的其它体素分布,确定所述共有顶点和中间点的连线的最大等分份数、各等分点位置及其色彩和亮度值,再将它们赋予相应的体素;
f)如果三角形与显示平面相交于某条边的中间点与另一条边某一中间点的连线,则先内插得到所述两个中间点数据,并映射处理成显示平面上分别与它们最靠近的两个体素数据,然后根据所述两个体素连线方向上的其它体素分布,确定所述两个中间点连线的最大等分份数、各等分点位置及其色彩和亮度值,再将它们赋予相应的体素。
本发明具有以下优点及积极效果:
根据原始三维图像是三维离散数据集还是三维几何模型,以及显示空间是由随机分散在不同空间位置上的许多体素构成,还是由具有相同分辨率和规则体素分布的许多显示平面构成,采用视具体情况而异的灵活、弹性的体素数据生成方法,因此具有低的计算复杂性,能够减少无谓的计算成本和时间成本,表现出高速、高效和高适应性的特点。
以下结合附图和具体实施方式对本发明作进一步详细说明。
附图说明
图1是体三维显示中的体素数据生成方法所包括的步骤:
图2示出利用显示屏平移以提供呈长方体形状的显示空间和多个显示平面;
图3A示出利用显示屏旋转以提供呈圆柱形状的显示空间和多个显示平面;
图3B示出在空间直角坐标系XYZ和柱面坐标系RΘZ中的一个显示平面;
图4A、4B和4C分别示出三维几何模型、三角形和边对顶点的依赖性;
图5A、5B示出对ΔP1P2P3的边和内部区域进行等分和填充分解的两种方法;
图6示出空间中的边P1P2与显示平面45相交于其自身的一个中间点Pa;
图7A至图7N以俯视方式示出ΔP1P2P3与显示平面45间的不同位置关系;
图8以正视方式示出ΔP1P2P3的边如何分解映射到显示平面45上的体素;
图9A是对实施例中由顶点映射生成的体素数据进行仿真再现的效果图;
图9B是对实施例中由边等分分解生成的体素数据进行仿真再现的效果图;
图9C是对实施例中由三角形填充生成的体素数据进行仿真再现的效果图;
图9D是对实施例中由边等分分解生成的体素数据进行真实再现所拍照片。
具体实施方式
下面参照图2至图9,详细解释图1体三维显示中的体素数据生成方法。
1)根据体三维显示系统的显示空间和体素的形成原理,分析显示空间的形状、大小和所有体素的位置分布情况,对输入的原始三维图像进行按比例缩放以适应所述显示空间;
体三维显示中的体素数据生成方法从本质上说,就是将原始三维图像调整至体三维显示空间(以下简称显示空间),然后利用显示空间中的体素来表述原始三维图像。为此,首先需要分析显示空间的形状、大小和所有体素的位置分布情况,再对输入的原始三维图像进行按比例缩放以适应所述显示空间。
下面参照图2和图3A进行示例分析。其中,包含像素2的显示屏3可以是发光显示屏,也可以是投影显示屏,它在图2中沿着5A所示方向快速平移,以在物理空间中提供呈长方体形状的显示空间6A和处在不同空间位置的多个显示平面31A、32A、33A、34A和35A,在图3中绕着转轴4沿5B所示方向快速转动,以在物理空间中提供呈圆柱体形状的显示空间6B和处在不同空间位置的多个显示平面31B、32B、…、39B、40B(为清晰起见,图中只标注出这四个平面)。随着显示屏3的快速运动,其上的像素2因人眼视觉暂留效应而被相应看成是“驻留”在上述不同空间位置处的显示平面上的体素。为此,显示平面实际上就是体素所处的平面,这些具有相同分辨率和规则体素分布的、处在不同空间位置的多个显示平面共同构成了显示空间。
图2、图3A可分别利用坐标系7A、7B对显示平面和体素进行描述。假设显示空间中共有L个显示平面,每个显示平面各有M×N个以矩阵形式排列的体素,则各显示平面在空间中的位置可利用其相应的面索引号l(l=1,2,…,L)标识,各体素在矩阵中的位置可利用其相应的列索引号m(m=1,2,…,M)和行索引号n(n=1,2,…,N)标识。在图2所示情形下,显示平面的方程为z=D(常数),而空间中第l个显示平面上的第m列第n行体素的直角坐标为(xn,ym,zl),其中的变量xn、ym、zl分别代表所述体素在垂直方向、水平方向和纵深方向的坐标值。在图3A所示情形下,为清晰起见而参照图3B对显示平面的方程和体素坐标进行分析。由于所有显示平面都在旋转中形成,都包含Z轴并经过原点O,假设θ表示显示平面相对于起始平面XOZ的转角,那么,在平面一般方程Ax+By+Cz+D=0中有:常数D=0,法向量坐标A=cosθ、B=sinθ、C=0,由此得到显示平面的方程为xcosθ+ysinθ=0,空间中第l个显示平面46B上的第m列第n行体素的柱面坐标为(rm,θl,zn),变量rm、θl、zn分别表示所述体素在水平方向、转动方向和垂直方向的坐标值。
显然,如果体三维显示系统的显示空间不是如上所述由具有相同分辨率和规则体素分布的多个显示平面构成,而是由随机分散在不同空间位置上的许多体素构成,同样可以分析得到该情况下的显示空间的形状、大小和所有体素的位置分布情况,这里不再赘述。接着,应根据分析所得情况对输入的原始三维图像进行按比例缩放,以确保整幅三维图像都能在显示空间中再现出来。考虑到按比例缩放技术在本领域为习知的技术,所以在此不作描述。
2)根据原始三维图像是三维离散数据集还是三维几何模型,以及显示空间是由随机分散在不同空间位置上的许多体素构成,还是由具有相同分辨率和规则体素分布的许多显示平面构成,选择相应的体素数据生成方法。
三维离散数据集
当原始三维图像是三维离散数据集时,无论显示空间是由随机分散在不同空间位置上的许多体素构成,还是由具有相同分辨率和规则体素分布的许多显示平面构成,体素数据生成任务的实质都是建立数据点与体素之间的映射关系,只是后者可以把数据点先映射到各个显示平面上,再映射到各个体素位置。尽管数据点与体素都是构成三维图像的最小组成要素,都可以描述位置、色彩和亮度信息,但这些信息在两者间映射关系建立之前是毫不相关的,数据点的位置和体素的位置不一定在空间中完全重合,不重合的程度也没有明确的规律可循。为此,应基于步骤1)所确定的体素位置坐标和缩放处理后的原始三维图像数据,具体按照以下步骤来生成体素数据:
当一个数据点位置只被映射到一个体素位置时,该数据点的色彩和亮度值就直接作为该体素的色彩和亮度值,当多个数据点位置同时被映射到一个体素位置时,这些数据点与该体素之间的各距离分别作为它们位置重叠程度的度量,如果各距离都相同,则对这些数据点的色彩和亮度值进行算术平均运算,再以所得结果作为该体素的色彩和亮度值,如果距离各不相同或有些相同有些不同,则根据这些数据点与该体素的位置重叠程度分配权重因子,据此对这些数据点的色彩和亮度值进行加权平均运算,再以所得结果作为该体素的色彩和亮度值,至于那些没有任何数据点与之映射的体素,其色彩和亮度值都赋零;
三维几何模型
当原始三维图像是三维几何模型且显示空间由随机分散在不同空间位置上的许多体素构成时,先把三维几何模型分解为许多点,再采用类似于对三维离散数据集的处理方法来生成体素数据:指定位置偏差容许范围以建立这些点与体素之间的位置映射关系,并根据位置映射情况确定体素的色彩和亮度值;
当原始三维图像是三维几何模型,并且显示空间由具有相同分辨率和规则体素分布的许多显示平面构成时,先判断三维几何模型与所有显示平面之间的位置关系再进行后续处理,将正好处在显示平面上的模型数据映射处理成体素数据,至于那些没有任何数据与之相映射的体素,其色彩和亮度值都赋零。
在本说明书下面的描述中,假定使用三角形作为图元来描述待处理的三维几何模型,本领域技术人员可以容易地将同样的技术应用于由其它图元构成的三维几何模型。从背景技术可知,由三角形构成的三维几何模型都依赖于顶点而存在(图4A、4B和4C以三棱锥P4P1P2P3为例,分别示出了三维几何模型8、三角形81~84和边801~806对顶点P4、P1、P2、P3的依赖性),并且,其数据文件只给出三角形的顶点数据,而没有给出其内部区域或三条边上的其余点的数据。针对这一特点,并根据显示空间是由随机分散在不同空间位置上的许多体素构成,还是由具有相同分辨率和规则体素分布的许多显示平面构成,可以有以下几种由三角形构成的三维几何模型生成体素数据的方法:
当显示空间由随机分散在不同空间位置上的许多体素构成时,考虑到分解三维几何模型所需的工作量和所花费的时间会随着模型复杂度的增加而增加,为了减少无谓的计算成本和时间成本,加速体素数据生成,可采用如下视具体情况而异的、灵活的三维几何模型分解和体素数据生成方法:
如果三维几何模型由数量密集的小尺寸三角形构成,则说明此时顶点的总数很多,由顶点数据生成的体素数据可能足以得到较好的模型再现效果,因此不必分解模型或根据三角形顶点数据来插值求得其内部区域或三条边上的其余点的数据,只需直接将模型的所有顶点数据映射处理成体素数据即可;这种体素数据生成方法简单易行,既可以明显减少生成体素数据所需的工作量和所花费的时间,又可以得到较好的模型再现效果;
如果三维几何模型不完全由数量密集的小尺寸三角形构成,则对模型的所有边进行等分分解,等分点数据通过对各条边首尾两个顶点数据进行内插而生成,各条边的等分份数可以相同,也可以随边的长短不同而不同,长度越短的边,其等分份数越少,由此实现灵活、弹性的等分分解;最后,将等分点数据和顶点数据映射处理成体素数据;
如果三维几何模型不完全由密集的小尺寸三角形构成,则在如所述对模型的所有边进行等分分解后,还可以对模型的所有三角形的内部区域进行填充分解,所述填充分解可以通过以下三种方法实现:将三角形任意两条边上的各等分点连接成线,再对所述各连线进行等分分解;将三角形某一顶点与其对面那条边上的各等分点连接成线,再对所述各连线进行等分分解(图5A);根据三角形的三个顶点求出所述三角形的重心G,将所述重心与所述三个顶点连接成线而生成三个新的、尺寸较小的三角形(图5B),基于所述重心分解原理,可以进一步生成九个、二十七个乃至更多个新的、尺寸逐渐变小的三角形,最后将所述新生成的三角形的所有顶点数据映射处理成体素数据;
当显示空间是由具有相同分辨率和规则体素分布的许多显示平面构成时,考虑到显示空间和三维几何模型分别由许多显示平面和许多三角形构成,下面将以某一显示平面和某一三角形为例,说明如何判断所述显示平面与所述三角形之间的位置关系并进行后续处理,至于对其它显示平面与其它三角形的处理则完全相同,只需重复上述过程即可。需要说明的是,由于模型中的每个顶点被多条边共享,每两个相邻三角形共享一条边,因此每次对三角形和显示平面之间的位置关系进行判断之前,先检查三角形的顶点和边是否处理过,如果是,取出已有数据,否则进行判断;每完成一次判断,就存储已处理的顶点、边和三角形数据,以便判断下一个三角形时利用,由此可减少重复性运算;
判断三角形与显示平面之间的位置关系并进行后续处理包括以下步骤:
i)根据三角形的顶点位置坐标、显示平面的方程以及空间解析几何中的点到面的距离公式,分别算出三个顶点到显示平面的距离,并判断所得各距离是否为0,如果是,则说明顶点在显示平面上,否则,顶点在显示平面外;
ii)基于步骤i)顶点与显示平面之间位置关系的判断结果,推知三角形的边与显示平面之间是哪种位置关系。参照图6,设ΔP1P2P3的一条边P1P2首尾顶点P1、P2到显示平面45的距离分别为d1、d2,根据这两个参数的取值情况,可推知边P1P2和显示平面45之间所存在的位置关系有:
如果d1=0、d2≠0,则顶点P1在显示平面上,边与显示平面相交于顶点P1;
如果d1≠0、d2=0,则顶点P2在显示平面上,边与显示平面相交于顶点P2;
如果d1=d2=0,则顶点P1、P2都在显示平面上,也即,边在显示平面上;
如果d1d2>0,则顶点P1、P2在显示平面外的同一侧,边与显示平面无交点;
如果d1d2<0,则顶点P1、P2在显示平面外的不同侧,边与显示平面相交于其自身的一个中间点(如,图6中的Pa);
iii)基于步骤ii)边与显示平面之间位置关系的判断结果,推知ΔP1P2P3与显示平面45之间可能存在的所有十四种位置关系(图7A至图7N),并归纳为以下六种情况:三角形在显示平面上(图7A),三角形在显示平面外(图7B),三角形与显示平面相交于一个顶点(图7C至图7E),三角形与显示平面相交于一条边(图7F至图7H),三角形与显示平面相交于某两条边的共有顶点与第三条边某一中间点的连线(图7I至图7K),三角形与显示平面相交于某条边的中间点与另一条边某一中间点的连线(图7L至图7N);
iv)基于步骤iii)判断的六种位置关系和已知的三角形顶点数据,将那些正好处在显示平面上的数据映射处理成体素数据,具体为,
a)如果三角形在显示平面上(图7A),则根据其顶点的位置坐标和位于各顶点附近的各体素的位置坐标,算出各顶点与位于其附近的各体素之间距离的绝对值,从中选出具有最小绝对距离的体素作为与顶点相映射的体素,然后将所述顶点的色彩和亮度值赋予所述体素,接着根据显示平面上的体素分布规律,对三角形的边和内部区域进行等分分解和填充分解,获得新生成的各点的数据,并将它们映射处理成相应的体素数据;
为清楚起见,以图8为例说明ΔP1P2P3的边如何分解映射到显示平面45上以黑色小矩形表示的体素。设第m列第n行体素用Vmn表示,列索引号m=1,2,…,M;行索引号n=1,2,…,N。顶点P1附近的四个体素V11、V12、V21、V22中,位置与P1最靠近的体素是V12,因此顶点P1被映射为体素V12,同理,顶点P2、P3分别被映射为体素V65、V62,相应地,边P1P2、P1P3和P2P3分别被映射为线段V12V65、V12V62和V65V62,所述三条线段上的其它体素的个数各自增一就是所述三条边各自的最大等分份数,所述体素的位置就是与所述三条边的等分点(图8中的黑色小星形)位置最靠近的、应被映射的体素位置,所述体素的色彩和亮度值就是对所述各条边的顶点色彩和亮度值进行内插而生成的等分点的色彩和亮度值。比如,边P1P2的最大等分份数为3,位于其上的等分点H1、H2应分别被映射为体素V33、V44。
b)如果三角形在显示平面外(图7B),则将它舍弃而不做任何处理;
c)如果三角形与显示平面相交于一个顶点(图7C至图7E),则根据所述顶点的位置坐标,将顶点数据映射处理成显示平面上与它最靠近的体素数据;
d)如果三角形与显示平面相交于一条边(图7F至图7H),则先将所述边的首尾两个顶点数据映射处理成显示平面上分别与它们最靠近的两个体素数据,然后根据所述两个体素连线方向上的其它体素分布,确定所述边的最大等分份数、各等分点位置及其色彩和亮度值,再将它们赋予相应的体素;
e)如果三角形与显示平面相交于某两条边的共有顶点与第三条边某一中间点的连线(图7I至图7K),则先根据第三条边首尾两个顶点数据内插得到所述中间点数据,并将所述共有顶点和中间点数据映射处理成显示平面上分别与它们最靠近的两个体素数据,然后根据所述两个体素连线方向上的其它体素分布,确定所述共有顶点和中间点的连线的最大等分份数、各等分点位置及其色彩和亮度值,再将它们赋予相应的体素;
f)如果三角形与显示平面相交于某条边的中间点与另一条边某一中间点的连线(图7L至图7N),则先内插得到所述两个中间点数据,并映射处理成显示平面上分别与它们最靠近的两个体素数据,然后根据所述两个体素连线方向上的其它体素分布,确定所述两个中间点连线的最大等分份数、各等分点位置及其色彩和亮度值,再将它们赋予相应的体素。
实施例
利用我们自主开发的体素数据生成与仿真显示平台,以及我们本身建立的基于旋转二维发光二极管阵列的体三维显示实验系统,对本发明体三维显示中的体素数据生成方法进行校验,结果表明取得了很好的实施效果。基于本发明所生成的体素数据,可以进行仿真再现或真实再现,都能得到由这些体素数据表述的、与原始三维图像相应的再现图像。
在我们所采用的一个实施例中,三维计算机模型使用一架包含849个顶点、4950条边和1650个三角形的飞机,体三维显示空间由具有相同分辨率和规则体素分布的1024个显示平面构成,在每个显示平面上各有256×64个以矩阵形式排列的体素。图9A、图9B和图9C分别是对该实施例中由顶点映射生成的体素数据、由边等分分解生成的体素数据以及由三角形填充生成的体素数据进行仿真再现的效果图,所对应的体素总数分别是849、28872和84515。上述体素数据也可以用于真实再现,图9D就是对该实施例中由边等分分解生成的体素数据进行真实再现时拍摄的照片。
比较图9A至图9C可以发现:由于飞机顶点只有849个,导致在对顶点映射生成的体素数据进行再现时,那些依赖于边和三角形而存在的信息丢失,图9A的再现效果不理想,而图9B和图9C分别对依赖于边和三角形而存在的信息进行了表述,因此再现效果比较理想,分别得到线框图和散点图。
虽然这里是通过示意和举例的方式对本发明进行描述的,但应当认识到,本发明并不局限于上述实施方式和实施例,前面的描述只被认为是说明性的,而非限制性的,本领域技术人员可以做出多种变换或修改,只要没有离开所附权利要求中所确立的范围和精神实质,均视为在本发明的保护范围之内。
Claims (5)
1.一种体三维显示中的体素数据生成方法,其特征在于,包括以下步骤:
1)根据体三维显示系统的显示空间和体素的形成原理,分析显示空间的形状、大小和所有体素的位置分布情况,对输入的原始三维图像进行按比例缩放以适应所述显示空间;
2)当原始三维图像是三维离散数据集时,无论显示空间是由随机分散在不同空间位置上的许多体素构成,还是由具有相同分辨率和规则体素分布的许多显示平面构成,都是按照以下步骤来生成体素数据:
当一个数据点位置只被映射到一个体素位置时,该数据点的色彩和亮度值就直接作为该体素的色彩和亮度值,当多个数据点位置同时被映射到一个体素位置时,这些数据点与该体素之间的各距离分别作为它们位置重叠程度的度量,如果各距离都相同,则对这些数据点的色彩和亮度值进行算术平均运算,再以所得结果作为该体素的色彩和亮度值,如果距离各不相同或有些相同有些不同,则根据这些数据点与该体素的位置重叠程度分配权重因子,据此对这些数据点的色彩和亮度值进行加权平均运算,再以所得结果作为该体素的色彩和亮度值,至于那些没有任何数据点与之映射的体素,其色彩和亮度值都赋零;
当原始三维图像是三维几何模型,并且显示空间由随机分散在不同空间位置上的许多体素构成时,体素数据生成方法所包括的步骤是:先把三维几何模型分解为许多点,再指定位置偏差容许范围以建立这些点与体素之间的位置映射关系,并根据位置映射情况确定体素的色彩和亮度值;
当原始三维图像是三维几何模型,并且显示空间由具有相同分辨率和规则体素分布的许多显示平面构成时,体素数据生成方法所包括的步骤是:先判断三维几何模型与所有显示平面之间的位置关系再进行后续处理,将正好处在显示平面上的模型数据映射处理成体素数据,至于那些没有任何数据与之相映射的体素,其色彩和亮度值都赋零。
2.根据权利要求1所述的一种体三维显示中的体素数据生成方法,其特征在于,所述的三维几何模型包括在计算机中使用参数曲面定义的自由曲面模型和使用点、线、面基本元素构造的多边形模型。
3.根据权利要求1所述的一种体三维显示中的体素数据生成方法,其特征在于,所述的三维几何模型是使用三角形构造的多边形模型,每个三角形由三个顶点确定,顶点数据以数组形式出现,涉及顶点的位置、色彩和亮度值;
所述的当原始三维图像是三维几何模型并且显示空间由随机分散在不同空间位置上的许多体素构成时,先把三维几何模型分解为许多点,再采用类似于对三维离散数据集的处理方法来生成体素数据,包括以下情况:
如果三维几何模型不完全由数量密集的小尺寸三角形构成,则对模型的所有边进行等分分解,等分点数据通过对各条边首尾两个顶点数据进行内插而生成,各条边的等分份数可以相同,也可以随边的长短不同而不同,长度越短的边,其等分份数越少,由此实现灵活、弹性的等分分解,最后,将等分点数据和顶点数据映射处理成体素数据;
如果三维几何模型不完全由密集的小尺寸三角形构成,则在如所述对模型的所有边进行等分分解后,还可以对模型的所有三角形的内部区域进行填充分解,所述填充分解可以通过以下三种方法实现:将三角形任意两条边上的各等分点连接成线,再对所述各连线进行等分分解;将三角形某一顶点与其对面那条边上的各等分点连接成线,再对所述各连线进行等分分解;根据三角形的三个顶点求出所述三角形的重心,将所述重心与所述三个顶点连接成线而生成三个新的、尺寸较小的三角形,基于所述重心分解原理,可以进一步生成九个、二十七个乃至更多个新的、尺寸逐渐变小的三角形,最后将所述新生成的三角形的所有顶点数据映射处理成体素数据;
所述的当原始三维图像是三维几何模型,并且显示空间由具有相同分辨率和规则体素分布的许多显示平面构成时,先判断三维几何模型与所有显示平面之间的位置关系再进行后续处理,是指判断三维几何模型的各个三角形与所有显示平面之间的位置关系再进行后续处理,在每次对三角形和显示平面之间的位置关系进行判断之前,先检查三角形的顶点和边是否处理过,如果是,取出已有数据,否则进行判断;每完成一次判断,就存储已处理的顶点、边和三角形数据,以便在判断下一个三角形的位置关系时利用。
4.根据权利要求3所述的一种体三维显示中的体素数据生成方法,其特征在于,所述的判断三维几何模型的各个三角形与所有显示平面之间的位置关系再进行后续处理,包括以下步骤:
i)根据三角形的顶点位置坐标、显示平面的方程以及空间解析几何中的点到面的距离公式,分别算出三个顶点到显示平面的距离,并判断所得各距离是否为0,如果是,则说明顶点在显示平面上,否则,顶点在显示平面外;
ii)基于步骤i)顶点与显示平面之间位置关系的判断结果,推知三角形的边与显示平面是以下哪种位置关系:边与显示平面相交于其自身的一个顶点,边与显示平面相交于其自身的一个中间点,边在显示平面上,边在显示平面外;
iii)基于步骤ii)边与显示平面之间位置关系的判断结果,推知三角形与显示平面是以下哪种位置关系:三角形在显示平面上,三角形在显示平面外,三角形与显示平面相交于一个顶点,三角形与显示平面相交于一条边,三角形与显示平面相交于某两条边的共有顶点与第三条边某一中间点的连线,三角形与显示平面相交于某条边的中间点与另一条边某一中间点的连线;
iv)根据步骤iii)判断的六种位置关系和已知的三角形顶点数据,将那些正好处在显示平面上的数据映射处理成体素数据。
5.根据权利要求4所述的一种体三维显示中的体素数据生成方法,其特征在于,所述的步骤iv)具体为:
a)如果三角形在显示平面上,则根据其顶点的位置坐标和位于各顶点附近的各体素的位置坐标,算出各顶点与位于其附近的各体素之间距离的绝对值,从中选出具有最小绝对距离的体素作为与顶点相映射的体素,然后将所述顶点的色彩和亮度值赋予所述体素,接着根据显示平面上的体素分布规律,对三角形的边和内部区域进行等分分解和填充分解,获得新生成的各点的数据,并将它们映射处理成相应的体素数据;
b)如果三角形在显示平面外,则将所述三角形舍弃而不做任何处理;
c)如果三角形与显示平面相交于一个顶点,则根据所述顶点的位置坐标,将顶点数据映射处理成显示平面上与它最靠近的体素数据;
d)如果三角形与显示平面相交于一条边,则先将所述边的首尾两个顶点数据映射处理成显示平面上分别与它们最靠近的两个体素数据,然后根据所述两个体素连线方向上的其它体素分布,确定所述边的最大等分份数、各等分点位置及其色彩和亮度值,再将它们赋予相应的体素;
e)如果三角形与显示平面相交于某两条边的共有顶点与第三条边某一中间点的连线,则先根据第三条边首尾两个顶点数据内插得到所述中间点数据,并将所述共有顶点和中间点数据映射处理成显示平面上分别与它们最靠近的两个体素数据,然后根据所述两个体素连线方向上的其它体素分布,确定所述共有顶点和中间点的连线的最大等分份数、各等分点位置及其色彩和亮度值,再将它们赋予相应的体素;
f)如果三角形与显示平面相交于某条边的中间点与另一条边某一中间点的连线,则先内插得到所述两个中间点数据,并映射处理成显示平面上分别与它们最靠近的两个体素数据,然后根据所述两个体素连线方向上的其它体素分布,确定所述两个中间点连线的最大等分份数、各等分点位置及其色彩和亮度值,再将它们赋予相应的体素。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007100678128A CN100492412C (zh) | 2007-04-03 | 2007-04-03 | 体三维显示中的体素数据生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007100678128A CN100492412C (zh) | 2007-04-03 | 2007-04-03 | 体三维显示中的体素数据生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101042775A CN101042775A (zh) | 2007-09-26 |
CN100492412C true CN100492412C (zh) | 2009-05-27 |
Family
ID=38808269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007100678128A Expired - Fee Related CN100492412C (zh) | 2007-04-03 | 2007-04-03 | 体三维显示中的体素数据生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100492412C (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101794458B (zh) * | 2010-04-19 | 2012-05-16 | 李楚雅 | 三维模型曲线切割方法 |
EP2766876B1 (en) * | 2011-10-12 | 2017-12-27 | Google LLC | Use of banding to optimize map rendering in a three-dimensional tilt view |
CN102724535A (zh) * | 2012-05-23 | 2012-10-10 | 华东师范大学 | 一种体扫描三维显示器的显示方法 |
US9875578B2 (en) * | 2015-10-13 | 2018-01-23 | Biosense Webster (Israel) Ltd. | Voxelization of a mesh |
CN106683163B (zh) * | 2015-11-06 | 2020-10-27 | 杭州海康威视数字技术股份有限公司 | 一种视频监控的成像方法及系统 |
CN106056656A (zh) * | 2016-03-21 | 2016-10-26 | 陈宇鹏 | 一种三维显示数据获取方法 |
CN107483910B (zh) * | 2017-07-14 | 2019-03-01 | 清华大学 | 一种长距离裸眼立体显示方法及其系统 |
WO2019142665A1 (ja) * | 2018-01-16 | 2019-07-25 | ソニー株式会社 | 情報処理装置および方法 |
CN108389202B (zh) * | 2018-03-16 | 2020-02-14 | 青岛海信医疗设备股份有限公司 | 三维虚拟器官的体积计算方法、装置、存储介质及设备 |
CN108665538A (zh) * | 2018-05-18 | 2018-10-16 | 天津流形科技有限责任公司 | 一种三维模型拟合方法、装置、计算机设备及介质 |
CN110335360B (zh) | 2019-05-24 | 2020-12-25 | 深圳大学 | 三维元素布局可视化方法和装置 |
CN110458959B (zh) * | 2019-09-04 | 2024-03-15 | 京东方科技集团股份有限公司 | 体三维显示仿真方法、装置、设备及计算机可读存储介质 |
CN110996093B (zh) * | 2019-11-08 | 2021-08-13 | 京东方科技集团股份有限公司 | 基于二维屏幕旋转体三维显示的体素均匀化方法及装置 |
CN114255170A (zh) * | 2020-09-23 | 2022-03-29 | 京东方科技集团股份有限公司 | 显示图像序列获取方法及装置、电子设备、存储介质 |
CN112883661B (zh) * | 2021-01-30 | 2023-07-07 | 太原理工大学 | 一种碎软低渗油气储层的压裂模拟方法 |
-
2007
- 2007-04-03 CN CNB2007100678128A patent/CN100492412C/zh not_active Expired - Fee Related
Non-Patent Citations (4)
Title |
---|
一种三维实体模型的离散表示方法. 温佩芝,吴晓军,史泽林,于海斌.计算机工程与应用,第15期. 2003 |
一种三维实体模型的离散表示方法. 温佩芝,吴晓军,史泽林,于海斌.计算机工程与应用,第15期. 2003 * |
体显示中点阵扫描模式对体像素方位的影响. 林远芳,张晓洁,徐驊,刘旭,刘向东.浙江大学学报(工学版),第39卷第8期. 2005 |
体显示中点阵扫描模式对体像素方位的影响. 林远芳,张晓洁,徐驊,刘旭,刘向东.浙江大学学报(工学版),第39卷第8期. 2005 * |
Also Published As
Publication number | Publication date |
---|---|
CN101042775A (zh) | 2007-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100492412C (zh) | 体三维显示中的体素数据生成方法 | |
US10769848B1 (en) | 3D object reconstruction using photometric mesh representation | |
CN103337095B (zh) | 一种真实空间三维地理实体的立体虚拟显示方法 | |
JP2020173799A (ja) | 対象の三次元検出およびインテリジェント運転制御方法、装置、媒体および機器 | |
US9177414B2 (en) | Apparatus and method for rendering point cloud using voxel grid | |
CN105247575A (zh) | 用于在三维场景上叠加二维地图数据的系统和方法 | |
JPH0757117A (ja) | テクスチャマップへの索引を生成する方法及びコンピュータ制御表示システム | |
JP4071290B2 (ja) | コンピュータグラフィックス画像を発生する方法および装置 | |
CN108154553A (zh) | 一种三维模型与监控视频的无缝融合方法及装置 | |
Mudge et al. | Viewpoint quality and scene understanding | |
WO2017123163A1 (en) | Improvements in or relating to the generation of three dimensional geometries of an object | |
CN115375836A (zh) | 基于多元置信度滤波的点云融合三维重建方法和系统 | |
Sandnes | Sketching 3D immersed experiences rapidly by hand through 2D cross sections | |
Vyatkin et al. | Voxel Volumes volume-oriented visualization system | |
WO2023004559A1 (en) | Editable free-viewpoint video using a layered neural representation | |
Wu et al. | Survey on computational 3D visual optical art design | |
Bai et al. | Visualization pipeline of autonomous driving scenes based on FCCR-3D reconstruction | |
Kameyama et al. | A direct 3-D shape modeling system | |
Mohammed et al. | Visualize this: lessons from the front-lines of high performance visualization | |
Sengupta et al. | Novel scene generation, merging and stitching views using the 2D affine space | |
CA2282240C (en) | System and computer-implemented method for modeling the three-dimensional shape of an object by shading of a two-dimensional image of the object | |
Lehn et al. | Geometry processing | |
Schilling et al. | Rendering of multiresolution models with texture | |
JP2000187679A (ja) | パッケージ意匠シミュレーション方法、パッケージ意匠シミュレーション装置、およびパッケージ意匠シミュレーションプログラムを記録した記録媒体 | |
CN114359452A (zh) | 一种基于语义图像翻译的三维模型纹理合成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090527 Termination date: 20130403 |