CN115760954A - Method for rapidly calculating surface area of complex surface based on point cloud data - Google Patents
Method for rapidly calculating surface area of complex surface based on point cloud data Download PDFInfo
- Publication number
- CN115760954A CN115760954A CN202211256840.5A CN202211256840A CN115760954A CN 115760954 A CN115760954 A CN 115760954A CN 202211256840 A CN202211256840 A CN 202211256840A CN 115760954 A CN115760954 A CN 115760954A
- Authority
- CN
- China
- Prior art keywords
- point
- points
- formula
- bou
- interp
- 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.)
- Pending
Links
Images
Landscapes
- Image Generation (AREA)
Abstract
本发明提供基于点云数据快速计算复杂表面表面积的方法,包括:步骤1.将待计算的复杂表面的原始点云分割成一系列小面片,并将点投影至拟合面;步骤2.对投影后的点云Fporj进行特别设计的刚体变换得到点云Ftran;步骤3.提取Ftran中的边缘点Fbou;步骤4.计算Fbou的中心点pcen,对于Fbou中的任意一点pbou,计算出由pcen和pbou确定的法向量
再计算出夹角θi,排序并存储在θsort中,针对已排好序的边缘点,插值后重新排序,得到新的边缘点集合;步骤5.对于边缘点集合中的任意两个相邻点,均计算出与中心点所围成的三角形或扇形面积,对所有面片累加得到复杂表面的表面积。The present invention provides a method for quickly calculating the surface area of complex surfaces based on point cloud data, comprising: step 1. dividing the original point cloud of the complex surface to be calculated into a series of small facets, and projecting the points to the fitting surface; step 2. The projected point cloud F porj is subjected to a specially designed rigid body transformation to obtain the point cloud F tran ; Step 3. Extract the edge point F bou in F tran ; Step 4. Calculate the center point p cen of F bou , for any point in F bou A point p bou , calculate the normal vector determined by p cen and p bou
Then calculate the included angle θ i , sort and store in θ sort , and reorder the sorted edge points after interpolation to obtain a new set of edge points; step 5. For any two phases in the set of edge points The area of the triangle or sector surrounded by the center point is calculated for the adjacent points, and the surface area of the complex surface is obtained by accumulating all the patches.Description
技术领域technical field
本发明属于三维激光扫描技术领域,具体涉及一种基于点云数据快速计算复 杂表面表面积的方法。The invention belongs to the technical field of three-dimensional laser scanning, in particular to a method for quickly calculating the surface area of complex surfaces based on point cloud data.
背景技术Background technique
实际工作中,常常需要对物体的表面积进行计算,表面积计算在医疗、土地 调查、农业等领域起着重要的作用。规则物体的表面积可以通过简单的数学计算 来实现,而不规则物体的表面积计算则比较复杂,不同方法得到的结果也不尽相 同。地表面积的计算以往主要使用GPS、全站仪、激光跟踪仪、激光测距仪等多 种测量仪器进行,根据得到的离散点和边长,采用曲面拟合方法、曲线拟合方法、 不规则网络方法等方法计算面积。然而,单点测量的精度普遍受到激光测距和刻 度盘测角精度的限制,测距和测角误差的影响难以减弱。这些方法效率低,精度 差,计算成本高,特别是对于难以接近的、大规模的、粗糙的、弯曲的目标物体。In practical work, it is often necessary to calculate the surface area of an object, and surface area calculation plays an important role in fields such as medical treatment, land survey, and agriculture. The surface area of a regular object can be realized by simple mathematical calculations, while the calculation of the surface area of an irregular object is more complicated, and the results obtained by different methods are not the same. In the past, the calculation of the surface area was mainly carried out by various measuring instruments such as GPS, total station, laser tracker, and laser rangefinder. According to the obtained discrete points and side lengths, surface fitting methods, curve fitting methods, and irregular Network methods and other methods to calculate the area. However, the accuracy of single-point measurement is generally limited by the accuracy of laser ranging and dial angle measurement, and the influence of ranging and angle measurement errors is difficult to weaken. These methods suffer from low efficiency, poor accuracy, and high computational cost, especially for inaccessible, large-scale, rough, and curved target objects.
发明内容Contents of the invention
本发明是为了解决大规模复杂表面的表面积计算中存在的效率低、精度差和 成本高等问题而进行的,目的在于提供一种基于点云数据快速计算复杂表面表面 积的方法,特别适合于难以接触、大尺度、粗糙和弯曲的目标物体。The present invention is carried out to solve the problems of low efficiency, poor precision and high cost in the calculation of the surface area of large-scale complex surfaces. , large scale, rough and curved target objects.
本发明为了实现上述目的,采用了以下方案:In order to achieve the above object, the present invention adopts the following scheme:
本发明提供一种基于点云数据快速计算复杂表面表面积的方法,其特征在于, 包括以下步骤:步骤1.采用自适应的超体素分割算法将待计算的复杂表面的原 始点云Porig分割成一系列的小面片Ffac,对每个面片Ffac进行拟合,并将该面片 上的点投影至对应的精确拟合的平面上;The present invention provides a kind of method based on point cloud data fast calculation complex surface surface area, it is characterized in that, comprises the following steps:
步骤2.设Fporj为Ffac投影后的点云,对Fporj进行特别设计的刚体变换:以 Fporj上的中心点为局部坐标系原点,以中心点与Fporj上第一个点的法向量为局部 坐标系X轴,以Fporj的法向量为局部坐标系Z轴,以局部坐标系X轴与局部坐 标系Z轴的叉积为局部坐标系Y轴,执行刚体变换,使Fporj法向量与整体坐标 系Z轴平行;
步骤3.设Fporj经刚体变换后得到的点云为Ftran,经过刚体变换后,空间中 具有任意姿态角的平面将与X-Y面平行,每个点的z坐标值都相同,然后提取 Ftran中的边缘点Fbou;
步骤4.计算出Fbou的中心点pcen,令为起始方向,对于Fbou中的任 意一点pbou,计算出由pcen和pbou确定的法向量再计算出与之间的夹 角θi,将计算得到的角度θi按预定顺序(例如,顺时针或逆时针)排序并存储在 θsort中,对应点的顺序也随之调整并存储在Psort中,针对已排好序的边缘点Psort, 因有些平面的边缘点比较稀疏,为获得更加可靠的面积计算结果,若两个相邻边 缘点的距离大于一定阈值(如0.01m),则对其进行插值加密,对插值后的点重新 排序,得到新的边缘点集合Pinterp;
步骤5.对于Pinterp中的任意两个相邻点pi和pj,均计算出由pi、pj和pcen构 成的三角形或扇形面积Sarea,将所有面片内的所有三角形或扇形面积相加得到复 杂表面的表面积Sall。
本方法主要是在无组织点云上进行表面积计算,与点云数据来源方式无关, 只要能够获取到我们步骤中所要求的数据就可以,例如,本方法适用于利用倾斜 摄影方式得到的点云,或者人工合成的仿真点云,更适用于激光雷达技术无接触 式地获取物体表面精确的三维信息。例如,对于一些难以接近的、大规模的、粗 糙的、弯曲的目标物体,普通的测量方式难以获取其准确的表面积,可首先利用 三维激光扫描仪得到物体表面点云,再利用本方法计算表面积。This method is mainly to calculate the surface area on the unorganized point cloud, it has nothing to do with the source of the point cloud data, as long as the data required in our steps can be obtained, for example, this method is applicable to the point cloud obtained by oblique photography , or artificially synthesized simulation point clouds, are more suitable for LiDAR technology to obtain accurate three-dimensional information on the surface of objects without contact. For example, for some inaccessible, large-scale, rough, and curved target objects, it is difficult to obtain the accurate surface area by common measurement methods. First, use a 3D laser scanner to obtain the surface point cloud of the object, and then use this method to calculate the surface area .
进一步地,本发明提供的基于点云数据快速计算复杂表面表面积的方法,还 可以具有以下特征:在步骤1的超体素分割过程中,将每个点的邻近点数目ε)设 置为20,若Porig中平面结构特征占比达到50%以上,则将距离尺度εd设置为 0.4~0.6m,否则将距离尺度εd设置为0.3~0.2m。Further, the method for quickly calculating the surface area of complex surfaces based on point cloud data provided by the present invention can also have the following characteristics: in the supervoxel segmentation process of
进一步地,本发明提供的基于点云数据快速计算复杂表面表面积的方法,还 可以具有以下特征:在步骤1中,对于生成的每个面片Ffac,采用基于PCA(Principal ComponentAnalysis)的稳健平面拟合方法对其进行拟合,设Ffac中的点所在平面方 程为:Further, the method for quickly calculating the surface area of complex surfaces based on point cloud data provided by the present invention may also have the following features: In
Ax+By+Cz+D=0 (1)Ax+By+Cz+D=0 (1)
式中,A、B和C为平面的三个法向量且满足A2+B2+C2=1;In the formula, A, B and C are three normal vectors of the plane and satisfy A 2 +B 2 +C 2 =1;
Ffac上一点pi到该平面的距离di为:The distance d i from point p i on F fac to the plane is:
di=|Axi+Byi+Czi+D| (2)d i =|Ax i +By i +Cz i +D| (2)
式中,xi,yi和zi为点pi的坐标值;In the formula, x i , y i and z i are the coordinate values of point p i ;
目标函数应满足如下条件:objective function The following conditions should be met:
式中,N为Ffac中的点数;In the formula, N is the number of points in F fac ;
利用拉格朗日乘数法求解目标函数最小值,首先组成以下函数:Using Lagrange Multiplier Method to Solve the Objective Function minimum, first compose the following function:
式中,λ为待定参数;In the formula, λ is an undetermined parameter;
将式(4)对D求偏导并令求导结果为0,得到下式:Calculate the partial derivative of formula (4) with respect to D and set the result of the derivative to 0 to obtain the following formula:
则有:Then there are:
式中, In the formula,
式(2)可改写为如下形式:Formula (2) can be rewritten as the following form:
利用式(4)分别对A、B和C求偏导,可得如下关系:Using equation (4) to calculate the partial derivatives of A, B and C respectively, the following relationship can be obtained:
式中, In the formula,
令make
因M3×3总是对称半正定的,令分别为M3×3的特征向量,λ1≥λ2≥ λ3分别为M3×3的特征值,M3×3分解为:Since M 3×3 is always positive semi-definite, let are the eigenvectors of M 3×3 , and λ 1 ≥ λ 2 ≥ λ 3 are the eigenvalues of M 3×3 respectively, and M 3×3 is decomposed into:
为了获取更为精确的拟合参数,计算出Ffac中的每个点pi到由和Ffac的质 心点确定平面的距离ti,则标准偏差σ为:In order to obtain more accurate fitting parameters, calculate each point p i in F fac to be determined by and the centroid point of F fac determine the distance t i of the plane, then the standard deviation σ is:
若ti>2σ,则将对应的点从Ffac中剔除,利用剩余点重新计算和质心点; 设置迭代次数为ε1,经过ε1次迭代求出平面法向量A、B和C的精确值,然后利 用式(6)求出D的值;If t i >2σ, remove the corresponding point from F fac and use the remaining points to recalculate and the centroid point; set the number of iterations to ε 1 , and obtain the exact values of the plane normal vectors A, B and C after ε 1 iterations, and then use formula (6) to obtain the value of D;
将Ffac上的点投影至拟合平面上,投影方程为:Project the points on F fac onto the fitting plane, and the projection equation is:
式中,xi、yi和zi为投影前的坐标值,xj、yj和zj为投影后的坐标值。In the formula, x i , y i and z i are coordinate values before projection, and x j , y j and z j are coordinate values after projection.
进一步地,本发明提供的基于点云数据快速计算复杂表面表面积的方法,还 可以具有以下特征:在步骤1中,给定原始点云数据Porig,用kd-tree管理Porig并 建立其对应的索引,利用自适应超体素分割算法将Porig分割成一系列的小面片, 这里面涉及两个需要调整的参数:每个点的邻近点数目εk和距离尺度εd,而εd可 被视为面片的平均边长,εk通常设置为20。εd不能由固定值确定,而是视具体情 况而定。如果原始点云数据主要由平面结构组成,则应将εd设置为稍大(例如0.5 m),如果点云包含丰富的曲面特征,则应将εd设置为稍小(例如0.25m)。Furthermore, the method for quickly calculating the surface area of complex surfaces based on point cloud data provided by the present invention may also have the following features: In
进一步地,本发明提供的基于点云数据快速计算复杂表面表面积的方法,还 可以具有以下特征:在步骤2中,Fporj的中心点为:Further, the method for quickly calculating the surface area of complex surfaces based on point cloud data provided by the present invention may also have the following characteristics: in
式中,xporj i,yporj i和zporj i为Fporj中任一点的坐标值,N为Fporj中的点数;In the formula, x porj i , y porj i and z porj i are the coordinate values of any point in F porj , and N is the number of points in F porj ;
接下来,Fporj上的局部坐标系定义如下:Next, the local coordinate system on F porj is defined as follows:
式中,和分别表示局部坐标系的三个坐标轴的方向,x1,y1和 z1表示Fporj中第一个点的坐标值;In the formula, and represent the directions of the three coordinate axes of the local coordinate system, x 1 , y 1 and z 1 represent the coordinate value of the first point in F porj ;
靶坐标轴系定义如下:The target coordinate axis system is defined as follows:
式中,In the formula,
令M3×3为旋转矩阵,则M3×3计算如下:Let M 3×3 be the rotation matrix, then M 3×3 is calculated as follows:
设pi(xi,yi,zi)为Fporj中一点,pj(xj,yj,zj)为对pi(xi,yi,zi)进行刚体变换后得到的点,则pj(xj,yj,zj)计算如下:Let p i (x i , y i , zi ) be a point in F porj , p j (x j , y j , z j ) be obtained after performing rigid body transformation on p i (x i , y i , zi ) , then p j (x j ,y j ,z j ) is calculated as follows:
进一步地,本发明提供的基于点云数据快速计算复杂表面表面积的方法,还 可以具有以下特征:在步骤3中,假设Fporj经刚体变换后得到的点云为Ftran,经 过刚体变换后,空间中具有任意姿态角的平面将与X-Y面平行,这意味着每个 点的z坐标值都相同,这样就将三维数据降为二维数据。接下来,使用二维α- shape算法提取Ftran中的边缘点(仅x和y坐标值参与运算)。一般来说,α-shape 算法是一种提取离散点集合中边缘点的方法,其原理可看作一个半径为ε2的圆环 绕着Ftran外面滚动,该圆环经过Ftran中任意两点,如果没有其它点在该圆环中, 则这两个点被视为边缘点,边缘点通过这种方式迭代地得到。令得到的边缘点为 Fbou。需要指出的是,由于不同点云面片之间的平均点密度可能并不相同,有时 差别还会很大,因此为了更好地提取出边缘点,在设置ε2这个参数时(ε2表示执 行α-shape算法提取Ftran中的边缘点时圆环的半径值),通常令其与Ftran的平均 点间距daver相关,例如,设置为Fporj平均点间距的10倍。对于Ftran中的任意一 点pi,执行k-近邻搜索以找出对应的n个邻近点(表示为pi 1,pi 2…,pi n),则daver可 计算如下:Further, the method for quickly calculating the surface area of complex surfaces based on point cloud data provided by the present invention may also have the following characteristics: in
式中,N为Ftran的点数,1≤i≤N。n设置为2即可。In the formula, N is the number of points of F tran , 1≤i≤N. n can be set to 2.
进一步地,本发明提供的基于点云数据快速计算复杂表面表面积的方法,还 可以具有以下特征:在步骤4中,面积计算的关键是将由Fbou组成的多边形划分 成一系列的小三角形或小扇形,总的面积可通过统计这些小三角形或小扇形的面 积之和得到;因此在面积计算之前,需要将边缘点规则化;首先计算出Fbou的中 心点pcen:Further, the method for quickly calculating the surface area of complex surfaces based on point cloud data provided by the present invention may also have the following characteristics: in
式中,xbou i和ybou i分别为Fbou中一点的坐标值,M为Fbou中的点数;In the formula, x bou i and y bou i are the coordinates of a point in F bou respectively, and M is the number of points in F bou ;
令为起始方向,对于Fbou中的任意一点pbou,由pcen和pbou确定的法 向量计算如下:make is the starting direction, for any point p bou in F bou , the normal vector determined by p cen and p bou Calculated as follows:
式中,1≤i≤M;In the formula, 1≤i≤M;
与之间的夹角θi为: and The angle θ i between is:
式中,In the formula,
将计算得到的角度θi按顺时针或逆时针排序并存储在θsort中,1≤i≤M,对 应点的顺序也随之调整并存储在Psort中。The calculated angle θ i is sorted clockwise or counterclockwise and stored in θ sort , 1≤i≤M, and the order of corresponding points is also adjusted accordingly and stored in P sort .
进一步地,本发明提供的基于点云数据快速计算复杂表面表面积的方法,还 可以具有以下特征:在步骤4中,针对已排好序的边缘点Psort,如果两个相邻边 缘点的距离大于一定阈值(如0.01m),则需要对其进行插值加密,采用改进的 3次B样条曲线进行插值计算,并使该3次B样条曲线经过4个给定的控制点 P1~P4;Furthermore, the method for quickly calculating the surface area of complex surfaces based on point cloud data provided by the present invention may also have the following features: In
式中,Pi为控制曲线的特征点,P1~P4分别对应与当前边缘点P0相邻的四个点, P0=Psort;Fi(t)表示3次B样条曲线的基函数;t为Fi(t)中的自变量,t∈[0,1],即t取0 到1之间的任意实数;In the formula, P i is the characteristic point of the control curve, P 1 ~ P 4 respectively correspond to the four points adjacent to the current edge point P 0 , P 0 = P sort ; Fi(t) represents the third degree B-spline curve Basis function; t is an independent variable in F i (t), t∈[0,1], that is, t takes any real number between 0 and 1;
对于一个稀疏的边缘点,使用改进的3次B样条曲线插值对其进行加密, 保证每两个内插点之间的距离不大于阈值,对于内插后的点重新排序,得到新的 边缘点集合Pinterp。For a sparse edge point, use the improved 3-time B-spline curve interpolation to encrypt it to ensure that the distance between every two interpolated points is not greater than the threshold, and reorder the interpolated points to get a new edge Point set P interp .
进一步地,本发明提供的基于点云数据快速计算复杂表面表面积的方法,还 可以具有以下特征:在步骤5中,设pinterp i和pinterp j是Pinterp中的两个相邻点,如 果待计算的目标表面50%以上由面状结构组成(平面结构特征占比达到50%以 上),则采用三角形来计算,由pinterp i、pinterp j和pcen构成的三角形面积Sarea为:Further, the method for quickly calculating the surface area of complex surfaces based on point cloud data provided by the present invention may also have the following features: In
式中,In the formula,
式中,(xinterp i,yinterp i)和(xinterp j,yinterp j)分别为pinterp i和pinterp j的点坐标。In the formula, (x interp i , y interp i ) and (x interp j , y interp j ) are the point coordinates of p interp i and p interp j respectively.
如果待计算的目标表面超过50%由曲面构成(曲面结构特征占比超50%), 则采用扇形来计算,由pinterp i、pinterp j和pcen构成的扇形面积Sarea计算如下:If more than 50% of the target surface to be calculated is composed of curved surfaces (surface structural features account for more than 50%), then a sector is used for calculation, and the sector area S area formed by p interp i , p interp j and p cen is calculated as follows:
其中,in,
最终的复杂表面的表面积Sall计算如下:The surface area S all of the final complex surface is calculated as follows:
式中,S为面片Ffac的总数,R为当前第m个面片Ffac的Pinterp中的点数,为当前第m个面片Ffac中第n个三角形或扇形面积。In the formula, S is the total number of facets F fac , R is the number of points in P interp of the current mth facet F fac , is the area of the nth triangle or sector in the current mth facet F fac .
发明的作用与效果Function and Effect of Invention
本发明所提出的基于点云数据快速计算复杂表面表面积的方法,首次提出 直接在无组织点云上进行表面积计算,而不需要进行三维重建,并且能够适用于 各式各样的复杂表面,本发明利用点云数据自动快速计算复杂表面的表面积,针 对大多数现有方法存在的效率低,精度差和计算成本高等问题,特别是面向难以 接近的,大规模,粗糙和弯曲目标的表面积计算时,本方法优势尤为明显,不仅 大幅提高了工作效率,通过与利用可靠设备人工采集的测量数据进行比较,结果 显示本方法还具有很高的可靠性。The method for quickly calculating the surface area of complex surfaces based on point cloud data proposed by the present invention proposes for the first time to calculate the surface area directly on the unorganized point cloud without the need for 3D reconstruction, and can be applied to a variety of complex surfaces. The invention uses point cloud data to automatically and quickly calculate the surface area of complex surfaces, aiming at the problems of low efficiency, poor accuracy and high calculation cost in most existing methods, especially when calculating the surface area of inaccessible, large-scale, rough and curved targets , the advantage of this method is particularly obvious. It not only greatly improves the work efficiency, but also has high reliability by comparing with the measurement data collected manually by reliable equipment.
附图说明Description of drawings
图1为本发明实施例涉及的基于点云数据快速计算复杂表面表面积的方法 的流程图;Fig. 1 is the flow chart of the method for calculating complex surface surface area quickly based on point cloud data that the embodiment of the present invention relates to;
图2为本发明实施例涉及的超体素分割示意图,其中(a)为原始点云数据,(b)为超体素分割结果;Fig. 2 is a schematic diagram of super-voxel segmentation involved in an embodiment of the present invention, wherein (a) is the original point cloud data, and (b) is the result of super-voxel segmentation;
图3为本发明实施例涉及的投影前后对比图,其中(a)为投影前,(b)为投影 后;Fig. 3 is a comparison diagram before and after projection related to an embodiment of the present invention, wherein (a) is before projection, and (b) is after projection;
图4为本发明实施例涉及的刚体变换示意图;4 is a schematic diagram of rigid body transformation involved in an embodiment of the present invention;
图5为本发明实施例涉及的刚体变换后的点云面片示意图;FIG. 5 is a schematic diagram of a point cloud patch after rigid body transformation according to an embodiment of the present invention;
图6为本发明实施例涉及的边缘点提取示意图,其中(a)为提取前,(b)为提 取后;Fig. 6 is a schematic diagram of edge point extraction related to an embodiment of the present invention, wherein (a) is before extraction, and (b) is after extraction;
图7为本发明实施例中涉及的平面投影示意图,其中(a)为投影前,(b) 为投影后;Fig. 7 is a schematic diagram of the plane projection involved in the embodiment of the present invention, wherein (a) is before projection, and (b) is after projection;
图8为本发明实施例涉及的改进的3次B样条曲线插值对边缘点加密效果 示意图,其中(a)为加密前,(b)为加密后;Fig. 8 is the improved 3 B-spline curve interpolation that the embodiment of the present invention relates to the schematic diagram of edge point encryption effect, wherein (a) is before encryption, (b) is after encryption;
图9为本发明实施例涉及的面积计算结果示意图;Fig. 9 is a schematic diagram of the area calculation results involved in the embodiment of the present invention;
图10为本发明实施例涉及的仿真点云数据,其中(a)为立方体,(b)为球体, (c)为环圈;Fig. 10 is the simulation point cloud data related to the embodiment of the present invention, wherein (a) is a cube, (b) is a sphere, and (c) is a ring;
图11为本发明实施例涉及的本发明所提出的方法在不同采样率下的计算结 果,其中(a)为计算时间,(b)为相对精度;Fig. 11 is the calculation result of the method proposed by the present invention related to the embodiment of the present invention under different sampling rates, wherein (a) is calculation time, and (b) is relative accuracy;
图12为本发明实施例涉及的贪婪三角形算法在不同采样率下的计算结果, 其中(a)为计算时间,(b)为相对精度;Fig. 12 is the calculation result of the greedy triangle algorithm involved in the embodiment of the present invention at different sampling rates, wherein (a) is the calculation time, and (b) is the relative accuracy;
图13为本发明实施例涉及的泊松曲面重建算法在不同采样率下的计算结果, 其中(a)为计算时间,(b)为相对精度;Fig. 13 is the calculation result of the Poisson surface reconstruction algorithm involved in the embodiment of the present invention at different sampling rates, where (a) is the calculation time, and (b) is the relative accuracy;
图14为本发明实施例涉及的三种方法在不同高斯噪声下的计算结果,其中 (a)为本发明所提出的方法,(b)为贪婪三角形算法,(c)为泊松曲面重建算法;Figure 14 is the calculation results of the three methods involved in the embodiment of the present invention under different Gaussian noises, where (a) is the method proposed by the present invention, (b) is the greedy triangle algorithm, and (c) is the Poisson surface reconstruction algorithm ;
图15为本发明实施例涉及的真实实验1,其中(a)为“3S”雕塑,(b)为目标区 域1,(c)为湖北科技学院体育场,(d)为目标区域2;Fig. 15 is the
图16为本发明实施例涉及的真实实验2,其中(a1)为Horse的原始几何模型, (b1)为Horse的点云数据,(c1)为Horse的超体素分割结果;(a2)为Skeleton Hand 的原始几何模型,(b2)为Skeleton Hand的点云数据,(c2)为Skeleton Hand的超体 素分割结果。Fig. 16 is the
具体实施方式Detailed ways
以下结合附图对本发明涉及的基于点云数据快速计算复杂表面表面积的方 法的具体实施方案进行详细地说明。The specific embodiment of the method for calculating complex surface surface area based on point cloud data that the present invention relates to is described in detail below in conjunction with accompanying drawing.
<实施例><Example>
如图1所示,本实施例所提供的基于点云数据快速计算复杂表面表面积的方 法包括以下步骤:As shown in Figure 1, the method for calculating complex surface surface area quickly based on point cloud data provided by the present embodiment comprises the following steps:
步骤1.为了方便展示本发明方法计算过程,这里先选择如图2所示的立方体 仿真点云进行示例,通过对边长为1m的立方体的六个面进行采样而获取一个仿 真点云Porig,每个面都包含26,896个点,总点数为161,376。超体素分割涉及两个 参数:每个点的最近邻数εk和距离尺度εd,εd可被视为面片的平均边长。在我们 的实验中,εk设置为20。εd不能由固定值确定,而是视具体情况而定,如果原始 点云数据包含丰富的(50%以上)平面特征,则应将εd设置为稍大(例如0.5m), 如果点云数据包含丰富的(超过50%)曲面特征,则应将εd设置为稍小(例如0.25 m)。所提出的方法涉及两个参数:ε1和ε2,本实施例中,ε1设置为200,ε2设置为 Fporj平均点间距的10倍。除非另有说明,否则以上参数设置将用于本实施例中涉及的所有实验而无需进行调整。经过超体素分割,共生成了28个面片Ffac。对于生 成的每个面片Ffac,均采用基于PCA(Principal Component Analysis)的稳健平面拟 合方进行拟合,设置迭代次数为200,将Ffac上的所有点都投影至拟合面上,如图 3所示,经过投影,具有噪声的小面片变得非常平坦,这非常有利于边缘点的提 取和面积计算。
步骤2.如图4所示,对投影后的面片Fporj进行刚体变换,以使其法向量与Z轴 平行(即刚体变换后的平面与X-Y面平行),进而得到刚体变换后的点云面片 Fbou。
步骤3.如图5所示,经过刚体变换后,空间中具有任意姿态角的平面将与X- Y面平行,意味着每个点的z坐标值都相同,这样就将三维数据降为二维数据。接 下来,使用改进的自适应α-shape算法提取Ftran中的边缘点Fbou(仅x和y坐标值参与 运算),如图6所示,成功提取出面片的边缘点。
步骤4.如图7所示,以北方向为正方向,对边缘点按顺时针进行排序,计算 排序后每两点之间的欧式距离,如果大于0.01m,则利用改进的3次B样条曲线进 行插值,使得任意相邻两点间的距离都不大于0.01m,如图8所示,为稀疏边缘点 的内插图。
步骤5.如图9所示,计算每个面片的面积Sarea,汇总得到总面积Sall。
如图10所示,为了进一步说明本方法的可靠性,除立方体外,另外选了两个 模拟点云进行测试,其中球体Sphere的半径为1m,总点数为160,000,εd设置为 0.25m,Torus内径为0.3m,外径为1m,总点数为160,000,εd设置为0.5m。点云 一般非常稠密,为了提高效率,通常需要在分割之前对点云进行下采样处理。为 测试不同采样率对计算结果的影响,这里以五个不同密度级别对三个仿真点云进 行了下采样。表1显示了本发明所提出的表面积计算方法在三个仿真点云上的统 计结果,从中可以得出以下结论:所提出的表面积计算方法非常高效且结果可靠, 在平面结构和曲面(例如球体和圆环)上都可以得到与理论值高度吻合的计算结 果。As shown in Figure 10, in order to further illustrate the reliability of this method, in addition to the cube, two other simulated point clouds were selected for testing. The radius of the sphere Sphere is 1m, the total number of points is 160,000, and ε d is set to 0.25m. The inner diameter of Torus is 0.3m, the outer diameter is 1m, the total number of points is 160,000, and ε d is set to 0.5m. Point clouds are generally very dense. In order to improve efficiency, it is usually necessary to downsample the point cloud before segmentation. In order to test the influence of different sampling rates on the calculation results, three simulation point clouds were down-sampled at five different density levels. Table 1 shows the statistical results of the surface area calculation method proposed by the present invention on three simulation point clouds, from which the following conclusions can be drawn: the proposed surface area calculation method is very efficient and the result is reliable, in planar structures and curved surfaces (such as spheres And the ring) can get the calculation results which are highly consistent with the theoretical value.
为测试不同采样率对计算结果的影响,这里以五个不同密度级别对三个仿真 点云进行了下采样。如图11(a)和图11(b)所示,与直接在原始点云上进行表面积计 算相比,适当的采样不一定会降低相对精度,随着采样率的提高,计算效率大大 提高,且仍可以保持较高的可靠性和精度。In order to test the influence of different sampling rates on the calculation results, three simulation point clouds were down-sampled at five different density levels. As shown in Fig. 11(a) and Fig. 11(b), proper sampling does not necessarily reduce the relative accuracy compared to performing surface area calculation directly on the original point cloud, and the computational efficiency is greatly improved with the increase of sampling rate, And can still maintain high reliability and precision.
表1Table 1
为了进一步验证该方法的性能,使用贪婪三角形算法和泊松曲面重建算法对 采样后的点云进行重建(这两种算法均为现有技术方法),然后使用现成的软件CloudCompare来计算每个mesh格网的表面积。如图12所示,当表面光滑且点云均 匀分布时,贪婪三角形算法对采样率不敏感,在这种情况下,由贪婪三角形算法 计算的面积结果是高度可靠的。泊松曲面重建方法可以拟合并近似所有点,以生 成具有水密性和良好几何特征的封闭表面。尽管泊松曲面重建是一种很好的整体 重建方法,该方法仅适用于没有尖锐特征的光滑封闭表面。为了公平起见,仅将 前两种场景的重建结果用于比较实验。如图13(a)和图13(b)所示,尽管基于泊松表 面重构的计算表面积对于具有光滑表面的特定对象具有较高的精度,但是该方法 非常耗时,本发明提出的方法比基于泊松曲面重建发的方法快了一个数量级(10 倍以上)。实际上,受各种因素的影响,点云的表面通常充斥着大量随机噪声。 为了测试所提出方法的鲁棒性,接下来从带噪声的点云中进行面积计算,如图14(a)所示,即使存在大量噪声,本发明所提出的方法也可以很好地进行面积计算, 说明该方法具有良好的抗噪性。由于贪婪三角形算法对噪声非常敏感,因此这里 仅设置了几个较小的高斯噪声值,尽管如此,随着噪声的增加,计算精度迅速降 低(见图14(b))。如图14(c)所示,泊松曲面重建算法对高斯噪声不敏感,但该算法 不适用于所有类型的表面,准确的说,仅适用于某些特定表面。与现有技术比较 的结果显示,本发明方法不仅计算速度大大提高,而且具有更好的抗噪性和计算 精度,适用于所有类型的表面。In order to further verify the performance of the method, the greedy triangle algorithm and the Poisson surface reconstruction algorithm are used to reconstruct the sampled point cloud (these two algorithms are prior art methods), and then the off-the-shelf software CloudCompare is used to calculate the value of each mesh grid. The surface area of the mesh. As shown in Fig. 12, when the surface is smooth and the point cloud is evenly distributed, the greedy triangle algorithm is not sensitive to the sampling rate, in this case, the area result calculated by the greedy triangle algorithm is highly reliable. The Poisson surface reconstruction method fits and approximates all points to generate a closed surface that is watertight and has good geometrical characteristics. Although Poisson surface reconstruction is a good overall reconstruction method, it is only suitable for smooth closed surfaces without sharp features. For the sake of fairness, only the reconstruction results of the first two scenarios are used for comparison experiments. As shown in Figure 13(a) and Figure 13(b), although the calculated surface area based on Poisson surface reconstruction has high accuracy for specific objects with smooth surfaces, this method is very time-consuming, and the method proposed in the present invention It is an order of magnitude (more than 10 times) faster than methods based on Poisson surface reconstruction. In fact, affected by various factors, the surface of point cloud is usually filled with a lot of random noise. In order to test the robustness of the proposed method, the area calculation is next performed from the noisy point cloud, as shown in Fig. 14(a), the proposed method can perform area well even in the presence of a large The calculation shows that the method has good noise immunity. Since the greedy triangle algorithm is very sensitive to noise, only a few small Gaussian noise values are set here. However, with the increase of noise, the calculation accuracy decreases rapidly (see Figure 14(b)). As shown in Figure 14(c), the Poisson surface reconstruction algorithm is not sensitive to Gaussian noise, but this algorithm is not suitable for all types of surfaces, to be precise, it is only suitable for some specific surfaces. The results compared with the prior art show that the method of the invention not only greatly improves the calculation speed, but also has better noise resistance and calculation accuracy, and is applicable to all types of surfaces.
如图15(a)所示,2020年12月,我们于武汉大学使用Faro Focuss 150激光扫描 仪扫描了名为“3S”的雕塑,采样率为1/20,雕塑由平面和弯曲部分组成,中间 部分为一个四棱柱。为了便于比较并避免由点云配准引起的误差,这里仅使用从 一个扫描角度采集的点云数据,如图15(b)所示,仅保留中间的平坦部分,点数为 130,308。接下来使用LeicaAT960激光跟踪仪获取目标区域六个角的精确坐标, 激光跟踪仪的点位测量精度为15±6微米,测量所得面积为6.9218m2。注意,参数 εd设置为0.5m,使用三角形来计算面积。如图15(c)所示,采用基于常州新翼X650 飞行平台和Regel Mini300激光扫描仪的低空无人机采集了湖北科技学院的三维 彩色点云,并选择相对平坦的足球场作为目标区域(见图15(d)),目标区域点数为 2,974,086。然后使用Topcon全站仪测量足球场四个角的坐标,测得所得面积为 7154.722m2。注意,因目标区域的点云比较稀疏,参数εd设置为5m,使用扇形 来计算面积。两个目标区域的面积计算结果列于表2中,可以看出,本发明所提 出的方法在可接受的时间内成功计算出了测试点云数据的面积,与实测值非常接 近,大幅提高了工作效率。As shown in Figure 15(a), in December 2020, we scanned a sculpture named "3S" with a
表2Table 2
如图16所示,为测试本发明所提出的方法对复杂表面的处理效果,这里选择 了两个名为马(Horse)和骨架手(Skeleton Hand)的几何模型进行详细展示。两 种模型都是由佐治亚理工学院的大型几何模型档案馆制作的,第一个模型被放大 10倍以接近真实比例,而第二个模型则保持不变。参考值由CloudCompare计算得 出。参数εd设置为0.2m,使用扇形来计算面积。如表3所示,即使对于非常复杂 的曲面,本发明所提出的方法仍然可以取得良好的效果。As shown in Figure 16, in order to test the processing effect of the method proposed by the present invention on complex surfaces, two geometric models named Horse and Skeleton Hand are selected for detailed display. Both models were produced from Georgia Tech's large archive of geometric models, the first model was enlarged 10 times to approximate true scale, while the second model was left unchanged. The reference value is calculated by CloudCompare. The parameter ε d is set to 0.2m, and the sector is used to calculate the area. As shown in Table 3, even for very complex curved surfaces, the method proposed in the present invention can still achieve good results.
表3table 3
以上实施例仅仅是对本发明技术方案所做的举例说明。本发明所涉及的基于 点云数据快速计算复杂表面表面积的方法并不限定于在以上实施例中所描述的 内容,而是以权利要求所限定的范围为准。本发明所属领域技术人员在该实施例 的基础上所做的任何修改或补充或等效替换,都在本发明的权利要求所要求保护 的范围内。The above embodiments are merely illustrations for the technical solution of the present invention. The method for quickly calculating the surface area of complex surfaces based on point cloud data involved in the present invention is not limited to the content described in the above embodiments, but is subject to the scope defined in the claims. Any modification or supplement or equivalent replacement made by those skilled in the art of the present invention on the basis of the embodiment is within the scope of protection required by the claims of the present invention.
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211256840.5A CN115760954A (en) | 2022-10-14 | 2022-10-14 | Method for rapidly calculating surface area of complex surface based on point cloud data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211256840.5A CN115760954A (en) | 2022-10-14 | 2022-10-14 | Method for rapidly calculating surface area of complex surface based on point cloud data |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115760954A true CN115760954A (en) | 2023-03-07 |
Family
ID=85351408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211256840.5A Pending CN115760954A (en) | 2022-10-14 | 2022-10-14 | Method for rapidly calculating surface area of complex surface based on point cloud data |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115760954A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116839511A (en) * | 2023-07-28 | 2023-10-03 | 江苏建筑职业技术学院 | Surface area measurement method of irregular surfaces based on photogrammetry technology |
-
2022
- 2022-10-14 CN CN202211256840.5A patent/CN115760954A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116839511A (en) * | 2023-07-28 | 2023-10-03 | 江苏建筑职业技术学院 | Surface area measurement method of irregular surfaces based on photogrammetry technology |
CN116839511B (en) * | 2023-07-28 | 2024-03-19 | 江苏建筑职业技术学院 | Surface area measurement method of irregular surfaces based on photogrammetry technology |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ji et al. | A novel simplification method for 3D geometric point cloud based on the importance of point | |
CN104748750B (en) | A kind of model constrained under the Attitude estimation of Three dimensional Targets in-orbit method and system | |
CN105654483B (en) | The full-automatic method for registering of three-dimensional point cloud | |
Pan et al. | Voxfield: Non-projective signed distance fields for online planning and 3d reconstruction | |
CN101751695B (en) | Estimating method of main curvature and main direction of point cloud data | |
CN113936090B (en) | Method, device, electronic device and storage medium for three-dimensional human body reconstruction | |
CN104616349B (en) | Scattered point cloud data based on local surface changed factor simplifies processing method | |
WO2021203711A1 (en) | Isogeometric analysis method employing geometric reconstruction model | |
CN109272537A (en) | Panoramic point cloud registration method based on structured light | |
CN116543117A (en) | High-precision large-scene three-dimensional modeling method for unmanned aerial vehicle images | |
CN105300383A (en) | Unmanned aerial vehicle air refueling position and attitude estimation method based on backtracking and searching | |
CN110988876B (en) | Closed robust double-baseline InSAR phase unwrapping method and system and readable storage medium | |
CN115760954A (en) | Method for rapidly calculating surface area of complex surface based on point cloud data | |
CN106023314A (en) | B spline master curve fitting method based on rotary axis direction mapping | |
CN109345571B (en) | A Point Cloud Registration Method Based on Extended Gaussian Image | |
CN107818578B (en) | Rapid face model reconstruction algorithm and system based on registration method | |
CN107481319B (en) | Hidden surface random point cloud generator | |
An et al. | Self-adaptive polygon mesh reconstruction based on ball-pivoting algorithm | |
CN116563317B (en) | Automatic contour extraction method of building triangular net model based on segmentation optimization | |
Wei et al. | NeRF-based large-scale urban true digital orthophoto map generation method | |
Dyshkant | Comparison of point clouds acquired by 3d scanner | |
Wu et al. | Consistent correspondence between arbitrary manifold surfaces | |
CN118052840B (en) | Real-time attitude information calculation method, device, equipment and storage medium | |
CN111445385A (en) | Three-dimensional object planarization method based on RGB color mode | |
Tian et al. | Robust Surface Area Measurement of Unorganized Point Clouds Based on Multi-scale Super-voxel Segmentation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |