首页 / 专利库 / 电脑零配件 / 计算机系统 / 硬件 / 外围设备 / 扫描仪 / 一种基于地面激光雷达三维扫描的树木枝干参数提取方法

一种基于地面激光雷达三维扫描的树木枝干参数提取方法

阅读:47发布:2024-02-19

专利汇可以提供一种基于地面激光雷达三维扫描的树木枝干参数提取方法专利检索,专利查询,专利分析的服务。并且一种基于地面 激光雷达 三维扫描 的树木枝干参数提取方法,属于地面激光雷达三维扫描点 云 数据处理 和树木形态 可视化 模型模拟两个技术领域。利用地面三维激光 扫描仪 为数据获取平台,扫描得到树木枝干点云数据,将树木枝干点云数据分割成不同的部分,沿树高方向分层;利用凸包 算法 提取树木不同高度的点云等值线,在相邻等值线间使用三 角 网生长算法构建树木枝干三角网;合并树木不同部分的三角网格,构建出树木枝干的整体三角网模型;使用射线 碰撞检测 技术提取树木枝干参数,与实际测量值对比误差在5%以内,满足林业测树要求,大大提高测树效率。,下面是一种基于地面激光雷达三维扫描的树木枝干参数提取方法专利的具体信息内容。

1.一种基于地面激光雷达三维扫描的树木枝干参数提取方法,利用地面三维激光扫描仪为数据获取平台,扫描得到树木枝干点数据,将树木枝干点云数据分割成不同的部分,沿树高方向分层;利用凸包算法提取树木不同高度的点云等值线,在相邻等值线间使用三网生长算法构建树木枝干三角网;合并树木不同部分的三角网格,构建出树木枝干的整体三角网模型;使用射线碰撞检测技术提取树木枝干参数,与实际测量值对比误差在5%以内;
含有以下步骤,
步骤1、点云数据获取步骤,
使用地面三维激光扫描仪对树木进行扫描的步骤如下:
(1)测站设计步骤,
根据样木的位置、大小形态和主要测树因子,设计各扫描站和控制点的位置;要求每站之间至少有三个控制点重合,使点云数据能够统一到仪器坐标系统下;
(2)全局扫描步骤,
选定的测站上架设扫描仪进行扫描,为提高扫描速度,全局扫描可采用低精度扫描;
扫描仪根据软件环境中设置的参数自动进行扫描;
(3)局部扫描步骤,
每测站完成全局扫描后,均需要对包括所有控制点的单株树木区域进行精细扫描;扫描前,应根据需要的点的数量设置合适的扫描精度;
通过以上3步就完成了一个测站上的样木数据采集,得到了一幅点云图;需要从不同的侧面采集2~3个测站的数据用来构建整个树木三维模型;
步骤2、点云数据分割步骤,
扫描完成后,对每株样木所有站点的点云数据进行配准,手动删除样木周围物体的扫描点,分离出样木的点云数据,并去除噪声;通过坐标变换将点云数据的坐标原点设置为树木的根部,且树木的主干大致平行于Y轴,然后依据树木的分枝特征,将树木不同部位的点云数据分别导出,编号后合并,树木枝干的分割分为第一枝干、第二枝干、第三枝干、第四枝干、第五枝干、第六枝干;
步骤3、点云数据的等值线提取步骤,
3.1提取等值线折线步骤,
采用凸包算法提取每层点云数据的等值线折线;每层数据中,假设同一编号枝干的点集:P={P0,…,Pn-1},n为点的数量,其凸包是一个最小的凸多边形Q,并且满足P中的所有点或者在Q上,或者在Q的内部;使用不同编号枝干上的点云构建不同的凸包,凸包的数量等于点云层中枝条的数量,凸包算法的过程如下:
计算点集最左边的点为凸包的顶点的起点P0;
遍历P中其他所有点,计算有向向量P0Pi;
如果P中的其他点全部在向量P0Pi的同一侧,则Pi为凸包的下一个顶点;
此过程执行后,按照任意两点的顺序把点按极角自动顺时针或逆时针排序;而左侧或右侧的判断则可以用矢量点积性质来实现;
3.2内部离散点的归类步骤,
QiQi+1是当前折线上连接凸包中相邻两点的一条线段,Pj为凸包内部尚未加入到折线上的一个离散点;对于点Pj,应该归类于其最近的折线线段,并且该点在线段的投影Pj0应该在线段上;连接QiPj和Qi+1Pj两条线段,组成三角形QiQi+1Pj;
可以用角度判别法进行判断投影点Pj0是否在线段QiQi+1上;计算出三角形QiQi+1Pj的两个内角α和β,依据平面几何的知识,可以得到以下的判别条件:
假如α和β中有一个角度大于90°,那么投影点Pj0在线段QiQi+1外;
假如α和β中有一个角度等于90°,那么投影点Pj0位于Qi或Qi+1点上;
假如α和β全部小于90°,那么投影点Pj0在QiQi+1内部;
对每个尚未归类的点Pj,计算该点到当前等值线各线段的投影点,利用上述方法判断投影点是否在其对应的线段上,然后利用该点到各线段的距离,对Pj归类;每个待定点只能归类于α和β均小于90°并且距离最近的线段;
采用上述方法对当前的等值线和待定点进行归类后,对于凸包折线的每条线段,重新计算其和归类到该线段的待定点的凸包,由此得到局部区域的凸包;然后将所有的局部凸包在原凸包折线的线段处断开,得到不闭合的折线段;按顺序将前后折线段进行连接,即得到下一级折线;
运用此迭代的凸包算法方法可以保证每次迭代完成后的相邻层之间的等值线不会产生边缘交叉的问题;第一次调用凸包算法得到的是一个凸多边形,对此凸多边形继续使用凸包算法得到的局部区域也是凸多边形,但是合并一系列的局部凸多边形之后得到的等值线却是凹多边形;对凹多边形在次进行剩余点的归类和调用凸包算法,得到的仍旧是凹多边形;除第一次调用凸包算法的到的是凸多边形,以后每次迭代后的合并结果都是凹多边形;调用凸包算法完成后,剩下的每个待定点和当前折线的拓扑关系是一致的,在折线的内部或者外部;奇数次迭代之后的待定点都在折线的外部;偶数次迭代之后的待定点都在折线的内部;
步骤4、构建树木枝干三角网步骤,
4.1Delaunay三角网生长算法步骤,
采用扩张的生长算法,构建Delaunay三角网;首先找出点集中最近两点连成一条边,按照Delaunay构网原则找出第三点连接成初始三角形,再以该三角形的每一条边为基线扩展连接相邻离散点,直到所有离散点都包括在三角网中;根据提取的相邻等值线的特点,设计算法步骤如下:
(1)按照等值线中点的连接顺序,排列等值线中的所有点;
(2)连接第一条等值线中的前两个点P0P1作为初始基线;
(3)找出距离初始基线中点最近且不和初始基线在同一条直线上的点Px作为初始三角形的第三个顶点,连接成初始三角形P0P1Px;
(4)以初始三角形中的一条新边P1Px为新的初始基线,由直角三角形的性质可以得出,在P1Px的右侧距离P1Px的中点Pm最近的点只能是P3或Px+1,比较P3Pm和Px+1Pm的大小,取距离较小的点为下一点;
(5)重复第4步,直到两条等值线上的点全部包括在三角网中;
对于树木同一枝干中的相邻等值线,迭代调用以上算法,构建出其Delaunay三角网;
4.2模型文件输出步骤,
使用.X文件存储树木枝干Delaunay三角网模型,不仅可以存储模型的基本数据顶点坐标、颜色、法向量、纹理信息,而且X文件自身具有很大的灵活性;对于树木不同部分的枝干,可以在.X文件中使用框架(Frame)对其进行组织和管理;框架仅仅是一个外壳,在框架中通常需要包含具体的网格和一个框架变化矩阵;其中框架变换矩阵用于指定该框架包含的部分在整个模型中的初始位置;
通过XNA素材管线可以很方便的加载.X文件网格模型,进而在图形程序中使用;另外,利用射线碰撞拾取技术可以拾取到模型中任意位置的三角形,有利于树木形态结构参数的提取;
步骤5、树木枝干参数提取步骤,
通过三维场景中的射线碰撞检测技术可以有效提取树木枝干参数,其原理是获取屏幕坐标并转化成图形系统的视口坐标,加上不同的深度,计算拾取射线,并将射线和模型变换到同一坐标系中,判断射线是否和模型碰撞;如果碰撞,计算出射线和模型中三角形的交点;
5.1定义观察射线步骤,
在三维矢量空间中,观察射线用以表示方向,由两个矢量定义:一个表示起点,另一个表示方向,射线的方程可以写成:
P(t)=P0+ut  (1)
式中,P0是射线的起点位置,u是用来描述射线方向的向量,可以用两个点的矢量差来表示;
使用取景、投影变换将三维空间内的Vector3类型顶点坐标进行坐标变换后,结果还是一个Vector3类型数据,其中X、Y成员存储顶点在屏幕上的位置;另外,用Z成员存储了顶点的深度值,该深度值在[0,1]内,0表示顶点在近裁剪面,1表示顶点在远裁剪面,这些数据存储在深度缓冲区中;
因此,在屏幕坐标系下,观察射线两个顶点的三维坐标值可以表示为:P0(x1,x2,0)和P1(x1,x2,1),那么,观察射线的方向u=P0-P1;
5.2屏幕坐标的转换步骤,
碰撞检测首先要将观察射线从当前的屏幕坐标系转换到世界坐标系;通过视口转换矩阵将世界坐标系中的三维坐标点转换成屏幕坐标点,视口转换矩阵如下:
假设投影窗口上的点P′=(Px′,Py′,Pz′),通过视口变换产生屏幕上的点S=(Sx,Sy),即:
当视口的起点为(0,0)时,得到: 通过以上变换将P0、
P1转换到世界坐标系下,进而得到世界坐标系下的观察射线;
5.3树木参数计算步骤,
获取观察射线后,即可遍历树木模型中的所有枝干,找出与射线相交的枝干,然后遍历此枝干中的三角形,计算观察射线与三角形所在平面的交点,最后判断该交点是否在三角形区域内,从而获取所有拾取到的三角形以及准确的交点,得到树木的各种参数;
步骤6、实例验证及分析步骤,
选取一株3年生落叶后的褂木,使用FARO Laser Scanner Photon120三维激光扫描仪按照以上数据获取方法对树木进行扫描;扫描完成后,使用扫描软件配准样木所有站点的点云数据,删除样木周围物体的扫描点,分离出样木的点云数据,并去除噪声;
导出点云数据时,通过坐标变换将点云数据的坐标原点设置为树木的根部,且树木的主干大致平行于Y轴,然后依据树木的分枝特征,将树木不同部位的点云数据分别导出,编号后合并;使用集成开发工具Visual Studio.Net,运用C#语言结合多媒体编程接口DirectX,编程实现树木枝干Delaunay三角网模型的提取,使用射线碰撞检测技术提取树木枝干参数;
6.1等值线模型构建步骤,
样木树高为2.26m,取dz=10mm对点云分层,运用以上等值线提取方法,提取每层点云数据中不同枝干的等值线,取dz=100mm,提取树木冠型等值线模型;
在没有先验等值线知识和建立点云对象模型的条件下,利用迭代的凸包算法可以有效的对离散点数据进行连接,形成点云的等值线模型;模型中相邻层两条等值线之间不会产生边缘交叉的问题;
6.2Delaunay三角网模型步骤,
以提取的等值线模型为基础,在模型中相邻两条等值线间采用三角网生长算法提取相邻等值线间的Delaunay三角网。

说明书全文

一种基于地面激光雷达三维扫描的树木枝干参数提取方法

技术领域

[0001] 本发明涉及一种基于地面激光雷达三维扫描的树木枝干参数提取方法,属于地面激光雷达三维扫描点数据处理和树木形态可视化模型模拟两个技术领域。

背景技术

[0002] 树木枝干参数获取为树木可视化模拟提供不可缺少的数据基础,利用传统手段测量树木枝干参数需要大量的野外调查数据的支持,对于大样本的树木形态学指标的调查,以及野外调查环境复杂艰苦的特点,需要一种在操作上简单快捷、在效果上实用可靠的技术来快速获取每株树木的形态模型参数。地面三维激光扫描作为一种新型的可以自动、连续、快速地获取目标物的三维点云数据的测绘技术,为树木三维可视化模拟提供了新的手段。由于树木枝干形状结构的多样性和复杂性,构建现实中真实树木的三维模型是一个极具挑战性的工作。树木的不规则三网模型是单木模型中最基本和最重要的一种模型,它能以不同层次的分辨率来展现树木信息,即由于模型中三角形的数量随点集密度的变化而变化,当点集密度大时生成的三角形小而密,密度小时生成的三角形大而疏。当点云数量过多时,构建的树木三角网格模型数据太大;而当点云数量过少时,构建的模型在细节上又不能令人满意。

发明内容

[0003] 为了克服现有技术的不足,本发明提供一种基于地面激光雷达三维扫描的树木枝干参数提取方法。
[0004] 一种基于地面激光雷达三维扫描的树木枝干参数提取方法,含有以下步骤,利用地面三维激光扫描仪为数据获取平台,扫描得到树木枝干点云数据,将树木枝干点云数据分割成不同的部分,沿树高方向分层;利用凸包算法提取树木不同高度的点云等值线,在相邻等值线间使用三角网生长算法构建树木枝干三角网;合并树木不同部分的三角网格,构建出树木枝干的整体三角网模型;使用射线碰撞检测技术提取树木枝干参数,与实际测量值对比误差在5%以内。
[0005] 一种基于地面激光雷达三维扫描的树木枝干参数提取方法,根据树木的分枝特征将点云数据分割成不同的部分,并分析了点云的空间分布情况,然后将点云数据按照Y坐标分层,对于树木各部分不同层次的点云利用迭代的凸包算法分别提取等值线。
[0006] 本发明的优点是针对由激光扫描得到的点云数据多、无拓扑信息、低采样间隔、高采样细节的特点,在未构建树木三维模型的前提下,直接提取树木枝干的等值线模型。然后在相邻等值线间,利用三角网生长算法构建Delaunay三角网,最后合并相邻等值线间的三角网,构建出整个树木枝干的Delaunay三角网模型,使用射线碰撞检测技术提取树木参数,满足林业测量的需求,实现树木参数的精准快速获取。通过实例验证,运用此方法提取的树木枝干等值线模型符合一般等值线模型的特点,相邻两条等值线间不会产生边缘交叉的问题;构建的树木枝干Delaunay三角网模型比使用普通软件建立的模型数据量大幅减小,而且模型效果更好;通过射线碰撞检测技术可以准确、快速、有效地提取树木枝干模型中的各种参数,提高树干参数提取效率,实现树干参数的自动或半自动提取。附图说明
[0007] 当结合附图考虑时,通过参照下面的详细描述,能够更完整更好地 理解本发明以及容易得知其中许多伴随的优点,但此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定,如图其中:
[0008] 图1为本发明的流程图
[0009] 图2为本发明的树木枝干的分割示意图。
[0010] 图3为本发明的凸包算法示意图。
[0011] 图4为本发明的离散点的归类示意图。
[0012] 图5为本发明的迭代的凸包算法示意图。
[0013] 图6为本发明的迭代的凸包算法示意图。
[0014] 图7为本发明的迭代的凸包算法示意图。
[0015] 图8为本发明的三角网生长算法示意图。
[0016] 图9为本发明的Delaunay三角网结构示意图。
[0017] 图10为本发明的取景截头体结构示意图。
[0018] 图11为本发明的等值线模型实例a结构示意图。
[0019] 图12为本发明的结构等值线模型实例b示意图。
[0020] 图13为本发明的结构树木枝干Delaunay三角网模型示意图。
[0021] 图14为本发明的Delaunay三角网模型结构示意图。
[0022] 图15为本发明的Delaunay三角网模型结构示意图。
[0023] 图16为本发明的Delaunay三角网模型结构示意图。
[0024] 图17为本发明的一级枝仰角散点示意图。
[0025] 图18为本发明的直径散点示意图。
[0026] 下面结合附图和实施例对本发明进一步说明。

具体实施方式

[0027] 显然,本领域技术人员基于本发明的宗旨所做的许多修改和变化属于本发明的保护范围。
[0028] 实施例1:发明流程如图1所示,
[0029] 1.点云数据获取
[0030] 使用维激光扫描仪对树木进行扫描的步骤如下:
[0031] (1)测站设计步骤,
[0032] 根据样木的位置、大小形态和主要测树因子,设计各扫描站和控制点的位置;要求每站之间至少有三个控制点重合,使点云数据能够统一到仪器坐标系统下;
[0033] (2)全局扫描步骤,
[0034] 在选定的测站上架设扫描仪进行扫描,为提高扫描速度,全局扫描可采用低精度扫描;扫描仪根据软件环境中设置的参数(行、列数和扫描的分辨率等)自动进行扫描;
[0035] (3)局部扫描步骤,
[0036] 每测站完成全局扫描后,均需要对包括所有控制点的单株树木区域进行精细扫描;扫描前,应根据需要的点的数量设置合适的扫描精度;
[0037] 通过以上3步就完成了一个测站上的样木数据采集,得到了一幅点云图;需要从不同的侧面采集2~3个测站的数据用来构建整个树木三维模型;
[0038] 步骤2、点云数据分割步骤,
[0039] 扫描完成后,对每株样木所有站点的点云数据进行配准,手动删除样木周围物体的扫描点,分离出样木的点云数据,并去除噪声;通过坐标变换将点云数据的坐标原点设置为树木的根部,且树木的主干大致平行于Y轴,然后依据树木的分枝特征,将树木不同部位的点云数据分别导出,编号后合并,树木枝干的分割分为第一枝干、第二枝干、第三枝干、第四枝干、第五枝干、第六枝干等等;
[0040] 3.点云数据的等值线提取
[0041] 3.1提取等值线折线
[0042] 采用凸包算法提取每层点云数据的等值线折线。每层数据中,假设同一编号枝干的点集:P={P0,…,Pn-1},n为点的数量,其凸包是一个最小的凸多边形Q,并且满足P中的所有点或者在Q上,或者在Q的内部。使用不同编号枝干上的点云构建不同的凸包,凸包的数量等于点云层中枝条的数量,凸包算法的过程如下:
[0043] 计算点集最左边的点为凸包的顶点的起点,如图中的P0。
[0044] 遍历P中其他所有点,计算有向向量P0Pi;
[0045] 如果P中的其他点全部在向量P0Pi的同一侧,则Pi为凸包的下一个顶点,如图1。
[0046] 此过程执行后,按照任意两点的顺序把点按极角自动顺时针或逆时针排序。而左侧或右侧的判断则可以用矢量点积性质来实现。
[0047] 3.2内部离散点的归类
[0048] 如图3所示,QiQi+1是当前折线上连接凸包中相邻两点的一条线段,Pj为凸包内部尚未加入到折线上的一个离散点。对于点Pj,应该归类于其最近的折线线段,并且该点在线段的投影Pj0应该在线段上。连接QiPj和Qi+1Pj两条线段,组成三角形QiQi+1Pj。
[0049] 可以用角度判别法进行判断投影点Pj0是否在线段QiQi+1上。计算出三角形QiQi+1Pj的两个内角α和β,依据平面几何的知识,可以得到以下的判别条件:
[0050] 假如α和β中有一个角度大于90°,那么投影点Pj0在线段QiQi+1外。
[0051] 假如α和β中有一个角度等于90°,那么投影点Pj0位于Qi或Qi+1点上。
[0052] 假如α和β全部小于90°,那么投影点Pj0在QiQi+1内部。
[0053] 对每个尚未归类的点Pj,计算该点到当前等值线各线段的投影点, 利用上述方法判断投影点是否在其对应的线段上,然后利用该点到各线段的距离,对Pj归类。每个待定点只能归类于α和β均小于90°并且距离最近的线段。
[0054] 采用上述方法对当前的等值线和待定点进行归类后,对于凸包折线的每条线段,重新计算其和归类到该线段的待定点的凸包,由此得到局部区域的凸包。然后将所有的局部凸包在原凸包折线的线段处断开,得到不闭合的折线段。按顺序将前后折线段进行连接,即得到下一级折线,该过程如图4所示。
[0055] 运用此迭代的凸包算法方法可以保证每次迭代完成后的相邻层之间的等值线不会产生边缘交叉的问题。第一次调用凸包算法得到的是一个凸多边形,对此凸多边形继续使用凸包算法得到的局部区域也是凸多边形,但是合并一系列的局部凸多边形之后得到的等值线却是凹多边形。对凹多边形在次进行剩余点的归类和调用凸包算法,得到的仍旧是凹多边形。除第一次调用凸包算法的到的是凸多边形,以后每次迭代后的合并结果都是凹多边形。调用凸包算法完成后,剩下的每个待定点和当前折线的拓扑关系是一致的,在折线的内部或者外部。奇数次迭代之后的待定点都在折线的外部;偶数次迭代之后的待定点都在折线的内部。
[0056] 4.构建树木枝干三角网
[0057] 4.1Delaunay三角网生长算法
[0058] 采用扩张的生长算法,构建Delaunay三角网。首先找出点集中最近两点连成一条边,按照Delaunay构网原则找出第三点连接成初始三角形,再以该三角形的每一条边为基线扩展连接相邻离散点,直到所有离散点都包括在三角网中。根据提取的相邻等值线的特点,设计算法步骤如下:
[0059] (1)按照等值线中点的连接顺序,排列等值线中的所有点;
[0060] (2)连接第一条等值线中的前两个点P0P1作为初始基线;
[0061] (3)找出距离初始基线中点最近且不和初始基线在同一条直线上的点Px作为初始三角
[0062] 形的第三个顶点,连接成初始三角形P0P1Px;
[0063] (4)以初始三角形中的一条新边P1Px为新的初始基线,由直角三角形的性质可以得出,
[0064] 在P1Px的右侧距离P1Px的中点Pm最近的点只能是P3或Px+1,比较P3Pm和Px+1Pm的大小,取距离较小的点为下一点。
[0065] (5)重复第4步,直到两条等值线上的点全部包括在三角网中。
[0066] 对于树木同一枝干中的相邻等值线,迭代调用以上算法,构建出其Delaunay三角网。图9为部分树木枝干的Delaunay三角网。
[0067] 4.2模型文件输出
[0068] 使用.X文件存储树木枝干Delaunay三角网模型,不仅可以存储模型的基本数据,例如顶点坐标、颜色、法向量、纹理信息等,而且.x文件自身具有很大的灵活性。对于树木不同部分的枝干,可以在.X文件中使用框架(Frame)对其进行组织和管理。框架仅仅是一个外壳,在框架中通常需要包含具体的网格和一个框架变化矩阵。其中框架变换矩阵用于指定该框架包含的部分在整个模型中的初始位置。
[0069] 通过XNA素材管线可以很方便的加载.x文件网格模型,进而在图形程序中使用。另外,利用射线碰撞拾取技术可以拾取到模型中任意位置的三角形,有利于树木形态结构参数的提取。
[0070] 5.树木枝干参数提取
[0071] 通过三维场景中的射线碰撞检测技术可以有效提取树木枝干参数,其原理是获取屏幕坐标并转化成图形系统的视口坐标,给该点加上不同的深度,计算拾取射线,并将射线和模型变换到同一坐标系中,判断射线是否和模型碰撞。如果碰撞,计算出射线和模型中三角形的交点。
[0072] 5.1定义观察射线
[0073] 在三维矢量空间中,观察射线用以表示方向,由两个矢量定义:一个表示起点,另一个表示方向,射线的方程可以写成:
[0074] P(t)=P0+ut      (1)
[0075] 式中,P0是射线的起点位置,u是用来描述射线方向的向量,可以用两个点的矢量差来表示。
[0076] 使用取景、投影变换将三维空间内的Vector3类型顶点坐标进行坐标变换后,结果还是一个Vector3类型数据,其中X、Y成员存储顶点在屏幕上的位置;另外,用Z成员存储了顶点的深度值,该深度值在[0,1]内,0表示顶点在近裁剪面,1表示顶点在远裁剪面,这些数据存储在深度缓冲区中。
[0077] 因此,在屏幕坐标系下,观察射线两个顶点的三维坐标值可以表示为为:P(0 x1,x2,0)和P(1 x1,x2,1),那么,观察射线的方向u=P0-P1。
[0078] 图10取景截头体;
[0079] 5.2屏幕坐标的转换
[0080] 碰撞检测首先要将观察射线从当前的屏幕坐标系转换到世界坐标
[0081] 系。通过视口转换矩阵将世界坐标系中的三维坐标点转换成屏幕坐标点,视口转换矩阵如下:
[0082]
[0083] 假设投影窗口上的点P′=(Px′,Py′,Pz′),通过视口变换产生屏幕上的点S=(Sx,Sy),即:
[0084]        (3)
[0085]
[0086] 当视口的起点为(0,0)时,得到:Px′=2Sx/W-1,Py′=-2Sy/H+1。通过以上变换将P0、P1转换到世界坐标系下,进而得到世界坐标系下的观察射线。
[0087] 5.3树木参数计算
[0088] 获取观察射线后,即可遍历树木模型中的所有枝干,找出与射线相交的枝干,然后遍历此枝干中的三角形,计算观察射线与三角形所在平面的交点,最后判断该交点是否在三角形区域内,从而获取所有拾取到的三角形以及准确的交点,得到树木的各种参数。
[0089] 6实例验证及分析
[0090] 选取一株3年生落叶后的褂木,使用FARO Laser Scanner Photon120三维激光扫描仪按照以上数据获取方法对树木进行扫描。扫描完成后,使用扫描软件配准样木所有站点的点云数据,删除样木周围物体的扫描点,分离出样木的点云数据,并去除噪声。
[0091] 导出点云数据时,通过坐标变换将点云数据的坐标原点设置为树木的根部,且树木的主干大致平行于Y轴,然后依据树木的分枝特征,将树木不同部位的点云数据分别导出,编号后合并。使用集成开发工具Visual Studio.Net,运用C#语言结合多媒体编程接口DirectX,编程实现树木枝干Delaunay三角网模型的提取,使用射线碰撞检测技术提取树木枝干参数。
[0092] 6.1等值线模型构建
[0093] 样木树高为2.26m,取dz=10mm对点云分层,运用以上等值线提取方法,提取每层点云数据中不同枝干的等值线,取dz=100mm,提取树木冠型等值线模型。
[0094] 由图11、图12可以看出,在没有先验等值线知识和建立点云对象模型的条件下,利用迭代的凸包算法可以有效的对离散点数据进行连接, 形成点云的等值线模型。模型中相邻层两条等值线之间不会产生边缘交叉的问题。
[0095] 6.2Delaunay三角网模型
[0096] 以提取的等值线模型为基础,在模型中相邻两条等值线间采用三角网生长算法提取相邻等值线间的Delaunay三角网。
[0097] 图13中,图13为样木整体Delaunay三角网模型,图14为使用普通软件构建的样木三角网模型,图15为运用此种方法建立的Delaunay三角网模型中的某一枝条,图16为使用普通软件构建的三角网模型中的同一枝条。由此可以看出,运用此方法建立的模型细节效果比使用普通软件建立的模型更好。
[0098] 表1模型对比
[0099]
[0100] 由表1可以看出,运用此方法可以大幅缩减点云中点的数量,从而提高了算法的整体执行效率,而且得到的模型文件更小,使存储和调用更加方便。
[0101] 6.3参数验证
[0102] 使用射线碰撞检测技术,提取树木模型中的树高、胸径、最大冠幅等参数,并且提取所有一级枝仰角,与实际测量比较,结果如表2和表3所示:
[0103] 表2提取参数对比
[0104]
[0105] 表3一级枝仰角对比
[0106]
[0107] 图17一级枝仰角散点图;
[0108] 表2中,以实际测量的数据为真实值,计算各参数的误差在5%以内。以表3中扫描数据位自变量x,实际测量的数据为因变量y,做出样木一级枝仰角的散点图,并进行线性回归拟合,得到回归方程,R2达到0.9695,置信度为95%,说明扫描数据和实测数据紧密相关。利用扫描数据,通过回归方程计算仰角的理论值,根据公式(理论值-实测值)/实测值,得到误差为4.7%,误差数值满足林业测树的要求,说明通过此种方法测得的数据是可信的。
[0109] 利用提取出树木不同高度枝干的直径,部分数据和实际测量数据对比如表4所示。其中,通过等值线模型计算出的数据记为扫描数据,编号1-15为不同高度树干直径,编号
16-30为不同部位的枝条直径。
[0110] 表4扫描数据和测量数据对比表/cm
[0111]
[0112]
[0113] 图18直径散点图
[0114] 以扫描数据为自变量x,实际测量的数据为因变量y,做出样木枝干直径的散点图,并进行线性回归拟合,得到回归方程,由图18中的回归方程可以看出,R2达到0.9964,置信度为95%,说明计算数据和实测数据紧密相关。利用扫描数据,通过回归方程计算直径的理论值,根据公式(理论值-实测值)/实测值,得到误差为3.4%,误差数值满足林业测树的要求,说明利用此种方法提取的等值线模型可以用于树木枝干任何高度处的直径的测量。
[0115] 如上所述,对本发明的实施例进行了详细地说明,但是只要实质上没有脱离本发明的发明点及效果可以有很多的变形,这对本领域的技术人员来说是显而易见的。因此,这样的变形例也全部包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