CN112465991B - A method for denoising tunnel point cloud and generating visualization model - Google Patents
A method for denoising tunnel point cloud and generating visualization model Download PDFInfo
- Publication number
- CN112465991B CN112465991B CN202011394518.XA CN202011394518A CN112465991B CN 112465991 B CN112465991 B CN 112465991B CN 202011394518 A CN202011394518 A CN 202011394518A CN 112465991 B CN112465991 B CN 112465991B
- Authority
- CN
- China
- Prior art keywords
- tunnel
- point cloud
- points
- data
- noise
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000012800 visualization Methods 0.000 title claims abstract description 15
- 238000012545 processing Methods 0.000 claims abstract description 12
- 238000007781 pre-processing Methods 0.000 claims abstract description 5
- 230000000007 visual effect Effects 0.000 claims abstract 3
- 239000011159 matrix material Substances 0.000 claims description 50
- 230000008569 process Effects 0.000 claims description 18
- 239000013598 vector Substances 0.000 claims description 14
- 238000006243 chemical reaction Methods 0.000 claims description 9
- 230000009467 reduction Effects 0.000 claims description 7
- 230000005484 gravity Effects 0.000 claims description 3
- 238000003672 processing method Methods 0.000 claims description 3
- 238000012847 principal component analysis method Methods 0.000 claims 2
- 238000012935 Averaging Methods 0.000 claims 1
- 238000010276 construction Methods 0.000 claims 1
- 238000002407 reforming Methods 0.000 claims 1
- 230000001502 supplementing effect Effects 0.000 claims 1
- 238000000513 principal component analysis Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
Landscapes
- Engineering & Computer Science (AREA)
- Architecture (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
Description
技术领域technical field
本发明涉及一种隧道点云去噪和生成可视化模型的方法,属于图形学和可视化技术领域。The invention relates to a method for denoising a tunnel point cloud and generating a visualization model, and belongs to the technical field of graphics and visualization.
背景技术Background technique
隧道作为贯穿山体、河流的交通工程,是城市交通系统的重要组成部分。而隧道内部空间狭小,照明条件差等因素给隧道测量造成一定困难。三维点云激光扫描技术作为一种新型测绘技术具有无需光照、非接触测量、自动化程度高、可实现全面信息采集和作业周期短等优势,被广泛应用于隧道测量。As a traffic project that runs through mountains and rivers, tunnels are an important part of urban traffic systems. However, factors such as the narrow space inside the tunnel and poor lighting conditions have caused certain difficulties for tunnel measurement. As a new type of surveying and mapping technology, 3D point cloud laser scanning technology has the advantages of no need for illumination, non-contact measurement, high degree of automation, comprehensive information collection and short operation cycle, and is widely used in tunnel surveying.
目前基于激光扫描大多直接对点云信息进行可视化,效果不够理想;存在的隧道三角网格模型可视化算法,也只能支持少量数据的网格生成。At present, most of the point cloud information is directly visualized based on laser scanning, and the effect is not ideal; the existing tunnel triangular mesh model visualization algorithm can only support the grid generation of a small amount of data.
在可视化的过程中,最重要的一步是去除采集的数据中车辆、行人、灯管等噪声点。现存的方法大多依赖隧道的设计情况;对于年久、图纸缺失的隧道,采用的方法复杂且效率较低。如何提供一种方法简单、效率高,且只基于点云数据的可视化模型,成为亟待解决的技术问题。In the process of visualization, the most important step is to remove noise points such as vehicles, pedestrians, and light tubes in the collected data. Existing methods mostly rely on the design of the tunnel; for old tunnels with missing drawings, the methods used are complex and inefficient. How to provide a simple and efficient visualization model based only on point cloud data has become an urgent technical problem to be solved.
发明内容Contents of the invention
针对现有技术的不足,本发明提供一种隧道点云去噪和生成可视化模型的方法,只依赖于点云数据生成可视化模型,并且能够将点云分成了多个部分处理,可满足大量点云数据处理,效率较高。Aiming at the deficiencies of the prior art, the present invention provides a method for denoising tunnel point clouds and generating a visualization model, which only relies on point cloud data to generate a visualization model, and can divide the point cloud into multiple parts for processing, which can satisfy a large number of points Cloud data processing, high efficiency.
术语解释:Explanation of terms:
1、包围盒:本发明中是指能够完全包围住隧道的虚拟长方体。1. Bounding box: in the present invention, it refers to a virtual cuboid that can completely surround a tunnel.
本发明采用以下技术方案:The present invention adopts following technical scheme:
一种隧道点云去噪和生成可视化模型的方法,包括:A method for denoising a tunnel point cloud and generating a visualization model, comprising:
步骤1.采集隧道三维点云,并对隧道点云数据预处理;Step 1. Collect the 3D point cloud of the tunnel, and preprocess the tunnel point cloud data;
首先利用三维激光扫描仪采集隧道三维点云,在采集过程中,坐标系的y轴定义为隧道走向方向,z轴垂直于地面,x轴服从右手法则;First, use a 3D laser scanner to collect 3D point clouds of the tunnel. During the collection process, the y-axis of the coordinate system is defined as the direction of the tunnel, the z-axis is perpendicular to the ground, and the x-axis obeys the right-hand rule;
然后对导出的点云数据进行预处理,导出点云数据时,将点云的坐标信息导出;Then preprocess the exported point cloud data, and export the coordinate information of the point cloud when exporting the point cloud data;
预处理的过程包括:The preprocessing process includes:
1.1、生成点云切片:将点云数据根据隧道走向进行拆分,拆分成3~5米长的点云切片;1.1. Generate point cloud slices: split the point cloud data according to the direction of the tunnel, and split them into point cloud slices with a length of 3 to 5 meters;
1.2、对每一点云切片进行抽稀处理,处理时多个点云切片采用并行方式单独处理:1.2. Perform thinning processing for each point cloud slice, and multiple point cloud slices are processed separately in parallel:
采用现有的栅格化重心抽稀方法对每一点云切片进行抽稀处理,栅格边长的选择取决于对最终网格的精度要求,栅格边长越小,保留的点就越多,生成的网格模型越平滑;Use the existing grid center of gravity thinning method to thin each point cloud slice. The selection of the grid side length depends on the accuracy requirements of the final grid. The smaller the grid side length, the more points are retained. , the smoother the generated mesh model is;
1.3、确定切片包围盒:取切片点云坐标的最值确定一个长方形包围盒;1.3. Determine the slice bounding box: take the maximum value of the slice point cloud coordinates to determine a rectangular bounding box;
步骤2.去噪点:Step 2. Denoising points:
由于隧道情况复杂,采用三维激光扫描仪进行扫描时包括干扰物,根据噪声的位置,分为隧道内噪声点和隧道外噪声点,隧道内噪声点根据空间分布情况又分为移动目标造成的离群点和隧道内设施造成的附属物噪声点,根据已有的点排列的几何特征和隧道实际情况进行去噪点处理,隧道内噪声和隧道外噪声分别处理。Due to the complexity of the tunnel, the interference objects are included when scanning with a 3D laser scanner. According to the position of the noise, it is divided into noise points inside the tunnel and noise points outside the tunnel. Group points and appendage noise points caused by facilities in the tunnel are denoised according to the geometric characteristics of the existing point arrangement and the actual situation of the tunnel, and the noise inside the tunnel and the noise outside the tunnel are processed separately.
优选的,去除隧道外噪声点的过程为:Preferably, the process of removing noise points outside the tunnel is:
对每一个点云切片,其包围盒在x轴方向的范围已知,在该方向按分米级划分成点云列(点云列优选为0.5米),统计每列中点的数量,将较少的列进行排除删除(点数少于50的列可认为较少的列);For each point cloud slice, the range of its bounding box in the x-axis direction is known, and in this direction, it is divided into point cloud columns by decimeter level (the point cloud column is preferably 0.5 meters), and the number of midpoints in each column is counted, which will be compared Exclude and delete less columns (columns with less than 50 points can be considered as fewer columns);
在z轴方向上作同样处理,即在z方向按分米级划分成点云列(点云列宽优选为0.5m),统计每列中点的数量,将较少的列进行删除(点数少于50的列可认为为较少的列);Do the same processing in the z-axis direction, that is, divide the z-direction into point cloud columns (the point cloud column width is preferably 0.5m), count the number of midpoints in each column, and delete less columns (fewer points) in the z-axis direction. Columns greater than 50 can be considered fewer columns);
优选的,去除隧道内噪声点的过程,包括以下步骤:Preferably, the process of removing noise points in the tunnel includes the following steps:
a、对每个切片再次进行拆分,在xoz平面上再次拆分成若干行、列,从而形成隧道块,即点云块;a. Split each slice again, and split it into several rows and columns on the xoz plane to form a tunnel block, that is, a point cloud block;
优选的,行、列的宽度均取0.5m左右,拆分成0.5m*0.5m左右的块,不宜过大,以免后续求得的拟合平面拟合程度不够;Preferably, the width of the row and column is about 0.5m, and it is split into blocks of about 0.5m*0.5m, which should not be too large, so as to avoid insufficient fitting degree of the fitting plane obtained subsequently;
b、采用主成分分析法(PCA)对每一隧道块进行坐标转换,寻找到拟合平面:b. Use Principal Component Analysis (PCA) to transform the coordinates of each tunnel block to find the fitting plane:
将步骤a处理得到的点云块中的原始三维数据按列组成3行m列的矩阵X,其中m表示点云块中的点数;The original three-dimensional data in the point cloud block obtained by step a is processed into a matrix X of 3 rows of m columns, wherein m represents the number of points in the point cloud block;
将矩阵X的每一行(代表同一个轴向上的数据)进行零均值化,即减去这一行的均值;Each row of the matrix X (representing the data on the same axis) is zero-meanized, that is, the mean value of this row is subtracted;
求出协方差矩阵其中,C为求得的协方差矩阵,m为点云块中的点数;find the covariance matrix Among them, C is the obtained covariance matrix, and m is the number of points in the point cloud block;
求出协方差矩阵的特征值及对应的特征向量;Find the eigenvalues and corresponding eigenvectors of the covariance matrix;
将特征值向量按对应特征值大小从上到下按行排列成矩阵,取其为矩阵 Arrange the eigenvalue vectors into a matrix from top to bottom according to the corresponding eigenvalue size, and take it as a matrix
Y=PX即为坐标转换后的数据;Y=PX is the data after coordinate conversion;
对Y的每一行数据求平均值,得到一个坐标M;Calculate the average value of each row of data in Y to obtain a coordinate M;
特征向量x1,x2与坐标M确定的平面为该块的拟合平面,x3的方向与拟合平面的法向量方向共线;The plane determined by the eigenvectors x 1 , x 2 and the coordinate M is the fitting plane of the block, and the direction of x 3 is collinear with the normal vector direction of the fitting plane;
划定x3方向的阈值,该阈值的选取依据步骤a中行列宽度的选取,可以选取到厘米级(优选为0.05m);该步骤可以有效的去除离隧道壁比较近的附属物噪声点。Define the threshold in the x3 direction, the selection of the threshold is based on the selection of the row and column width in step a, and can be selected to the centimeter level (preferably 0.05m); this step can effectively remove the noise points of the appendages that are relatively close to the tunnel wall.
c、隧道的几何形状接近于半椭圆型,G和F代表相邻的两个含隧道壁的隧道块中的点,角α和β分别为G、F所在隧道块的拟合平面在xoz平面上的投影与x轴的夹角,当G与F距离很小时,角α和β大小差距很小,所以可以通过β确定α的近似值,从而得到G所在隧道块的近似拟合平面,通过在拟合平面法向量方向划定阈值,可以有效删除灯棍,车辆等离隧道壁有一定距离的离群点;c. The geometric shape of the tunnel is close to a semi-elliptical shape. G and F represent the points in two adjacent tunnel blocks containing tunnel walls, and the angles α and β are respectively the fitting planes of the tunnel blocks where G and F are located in the xoz plane The angle between the projection above and the x-axis, when the distance between G and F is very small, the difference between the angles α and β is very small, so the approximate value of α can be determined by β, so as to obtain the approximate fitting plane of the tunnel block where G is located. Fitting the normal vector direction of the plane to define the threshold can effectively delete outliers such as light sticks and vehicles with a certain distance from the tunnel wall;
对每一隧道块进行以下操作:Do the following for each tunnel block:
取一隧道块即为O,然后找到该隧道块O的前一块包含隧道壁的隧道块(由于需要的是包含隧道壁的隧道块,所以“前一块”可能是位于O左侧的隧道块,也可能是位于O下侧的隧道块),即为O1,根据O1的特征向量组成的矩阵P0,计算出本隧道块O1坐标转换后的矩阵Y0,与步骤b的过程类似,划定x3所在直线方向的阈值。Get a tunnel block and be O, then find the tunnel block that contains the tunnel wall before the tunnel block O (due to the tunnel block that contains the tunnel wall, so the "previous block" may be the tunnel block on the left side of O, It may also be the tunnel block located on the lower side of O), that is, O 1 . According to the matrix P 0 formed by the eigenvectors of O 1 , calculate the matrix Y 0 of the tunnel block O 1 after coordinate conversion, which is similar to the process of step b , to delineate the threshold of the direction of the line where x 3 is located.
d、由于很多隧道地面包含人行道的原因,地面与隧道之间有高度差,c步骤中的算法只适合从地面起三层以上的数据;对于靠近地面的部分,根据第三层的数据形成的拟合平面,确定这部分的数据斜率范围,从而将隧道壁与地面完全分离。d. Because the ground of many tunnels contains sidewalks, there is a height difference between the ground and the tunnel. The algorithm in step c is only suitable for the data of more than three layers from the ground; for the part close to the ground, the data formed based on the data of the third layer Fit the plane and determine the slope range of the data for this part, so that the tunnel wall is completely separated from the ground.
优选的,在去噪点之后进行重整数据:Preferably, reshape the data after denoising:
依据包围盒x轴方向的大小将隧道平均分成左右两边,再将两边对z轴方向按层进行划分(优选为:在z轴方向不变,还是按照0.5m宽的层进行划分),划分为层数据。Divide the tunnel into left and right sides on average according to the size of the bounding box in the x-axis direction, and then divide the two sides into layers in the z-axis direction (preferably: keep the z-axis direction unchanged, or divide according to 0.5m wide layers), divided into layer data.
步骤3.补缝、补面:Step 3. Fill seams and surfaces:
3.1、补缝:相邻切片或相邻层的点云,在分界处划出5%的点为重复点集;3.1. Seam filling: Point clouds of adjacent slices or adjacent layers, 5% of the points drawn at the boundary are repeated point sets;
由于后续需要按层对点进行三角化,使得段与段、层与层之间的面均有缝隙,处理方法是将相邻切片或相邻层的点云,在分界处划出5%的点为重复点集,相邻的两部分均存在该重复点集,从而保证在构面时面是衔接的;Due to the subsequent need to triangulate the points by layer, there are gaps between segments and layers, and the processing method is to draw 5% of the point cloud of adjacent slices or adjacent layers at the boundary The point is a repeated point set, and the repeated point set exists in two adjacent parts, so as to ensure that the faces are connected when faceting;
3.2、补面:对每一层的点云上下10%点进行统计(该值可以根据具体情况设置,不宜过小造成误差),当该部分点数小于该层的5%,确定该层上部、下部是否存在缺失,对该层的上、下面的层进行搜索,直到搜索到非缺部分,在非缺失层加入重复点集,使得在下一步构面后,整个隧道曲面保持完整、连续;3.2. Complement surface: make statistics on the upper and lower 10% points of the point cloud of each layer (this value can be set according to the specific situation, and it should not be too small to cause errors). When the number of points in this part is less than 5% of the layer, determine the upper and lower parts of the layer. Whether there is a missing part in the lower part, search the upper and lower layers of the layer until the non-missing part is found, and add repeated point sets in the non-missing layer, so that the entire tunnel surface remains complete and continuous after the next step of faceting;
由于灯棍等大面积的附属物噪点造成的点云缺失,导致隧道构面后会出现大面积的缺失,因此,本发明对这些缺失的地方进行补面。Due to the lack of point clouds caused by large-area appendage noise such as light sticks, large-area deletions will appear after tunnel faceting. Therefore, the present invention complements these missing places.
步骤4.构面,具体包括:Step 4. Facet, including:
4.1、对每一个层数据中的三维点坐标使用主成分分析法(PCA)降维成二维数据;4.1. Use principal component analysis (PCA) to reduce the dimensionality of the three-dimensional point coordinates in each layer of data into two-dimensional data;
进一步为:由于三维的构面算法相较于二维的复杂度更高,基于建模效率的考虑,将每一层的三维点根据拟合平面降维成二维点,与步骤b类似:Further: Since the 3D faceting algorithm is more complex than the 2D facet algorithm, based on the consideration of modeling efficiency, the 3D points of each layer are reduced to 2D points according to the fitting plane, similar to step b:
首先将每一层的三维点按列组成3行n列的矩阵X1,将矩阵X1的每一行进行零均值化,即减去这一行的均值;First, the three-dimensional points of each layer are formed into a matrix X 1 with 3 rows and n columns by columns, and each row of the matrix X 1 is zero-meanized, that is, the mean value of this row is subtracted;
求出协方差矩阵其中C1表示求得的协方差矩阵,n为该层中点的数量;find the covariance matrix Where C 1 represents the obtained covariance matrix, and n is the number of points in the layer;
求出协方差矩阵的特征值及对应的特征向量;Find the eigenvalues and corresponding eigenvectors of the covariance matrix;
将特征值向量按对应特征值大小从上到下按行排列成矩阵,取其为矩阵 Arrange the eigenvalue vectors into a matrix from top to bottom according to the corresponding eigenvalue size, and take it as a matrix
Y1=P1X1即为坐标转换后的数据;Y 1 = P 1 X 1 is the data after coordinate transformation;
求出每一层数据坐标转换后的矩阵Y1,Y1的前两行数据即为降维后的坐标集Y1’;Calculate the matrix Y 1 after the coordinate conversion of each layer of data, and the first two rows of data in Y 1 are the coordinate set Y 1 ' after dimensionality reduction;
4.2、对每一层数据得到的二维数据Y1’进行Delaunay三角刨分,将二维点与降维前的三维坐标对应,生成三角网格模型,再将不同层不同切片的网格模型进行组合。4.2. Perform Delaunay triangulation on the two-dimensional data Y 1 ' obtained from each layer of data, correspond the two-dimensional points to the three-dimensional coordinates before dimensionality reduction, generate a triangular mesh model, and then integrate the mesh models of different layers and slices to combine.
本步骤中,Delaunay三角刨分过程可采用现有技术,此处不再赘述。In this step, the Delaunay triangulation process can adopt the existing technology, which will not be repeated here.
步骤5.添加地面:
由于地面信息并不重要,所以舍弃所有关于地面的原始信息,用四边形去构建每一个切片的地面。Since the ground information is not important, all the original information about the ground is discarded, and quadrilaterals are used to construct the ground of each slice.
本发明未详尽之处,均可采用现有技术进行。The present invention is not detailed, all can adopt prior art to carry out.
本发明的有益效果为:The beneficial effects of the present invention are:
1、该发明只是基于点云数据生产模型,无需知道除点云信息外的其他信息作为辅助参考,如隧道原始设计情况等,简单方便,适用性强。1. The invention is only based on the point cloud data production model, and does not need to know other information except the point cloud information as auxiliary reference, such as the original design of the tunnel, etc., which is simple, convenient and has strong applicability.
2、本发明是分块进行拟合,拟合程度高,噪点去除效果好,对复杂隧道也有很好的效果。2. The present invention performs fitting by blocks, which has a high degree of fitting and a good noise removal effect, and also has a good effect on complex tunnels.
3、本发明的去噪点与构面是在很小的独立点集上进行,时间效率高,并行程度大。3. The denoising points and facets of the present invention are performed on a small independent point set, which has high time efficiency and a large degree of parallelism.
4、本发明的多个点云切片采用并行方式单独处理,可兼顾细节和效率,对数据量较大的点云数据也有较好的处理效果。4. Multiple point cloud slices of the present invention are processed separately in a parallel manner, which can take into account details and efficiency, and has a better processing effect on point cloud data with a large amount of data.
附图说明Description of drawings
图1为隧道横截面结构示意图;Figure 1 is a schematic diagram of the cross-sectional structure of the tunnel;
图2为原始隧道点云切片;Figure 2 is a slice of the original tunnel point cloud;
图3为去除噪点后的点云切片;Figure 3 is a point cloud slice after removing noise;
图4为未补缝补面时效果图;Fig. 4 is the effect diagram when the seam is not repaired;
图5为完成后的效果图;Fig. 5 is the rendering after completion;
具体实施方式:Detailed ways:
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述,但不仅限于此,本发明未详尽说明的,均按本领域常规技术。In order to make the technical problems, technical solutions and advantages to be solved by the present invention clearer, the following will be described in detail with reference to the accompanying drawings and specific embodiments, but not limited thereto, and those not described in detail in the present invention shall be conventional techniques in this field.
一种隧道点云去噪和生成可视化模型的方法,包括:A method for denoising a tunnel point cloud and generating a visualization model, comprising:
步骤1.采集隧道三维点云,如图2所示,为原始隧道点云切片,并对隧道点云数据预处理;Step 1. Acquire the 3D point cloud of the tunnel, as shown in Figure 2, which is a slice of the original tunnel point cloud, and preprocess the tunnel point cloud data;
本发明所使用的三维激光扫描仪为TrimbleSX10影像扫描仪,所示例隧道为济南开元隧道,首先利用三维激光扫描仪采集隧道三维点云,在采集过程中,坐标系的y轴定义为隧道走向方向,z轴垂直于地面,x轴服从右手法则,如图1所示;The three-dimensional laser scanner used in the present invention is a TrimbleSX10 image scanner, and the illustrated tunnel is the Kaiyuan Tunnel in Jinan. First, the three-dimensional laser scanner is used to collect the three-dimensional point cloud of the tunnel. During the collection process, the y-axis of the coordinate system is defined as the direction of the tunnel. , the z-axis is perpendicular to the ground, and the x-axis obeys the right-hand rule, as shown in Figure 1;
然后对导出的点云数据进行预处理,导出点云数据时,将点云的坐标信息导出;Then preprocess the exported point cloud data, and export the coordinate information of the point cloud when exporting the point cloud data;
预处理的过程包括:The preprocessing process includes:
1.1、生成点云切片:将点云数据根据隧道走向进行拆分,拆分成3米长的点云切片,拆分过程中记录每个切片坐标轴的最值,作为包围盒的边界;1.1. Generate point cloud slices: split the point cloud data according to the direction of the tunnel, and split them into 3-meter-long point cloud slices. During the splitting process, record the maximum value of the coordinate axis of each slice as the boundary of the bounding box;
1.2、对每一点云切片进行抽稀处理,处理时多个点云切片采用并行方式单独处理:1.2. Perform thinning processing for each point cloud slice, and multiple point cloud slices are processed separately in parallel:
采用现有的栅格化重心抽稀方法对每一点云切片进行抽稀处理,栅格边长取0.02m;Use the existing grid center of gravity thinning method to thin each point cloud slice, and the grid side length is 0.02m;
1.3、确定切片包围盒:取切片点云坐标的最值确定一个长方形包围盒;1.3. Determine the slice bounding box: take the maximum value of the slice point cloud coordinates to determine a rectangular bounding box;
步骤2.去噪点:Step 2. Denoising points:
由于隧道情况复杂,采用三维激光扫描仪进行扫描时包括干扰物,根据噪声的位置,分为隧道内噪声点和隧道外噪声点,隧道内噪声点根据空间分布情况又分为移动目标造成的离群点和隧道内设施造成的附属物噪声点,根据已有的点排列的几何特征和隧道实际情况进行去噪点处理,隧道内噪声和隧道外噪声分别处理。Due to the complexity of the tunnel, the interference objects are included when scanning with a 3D laser scanner. According to the position of the noise, it is divided into noise points inside the tunnel and noise points outside the tunnel. Group points and appendage noise points caused by facilities in the tunnel are denoised according to the geometric characteristics of the existing point arrangement and the actual situation of the tunnel, and the noise inside the tunnel and the noise outside the tunnel are processed separately.
优选的,去除隧道外噪声点的过程为:Preferably, the process of removing noise points outside the tunnel is:
对每一个点云切片,其包围盒在x轴方向的范围已知,在该方向即x轴方向划分成0.5m宽的列,统计每列中点的数量,将点数少于50的列进行删除,从而缩小了数据在x轴方向的范围;For each point cloud slice, the range of its bounding box in the x-axis direction is known. In this direction, that is, the x-axis direction is divided into columns with a width of 0.5m. The number of midpoints in each column is counted, and the columns with less than 50 points are counted. Delete, thus reducing the range of data in the x-axis direction;
在z轴方向上作同样处理,从而将隧道外的噪点去除,即在z方向按0.5m划分成点云列,统计每列中点的数量,将点数少于50的列进行删除;Do the same in the z-axis direction to remove the noise outside the tunnel, that is, divide it into point cloud columns by 0.5m in the z-direction, count the number of points in each column, and delete the columns with less than 50 points;
优选的,去除隧道内噪声点的过程,包括以下步骤:Preferably, the process of removing noise points in the tunnel includes the following steps:
a、对每个切片再次进行拆分,在xoz平面上再次拆分成若干行、列,拆分成0.5m*0.5m的块,从而形成隧道块,即点云块;a. Split each slice again, split it into several rows and columns on the xoz plane, and split it into 0.5m*0.5m blocks, thus forming tunnel blocks, that is, point cloud blocks;
b、采用主成分分析法(PCA)对每一隧道块进行坐标转换,寻找到拟合平面:b. Use Principal Component Analysis (PCA) to transform the coordinates of each tunnel block to find the fitting plane:
将步骤a处理得到的点云块中的原始三维数据按列组成3行m列的矩阵X,其中m表示点云块中的点数;The original three-dimensional data in the point cloud block obtained by step a is processed into a matrix X of 3 rows of m columns, wherein m represents the number of points in the point cloud block;
将矩阵X的每一行(代表同一个轴向上的数据)进行零均值化,即减去这一行的均值;Each row of the matrix X (representing the data on the same axis) is zero-meanized, that is, the mean value of this row is subtracted;
求出协方差矩阵其中,C为求得的协方差矩阵,m为点云块中的点数;find the covariance matrix Among them, C is the obtained covariance matrix, and m is the number of points in the point cloud block;
求出协方差矩阵的特征值及对应的特征向量;Find the eigenvalues and corresponding eigenvectors of the covariance matrix;
将特征值向量按对应特征值大小从上到下按行排列成矩阵,取其为矩阵 Arrange the eigenvalue vectors into a matrix from top to bottom according to the corresponding eigenvalue size, and take it as a matrix
Y=PX即为坐标转换后的数据;Y=PX is the data after coordinate conversion;
对Y的每一行数据求平均值,得到一个坐标M;Calculate the average value of each row of data in Y to obtain a coordinate M;
特征向量x1,x2与坐标M确定的平面为该块的拟合平面,x3的方向与拟合平面的法向量方向共线;The plane determined by the eigenvectors x 1 , x 2 and the coordinate M is the fitting plane of the block, and the direction of x 3 is collinear with the normal vector direction of the fitting plane;
划定x3方向的阈值,该阈值的选取依据步骤a中行列宽度的选取,为0.05m,该步骤可以有效的去除离隧道壁比较近的附属物噪声点。Delineate the threshold in the x 3 direction. The selection of the threshold is based on the selection of the row and column width in step a, which is 0.05m. This step can effectively remove the noise points of the appendages that are relatively close to the tunnel wall.
c、如图1所示,隧道的几何形状接近于半椭圆型,G和F代表相邻的两个含隧道壁的隧道块中的点,图中的两个虚线分别代表G、F所在隧道块的拟合平面在xoz平面上的投影,由图可知,当G与F距离很小时,角α和β大小差距很小,所以可以通过β确定α的近似值,从而得到G所在隧道块的近似拟合平面,通过在拟合平面法向量方向划定阈值,可以有效删除灯棍,车辆等离隧道壁有一定距离的离群点;c. As shown in Figure 1, the geometric shape of the tunnel is close to a semi-elliptical shape. G and F represent points in two adjacent tunnel blocks containing tunnel walls. The two dotted lines in the figure represent the tunnels where G and F are respectively located. The projection of the fitting plane of the block on the xoz plane can be seen from the figure, when the distance between G and F is very small, the difference between the angles α and β is very small, so the approximate value of α can be determined by β, so as to obtain the approximate value of the tunnel block where G is located Fitting plane, by defining a threshold in the direction of the normal vector of the fitting plane, outliers such as light sticks and vehicles that are a certain distance away from the tunnel wall can be effectively deleted;
对每一隧道块进行以下操作:Do the following for each tunnel block:
取一隧道块即为O,然后找到该隧道块O的前一块包含隧道壁的隧道块(由于需要的是包含隧道壁的隧道块,所以“前一块”可能是位于O左侧的隧道块,也可能是位于O下侧的隧道块),即为O1,根据O1的特征向量组成的矩阵P0,计算出本隧道块O1坐标转换后的矩阵Y0,与步骤b的过程类似,划定x3所在直线方向的阈值,即法向量阈值,为0.1m,当遇到隧道壁缺失的情况,即此时如图1所示G所在的块是缺失的,那么阈值累加0.05米,直到G所在的块更新到非缺失的地方,将阈值恢复为0.1米。Get a tunnel block and be O, then find the tunnel block that contains the tunnel wall before the tunnel block O (due to the tunnel block that contains the tunnel wall, so the "previous block" may be the tunnel block on the left side of O, It may also be the tunnel block located on the lower side of O), that is, O 1 . According to the matrix P 0 formed by the eigenvectors of O 1 , calculate the matrix Y 0 of the tunnel block O 1 after coordinate conversion, which is similar to the process of step b , to delineate the threshold of the straight line direction where x 3 is located, that is, the threshold of the normal vector, which is 0.1m. When the tunnel wall is missing, that is, the block where G is located is missing as shown in Figure 1, then the threshold is accumulated by 0.05 meters , until the block where G is updated to a non-missing place, restore the threshold to 0.1m.
d、由于很多隧道地面包含人行道的原因,地面与隧道之间有高度差,c步骤中的算法只适合从地面起三层以上的数据;对于靠近地面的部分,根据第三层的数据形成的拟合平面,确定这部分的数据斜率范围,从而将隧道壁与地面完全分离。d. Because the ground of many tunnels contains sidewalks, there is a height difference between the ground and the tunnel. The algorithm in step c is only suitable for the data of more than three layers from the ground; for the part close to the ground, the data formed based on the data of the third layer Fit the plane and determine the slope range of the data for this part, so that the tunnel wall is completely separated from the ground.
优选的,在去噪点之后进行重整数据:Preferably, reshape the data after denoising:
依据包围盒x轴方向的大小将隧道平均分成左右两边,在z轴方向不变,还是按照0.5m宽的层进行划分,划分为层数据。According to the size of the bounding box in the x-axis direction, the tunnel is evenly divided into left and right sides, and the z-axis direction remains unchanged. It is still divided into layers with a width of 0.5m, and divided into layer data.
图3位去除噪点后的点云切片;Figure 3. Point cloud slice after noise removal;
步骤3.补缝、补面:Step 3. Fill seams and surfaces:
图4为未补缝、补面时的效果图,需要对其补缝和补面,具体为Figure 4 is the effect diagram when the seams are not patched and the surface is patched, and the seams and surfaces need to be patched, specifically
3.1、补缝:相邻切片或相邻层的点云,在分界处划出5%的点为重复点集;3.1. Seam filling: Point clouds of adjacent slices or adjacent layers, 5% of the points drawn at the boundary are repeated point sets;
由于后续需要按层对点进行三角化,使得段与段、层与层之间的面均有缝隙,处理方法是将相邻切片或相邻层的点云,在分界处划出5%的点为重复点集,相邻的两部分均存在该重复点集,从而保证在构面时面是衔接的;Due to the subsequent need to triangulate the points by layer, there are gaps between segments and layers, and the processing method is to draw 5% of the point cloud of adjacent slices or adjacent layers at the boundary The point is a repeated point set, and the repeated point set exists in two adjacent parts, so as to ensure that the faces are connected when faceting;
3.2、补面:对每一层的点云上下10%点进行统计(该值可以根据具体情况设置,不宜过小造成误差),当该部分点数小于该层的5%,确定该层上部、下部是否存在缺失,对该层的上、下面的层进行搜索,直到搜索到非缺部分,在非缺失层加入重复点集,使得在下一步构面后,整个隧道曲面保持完整、连续;3.2. Complement surface: make statistics on the upper and lower 10% points of the point cloud of each layer (this value can be set according to the specific situation, and it should not be too small to cause errors). When the number of points in this part is less than 5% of the layer, determine the upper and lower parts of the layer. Whether there is a missing part in the lower part, search the upper and lower layers of the layer until the non-missing part is found, and add repeated point sets in the non-missing layer, so that the entire tunnel surface remains complete and continuous after the next step of faceting;
由于灯棍等大面积的附属物噪点造成的点云缺失,导致隧道构面后会出现大面积的缺失,因此,本发明对这些缺失的地方进行补面。Due to the lack of point clouds caused by large-area appendage noise such as light sticks, large-area deletions will appear after tunnel faceting. Therefore, the present invention complements these missing places.
步骤4.构面,具体包括:Step 4. Facet, including:
4.1、对每一个层数据中的三维点坐标使用主成分分析法(PCA)降维成二维数据;4.1. Use principal component analysis (PCA) to reduce the dimensionality of the three-dimensional point coordinates in each layer of data into two-dimensional data;
进一步为:由于三维的构面算法相较于二维的复杂度更高,基于建模效率的考虑,将每一层的三维点根据拟合平面降维成二维点,与步骤b类似:Further: Since the 3D faceting algorithm is more complex than the 2D facet algorithm, based on the consideration of modeling efficiency, the 3D points of each layer are reduced to 2D points according to the fitting plane, similar to step b:
首先将每一层的三维点按列组成3行n列的矩阵X1,将矩阵X1的每一行进行零均值化,即减去这一行的均值;First, the three-dimensional points of each layer are formed into a matrix X 1 with 3 rows and n columns by columns, and each row of the matrix X 1 is zero-meanized, that is, the mean value of this row is subtracted;
求出协方差矩阵其中C1表示求得的协方差矩阵,n为该层中点的数量;find the covariance matrix Where C 1 represents the obtained covariance matrix, and n is the number of points in the layer;
求出协方差矩阵的特征值及对应的特征向量;Find the eigenvalues and corresponding eigenvectors of the covariance matrix;
将特征值向量按对应特征值大小从上到下按行排列成矩阵,取其为矩阵 Arrange the eigenvalue vectors into a matrix from top to bottom according to the corresponding eigenvalue size, and take it as a matrix
Y1=P1X1即为坐标转换后的数据;Y 1 = P 1 X 1 is the data after coordinate transformation;
求出每一层数据坐标转换后的矩阵Y1,Y1的前两行数据即为降维后的坐标集Y1’;Calculate the matrix Y 1 after the coordinate conversion of each layer of data, and the first two rows of data in Y 1 are the coordinate set Y 1 ' after dimensionality reduction;
4.2、对每一层数据得到的二维数据Y1’进行Delaunay三角刨分,将二维点与降维前的三维坐标对应,生成三角网格模型,再将不同层不同切片的网格模型进行组合。4.2. Perform Delaunay triangulation on the two-dimensional data Y 1 ' obtained from each layer of data, correspond the two-dimensional points to the three-dimensional coordinates before dimensionality reduction, generate a triangular mesh model, and then integrate the mesh models of different layers and slices to combine.
步骤5.添加地面:
由于地面信息并不重要,所以舍弃所有关于地面的原始信息,对于地面,用四边形去构建每一个切片的地面即可。Since the ground information is not important, all the original information about the ground is discarded. For the ground, quadrilaterals are used to construct the ground of each slice.
图5为通过本发明处理处理完成后的效果图。Fig. 5 is an effect diagram after the processing of the present invention is completed.
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。The above description is a preferred embodiment of the present invention, it should be pointed out that for those of ordinary skill in the art, without departing from the principle of the present invention, some improvements and modifications can also be made, and these improvements and modifications can also be made. It should be regarded as the protection scope of the present invention.
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011394518.XA CN112465991B (en) | 2020-12-02 | 2020-12-02 | A method for denoising tunnel point cloud and generating visualization model |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011394518.XA CN112465991B (en) | 2020-12-02 | 2020-12-02 | A method for denoising tunnel point cloud and generating visualization model |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112465991A CN112465991A (en) | 2021-03-09 |
CN112465991B true CN112465991B (en) | 2023-04-21 |
Family
ID=74805738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011394518.XA Active CN112465991B (en) | 2020-12-02 | 2020-12-02 | A method for denoising tunnel point cloud and generating visualization model |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112465991B (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113362464A (en) * | 2021-05-25 | 2021-09-07 | 北京路遥科技有限公司 | High-speed slicing method and high-speed slicing tool for point cloud data |
CN113420020A (en) * | 2021-07-02 | 2021-09-21 | 中易天建设工程技术(深圳)有限公司 | Tunnel point cloud data denoising method and device, computer equipment and storage medium |
CN114460554B (en) * | 2022-01-26 | 2024-08-27 | 广西新发展交通集团有限公司 | Karst cave three-dimensional imaging method based on ground penetrating radar multi-attribute fusion |
CN116142245B (en) * | 2022-09-09 | 2023-09-01 | 山东大学 | Small multifunctional integrated subway intelligent inspection vehicle and method |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107830839A (en) * | 2017-10-11 | 2018-03-23 | 北京工业大学 | Three Dimensional Ground laser scanning data processing method and processing device |
CN110726726A (en) * | 2019-10-30 | 2020-01-24 | 中南大学 | Quantitative detection method and system for tunnel forming quality and defects thereof |
CN111024037A (en) * | 2019-09-25 | 2020-04-17 | 北京工业大学 | Circular shield tunnel section fitting method based on three-dimensional laser scanning technology |
CN111507921A (en) * | 2020-04-20 | 2020-08-07 | 南京航空航天大学 | A tunnel point cloud denoising method based on low-rank restoration |
CN111788602A (en) * | 2017-12-29 | 2020-10-16 | 菲力尔系统公司 | Point cloud denoising system and method |
CN111811420A (en) * | 2020-07-16 | 2020-10-23 | 山东大学 | Method and system for monitoring the overall absolute deformation of the three-dimensional profile of the tunnel |
-
2020
- 2020-12-02 CN CN202011394518.XA patent/CN112465991B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107830839A (en) * | 2017-10-11 | 2018-03-23 | 北京工业大学 | Three Dimensional Ground laser scanning data processing method and processing device |
CN111788602A (en) * | 2017-12-29 | 2020-10-16 | 菲力尔系统公司 | Point cloud denoising system and method |
CN111024037A (en) * | 2019-09-25 | 2020-04-17 | 北京工业大学 | Circular shield tunnel section fitting method based on three-dimensional laser scanning technology |
CN110726726A (en) * | 2019-10-30 | 2020-01-24 | 中南大学 | Quantitative detection method and system for tunnel forming quality and defects thereof |
CN111507921A (en) * | 2020-04-20 | 2020-08-07 | 南京航空航天大学 | A tunnel point cloud denoising method based on low-rank restoration |
CN111811420A (en) * | 2020-07-16 | 2020-10-23 | 山东大学 | Method and system for monitoring the overall absolute deformation of the three-dimensional profile of the tunnel |
Non-Patent Citations (8)
Title |
---|
三维激光扫描技术在公路隧道施工监测中的应用研究;张慧等;《公路工程》;20180820(第04期);全文 * |
基于三维激光点云的地铁限界测量分析与应用研究;胡玉祥等;《城市勘探》;20200831(第4期);全文 * |
基于切片原理的海量点云并行简化算法;官亚勤等;《计算机应用》;20160710(第07期);全文 * |
基于实体模型索引的海量激光点云分块存储研究与应用;宋杨等;《测绘工程》;20160425(第04期);全文 * |
基于法向偏差的隧道点云去噪算法;邓辉等;《测绘工程》;20180111(第01期);第59-63页 * |
基于点云数据的单圆盾构隧道水平弦长检测;李家平;《浙江水利水电学院学报》;20151225(第04期);全文 * |
点云数据预处理研究;王嘉鑫等;《现代信息科技》;20200125(第02期);全文 * |
经验模态分解理论及其应用;郝欢等;《高技术通讯》;20160115(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112465991A (en) | 2021-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112465991B (en) | A method for denoising tunnel point cloud and generating visualization model | |
CN107767453B (en) | Building LIDAR point cloud reconstruction optimization method based on rule constraint | |
CN108335352B (en) | A texture mapping method for multi-view large-scale 3D scene reconstruction | |
CN108090960A (en) | A kind of Object reconstruction method based on geometrical constraint | |
CN111524103B (en) | A method for extracting the central axis of circular tunnels based on three-dimensional laser point cloud | |
CN111652241B (en) | A Building Contour Extraction Method Based on Fusion of Image Features and Dense Matching Point Cloud Features | |
CN111325138B (en) | Road boundary real-time detection method based on point cloud local concave-convex characteristics | |
CN106709947A (en) | RGBD camera-based three-dimensional human body rapid modeling system | |
CN108109139B (en) | Airborne LIDAR three-dimensional building detection method based on gray voxel model | |
US20130211791A1 (en) | Method of Generalizing 3-Dimensional Building Models Having Level of Detail+ | |
CN107590825A (en) | A kind of dot cloud hole method for repairing and mending based on SFM | |
CN105354883A (en) | 3ds Max fast and precise three-dimensional modeling method and system based on point cloud | |
CN108074232B (en) | An airborne LIDAR building detection method based on voxel segmentation | |
CN106500594B (en) | Merge the railroad track method for semi-automatically detecting of reflected intensity and geometric properties | |
CN111861946B (en) | Adaptive multi-scale vehicle-mounted laser radar dense point cloud data filtering method | |
CN111340822B (en) | Multi-scale self-adaptive airborne LiDAR point cloud building single segmentation method | |
CN108648277A (en) | A kind of fast reconstructing method of laser radar point cloud data | |
CN109919955A (en) | Tunnel axis extraction and segmentation method for ground-based lidar point cloud | |
CN110986877B (en) | Railway engineering clearance detection method based on high-precision vehicle-mounted laser mobile measurement system | |
CN111080653B (en) | Method for simplifying multi-view point cloud by using region segmentation and grouping random simplification method | |
CN111199064A (en) | Method for generating three-dimensional center line of subway rail surface | |
CN116626706A (en) | Method and system for rail transit tunnel intrusion detection | |
CN111724436A (en) | A method for estimating tunnel jetting volume based on point cloud data processing | |
CN113971718B (en) | Method for performing Boolean operation on three-dimensional point cloud model | |
CN109509249B (en) | Virtual scene light source intelligent generation method based on components |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |