一种树冠层的三维点云数据中叶片基点提取方法与流程

文档序号:14796875发布日期:2018-06-29 19:15阅读:179来源:国知局

本发明涉及三维重建技术领域,更具体地,涉及一种树冠层的三维点云数据中叶片基点提取方法。



背景技术:

目前,随着地面三维激光扫描仪技术的发展,如何在计算机中表述和理解这些三维点云数据表达的意思,是许多科学和技术领域中共同遇到的问题。苹果树三维重建技术,作为数字化果园综合管理实施中的一项重要技术,受到科技工作者的普遍重视。

苹果树冠层三维点云中的点云数据怎么能够快速提取出来,在农林学、生态学、景观设计、计算机动画及计算机教学等领域有广泛的应用前景。果树冠层的生长过程复杂性高,但是叶片的位置由叶片基点位置决定,在果树冠层生态学中该叶片基点的位置是实现快速三维重建的基础,叶片基点是指叶片的叶托部分最下端的点。

目前,叶片基点的位置主要依靠手手动实验测定,或者在海量的三维点云数据中一个一个点的标记识别,耗时费力。



技术实现要素:

本发明提供一种克服上述问题或者至少部分地解决上述问题的一种树冠层的三维点云数据中叶片基点提取方法。

根据本发明的一个方面,提供一种树冠层的三维点云数据中叶片基点提取方法,包括:S1、将待测树冠层中任一树枝的点云图划分为多个子点云图,获取每一子点云图的聚类中心,每一子点云图在Z轴上的投影长度相等;S2、基于每一子点云图的聚类中心,进行空间拟合,获取空间直线;S3、根据所述任一树枝的点云图,获取所述任一树枝上每一叶片对应的点云图,对于任一叶片对应的点云图中的每一叶片点云数据,获取每一叶片点云数据到所述空间直线的距离,将距离最小的叶片点云数据作为所述叶片基点坐标,根据所述叶片基点坐标获取所述任一叶片的叶片基点。

优选地,步骤S1之前还包括:S0、根据所述待测树冠层的点云图,获取所述任一树枝的点云图。

优选地,步骤S2中,所述每一子点云图的聚类中心通过如下步骤获得:对于任一子点云图,根据所述任一子点云图在XOY平面的投影获取二维点云数据集,对所述二维点云数据集中所有二维点云数据进行K均值聚类分析,获取所述任一子点云图的聚类中心。

优选地,步骤S2具体包括:根据每一子点云图的聚类中心,获取第一二维矩阵;获取第一列向量,所述第一列向量包括每一子点云图中所有点云数据Z坐标的最小值;将所述第一二维矩阵和所述第一列向量进行拼接,获得三维矩阵;通过最小二乘法对所述三维矩阵进行空间拟合,获取所述空间直线。

优选地,步骤S3中所述根据所述待测树冠层中任一树枝的点云图,获取所述任一树枝上每一叶片对应的点云图,具体包括:S31、对所述任一树枝的点云图中的每一初始树枝点云数据进行坐标转换,获取中间树枝点云数据集;S32、获取所述中间树枝点云数据集中每一中间树枝点云数据对应的示范距离集,对于任一中间树枝点云数据对应的示范距离集,所述示范距离集包括所述任一中间树枝点云数据与其它中间树枝点云数据的欧几里德距离;S33、通过对所有中间树枝点云数据对应的示范距离集中所有示范距离进行降序排列,获取第二列向量;S34、通过对所有中间树枝点云数据对应的示范距离集中所有的示范距离和所述第二列向量中的数据进行空间拟合,获取参考曲线,根据参考曲线中曲率变化最大的点,获取所述第一参数;S35、通过基于密度的聚类算法对每一中间树枝点云数据进行分类,获取所述待测树树枝上每一叶片对应的点云图,所述基于密度的聚类算法的Eps值与所述第一参数相等。

优选地,步骤S31具体包括:将每一初始树枝点云数据的X轴坐标减去第一预设数值,每一初始树枝点云数据的Y轴坐标减去第二预设数值,每一初始树枝点云数据的Z轴坐标减去第三预设数值,获取中间树枝点云数据集。

优选地,步骤S34具体包括:获取第二二维矩阵,所述第二二维矩阵包括第三列向量和所述第一列向量,所述第三列向量中的数据为以1为首项、1为公差的等差数列;对所述参考矩阵中的数据进行样条插值处理,获取插值处理后的参考矩阵;通过数值法获取插值处理后的参考矩阵的导数;根据曲率计算公式,获取导数中曲率变化最大的数据的横坐标N,将所述第一列向量中第N个元素作为所述第一参数。

优选地,所述第一预设数值为所有初始树枝点云数据的X轴坐标的最小值,所述第二预设数值为所有初始树枝点云数据的Y轴坐标的最小值,所述第三预设数值为所有初始树枝点云数据的Z轴坐标的最小值。

优选地,步骤S35中所述基于密度的聚类算法的MinPts为4。

本发明提出一种树冠层的三维点云数据中叶片基点提取方法,在冠层三维点云数据的基础上,自动化提取枝条中的叶片基点坐标,可以满足科研人员对冠层生态学的分析要求;且计算方法合理,适宜自动化编程实现,可提高果树冠层三维点云数据的利用率,降低三维重建科研人员劳动强度。

附图说明

图1为本发明实施例一种树冠层的三维点云数据中叶片基点提取方法的流程图;

图2为本发明实施例一种树冠层的三维点云数据中叶片基点提取方法中的任一树枝的点云图;

图3为本发明实施例一种树冠层的三维点云数据中叶片基点提取方法中的待测树冠层的点云图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

图1为本发明实施例一种树冠层的三维点云数据中叶片基点提取方法的流程图,该方法包括:S1、将待测树冠层中任一树枝的点云图划分为多个子点云图,获取每一子点云图的聚类中心,每一子点云图在Z轴上的投影长度相等;S2、基于每一子点云图的聚类中心,进行空间拟合,获取空间直线;S3、根据所述任一树枝的点云图,获取所述任一树枝上每一叶片对应的点云图,对于任一叶片对应的点云图中的每一叶片点云数据,获取每一叶片点云数据到所述空间直线的距离,将距离最小的叶片点云数据作为所述叶片基点坐标,根据所述叶片基点坐标获取所述任一叶片的叶片基点。

图2为本发明实施例一种树冠层的三维点云数据中叶片基点提取方法中的任一树枝的点云图,如图2所示,图中叶片基点的位置位于叶片最下端,该树枝上有多片叶子,每一片叶子的最下端为叶片基点。

将该树枝的点云图划分为多个子点云图,每个子点云图在Z轴上的投影长度相等,由于是按照Z轴划分的子点云图,因此每个子点云图的聚类中心拟合的空间直线可以看着是图2中的枝干。

计算叶片上每个点到空间直线的距离,把距离最小的那个点当做是叶片基点。

本发明在地面激光三维扫描仪扫描获取冠层三维点云数据的基础上,自动化提取枝条中的叶片基点坐标,可以满足科研人员对冠层生态学的分析要求。

在上述实施例的基础上,优选地,步骤S1之前还包括:S0、根据所述待测树冠层的点云图,获取所述任一树枝的点云图。

图3为本发明实施例一种树冠层的三维点云数据中叶片基点提取方法中的待测树冠层的点云图,如图3所示,待测树冠层中有很多树枝,需要从待测树冠层的点云图中提取出某一段树枝的点云图。

在上述实施例的基础上,具体地,步骤S2中,所述每一子点云图的聚类中心通过如下步骤获得:

对于任一子点云图,根据所述任一子点云图在XOY平面的投影获取二维点云数据集,对所述二维点云数据集中所有二维点云数据进行K均值聚类分析,获取所述任一子点云图的聚类中心。

对于该树枝点云图中提取出的任一子点云图,该子点云图的聚类中心的计算方法为:计算该子点云图在XOY平面的投影,对投影点进行K均值聚类分析,其中K=2,获得该子点云图的聚类中心。

在上述实施例的基础上,具体地,步骤S2具体包括:根据每一子点云图的聚类中心,获取第一二维矩阵;获取第一列向量,所述第一列向量包括每一子点云图中所有点云数据Z坐标的最小值;将所述第一二维矩阵和所述第一列向量进行拼接,获得三维矩阵;通过最小二乘法对所述三维矩阵进行空间拟合,获取所述空间直线。

根据每一子点云图的聚类中心,获取第一二维矩阵(xKmeansi,yKmeansi)。第一二维矩阵中包括每个子点云图的聚类中心。

生成第一列向量Z,第一列向量的个数为j,j表示将任一树枝点云图划分为子点云图的个数,第一列向量的数据位每个子点云图中Z轴的最小值。

将第一列向量和第一二维矩阵进行合并,得到三维矩阵(xKmeansi,yKmeansi,z)j×m。

通过最小二乘法拟合(xKmeansi,yKmeansi,z)j×m,得到空间直线L。

在上述实施例的基础上,优选地,步骤S3中所述根据所述待测树冠层中任一树枝的点云图,获取所述任一树枝上每一叶片对应的点云图,具体包括:

S31、对所述任一树枝的点云图中的每一初始树枝点云数据进行坐标转换,获取中间树枝点云数据集;

S32、获取所述中间树枝点云数据集中每一中间树枝点云数据对应的示范距离集,对于任一中间树枝点云数据对应的示范距离集,所述示范距离集包括所述任一中间树枝点云数据与其它中间树枝点云数据的欧几里德距离;

S33、通过对所有中间树枝点云数据对应的示范距离集中所有示范距离进行降序排列,获取第二列向量;

S34、通过对所有中间树枝点云数据对应的示范距离集中所有的示范距离和所述第二列向量中的数据进行空间拟合,获取参考曲线,根据参考曲线中曲率变化最大的点,获取所述第一参数;

S35、通过基于密度的聚类算法对每一中间树枝点云数据进行分类,获取所述待测树树枝上每一叶片对应的点云图,所述基于密度的聚类算法的Eps值与所述第一参数相等。

为了减小计算量,需要对初始树枝点云数据进行坐标转换,转换方法如下:

xci=xi-min(xi)

yci=yi-min(yi),

zci=zi-min(zi)

其中,xci表示第i个初始树枝点云数据坐标转换后对应的中间树枝点云数据的X轴坐标,yci表示第i个初始树枝点云数据坐标转换后对应的中间树枝点云数据的Y轴坐标,zci表示第i个初始树枝点云数据坐标转换后对应的中间树枝点云数据的Z轴坐标,xi表示第i个初始树枝点云数据的X轴坐标,yi表示第i个初始树枝点云数据的Y轴坐标,zi表示第i个初始树枝点云数据的Z轴坐标。

min(xi)表示该树枝点云图中所有初始树枝点云数据中X轴坐标的最小值,也就是第一预设数值;min(yi)表示该树枝点云图中所有初始树枝点云数据中Y轴坐标的最小值,也就是第二预设数值;min(zi)表示该树枝点云图中所有初始树枝点云数据中Z轴坐标的最小值,也就是第三预设数值。

接着计算所有中间树枝点云数据集中每个中间树枝点云数据与其它中间树枝点云数据的欧几里德距离,以一个中间树枝点云数据p(xp,yp,zp)与某一个中间树枝点云数据(xci,yci,zci)的欧几里德距离为例,计算方法如下:

其中,Kdisti表示第i个示范距离。

Kdist按照降序排列,排列后的列向量为sortKdist。

(Kdist,sortKdist)曲线中曲率变化最大的点作为第一参数,也就是Eps。

通过基于密度的聚类算法对每个中间树枝点云数据进行分类,得到单个叶片对应的点云图。

在上述实施例的基础上,优选地,步骤S34具体包括:

获取第二二维矩阵,所述第二二维矩阵包括第三列向量和所述第一列向量,所述第三列向量中的数据为以1为首项、1为公差的等差数列;

对所述参考矩阵中的数据进行样条插值处理,获取插值处理后的参考矩阵;

通过数值法获取插值处理后的参考矩阵的导数;

根据曲率计算公式,获取导数中曲率变化最大的数据的横坐标N,将所述第一列向量中第N个元素作为所述第一参数。

生成列向量diskX,元素数与列向量Kdist相同,组成离散数据A(distX,sortKdist)。对A离散数据进行光滑样条插值,用数值法估算导数,光滑样条插值可以使离散数据变得光滑,提高准确性。

带入曲率计算公式求出曲率最大的点,曲率最大的点对应的sortKdist值为Eps。

输入参数MinPts、Eps,将数据集(xci,yci,zci)根据基于密度的聚类方法DBSCAN分类。

在上述实施例的基础上,优选地,步骤S35中所述基于密度的聚类算法的MinPts为4。

经过多次实验证明,MinPts为4时,计算速度最快。

针对现有技术中存在不能在果树冠层海量三维点云数据中有效提取叶片基点的问题,本发明的目的在于提供基于树冠层三维点云数据的叶片基点提取方法,以解决果树冠层三维点云中提取叶片基点的提取问题。该方法利用一定的算法通过提取一条枝条的基点延伸到整个冠层的基点提取。该设计方法精确度较高,并适宜自动化编程实现。利用该方法,可以很好地拓展了三维点云的识别和应用,减少了实验时间,降低生产成本。

最后,本发明的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1