Comparison Method of 3D Models of Architectural Decoration
Through improved ICP algorithm and three-dimensional laser scanning technology, the problem of low comparison efficiency of building decoration three-dimensional models is solved, and a more efficient and accurate comparison process is achieved.
Patent Information
- Application Number
- CN202210676479.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-15
- Publication Date
- 2025-02-07
- Estimated Expiration
- 2042-06-15
AI Technical Summary
The existing three-dimensional model comparison methods for building decoration are relatively inefficient, especially the ICP algorithm is sensitive to initial values and has low operating efficiency.
Using the improved ICP algorithm, the point cloud data of the target object and the standard model is obtained through three-dimensional laser scanning, the matching point pair is calculated using K nearest neighbor search and normal vector, and coarse registration and precise registration are performed to finally calculate the point cloud bounding box. Overlapping coefficient.
The speed and accuracy of three-dimensional model comparison of building decoration is improved, and the efficiency of the comparison process is improved.
Smart Images

Figure CN115098912B_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the field of image data processing, and in particular to a comparison method for a three-dimensional model of architectural decoration. Background Art
[0002] Architectural decoration can be used to beautify buildings and improve their functions, and is an indispensable part of people's lives. Architectural decoration mainly refers to the beautification project carried out inside and outside the main building after the main building is completed. It includes not only outdoor decoration but also indoor decoration. Among them, outdoor decoration mainly involves the decoration of exterior walls using stone, aluminum-plastic panels and glass; indoor decoration mainly involves the decoration of walls and floors, as well as the installation of lamps and sanitary ware.
[0003] 3D model technology has been used in architectural decoration. Among them, 3D model comparison can be achieved based on 3D model registration technology; 3D model registration refers to constructing a 3D space transformation between the source model and the target model so that the source model can overlap with the target model to the greatest extent under the effect of this transformation. Existing registration methods often use the ICP algorithm for registration, but the ICP algorithm is extremely sensitive to the initial value and has low operating efficiency, making the comparison process of architectural decoration 3D models inefficient. Summary of the invention
[0004] In order to solve the problem of low efficiency in the existing comparison process of architectural decoration three-dimensional models, the object of the present invention is to provide a comparison method for architectural decoration three-dimensional models.
[0005] A comparison method of a building decoration three-dimensional model of the present invention comprises the following steps:
[0006] Acquire point cloud data of the target object by three-dimensional laser scanning technology, wherein the point cloud data includes three-dimensional coordinate data and RGB color data;
[0007] Use the K nearest neighbor search method to find the neighboring points of each point in the point cloud data of the target object, and calculate the normal vector of each point in the point cloud data of the target object according to the neighboring points of each point in the point cloud data of the target object; calculate the eigenvalue of the neighborhood plane corresponding to each point in the point cloud data of the target object according to the three-dimensional coordinate data and RGB color data of each point in the point cloud data of the target object; calculate the similarity index of each point in the point cloud data of the target object and each point in the point cloud data of the standard model according to the target data of each point in the point cloud data of the target object and the target data of each point in the point cloud data of the standard model, judge the matching point pairs in the point cloud data of the target object and the point cloud data of the standard model according to the similarity index, and roughly align the point cloud data of the target object with the point cloud data of the standard model according to the matching points; the target data is the normal vector and the eigenvalue of the corresponding neighborhood plane; the neighborhood plane is the plane fitted by the neighborhood points;
[0008] According to the rough registration result, the point cloud data of the target object and the point cloud data of the standard model are precisely registered to obtain a precise registration result;
[0009] The overlap coefficient between the point cloud bounding box of the target object and the point cloud bounding box of the standard model is calculated based on the precise registration results.
[0010] Furthermore, the step of calculating the normal vector of each point in the point cloud data of the target object according to the neighboring points of each point in the point cloud data of the target object includes:
[0011] For any point p in the point cloud data of the target object, the covariance matrix CV is constructed using the following formula:
[0012]
[0013] Among them, p0 is the centroid of the neighborhood plane corresponding to point p, the eigenvector corresponding to the minimum eigenvalue of the normal vector covariance matrix CV of point p, n is the number of neighboring points corresponding to point p, p i is the i-th neighboring point corresponding to point p, and T is the transpose.
[0014] Further, the step of calculating the characteristic value of the neighborhood plane corresponding to each point in the point cloud data of the target object according to the three-dimensional coordinate data and the RGB color data of each point in the point cloud data of the target object includes:
[0015] Calculate the distance between point p and its corresponding neighboring points:
[0016]
[0017] Among them, D i is the distance between point p and the corresponding i-th neighboring point, (x p ,y p , z p ) is the coordinate of point p, (x pi ,y pi , z pi ) is the coordinate of the i-th neighboring point of point p;
[0018] After obtaining the distance between point p and the corresponding adjacent points, the obtained distance D i Perform normalization and record the normalized distance as d i ;
[0019] The eigenvalue of the neighborhood plane corresponding to point p is calculated using the following formula:
[0020]
[0021] Among them, S' p is the eigenvalue of the neighborhood plane corresponding to point p, Sp is the saturation of point p, d i represents the normalized distance between point p and the corresponding i-th neighboring point, S i It represents the saturation of the i-th neighboring point corresponding to point p, and n is the number of neighboring points corresponding to point p.
[0022] Furthermore, the similarity index of each point in the point cloud data of the target object and each point in the point cloud data of the standard model is calculated based on the target data of each point in the point cloud data of the target object and the target data of each point in the point cloud data of the standard model, including:
[0023] For any point p in the point cloud data of the target object and any point u in the point cloud data of the standard model, the similarity index between point p and point u is calculated according to the following formula:
[0024]
[0025] Among them, XS is the similarity index between point p and point u, S' u is the eigenvalue of the neighborhood plane corresponding to point u, θ is the angle between the eigenvectors corresponding to point p and point u, S' p is the eigenvalue of the neighborhood plane corresponding to point p;
[0026] The method for obtaining the special vector corresponding to point p includes:
[0027] Calculate the saturation difference between point p and the corresponding adjacent point, take point p as the starting point and the adjacent point corresponding to the maximum saturation difference as the end point, and construct the color gradient vector Then the eigenvector of point p is the normal vector corresponding to point p, is the eigenvector corresponding to point p.
[0028] Furthermore, judging matching point pairs in the point cloud data of the target object and the point cloud data of the standard model according to the similarity index includes:
[0029] Set a threshold T. If XS is greater than the threshold T, point p and point u are judged to be relatively similar, and point p and point u are taken as a matching point pair. If the similarity indexes of multiple points in the point cloud data of the standard model and a point in the point cloud data of the target object are all greater than T, then the point in the point cloud data of the standard model with the largest similarity index is taken as the point that matches the point in the point cloud data of the target object.
[0030] Furthermore, the step of determining the overlap coefficient between the point cloud bounding box of the target object and the point cloud bounding box of the standard model according to the precise registration result includes:
[0031] Get the minimum directed bounding box of the target point cloud and the minimum directed bounding box of the standard model point cloud respectively, and calculate the overlap coefficient of the two bounding boxes:
[0032]
[0033] Among them, δ is the overlap coefficient between the target point cloud bounding box and the standard model point cloud bounding box, V s is the volume of the standard model point cloud bounding box, V t is the volume of the target point cloud bounding box, V i It is the volume of the bounding box obtained by the intersection of the standard model point cloud and the target object point cloud bounding box.
[0034] Beneficial effect: The present invention utilizes the improved ICP algorithm to realize the comparison of architectural decoration three-dimensional models. Compared with the comparison of architectural decoration three-dimensional models using the traditional ICP algorithm, the comparison speed and accuracy are improved, and the efficiency of the comparison process of architectural decoration three-dimensional models is improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] Figure 1 The present invention is a flow chart of a method for comparing three-dimensional models of architectural decoration. DETAILED DESCRIPTION
[0036] To make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be introduced below in conjunction with the accompanying drawings in the embodiments of the present invention.
[0037] In order to improve the efficiency of the comparison process of architectural decoration 3D models, such as Figure 1 As shown, the comparison method of the architectural decoration three-dimensional model of this embodiment includes the following steps:
[0038] (1) obtaining point cloud data of a target object by three-dimensional laser scanning technology, wherein the point cloud data includes three-dimensional coordinate data and RGB color data;
[0039] In order to compare the target object with the corresponding standard model, this embodiment uses a laser scanner to obtain a point cloud data set of the target object through three-dimensional laser scanning technology, which is recorded as point cloud data P. The point cloud data includes three-dimensional coordinate (x, y and z) data and RGB color data. The target object of this embodiment is an object used in the process of building decoration, such as lamps and sanitary ware. In this embodiment, the point cloud data corresponding to the standard model is recorded as point cloud data U, which also includes three-dimensional coordinate (x, y and z) data and RGB color data.
[0040] (2) using the K nearest neighbor search method to find the neighboring points of each point in the point cloud data of the target object, and calculating the normal vector of each point in the point cloud data of the target object according to the neighboring points of each point in the point cloud data of the target object; calculating the characteristic value of the neighborhood plane corresponding to each point in the point cloud data of the target object according to the three-dimensional coordinate data and RGB color data of each point in the point cloud data of the target object; calculating the similarity index of each point in the point cloud data of the target object and each point in the point cloud data of the standard model according to the target data of each point in the point cloud data of the target object and the target data of each point in the point cloud data of the standard model, judging the matching point pairs in the point cloud data of the target object and the point cloud data of the standard model according to the similarity index, and roughly aligning the point cloud data of the target object with the point cloud data of the standard model according to the matching point pairs; the target data is the normal vector and the corresponding characteristic value of the neighborhood plane; the neighborhood plane is the plane obtained by fitting the neighborhood points;
[0041] The ICP algorithm is often used for the registration of point cloud data. The traditional ICP algorithm has problems such as low computational efficiency, high requirements for the initial position of the registration, and easy to fall into the local optimum. In order to solve this problem, this embodiment uses an improved ICP algorithm to complete the registration between point cloud data to improve the registration efficiency and accuracy. The improved ICP algorithm of this embodiment is described below:
[0042] First, the point cloud data is processed to reduce the convergence time in the precise registration process, and at the same time, the two sets of point cloud data are as close as possible, thereby reducing the difference between the two models and improving the registration accuracy. The specific processing process can be divided into the following three parts: ① Obtain the normal vector of each point; ② Obtain the eigenvalue of the neighborhood plane corresponding to each point; ③ Match the point cloud data according to the normal vector of each point and the eigenvalue of the corresponding neighborhood plane. The following is an explanation of the content of each part:
[0043] ①Get the normal vector of each point;
[0044] For any point p in the point cloud data P, use the K nearest neighbor search method to find the point whose distance is less than the neighborhood threshold, recorded as the neighboring point p i (i=1, 2, 3...n), n is the number of neighboring points, the neighborhood threshold is set by itself when applied, then these n points can be fitted to obtain a local plane Z, also called the neighborhood plane, so the normal vector of the local plane Z can be obtained as the normal vector of point p. The process of the K nearest neighbor search method is prior art and will not be repeated here. In this embodiment, the normal vector of each point in the point cloud data is obtained by the neighborhood covariance analysis method, and the principle is as follows:
[0045] According to any point p in the point cloud data P and the corresponding adjacent point p i Construct the covariance matrix CV:
[0046]
[0047] Among them, p0 is the centroid of the neighborhood plane corresponding to point p, and the normal vector of point p is the eigenvector corresponding to the minimum eigenvalue of the covariance matrix CV, which is recorded as The process of calculating the eigenvector corresponding to the minimum eigenvalue of the covariance matrix is prior art and will not be described in detail here.
[0048] ② Obtain the eigenvalue of the neighborhood plane corresponding to each point;
[0049] Since each point cloud data contains corresponding RGB information, the HSV information of the point cloud data can be obtained based on the RGB information. Architectural decoration is generally pure color (i.e., the pure color target object targeted by this embodiment), that is, the hue values between each point are often very close, and the characteristic difference is most obvious on the S channel. When obtaining the S eigenvalue of the neighborhood plane corresponding to point p, the S of the neighboring points of point p is referenced for acquisition, and S is the saturation.
[0050] The process of obtaining the eigenvalue of the neighborhood plane corresponding to point p in this embodiment is as follows:
[0051] First calculate the distance between point p and the corresponding neighboring points:
[0052]
[0053] Among them, D i is the distance between point p and the corresponding i-th neighboring point, (x p ,y p , z p ) is the coordinate of point p, (x pi ,y pi , z pi ) is the coordinate of the i-th neighboring point of point p.
[0054] After obtaining the distance between point p and the corresponding adjacent points, the obtained distance D i Perform normalization and record the normalized distance as d i .
[0055] The eigenvalue of the neighborhood plane corresponding to point p is calculated using the following formula:
[0056]
[0057] Among them, S' p is the eigenvalue of the neighborhood plane corresponding to point p, S p is the saturation of point p, d i represents the normalized distance between point p and the corresponding i-th neighboring point, S iIt represents the saturation of the i-th neighboring point corresponding to point p, and n is the number of neighboring points corresponding to point p.
[0058] ③ Roughly align the point cloud data based on the normal vector of each point and the eigenvalue of the corresponding neighborhood plane.
[0059] Calculate the saturation difference between point p and the corresponding adjacent point, take point p as the starting point and the adjacent point corresponding to the maximum saturation difference as the end point, and construct the color gradient vector According to Get the feature vector of point p
[0060] In this embodiment, the set of point pairs that can be matched in two sets of point cloud data is determined based on the feature vector of each point and the feature value of the corresponding neighborhood plane. For any point p in the point cloud data P, a point u that satisfies the following similarity measurement rule with p is found in U. The similarity measurement rule of this embodiment is as follows: According to the above method, the feature vector of point u in the point cloud data U and the feature value of the corresponding neighborhood plane can be obtained, and the angle θ between the feature vectors corresponding to point p and point u is calculated. The similarity between point p and point u is calculated based on the angle θ and the feature value of the corresponding neighborhood plane. The formula is as follows:
[0061]
[0062] Among them, XS is the similarity index between point p and point u, S' u is the eigenvalue of the neighborhood plane corresponding to point u, the value range of θ is (-π, π], and a threshold T is set. In this embodiment, T=0.9. If XS is greater than the threshold T, it is determined that point p and point u are relatively similar, and point p and point u can be used as a matching point pair. If the similarity indexes of multiple points in point cloud data U and a point in point cloud data P are all greater than T, the point in point cloud data U with the largest similarity index is used as the point that matches the point in point cloud data P.
[0063] According to the above method, the judgment of the matching point pairs in the point cloud data P and the point cloud data U can be realized, and the matching point pair sets in the point cloud data P and the point cloud data U can be obtained. Then, the normal vector direction of each point pair is mapped into a consistent three-dimensional space transformation, and the geometric hash method is used to find the transformation that makes the normal vectors of the largest number of point pairs consistent. Then, the two sets of point cloud data are initially aligned using this transformation to achieve the rough alignment of the two sets of point cloud data. The process of achieving rough alignment after obtaining the set of matching point pairs in this embodiment is a prior art and will not be repeated here.
[0064] (3) Based on the rough registration result, the point cloud data of the target object and the point cloud data of the standard model are precisely registered to obtain a precise registration result;
[0065] Point cloud data Need to perform precise alignment, N p is the number of points included in the point cloud data P, N u is the number of points included in the point cloud data U; through the above process, the point cloud data P and the point cloud data U have completed the rough registration, and their relative positions are close to the real positions. In this embodiment, the result of the rough registration is used as the initial value of the fine registration, and the final registration is achieved through the improved ICP algorithm. The specific process is as follows:
[0066] Initial value setting: let point set P0 = R0*P + T0, rigid body change vector q = [R0, T0] T , k=0, dynamic adjustment factor m=0; R0, T0 are the initial rigid body transformation values after coarse alignment.
[0067] Calculate relevant points: For each point p in the point cloud data P i , the ICP algorithm needs to find a point y in U that is closest to it. i As its related point. is the relevant point set of point cloud data P.
[0068] Calculate the registration parameters: (Δq k , d k )=Q(P k , Y k ), Q is the minimization operation, Δq k for q k The change between two consecutive iterations, and then Δq k Apply to P k Get a new location: p k+1 =Δq k (p k ). The traditional ICP algorithm goes from P0 to Y K Calculate the rigid body transformation parameters, and the difference between the improved ICP algorithm in this embodiment and the traditional ICP is that: this embodiment starts from P K To Y K Calculate the rigid body transformation parameters, that is, when updating the position, pass p k+1 =Δq k q k (p k ) instead of the traditional P k+1 =q k (P0). The basic process of the ICP algorithm is prior art and will not be described in detail here.
[0069] Judge the point matching mean square error d k If d k -d k-1>0, then m=m+1, otherwise m=0. Then determine the dynamic adjustment factor: if m>0, then execute P k+1 =Δq k (P k+1 ) a total of m times to update the position P k+1 . Termination condition, if d k -d k-1 <T', the iteration is terminated, otherwise k=k+1, and the above steps are repeated, where q is the rigid body transformation vector between the point sets P and Y, and d is the mean square point matching error.
[0070] This embodiment improves the convergence speed of ICP without affecting the accuracy. So far, this embodiment has achieved the precise registration of point cloud data P and point cloud data U.
[0071] (4) Calculate the overlap coefficient between the point cloud bounding box of the target object and the point cloud bounding box of the standard model based on the precise registration results.
[0072] Through the above process, this embodiment has completed the registration of point cloud data P and point cloud data U. Next, the overlap between the target object and the standard model can be detected according to the registration result. Specifically, this embodiment obtains the minimum directional bounding box of the target object point cloud and the minimum directional bounding box of the standard model point cloud, and calculates the overlap coefficient of the two bounding boxes:
[0073]
[0074] Among them, δ is the overlap coefficient between the target point cloud bounding box and the standard model point cloud bounding box, V s is the volume of the standard model point cloud bounding box, V t is the volume of the target point cloud bounding box, V i The volume of the bounding box obtained by the intersection of the standard model point cloud and the target object point cloud bounding box. The larger δ is, the larger the overlap coefficient is, which means that the comparison result is more similar between the target object and the standard model.
[0075] The process of obtaining the minimum directed bounding box of the three-dimensional point cloud in this embodiment is prior art and will not be described in detail here.
[0076] This embodiment uses the improved ICP algorithm to achieve the comparison of architectural decoration three-dimensional models. Compared with using the traditional ICP algorithm to achieve the comparison of architectural decoration three-dimensional models, it improves the comparison speed and accuracy, and improves the efficiency of the comparison process of architectural decoration three-dimensional models.
[0077] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.
Claims
1. A method for comparing three-dimensional models of architectural decoration, characterized in that: The following steps are involved: Acquire point cloud data of the target object by three-dimensional laser scanning technology, wherein the point cloud data includes three-dimensional coordinate data and RGB color data; Use the K nearest neighbor search method to find the neighboring points of each point in the point cloud data of the target object, and calculate the normal vector of each point in the point cloud data of the target object according to the neighboring points of each point in the point cloud data of the target object; calculate the eigenvalue of the neighborhood plane corresponding to each point in the point cloud data of the target object according to the three-dimensional coordinate data and RGB color data of each point in the point cloud data of the target object; calculate the similarity index of each point in the point cloud data of the target object and each point in the point cloud data of the standard model according to the target data of each point in the point cloud data of the target object and the target data of each point in the point cloud data of the standard model, judge the matching point pairs in the point cloud data of the target object and the point cloud data of the standard model according to the similarity index, and roughly align the point cloud data of the target object with the point cloud data of the standard model according to the matching points; the target data is the normal vector and the eigenvalue of the corresponding neighborhood plane; The neighborhood plane is a plane obtained by fitting the neighborhood points; According to the rough registration result, the point cloud data of the target object and the point cloud data of the standard model are precisely registered to obtain a precise registration result; Calculate the overlap coefficient between the point cloud bounding box of the target object and the point cloud bounding box of the standard model according to the precise registration result; The step of calculating the normal vector of each point in the point cloud data of the target object according to the neighboring points of each point in the point cloud data of the target object comprises: For any point p in the point cloud data of the target object, the covariance matrix CV is constructed using the following formula: Among them, p0 is the centroid of the neighborhood plane corresponding to point p, the eigenvector corresponding to the minimum eigenvalue of the normal vector covariance matrix CV of point p, n is the number of neighboring points corresponding to point p, p i is the i-th neighboring point corresponding to point p, and T is the transpose; The step of calculating the characteristic value of the neighborhood plane corresponding to each point in the point cloud data of the target object according to the three-dimensional coordinate data and the RGB color data of each point in the point cloud data of the target object comprises: Calculate the distance between point p and its corresponding neighboring points: Among them, D i is the distance between point p and the corresponding i-th neighboring point, (x p ,y p , z p ) is the coordinate of point p, (x pi ,y pi , z pi ) is the coordinate of the i-th neighboring point of point p; After obtaining the distance between point p and the corresponding adjacent points, the obtained distance D i Perform normalization and record the normalized distance as d i ; The eigenvalue of the neighborhood plane corresponding to point p is calculated using the following formula: Among them, S′ p is the eigenvalue of the neighborhood plane corresponding to point p, S p is the saturation of point p, d i represents the normalized distance between point p and the corresponding i-th neighboring point, S i represents the saturation of the i-th neighboring point corresponding to point p, and n is the number of neighboring points corresponding to point p; The calculating of the similarity index between each point in the point cloud data of the target object and each point in the point cloud data of the standard model according to the target data of each point in the point cloud data of the target object and the target data of each point in the point cloud data of the standard model includes: For any point p in the point cloud data of the target object and any point u in the point cloud data of the standard model, the similarity index between point p and point u is calculated according to the following formula: Among them, XS is the similarity index between point p and point u, S ′ u is the eigenvalue of the neighborhood plane corresponding to point u, θ is the angle between the eigenvectors corresponding to point p and point u, S ′ p is the eigenvalue of the neighborhood plane corresponding to point p; The method for obtaining the special vector corresponding to point p includes: Calculate the saturation difference between point p and the corresponding adjacent point, take point p as the starting point and the adjacent point corresponding to the maximum saturation difference as the end point, and construct the color gradient vector Then the eigenvector of point p is the normal vector corresponding to point p, is the eigenvector corresponding to point p.
2. The method for comparing architectural decoration three-dimensional models according to claim 1, characterized in that: The step of determining matching point pairs in the point cloud data of the target object and the point cloud data of the standard model according to the similarity index includes: Set a threshold T. If XS is greater than the threshold T, point p and point u are judged to be relatively similar, and point p and point u are taken as a matching point pair. If the similarity indexes of multiple points in the point cloud data of the standard model and a point in the point cloud data of the target object are all greater than T, then the point in the point cloud data of the standard model with the largest similarity index is taken as the point that matches the point in the point cloud data of the target object.
3. The method for comparing architectural decoration three-dimensional models according to claim 1, characterized in that: The step of determining the overlap coefficient between the point cloud bounding box of the target object and the point cloud bounding box of the standard model according to the precise registration result includes: Get the minimum directed bounding box of the target point cloud and the minimum directed bounding box of the standard model point cloud respectively, and calculate the overlap coefficient of the two bounding boxes: Among them, δ is the overlap coefficient between the target point cloud bounding box and the standard model point cloud bounding box, V s is the volume of the standard model point cloud bounding box, V t is the volume of the target point cloud bounding box, V i It is the volume of the bounding box obtained by the intersection of the standard model point cloud and the target object point cloud bounding box.
Citation Information
Patent Citations
Multi-dimensional feature integrated building point cloud hierarchical clustering segmentation method
CN106780509A
Building intelligent three-dimensional mapping method based on multi-source remote sensing data
CN112489212A