一种基于形状分析的树冠外形提取方法

文档序号:6585195阅读:227来源:国知局

专利名称::一种基于形状分析的树冠外形提取方法
技术领域
:本发明属于模式识别与科学计算可视化相结合的交叉学科
技术领域
,涉及点云处理、形状分析、植物形体(简称形体)和分级骨架的提取技术。
背景技术
:随着虚拟环境的建立,产品设计,数字娱乐,古物保护以及城市规划的发展,三维几何模型的重建和处理成为了一个研究热点。可以说三维几何建模可以看作是除了数字音频,数字图像,数字视频后的第四个数字多媒体。三维的几何模型可以表示物体的表面,因而可以鉴别外在的形状和外表的一些性质。而随着数据采集技术的快速发展,越来越多的三维数字扫描仪得到了普及并应用到越来越多的领域。在计算机图形学,计算机辅助设计技术中所使用的数据分辨率越来越高,数据量也越来越大。通过对物体进行密集的扫描,可以获得关于物体外形更多的细节,获得的是数据点云,并且没有拓扑连接信息。所以发展新的方法来表示,处理,重建甚至是绘制这些复杂几何体就变得相当的重要。而几何模型的重建是在现代虚拟现实中比较重要的一个研究主题。骨架化作为一种特征提取和特征表示方法,可以有效地删除冗余信息和保留特征信息。在虚拟现实中,骨架化可以从数据中提取出路径以指导漫游,防止在漫游中迷路。对于林业的可视化和测量,骨架可以精确的表示形体的拓扑结构以便进行树木的识别,并且可以精确地对树木的长度和半径进行测量。对于文字、工程图、指纹中的"细茎"状图像等都是长而窄的带状图像,也常常需要通过计算它们的骨架来进行识别或重构等处理。在视频处理中,通过骨架提取图像中主要特征,可以精确地对运动形体进行跟踪。很多形体,如医学中的血管、气管、林业中的各种树木,以及人体的骨架,都可以表示成为形体,因此形体的骨架提取得到了广泛的重视,Ogniewicz利用计算几何中的重要工具-Voronoi图来提取骨架。对于平面中的点,可以得到该点的Voronoi多边形,而Voronoi图就是这些Voronoi多边形的集合。Voronoi图中形体边界的点所产生的Voronoi边或Voronoi面靠近形体的中心,因此这些边可认为是形体的骨架。但是该方法一般只能适用于三角网格模型,而且生成的骨架包含很多杂枝。Rosenfeld提出了拓补细化的骨架化方法。该算法首先定义那些删除以后不影响拓补性质的点为简单点。然后从这个概念出发,考虑体素点的8-邻域或者26-邻域的拓补关系,设计出一些删除模板,使得模板中的体素点满足简单点的定义。然后利用这些删除模板一层层地剥开形体,直到得到骨架为止。但是这种方法计算量太大,运行时间太长。Ma改进了删除模板,并对删除操作进行并行处理以加快运行速度。但细化的结果经常包含很多杂枝。Borgefors提出了基于距离变换的骨架化方法。距离变换方法的主要根据是其骨架定义立体的骨架是立体内部到立体边界距离最大的点的集合。Zhou提出的体素编码和聚类图方法,可以有效地分解形体,但其骨架的拓扑结构与形体的拓扑结构在分叉处不一致。Wan方法是先对体数据进行距离变换,然后将变换后的距离图看成一个有向中心性加权图,使用以边界距离值的倒数建立极小扩张树的方法来改进Dijkstra最短路径生成算法,从而使得到的骨架点尽量的不偏离中心,但是会出现中心线的"扰动"现象。在虚拟现实中,树木是比较典型的事物,所以重建和表示一个真实的树木就变得相当的重要。而且树木的重建可以用在相当多的领域得到应用,包括植被场景的数字化,新场景的设计,以及数字娱乐中等等。树冠外形的重建对于真实树木的建模是非常有用的,并且在一些科研领域得到关注,譬如虚拟光照对植物生长的模拟,树木生物量的估计等等。目前很多的研究人员已经在曲面重建方面取得了一定的成果,但是树冠外形比一般的固体外形更难重建,因为树木的叶子和树枝间的相互遮挡,以及树木在几何和拓扑方面的高度复杂性。对散乱分布点云数据求取其外在形状在计算几何领域一直是个具有挑战性的工作,在三维空间中,点云数据的凸包外形是唯一的,但是这个凸包外形只提供了较少的数据外形信息。没有关注数据中的大量细节。所以研究人员希望能找到更好的求取外形的方法。Jarvis是第一个将二维平面上的点集凸包形状推广到一般形状的研究人员。Edelsbru皿er首先给出了关于形状的数学上的精确定义。对于三维空间的点集,Boissonnat提出应该用Delaunay三角剖分来"刻出"点集的相互连接的形状。Hoppe的方法是从散乱的点云重建出曲面,他利用一个距离场函数来重建出一个隐式曲面,然后再三角剖分这个隐式曲面。Crust方法可以在二维和三维空间中重建光滑的闭合的流形体,但是它需要用到计算几何中的重要工具Voronoi图,并且需要计算Voronoi图两次,这个计算是相当耗时的,而且这个方法不能处理拐点和角点,并且需要点云的采样密度是很大的。Alphash即e方法首先是Delaunay三角剖分点集,然后需要用户去选择参数的大小,通过这个参数的不同,最后获得的点集外形的具体细节也是不同的,当然这个Delaunay计算量太大,也是相当的耗时的。
发明内容现有的技术不能很好的计算树形物体点云数据的外在形状,因此不能解决树的表示,测量和识别。为了解决现有技术的不足,本发明的目的是求取树的扫描数据的外在形状,提供一种基于树的骨架分类技术的计算树的外在形状的方法。为了实现本发明的目的,本发明提供的一种基于形状分析的树冠外形提取方法,该方法的步骤包括步骤SI:用激光扫描仪扫描植物的单面,获得的扫描数据称为点云数据;步骤S2:从点云数据中找到根节点,用K近邻的方法对整个点云数据进行距离变换,构造这些点云数据中的点到根节点的权图,计算点云数据的每个点到根节点的最小距离,利用这个最小距离从整个点云数据中分离出位于主枝上的点云数据;步骤S3:对位于主枝上的点云数据进行聚类分析,生成树状聚类图,用于寻找形体的分叉位置和末梢位置,在每个聚类中,根据距离再次聚类,得到聚类中的子聚类,对每个子聚类,用算术平均的方法计算每个子聚类的代表点,作为主枝骨架点;步骤S4:将所有子聚类的代表点形成集合,再用所有代表点集合构造具有中心性、分叉性和拓扑连接性的主枝骨架;步骤S5:从主枝骨架上部的叶子节点或称末梢位置开始,对骨架的各个分支进行分类,使分类后的每个分支长度达到一定标准;对主枝骨架进行分类的基础上,对点云数据中的位于树冠的叶子点云数据进行分类;步骤S6:对每个分类后的叶子点云数据分别计算它们的形状,首先对其中的一个分类后的点云进行三维的德朗奈三角剖分,建立点云中每个数据点的拓扑结构,得到三角面片和四面体,对这些四面体和三角面片分别计算它们的外接球和外接圆的半径,得到包含这些半径的最小区间[A,B],取阿尔法形状方法中的参数阿尔法为区间[A,B]的中间点,把求得的四面体和三角面片进行分类,四面体分类为外部的四面体和内部的四面体,而三角面片分类为内部的三角面片、外部的三角面片以及边界的三角面片,若边界的三角面片组成的是个闭合的体,那么将参数阿尔法取成[A,B]下部区间的中点继续这个过程,直到相邻的两个参数之差小于给定的充分小的值,该充分小的值是取扫描数据中两点间最小距离的百分之一,这时候这两个参数中,较大的一个对应的边界三角面片的集合,就是整个树冠的外在形状。其中,所述从点云数据中找到根节点,是按照数据点中Y坐标最小的方法找到根节点。其中,所述构造这些点云数据中的点到根节点的权图,是通过K近邻的方法,找到K个距离数据点最近的点,将这些距离数据点最近的点和数据点连接起来形成权图,而权图中的权就是两点间的距离。其中,所述的计算点云数据的每个点到根节点的最小距离,是在已知权图的基础上,计算从根节点到数据点路径中权和最小的路径,这个权和就是这个数据点到根节点的最小距离。其中,所述的聚类分析是根据主枝点云数据中的每个数据点p到根节点的已知最小距离进行聚类分析,形成大的聚类,每个大的聚类中的点属于一定的距离范围。其中,所述的再次聚类是在得到的每个大的聚类中,应用距离变换再次进行聚类分析,得到子聚类。其中,所述构造分类骨架,是将每个子聚类选出中心点,然后将这些中心点中Y坐标最小的点作为根节点,计算这些中心点中的其它点到这个根节点的最小距离路径,按照顺序连接路径上的点构造出这个主枝骨架。其中,所述的对骨架的各个分支进行分类,首先找到主枝骨架各个末梢代表点,选取Y坐标最大的末梢点作为起始点,沿着主枝骨架根节点到这个起始点的最短路径的反方向进行移动,当到达第一个分叉点的时候计算,计算目前路径的长度,若目前路径的长度大于给定的值l,则目前经过路径上的点归为一类,然后选取下一个未处理过的并且Y坐标是最大的末梢点进行同样的回溯路径,否则计算以第一个分叉点为初始点的所有子枝的长度和;若初始点的所有子枝的长度和大于给定的值l,则以第一个分叉点为初始点的所有子枝上的代表点归为一类,否则从目前分叉点,沿着最小路径继续回溯到下一个分叉点,将上面的所有子枝的长度和加上第一个分叉点与目前分叉点间的距离得到目前路径长度和,若这个目前路径长度和大于给定的值,则目前路径上的所有代表点归为一类,否则计算所有以目前的分叉点为初始点的所有子枝的长度和,若这个所有子枝的长度和大于给定的值1,则将目前路径经过的代表点归为一类,否则就继续上面的过程,沿着最短路径继续回溯直到子枝的长度和大于给定的值1。其中,所述的对点云数据中的位于树冠的叶子点云数据进行分类,在已经将主枝骨架分类的基础上,依据叶子点云数据中的每个数据点到主枝骨架距离最近的原则,将整个的叶子点云数据进行分类,到主枝骨架同一类分支最近的叶子数据点归为一类,否则就分属不同的类。其中,所述外部的四面体和内部的四面体,是四面体有唯一的外接球,这个外接球半径若大于预先给定的参数阿尔法,则是外部的四面体,否则就是内部的四面体。其中,所述内部的三角面片、外部的三角面片以及边界的三角面片,每个三角面有唯一的外接圆,而这个外接圆半径是这个三角面的特征之一,三角面分成两类位于凸包上和位于凸包内部;对于位于凸包上的三角面,若其所在的四面体是外部的四面体,则这个三角面是外部的三角面,否则其为边界的三角面;对于位于凸包内部的三角面,其为两个四面体所共享,这两个相邻四面体若其都是外部的四面体,则这个三角面上就是外部的三角面,若这两个四面体都是内部的四面体,则这个三角面就是内部的三角面,否则这个三角面就是边界的三角面。本发明的有益效果本发明解决的技术问题是求取树木单面扫描数据的形状。本发明的方法是通过对整个树木的扫描数据进行分类,将其划分为树叶点云和枝干点云,针对枝干点云我们提取相应的分级骨架,然后对这个分级骨架首先进行聚类,聚类后的骨架应用距离来对树叶点云进行分类,最后是对每个分类后的树叶点云求取其相应的形状。骨架主用要于形体的识别和跟踪、形体形状的表示和测量。三维树状形体的骨架广泛应用于植物生长建模中的树木形体表示(description)、可视化和树木形状的测量、医学图像中的虚拟内窥漫游和器官形状表示、以及计算机视觉中的目标跟踪等。图1示出本发明算法流程图图2示出本发明采用的单面扫描数据图3a、图3b、图3c示出本发明分离出来的位于枝干上的点云数据图4示出本发明基于聚类方法得到的每个聚类的代表点图5示出本发明得到的枝干的骨架图6示出骨架节点分类流程图7本发明基于枝干的骨架分类树叶点云的结果图8a、图8b和图8c示出本发明将分类后的树叶点云分别求取的形状图9a、图9b和图9c示出本发明基于自动alpha-sh即e方法得到的整个扫描数据的形状图10a、图10b和图10c示出本发明对青桐数据的形状的求取图lla和图10b示出本发明得到的位于边界上的点云数据和相应的外形图12示出自动的阿尔法形状(alpha-shape)方法流程图13a至图13h示出基于枝干骨架分类结果的树冠形状的细节信息。图13a至图13h树冠形状的网格表示;图13-1至图13-8树冠形状的点云表示。具体实施例方式下面将结合附图对本发明加以详细说明,应指出的是,所描述的实施例仅旨在便于对本发明的理解,而对其不起任何限定作用。1方法概述(overviewofapproach)本发明算法的核心在于基于距离变换提取树木扫描数据的枝干骨架、基于枝干骨架对树叶点云进行立体分类、基于分类后的每个树叶点云用alpha-shape方法求取相应的形状。如图1示出本发明本发明算法流程图,具体算法包括6个步骤(1.图1中仅有6个步骤,请做好步骤标记,同时对每幅图进行清楚的描述;2.对每幅流程图中有的文字务必在文中出现,保证文图一致)1、首先,对真实树木的扫描数据(如图2示出采用的单面扫描数据)通过交互式的观察,选取Y坐标最小的点作为根节点,并对扫描数据中除这个根节点外的其它数据点进行距离变换,其中我们应用的是K近邻的方法来完成这个任务,即将每个数据点和距离这个数据点最近的K个点相连接组成相应的边,这样这些边和点就组成了一个权图,每个边的权是相应的两个端点之间的欧式距离。这样这个扫描数据中的任意两点间的距离就是这个权图中连接这两个点的所有路径中的最短路径长度。而由根节点到其它扫描数据点的最短距离是非常有用的,一般点云的数量是巨大的,传统的迪杰斯特拉最短距离方法需要一个足够大的二维矩阵,这是计算机一般承受不了的,所以我们只计算根节点到其他扫描数据点的最短距离,我们称之为R距离。2、其次,由距离变换构造的权图,我们将整个数据中位于主枝上的点进行分离。由步骤一,每个数据点都有相应的R距离,这样我们可以选取适当的阈值A,若R距离小于阈值A,则相应的点我们就定义其在主枝上。如图3a、图3b和图3c示出相对应的阈值取为1.6,1.4和0.5。由结果可以看出其中的图3c比较好的分离出树木的主枝部分。输入的扫描数据是单面的,也就是不完全的,所以我们应用K近邻方法时候,若参数K太小的话,则计算出来的权图是不连接的,即产生若干个连接的子图。若参数K太大,就会产生不正确的拓扑连接信息。譬如将属于不同枝干的点连接起来,实验中我们选取K为100。3、再其次,计算主枝的骨架点。对于得到的位于主干上的数据点,通过局部连接关系把它们转化为一个树状聚类图,提取每个聚类的代表点,从而构造一个兼顾分叉性和拓扑连接性的分类骨架(classificationskeleton),此骨架的价值在于为位于树木扫描数据上部的树叶点云进行分类。目前整个的扫描数据分成了两个部分位于主枝上的点和位于树木冠层的树叶上的点。我们选取图3c中最能代表主干点云的来计算骨架点。由于我们知道主枝上点到根节点的最短距离,所以我们应用聚类的方法将这些主枝上的点进行分类。我们首先计算这些主枝上的点到根节点的最短距离中的最大值rmax和最小值rmin,然后将区间[rmin,rmax]等分成50份,根据每个点到根节点的最小距离,将位于主干上的这些点分成50类。正如我们所见,位于树干上的一个类中的点数据,彼此间的距离很小,但是位于主干上的一个类中的点数据,由于可能分属于不同的主干,彼此间距离可能很大,为获得相对真实的骨架,我们需要将分类后位于一个大类中的点数据,再次进行分类,将其分成不同的子类。即将一个大类中的分属于不同主枝的点区别开。针对每个大类,首先取出一点,标记其属于一个新的子类,遍历这个点的K个近邻,其中属于这个大类的点,我们标记其属于这个子类,然后对新加入这个子类的点同样进行上面的这个过程,这是一个宽度优先的遍历过程。直到新加入点的相应的K个近邻都被处理完毕或者不属于这个大类。然后我们从这个大类的剩余点中取出一个未被处理过的新点,并标记其属于另外一个新的子类,并开始一个新的宽度优先的遍历过程来找到这个大类中属于这个新子类的其它的点数据。直到这个大类中的点全部处理完毕,即它们全部子类所标记完毕。当我们用不同的大类和不同的子类标记了主干的点数据后,为得到最后的骨架,需计算每个子类的代表点,这里我们计算每个子类的中点作为代表点,表示未来的骨架点,当然我们也需对这个骨架点进行提炼,若子类中的点太少,譬如少于5个,那么我们就抛弃这个子类相应的骨架点,认为这个骨架点对整个的骨架不会有太大的影响。如图4所示基于聚类方法得到的每个聚类的代表点。在已知骨架点后,骨架点的数量已经大为减少,我们就可以应用传统的迪杰斯特拉方法来计算这些骨架点到根节点的最小距离,同时也就得到了这些骨架点到根节点的最短的路径,也就得出来这个树干的骨架(如图5示出得到的枝干的骨架)。4、然后,我们就可以应用这个枝干骨架对位于整个数据上部的树叶点云进行分类。即根据树叶点云到骨架枝干的距离将其聚类。在植物学中,不同的枝干属于不同的等级,即使相同等级的枝干可能长度也是不同的,而恰恰是这些不同的枝干影响了树木外在的冠形的形状,因此,我们首先将骨架点进行聚类,然后再聚类树叶点云。上一步我们得到的是骨架的有向图,这里我们先取出骨架的有向图的一个叶子节点pl,要求这个叶子节点的y坐标是所有骨架节点中最大的,然后从这个叶子节点回溯到第一个分叉点p2,如果这两个节点Pl和p2间的R距离大于l,那么我们将这两个节点pl和p2以及它们路径上的节点都归为一类,并停止寻找属于这个类的其它节点,否则的话我们计算以这个分叉点p2为起始点的所有分支路径的长度,如果所有分支路径的长度和不小于l,那么我们将位于这些分支路径上的所有节点归为一类,并且停止寻找属于这个类的其它节点。否则的话若这个长度和小于l,那么我们从目前这个分叉点p2继续回溯去找下一个分叉点p3,并计算以目前这个分叉点p3为起始点的枝干的总长度,直到这个枝干的长度和大于l,我们将枝干上的所有节点归为一类,并标记其为处理过。然后我们取出目前未处理过并且y坐标是最大的一个叶子节点,继续上面的过程,直到所有的叶子节点都处理过;这个算法的流程如图6。我们将骨架节点分类后,计算树叶点云中的每个点到骨架节点的距离,并且以最近距离的骨架节点的类别来标记这个树叶数据点,这样我们就可以将树叶点云中的每个点进行聚类;本发明基于聚类的骨架分类叶子云的结果如图7。5、随后,用自动的阿尔法形状(alpha-shape)方法计算每个聚类后的树叶点云形状。首先我们不用骨架对整个的单面扫描数据P={Pi}进行分类,将整个扫描数据看作一个整体,对其进行德朗奈(Dela皿ay)三角剖分,剖分后,整个数据就获得了一种拓扑信息,获得了四面体T二{Tj}和三角面片F二{Fk}的集合,从外部看,这个四面体的集合组成了这个数据的凸包,数据的凸包是唯一的,但是这个凸包看上去没有更多的细节。所以我们进一步处理它,计算每个四面体的外接球半径R(Tj)和每个四面体的三角面片F二{Fk}的外接圆半径r(Fk),然后对四面体{Tj}进行分类,依据就是其相应的外接球半径,我们先指定参数alpha值,然后所有的四面体可以分成两类若R(Tj)>a,那么Tj就是外部四面体;否则它就是内部四面体。所有的四面体的面{Fk}被分成三类对于位于凸包上的面,若它属于外部四面体,那么它就是外部面;否则,若它属于内部四面体,那么它就是边界面。对于非凸包上的面,若它是两个外部四面体的交集,则它是外部面;若它是两个内部四面体的交集,则它是内部面;否则的话就是边界面。而所有的边界面会组成一个网格,这个网格就是对树冠外形的近似。其中令r^是所有R(Tj)和r(Fk)的最大值,r^是所有R(T》和r(F。的最小值,令A=Armin,B=iirmax,A=0.9,ancU=1.1.我们得到一个区间[A,B],阿尔法(alpha)形状方法中的参数alpha在这个区间取值。显然若阿尔法alpha>B,则网格M就是凸包,若alpha<A,则网格M将不是一个固体。找到合适的参数alpha是一个迭代的过程,我们先初始化alpha为区间[A,B]的中点,在每个迭代步骤,我们都验证所有的边界面是否组成了一个流形面,若是这样,参数值就减少,否则的话参数值就增加,具体的流程见图12。结果为图10a、图10b和图10c、图11a和图llb,图10a是桐树的原始数据。图10b图是自动的阿尔法形状方法的结果,图10c图是局部的特写。图lla是枫树的位于边界上的点,图lib图是计算的结果。这两个数据的实验细节如下表1所示。表1实验数据<table>tableseeoriginaldocumentpage10</column></row><table>我们另外的方法是用树木的骨架对树叶点云进行分类,如图7所示,然后针对每个分类后的集合应用上面的方法,计算其相应的外形。结果如图8a、图8b和图8c所示是同一实验结果的不同角度展示。图9a、图9b和图9c是单用自动的阿尔法形状(ahpha-sh即e)方法计算的结果对比。图13是树冠外形的细节图。本发明的方法的特色和创新在于根据树木的特点,先选取根节点,利用距离变换方法求得其它点到根节点的最短距离,然后应用这个最短距离将整个的点云数据分两类,主干数据和树叶数据。利用到根节点的最短距离求对主干数据进行聚类分析,先分出大类,对每个大类中的数据,再次聚类,分出子类,这个子类代表属于不同的分枝。求出每个子类的代表点,并形成骨架,用这个估计分类树叶点云数据,然后对分类后的每个点云数据求出其相应的形状,得到整个树的外在形状。在很多树木的建模中,这个树冠的外在形状可以有效的提供信息,表达树木的结构和几何特征,辅助建模的准确性,并且树冠的外在形状对于研究树木的资源,测量树木的几何尺度,为树木建模软件提供更多的数据。以上所述,仅为本发明中的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可理解想到的变换或替换,都应涵盖在本发明的包含范围之内,因此,本发明的保护范围应该以权利要求书的保护范围为准。权利要求一种基于形状分析的树冠外形提取方法,其特征在于,该方法的步骤包括步骤S1用激光扫描仪扫描植物的单面,获得的扫描数据称为点云数据;步骤S2从点云数据中找到根节点,用K近邻的方法对整个点云数据进行距离变换,构造这些点云数据中的点到根节点的权图,计算点云数据的每个点到根节点的最小距离,利用这个最小距离从整个点云数据中分离出位于主枝上的点云数据;步骤S3对位于主枝上的点云数据进行聚类分析,生成树状聚类图,用于寻找形体的分叉位置和末梢位置,在每个聚类中,根据距离再次聚类,得到聚类中的子聚类,对每个子聚类,用算术平均的方法计算每个子聚类的代表点,作为主枝骨架点;步骤S4将所有子聚类的代表点形成集合,再用所有代表点集合构造具有中心性、分叉性和拓扑连接性的主枝骨架;步骤S5从主枝骨架上部的叶子节点或称末梢位置开始,对骨架的各个分支进行分类,使分类后的每个分支长度达到一定标准;对主枝骨架进行分类的基础上,对点云数据中的位于树冠的叶子点云数据进行分类;步骤S6对每个分类后的叶子点云数据分别计算它们的形状,首先对其中的一个分类后的点云进行三维的德朗奈三角剖分,建立点云中每个数据点的拓扑结构,得到三角面片和四面体,对这些四面体和三角面片分别计算它们的外接球和外接圆的半径,得到包含这些半径的最小区间[A,B],取阿尔法形状方法中的参数阿尔法为区间[A,B]的中间点,把求得的四面体和三角面片进行分类,四面体分类为外部的四面体和内部的四面体,而三角面片分类为内部的三角面片、外部的三角面片以及边界的三角面片,若边界的三角面片组成的是个闭合的体,那么将参数阿尔法取成[A,B]下部区间的中点继续这个过程,直到相邻的两个参数之差小于给定的充分小的值,该充分小的值是取扫描数据中两点间最小距离的百分之一,这时候这两个参数中,较大的一个对应的边界三角面片的集合,就是整个树冠的外在形状。2.如权利要求1所述树冠外形提取方法,其特征在于,所述从点云数据中找到根节点,是按照数据点中Y坐标最小的方法找到根节点。3.如权利要求1所述树冠外形提取方法,其特征在于,所述构造这些点云数据中的点到根节点的权图,是通过K近邻的方法,找到K个距离数据点最近的点,将这些距离数据点最近的点和数据点连接起来形成权图,而权图中的权就是两点间的距离。4.如权利要求1所述树冠外形提取方法,其特征在于,所述的计算点云数据的每个点到根节点的最小距离,是在已知权图的基础上,计算从根节点到数据点路径中权和最小的路径,这个权和就是这个数据点到根节点的最小距离。5.如权利要求1所述树冠外形提取方法,其特征在于,所述的聚类分析是根据主枝点云数据中的每个数据点P到根节点的已知最小距离进行聚类分析,形成大的聚类,每个大的聚类中的点属于一定的距离范围。6.如权利要求1所述树冠外形提取方法,其特征在于,所述的再次聚类是在得到的每个大的聚类中,应用距离变换再次进行聚类分析,得到子聚类。7.如权利要求1所述树冠外形提取方法,其特征在于,所述构造分类骨架,是将每个子聚类选出中心点,然后将这些中心点中Y坐标最小的点作为根节点,计算这些中心点中的其它点到这个根节点的最小距离路径,按照顺序连接路径上的点构造出这个主枝骨架。8.如权利要求1所述树冠外形提取方法,其特征在于,所述的对骨架的各个分支进行分类,首先找到主枝骨架各个末梢代表点,选取Y坐标最大的末梢点作为起始点,沿着主枝骨架根节点到这个起始点的最短路径的反方向进行移动,当到达第一个分叉点的时候计算,计算目前路径的长度,若目前路径的长度大于给定的值1,则目前经过路径上的点归为一类,然后选取下一个未处理过的并且Y坐标是最大的末梢点进行同样的回溯路径,否则计算以第一个分叉点为初始点的所有子枝的长度和;若初始点的所有子枝的长度和大于给定的值l,则以第一个分叉点为初始点的所有子枝上的代表点归为一类,否则从目前分叉点,沿着最小路径继续回溯到下一个分叉点,将上面的所有子枝的长度和加上第一个分叉点与目前分叉点间的距离得到目前路径长度和,若这个目前路径长度和大于给定的值,则目前路径上的所有代表点归为一类,否则计算所有以目前的分叉点为初始点的所有子枝的长度和,若这个所有子枝的长度和大于给定的值1,则将目前路径经过的代表点归为一类,否则就继续上面的过程,沿着最短路径继续回溯直到子枝的长度和大于给定的值l。9.如权利要求1所述树冠外形提取方法,其特征在于,所述的对点云数据中的位于树冠的叶子点云数据进行分类,在已经将主枝骨架分类的基础上,依据叶子点云数据中的每个数据点到主枝骨架距离最近的原则,将整个的叶子点云数据进行分类,到主枝骨架同一类分支最近的叶子数据点归为一类,否则就分属不同的类。10.如权利要求1所述树冠外形提取方法,其特征在于,所述外部的四面体和内部的四面体,是四面体有唯一的外接球,这个外接球半径若大于预先给定的参数阿尔法,则是外部的四面体,否则就是内部的四面体。11.如权利要求1所述树冠外形提取方法,其特征在于,所述内部的三角面片、外部的三角面片以及边界的三角面片,每个三角面有唯一的外接圆,而这个外接圆半径是这个三角面的特征之一,三角面分成两类位于凸包上和位于凸包内部;对于位于凸包上的三角面,若其所在的四面体是外部的四面体,则这个三角面是外部的三角面,否则其为边界的三角面;对于位于凸包内部的三角面,其为两个四面体所共享,这两个相邻四面体若其都是外部的四面体,则这个三角面上就是外部的三角面,若这两个四面体都是内部的四面体,则这个三角面就是内部的三角面,否则这个三角面就是边界的三角面。全文摘要本发明公开一种基于形状分析的树冠外形提取方法。本发明处理的数据是用激光扫描仪对整个植物单面扫描,获得植物的单面扫描点云数据,首先在这个点云数据中找到根节点,然后应用最短距离的方法将点云数据分成树枝点云和树叶点云。从树枝点云提取相应的骨架,依据树的分支特点将骨架分成若干个部分,然后用分类后的树枝骨架将树叶点云分类。对每个分类后的树叶点云进行德朗奈三角剖分,获得的是四面体和三角面片,将三角面片分成外部,内部和边界等三类,其中位于边界的三角面片就组成了闭合体,用这个闭合体来表示这个分类树叶点云的形状。而每个分类树叶点云的形状合集就表示了整个树冠的外形。文档编号G06T7/00GK101783016SQ200910242750公开日2010年7月21日申请日期2009年12月16日优先权日2009年12月16日发明者张晓鹏,朱超,李红军申请人:中国科学院自动化研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1