Method, device and medium for extracting center line of irregular cross-section adit structure

By denoising, downsampling, and performing two-dimensional projection clustering on the three-dimensional point cloud data of the adit, the centerline of the adit with irregular cross-section is extracted, which solves the problem of inaccurate centerline extraction in traditional methods and achieves efficient and accurate assessment of tunnel occurrence information and construction quality assurance.

CN121147289BActive Publication Date: 2026-05-05SICHUAN HYDROPOWER ENG INVESTIGATION
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SICHUAN HYDROPOWER ENG INVESTIGATION
Filing Date
2025-09-10
Publication Date
2026-05-05

AI Technical Summary

Technical Problem

Traditional centerline extraction methods cannot accurately extract the centerline of irregular cross-section adits, resulting in inaccurate assessment of tunnel attitude information and affecting construction safety and quality.

Method used

By acquiring the 3D point cloud data of the adit, denoising and downsampling are performed, and the data is projected onto a 2D plane for clustering. The 2D centerline point set is extracted, and based on the cross-sectional point cloud dataset and the 2D centerline point set, the centerline point sets of the top arch and bottom plate are obtained, ultimately yielding the 3D central axis point set of the adit.

Benefits of technology

It enables accurate extraction of the centerline of irregular cross-section tunnels, improves the accuracy of tunnel occurrence information assessment and construction quality, and ensures the efficiency and quality of safe operation status detection of tunnel structures.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121147289B_ABST
    Figure CN121147289B_ABST
Patent Text Reader

Abstract

This application provides a method, apparatus, equipment, and medium for extracting the centerline of an irregular cross-section tunnel structure, relating to the field of tunnel structure construction and inspection technology. The method includes: obtaining three-dimensional point cloud data of the tunnel; obtaining two-dimensional point cloud data based on the three-dimensional point cloud data; clustering the two-dimensional point cloud data to obtain a two-dimensional centerline point set; horizontally segmenting the three-dimensional point cloud data based on the two-dimensional centerline point set to obtain a cross-sectional point cloud dataset between two adjacent center points in the two-dimensional centerline point set; obtaining a top arch centerline point set and a bottom slab centerline point set based on the cross-sectional point cloud dataset and the two-dimensional centerline point set; and obtaining a three-dimensional central axis point set of the tunnel based on the top arch centerline point set and the bottom slab centerline point set. The method of this application can more effectively utilize the three-dimensional data of the tunnel, thereby accurately extracting the centerline of an irregular cross-section tunnel.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of tunnel structure construction and testing technology, and in particular to a method, apparatus, equipment and medium for extracting the centerline of an irregular cross-section adit tunnel structure. Background Technology

[0002] Obtaining rock tunnel attitude information is essential for accurately assessing surrounding rock stability and preventing disasters such as collapses and rock bursts, ensuring construction safety and long-term project reliability, and reducing the risk of casualties and economic losses. Traditional methods of obtaining attitude information rely on qualified technicians using compasses and measuring tapes to conduct on-site measurements, which suffers from low accuracy, small scale, and low safety. There is an urgent need to adopt digital technology to accurately assess tunnel attitude information.

[0003] Meanwhile, with the rapid development of terrestrial laser scanning (TLS) technology, high-resolution 3D point cloud imaging of underground tunnels has been achieved. Compared with traditional measurement methods, TLS technology can quickly and accurately acquire massive amounts of 3D point cloud data on the tunnel surface, providing strong data support for the digital and information-based construction of tunnels. Due to its advantages of high precision and high density, 3D point clouds have been widely used in deformation monitoring, 3D reconstruction, building engineering, and geological analysis.

[0004] For certain non-automated tasks requiring manual annotation, 3D point clouds present challenges due to their massive data scale and complex structure, making direct processing and analysis difficult. Real-time viewing and analysis of point clouds containing hundreds of millions of points places high demands on equipment. Therefore, creating a 2D image representation of 3D tunnel point clouds not only reduces data dimensionality, allowing for near real-time interpretation under operational conditions, but also enables the creation of 2D graphics for engineering reports. Furthermore, 2D image representation facilitates deep learning-based automated analysis, fully utilizing mature image processing algorithms for feature extraction and target recognition, further improving data processing efficiency and accuracy. Therefore, researching methods for converting 3D point clouds to 2D images is of great significance for promoting the digitalization and informatization of tunnel engineering.

[0005] Traditional tunnel image data is collected through camera imaging. Many existing TLS instruments capture 2D images while acquiring 3D point clouds to add color to the point clouds. However, due to insufficient light and space limitations inside the tunnel, it is difficult to obtain high-quality and detailed images. To solve this problem, many scholars have studied the application of algorithms that convert point clouds into two-dimensional images. For example, Ding et al. used unfolded 2D images combined with mesh models for 3D reconstruction, Sun et al. used the degree of deformation as the pixel value of the unfolded image to detect tunnel deformation, and Xu et al. unfolded point clouds along the top line parallel to the tunnel's central axis to generate 2D images for tunnel crack analysis. However, these methods were developed for shield tunnels, which require the tunnel to have a regular shape. But rock tunnels are usually excavated by blasting, often resulting in over-excavation and under-excavation. Deng et al. proposed a method to parameterize a 3D mesh into a 2D mesh to generate a seamless 2D panoramic view of the tunnel lining, and Lai et al. proposed a method to unfold a 3D rock mesh into a 2D image and color-code the 3D mesh to enhance the visual effect of the unfolded image. Although mesh-based methods can effectively preserve tunnel details, they also have some drawbacks. The mesh is susceptible to noise, and parameterization requires a high-quality 3D mesh model.

[0006] Meanwhile, centerline extraction technology is a core component of various digital engineering projects. By extracting the three-dimensional centerline from the point cloud data of the adit scanned in the field, abstract data information can be transformed into a digital twin model that can be quantified and measured, providing a data foundation for subsequent deformation analysis, cross-section monitoring, and point cloud unfolding.

[0007] Traditional centerline extraction methods are mostly based on regular cross-sections such as circles, arches, and horseshoes, and obtain the structural centerline by setting extraction intervals. These methods are fast and accurate for point computing with regular cross-sections, but they are particularly difficult to apply to man-made adits because the left and right walls and the top surface of man-made adits are irregular rock surfaces, making it difficult to obtain an accurate adit centerline. Summary of the Invention

[0008] This application provides a method, apparatus, equipment, and medium for extracting the centerline of an irregular cross-section tunnel structure, which solves the technical problem that existing centerline extraction methods cannot accurately extract the centerline of an irregular cross-section tunnel, provides a basis for accurate assessment of tunnel occurrence information, and ensures high efficiency and high quality in the detection of tunnel structure construction quality and safe operation status.

[0009] According to the first aspect disclosed in this application, this application provides a method for extracting the centerline of an irregular cross-section tunnel structure, including:

[0010] Obtain the 3D point cloud data of the adit;

[0011] Based on the three-dimensional point cloud data, two-dimensional point cloud data is obtained;

