An adit geological structure surface occurrence calculation method, device, equipment and medium
By processing 3D point cloud data and fitting the circumscribed circle projection unfolding method, a 2D planar image is generated and a mapping relationship is established, which solves the accuracy and safety problems of traditional rock tunnel attitude information acquisition and realizes efficient and accurate structural surface attitude measurement.
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-06-09
AI Technical Summary
Traditional methods suffer from low accuracy, low safety, and low efficiency when acquiring rock tunnel attitude information, especially in complex terrain and large areas where it is difficult to achieve high-precision structural surface attitude measurement.
By processing 3D point cloud data, a fitted circumcircle is constructed and projected to generate a 2D planar image. A bidirectional mapping relationship between the 3D point cloud and the 2D image is established, and the attitude parameters of the structural surface are obtained by combining principal component analysis.
It enables efficient and safe acquisition of rock tunnel structural surface orientation information in complex terrain, improves measurement accuracy and efficiency, reduces the safety risks of manual measurement, and supports automated and non-contact data processing.
Smart Images

Figure CN121147285B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of structural plane attitude calculation technology, and in particular to a method, apparatus, equipment and medium for calculating the attitude of geological structural planes in adits. 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 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, and there are often over-excavation and under-excavation situations. 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-encode the 3D mesh to enhance the visual effect of the unfolded image. Although mesh-based methods can effectively preserve the tunnel's detailed information, they also have some drawbacks. The mesh is susceptible to noise, and parameterization requires a high-quality 3D mesh model.
[0006] While many existing point cloud unfolding algorithms can generate images to meet their needs, most methods do not establish a bidirectional mapping between images and point clouds. Any markings made to 2D images cannot be mapped back to 3D data, and similarly, defect completions made to 3D point cloud data cannot be added to 2D images. However, for certain application scenarios, converting 3D point clouds into 2D images is more intuitive, easier to understand, and easier to visualize.
[0007] When conducting rock mass assessment in tunnel engineering, collecting information on the orientation of rock mass structural planes is crucial. Traditional geological surveying methods mainly rely on tools such as geological compasses and measuring tapes, which suffer from low accuracy, small scale, and low safety. Geological compass measurements usually depend on manual operation, which is limited by the experience and skill level of the surveyors, often resulting in significant errors. If the study area is large, a large amount of manpower, material resources, financial resources, and time are required. In complex tunnel environments, manual measurement also poses certain safety risks, especially in areas with unstable geological conditions, where the safety of surveyors is difficult to guarantee. Summary of the Invention
[0008] This application provides a method, apparatus, equipment, and medium for calculating the attitude of geological structural surfaces in adits, which calculates the attitude information of structural surfaces in a point cloud manner to solve the technical problems of existing methods for obtaining the attitude of adits structural surfaces being difficult to apply to complex terrains and having low accuracy and efficiency.
[0009] According to the first aspect disclosed in this application, this application provides a method for calculating the attitude of geological structural planes in adits, including:
[0010] Obtain the 3D point cloud data of the adit;
[0011] Based on the three-dimensional point cloud data, the three-dimensional central axis point set of the tunnel is obtained;
[0012] Based on the set of three-dimensional central axis points, a fitting circumcircle for projection is constructed;
[0013] Based on the fitted circumcircle, the three-dimensional point cloud data is projected and unfolded to obtain two-dimensional unfolded plane point cloud data and the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded plane point cloud data.
[0014] The two-dimensional unfolded planar point cloud data is rasterized to obtain a two-dimensional planar image of the plane;
[0015] Based on the two-dimensional planar image of the tunnel, the surface traces of the tunnel structure are obtained;
[0016] Based on the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded planar point cloud data, the three-dimensional point cloud data of the structural surface traces are obtained;
[0017] Based on the three-dimensional point cloud data of the structural surface traces, principal component analysis is used to process the data to obtain the fitting plane.
[0018] Based on the fitted plane, the orientation parameters of the structural surface are obtained.
[0019] In one feasible implementation, obtaining the three-dimensional point cloud data of the tunnel includes:
[0020] The tunnel is scanned to obtain the raw point cloud data of the tunnel;
[0021] The original point cloud data is denoised to obtain denoised point cloud data;
[0022] The denoised point cloud data is downsampled to obtain the three-dimensional point cloud data.
[0023] In one feasible implementation, based on the three-dimensional point cloud data, a three-dimensional central axis point set of the tunnel is obtained; including:
[0024] Based on the three-dimensional point cloud data, two-dimensional point cloud data is obtained;
[0025] Cluster the two-dimensional point cloud data to obtain a two-dimensional centerline point set;
[0026] 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.
[0027] 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.
[0028] Based on the set of points along the centerline of the top arch and the set of points along the centerline of the bottom plate, the three-dimensional center axis point set of the adit tunnel is obtained.
[0029] In one feasible implementation, obtaining two-dimensional point cloud data based on the three-dimensional point cloud data includes:
[0030] The three-dimensional point cloud data is projected onto a two-dimensional plane to obtain a two-dimensional projected point cloud;
[0031] The two-dimensional projected point cloud is downsampled to obtain two-dimensional point cloud data.
[0032] In one feasible implementation, the two-dimensional point cloud data is clustered to obtain a two-dimensional centerline point set, including:
[0033] Randomly select an unvisited point in the two-dimensional point cloud data as the initial center point;
[0034] 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;
[0035] 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;
[0036] 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.
[0037] 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.
[0038] 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:
[0039] 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.
[0040] 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;
[0041] 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.
[0042] 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:
[0043] Two points are randomly selected from the longitudinal section point cloud set as the first initial point and the second initial point;
[0044] 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;
[0045] 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;
[0046] 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;
[0047] Obtain the first centroid of the first cluster point set and the second centroid of the second cluster point set;
[0048] 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.
[0049] 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:
[0050] 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;
[0051] 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.
[0052] 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.
[0053] In one feasible implementation, a fitted circumcircle for projection is constructed based on the three-dimensional central axis point set of the tunnel; including:
[0054] Based on the three-dimensional centerline point set of the adit and the centerline point set of the base plate, the fitting circumcircle parameters for projection are obtained, i.e., the fitting circumcircle is obtained; the fitting circumcircle parameters include the direction vector of the central axis of the fitting circumcircle, the coordinates of the base center of the fitting circumcircle, and the radius of the fitting circumcircle.
[0055] In one feasible implementation, based on the fitted circumcircle, the three-dimensional point cloud data is projected and unfolded to obtain two-dimensional unfolded planar point cloud data; including:
[0056] Based on the fitted circumcircle, the three-dimensional point cloud data of the tunnel is projected onto the bottom circle of the fitted circumcircle to obtain the projection points of the three-dimensional point cloud data on the bottom circle of the fitted circumcircle.
[0057] Based on the projection point of the center line of the base plate corresponding to the center of the bottom circle onto the bottom circle of the circumscribed circle, the circumscribed circle is unfolded along this point to obtain two-dimensional unfolded planar point cloud data.
[0058] In one feasible implementation, based on the fitted circumcircle, the three-dimensional point cloud data of the tunnel is projected onto the bottom circle of the fitted circumcircle to obtain the projection points of the three-dimensional point cloud data on the bottom circle of the fitted circumcircle; including:
[0059] Based on the coordinates of the center of the bottom surface of the fitted circumcircle and the direction vector of the central axis of the fitted circumcircle, the projection points of the three-dimensional point cloud data on the bottom surface of the fitted circumcircle are obtained.
[0060] In one feasible implementation, based on the projection point of the base plate centerline corresponding to the center of the base circle onto the base circle of the circumscribed circle, the circumscribed circle is unfolded along this point to obtain two-dimensional unfolded planar point cloud data; including:
[0061] Based on the projection point of the center line of the base plate corresponding to the center of the bottom circle on the bottom circle of the outer circle, the outer circle is cut and unfolded along the point to obtain the unfolded three-dimensional point cloud data.
[0062] Based on the center of the bottom surface of the fitted circumcircle, the projection point of the center of the bottom plate corresponding to the center of the bottom surface on the bottom surface of the circumcircle, and the projection point of the three-dimensional point cloud data on the bottom surface of the fitted circumcircle, the angle formed by the projection point of the three-dimensional point cloud data on the bottom surface of the fitted circumcircle and the projection point of the center of the bottom surface of the circumcircle and the projection point of the center of the bottom plate corresponding to the center of the bottom surface on the bottom surface of the circumcircle is obtained.
[0063] Based on the points in the 3D point cloud data, the center of the bottom surface of the fitted circumcircle, the direction vector of the central axis of the fitted circumcircle, and the angle formed therein, the unfolded 2D coordinate data points are obtained.
[0064] By iterating through each point in the three-dimensional point cloud data and repeating the above steps, the three-dimensional coordinates are transformed into two-dimensional coordinates, and the mapping relationship data from three-dimensional point cloud coordinates to two-dimensional plane coordinates is obtained. The unfolded point cloud data is the two-dimensional unfolded plane point cloud data.
[0065] In one feasible implementation, the two-dimensional unfolded planar point cloud data is rasterized to obtain a two-dimensional planar image of the plane; including:
[0066] Project each point in the two-dimensional unfolded planar point cloud data onto the image to obtain two-dimensional pixel coordinates;
[0067] Construct a color accumulation matrix and a point counting matrix to store the total color of each pixel and the number of points within the pixel, respectively.
[0068] Based on the color accumulation matrix and the point counting matrix, the average value of each pixel block is obtained, and the average value is output to each pixel to obtain a two-dimensional planar image of the plane.
[0069] In one feasible implementation, based on the two-dimensional planar image of the tunnel, the surface traces of the tunnel structure are obtained; including:
[0070] Based on the two-dimensional planar image of the adit, the structural surface traces of the adit are obtained using a polyline annotation method.
[0071] In one feasible implementation, the three-dimensional point cloud data based on the structural surface traces is processed using principal component analysis to obtain a fitting plane; including:
[0072] A three-dimensional point cloud data matrix is constructed based on the three-dimensional point cloud data of the structure surface traces.
[0073] Based on the three-dimensional point cloud data of the structure surface traces, the mean center of the three-dimensional point cloud data is obtained, and the three-dimensional point cloud matrix is subjected to mean normalization processing to obtain three-dimensional point cloud centered data.
[0074] Based on the centralized data of the three-dimensional point cloud and the three-dimensional point cloud data matrix, the three-dimensional point cloud data covariance matrix is obtained.
[0075] Based on the covariance matrix of the three-dimensional point cloud data, the eigenvalues and corresponding eigenvectors of the three-dimensional point cloud covariance matrix are obtained, and the eigenvector corresponding to the smallest eigenvalue is selected as the normal vector of the fitting plane.
[0076] In one feasible implementation, structural surface attitude parameter information is obtained based on the fitted plane; including:
[0077] Based on the fitted plane, the strike, dip, and dip angle of the structural plane are obtained, thus obtaining the structural plane attitude parameter information.
[0078] According to the second aspect disclosed in this application, this application provides a method for calculating the attitude of geological structural surfaces in adits, including:
[0079] The 3D point cloud data acquisition module is used to obtain the 3D point cloud data of the tunnel.
[0080] The three-dimensional central axis point set acquisition module is used to obtain the three-dimensional central axis point set of the tunnel based on the three-dimensional point cloud data;
[0081] The fitting circumcircle construction module obtains the fitting circumcircle for projection based on the three-dimensional central axis point set;
[0082] The two-dimensional unfolded plane point cloud data acquisition module is used to project and unfold the three-dimensional point cloud data based on the fitted circumcircle to obtain two-dimensional unfolded plane point cloud data and the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded plane point cloud data.
[0083] A two-dimensional planar image acquisition module is used to rasterize the two-dimensional unfolded planar point cloud data to obtain a two-dimensional planar image of the plane.
[0084] The structural surface trace acquisition module is used to obtain the structural surface trace of the tunnel based on the two-dimensional planar image of the tunnel.
[0085] The structural surface trace three-dimensional point cloud data acquisition module is used to obtain the three-dimensional point cloud data of the structural surface trace based on the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded plane point cloud data.
[0086] The fitting plane acquisition module is used to process the three-dimensional point cloud data based on the structure surface traces using principal component analysis to obtain the fitting plane.
[0087] The structural plane attitude information acquisition module is used to obtain structural plane attitude parameter information based on the fitted plane.
[0088] 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;
[0089] The memory stores computer-executed instructions;
[0090] The processor executes computer execution instructions stored in the memory to implement the method described in any one of the first aspects.
[0091] 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.
[0092] 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.
[0093] Compared with the prior art, this application has the following advantages:
[0094] This application provides a method for calculating the attitude of geological structural surfaces in adits. It uses point cloud computing to calculate the attitude information of structural surfaces to solve the technical problems of existing methods for obtaining the attitude of adits structural surfaces, which are difficult to apply to complex terrains and have low accuracy and efficiency. This application uses point cloud computing to efficiently and securely obtain structural surface attitude data, and can quickly acquire data from dense areas. It is especially suitable for dangerous or complex terrains that are difficult to access manually. Automated processing ensures high accuracy and objectivity of the results, which can significantly improve the efficiency and accuracy of geological information acquisition.
[0095] This application calculates the central axis of the adit and fits a cylinder for projection; then projects the point cloud onto the cylinder and cuts it along the ground; the unfolded point cloud is then rasterized into a two-dimensional image, and a bidirectional mapping relationship is established between the three-dimensional point cloud and the two-dimensional image, thereby realizing the two-dimensional visualization representation and precise reverse positioning of the three-dimensional geological structural surface; furthermore, by efficiently identifying structural surface features in the two-dimensional image and automatically recovering the three-dimensional point cloud coordinates using the mapping relationship, the precise attitude parameters of the structural surface are finally obtained based on spatial geometric calculations; this application realizes the calculation of the attitude information of the geological structural surface of the adit, which can meet engineering needs.
[0096] This application also provides a method for extracting the centerline of a tunnel structure, which 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; dividing the three-dimensional point cloud data laterally 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 plate 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 plate centerline point set. This method can more effectively utilize 3D adit data to accurately extract the centerline of adits with irregular cross-sections. It is highly robust, adaptable to various over- and under-excavation and curved tunnels, providing a foundation for accurate assessment of tunnel attitude information and ensuring high efficiency and quality in tunnel structure construction and safe operation status monitoring. Simultaneously, a cylinder for projection is fitted using the central axis of the adit; the point cloud is then projected onto the cylinder and cut along the ground, with the image pixels assigned colors according to their colors. This method can unfold complex 3D adit point clouds into 2D images, facilitating direct observation of rock mass distribution, morphology, and contact relationships. It significantly reduces storage and computational burdens while retaining crucial geological information, making it an effective approach for large-scale adit geological logging.
[0097] This application also marks structural surfaces on two-dimensional images and calculates them in three-dimensional point clouds. Furthermore, it establishes a bidirectional mapping model between adit point cloud data and two-dimensional raster images to achieve two-dimensional visualization and precise reverse positioning of three-dimensional geological structural surfaces. This method supports efficient identification of structural surface features in two-dimensional space and automatically restores them to three-dimensional point cloud coordinates through the established mapping relationship. Finally, it obtains the precise attitude parameters of the structural surfaces based on spatial geometric calculations. It can acquire rock mass structural surface information in a non-contact, high-precision, and batch manner, and has great application prospects. Attached Figure Description
[0098] 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.
[0099] Figure 1 A flowchart illustrating the method for calculating the attitude of geological structural surfaces in adits provided in this application embodiment;
[0100] Figure 2 A schematic diagram of voxel-based point cloud downsampling provided in this application embodiment;
[0101] Figure 3 A schematic diagram of a cross-sectional point cloud provided for an embodiment of this application;
[0102] Figure 4 A schematic diagram of a longitudinal section point cloud set provided in an embodiment of this application;
[0103] Figure 5 A schematic diagram illustrating the point cloud changes for extracting the central axis of a tunnel, provided as an embodiment of this application;
[0104] Figure 6 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;
[0105] Figure 7 A schematic diagram illustrating the projection transformation relationship of a circumscribed circle as provided in an embodiment of this application;
[0106] Figure 8 Schematic diagrams of the projection methods of the circumscribed circular section provided in the embodiments of this application (circular, horseshoe, and arch shapes).
[0107] Figure 9 A schematic diagram of the rasterized coordinate system of the unfolded point cloud provided in the embodiments of this application;
[0108] Figure 10 This is a schematic diagram illustrating the marking of structural surface traces in a two-dimensional image, provided as an embodiment of this application.
[0109] Figure 11 A schematic diagram illustrating the point cloud data of three tunnels A, B, and C provided in this embodiment of the application;
[0110] Figure 12 A schematic diagram illustrating the extraction of the central axis from the three adits A provided in this embodiment of the application; Figure 12 (a) is a schematic diagram of the overall structure of the central axis of adit A; (b), (c) and (d) are enlarged schematic diagrams of regions 1, 2 and 3, respectively.
[0111] Figure 13 A top view of the results of extracting the central axis of the adit B provided in an embodiment of this application;
[0112] Figure 14 Schematic diagrams of cylindrical fitting for adits A, B and C provided in the embodiments of this application; 14(a) is a schematic diagram of cylindrical fitting for adits A; 14(b) is a schematic diagram of cylindrical fitting for adits B; 14(c) is a schematic diagram of cylindrical fitting for adits C;
[0113] Figure 15 This is a schematic diagram of the structure with traces of the structural surfaces marked on the adits A, B, and C provided in the embodiments of this application;
[0114] Figure 16 The embodiments of this application provide a schematic diagram of the structure of the three-dimensional point cloud corresponding to the traces drawn on the tunnels A, B and C;
[0115] Figure 17 A schematic diagram of the structure of the adit geological structure surface occurrence calculation device provided in the embodiments of this application;
[0116] Figure 18 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.
[0117] 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
[0118] 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.
[0119] 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.
[0120] Obtaining the attitude information of the adit is essential for accurately assessing the stability of the surrounding rock and preventing disasters such as collapse and rock burst, 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 the tunnel attitude information.
[0121] 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.
[0122] 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 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.
[0123] 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, and there are often over-excavation and under-excavation situations. 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-encode the 3D mesh to enhance the visual effect of the unfolded image. Although mesh-based methods can effectively preserve the tunnel's detailed information, they also have some drawbacks. The mesh is susceptible to noise, and parameterization requires a high-quality 3D mesh model.
[0124] While many existing point cloud unfolding algorithms can generate images to meet their needs, most methods do not establish a bidirectional mapping between images and point clouds. Any markings made to 2D images cannot be mapped back to 3D data, and similarly, defect completions made to 3D point cloud data cannot be added to 2D images. However, for certain application scenarios, converting 3D point clouds into 2D images is more intuitive, easier to understand, and easier to visualize.
[0125] When conducting rock mass assessment in tunnel engineering, collecting information on the orientation of rock mass structural planes is crucial. Traditional geological surveying methods mainly rely on tools such as geological compasses and measuring tapes, which suffer from low accuracy, small scale, and low safety. Geological compass measurements usually depend on manual operation, which is limited by the experience and skill level of the surveyors, often resulting in significant errors. If the study area is large, a large amount of manpower, material resources, financial resources, and time are required. In complex tunnel environments, manual measurement also poses certain safety risks, especially in areas with unstable geological conditions, where the safety of surveyors is difficult to guarantee.
[0126] To address the aforementioned technical problems, this application provides a method, apparatus, equipment, and medium for calculating the attitude of geological structural surfaces in adits. This method calculates the attitude information of structural surfaces using point cloud methods to solve the technical problems of existing methods for obtaining the attitude of adit structural surfaces being difficult to apply to complex terrains and having low accuracy and efficiency.
[0127] The technical solution of the adit geological structure surface attitude calculation method 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.
[0128] Figure 1 A flowchart illustrating a method for calculating the attitude of geological structural surfaces in adits, as provided in this application embodiment, is shown below. Figure 1 In some embodiments, the method for calculating the attitude of the geological structure surface of the adit includes the following steps:
[0129] S101, obtain the three-dimensional point cloud data of the adit.
[0130] Specifically, the adit is scanned using 3D laser scanning technology to obtain 3D point cloud data of the adit.
[0131] S102, Based on the three-dimensional point cloud data, obtain the three-dimensional central axis point set of the tunnel;
[0132] S103, Based on the three-dimensional central axis point set, construct the fitting circumcircle for projection;
[0133] Specifically, the key to unfolding a 3D point cloud lies in fitting a circumcircle for projection. Three parameters are needed to determine a circumcircle: the direction vector of the central axis of the circumcircle, the coordinates of the center of the bottom surface of the circumcircle, and the radius of the circumcircle.
[0134] S104, based on the fitted circumcircle, the three-dimensional point cloud data is projected and unfolded to obtain two-dimensional unfolded plane point cloud data and the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded plane point cloud data.
[0135] Specifically, the projection calculation of the 3D to 2D circumcircle is performed by projecting the 3D point cloud data onto the fitted circumcircle and unfolding it by cutting along the bottom surface of the circumcircle.
[0136] S105, the two-dimensional unfolded planar point cloud data is rasterized to obtain a two-dimensional planar image of the plane.
[0137] In this embodiment, the technical problem of projecting the laser point cloud of the adit onto a non-cylinder can be solved more effectively by using the adit three-dimensional data and the circumscribed circle method.
[0138] S106, Based on the two-dimensional planar image of the tunnel, obtain the surface trace of the tunnel structure;
[0139] Specifically, the structural surface traces are marked on the two-dimensional image of the tunnel;
[0140] S107, Based on the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded plane point cloud data, obtain the three-dimensional point cloud data of the structural surface trace;
[0141] Specifically, the three-dimensional point cloud data is projected and unfolded to obtain the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded plane point cloud data. Based on the accurate mapping relationship between the saved two-dimensional image pixels and the three-dimensional point cloud, the corresponding three-dimensional point cloud data is quickly located according to the marked structural surface trace position to obtain the three-dimensional point cloud data of the structural surface trace.
[0142] S108, Based on the three-dimensional point cloud data of the structure surface traces, principal component analysis is used to process the data and construct a fitting plane;
[0143] Specifically, the spatial coordinates of the three-dimensional point cloud data of the structural surface traces are extracted, and the principal component analysis method is used to process the three-dimensional point cloud data of the structural surface traces to obtain the fitting plane.
[0144] S109, Based on the fitted plane, obtain the structural surface attitude parameter information.
[0145] Specifically, based on the obtained fitted plane, the attitude parameters of the structural surface are calculated.
[0146] exist Figure 1 Based on the embodiments shown, the technical solution of the above-mentioned method for unfolding point clouds of circumscribed circular projection applicable to geological logging of adits will be further introduced.
[0147] In some embodiments, the process of calculating the attitude of the geological structural plane of the adit includes the following steps:
[0148] S201, scan the adit to obtain the raw point cloud data of the adit.
[0149] Specifically, a 3D laser scanner was used to scan the point cloud every 5m inside the artificially excavated adit to obtain the original point cloud data of the adit from multiple stations.
[0150] S202, Denoise the original point cloud data to obtain denoised point cloud data.
[0151] The original point cloud data may contain noise points caused by environmental interference, equipment vibration, or uneven reflection from object surfaces. This noise distorts the true geometry of the tunnel. Denoising the original point cloud data yields 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.
[0152] 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.
[0153] S203 performs downsampling processing on the denoised point cloud data to obtain three-dimensional point cloud data.
[0154] Since the centerline extraction of the adit only requires retaining the shape and outline 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.
[0155] Specifically, common sampling methods include random sampling and voxel-based sampling, etc. (See [link to relevant documentation]). Figure 2 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.
[0156] S204 projects the 3D point cloud data onto a 2D plane to obtain a 2D projected point cloud.
[0157] 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.
[0158] 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:
[0159]
[0160] 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.
[0161] S205 performs downsampling processing on the two-dimensional projected point cloud to obtain two-dimensional point cloud data.
[0162] 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. .
[0163] Specifically, a voxel-based downsampling method is also used here.
[0164] S206, randomly select an unvisited point in the two-dimensional point cloud data as the initial center point.
[0165] 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. .
[0166] 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.
[0167] 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. .
[0168] 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.
[0169] Among them, according to and Calculation of coordinates of each point offset The offset satisfies the following formula:
[0170]
[0171] 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 given value. Indicates starting from the initial point The set of point clouds in the neighborhood of the center, Represents the set of neighboring point clouds The point in the middle.
[0172] 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.
[0173] 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. .
[0174] Specifically, create an empty set. Used to store two-dimensional center points, i.e., a set of two-dimensional centerline points.
[0175] Specifically, the two-dimensional centerline point set is as follows: Figure 5 As shown in (a) of the diagram.
[0176] 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.
[0177] 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. .
[0178] For example, the interpolation distance can be set to 0.1 meters.
[0179] S211, 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.
[0180] Among them, see Figure 3 Since the plane equation is:
[0181]
[0182] Based on the above plane equations:
[0183]
[0184] 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.
[0185] 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 .
[0186] Specifically, cross-sectional point clouds such as Figure 5 As shown in (d) in the figure.
[0187] 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.
[0188] Among them, see Figure 4 , , 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.
[0189]
[0190] Specifically, the preset threshold is 0.5 meters.
[0191] Specifically, longitudinal section point cloud set This includes the top arch point cloud and the bottom plate point cloud.
[0192] Specifically, the longitudinal section point cloud set is as follows: Figure 5 As shown in (e).
[0193] S213, cluster the longitudinal section point cloud set to obtain the top arch point cloud set and the bottom plate point cloud set.
[0194] 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.
[0195] 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:
[0196] Step 1: Randomly select two points from the longitudinal section point cloud set as the first initial point and the second initial point.
[0197] 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. .
[0198] 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.
[0199] Among them, for For each point in the array, calculate its distance to... and Euclidean distance , ,Compare , Size.
[0200] 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.
[0201] 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.
[0202] Specifically, settings Represents the first cluster set, which contains One point, Represents the second cluster set, which contains One point.
[0203] 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.
[0204] Among them, if If so, the current calculation point will be assigned to the second cluster point set.
[0205] Step 5: Obtain the first centroid of the first cluster point set and the second centroid of the second cluster point set.
[0206] 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:
[0207]
[0208]
[0209] 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.
[0210] 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... , .
[0211] 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.
[0212] 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.
[0213] 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:
[0214] 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.
[0215] 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.
[0216] 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 .
[0217] 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.
[0218] 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 , .
[0219] 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.
[0220] 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.
[0221] 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 .
[0222] Specifically, the search calculation formula is explained as follows:
[0223] 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;
[0224] 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 completed, That is The shortest distance from the top arch (bottom slab), its corresponding That is, the point of minimum distance. ( ).
[0225] Specifically, the centerline point set of the top arch and the centerline point set of the bottom plate are as follows: Figure 5 As shown in (b).
[0226] 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 6 As shown.
[0227] 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.
[0228] Specifically, the set of points along the three-dimensional central axis satisfies the following formula:
[0229]
[0230] in, Denotes the first in the set of three-dimensional central axis points 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.
[0231] Specifically, the three-dimensional central axis point set is as follows: Figure 5 As shown in (c).
[0232] S216, Based on the three-dimensional central axis point set of the tunnel, construct a fitting circumcircle for projection;
[0233] Specifically, based on the three-dimensional centerline point set of the tunnel and the centerline point set of the base plate, the fitting circumcircle parameters for projection are obtained, that is, the fitting circumcircle is obtained; the fitting circumcircle parameters include the direction vector of the central axis of the fitting circumcircle, the coordinates of the base center of the fitting circumcircle, and the radius of the fitting circumcircle.
[0234] Specifically, the three-dimensional central axis can be approximated as the axis of the circumcircle, based on the implicit equation of the circumcircle's lateral surface. ,in Let the center of the circumcircle be... Let be the radius of the circumscribed circle. Let be the axial vector of the circumcircle's central axis. For any point on the circumcircle, we need to calculate three parameters of the circumcircle: the coordinates of the center of the circumcircle's base. That is, the central axis The first point in the set of points, the radius of the circumcircle and the axial unit vector of the circumcircle The circumcircle radius and the circumcircle axial vector are calculated using the following formula, where... Is with The first one on the corresponding center line of the base plate One point, yes Number of elements in a point set:
[0235]
[0236] S217, Based on the fitted circumcircle, the three-dimensional point cloud data is projected and unfolded to obtain two-dimensional unfolded planar point cloud data; including:
[0237] Step 1: Based on the fitted circumcircle, project the three-dimensional point cloud data of the tunnel onto the bottom circle of the fitted circumcircle to obtain the projection points of the three-dimensional point cloud data on the bottom circle of the fitted circumcircle; based on the projection points of the base plate centerline points corresponding to the center of the bottom circle onto the bottom circle of the circumcircle, unfold the circumcircle along these points to obtain two-dimensional unfolded planar point cloud data.
[0238] Specifically, such as Figure 7 As shown, from the circumcircle section, for the original 3D point cloud data any point in ,Pass Construct the circumcircle axis The perpendicular line, with the foot of the perpendicular as Then the ray Intersection with the circumcircle That is, the position of the 3D point cloud projected onto the circumcircle;
[0239] Based on the coordinates of the center of the bottom surface of the fitted circumcircle and the direction vector of the central axis of the fitted circumcircle, the projection points of the three-dimensional point cloud data on the bottom surface of the fitted circumcircle are obtained using the following projection formula.
[0240]
[0241] Specifically, the above formula is used for calculation. and The projection points of the projected circumcircle are respectively projected onto the base circle of the circumcircle. and Based on the centerline point set of the base plate Three-dimensional central axis , These are the coordinates of the center of the circumscribed base. It is its corresponding bottom point, because It is not on the bottom circle, according to the above formula Projecting to the bottom circle Then, circumscribed edge Cut open and unfold to obtain two-dimensional unfolded planar point cloud data;
[0242] Step 2: Based on the projection point of the center line of the base plate corresponding to the center of the bottom circle onto the bottom circle of the circumscribed circle, the circumscribed circle is cut and unfolded along this point to obtain the unfolded three-dimensional point cloud data.
[0243] Based on the center of the bottom surface of the fitted circumcircle, the projection point of the center of the bottom plate corresponding to the center of the bottom surface on the bottom surface of the circumcircle, and the projection point of the three-dimensional point cloud data on the bottom surface of the fitted circumcircle, the angle formed by the projection point of the three-dimensional point cloud data on the bottom surface of the fitted circumcircle and the projection point of the center of the bottom surface of the circumcircle and the projection point of the center of the bottom plate corresponding to the center of the bottom surface on the bottom surface of the circumcircle is obtained.
[0244] Specifically, based on and The projection points of the projected circumcircle are respectively projected onto the base circle of the circumcircle. and Calculate the angle based on the following formula Angle ;
[0245]
[0246] Step 3: Based on the 3D point cloud data, the center of the bottom surface of the fitted circumcircle, the direction vector of the fitted central axis of the circumcircle, and the angle formed, obtain the 2D coordinate data points after unfolding the 3D point cloud data. The unfolded point cloud data is the 2D unfolded planar point cloud data.
[0247] Specifically, the circumcircle has the following correspondence: The projection point of the circumcircle's base circle ,point The orthogonal projection point of the base circle is ,point The x-coordinate of the unfolded plane is... The distance from the base circle is represented by the ordinate. Distance from the center line of the base plate The arc length;
[0248] Specifically, based on and and axial unit vector The abscissa of a single point in the plane after transformation is calculated using the following formula: ;
[0249]
[0250] After converting the point cloud of a duct from 3D to 2D, the elevation direction remains unchanged; therefore, the elevation coordinate value of each point after conversion is 0. ;
[0251] For the planar ordinate of the point cloud of the advection tunnel, ;
[0252] Specifically, such as Figure 8 As shown, for a horseshoe-shaped adit, the transformed ordinate value is calculated as follows: ;
[0253]
[0254] For a horizontal tunnel with a portal arch-shaped cross-section, the transformed ordinate value is calculated as follows: ;
[0255]
[0256] Step 4: Repeat the above steps to extract each point from the 3D point cloud. From three-dimensional coordinates Transformed to two-dimensional plane coordinates Complete the mapping from 3D point cloud to 2D image pixels and preserve the mapping relationship file (.mu). The unfolded planar point cloud is .
[0257] S218, the two-dimensional unfolded planar point cloud data is rasterized to obtain a two-dimensional planar image of the plane; including:
[0258] Project each point in the two-dimensional unfolded planar point cloud data onto the image to obtain two-dimensional pixel coordinates;
[0259] Construct a color accumulation matrix and a point counting matrix to store the total color of each pixel and the number of points within the pixel, respectively.
[0260] Based on the color accumulation matrix and the point counting matrix, the average value of each pixel block is obtained, and the average value is output to each pixel to obtain a two-dimensional planar image of the plane.
[0261] Specifically, for the unfolded two-dimensional planar point cloud data Rasterization is performed to generate a two-dimensional image. ,like Figure 9 As shown;
[0262] First, calculate the unfolded point cloud. any point The pixel coordinates projected onto the image are calculated using the following formula:
[0263]
[0264] Among them, China and The horizontal and vertical coordinates (integers) in the rasterized image represent the pixel column and pixel row, respectively. It is the unfolded point cloud The minimum value of the horizontal axis. It is the image resolution, representing the actual length corresponding to a unit pixel;
[0265] Create a color accumulation matrix Store each pixel The sum is initialized to 0.
[0266] Create a point counting matrix This stores the number of points within a pixel and initializes it to 0, because multiple points may map to the same pixel; therefore, each pixel has a separate [count / value]. The value is the average of the points containing the value.
[0267] Traversing point clouds Every point, for Each point in the image contains color information via its red, green, and blue channels. Get the corresponding single pixel block Color accumulation matrix;
[0268] Then calculate the average value of each pixel block.
[0269] Then the calculated draw value is output to each pixel. This yields a two-dimensional planar image of the tunnel.
[0270] During the point cloud rasterization imaging process, the unfolded point cloud Each point in Mapped to a two-dimensional pixel coordinate system x , y );because The point sequence is consistent with the original point cloud data, so an accurate mapping relationship can be established between each three-dimensional point in the original point cloud and its corresponding two-dimensional pixel coordinates. By storing this correspondence of all points, a bidirectional reversible mapping between the three-dimensional spatial representation of the tunnel point cloud and the two-dimensional unfolded image is constructed, thereby realizing the lossless conversion between the two data representation methods.
[0271] After the 3D point cloud data is processed by the point cloud unfolding algorithm, its z-coordinate is normalized to zero, forming a point cloud distribution on a two-dimensional plane. This two-dimensional point cloud is further converted into an image representation, which can not only significantly reduce the data storage space requirements, but also effectively solve the problem of dependence on high-performance computing equipment when visualizing large-scale point cloud data. This conversion allows the details inside the tunnel to be presented in a more intuitive and easy-to-understand way, which facilitates rapid evaluation and decision-making by engineers and analysts.
[0272] S219, Based on the two-dimensional planar image of the adit, obtain the surface trace of the adit structure; including: based on the two-dimensional planar image of the adit, using a polyline annotation method to obtain the surface trace of the adit structure;
[0273] Specifically, for the rasterized 2D planar image IMA, polyline annotation is used in AutoCAD software. (See [link to relevant documentation]). Figure 10 Mark the traces of the structural surfaces. (like Figure 10 (the red line), in which From point set composition;
[0274] S220, based on the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded planar point cloud data, obtain the three-dimensional point cloud data of the structural surface traces; including:
[0275] The three-dimensional point cloud data is projected and unfolded to obtain the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded plane point cloud data. Based on the accurate mapping relationship between the saved two-dimensional image pixels and the three-dimensional point cloud, the corresponding three-dimensional point cloud data is quickly located according to the marked structural surface trace position to obtain the three-dimensional point cloud data of the structural surface trace.
[0276] Specifically, based on the mapping table (.mu) from the 3D point cloud to the 2D image pixels obtained in S217, the trace points are labeled in 2D. a point in Quickly locate the 3D point cloud of the adit One point In the middle, obtain the trace. The corresponding point set in the 3D point cloud ;
[0277]
[0278] S221, Based on the three-dimensional point cloud data of the structural surface traces, principal component analysis is used to process the data and construct a fitting plane; including:
[0279] A three-dimensional point cloud data matrix is constructed based on the three-dimensional point cloud data of the structure surface traces.
[0280] Based on the three-dimensional point cloud data of the structure surface traces, the mean center of the three-dimensional point cloud data is obtained, and the three-dimensional point cloud matrix is subjected to mean normalization processing to obtain three-dimensional point cloud centered data.
[0281] Based on the centralized data of the three-dimensional point cloud and the three-dimensional point cloud data matrix, the three-dimensional point cloud data covariance matrix is obtained.
[0282] Based on the covariance matrix of the three-dimensional point cloud data, the eigenvalues and corresponding eigenvectors of the three-dimensional point cloud covariance matrix are obtained, and the eigenvector corresponding to the smallest eigenvalue is selected as the normal vector of the fitting plane.
[0283] Specifically, the point set in the 3D point cloud of the structural surface trace. Constructed as a 3D point cloud data matrix (Each row corresponds to a single point in the point cloud data) );
[0284] Recalculate point cloud data mean center ,in ], ;
[0285] Then, the three-dimensional point cloud matrix After mean centering, the matrix after centering is: ,in This is a column vector that was originally set to 1.
[0286] Recalculate covariance matrix , Expanding it will give you The variance covariance ;
[0287] Next, calculate the eigenvalues and corresponding eigenvectors of the covariance matrix, and then select the covariance matrix. Eigenvector corresponding to the smallest eigenvalue That is, the trace. Fitted plane The normal vector; the calculation process is as follows:
[0288] eigenvalue decomposition yields , and The normal vector takes the smallest eigenvalue. Corresponding feature vector : , It is an orthogonal array. It is a matrix The first column vector, It is the 2-norm (Euclidean length) of the eigenvector (unit vector);
[0289] S222, Based on the fitted plane, obtain structural surface attitude parameter information; including: based on the normal vector of the fitted plane, obtain the strike, dip, and dip angle of the structural surface, and obtain structural surface attitude parameter information; wherein, the strike is the azimuth angle of the intersection line between the structural surface and the horizontal plane; the dip is the direction of inclination of the structural surface; and the dip angle is the angle between the structural surface and the horizontal plane.
[0290] Specifically, the computational plane directional vector That is, to find the normal vector. and The cross product;
[0291]
[0292] Calculate the orientation angle of the adit structure surface. :
[0293] ,and
[0294] The directional angle is the angle between the plane and the due north direction.
[0295] Calculate the dip direction of the adit structure plane The tendency is the direction in which the plane is tilted, and it is the angle of the projection of the normal vector onto the horizontal plane relative to the due north direction.
[0296]
[0297] Calculate the dip angle of the tunnel structure surface. The angle value is the angle between the normal vector and the horizontal plane;
[0298]
[0299] Experimental Example
[0300] Step 1: This experimental example focuses on processing large-scale, high-resolution point cloud data of irregular adits acquired by a terrestrial 3D laser scanner (TLS). These adits are typically excavated by blasting, meaning their shapes are irregular, posing a significant challenge to extracting the adits' central axis. Due to the confined space within the adits and the limited scanning distance of a single station, multiple measurements are required to collect complete adits data. To ensure sufficient overlap between adjacent stations for subsequent registration, the station spacing is controlled within 2-3 meters, without requiring strictly uniform distribution. Each station can collect over ten million 3D data points. Depending on the adits' length, dozens or even hundreds of stations are needed for data acquisition. Data from different stations is typically automatically registered and stitched together by the equipment's accompanying software system. The final result is... The result is a comprehensive dataset of the original point cloud of the entire adit. This application proposes a method for calculating the attitude based on the unfolding of point cloud images. To verify its effectiveness, point cloud data of three adit tunnels were selected for experiments. Adit A is 260 meters long, with a total of 88 stations and more than 3.2 billion points. It has a slight curvature, as shown in Figure 11(a). Tunnel B is 15 meters long, with a total of 3 stations and more than 1.1 billion points. It has over-excavation, as shown in Figure 11(b). Tunnel C is 210 meters long, with a total of 77 stations and more than 2.6 billion points. It is relatively straight and has manually measured attitude data as a control, as shown in Figure 11(c). All experiments in this application were conducted on a PC using an Intel Core i5-13400F CPU and 32GB of memory, using the C++ programming language.
[0301] Step 2: Fitting the cylinder of the adit: The key to fitting the cylinder of the adit is to correctly extract the central axis of the adit. Two adits were used for the experiment. The extraction of the central axis of adit A is shown in Figure 12. The adit has a certain degree of curvature, which can be seen in the magnified area. Even if the adit has a certain curvature, it does not affect the correct extraction of the central axis of the adit. The extraction of the central axis of adit B is shown in Figure 13. The adit has obvious over-excavation, but it only caused a slight undulation of the central axis.
[0302] After successfully extracting the central axis of the adit, the cylinder of the adit can be fitted. Adit A has a certain curvature, so it is fitted in segments and the image results are stitched together. Adit B and C are relatively straight, so a single cylinder can be used for fitting. The results are shown in Figure 14.
[0303] Step 3: Point Cloud Unfolding and Attitude Calculation: Following the principle of point cloud unfolding, the 3D point cloud is cut along the ground, and the points are mapped to pixels to obtain the planar unfolded image of the tunnel. After marking the position of the structural surface on the image, the 3D point cloud of the structural surface can be found by using the bidirectional mapping relationship between 3D and 2D saved during the unfolding process. The high-precision attitude information of the tunnel structural surface is then calculated using point cloud computing.
[0304] As shown in Figure 15, traces of some structural surfaces were drawn on the unfolded diagram of the three adits. Then, the 3D points corresponding to the pixels were found, and the results are as follows. Figure 16 As shown, the orientation information of each trace is finally calculated using the found 3D points.
[0305] Analysis of Experimental Results
[0306] To verify the effectiveness of our method, we compared the manually measured ground truth (GT) data from adit C with the attitude results calculated in this application. The results are shown in Table 1. The average error of the strike measurement for the seven sets of samples was 1.57°, with two sets achieving zero error. The average error of the dip measurement was 3.29°. Except for the 5F and 9F measurement points, which may have an error of 11° due to a deviation in the selection of the reference surface when manually placing the compass, the errors of the other measurement points were all controlled within 4°. This phenomenon highlights the advantage of point cloud measurement over manual methods. The results show that the strike and dip calculated by our method have high measurement stability while ensuring measurement accuracy.
[0307] Table 1 Comparison of the attitude results of manually measured adit A and the attitude calculated by the method of this application
[0308]
[0309] This application proposes a method for unfolding adit point clouds into images and using the images to calculate attitude. The method first extracts the central axis of the adit and fits a cylinder based on it. The adit point cloud is then projected onto the cylinder and cut along the ground to obtain a planar unfolded image. While unfolding, the bidirectional mapping between the 3D point cloud and the image pixels is saved. Then, the position of the structural surface is marked on the image. Finally, the bidirectional mapping is used to find the corresponding 3D points to calculate the attitude information of the structural surface.
[0310] In the above experimental examples, the test results of real adit data show that: (1) This application realizes the unfolding of point cloud into an image and uses it to calculate the attitude. The result is compared with the manual measurement value. The error can be basically kept within 4°, which has high reliability; (2) The adit center axis extraction algorithm proposed in this application can adapt to various over-excavation, under-excavation and curved adit conditions, which has high robustness; (3) The adit plan unfolding diagram intuitively reflects the internal details of the adit and provides a two-dimensional visualization method for large-scale adit point cloud data.
[0311] The experimental results were compared with the data from manual field measurements. The error between the strike and dip angle calculated by the method of this application and the actual values can be kept within 4°, which proves the effectiveness of the proposed attitude calculation method. Compared with traditional manual measurement methods, the attitude calculation method based on the unfolded diagram not only effectively solves the problems of low accuracy, small scale and low safety of manual field measurements, but also provides a new means of visualization analysis of tunnels. It effectively solves the technical bottlenecks such as low loading efficiency of large-scale point cloud data and real-time rendering lag, and provides new technical support for the digital and information-based construction of tunnels.
[0312] Figure 17 This is a schematic diagram of the structure of a geological structure surface occurrence calculation device for adits provided in an embodiment of this application. (See attached diagram.) Figure 17 The device for calculating the attitude of geological structural surfaces in adits includes various functional modules for implementing the aforementioned method for calculating the attitude of geological structural surfaces in adits. Any functional module can be implemented by software and / or hardware.
[0313] In some embodiments, the adit geological structure surface attitude calculation device 1700 includes a three-dimensional point cloud acquisition module 1701, a three-dimensional central axis point set acquisition module 1702, a fitting circumscribed circle construction module 1703, a two-dimensional unfolded plane point cloud data acquisition module 1704, a two-dimensional plane image acquisition module 1705, a structure surface trace acquisition module 1706, a structure surface trace three-dimensional point cloud data acquisition module 1707, a fitting plane construction module 1708, and a structure surface attitude information acquisition module 1709. Wherein:
[0314] The 3D point cloud data acquisition module 1701 is used to acquire the 3D point cloud data of the tunnel;
[0315] The three-dimensional central axis point set acquisition module 1702 is used to obtain the three-dimensional central axis point set of the tunnel based on the three-dimensional point cloud data;
[0316] The fitting circumcircle construction module 1703 is used to obtain a fitting circumcircle for projection based on the three-dimensional central axis point set;
[0317] The two-dimensional unfolded plane point cloud data acquisition module 1704 is used to perform projection unfolding processing on the three-dimensional point cloud data based on the fitted circumcircle to obtain two-dimensional unfolded plane point cloud data and the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded plane point cloud data.
[0318] The two-dimensional planar image acquisition module 1705 is used to rasterize the two-dimensional unfolded planar point cloud data to obtain a two-dimensional planar image of the plane.
[0319] The structural surface trace acquisition module 1706 is used to obtain the structural surface trace of the tunnel based on the two-dimensional planar image of the tunnel.
[0320] The structural surface trace three-dimensional point cloud data acquisition module 1707 is used to obtain the three-dimensional point cloud data of the structural surface trace based on the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded plane point cloud data.
[0321] The fitting plane construction module 1708 is used to process the three-dimensional point cloud data based on the structure surface traces using principal component analysis to construct a fitting plane.
[0322] The structural plane attitude information acquisition module 1709 is used to obtain structural plane attitude parameter information based on the fitted plane.
[0323] The adit geological structure surface attitude calculation device provided in this application embodiment is used to execute the technical solution provided in the aforementioned adit geological structure surface attitude calculation method embodiment. Its implementation principle and technical effect are similar to those in the aforementioned method embodiment, and will not be repeated here.
[0324] 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 1701 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.
[0325] Figure 18 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. (See attached diagram.) Figure 18 The electronic device 1800 includes a processor 1801 and a memory 1802 communicatively connected to the processor 1801;
[0326] Memory 1802 stores instructions executed by the computer;
[0327] The processor 1801 executes the computer execution instructions stored in the memory 1802 to implement the aforementioned technical solution for the circumcircle projection point cloud unfolding method applicable to adit geological logging.
[0328] In the aforementioned electronic device 1800, the memory 1802 and the processor 1801 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 1802 stores computer execution instructions that implement the aforementioned method for calculating the attitude of the geological structure surface of the adit, including at least one software functional module that can be stored in the memory 1802 in the form of software or firmware. The processor 1801 executes various functional applications and data processing by running the software programs and modules stored in the memory 1802.
[0329] The memory 1802 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 1802 stores programs, and the processor 1801 executes the programs after receiving execution instructions. Furthermore, the software programs and modules within the memory 1802 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.
[0330] Processor 1801 can be an integrated circuit chip with signal processing capabilities. The aforementioned processor 1801 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 1801 can be any conventional processor.
[0331] The electronic device 1800 is used to execute the technical solution provided in the aforementioned embodiment of the method for calculating the attitude of geological structural surfaces in adits. Its implementation principle and technical effects are similar to those in the aforementioned method embodiment, and will not be repeated here.
[0332] 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 calculating the attitude of geological structural surfaces in adits.
[0333] 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.
[0334] 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 unit of a calculation device for the attitude of a geological surface in a tunnel.
[0335] This application also provides a computer program product, including a computer program that, when executed, is used to implement the technical solution of the aforementioned method for calculating the attitude of geological structural surfaces in adits.
[0336] 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)).
[0337] 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.
[0338] 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.
[0339] 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 calculating the attitude of geological structural planes in adits, characterized in that, include: Obtain the 3D point cloud data of the adit; Based on the three-dimensional point cloud data, the three-dimensional central axis point set of the tunnel is obtained; Based on the set of three-dimensional central axis points, a fitting circumcircle for projection is constructed; Based on the fitted circumcircle, the three-dimensional point cloud data is projected and unfolded to obtain two-dimensional unfolded plane point cloud data and the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded plane point cloud data. The two-dimensional unfolded planar point cloud data is rasterized to obtain a two-dimensional planar image of the plane; Based on the two-dimensional planar image of the tunnel, the surface traces of the tunnel structure are obtained; Based on the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded planar point cloud data, the three-dimensional point cloud data of the structural surface traces are obtained; Based on the three-dimensional point cloud data of the structural surface traces, principal component analysis is used to process the data and construct a fitting plane. Based on the fitted plane, the structural surface attitude parameter information is obtained; The step of obtaining the three-dimensional central axis point set of the tunnel based on the three-dimensional point cloud data includes: 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 centerline of the top arch and the set of points along the centerline of the bottom plate, the three-dimensional center axis point set of the adit tunnel 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; 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. The method according to claim 1, characterized in that, Based on the three-dimensional central axis point set of the tunnel, a fitting circumcircle for projection is constructed; including: Based on the three-dimensional centerline point set of the adit and the centerline point set of the base plate, the fitting circumcircle parameters for projection are obtained, i.e., the fitting circumcircle is obtained; the fitting circumcircle parameters include the direction vector of the central axis of the fitting circumcircle, the coordinates of the base center of the fitting circumcircle, and the radius of the fitting circumcircle.
9. The method according to claim 1, characterized in that, Based on the fitted circumcircle, the three-dimensional point cloud data is projected and unfolded to obtain two-dimensional unfolded planar point cloud data; including: Based on the fitted circumcircle, the three-dimensional point cloud data of the tunnel is projected onto the bottom circle of the fitted circumcircle to obtain the projection points of the three-dimensional point cloud data on the bottom circle of the fitted circumcircle. Based on the projection point of the center line of the base plate corresponding to the center of the fitted circumcircle base circle on the circumcircle base circle, the circumcircle is unfolded along this point to obtain two-dimensional unfolded planar point cloud data.
10. The method according to claim 9, characterized in that, Based on the fitted circumcircle, the three-dimensional point cloud data of the tunnel is projected onto the bottom circle of the fitted circumcircle to obtain the projection points of the three-dimensional point cloud data on the bottom circle of the fitted circumcircle; including: Based on the coordinates of the center of the bottom surface of the fitted circumcircle and the direction vector of the central axis of the fitted circumcircle, the projection points of the three-dimensional point cloud data on the bottom surface of the fitted circumcircle are obtained.
11. The method according to claim 9, characterized in that, Based on the projection point of the base plate centerline point corresponding to the center of the base circle onto the base circle of the circumscribed circle, the circumscribed circle is unfolded along this point to obtain two-dimensional unfolded planar point cloud data; including: Based on the projection point of the center line of the base plate corresponding to the center of the bottom circle on the bottom circle of the circumscribed circle, the circumscribed circle is cut and unfolded along the point to obtain the unfolded three-dimensional point cloud data. Based on the center of the bottom surface of the fitted circumcircle, the projection point of the center of the bottom plate corresponding to the center of the bottom surface on the bottom surface of the circumcircle, and the projection point of the three-dimensional point cloud data on the bottom surface of the fitted circumcircle, the angle formed by the projection point of the three-dimensional point cloud data on the bottom surface of the fitted circumcircle and the projection point of the center of the bottom surface of the circumcircle and the projection point of the center of the bottom plate corresponding to the center of the bottom surface on the bottom surface of the circumcircle is obtained. Based on the points in the 3D point cloud data, the center of the bottom surface of the fitted circumcircle, the direction vector of the central axis of the fitted circumcircle, and the angle formed therein, the unfolded 2D coordinate data points are obtained. By iterating through each point in the three-dimensional point cloud data and repeating the above steps, the three-dimensional coordinates are transformed into two-dimensional coordinates, and the mapping relationship data from three-dimensional point cloud coordinates to two-dimensional plane coordinates is obtained. The unfolded point cloud data is the two-dimensional unfolded plane point cloud data.
12. The method according to claim 1, characterized in that, The two-dimensional unfolded planar point cloud data is rasterized to obtain a two-dimensional planar image of the plane; include: Project each point in the two-dimensional unfolded planar point cloud data onto the image to obtain two-dimensional pixel coordinates; Construct a color accumulation matrix and a point counting matrix to store the total color of each pixel and the number of points within the pixel, respectively. Based on the color accumulation matrix and the point counting matrix, the average value of each pixel block is obtained, and the average value is output to each pixel to obtain a two-dimensional planar image of the plane.
13. The method according to claim 1, characterized in that, Based on the two-dimensional planar image of the tunnel, the surface traces of the tunnel structure are obtained; including: Based on the two-dimensional planar image of the adit, the structural surface traces of the adit are obtained using a polyline annotation method.
14. The method according to claim 1, characterized in that, Based on the three-dimensional point cloud data of the aforementioned structural surface traces, principal component analysis is used to process the data to obtain a fitting plane; including: A three-dimensional point cloud data matrix is constructed based on the three-dimensional point cloud data of the structure surface traces. Based on the three-dimensional point cloud data of the structure surface traces, the mean center of the three-dimensional point cloud data is obtained, and the three-dimensional point cloud matrix is subjected to mean normalization processing to obtain three-dimensional point cloud centered data. Based on the centralized data of the three-dimensional point cloud and the three-dimensional point cloud data matrix, the three-dimensional point cloud data covariance matrix is obtained. Based on the covariance matrix of the three-dimensional point cloud data, the eigenvalues and corresponding eigenvectors of the three-dimensional point cloud covariance matrix are obtained, and the eigenvector corresponding to the smallest eigenvalue is selected as the normal vector of the fitting plane.
15. The method according to claim 1, characterized in that, Based on the fitted plane, structural surface attitude parameter information is obtained, including: Based on the fitted plane, the strike, dip, and dip angle of the structural plane are obtained, thus obtaining the structural plane attitude parameter information.
16. A device for calculating the attitude of geological structural surfaces in adits, characterized in that, include: The 3D point cloud data acquisition module is used to obtain the 3D point cloud data of the tunnel. The three-dimensional central axis point set acquisition module is used to obtain the three-dimensional central axis point set of the tunnel based on the three-dimensional point cloud data; The fitting circumcircle construction module obtains the fitting circumcircle for projection based on the three-dimensional central axis point set; The two-dimensional unfolded plane point cloud data acquisition module is used to project and unfold the three-dimensional point cloud data based on the fitted circumcircle to obtain two-dimensional unfolded plane point cloud data and the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded plane point cloud data. A two-dimensional planar image acquisition module is used to rasterize the two-dimensional unfolded planar point cloud data to obtain a two-dimensional planar image of the plane. The structural surface trace acquisition module is used to obtain the structural surface trace of the tunnel based on the two-dimensional planar image of the tunnel. The structural surface trace three-dimensional point cloud data acquisition module is used to obtain the three-dimensional point cloud data of the structural surface trace based on the mapping relationship between the three-dimensional point cloud data and the two-dimensional unfolded plane point cloud data. The fitting plane construction module is used to process the three-dimensional point cloud data based on the structure surface traces using principal component analysis to construct a fitting plane. The structural plane attitude information acquisition module is used to obtain structural plane attitude parameter information based on the fitted plane; The step of obtaining the three-dimensional central axis point set of the tunnel based on the three-dimensional point cloud data includes: 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 centerline of the top arch and the set of points along the centerline of the bottom plate, the three-dimensional center axis point set of the adit tunnel is obtained.
17. 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 15.
18. 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 15.