岩石自然结构面磨损体积确定方法、装置和计算机设备与流程

文档序号:18415597发布日期:2019-08-13 19:21阅读:213来源:国知局
岩石自然结构面磨损体积确定方法、装置和计算机设备与流程

本申请涉及岩石力学与工程技术领域,特别是涉及一种岩石自然结构面磨损体积确定方法、装置、计算机设备和存储介质。



背景技术:

岩体中自然结构面的存在极大的影响了其物理力学特征,其中自然结构面的抗剪强度特性对地下岩体工程开挖稳定性尤为重要,自然结构面剪切前后磨损特征分析是理解自然结构面的抗剪强度特性的关键,自然结构面剪切前后磨损特征分析主要包括剪切后磨损体积的定量分析。传统的剪切后磨损体积的定量分析方法为通过三维扫描技术获取岩石自然结构面剪切前后表面形貌点云数据,将剪切前后自然结构面表面点云数据进行配准对齐,通过对比分析,确定剪切磨损体积。

然而,由于剪切前后自然结构面的两次扫描数据基于不同坐标系,且岩石自然结构面会因为磨损造成表面形貌改变,传统的定量分析方法存在对剪切前后两片点云配准对齐准确率低的问题。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够提高点云配准对齐准确率的岩石自然结构面磨损体积确定方法、装置、计算机设备和存储介质。

一种岩石自然结构面磨损体积确定方法,所述方法包括:

获取岩石自然结构面剪切前的第一点云数据以及剪切后的第二点云数据;

根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,确定各第一点数据以及各第二点数据的点特征值;

分别根据各第一点数据的点特征值以及各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选;

计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,根据点特征值的差值再次筛选第一点云数据以及第二点云数据;

采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,得到刚体变换矩阵,根据刚体变换矩阵对剪切后的第二点云数据进行变换,得到第三点云数据,第三点云数据中各第三点数据与剪切前的第一点云数据中各第一点数据相对应;

计算各第三点数据与对应的各第一点数据的高度坐标差,根据计算结果确定剪切后磨损体积。

一种岩石自然结构面磨损体积确定装置,所述装置包括:

获取模块,用于获取岩石自然结构面剪切前的第一点云数据以及剪切后的第二点云数据;

处理模块,用于根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,确定各第一点数据以及各第二点数据的点特征值;

第一筛选模块,用于分别根据各第一点数据的点特征值以及各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选;

第二筛选模块,用于计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,根据点特征值的差值再次筛选第一点云数据以及第二点云数据;

变换模块,用于采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,得到刚体变换矩阵,根据刚体变换矩阵对剪切后的第二点云数据进行变换,得到第三点云数据,第三点云数据中各第三点数据与剪切前的第一点云数据中各第一点数据相对应;

计算模块,用于计算各第三点数据与对应的各第一点数据的高度坐标差,根据计算结果确定剪切后磨损体积。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取岩石自然结构面剪切前的第一点云数据以及剪切后的第二点云数据;

根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,确定各第一点数据以及各第二点数据的点特征值;

分别根据各第一点数据的点特征值以及各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选;

计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,根据点特征值的差值再次筛选第一点云数据以及第二点云数据;

采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,得到刚体变换矩阵,根据刚体变换矩阵对剪切后的第二点云数据进行变换,得到第三点云数据,第三点云数据中各第三点数据与剪切前的第一点云数据中各第一点数据相对应;

计算各第三点数据与对应的各第一点数据的高度坐标差,根据计算结果确定剪切后磨损体积。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取岩石自然结构面剪切前的第一点云数据以及剪切后的第二点云数据;

根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,确定各第一点数据以及各第二点数据的点特征值;

分别根据各第一点数据的点特征值以及各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选;

计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,根据点特征值的差值再次筛选第一点云数据以及第二点云数据;

采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,得到刚体变换矩阵,根据刚体变换矩阵对剪切后的第二点云数据进行变换,得到第三点云数据,第三点云数据中各第三点数据与剪切前的第一点云数据中各第一点数据相对应;

计算各第三点数据与对应的各第一点数据的高度坐标差,根据计算结果确定剪切后磨损体积。