[0012] Cluster the two-dimensional point cloud data to obtain a two-dimensional centerline point set;

[0013] Based on the two-dimensional centerline point set, the three-dimensional point cloud data is horizontally segmented to obtain a cross-sectional point cloud dataset between two adjacent center points in the two-dimensional centerline point set.

[0014] Based on the cross-sectional point cloud dataset and the two-dimensional centerline point set, the centerline point set of the top arch and the centerline point set of the bottom plate are obtained.

[0015] Based on the set of points along the center line of the top arch and the set of points along the center line of the bottom plate, the three-dimensional center axis point set of the adit is obtained.

[0016] In one feasible implementation, obtaining the three-dimensional point cloud data of the tunnel includes:

[0017] The tunnel is scanned to obtain the raw point cloud data of the tunnel;

[0018] The original point cloud data is denoised to obtain denoised point cloud data;

[0019] The denoised point cloud data is downsampled to obtain the three-dimensional point cloud data.

[0020] In one feasible implementation, obtaining two-dimensional point cloud data based on the three-dimensional point cloud data includes:

[0021] The three-dimensional point cloud data is projected onto a two-dimensional plane to obtain a two-dimensional projected point cloud;

[0022] The two-dimensional projected point cloud is downsampled to obtain two-dimensional point cloud data.

[0023] In one feasible implementation, the two-dimensional point cloud data is clustered to obtain a two-dimensional centerline point set, including:

[0024] Randomly select an unvisited point in the two-dimensional point cloud data as the initial center point;

[0025] Using the initial center point as the center, a circular neighborhood is constructed based on a preset radius, and all points within the circular neighborhood are extracted to obtain a neighborhood point cloud set;

[0026] Based on the coordinates of the initial center point and each point in the neighboring point cloud set, the offset of the initial center point is obtained;

[0027] The initial center point is iteratively updated based on the offset until the offset is less than a threshold. The iteration stops when the offset is less than a threshold. The converged initial center point is added to the initial centerline point set, and the process jumps to the step of randomly selecting an unvisited point in the two-dimensional point cloud data as the initial center point. The two-dimensional centerline point set is initially an empty set.

[0028] After all points in the two-dimensional point cloud data have been accessed, the initial centerline point set is interpolated and encrypted to obtain a two-dimensional centerline point set.

[0029] In one feasible implementation, based on the cross-sectional point cloud dataset and the two-dimensional centerline point set, the centerline point set of the top arch and the centerline point set of the bottom plate are obtained, including:

[0030] For the longitudinal section formed by each point in the two-dimensional centerline point set, the distance between each point in the cross-sectional point cloud dataset and the longitudinal section is obtained, and points with a distance less than a preset threshold are added to the longitudinal section point cloud set.

[0031] Cluster the point cloud set of the longitudinal section to obtain the point cloud set of the top arch and the point cloud set of the bottom plate;

[0032] Based on the point cloud set of the top arch and the point cloud set of the bottom plate, the point set of the center line of the top arch and the point set of the center line of the bottom plate are obtained respectively.

[0033] In one feasible implementation, the longitudinal section point cloud set is clustered to obtain the top arch point cloud set and the bottom plate point cloud set, including:

[0034] Two points are randomly selected from the longitudinal section point cloud set as the first initial point and the second initial point;

[0035] Obtain the first Euclidean distance between each point in the longitudinal section point cloud set and the first initial point, and the second Euclidean distance between each point and the second initial point;

[0036] If the first Euclidean distance is less than the second Euclidean distance, then the current calculated point in the longitudinal section point cloud set is assigned to the first cluster point set;

[0037] If the first Euclidean distance is greater than the second Euclidean distance, then the current calculated point in the longitudinal section point cloud set is assigned to the second cluster point set;

[0038] Obtain the first centroid of the first cluster point set and the second centroid of the second cluster point set;

[0039] The first initial point is iteratively updated based on the first centroid, and the second initial point is iteratively updated based on the second centroid until the distance between the first initial point and the second initial point is less than a preset threshold. The first clustered point set is then determined to be the top arch point cloud set, and the second clustered point set is determined to be the bottom plate point cloud set.

[0040] In one feasible implementation, based on the top arch point cloud set and the bottom plate point cloud set, the top arch centerline point set and the bottom plate centerline point set are obtained respectively, including:

[0041] A first kd-tree is constructed based on the top arch point cloud set, and a second kd-tree is constructed based on the bottom plate point cloud set;

[0042] The first kd-tree is searched to find the point in the first kd-tree that is closest to each point in the two-dimensional centerline point set, thereby obtaining the top arch centerline point set.

[0043] The second kd-tree is searched to find the point in the second kd-tree that is closest to each point in the two-dimensional centerline point set, thereby obtaining the centerline point set of the base plate.

[0044] According to a second aspect disclosed in this application, this application provides a device for extracting the centerline of an irregular cross-section tunnel structure, comprising:

[0045] The 3D point cloud acquisition module is used to obtain the 3D point cloud data of the tunnel.

[0046] A two-dimensional point cloud acquisition module is used to obtain two-dimensional point cloud data based on the three-dimensional point cloud data;

[0047] The two-dimensional centerline acquisition module is used to cluster the two-dimensional point cloud data to obtain a two-dimensional centerline point set.

[0048] The cross-sectional point cloud acquisition module is used to perform lateral segmentation of the three-dimensional point cloud data based on the two-dimensional centerline point set to obtain a cross-sectional point cloud dataset between two adjacent center points in the two-dimensional centerline point set.

[0049] The centerline search module is used to obtain the centerline point set of the top arch and the centerline point set of the bottom plate based on the cross-sectional point cloud dataset and the two-dimensional centerline point set.

[0050] The three-dimensional central axis acquisition module is used to obtain the three-dimensional central axis point set of the adit based on the central axis point set of the top arch and the central axis point set of the bottom plate.

[0051] According to a third aspect disclosed in this application, this application provides an electronic device, including a processor and a memory communicatively connected to the processor;

[0052] The memory stores computer-executed instructions;

[0053] The processor executes computer execution instructions stored in the memory to implement the method described in any one of the first aspects.

[0054] According to the fourth aspect disclosed in this application, this application provides a computer-readable storage medium storing computer-executable instructions, which, when executed, are used to implement the method described in any one of the first aspects.

[0055] According to the fifth aspect disclosed in this application, this application provides a computer program product, including a computer program, which, when executed, is used to implement the method described in any one of the first aspects.

[0056] Compared with the prior art, this application has the following advantages:

[0057] This application provides a method, apparatus, equipment, and medium for extracting the centerline of an irregular cross-section tunnel structure. The method involves obtaining three-dimensional point cloud data of the tunnel; obtaining two-dimensional point cloud data based on the three-dimensional point cloud data; clustering the two-dimensional point cloud data to obtain a two-dimensional centerline point set; laterally segmenting the three-dimensional point cloud data based on the two-dimensional centerline point set to obtain a cross-sectional point cloud dataset between two adjacent center points in the two-dimensional centerline point set; obtaining a top arch centerline point set and a bottom slab centerline point set based on the cross-sectional point cloud dataset and the two-dimensional centerline point set; and obtaining a three-dimensional central axis point set of the tunnel based on the top arch centerline point set and the bottom slab centerline point set. This method can more effectively utilize the three-dimensional data of the tunnel, thereby accurately extracting the centerline of an irregular cross-section tunnel. It has high robustness and can adapt to various over-excavation, under-excavation, and curved tunnels, providing a foundation for accurate assessment of tunnel attitude information and ensuring high efficiency and high quality in tunnel structure construction quality and safe operation status detection. Attached Figure Description

[0058] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0059] Figure 1 A flowchart illustrating a method for extracting the centerline of an irregular cross-section tunnel structure provided in this application embodiment;

[0060] Figure 2 A schematic flowchart illustrating another method for extracting the centerline of an irregular cross-section tunnel structure provided in this application embodiment;

[0061] Figure 3A schematic diagram of voxel-based point cloud downsampling provided in this application embodiment;

[0062] Figure 4 A schematic diagram of a cross-sectional point cloud provided for an embodiment of this application;

[0063] Figure 5 A schematic diagram of a longitudinal section point cloud set provided in an embodiment of this application;

[0064] Figure 6 A schematic diagram illustrating the point cloud changes for extracting the central axis of a tunnel, provided as an embodiment of this application;

[0065] Figure 7 A schematic diagram illustrating a process for obtaining the centerline point set of the top arch and the centerline point set of the bottom plate, provided for an embodiment of this application;

[0066] Figure 8 A schematic diagram of a centerline extraction device for an irregular cross-section tunnel structure provided in this application embodiment;

[0067] Figure 9 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.

[0068] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation

[0069] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.

[0070] A driveway is a horizontally excavated underground passage within a mountain or ore body, typically located on a relatively gentle slope or at the foot of a mountain, directly connecting to the surface. As a common structure in mining, tunnel engineering, and underground infrastructure construction, driveways, due to their horizontal extension, efficiently transport ore, equipment, and personnel, while providing convenient access for ventilation, drainage, and safe evacuation. Compared to vertical or inclined shafts, driveways are less difficult to construct, more economical, and easier to maintain and manage. In mountainous areas with suitable geological conditions, driveways are often preferred, reducing reliance on hoisting equipment and enabling three-dimensional development of the mining area through the combination of multiple driveways. It is an important design form in underground engineering that balances efficiency and safety.

[0071] Centerline extraction technology is a core component of various digital engineering projects. After obtaining point cloud data of the adit from field scanning, this technology extracts the three-dimensional centerline. It transforms abstract and difficult-to-understand data into a quantifiable digital twin model. This digital twin model acts as a virtual mirror of the real adit, providing a solid data foundation for subsequent work. Whether it's deformation analysis to understand structural changes in the adit, cross-sectional monitoring to understand the condition of different sections, or point cloud unfolding operations, all rely on this fundamental data.

[0072] Traditional centerline extraction methods are mostly designed for specific regular cross-sections, such as circular, arched, and horseshoe-shaped sections. Their operating principle involves pre-setting extraction intervals and then obtaining the structural centerline from point cloud data based on these intervals. When processing point cloud data with regular cross-sections, these centerline extraction methods are fast and relatively accurate. However, when dealing with man-made adits, traditional centerline extraction methods have limitations. This is because the left and right walls and top surface of man-made adits are irregular rock surfaces without fixed regular shapes, making it extremely difficult to calculate the midpoint from the cross-section and obtain an accurate adit centerline.

[0073] To address the aforementioned technical problems, this application proposes a method, apparatus, equipment, and medium for extracting the centerline of an irregular cross-section tunnel structure, which can more effectively utilize the three-dimensional data of the tunnel to accurately extract the centerline of the irregular cross-section tunnel.

[0074] The technical solution of the method for extracting the centerline of an irregular cross-section tunnel structure provided in this application will be described in detail below through specific embodiments. It should be noted that the following embodiments may exist alone or in combination with each other, and the same or similar content may not be described again in different embodiments.

[0075] Figure 1 A flowchart illustrating a method for extracting the centerline of an irregular cross-section tunnel structure provided in this application is shown below. Figure 1 In some embodiments, the method for extracting the centerline of an irregular cross-section tunnel structure includes the following steps:

[0076] S101, obtain the three-dimensional point cloud data of the adit.

[0077] Specifically, the adit is scanned using 3D laser scanning technology to obtain 3D point cloud data of the adit.

[0078] S102, based on 3D point cloud data, obtains 2D point cloud data.

[0079] In this process, points in three-dimensional space are projected or mapped onto a specific two-dimensional plane (such as XY, XZ, or a custom plane). By ignoring the third-dimensional coordinates (such as the Z-axis) or combining viewpoint constraints (such as orthophoto projection), only the two-dimensional coordinate information related to the target plane is retained. This reduces the geometric structure of the three-dimensional point cloud to a two-dimensional distribution, which facilitates subsequent clustering of the data.

[0080] S103, cluster the two-dimensional point cloud data to obtain a two-dimensional centerline point set.

[0081] Clustering two-dimensional point cloud data can yield a centerline point set. The core principle lies in clustering algorithms (such as DBSCAN, K-means, or hierarchical clustering) that divide discrete points into multiple clusters based on spatial distribution characteristics. Each cluster represents a locally dense region in the point cloud (such as a segment of a line). Subsequently, by calculating the geometric center of each cluster (such as the mean center or median center), the core point representing the cluster's location can be extracted. When the point cloud data is distributed along a line, the center points of each cluster naturally form a continuous curve.

[0082] This refers to the centerline point set. This process not only removes redundant points and noise from the original data, but also preserves the key geometric features of the lines through the sparse representation of the cluster centers, ultimately obtaining a centerline structure that can describe the overall shape of the two-dimensional point cloud.

[0083] S104, based on the two-dimensional centerline point set, performs lateral segmentation on the three-dimensional point cloud data to obtain the cross-sectional point cloud dataset between two adjacent center points in the two-dimensional centerline point set.

[0084] In this process, multiple cross-sections can be divided by two adjacent center points in the two-dimensional centerline point set, thereby obtaining a cross-sectional point cloud dataset containing multiple cross-sections.

[0085] S105, based on the cross-sectional point cloud dataset and the two-dimensional centerline point set, obtain the centerline point set of the top arch and the centerline point set of the bottom plate.

[0086] Specifically, based on the cross-sectional point cloud dataset and the two-dimensional centerline point set, the centerline point set of the top arch and the centerline point set of the bottom plate are further obtained.

[0087] S106. Based on the centerline point set of the top arch and the centerline point set of the bottom plate, the three-dimensional center axis point set of the adit is obtained.

[0088] Among them, based on the centerline point set of the top arch and the centerline point set of the bottom plate, the three-dimensional center axis point set of the adit is finally obtained.

[0089] In this embodiment, the three-dimensional data of the adit can be used more effectively to accurately extract the centerline of the adit with an irregular cross section.

[0090] exist Figure 1 Based on the embodiments shown, the following is combined with Figure 2 The technical solution for the above-mentioned method of extracting the centerline of irregular cross-section tunnel structures will be further introduced.

[0091] Figure 2 A flowchart illustrating another method for extracting the centerline of an irregular cross-section tunnel structure provided in this application is shown below. Figure 2 In some embodiments, the method for extracting the centerline of an irregular cross-section tunnel structure includes the following steps:

[0092] S201, scan the adit to obtain the raw point cloud data of the adit.

[0093] Specifically, a 3D laser scanner is used to scan the point cloud every 5m inside the manually excavated adit to obtain the original point cloud data of the adit from multiple stations; this avoids the "data omission" (such as the failure to capture local irregular cross sections) caused by traditional manual measurement (such as single-point measurement by a cross-section instrument), ensures the integrity of the data source, and lays the foundation for the "full coverage" of the subsequent centerline extraction.

[0094] S202, Denoise the original point cloud data to obtain denoised point cloud data.

[0095] The original point cloud data may contain noise points caused by environmental interference, equipment vibration, or uneven reflection from object surfaces. This noise can distort the true geometry of the tunnel. Denoising the original point cloud data can yield more accurate point cloud data. Furthermore, noise points increase the amount of point cloud data, prolonging the runtime of algorithms such as surface reconstruction and feature extraction. Denoising reduces the data volume and significantly improves processing speed. This denoising process eliminates the "biased influence" of noise on subsequent clustering and centerline calculation. Without denoising, noise points may be misidentified as tunnel contour points, leading to cluster center shift and ultimately increasing the centerline extraction error (the error can be reduced by 30%-50%).

[0096] Specifically, the acquired point cloud data is sampled in batches at a resolution of 0.001m and imported into a pre-configured point cloud processing algorithm. A single-station station cloud is then established. Using a point cloud overlap registration method, adjacent station clouds are stitched together, requiring an overlap of over 95%. The stitched point cloud is then subjected to noise removal in orthogonal mode to eliminate isolated point cloud clusters caused by water reflection or obstructions. Finally, the denoised point cloud is output to the local hard drive for storage, thus obtaining the initial complete rock tunnel point cloud.

[0097] S203 performs downsampling processing on the denoised point cloud data to obtain three-dimensional point cloud data.

[0098] Since the midline extraction of the adit only requires retaining the shape and contour information of the adit and can ignore details, the denoised point cloud data is downsampled before the algorithm processing. Downsampling can effectively reduce the amount of point cloud data and improve the efficiency of calculation and storage. At the same time, it reduces the "data load" of subsequent 3D to 2D conversion and clustering calculation, avoids calculation lag or memory overflow caused by excessive data volume, and avoids the loss of contour features due to oversimplification, thus balancing "processing efficiency" and "data accuracy".

[0099] Specifically, common sampling methods include random sampling and voxel-based sampling, etc. (See [link to relevant documentation]). Figure 3 In this embodiment, a voxel-based downsampling method is used to divide the point cloud space into small grids with equal spacing. Each grid is a square with a side length of 3mm. For each grid, the point closest to the centroid of the grid is selected as the sampling point to form three-dimensional point cloud data.

[0100] S204 projects the 3D point cloud data onto a 2D plane to obtain a 2D projected point cloud.

[0101] Among them, based on projection technology, three-dimensional point cloud data is projected onto a two-dimensional plane to obtain a two-dimensional projected point cloud.

[0102] Specifically, 3D point cloud data Each point in the vector can be viewed as a column vector. ,in, As a scaling factor, we can let To compress three-dimensional points into two dimensions In a plane, it is necessary to let That is, the following matrix transformation formula can be used:

[0103]

[0104] The above matrix is ​​the Z-axis projection matrix for point cloud data. By applying this transformation matrix, a two-dimensional projected point cloud can be obtained. This application projects the three-dimensional point cloud (X,Y,Z coordinates) onto the "longitudinal extension plane" of the tunnel (such as a two-dimensional plane with the general direction of the tunnel as the X-axis and the height as the Z-axis), stripping away redundant spatial information in the Z-axis direction, focusing on the "longitudinal direction of the tunnel" and the "core features of the cross-sectional contour", simplifying the complex three-dimensional calculation into a two-dimensional problem, reducing the calculation dimension by more than 50%, avoiding the interference of "non-critical directional data" (such as the slight fluctuations in the transverse width of the tunnel) in three-dimensional space on the centerline extraction, and improving the targeting of subsequent clustering processing.

[0105] S205 performs downsampling processing on the two-dimensional projected point cloud to obtain two-dimensional point cloud data.

[0106] Among them, the above The two-dimensional projected point cloud on the plane is downsampled again, with the centroid of the grid selected as the sampling point to achieve a uniform distribution of the point cloud and reduce the point cloud density to a certain extent, resulting in a second-downsampled two-dimensional projected point cloud dataset. .

[0107] Specifically, a voxel-based downsampling method is also used here.

[0108] S206, randomly select an unvisited point in the two-dimensional point cloud data as the initial center point.

[0109] In the initial state, the two-dimensional point cloud data is labeled. All points in the list are in an unvisited state. If there are unvisited points, randomly select Unvisited points in the array are used as the initial center point. .

[0110] S207: Using the initial center point as the center, construct a circular neighborhood based on a preset radius, and extract all points within the circular neighborhood to obtain a neighborhood point cloud set;

[0111] Among them, the initial center point Construct a circular neighborhood centered on the tunnel with a preset radius of R (the diameter is slightly larger than the tunnel width), and extract all points within the neighborhood to form a neighborhood point cloud set. Unvisited points are randomly selected from the 2D point cloud as initial centers. The local analysis range is limited by "circular neighborhood" to ensure that each clustering is only for a local segment of the point cloud of the tunnel, rather than the entire point cloud. This avoids the "smooth transition of the center line" caused by "global clustering". If there is a slight curvature in the local area of ​​the tunnel, global clustering will ignore the curvature feature to ensure that the 2D center line can accurately reflect the local orientation change of the tunnel.

[0112] S208: Based on the coordinates of the initial center point and each point in the neighboring point cloud set, obtain the offset of the initial center point.

[0113] Among them, according to and Calculation of coordinates of each point offset The offset satisfies the following formula:

[0114]

[0115] in, Indicates the initial center point The average offset, Indicates the initial center point The number of points within the circular neighborhood centered on the center. Indicates starting from the point The set of point clouds in the neighborhood of the center, Represents the set of neighboring point clouds The point in the middle.

[0116] The "offset" is calculated by the coordinate difference between the initial center point and all points in the neighborhood. The position of the center point is continuously adjusted until the offset is less than a threshold (e.g., ≤0.1mm), so that the center point converges to the "geometric center of the neighborhood point cloud".

[0117] S209, iteratively update the initial center point based on the offset until the offset is less than the threshold, stop the iteration, add the converged initial center point to the initial center line point set, and jump to the step of randomly selecting unvisited points in the two-dimensional point cloud data as the initial center point; wherein, the two-dimensional center line point set is initially an empty set.

