CN103279980B - 基于点云数据的树叶建模方法 - Google Patents
基于点云数据的树叶建模方法 Download PDFInfo
- Publication number
- CN103279980B CN103279980B CN201310167044.9A CN201310167044A CN103279980B CN 103279980 B CN103279980 B CN 103279980B CN 201310167044 A CN201310167044 A CN 201310167044A CN 103279980 B CN103279980 B CN 103279980B
- Authority
- CN
- China
- Prior art keywords
- point
- cloud data
- leaf
- max
- triangle
- 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
Landscapes
- Image Processing (AREA)
- Image Generation (AREA)
Abstract
基于点云数据的树叶建模方法,首先对三维激光扫描仪采集的树叶点云数据进行去噪、平滑等预处理;然后提取点云数据的边界点和叶脉点,并进行点云数据精简;接着使用Delaunary三角网格化建立叶片的网格模型,利用纹理映射的方法绘制出逼真的树叶模型;最后选取叶脉点作为控制点并使用拉普拉斯(Laplacian)网格变形方法生成不同形态的树叶。本发明能够准确的提取出点云数据中边界点和叶脉点,在精简数据的过程中保留树叶边界点和叶脉点,从而重建出非常逼真、细节丰富的树叶模型,且能够模拟树叶在高温、失水等条件下的卷曲、干枯等形态。
Description
技术领域
本发明属于科学计算可视化与数学建模相结合的交叉学科技术领域,涉及一种基于点云数据的树叶建模方法。
背景技术
随着3D激光扫描技术和扫描设备的快速发展,基于3D点云数据的重建成为几何造型中的热点。激光扫描技术突破了传统的单点测量方法,可以快速、高密度、高精度的获取被测对象表面的三维坐标信息。近年来,相关学者已经将激光扫描技术应用于植物建模领域。
叶片是植物最重要的器官之一,不同植物拥有不同的叶片形态和纹理,即使同一棵树上的叶子,也会随着气候、年龄等因素的不同而拥有不同的形态和纹理。植物叶片所具有的这种生物多样性和复杂性,为植物的真实感绘制带来了非常大的挑战。叶片的建模和渲染直接影响着植物模型的真实感。因此对植物叶片进行真实感绘制的研究是非常有必要的,其可以应用到农林业中的植物研究、虚拟现实、计算机动画、游戏、城市景观设计等领域。
关于植物叶片的建模和可视化研究已经有了几十年的历史了。经过这几十年的发展,植物叶片建模的方法有很多种,其中运用最广的是基于点云的叶片建模。
洛奇(Loch)利用三维激光扫描仪获得植物叶片的点云数据,然后利用线性三角和CT(clought-tocher)技术实现了叶片的精确建模。奥奇莱特(Oqielat)利用洛奇(Loch)的方法获得叶片的点云数据后,通过CT和径向基(RBF)的方法获得了更加精确的叶片模型。拉尔夫·哈贝尔(RalfHabel)等基于点云数据并结合半透明纹理的绘制方法实现了逼真的树叶绘制。孙智慧等首先对植物叶片数据进行去噪,然后Delaunary三角网格化点云数据,最后重建出了精度较高的植物叶片。
现有的建模方法仅适用于特定的植物且只是真实植物叶片形态(边缘轮廓或者叶脉)的近似重建,不能准确的重建出真实的植物叶片上的细节。此外大部分现有的方法只是考虑了叶片在正常的环境下的形态,很少模拟叶片在高温、失水等条件下的卷曲、干枯等形态。
发明内容
本发明的目的是提供一种基于点云数据的树叶建模方法,解决了现有技术仅适用于特定的植物且只是真实植物叶片形态的近似重建,不能准确的重建出真实的植物叶片上的细节的问题。
本发明的目的是这样实现的,基于点云数据的树叶建模方法,首先对三维激光扫描仪采集的树叶点云数据进行去噪、平滑等预处理;然后提取点云数据的边界点和叶脉点,并进行点云数据精简;接着使用Delaunay三角网格化建立叶片的网格模型,利用纹理映射的方法绘制出逼真的树叶模型;最后选取叶脉点作为控制点并使用拉普拉斯(Laplacian)网格变形方法生成不同形态的树叶;
其中,边界点和叶脉点的提取步骤为:
1)将点云数据映射到二维图像中;假设点云数据中有N个点,需要将点云数据映射到位于XOZ面高度为height,宽度为width的二值图像;设max_x=max{xi|1≤i≤N},min_x=min{xi|1≤i≤N},max_z=max{zi|1≤i≤N},min_z=min{zi|1≤i≤N},根据下式(1)、(2)计算点云数据(xi,yi,zi)映射到二值图像后的坐标(h,w):
2)从二维图像中提取出边界点和叶脉点;设X轴方向的允许误差horizon_delta=预先给定的值,Z轴方向的允许误差vertical_delta=预先给定的值;图像在(h,w)处的灰度值表示为grey[h][w],其中0≤h≤height,0≤w≤width;从左至右,从上到下遍历二值图像,若图像当前位置(h,w)的灰度值grey[h][w]=255,则计算那些映射到(h,w)处的点云数据的映射误差:
vertical_differ=(h/height)-((xi-min_x)/(max_x-min_x))(3)
horizon_differ=(j/width)-((zi-min_z)/(max_z-min_z))(4)
若这两个误差满足如下条件,则点(xi,yi,zi)为边界点或者叶脉点,否则其不为特征点:
(abs(vertical_differ)≤vertical_delta)&&
(5)
(abs(horizon_differ)≤horizon_delta)
3)根据1)中点云与二维图像之间的映射关系获得2)中计算出的特征点在点云中的对应点集;
其中,点云数据精简步骤:
(1)初始化,假设点云数据有N个点,令变量min_distance=+∞,current_points_num=N,target_num=预先给定的点个数;令辅助数组delete_marker[i]=false,其中0≤i<N;
(2)若current_points_num>target_num,转至下述(3);否则根据一一对应关系将辅助数组delete_marker中标记为true的点从原始点云数据中删除,保存辅助数组delete_marker中标记为false的点云数据,算法结束;
(3)对于点pi,若delete_marker[i]等于true,则查看下一个点;否则查找点pi的K个邻接点中第一个未被标记为true的点,并计算点pi和这个邻接点的距离,设其为distance;若distance<min_distance并且这个点不是叶脉点或者边界点,则min_distance=distance,并使用变量temp_index记录该邻接点的索引;对所有的原始点云数据进行循环即可找到未被删除的邻接点中距离最近的点;令delete_marker[temp_index]=true,同时current_points_num=current_points_num-1,则转到点云数据精简的步骤(2)。
本发明的特点还在于:
上述Delaunay三角网格化为使用Bowyer-Watson方法实现树叶点云数据的三角网格化,具体步骤如下:
(1)首先构造一个超级三角形,这个超级三角形包含了所有的散点,将这个三角形存储到三角形链表中;
(2)将点集中的散点依次插入,同时在存储三角形的链表中查找出其外接圆包含当前插入点的三角形,这个三角形称为该点的影响三角形;接下来删除该点影响三角形的公共边,并将影响三角形的所有顶点和当前插入点连接,形成新的三角形;在链表中删除已经消失的三角形并将新形成的三角形插入到链表中;
(3)根据优化准则对局部新形成的三角形进行优化处理;将优化处理后的三角形存储到Delaunay三角形链表中;
(4)重复执行实现树叶点云数据的三角网格化中的(2),直到所有的散点都已经完成插入。
上述纹理映射为先将点云数据映射到树叶图像上,然后通过对应关系求出点云中各个点的纹理坐标,最后根据纹理坐标实现逼真地纹理映射。纹理映射的具体步骤如下:
(1)假设点云数据中有N个点,将点云数据映射到位于XOZ面高度为height,宽度为width的原始树叶图像;设max_x=max{xi|1≤i≤N},min_x=min{xi|1≤i≤N},max_z=max{zi|1≤i≤N},min_z=min{zi|1≤i≤N},根据公式(6)、(7)计算点云数据(xi,yi,zi)映射到二值图像后的坐标(h,w):
(2)对于点云数据中的每个点,计算纹理坐标u,v其中
u=(xi-min_x)/(max_x-min_x)(8)
v=(zi-min_z)/(max_z-min_z)(9)
(3)根据步骤(2)所求得的纹理坐标进行纹理映射。
上述拉普拉斯(Laplacian)网格变形为通过拉普拉斯(Laplacian)算子来描述树叶网格模型中顶点与顶点之间的拓扑关系,随后在网格模型上选取1个或多个控制顶点作为约束条件,通过这几个控制点来操纵模型进行相应的变形,以此生成不同形态的树叶或模拟树叶的干枯。
本发明具有如下有有益效果:
1、本发明解决了现有技术仅适用于特定的植物且只是真实植物叶片形态(边缘轮廓或者叶脉)的近似重建,不能精确地重建出逼真的植物叶片的问题。
2、本发明能够准确的提取出点云数据中边界点和叶脉点,在精简数据的过程中保留树叶边界点和叶脉点,从而重建出非常逼真、细节丰富的树叶模型。
3、本发明能够模拟树叶在高温、失水等条件下的卷曲、干枯等形态。
附图说明
图1本发明基于点云数据的树叶建模方法流程图;
图2本发明基于点云数据的树叶建模方法的梧桐树叶原始点云数据图;
图3本发明基于点云数据的树叶建模方法的提取梧桐树叶边界点和叶脉点效果图;
图4本发明基于点云数据的树叶建模方法的精简梧桐树叶点云效果图;
图5本发明基于点云数据的树叶建模方法的拉普拉斯(Laplacian)网格变形效果图。
具体实施方式
下面将结合附图对本发明加以详细说明,应指出的是,所描述的实施例仅旨在便于对本发明的理解,而对其不起任何限定作用。
本发明首先对三维激光扫描仪采集的树叶点云数据进行去噪、平滑等预处理;然后结合图像处理的知识求出点云数据的边界点和叶脉点并对预处理后的数据进行精简;接着使用Delaunay三角网格化建立叶片的网格模型;再次是利用纹理映射的方法绘制出逼真的树叶模型;最后选取叶脉点作为控制点并使用拉普拉斯(Laplacian)网格变形方法生成不同形态的树叶。
参见图1,具体步骤如下:
叶脉点和边界点的提取步骤:
激光点云数据虽包含了物体的三维空间信息,但是它缺少物体的物理特性,如形状、纹理等信息。因此从点云数据中提取特征需要较大的计算量。二维图像虽然没有物体的空间信息,但是它包含了物体的外形及纹理信息,并且对其中的特征识别和提取相对容易,相关方法也较成熟。本发明结合点云数据和图像的优势,利用图像特征提取技术辅助完成点云数据的特征提取。本发明基本原理如下:将点云数据映射到二维图像中的像素,然后使用数字图像处理的相关方法从二维图像中提取出感兴趣的特征,根据对应关系得到图像中的特征在点云中的对应点集。详细步骤如下:
1)图像预处理。使用中值滤波和双边滤波去除扫描仪所拍摄的树叶图像噪声和增强树叶边缘信息,然后使用索贝尔(Sobel)算子提取树叶的边界和叶脉,最后二值化图像,此时的二值图像只包含树叶的边界和叶脉信息。
2)将点云数据映射到二值图像中。假设点云数据中有N个点,需要将点云数据映射到位于XOZ面高度为height,宽度为width的二值图像。设max_x=max{xi|1≤i≤N},min_x=min{xi|1≤i≤N},max_z=max{zi|1≤i≤N},min_z=min{zi|1≤i≤N},根据式(1)、(2)计算点云数据(xi,yi,zi)映射到二值图像后的坐标(h,w):
3)利用图像中的特征求出点云数据中的特征点集。设X轴方向的允许误差horizon_delta=预先给定的值,Z轴方向的允许误差vertical_delta=预先给定的值。图像在(h,w)处的灰度值表示为grey[h][w],其中0≤h≤height,0≤w≤width。从左至右,从上到下遍历二值图像,若图像当前位置(h,w)的灰度值grey[h][w]=255,则计算那些映射到(h,w)处的点云数据的映射误差:
vertical_differ=(h/height)-((xi-min_x)/(max_x-min_x))(3)
horizon_differ=(j/width)-((zi-min_z)/(max_z-min_z))(4)
若这两个误差满足如下条件,则点(xi,yi,zi)为边界点或者叶脉点,否则其不为特征点:
(abs(vertical_differ)≤vertical_delta)&&
(5)
(abs(horizon_differ)≤horizon_delta)
最终的效果如图2、3所示。
点云数据精简步骤:
扫描仪采集得到的树叶点云数据往往有几万、几十万的规模。采用过多的数据点进行重建,不仅消耗大量的计算机资源并且过于密集的点云数据会影响到重建模型的光滑性。常用的散乱点云精简方法有点个数精简法、点间距精简法、法向精度简法等。这些方法在删除当前点的过程中都没有考虑该点是否为特征点。对于树叶重建来说,我们希望尽可能的保留树叶点云的边界点和叶脉点,因此本发明提出了一种改进的点个数精简法。该方法的核心思想是按照严格的优先序列对数据进行简化,删除某个点之前首先判断该点是否为边界点或叶脉点。详细步骤如下:
(1)初始化,假设点云数据有N个点。令变量min_distance=+∞,current_points_num=N,target_num=预先给定的点个数;令辅助数组delete_marker[i]=false,其中0≤i<N。
(2)若current_points_num>target_num,转至下述步骤(3);否则根据一一对应关系将辅助数组delete_marker中标记为true的点从原始点云数据中删除,保存辅助数组delete_marker中标记为false的点云数据,算法结束。
(3)对于点pi,若delete_marker[i]等于true,则查看下一个点;否则查找点pi的K个邻接点中第一个未被标记为true的点,并计算点pi和这个邻接点的距离,设其为distance;若distance<min_distance并且这个点不是叶脉点或者边界点,则min_distance=distance,并使用变量temp_index记录该邻接点的索引。对所有的原始点云数据进行循环即可找到未被删除的邻接点中距离最近的点。置delete_marker[temp_index]=true,同时current_points_num=current_points_num-1。转到点云数据精简的步骤(2)。
最终的效果如图4所示。
Delaunay三角网格化为使用Bowyer-Watson方法实现树叶点云数据的三角网格化,具体步骤如下:
纹理映射步骤:
为了渲染出逼真的树叶,往往需要复杂的叶面模型和精确的光照计算,因而该课题一直是计算机图形学领域的一大难题,在有实时性需求的情况下该问题显得尤其突出。目前常用的渲染技术有:纹理映射(TextureMapping)、凹凸映射(BumpMapping)、光线跟踪(RayTracing)以及双向反射分布函数(BidirectionalReflectanceDistributionFunction,BRDF)和双向传递分布函数(BidirectionalTransmittanceDistributionFunction,BTDF)。和其它几种渲染技术相比,纹理映射可以方便的生成极具真实感的图形而不必过多的考虑物体的表面细节。本发明采用纹理映射技术对树叶模型进行渲染。在纹理映射之前,必须对精简后的点云进行三角网格化,并计算每个点的纹理坐标。
1.Delaunay三角网格化
三角网格能够表示任意形状的几何物体,并且在计算机上容易存储、分析、计算和绘制。因此,三角网格已经成为曲面重建中的重要描述方式并广泛用于逆向工程中。目前最为流行的三角网格化方法是Delaunay三角网格化。理论上严格证明,当给定的点集分布中不存在四点或四点以上共圆时,Delaunay三角划分存在唯一的最优解,即所有的三角形单元中最小内角值之和最大,保证了划分出的三角网格尽量均匀规范。本发明使用Bowyer-Watson方法实现树叶点云数据的三角网格化,并手动的删除网格化后的冗余边。
2.纹理映射
逼真纹理映射的难点就在于纹理坐标的计算,本发明首先将点云数据映射到扫描仪所拍摄的树叶图像上,然后通过对应关系求出点云中各个点的纹理坐标。详细步骤如下:
(1)假设点云数据中有N个点,将点云数据映射到位于XOZ面高度为height,宽度为width的原始树叶图像。设max_x=max{xi|1≤i≤N},min_x=min{xi|1≤i≤N},max_z=max{zi|1≤i≤N},min_z=min{zi|1≤i≤N},根据式(6)、(7)计算点云数据(xi,yi,zi)映射到二值图像后的坐标(h,w):
(2)对于点云数据中的每个点,计算纹理坐标u,v其中
u=(xi-min_x)/(max_x-min_x)(8)
v=(zi-min_z)/(max_z-min_z)(9)
(3)根据步骤(2)所求得的纹理坐标进行纹理映射。
求得纹理坐标之后,可以将原始图像作为纹理映射到网格模型上。
基于拉普拉斯(Laplacian)的树叶三维变形步骤:
1.拉普拉斯(Laplacian)坐标的定义
拉普拉斯(Laplacian)坐标又称为微分坐标,由亚历克莎首先将其应用到3D网格模型编辑领域,用它来描述网格模型每个顶点和其相邻顶点之间的相对关系。
设M=(V,E,F)为具有n个顶点的三角网格模型,其中V表示网格模型的顶点集合,E表示网格模型的边集合,F表示网格模型的面集合。对于模型的每个顶点vi∈M,使用笛卡尔坐标(xi,yi,zi)表示顶点在3D空间中的位置,因此拉普拉斯(Laplacian)坐标(δ坐标)可以使用顶点vi的绝对坐标和其相邻顶点的中心之差:
其中N(i)={j|(i,j)∈E},di=|N(i)|为vi的度,即顶点vi的所有邻接点个数。分析上式可以得出其几何意义,拉普拉斯(Laplacian)坐标本质上表示的是顶点vi和其所有邻接点组成的多边形之间的拓扑关系。换句话说,拉普拉斯(Laplacian)坐标表示的是顶点vi和该多边形质心的差。
可以使用矩阵来表述笛卡尔坐标系和δ坐标系之间的向量变换,为此要使用到网格模型的邻接矩阵A来表示顶点和顶点之间的连通关系,网格模型的邻接矩阵定义如下:
设D为对角矩阵,其定义如下:
本发明使用δi=L(vi)表示顶点vi的拉普拉斯(Laplacian)坐标,并将其所表示的向量称为拉普拉斯(Laplacian)向量,其中L表示一个二阶的微分算子。此外用Δ(M)={δi}表示三角网格模型的微分属性,用矩阵的形式可以表示为Δ=LV。其中L=I-D-1A,我们将L称为三角网格模型M的拉普拉斯(Laplacian)矩阵,I为n阶单位方阵,D-1为对角矩阵D的逆。L的数学定义如下:
根据差分几何的相关知识,拉普拉斯(Laplacian)坐标可以认为是拉普拉斯-贝尔特拉米(Laplacian-Beltrami)的离散化表示方法。因此可以将拉普拉斯(Laplacian)坐标表述为:
2.拉普拉斯(Laplacian)网格变形
相对于传统的笛卡尔坐标,拉普拉斯(Laplacian)坐标则能够表示出局部曲面形状、方向等信息,因此更适合应用于网格变形上。
网格变形是对模型M进行某种变换,设变换后模型为M'=(E',V',F'),则M'和M应具有相同的拓扑关系,即E(M')=E(M)。若变形后V'和V完全不同,则可以推断模型发生整体变形;若V'和V只是部分不同,此时模型发生局部变形。
对于三角网格模型M,希望能够找到一种几何量Φ,使得网格模型在变形之前和变形之后该几何量保持不变,设变形后该几何量为Φ',即Φ'=Φ。此外为了节省计算空间,则要求Φ和网格模型的顶点坐标V具有线性关系,即Φ=LV。如果能够寻找到这样的几何量Φ,就可以建立如下方程组求解出变形后网格模型各顶点的新坐标:
LV'=LV(15)
由于网格模型的拉普拉斯(Laplacian)坐标具有:与线性泛函书可交换的、平移不变性、对旋转变换敏感等性质,因此可以将拉普拉斯(Laplacian)坐标近似的作为我们所要寻找的几何不变量Φ。
网格模型可以看做是一幅无向图,如果该网格模型包含有k个连通分量,那么矩阵L的秩为n-k,小于等于n。根据线性代数的相关知识可知,此时方程组具有无穷组解。假设模型M是连通的,即模型只有1(k=1)个连通分量,为了使方程组可以求解,则必须引入至少一个固定顶点或者已知顶点作为方程组的约束条件。话句话说,这些固定顶点或者已知顶点作为控制点,控制着整个网格模型的变形。设这些固定顶点或者已知顶点的索引集合为C,附加约束表述如下:
vj=cj,j∈C(16)
其中C={1,2,…,m},即在当前网格模型中选取了m个控制点,可以得到如下的线性方程组:
式中ω为每个控制点对模型变形的贡献度,亦称之为权值。
得到添加完约束条件后的拉普拉斯(Laplacian)矩阵后,只需根据这些控制点的索引值,在等式右边的相应处添对应控制点的新坐标值和该控制点的权值的乘积即可。不难看出此时整个线性方程组是列满秩的,可以根据最小二乘原理求解这个方程组。
最小二乘法(又称最小平方法)是一种使用很广泛的数学优化技术,它的核心思想是通过最小化误差的平方和来寻找最佳的解。它可以应用于曲线拟合和其它一些优化问题。因此上述线性方程组可以转化为下式所示的形式:
将添加了m个控制点信息后的拉普拉斯(Laplacian)矩阵记为L',将添加完附加信息的Φ记为Φ',则有:
L'V'=Φ'(19)
其中L'是(m+n)行n列的矩阵,V'为n行3列的矩阵,Φ'为(m+n)行3列的矩阵。运用最小二乘的思想,方程两边同时左乘L'的转置矩阵(L')T:
((L')TL')V'=(L')TΦ'(20)
不难证明矩阵((L')TL')是对称且正定的,因此可以先对其进行Cholesky分解来减小计算量。本发明使用Umfpack数学库进行求解。
最终效果如图5所示。
Claims (5)
1.基于点云数据的树叶建模方法,其特征在于,首先对三维激光扫描仪采集的树叶点云数据进行去噪、平滑预处理;然后提取点云数据的边界点和叶脉点,并进行点云数据精简;接着使用Delaunay三角网格化建立叶片的网格模型,利用纹理映射的方法绘制出逼真的树叶模型;最后选取叶脉点作为控制点并使用拉普拉斯Laplacian网格变形方法生成不同形态的树叶;
其中,边界点和叶脉点的提取步骤为:
1)将点云数据映射到二维图像中;假设点云数据中有N个点,需要将点云数据映射到位于XOZ面高度为height,宽度为width的二值图像;设max_x=max{xi|1≤i≤N},min_x=min{xi|1≤i≤N},max_z=max{zi|1≤i≤N},min_z=min{zi|1≤i≤N},根据下式(1)、(2)计算点云数据(xi,yi,zi)映射到二值图像后的坐标(h,w):
2)从二维图像中提取出边界点和叶脉点;设X轴方向的允许误差horizon_delta=预先给定的值,Z轴方向的允许误差vertical_delta=预先给定的值;图像在(h,w)处的灰度值表示为grey[h][w],其中0≤h≤height,0≤w≤width;从左至右,从上到下遍历二值图像,若图像当前位置(h,w)的灰度值grey[h][w]=255,则计算那些映射到(h,w)处的点云数据的映射误差:
vertical_differ=(h/height)-((xi-min_x)/(max_x-min_x))(3)
horizon_differ=(j/width)-((zi-min_z)/(max_z-min_z))(4)
若这两个误差满足如下条件,则点(xi,yi,zi)为边界点或者叶脉点,否则其不为特征点:
3)根据1)中点云与二维图像之间的映射关系获得2)中计算出的特征点在点云中的对应点集;
其中,点云数据精简步骤:
(1)初始化,假设点云数据有N个点,令变量min_distance=+∞,current_points_num=N,target_num=预先给定的点个数;令辅助数组delete_marker[i]=false,其中0≤i<N;
(2)若current_points_num>target_num,转至下述(3);否则根据一一对应关系将辅助数组delete_marker中标记为true的点从原始点云数据中删除,保存辅助数组delete_marker中标记为false的点云数据,算法结束;
(3)对于点pi,若delete_marker[i]等于true,则查看下一个点;否则查找点pi的K个邻接点中第一个未被标记为true的点,并计算点pi和这个邻接点的距离,设其为distance;若distance<min_distance并且这个点不是叶脉点或者边界点,则min_distance=distance,并使用变量temp_index记录该邻接点的索引;对所有的原始点云数据进行循环即可找到未被删除的邻接点中距离最近的点;令delete_marker[temp_index]=true,同时current_points_num=current_points_num-1,则转到点云数据精简的步骤(2)。
2.如权利要求1所述的基于点云数据的树叶建模方法,其特征在于,所述Delaunay三角网格化为使用Bowyer-Watson方法实现树叶点云数据的三角网格化,具体步骤如下:
(1)首先构造一个超级三角形,这个超级三角形包含了所有的散点,将这个三角形存储到三角形链表中;
(2)将点集中的散点依次插入,同时在存储三角形的链表中查找出其外接圆包含当前插入点的三角形,这个三角形称为该点的影响三角形;接下来删除该点影响三角形的公共边,并将影响三角形的所有顶点和当前插入点连接,形成新的三角形;在链表中删除已经消失的三角形并将新形成的三角形插入到链表中;
(3)根据优化准则对局部新形成的三角形进行优化处理;将优化处理后的三角形存储到Delaunay三角形链表中;
(4)重复执行实现树叶点云数据的三角网格化中的(2),直到所有的散点都已经完成插入。
3.如权利要求2所述的基于点云数据的树叶建模方法,其特征在于,所述纹理映射为先将点云数据映射到树叶图像上,然后通过对应关系求出点云中各个点的纹理坐标,最后根据纹理坐标实现逼真地纹理映射。
4.如权利要求3所述的基于点云数据的树叶建模方法,其特征在于,所述纹理映射的具体步骤如下:
(1)假设点云数据中有N个点,将点云数据映射到位于XOZ面高度为height,宽度为width的原始树叶图像;设max_x=max{xi|1≤i≤N},min_x=min{xi|1≤i≤N},max_z=max{zi|1≤i≤N},min_z=min{zi|1≤i≤N},根据公式(6)、(7)计算点云数据(xi,yi,zi)映射到二值图像后的坐标(h,w):
(2)对于点云数据中的每个点,计算纹理坐标u,v其中
(3)根据步骤(2)所求得的纹理坐标进行纹理映射。
5.如权利要求1所述的基于点云数据的树叶建模方法,其特征在于,所述拉普拉斯Laplacian网格变形为通过拉普拉斯Laplacian算子来描述树叶网格模型中顶点与顶点之间的拓扑关系,随后在网格模型上选取1个或多个控制顶点作为约束条件,通过这几个控制点来操纵模型进行相应的变形,以此生成不同形态的树叶或模拟树叶的干枯。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310167044.9A CN103279980B (zh) | 2013-05-08 | 2013-05-08 | 基于点云数据的树叶建模方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310167044.9A CN103279980B (zh) | 2013-05-08 | 2013-05-08 | 基于点云数据的树叶建模方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103279980A CN103279980A (zh) | 2013-09-04 |
CN103279980B true CN103279980B (zh) | 2016-02-24 |
Family
ID=49062485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310167044.9A Expired - Fee Related CN103279980B (zh) | 2013-05-08 | 2013-05-08 | 基于点云数据的树叶建模方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103279980B (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104574516B (zh) * | 2013-10-16 | 2019-03-05 | 鸿富锦精密工业(深圳)有限公司 | 点云平滑系统及方法 |
CN103679787B (zh) * | 2013-10-23 | 2016-08-31 | 江苏大学 | 基于约束变形和微分坐标模拟植物果实形变的方法 |
CN103729872B (zh) * | 2013-12-30 | 2016-05-18 | 浙江大学 | 一种基于分段重采样和表面三角化的点云增强方法 |
CN103914872B (zh) * | 2014-03-07 | 2017-08-08 | 西北农林科技大学 | 一种基于简化模态分析法的树动画模拟方法 |
CN103886555A (zh) * | 2014-03-12 | 2014-06-25 | 北京昊峰东方科技有限公司 | 一种基于海量三维激光扫描点云数据的处理方法 |
CN105654543B (zh) * | 2014-09-25 | 2019-01-22 | 南京林业大学 | 面向激光点云数据的阔叶树真实叶片建模与形变方法 |
WO2016074154A1 (zh) * | 2014-11-11 | 2016-05-19 | 中国科学院深圳先进技术研究院 | 植物扫描与重建方法 |
CN104408765B (zh) * | 2014-11-11 | 2017-01-11 | 中国科学院深圳先进技术研究院 | 植物扫描与重建方法 |
CN104615481B (zh) * | 2015-02-10 | 2019-02-01 | 西安理工大学 | 一种基于簇聚类的风吹有叶树摇曳模拟方法 |
CN104748677B (zh) * | 2015-02-11 | 2017-10-31 | 中国矿业大学(北京) | 采用三维激光扫描方式测量植株形态的方法 |
CN104766058B (zh) * | 2015-03-31 | 2018-04-27 | 百度在线网络技术(北京)有限公司 | 一种获取车道线的方法和装置 |
CN104794750A (zh) * | 2015-04-10 | 2015-07-22 | 西北农林科技大学 | 一种基于空间殖民算法的树点云三维重建方法 |
CN106886980B (zh) * | 2015-12-11 | 2020-08-07 | 北京智行者科技有限公司 | 一种基于三维激光雷达目标识别的点云密度增强的方法 |
CN106423656B (zh) * | 2016-08-11 | 2019-04-02 | 重庆大学 | 基于点云与图像匹配的自动喷涂系统及方法 |
CN107066654B (zh) * | 2016-12-15 | 2020-03-10 | 广东工业大学 | 面向点云模型的包容盒面的轨迹控制点拾取方法和装置 |
CN106651900B (zh) * | 2016-12-27 | 2019-07-23 | 中国农业大学 | 一种基于轮廓分割的高架原位草莓三维建模方法 |
CN107123163A (zh) * | 2017-04-25 | 2017-09-01 | 无锡中科智能农业发展有限责任公司 | 一种基于多视角立体视觉的植株三维重建系统 |
CN107818578B (zh) * | 2017-10-11 | 2020-09-18 | 上海北冕信息科技有限公司 | 一种基于注册方法的快速人脸模型重建算法及系统 |
CN108765434B (zh) * | 2018-01-15 | 2022-05-24 | 中国人民解放军陆军装甲兵学院 | 基于增材再制造点云模型的轮廓提取方法 |
CN108304662A (zh) * | 2018-02-05 | 2018-07-20 | 上海海洋大学 | 一种基于comsol软件的射频加热仿真模拟方法 |
CN108665530B (zh) * | 2018-04-25 | 2021-12-14 | 厦门大学 | 基于单张图片的三维建模实现方法 |
CN109308738B (zh) * | 2018-07-26 | 2020-09-22 | 华南理工大学 | 基于优化Delaunay三角剖分的植物微观组织重建方法 |
CN110148146B (zh) * | 2019-05-24 | 2021-03-02 | 重庆大学 | 一种利用合成数据的植物叶片分割方法及系统 |
CN110443875B (zh) * | 2019-07-25 | 2022-11-29 | 广州启量信息科技有限公司 | 一种基于建筑点云数据的轴线自动绘制系统 |
CN112487571B (zh) * | 2020-11-24 | 2024-05-14 | 上海市建工设计研究总院有限公司 | 外包装树树冠枝条的设计方法 |
CN113327328B (zh) * | 2021-08-02 | 2021-10-29 | 苏州鼎纳自动化技术有限公司 | 一种三维点云数据精简方法 |
CN115049946B (zh) * | 2022-06-10 | 2023-09-26 | 安徽农业大学 | 一种基于点云变换的麦田生长状态判别方法与装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102184564A (zh) * | 2011-04-13 | 2011-09-14 | 北京农业信息技术研究中心 | 基于双尺度三维数字化数据的设施园艺植物三维重建方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8204313B2 (en) * | 2007-08-30 | 2012-06-19 | Leica Geosystems Ag | Rapid, spatial-data viewing and manipulating including data partition and indexing |
-
2013
- 2013-05-08 CN CN201310167044.9A patent/CN103279980B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102184564A (zh) * | 2011-04-13 | 2011-09-14 | 北京农业信息技术研究中心 | 基于双尺度三维数字化数据的设施园艺植物三维重建方法 |
Non-Patent Citations (5)
Title |
---|
Image-based Tree Modeling;Ping Tan 等;《ACM Transactions on Graphics》;20070731;第26卷(第3期);87-1 - 87-7 * |
基于点云数据的植物叶片曲面重构方法;孙智慧 等;《农业工程学报》;20120229;第28卷(第3期);第184-109页 * |
基于点云数据的植物叶片曲面重构方法;孙智慧 等;《农业工程学报》;20120229;第28卷(第3期);第185-187页 * |
虚拟植物叶片的可视化建模技术研究;王立臣 等;《计算机仿真》;20100531;第27卷(第5期);204-208 * |
虚拟植物叶片的可视化建模技术研究;王立臣 等;《计算机仿真》;20100531;第27卷(第5期);第204-207页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103279980A (zh) | 2013-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103279980B (zh) | 基于点云数据的树叶建模方法 | |
Wang et al. | Lidar point clouds to 3-D urban models $: $ A review | |
Livny et al. | Automatic reconstruction of tree skeletal structures from point clouds | |
CN101950365B (zh) | 基于ksvd字典学习的多任务超分辨率图像重构方法 | |
CN109147048A (zh) | 一种利用单张彩色图的三维网格重建方法 | |
Jänicke et al. | Brushing of attribute clouds for the visualization of multivariate data | |
CN100570641C (zh) | 基于物理的植物叶子模拟方法 | |
CN104835202A (zh) | 一种三维虚拟场景快速构建方法 | |
CN105654492A (zh) | 基于消费级摄像头的鲁棒实时三维重建方法 | |
CN106780458B (zh) | 一种点云骨架提取方法及装置 | |
CN102117488B (zh) | 一种虚拟环境中构造真实物体表面反射特性的方法 | |
CN110889901B (zh) | 基于分布式系统的大场景稀疏点云ba优化方法 | |
CN111047596A (zh) | 一种三维点云实例分割方法、系统及电子设备 | |
CN114140601A (zh) | 深度学习框架下基于单幅图像的三维网格重建方法及系统 | |
CN102855639B (zh) | 一种运动捕捉数据的关键帧提取方法 | |
CN101493953A (zh) | 一种交互式三维卡通人脸生成方法及装置 | |
CN110176079A (zh) | 一种基于准共形映射的三维模型变形算法 | |
CN116416376A (zh) | 一种三维头发的重建方法、系统、电子设备及存储介质 | |
CN102567465B (zh) | 复眼视觉基础上的三维模型几何相似性搜索方法 | |
CN104318552A (zh) | 基于凸包投影图匹配的模型配准方法 | |
CN106570935A (zh) | 植被分布模拟方法及装置 | |
Wang et al. | High-resolution point cloud reconstruction from a single image by redescription | |
CN103020984B (zh) | 基于稀疏表达的三维人体运动数据补全方法 | |
Mascarenhas et al. | Isocontour based visualization of time-varying scalar fields | |
Zhang et al. | MeshLink: a surface structured mesh generation framework to facilitate automated data linkage |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160224 Termination date: 20210508 |
|
CF01 | Termination of patent right due to non-payment of annual fee |