上述岩石自然结构面磨损体积确定方法、装置、计算机设备和存储介质,根据第一点云数据中各第一点数据的点特征值以及第二点云数据中各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选,通过从第一点云数据以及第二点云数据中提取自然结构面的特征点进行点云精简数据量,克服了扫描点云数据庞大造成计算时间长的弊端,能够提高点云数据的计算效率,通过计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,对第一点云数据以及第二点云数据进行再次筛选,得到自然结构面剪切后未磨损区域,即剪切前后未发生变化的区域,通过利用该未磨损区域作为迭代最近点算法的基质点计算出刚体变换矩阵,进而根据刚体变换矩阵实现剪切前后岩石自然结构面扫描点云数据的配准对齐,提高了点云配准对齐的准确率。

附图说明

图1为一个实施例中岩石自然结构面磨损体积确定方法的流程示意图;

图2为一个实施例中图1中步骤s104的子流程示意图;

图3为一个实施例中图2中步骤s204的子流程示意图;

图4为一个实施例中图1中步骤s106的子流程示意图;

图5为一个实施例中图1中步骤s108的子流程示意图;

图6为一个实施例中图1中步骤s110的子流程示意图;

图7为一个实施例中图1中步骤s112的子流程示意图;

图8为一个实施例中岩石自然结构面磨损体积确定装置的结构框图;

图9为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

在一个实施例中,如图1所示,提供了一种岩石自然结构面磨损体积确定方法,包括以下步骤:

s102:获取岩石自然结构面剪切前的第一点云数据以及剪切后的第二点云数据。

剪切前的第一点云数据以及剪切后的第二点云数据可基于三维扫描技术获取。三维扫描技术主要用于对物体空间外形和结构及色彩进行扫描,以获得物体表面的空间坐标。点云数据指的是扫描岩石自然结构面后以点的形式记录的数据,每一个点数据包括一组三维坐标。

s104:根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,确定各第一点数据以及各第二点数据的点特征值。

服务器根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,采用最邻近点算法,能够得到各第一点数据以及各第二点数据的邻近点集合。从而根据各点数据的邻近点集合,确定各点数据的点特征值。其中,采用最邻近点算法,能够得到各第一点数据以及各第二点数据的邻近点集合的方式具体可以为根据k-dtree算法,进行最邻近点搜索,得到各点数据的邻近点集合,其中,k的数值可按照需要自行设置。点特征值包括各点数据的法向量与各点数据的邻近点集合中各邻近点的法向量夹角的算数平均值、各点数据以及各点数据的邻近点集合中各邻近点拟合的曲面的曲率。

s106:分别根据各第一点数据的点特征值以及各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选。

根据各第一点数据的点特征值以及各第二点数据的点特征值,可以计算得到第一点云数据的第一点特征平均值以及第二点云数据的第二点特征平均值,进而将第一点特征平均值作为第一特征阈值,将第二点特征平均值作为第二特征阈值,分别对各第一点数据以及各第二点数据进行筛选,从中筛选出点特征值大于第一特征阈值的第一点数据以及点特征值大于第二特征阈值的第二点数据。

s108:计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,根据点特征值的差值再次筛选第一点云数据以及第二点云数据。

计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,根据点特征值的差值再次筛选第一点云数据以及第二点云数据,是为了筛选出在预设的差值范围内的剪切前后的两个对应点数据,当剪切前后的两个点数据的点特征值在预设的差值范围内时,即可认为两个点数据匹配。

s110:采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,得到刚体变换矩阵,根据刚体变换矩阵对剪切后的第二点云数据进行变换,得到第三点云数据,第三点云数据中各第三点数据与剪切前的第一点云数据中各第一点数据相对应。

采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,能够得到刚体变换矩阵,刚体变换矩阵包括旋转矩阵和平移矩阵,根据旋转矩阵和平移矩阵对剪切后的第二点云数据进行变换,能够得到第三点云数据,由于剪切后的第二点云数据中各第二点数据与剪切前的第一点云数据中各第一点数据相对应,所以由第二点云数据变换得到的第三点云数据中各第三点数据与剪切前的第一点云数据中各第一点数据相对应。

s112:计算各第三点数据与对应的各第一点数据的高度坐标差,根据计算结果确定剪切后磨损体积。