[0118] Among them, the initial center point Updated to ,Right now Along Directional movement | Distance, until The iteration stops when the magnitude is less than the threshold, and the converged result is... Add to the initial centerline point set Repeat the above process until all points have been visited, and finally output the initial two-dimensional centerline point set. .

[0119] Specifically, create an empty set. Used to store two-dimensional center points, i.e., a set of two-dimensional centerline points.

[0120] Specifically, the two-dimensional centerline point set is as follows: Figure 6 As shown in (a) of the diagram.

[0121] S210: After all points in the two-dimensional point cloud data have been accessed, the initial centerline point set is interpolated and encrypted to obtain the two-dimensional centerline point set.

[0122] The initial centerline point set obtained by clustering is relatively sparse. Therefore, it is necessary to interpolate and densify the initial centerline point set to obtain a two-dimensional centerline point set. .

[0123] For example, the interpolation distance can be set to 0.1 meters; this transforms the two-dimensional centerline from a "discrete point" into a "continuous smooth curve," avoiding "uneven cross-sectional spacing" (such as excessively large sparse segment spacing, resulting in the omission of key cross-sections) during subsequent "lateral segmentation," and providing a "continuous reference" for the accurate division of the cross-sectional point cloud.

[0124] S211, based on the two-dimensional centerline point set, horizontally segments the three-dimensional point cloud data to obtain the cross-sectional point cloud dataset between two adjacent center points in the two-dimensional centerline point set; this solves the problem of mismatch between "traditional fixed-interval segmentation" and the orientation of the adit. If the adit is curved, fixed-interval segmentation will cause the cross-section to tilt. This step guides the segmentation through the centerline to ensure that each cross-section is perpendicular to the actual orientation of the adit, accurately reflecting the irregular cross-sectional shape at that location, and providing "precise local data" for the subsequent separation of the top arch and bottom plate.

[0125] Among them, see Figure 4 Since the plane equation is:

[0126]

[0127] Based on the above plane equations:

[0128]

[0129] in, , , , To determine the four constants of the plane equation, , , To represent a point on a plane, denoted as , For planar method vectors, With a two-dimensional centerline point set The points in the formula Initial descent sampling of 3D point cloud data Perform horizontal segmentation.

[0130] It is a two-dimensional centerline point set The i-th point, It is downsampled 3D point cloud data The j-th point, if point Satisfy the formula Then this point belongs to and A segment between, the set of points within that segment is denoted as ,get Cross-sectional point cloud dataset between every two points .

[0131] Specifically, cross-sectional point clouds such as Figure 6 As shown in (d) in the figure.

[0132] S212, for the longitudinal section formed by each point in the two-dimensional centerline point set, obtain the distance between each point in the cross-sectional point cloud dataset and the longitudinal section, and add the points whose distance is less than a preset threshold to the longitudinal section point cloud set.

[0133] Among them, see Figure 5 , , and points A plane Q can be determined. ,in It is the normal vector of plane Q. A plane Q can be determined using the point normal form of the plane's equation. Calculate... The distance from a point in the vector plane to plane Q is used to divide the longitudinal section point cloud set of a single cross-section using a preset threshold. ,right Repeat this calculation step for each point in the cloud, and denote the resulting point cloud set as . ,in It is a section The j-th point.

[0134]

[0135] Specifically, the preset threshold is 0.5 meters.

[0136] Specifically, longitudinal section point cloud set This includes the top arch point cloud and the bottom plate point cloud.

[0137] Specifically, the longitudinal section point cloud set is as follows: Figure 6 As shown in (e).

[0138] By calculating the distance between the cross-sectional point cloud and the "longitudinal section formed by the two-dimensional centerline", points with a distance less than the threshold (e.g., ≤2mm) are filtered out, and the focus is on the "longitudinal symmetric core surface" of the adit (the centerline of the top arch and the bottom plate must be within this surface).

[0139] S213, cluster the longitudinal section point cloud set to obtain the top arch point cloud set and the bottom plate point cloud set.

[0140] Among them, the point cloud set of the longitudinal section Clustering algorithms are used to separate the point cloud of the top arch and the point cloud of the bottom plate.

[0141] Optionally, the longitudinal section point cloud set is clustered to obtain the top arch point cloud set and the bottom plate point cloud set. Specifically, the k-means clustering algorithm (k=2) is applied, including:

[0142] Step 1: Randomly select two points from the longitudinal section point cloud set as the first initial point and the second initial point.

[0143] First, input the longitudinal section point cloud set. , midpoint It could be a point on the top arch or the bottom plate, the number of clusters (One type is the top arch point cloud, and the other is the bottom plate point cloud), perform initial calculations on the input data, from... Two initial points are randomly selected from the middle. The method employs iterative clustering with two initial points, assigning point clouds based on Euclidean distance (points closer to the first initial point are grouped into one class, and those farther away are grouped into another). The cluster centroids are iteratively updated until the distance between the two centers is less than a threshold, achieving accurate separation of the point clouds of the arch and the base. Traditional clustering tends to misclassify the edge points of the arch as points of the base. This step iteratively corrects the centroids to ensure that the purity of the point cloud set of the arch and the base is ≥95%, avoiding deviations in subsequent centerline calculations.

[0144] Step 2: Obtain the first Euclidean distance between each point in the longitudinal section point cloud set and the first initial point, and the second Euclidean distance between each point and the second initial point.

[0145] Among them, for For each point in the array, calculate its distance to... and Euclidean distance , ,Compare , Size.

[0146] Step 3: If the first Euclidean distance is less than the second Euclidean distance, then assign the current calculated point in the longitudinal section point cloud set to the first cluster point set.

[0147] Among them, if If the current calculation point is assigned to the first cluster point set, then the current calculation point will be assigned to the first cluster point set.

[0148] Specifically, settings Represents the first cluster set, which contains One point, Represents the second cluster set, which contains One point.

[0149] Step 4: If the first Euclidean distance is greater than the second Euclidean distance, then assign the current calculated point in the longitudinal section point cloud set to the second cluster point set.

[0150] Among them, if If so, the current calculation point will be assigned to the second cluster point set.

[0151] Step 5: Obtain the first centroid of the first cluster point set and the second centroid of the second cluster point set.

[0152] Among them, when the traversal is complete After all points are reached, the origin set will be divided into... , Two parts, and ;calculate and centroid of the two point sets , Coordinates. Centroid , The coordinates satisfy the following formula:

[0153]

[0154]

[0155] Step 6: Iteratively update the first initial point based on the first centroid, and iteratively update the second initial point based on the second centroid until the distance between the first initial point and the second initial point is less than a preset threshold. Then, determine the first cluster point set as the top arch point cloud set and the second cluster point set as the bottom plate point cloud set.

[0156] Among them, , Update the initial cluster points and repeat the above calculation steps to iteratively update the initial cluster points. Calculate the change in distance between the initial cluster points before and after each update. If this value is less than a threshold set by the program (e.g., a threshold value...), then... We can assume that the point sets in the first and second clusters remain unchanged. Outputting the point sets in the first and second clusters yields the point clouds of the top arch and the bottom plate, respectively denoted as... , .

[0157] By eliminating redundant points in the cross-section that deviate from the core contour (such as local protrusions on the sidewall of the adit), subsequent clustering interference is reduced, ensuring that the subsequent separation of the top arch and bottom plate is only for the "core contour points", thus improving the clustering purity.

[0158] S214. Based on the point cloud set of the top arch and the point cloud set of the bottom plate, obtain the point set of the center line of the top arch and the point set of the center line of the bottom plate respectively.

[0159] First, kd-trees are built for the point cloud sets of the top arch and the bottom plate, respectively. Then, the concentration points of the two-dimensional centerline points are found respectively. The nearest point requires ignoring the z-coordinate when building the kd-tree and searching; the center point of the apex arch is obtained through the index. and the center point of the ground Furthermore, let Pu be the centerline of the top arch and Pd be the centerline of the bottom plate.

[0160] Optionally, based on the point cloud set of the top arch and the point cloud set of the bottom plate, the centerline point set of the top arch and the centerline point set of the bottom plate are obtained respectively, specifically including:

[0161] Step 1: Construct the first kd-tree based on the top arch point cloud set, and construct the second kd-tree based on the bottom plate point cloud set.

[0162] Among them, for the separated top arch and bottom plate point cloud set, the relative calculation of all points is performed. , , Variance on the axis, select the axis with the largest variance as the dividing axis.

[0163] Find along the selected dividing axis respectively , median on this axis , , The point set partition axis coordinates are equal to The point as The root node, The mid-section axis coordinate value is equal to The point as root node .

[0164] Using the selected dividing axis and root node, obtain the result using the point-normal method. and The dividing plane, the dividing plane will , Divided into , , , The point cloud consists of four parts, among which... , For coordinate values ​​on the dividing axis less than and point, , For the division axis coordinates greater than and point.

[0165] Will , , , The four point cloud components are repeatedly fed into the root node creation step until a point set is empty or only one point remains. At this point, the recursive calculation is stopped, and two constructed points are obtained. Tree , .

[0166] The above method can significantly improve the efficiency of nearest neighbor search. If linear search is used, it would take several minutes to process 100,000 data points; kd-tree search can shorten it to several seconds. At the same time, it ensures that the center lines of the top arch and bottom plate are "completely matched" with the two-dimensional center lines, avoiding "longitudinal offset" or "discontinuity" of the center lines.

[0167] Step 2: Search the first kd-tree, and search for the point in the first kd-tree that is closest to each point in the two-dimensional centerline point set to obtain the centerline point set of the top arch.

[0168] Step 3: Search the second kd-tree, searching for the point in the second kd-tree that is closest to each point in the two-dimensional centerline point set, to obtain the centerline point set of the base plate.

[0169] For a given set of two-dimensional centerline points , It is a certain point on it, using each and Starting from the root node, search downwards according to... The magnitude of the coordinate value on the current dividing axis determines the search direction, ultimately leading to the search result. The minimum value in is denoted as and The minimum value is denoted as ,right Repeat the above steps for each point in the diagram to obtain the set of points along the centerline of the arch. Set of points along the center line of the base plate .

[0170] Specifically, the search calculation formula is explained as follows:

[0171] 1. Initialization: Set a parameter Storage distance Find the minimum distance value and initialize it to infinity, then set the parameters. To store the nearest neighbor, initialize it to null, and start from... and The search begins at the root node;

[0172] 2. Calculation With the current root node Distance between ,like Then let , ;because The tree's partition axis and partition value are defined during construction, so only comparison is needed. The value can be determined by the coordinates on the current node's dividing axis and the magnitude of the dividing value. If the coordinate value is less than the separator value, then Located on the left side of the partition plane, the left subtree is recursively computed first (labeled). If it is the left subtree, then it is located to the right of the current split plane; otherwise, the right subtree is recursively computed first (marked). (That is, the right subtree), after recursively searching the preferred subtree and returning, calculate The difference between the dividing axis and the dividing value ,if Then the current and All are optimal, with For the center of the ball A sphere with radius r will not extend to the other side of the dividing plane, so the search for the other side can be omitted. Otherwise, the other side needs to be calculated recursively until the condition is met. When the entire recursive process is complete, That is The shortest distance from the top arch (bottom slab), its corresponding That is, the point of minimum distance. ( ).

[0173] Specifically, the centerline point set of the top arch and the centerline point set of the bottom plate are as follows: Figure 6 As shown in (b).

[0174] Specifically, the process of obtaining the centerline point set of the top arch and the centerline point set of the bottom plate based on the cross-sectional point cloud dataset and the two-dimensional centerline point set is as follows: Figure 7 As shown.

[0175] S215, based on the centerline point set of the top arch and the centerline point set of the bottom plate, obtain the three-dimensional center axis point set of the adit.

[0176] Specifically, the set of points along the three-dimensional central axis satisfies the following formula:

[0177]

[0178] in, Denotes the first central axis point in the three-dimensional central axis point set. One point, The first point in the set of points along the center line of the crown arch. One point, The first point in the set of centerline points of the base plate One point.

[0179] Specifically, the three-dimensional central axis point set is as follows: Figure 6 As shown in (c).

[0180] In this embodiment, the three-dimensional data of the tunnel can be used more effectively to accurately extract the centerline of the tunnel with an irregular cross section;

[0181] Figure 8 This is a schematic diagram of a centerline extraction device for an irregular cross-section tunnel structure provided in an embodiment of this application. (See attached diagram.) Figure 8 The device for extracting the centerline of an irregular cross-section tunnel structure includes various functional modules for implementing the aforementioned method for extracting the centerline of an irregular cross-section tunnel structure. Any functional module can be implemented by software and / or hardware.

[0182] In some embodiments, the irregular cross-section tunnel structure centerline extraction device 800 includes a three-dimensional point cloud acquisition module 801, a two-dimensional point cloud acquisition module 802, a two-dimensional centerline acquisition module 803, a cross-section point cloud acquisition module 804, a centerline search module 805, and a three-dimensional center axis acquisition module 806. Wherein:

[0183] The 3D point cloud acquisition module 801 is used to acquire the 3D point cloud data of the tunnel;

[0184] The 2D point cloud acquisition module 802 is used to obtain 2D point cloud data based on 3D point cloud data;

[0185] The 2D centerline acquisition module 803 is used to cluster 2D point cloud data to obtain a 2D centerline point set;

[0186] The cross-sectional point cloud acquisition module 804 is used to perform lateral segmentation of the three-dimensional point cloud data based on the two-dimensional centerline point set, and obtain the cross-sectional point cloud dataset between two adjacent center points in the two-dimensional centerline point set.

[0187] The centerline search module 805 is used to obtain the centerline point set of the top arch and the centerline point set of the bottom plate based on the cross-sectional point cloud dataset and the two-dimensional centerline point set.

[0188] The three-dimensional center axis acquisition module 806 is used to obtain the three-dimensional center axis point set of the adit based on the center line point set of the top arch and the center line point set of the bottom plate.

[0189] In some embodiments, the 3D point cloud acquisition module 801 is specifically used for:

[0190] The adit is scanned to obtain the raw point cloud data of the adit;

[0191] The original point cloud data is denoised to obtain denoised point cloud data;

[0192] The denoised point cloud data is downsampled to obtain 3D point cloud data.

[0193] In some embodiments, the two-dimensional point cloud acquisition module 802 is specifically used for:

[0194] Projecting 3D point cloud data onto a 2D plane yields a 2D projected point cloud;

[0195] The two-dimensional projected point cloud is downsampled to obtain two-dimensional point cloud data.

[0196] In some embodiments, the two-dimensional centerline acquisition module 803 is specifically used for:

[0197] Randomly select unvisited points in the two-dimensional point cloud data as the initial center points;

[0198] Using the initial center point as the center, construct a circular neighborhood based on a preset radius, and extract all points within the circular neighborhood to obtain a neighborhood point cloud set;

[0199] Based on the coordinates of the initial center point and each point in the neighborhood point cloud set, the offset of the initial center point is obtained;

[0200] The initial center point is iteratively updated based on the offset until the offset is less than the threshold. The iteration stops when the offset is less than the threshold. The converged initial center point is added to the initial centerline point set, and the process jumps to the step of randomly selecting an unvisited point in the two-dimensional point cloud data as the initial center point. The two-dimensional centerline point set is initially empty.

[0201] Once all points in the 2D point cloud data have been accessed, the initial centerline point set is interpolated and encrypted to obtain the 2D centerline point set.

[0202] In some embodiments, the centerline search module 805 is specifically used for:

[0203] For the longitudinal section formed by each point in the two-dimensional centerline point set, the distance between each point in the cross-sectional point cloud dataset and the longitudinal section is obtained, and points with a distance less than a preset threshold are added to the longitudinal section point cloud set.

[0204] Cluster the longitudinal section point cloud set to obtain the top arch point cloud set and the bottom plate point cloud set;

[0205] Based on the point cloud set of the top arch and the point cloud set of the bottom plate, the point set of the center line of the top arch and the point set of the center line of the bottom plate are obtained respectively.

[0206] In some embodiments, the centerline search module 805 is further configured to:

[0207] Two points are randomly selected from the longitudinal section point cloud set as the first initial point and the second initial point;

[0208] Obtain the first Euclidean distance between each point in the longitudinal section point cloud set and the first initial point, and the second Euclidean distance between each point and the second initial point;

[0209] If the first Euclidean distance is less than the second Euclidean distance, then the current calculated point in the longitudinal section point cloud set is assigned to the first cluster point set;

[0210] If the first Euclidean distance is greater than the second Euclidean distance, then the current calculated point in the longitudinal section point cloud set is assigned to the second cluster point set;

[0211] Obtain the first centroid of the first cluster point set and the second centroid of the second cluster point set;

[0212] The first initial point is iteratively updated based on the first centroid, and the second initial point is iteratively updated based on the second centroid until the distance between the first initial point and the second initial point is less than a preset threshold. The first cluster point set is determined to be the top arch point cloud set, and the second cluster point set is determined to be the bottom plate point cloud set.

[0213] In some embodiments, the centerline search module 805 is further configured to:

[0214] The first kd-tree is constructed based on the top arch point cloud set, and the second kd-tree is constructed based on the bottom plate point cloud set;

[0215] Search the first kd-tree, and search for the point in the first kd-tree that is closest to each point in the two-dimensional centerline point set to obtain the centerline point set of the top arch.

[0216] Search the second kd-tree, and find the point in the second kd-tree that is closest to each point in the two-dimensional centerline point set to obtain the centerline point set of the base plate.

[0217] The irregular cross-section tunnel structure centerline extraction device 800 provided in this application embodiment is used to execute the technical solution provided in the aforementioned irregular cross-section tunnel structure centerline extraction method embodiment. Its implementation principle and technical effect are similar to those in the aforementioned method embodiment, and will not be repeated here.

[0218] It should be noted that the division of the various modules in the above device is merely a logical functional division. In actual implementation, they can be fully or partially integrated into a single physical entity, or they can be physically separated. Furthermore, these modules can be implemented entirely in software via processing elements, entirely in hardware, or partially in software via processing elements and partially in hardware. For example, the 3D point cloud acquisition module 801 can be a separate processing element, or it can be integrated into a chip in the above device. Alternatively, it can be stored as program code in the memory of the above device, and its functions can be called and executed by a processing element. The implementation of other modules is similar. Moreover, these modules can be fully or partially integrated together, or they can be implemented independently. The processing element here can be an integrated circuit with signal processing capabilities. In the implementation process, each step of the above method or each of the above modules can be completed through integrated logic circuits in the hardware of the processor element or through software instructions.

[0219] Figure 9 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. (See attached diagram.) Figure 9 The electronic device 900 includes a processor 901 and a memory 902 communicatively connected to the processor 901;

[0220] Memory 902 stores instructions executed by the computer;

[0221] The processor 901 executes computer execution instructions stored in the memory 902 to implement the aforementioned technical solution for the method of extracting the centerline of an irregular cross-section tunnel structure.

[0222] In the aforementioned electronic device 900, the memory 902 and the processor 901 are electrically connected directly or indirectly to achieve data transmission or interaction. For example, these components can be electrically connected to each other through one or more communication buses or signal lines, such as bus connections. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be classified as address buses, data buses, control buses, etc., but this does not mean that there is only one bus or one type of bus. The memory 902 stores computer execution instructions for implementing the aforementioned method for extracting the centerline of the irregular cross-section tunnel structure, including at least one software functional module that can be stored in the memory 902 in the form of software or firmware. The processor 901 executes various functional applications and data processing by running the software program and module stored in the memory 902.

[0223] The memory 902 includes at least one type of readable storage medium, not limited to Random Access Memory (RAM), Read Only Memory (ROM), Programmable Read-Only Memory (PROM), Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), etc. The memory 902 stores programs, and the processor 901 executes the programs after receiving execution instructions. Furthermore, the software programs and modules within the memory 902 may also include an operating system, which may include various software components and / or drivers for managing system tasks (e.g., memory management, storage device control, power management, etc.) and can communicate with various hardware or software components to provide an operating environment for other software components.

[0224] Processor 901 can be an integrated circuit chip with signal processing capabilities. The aforementioned processor 901 can be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), etc. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor, or processor 901 can be any conventional processor.

[0225] The electronic device 900 is used to execute the technical solution provided in the aforementioned embodiment of the method for extracting the centerline of an irregular cross-section tunnel structure. Its implementation principle and technical effect are similar to those in the aforementioned method embodiment, and will not be repeated here.

[0226] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed, are used to implement the technical solution of the aforementioned method for extracting the centerline of an irregular cross-section tunnel structure.

[0227] The aforementioned computer-readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The computer-readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.

[0228] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the control device of a centerline extraction device for an irregular cross-section tunnel structure.

[0229] This application also provides a computer program product, including a computer program, which, when executed, is used to implement the technical solution of the aforementioned method for extracting the centerline of an irregular cross-section tunnel structure.

[0230] In the above embodiments, those skilled in the art will understand that the above method embodiments can be implemented entirely or partially by software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented entirely or partially in the form of a computer program product. A computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this application is generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless network, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available media can be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), or semiconductor media (e.g., solid-state drives (SSDs)).

[0231] In the above embodiments, the descriptions of each embodiment have their own emphasis. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments. The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as the combination of these technical features does not contradict each other, it should be considered within the scope of this specification.

[0232] Other embodiments of this application will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this application are indicated by the appended claims.

[0233] It should be understood that this application is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this application is limited only by the appended claims.

Claims

1. A method for extracting the centerline of an irregular cross-section tunnel structure, characterized in that, include: Obtain the 3D point cloud data of the adit; Based on the three-dimensional point cloud data, two-dimensional point cloud data is obtained; Cluster the two-dimensional point cloud data to obtain a two-dimensional centerline point set; Based on the two-dimensional centerline point set, the three-dimensional point cloud data is horizontally segmented to obtain a cross-sectional point cloud dataset between two adjacent center points in the two-dimensional centerline point set. Based on the cross-sectional point cloud dataset and the two-dimensional centerline point set, the centerline point set of the top arch and the centerline point set of the bottom plate are obtained. Based on the set of points along the center line of the top arch and the set of points along the center line of the bottom plate, the three-dimensional center axis point set of the adit is obtained.

2. The method according to claim 1, characterized in that, Obtain the 3D point cloud data of the adit, including: The tunnel is scanned to obtain the raw point cloud data of the tunnel; The original point cloud data is denoised to obtain denoised point cloud data; The denoised point cloud data is downsampled to obtain the three-dimensional point cloud data.

3. The method according to claim 1, characterized in that, Based on the aforementioned 3D point cloud data, 2D point cloud data is obtained, including: The three-dimensional point cloud data is projected onto a two-dimensional plane to obtain a two-dimensional projected point cloud; The two-dimensional projected point cloud is downsampled to obtain two-dimensional point cloud data.

4. The method according to claim 1, characterized in that, Clustering is performed on the two-dimensional point cloud data to obtain a two-dimensional centerline point set, including: Randomly select an unvisited point in the two-dimensional point cloud data as the initial center point; Using the initial center point as the center, a circular neighborhood is constructed based on a preset radius, and all points within the circular neighborhood are extracted to obtain a neighborhood point cloud set; the preset radius is twice the tunnel width; Based on the coordinates of the initial center point and each point in the neighboring point cloud set, the offset of the initial center point is obtained; The initial center point is iteratively updated based on the offset until the offset is less than a threshold. The iteration stops when the offset is less than a threshold. The converged initial center point is added to the initial centerline point set, and the process jumps to the step of randomly selecting an unvisited point in the two-dimensional point cloud data as the initial center point. The two-dimensional centerline point set is initially an empty set. After all points in the two-dimensional point cloud data have been accessed, the initial centerline point set is interpolated and encrypted to obtain a two-dimensional centerline point set.

5. The method according to claim 1, characterized in that, Based on the cross-sectional point cloud dataset and the two-dimensional centerline point set, the centerline point set of the top arch and the centerline point set of the bottom plate are obtained, including: For the longitudinal section formed by each point in the two-dimensional centerline point set, the distance between each point in the cross-sectional point cloud dataset and the longitudinal section is obtained, and points with a distance less than a preset threshold are added to the longitudinal section point cloud set. Cluster the point cloud set of the longitudinal section to obtain the point cloud set of the top arch and the point cloud set of the bottom plate; Based on the point cloud set of the top arch and the point cloud set of the bottom plate, the point set of the center line of the top arch and the point set of the center line of the bottom plate are obtained respectively.

6. The method according to claim 5, characterized in that, Clustering the longitudinal section point cloud set yields the top arch point cloud set and the bottom plate point cloud set, including: Two points are randomly selected from the longitudinal section point cloud set as the first initial point and the second initial point; Obtain the first Euclidean distance between each point in the longitudinal section point cloud set and the first initial point, and the second Euclidean distance between each point and the second initial point; If the first Euclidean distance is less than the second Euclidean distance, then the current calculated point in the longitudinal section point cloud set is assigned to the first cluster point set; If the first Euclidean distance is greater than the second Euclidean distance, then the current calculated point in the longitudinal section point cloud set is assigned to the second cluster point set; Obtain the first centroid of the first cluster point set and the second centroid of the second cluster point set; The first initial point is iteratively updated based on the first centroid, and the second initial point is iteratively updated based on the second centroid until the distance between the first initial point and the second initial point is less than a preset threshold. The first clustered point set is then determined to be the top arch point cloud set, and the second clustered point set is determined to be the bottom plate point cloud set.

7. The method according to claim 5, characterized in that, Based on the point cloud set of the top arch and the point cloud set of the bottom plate, the point set of the center line of the top arch and the point set of the center line of the bottom plate are obtained respectively, including: A first kd-tree is constructed based on the top arch point cloud set, and a second kd-tree is constructed based on the bottom plate point cloud set; The first kd-tree is searched to find the point in the first kd-tree that is closest to each point in the two-dimensional centerline point set, thereby obtaining the top arch centerline point set. The second kd-tree is searched to find the point in the second kd-tree that is closest to each point in the two-dimensional centerline point set, thereby obtaining the centerline point set of the base plate.

8. A device for extracting the centerline of an irregular cross-section tunnel structure, characterized in that, include: The 3D point cloud acquisition module is used to obtain the 3D point cloud data of the tunnel. A two-dimensional point cloud acquisition module is used to obtain two-dimensional point cloud data based on the three-dimensional point cloud data; The two-dimensional centerline acquisition module is used to cluster the two-dimensional point cloud data to obtain a two-dimensional centerline point set. The cross-sectional point cloud acquisition module is used to perform lateral segmentation of the three-dimensional point cloud data based on the two-dimensional centerline point set to obtain a cross-sectional point cloud dataset between two adjacent center points in the two-dimensional centerline point set. The centerline search module is used to obtain the centerline point set of the top arch and the centerline point set of the bottom plate based on the cross-sectional point cloud dataset and the two-dimensional centerline point set. The three-dimensional central axis acquisition module is used to obtain the three-dimensional central axis point set of the adit based on the central axis point set of the top arch and the central axis point set of the bottom plate.

9. An electronic device, characterized in that, Includes a processor and a memory communicatively connected to the processor; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory to implement the method as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed, are used to implement the method as described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Highway tunnel quality inspection obstacle avoidance method and system based on multi-line laser radar

    CN114325760A

  • Concrete arch dam horizontal displacement monitoring method based on point cloud big data

    CN118967667A