在计算高度坐标差之前,先根据预设的插值间隔对第三点云数据以及剪切前的第一点云数据进行等间隔差值,再计算插值后的第三点云数据中各第三点数据与对应的剪切前的第一点云数据中各第一点数据的高度坐标差,在得到高度坐标差之后,根据公式dv=δ2dz,即可计算剪切前的第一点云数据中各第一点数据的磨损体积,其中dz为高度坐标差,v指的是磨损体积,δ指的是预设的插值间隔,通过统计各第一点数据的磨损体积之和,即可得到剪切后磨损体积。其中,插值间隔可按照需要自行设置。

上述岩石自然结构面磨损体积确定方法,根据第一点云数据中各第一点数据的点特征值以及第二点云数据中各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选,通过从第一点云数据以及第二点云数据中提取自然结构面的特征点进行点云精简数据量,克服了扫描点云数据庞大造成计算时间长的弊端,能够提高点云数据的计算效率,通过计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,对第一点云数据以及第二点云数据进行再次筛选,得到自然结构面剪切后未磨损区域,即剪切前后未发生变化的区域,通过利用该未磨损区域作为迭代最近点算法的基质点计算出刚体变换矩阵,进而根据刚体变换矩阵实现剪切前后岩石自然结构面扫描点云数据的配准对齐,提高了点云配准对齐的准确率。

在其中一个实施例中,如图2所示,s104包括:

s202:采用最邻近点算法,根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,确定各第一点数据以及各第二点数据的邻近点集合;

s204:根据各第一点数据以及各第二点数据的邻近点集合,确定各第一点数据以及各第二点数据的点特征值。

采用最邻近点算法,根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,可以确定各第一点数据以及各第二点数据的邻近点集合。在本申请中,最邻近点算法用于根据给定查询点以及正整数k,从点云中找到距离查询点最近的k个点,常见的最邻近点算法包括kd-tree算法等,其中,给定查询点即第一点云数据中各第一点数据以及第二点云数据中各第二点数据,k的数值可按照需要自行设置。

在得到各第一点数据以及各第二点数据的邻近点集合后,服务器可根据各第一点数据以及各第二点数据的邻近点集合,确定各第一点数据以及各第二点数据的点特征值。其中,点特征值包括各点数据的法向量与各点数据的邻近点集合中各邻近点的法向量夹角的算数平均值、各点数据以及各点数据的邻近点集合中各邻近点拟合的曲面的曲率。

在其中一个实施例中,如图3所示,s204包括:

s302:根据各第一点数据以及各第二点数据的邻近点集合中各邻近点的坐标,确定与各邻近点集合对应的质心;

s304:根据与各邻近点集合对应的质心、各第一点数据的坐标以及各第二点数据的坐标,得到各第一点数据以及各第二点数据的协方差矩阵;

s306:根据各第一点数据以及各第二点数据的协方差矩阵,确定各第一点数据以及各第二点数据的法向量;

s308:分别计算各第一点数据以及各第二点数据的法向量与各第一点数据以及各第二点数据的邻近点集合中各邻近点的法向量夹角的算数平均值;

s310:根据各第一点数据的坐标、各第二点数据的坐标、各第一点数据以及各第二点数据的邻近点集合中各邻近点的坐标,确定各第一点数据以及各第二点数据的曲率;

s312:将法向量夹角的算数平均值以及曲率,作为各第一点数据以及各第二点数据的点特征值。

与各邻近点集合对应的质心可由各邻近点集合中各邻近点的坐标以及公式计算得到,其中pi指的是各邻近点,k指的是邻近点的个数。各第一点数据以及各第二点数据的协方差矩阵可由公式得到,其中pi指的是各点数据,指的是与各邻近点集合对应的质心,协方差矩阵最小特征值对应的特征向量即为点数据的法向量。通过这种方式,可以计算出第一点云数据中各第一点数据以及第二点云数据中各第二点数据的法向量,进而根据各第一点数据以及各第二点数据的法向量,可以分别计算各第一点数据以及各第二点数据的法向量与各第一点数据以及各第二点数据的邻近点集合中各邻近点的法向量夹角的算数平均值。

根据各第一点数据的坐标、各第二点数据的坐标、各第一点数据以及各第二点数据的邻近点集合中各邻近点的坐标,调用matlab程序利用二次多项式f(x,y),可以拟合出由各第一点数据以及各第二点数据与其对应的邻近点集合中各邻近点形成的曲面,从而根据拟合出的曲面确定各第一点数据以及各第二点数据的曲率σi,其中,f(x,y)=ax2+by2+cxy+dx+ey+f,

在其中一个实施例中,如图4所示,s106包括:

s402:分别根据各第一点数据的点特征值以及各第二点数据的点特征值,计算第一点云数据的第一点特征平均值以及第二点云数据的第二点特征平均值;

s404:将第一点特征平均值作为第一特征阈值,将第二点特征平均值作为第二特征阈值;

s406:分别根据第一特征阈值以及第二特征阈值,对第一点云数据中各第一点数据以及第二点云数据中各第二点数据进行筛选,筛选出点特征值大于第一特征阈值的第一点数据以及点特征值大于第二特征阈值的第二点数据。

点特征值包括各点数据的法向量与各点数据的邻近点集合中各邻近点的法向量夹角的算数平均值、各点数据以及各点数据的邻近点集合中各邻近点拟合的曲面的曲率。只有两个特征值都大于特征阈值的点数据才是符合要求的点数据,通过特征阈值对各点数据进行筛选,是为了从各点云数据中找到与起伏较大的区域对应的点区域,以便进行点云匹配。

在其中一个实施例中,如图5所示,s108包括:

s502:计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值;

s504:保留与任意第二点数据的点特征值的差值在预设的差值范围内的第一点数据,得到再次筛选后的第一点云数据;

s506:保留与任意第一点数据的点特征值的差值在预设的差值范围内的第二点数据,得到再次筛选后的第二点云数据。

计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,根据点特征值的差值再次筛选第一点云数据以及第二点云数据,是为了筛选出在预设的差值范围内的剪切前后的两个对应点数据,当第一点数据与某个第二点数据的差值在预设的差值范围内时,即可认为该第一点数据与该第二点数据匹配,同理,当第二点数据与某个第一点数据的差值在预设的差值范围内时,即可认为该第二点数据与该第一点数据匹配。即当剪切前后的两个点数据的点特征值在预设的差值范围内时,认为两个点数据匹配。其中,预设的差值范围可按照需要自行设置。

在其中一个实施例中,如图6所示,s110包括:

s602:采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,得到刚体变换矩阵,刚体变换矩阵包括旋转矩阵和平移矩阵;

s604:根据旋转矩阵和平移矩阵对剪切后的第二点云数据中各第二点数据进行变换,得到第三点云数据。

迭代最近点法是一种点集对点集配准方法,点云配准指将两个不同视点的点群三维数据整合到一个统一的坐标系的过程。迭代最近点法的思路为:根据某种几何特性对数据进行匹配,并设这些匹配点为假想的对应点,然后根据这种对应关系求解运动参数。再利用这些运动参数对数据进行变换。并利用同一几何特征,确定新的对应关系,重复上述过程进行迭代,使得数据中的重叠部分充分吻合。迭代最近点法中使用的几何特性即点在空间中的距离。

迭代最近点算法通过计算再次筛选后的第一点云数据以及再次筛选后的第二点云数据之间点对点距离的最小二乘得到两个点云数据之间的刚体变换矩阵,即求出两个点云数据之间的旋转矩阵r和平移矩阵t,从而使得两个点云数据能够最优重合。在得到刚体变换矩阵后,服务器根据公式data3=data2·r+t,其中,data3指的是第三点云数据,data2指的是第二点云数据,r指的是旋转矩阵,t指的是平移矩阵。对剪切后的第二点云数据中各第二点数据进行变换,可得到第三点云数据,由于剪切后的第二点云数据中各第二点数据与剪切前的第一点云数据中各第一点数据相对应,所以由第二点云数据变换得到的第三点云数据中各第三点数据与剪切前的第一点云数据中各第一点数据相对应。

在其中一个实施例中,如图7所示,s112包括:

s702:根据预设的插值间隔,对第三点云数据以及剪切前的第一点云数据进行等间隔插值;

s704:计算插值后的第三点云数据中各第三点数据与对应的剪切前的第一点云数据中各第一点数据的高度坐标差;

s706:根据高度坐标差,确定剪切前的第一点云数据中各第一点数据的磨损体积;

s708:统计各第一点数据的磨损体积之和,将磨损体积之和作为剪切后磨损体积。

根据预设的插值间隔,对第三点云数据以及剪切前的第一点云数据进行等间隔插值,可将第三点数据以及第一点数据按照插值间隔等间距排列,其中插值间隔可按照需要自行设置。计算高度坐标差指的是将第三点云数据中各第三点数据与对应的剪切前的第一点云数据中各第一点数据的高度坐标相减。对高度坐标差进行微分,根据公式v=δ2dz,即可得到剪切前的第一点云数据中各第一点数据的磨损体积,其中dz指的是高度坐标差,v指的是磨损体积,δ指的是预设的插值间隔,统计各第一点数据的磨损体积之和,即可得到剪切后磨损体积。

应该理解的是,虽然图1-7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在其中一个实施例中,提供了一个具体实施例对本申请的岩石自然结构面磨损体积确定方法进行说明:

服务器获取岩石自然结构面剪切前的第一点云数据data1以及剪切后的第二点云数据data2,其中,第一点云数据data1以及第二点云数据data2如下所示:

在得到第一点云数据以及第二点云数据之后,计算第一点云数据中各第一点数据以及第二点云数据中各第二点数据的点特征值。以第一点云数据中某点p为例进行说明:点p的坐标为:

p53722=[71.058958800000060.00013650000001.62145840000000]

根据k-dtree算法,进行最邻近点搜索,取k=10,得到点p的邻近点集合,如表1所示,

表1

根据表1中各邻近点的坐标计算邻近点质心:

根据公式计算协方差矩阵c:

协方差矩阵特征值:

λ0=0.001115993744099,λ1=0.465525701554681,λ3=1.141793731776571,

最小特征值λ0对应的特征向量即为点p的法向量,点p法向量为:

根据上述计算法向量的方法,计算点p的邻近点法向量,如表2所示:

表2

计算点p与各邻近点法向量夹角算数平均值:

根据点p的坐标与邻近点的坐标拟合曲面:

f(x,y)=-69.28x2+-264.3y2+-258.7xy+11.79x+28.38y+0.4691

根据曲面得到点p曲率:σ53722=0.02,

计算岩石自然结构面剪切前的第一点云数据中各第一点数据以及剪切后的第二点云数据中各第二点数据的曲率σ以及与邻近点法向量夹角算数平均值v,设置σ阈值为0.005,v阈值为40,σ>0.005并且v>40的点留下,得到筛选后的第一点云数据以及第二点云数据。

预先设置σ的差值阈值为0.001,v的差值阈值为0.5,对筛选后的第一点云数据以及第二点云数据进行再次筛选,得到再次筛选后的第一点云数据以及第二点云数据,采用迭代最近点算法,根据再次筛选后的第一点云数据以及第二点云数据计算出刚体变换矩阵,即旋转矩阵r和平移矩阵t,

t=[-17.793821.45278-35.3902]

根据公式data3=data2·r+t对剪切后的第二点云数据中各第二点数据进行变换,得到第三点云数据,其中,data3为第三点云数据,data2为第二点云数据,r为旋转矩阵,t为平移矩阵。根据预设的插值间隔,对第三点云数据以及剪切前的第一点云数据进行等间距差值,插值间隔可以为0.5毫米,计算各第三点数据与对应的各第一点数据的高度坐标差dz,则对应的各第一点数据剪切后磨损体积dv=δ2dz,统计各第一点数据剪切后磨损体积,即可得到岩石自然结构面磨损体积,本实施例中,磨损体积为41477.5891337585mm3

在一个实施例中,如图8所示,提供了一种岩石自然结构面磨损体积确定装置,包括:获取模块802、处理模块804、第一筛选模块806、第二筛选模块808、变换模块810和计算模块812,其中:

获取模块802,用于获取岩石自然结构面剪切前的第一点云数据以及剪切后的第二点云数据;

处理模块804,用于根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,确定各第一点数据以及各第二点数据的点特征值;

第一筛选模块806,用于分别根据各第一点数据的点特征值以及各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选;

第二筛选模块808,用于计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,根据点特征值的差值再次筛选第一点云数据以及第二点云数据;

变换模块810,用于采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,得到刚体变换矩阵,根据刚体变换矩阵对剪切后的第二点云数据进行变换,得到第三点云数据,第三点云数据中各第三点数据与剪切前的第一点云数据中各第一点数据相对应;

计算模块812,用于计算各第三点数据与对应的各第一点数据的高度坐标差,根据计算结果确定剪切后磨损体积。

上述岩石自然结构面磨损体积确定装置,根据第一点云数据中各第一点数据的点特征值以及第二点云数据中各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选,通过从第一点云数据以及第二点云数据中提取自然结构面的特征点进行点云精简数据量,克服了扫描点云数据庞大造成计算时间长的弊端,能够提高点云数据的计算效率,通过计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,对第一点云数据以及第二点云数据进行再次筛选,得到自然结构面剪切后未磨损区域,即剪切前后未发生变化的区域,通过利用该未磨损区域作为迭代最近点算法的基质点计算出刚体变换矩阵,进而根据刚体变换矩阵实现剪切前后岩石自然结构面扫描点云数据的配准对齐,提高了点云配准对齐的准确率。

在其中一个实施例中,处理模块还用于采用最邻近点算法,根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,确定各第一点数据以及各第二点数据的邻近点集合,根据各第一点数据以及各第二点数据的邻近点集合,确定各第一点数据以及各第二点数据的点特征值。

在其中一个实施例中,处理模块还用于根据各第一点数据以及各第二点数据的邻近点集合中各邻近点的坐标,确定与各邻近点集合对应的质心,根据与各邻近点集合对应的质心、各第一点数据的坐标以及各第二点数据的坐标,得到各第一点数据以及各第二点数据的协方差矩阵,根据各第一点数据以及各第二点数据的协方差矩阵,确定各第一点数据以及各第二点数据的法向量,分别计算各第一点数据以及各第二点数据的法向量与各第一点数据以及各第二点数据的邻近点集合中各邻近点的法向量夹角的算数平均值,根据各第一点数据的坐标、各第二点数据的坐标、各第一点数据以及各第二点数据的邻近点集合中各邻近点的坐标,确定各第一点数据以及各第二点数据的曲率,将法向量夹角的算数平均值以及曲率,作为各第一点数据以及各第二点数据的点特征值。

在其中一个实施例中,第一筛选模块还用于分别根据各第一点数据的点特征值以及各第二点数据的点特征值,计算第一点云数据的第一点特征平均值以及第二点云数据的第二点特征平均值,将第一点特征平均值作为第一特征阈值,将第二点特征平均值作为第二特征阈值,分别根据第一特征阈值以及第二特征阈值,对第一点云数据中各第一点数据以及第二点云数据中各第二点数据进行筛选,筛选出点特征值大于第一特征阈值的第一点数据以及点特征值大于第二特征阈值的第二点数据。

在其中一个实施例中,第二筛选模块还用于计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,保留与任意第二点数据的点特征值的差值在预设的差值范围内的第一点数据,得到再次筛选后的第一点云数据,保留与任意第一点数据的点特征值的差值在预设的差值范围内的第二点数据,得到再次筛选后的第二点云数据。

在其中一个实施例中,变换模块还用于采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,得到刚体变换矩阵,刚体变换矩阵包括旋转矩阵和平移矩阵,根据旋转矩阵和平移矩阵对剪切后的第二点云数据中各第二点数据进行变换,得到第三点云数据。

在其中一个实施例中,计算模块还用于根据预设的插值间隔,对第三点云数据以及剪切前的第一点云数据进行等间隔插值,计算插值后的第三点云数据中各第三点数据与对应的剪切前的第一点云数据中各第一点数据的高度坐标差,根据高度坐标差,确定剪切前的第一点云数据中各第一点数据的磨损体积,统计各第一点数据的磨损体积之和,将磨损体积之和作为剪切后磨损体积。

关于岩石自然结构面磨损体积确定装置的具体限定可以参见上文中对于岩石自然结构面磨损体积确定方法的限定,在此不再赘述。上述岩石自然结构面磨损体积确定装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种岩石自然结构面磨损体积确定方法。

本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

获取岩石自然结构面剪切前的第一点云数据以及剪切后的第二点云数据;

根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,确定各第一点数据以及各第二点数据的点特征值;

分别根据各第一点数据的点特征值以及各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选;

计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,根据点特征值的差值再次筛选第一点云数据以及第二点云数据;

采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,得到刚体变换矩阵,根据刚体变换矩阵对剪切后的第二点云数据进行变换,得到第三点云数据,第三点云数据中各第三点数据与剪切前的第一点云数据中各第一点数据相对应;

计算各第三点数据与对应的各第一点数据的高度坐标差,根据计算结果确定剪切后磨损体积。

上述岩石自然结构面磨损体积确定计算机设备,根据第一点云数据中各第一点数据的点特征值以及第二点云数据中各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选,通过从第一点云数据以及第二点云数据中提取自然结构面的特征点进行点云精简数据量,克服了扫描点云数据庞大造成计算时间长的弊端,能够提高点云数据的计算效率,通过计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,对第一点云数据以及第二点云数据进行再次筛选,得到自然结构面剪切后未磨损区域,即剪切前后未发生变化的区域,通过利用该未磨损区域作为迭代最近点算法的基质点计算出刚体变换矩阵,进而根据刚体变换矩阵实现剪切前后岩石自然结构面扫描点云数据的配准对齐,提高了点云配准对齐的准确率。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

采用最邻近点算法,根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,确定各第一点数据以及各第二点数据的邻近点集合;

根据各第一点数据以及各第二点数据的邻近点集合,确定各第一点数据以及各第二点数据的点特征值。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

根据各第一点数据以及各第二点数据的邻近点集合中各邻近点的坐标,确定与各邻近点集合对应的质心;

根据与各邻近点集合对应的质心、各第一点数据的坐标以及各第二点数据的坐标,得到各第一点数据以及各第二点数据的协方差矩阵;

根据各第一点数据以及各第二点数据的协方差矩阵,确定各第一点数据以及各第二点数据的法向量;

分别计算各第一点数据以及各第二点数据的法向量与各第一点数据以及各第二点数据的邻近点集合中各邻近点的法向量夹角的算数平均值;

根据各第一点数据的坐标、各第二点数据的坐标、各第一点数据以及各第二点数据的邻近点集合中各邻近点的坐标,确定各第一点数据以及各第二点数据的曲率;

将法向量夹角的算数平均值以及曲率,作为各第一点数据以及各第二点数据的点特征值。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

分别根据各第一点数据的点特征值以及各第二点数据的点特征值,计算第一点云数据的第一点特征平均值以及第二点云数据的第二点特征平均值;

将第一点特征平均值作为第一特征阈值,将第二点特征平均值作为第二特征阈值;

分别根据第一特征阈值以及第二特征阈值,对第一点云数据中各第一点数据以及第二点云数据中各第二点数据进行筛选,筛选出点特征值大于第一特征阈值的第一点数据以及点特征值大于第二特征阈值的第二点数据。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值;

保留与任意第二点数据的点特征值的差值在预设的差值范围内的第一点数据,得到再次筛选后的第一点云数据;

保留与任意第一点数据的点特征值的差值在预设的差值范围内的第二点数据,得到再次筛选后的第二点云数据。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,得到刚体变换矩阵,刚体变换矩阵包括旋转矩阵和平移矩阵;

根据旋转矩阵和平移矩阵对剪切后的第二点云数据中各第二点数据进行变换,得到第三点云数据。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

根据预设的插值间隔,对第三点云数据以及剪切前的第一点云数据进行等间隔插值;

计算插值后的第三点云数据中各第三点数据与对应的剪切前的第一点云数据中各第一点数据的高度坐标差;

根据高度坐标差,确定剪切前的第一点云数据中各第一点数据的磨损体积;

统计各第一点数据的磨损体积之和,将磨损体积之和作为剪切后磨损体积。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

获取岩石自然结构面剪切前的第一点云数据以及剪切后的第二点云数据;

根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,确定各第一点数据以及各第二点数据的点特征值;

分别根据各第一点数据的点特征值以及各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选;

计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,根据点特征值的差值再次筛选第一点云数据以及第二点云数据;

采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,得到刚体变换矩阵,根据刚体变换矩阵对剪切后的第二点云数据进行变换,得到第三点云数据,第三点云数据中各第三点数据与剪切前的第一点云数据中各第一点数据相对应;

计算各第三点数据与对应的各第一点数据的高度坐标差,根据计算结果确定剪切后磨损体积。

上述岩石自然结构面磨损体积确定存储介质,根据第一点云数据中各第一点数据的点特征值以及第二点云数据中各第二点数据的点特征值,对第一点云数据以及第二点云数据进行筛选,通过从第一点云数据以及第二点云数据中提取自然结构面的特征点进行点云精简数据量,克服了扫描点云数据庞大造成计算时间长的弊端,能够提高点云数据的计算效率,通过计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值,对第一点云数据以及第二点云数据进行再次筛选,得到自然结构面剪切后未磨损区域,即剪切前后未发生变化的区域,通过利用该未磨损区域作为迭代最近点算法的基质点计算出刚体变换矩阵,进而根据刚体变换矩阵实现剪切前后岩石自然结构面扫描点云数据的配准对齐,提高了点云配准对齐的准确率。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

采用最邻近点算法,根据第一点云数据中各第一点数据的坐标以及第二点云数据中各第二点数据的坐标,确定各第一点数据以及各第二点数据的邻近点集合;

根据各第一点数据以及各第二点数据的邻近点集合,确定各第一点数据以及各第二点数据的点特征值。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

根据各第一点数据以及各第二点数据的邻近点集合中各邻近点的坐标,确定与各邻近点集合对应的质心;

根据与各邻近点集合对应的质心、各第一点数据的坐标以及各第二点数据的坐标,得到各第一点数据以及各第二点数据的协方差矩阵;

根据各第一点数据以及各第二点数据的协方差矩阵,确定各第一点数据以及各第二点数据的法向量;

分别计算各第一点数据以及各第二点数据的法向量与各第一点数据以及各第二点数据的邻近点集合中各邻近点的法向量夹角的算数平均值;

根据各第一点数据的坐标、各第二点数据的坐标、各第一点数据以及各第二点数据的邻近点集合中各邻近点的坐标,确定各第一点数据以及各第二点数据的曲率;

将法向量夹角的算数平均值以及曲率,作为各第一点数据以及各第二点数据的点特征值。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

分别根据各第一点数据的点特征值以及各第二点数据的点特征值,计算第一点云数据的第一点特征平均值以及第二点云数据的第二点特征平均值;

将第一点特征平均值作为第一特征阈值,将第二点特征平均值作为第二特征阈值;

分别根据第一特征阈值以及第二特征阈值,对第一点云数据中各第一点数据以及第二点云数据中各第二点数据进行筛选,筛选出点特征值大于第一特征阈值的第一点数据以及点特征值大于第二特征阈值的第二点数据。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

计算筛选后的第一点云数据中各第一点数据与第二点云数据中各第二点数据的点特征值的差值;

保留与任意第二点数据的点特征值的差值在预设的差值范围内的第一点数据,得到再次筛选后的第一点云数据;

保留与任意第一点数据的点特征值的差值在预设的差值范围内的第二点数据,得到再次筛选后的第二点云数据。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

采用迭代最近点算法,根据再次筛选后的第一点云数据以及再次筛选后的第二点云数据,得到刚体变换矩阵,刚体变换矩阵包括旋转矩阵和平移矩阵;

根据旋转矩阵和平移矩阵对剪切后的第二点云数据中各第二点数据进行变换,得到第三点云数据。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

根据预设的插值间隔,对第三点云数据以及剪切前的第一点云数据进行等间隔插值;

计算插值后的第三点云数据中各第三点数据与对应的剪切前的第一点云数据中各第一点数据的高度坐标差;

根据高度坐标差,确定剪切前的第一点云数据中各第一点数据的磨损体积;

统计各第一点数据的磨损体积之和,将磨损体积之和作为剪切后磨损体积。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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