Three-dimensional point cloud clustering segmentation method in smart home digital twin
By improving the QO-BESCH (Vulture Search) algorithm, and utilizing point cloud volume element density selection and dynamic adaptive control operators, Cauchy inverse learning strategy and frenzied hunting mechanism, the clustering and segmentation of 3D point clouds of indoor furniture is optimized. This solves the problems of KMC's sensitivity to cluster centers and the Vulture Search's tendency to get trapped in local optima, and achieves better clustering and segmentation results and higher clustering accuracy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-17
- Publication Date
- 2026-03-24
AI Technical Summary
In existing technologies, KMC is sensitive to cluster centers, has low clustering accuracy, and the Bald Eagle Search algorithm has insufficient path search capability, making it prone to getting trapped in local optima and difficult to effectively process 3D point cloud models of indoor furniture.
An improved vulture search algorithm (QO-BESCH) is adopted. By selecting initial cluster centers based on point cloud volume element density, and combining dynamic adaptive control operators, Cauchy inverse learning strategy and frenzied hunting mechanism, the vulture search algorithm is optimized to improve the clustering and segmentation effect.
While ensuring rapid optimization, it improves the clustering and segmentation effect, finds the optimal cluster center, and enhances the clustering accuracy and robustness, making it highly applicable.
Smart Images

Figure CN115953606B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of three-dimensional point cloud segmentation, and particularly relates to a three-dimensional point cloud clustering and segmentation method in smart home digital twinning. BACKGROUND
[0002] With the rapid development of three-dimensional scanning technology, three-dimensional point cloud data model has become a general form of geometric model representation and is widely used in computer visualization, reverse engineering, three-dimensional reconstruction and other fields. In recent years, the research on three-dimensional point cloud segmentation methods at home and abroad mainly falls into two categories: deep learning-based and point cloud clustering-based. The deep learning-based point cloud segmentation method uses a data set to train a model to obtain a parameter model containing local to global features of point cloud space, and uses the trained model for point cloud level segmentation, but the training process requires high computing power. Clustering is an unsupervised machine learning algorithm without training process, which classifies by maximizing the similarity of elements within the class and minimizing the similarity of elements between the classes, and can be used as one of the key steps in point cloud data processing. The point cloud clustering method mainly includes DBSCAN clustering, spectral clustering and K-means clustering. DBSCAN clusters according to the density of points, which is time-consuming and computationally intensive. The selection of K value in spectral clustering depends on prior knowledge, and it is easily affected by the initial cluster center and falls into local optimum. The K-means clustering algorithm is simple, easy to implement and converges quickly, but it is sensitive to the clustering center and easily falls into local optimum when processing three-dimensional point cloud data, which needs to be optimized and improved. In recent years, swarm intelligence optimization algorithms [7] have been used to solve the shortcomings of the above clustering algorithms. IMFO-KMC uses the maximum and minimum distance product method to initialize the clustering center, which reduces the sensitivity of KMC algorithm to the initial clustering center. MTSFO-HIKMC can efficiently process high-dimensional data set clustering. DHSSA-KMC designs a disturbance factor-leader optimization strategy, which greatly improves the accuracy of finding the clustering center. The bald eagle search (BES) algorithm is a new meta-heuristic swarm intelligence algorithm proposed by Alsattar in 2020, which simulates the process of bald eagle hunting and has the characteristics of high precision, strong adaptability and easy model modification, and is suitable for optimization clustering. However, BES itself has insufficient search capability and is prone to fall into local optimum, which needs to be further improved. SUMMARY
[0003] The present application aims to provide a three-dimensional point cloud clustering and segmentation method in smart home digital twinning, to solve the problems of KMC being sensitive to the clustering center and having low clustering accuracy in the prior art, and the path search capability of the existing bald eagle search algorithm being insufficient and being prone to fall into local optimum. The present application has better clustering and segmentation effect when facing different indoor furniture three-dimensional point cloud models.
[0004] To achieve the above object, the present application adopts the following technical solutions:
[0005] The three-dimensional point cloud clustering segmentation method in the smart home digital twin includes the following steps:
[0006] Step 1: Obtain the indoor furniture point cloud file, process the indoor furniture point cloud file with a voxel filter, and obtain a furniture point cloud model;
[0007] Step 2: Determine the clustering segmentation cost function of the furniture point cloud model obtained in step 1;
[0008] Step 3: Obtain a vulture search algorithm;
[0009] Step 4: Improve the vulture search algorithm obtained in step 3 according to the characteristics of the furniture point cloud model to obtain an improved vulture search algorithm;
[0010] Step 5: Use the improved vulture search algorithm obtained in step 4 and the clustering segmentation cost function obtained in step 2 to optimize the indoor furniture three-dimensional point cloud clustering segmentation.
[0011] Further, in step 1, the indoor furniture point cloud file is obtained from the ModelNet40 point cloud dataset; and the voxel filter in the PCL point cloud library is used to process the indoor furniture point cloud file to obtain the furniture point cloud model.
[0012] Further, the clustering segmentation cost function of step 2 is specifically:
[0013]
[0014] In the formula, P Fi is the clustering segmentation cost function, x j is the position of the jth point in the furniture point cloud model, C j is the clustering center corresponding to the jth point in the furniture point cloud model, d(x j , C j ) is the Euclidean distance from the jth point in the furniture point cloud model to the clustering center, C Ni is the number of point clouds of the ith class in the furniture point cloud model.
[0015] Further, the vulture search algorithm in step 3 includes the following steps:
[0016] Step 3.1: Randomly initialize the vulture population;
[0017] Step 3.2: According to the vulture population initialized in step 3.1, update the position of the vulture population using the formula;
[0018] First, the vulture identifies and selects the optimal area within its search space until it captures its prey. The optimal location represents the area with the most food. The location is updated according to the following formula:
[0019] p i,new =p best +α*r(p mean -p i )
[0020] In the formula, α is a parameter controlling the positional changes of the bald eagle in three-dimensional space, with a value range of (1.5, 2); r is a random number, with a value range of (0, 1); p best This is currently the best search location for the vultures; p mean To combine the average of the two consecutive vulture position updates; p i Let i be the position of the i-th vulture in the population;
[0021] Secondly, the vulture searches for prey within its search space, moving in different directions to gradually increase its search range. The position is updated using polar coordinates according to the following formula:
[0022] θ(i)=K*π*rand
[0023] r(i)=θ(i)+R*rand
[0024] xr(i)=r(i)*sin(θ(i)),yr(i)=r(i)*cos(θ(i))
[0025] x(i)=xr(i) / max(|xr|), y(i)=yr(i) / max(|yr|)
[0026] p i,new =p i +x(i)*(p i -p mean )+y(i)*(p i -p i+1 )
[0027] In the formula, θ(i) and r(i) are the polar angle and polar radius of the polar coordinate equation, respectively; K and R are control parameters, with variation ranges of (0,5) and (0.5,2), respectively; rand is a random number within (0,1); x(i) and y(i) represent the position of the vulture in polar coordinates, both taking values of (-1,1); p i+1 Let i be the next updated position of the i-th vulture;
[0028] Finally, all the vultures swooped down from their optimal positions in the search space to attack and hunt their prey. The positions were then updated using polar coordinates according to the formula, as follows:
[0029] θ(i)=α*π*rand,r(i)=θ(i)
[0030] xr(i)=r(i)*sinh(θ(i)),yrθ(i)=rθ(i)*cosh(θ(i))
[0031] x1(i)=xr(i) / max(xr|),y1(i)=yr(i) / max(yr)
[0032]
[0033] p i,new =rand*p best +δ x +δ y
[0034] In the formula, r(i) is the polar radius of the polar coordinate equation, x1, y1, xr, and yr are the coordinate values of the bald eagle under different conditions, x1 and y1, xr and yr are the positions of the i-th bald eagle in polar coordinates, and δ x δ y c1 and c2 represent the changes in the coordinates of the vulture in the x and y coordinates, respectively. c1 and c2 represent the inertial parameters of the vulture's motion toward the optimal position, and their values are both in the range of (1,2).
[0035] Furthermore, in step 4, the vulture search algorithm obtained in step 3 is improved based on the characteristics of the furniture point cloud model, resulting in an improved vulture search algorithm. The specific steps include:
[0036] Step 4.1: For the furniture point cloud model obtained in Step 1, select the initial cluster center based on the point cloud volume element density, with each bald eagle representing a point cloud location;
[0037] Step 4.2: First, in the region selection phase, a dynamic adaptive control operator is used to update the location of the bald eagle population;
[0038] Step 4.3: Next, in the search phase, the location of the bald eagle population is updated using the Cauchy reverse learning strategy;
[0039] Step 4.4: Finally, update the position of the vulture population during the dive capture phase using the frenzied hunting mechanism;
[0040] Step 4.5: Calculate the fitness of the bald eagle population and select the best bald eagle based on the fitness level;
[0041] Step 4.6: Determine if the maximum number of iterations has been reached. If yes, output the optimal bald eagle, i.e., the optimal cluster center. If no, return to step 4.2.
[0042] Furthermore, in step 4.1, the initial cluster centers are selected based on the point cloud volume element density, using the following formula:
[0043]
[0044]
[0045]
[0046]
[0047]
[0048]
[0049] In the formula, x max y max , z max and x min y min , z min Let V represent the maximum and minimum values of the point cloud in the XYZ coordinate directions, respectively, where V is the volume of the point cloud bounding box, and L is the value of the point cloud bounding box. x L y L z Let be the lengths of the three sides of the point cloud bounding box, 'a' be the side length of the point cloud bounding box voxel, 'M' be the number of voxels generated, and 'n' be the number of voxels generated. x n y n z Let N represent the number of voxels in the XYZ coordinate directions, (i,j,k) be the coordinates of any chosen voxel, the inequality in the above formula represents the range of point cloud coordinates, and box(i,j,k) is the voxel. box(i,j,k) ρ represents the number of points falling within the range of the volume element box(i,j,k). box(i,j,k) Given the point cloud density, the centroids of the top K densest voxels are calculated using the above formula and used as the initial cluster centers, where c x c y c z x represents the coordinates of the current point cloud model cluster center. t y t , z t Let t be the coordinates of any point cloud in the XYZ coordinate direction, and t be the counting parameter.
[0050] Furthermore, in step 4.2, during the region selection phase, a dynamic adaptive control operator is first used to update the location of the bald eagle population:
[0051] p i,new =p best +lm(p mean -p i )
[0052] lm = lm min +(lmmax -lm min )*(n / Max_iter) 5
[0053] In the formula, lm is the dynamic adaptive control operator with an interval of [2, 2.5], n is the current iteration number, Max_iter is the maximum iteration number, and lm min and lm max These are the lower and upper bounds of lm, respectively, namely 2 and 2.5.
[0054] Furthermore, in step 4.3, the Cauchy back-learning strategy is used to update the location of the bald eagle population, specifically as follows:
[0055] QOP = rand((ub dim+ lb dim ) / 2,ub dim +lb dim -x dim ), i = 1, 2, ...
[0056] In the formula, QOP is the Cauchy inverse point, rand is a random number within (0,1), and ub dim and lb dim Given the upper and lower bounds of the vulture population in the dim dimension, a Cauchy reverse learning strategy is adopted to generate a reverse population of the current population in order to escape local optima.
[0057] Furthermore, step 4.4 employs a frenzied hunting mechanism to update the position of the vulture population during the dive-and-capture phase, specifically as follows:
[0058]
[0059]
[0060] ω=2*rand-1
[0061] EA = 0.5 * rand * e (1-n / Max_iter)
[0062] In the formula, χ is the quality function of the balanced search strategy, ω is the motion morphology parameter, n is the current iteration number, Max_iter is the maximum iteration number, pop is the population size, and EA is the escape factor.
[0063] Furthermore, in step 5, the improved vulture search algorithm is used to optimize the clustering and segmentation of the 3D point cloud of indoor furniture. Specifically:
[0064] After initializing the cluster centers based on point cloud volume element density, a QO-BESCH optimization operation is performed in each category of bald eagle population to obtain new cluster centers. The specific steps for optimizing the 3D point cloud clustering and segmentation of indoor furniture using QO-BESCH include:
[0065] Step 5.1: Use the method in Step 4.1 to obtain the initial cluster centers for the furniture point cloud model obtained in Step 1;
[0066] Step 5.2: Calculate the fitness of each bald eagle in the initial bald eagle population using the clustering segmentation cost function obtained in Step 2, sort the bald eagle population according to the fitness, and select the best bald eagle.
[0067] Step 5.3: Update the position of the vulture population using the methods in steps 4.2-4.4, calculate the fitness of each vulture, and sort the vulture population according to the fitness values.
[0068] Step 5.4: Determine if the maximum number of iterations has been reached. If yes, output the new cluster center of each class after merging; otherwise, return to step 5.3.
[0069] Compared with the prior art, the present invention has the following beneficial technical effects:
[0070] This invention proposes a K-means complementary iterative clustering and segmentation method for 3D point clouds of indoor furniture based on QO-BESCH (Quasi-Oppositional Bald Eagle Searchbase on Crazy-hunting). This method obtains the optimal cluster centers of the 3D point cloud of indoor furniture while ensuring rapid optimization. This invention achieves better clustering and segmentation results when dealing with different 3D point cloud models of indoor furniture, thus improving the optimization accuracy of the improved Bald Eagle Search algorithm and finding the optimal cluster centers.
[0071] Furthermore, this invention designs a KMC initialization based on a voxel-based initial cluster center selection model to improve the quality of initial cluster centers; in the search space selection and search space phases, a dynamic adaptive control operator strategy and a Cauchy inverse strategy are adopted to solve the problem of premature convergence and easy trapping in local extrema in the BES search algorithm during the search space selection phase; a frenzied hunting mechanism is designed to improve the optimization ability of the BES dive-capture phase and increase the success rate of finding cluster centers. Therefore, QO-BESCH can achieve effective clustering and has strong applicability.
[0072] Compared to the Bald Eagle Search algorithm, this invention has better energy efficiency, faster convergence speed, can achieve effective clustering, demonstrates better optimization ability, and improves robustness and clustering accuracy. Attached Figure Description
[0073] The accompanying drawings are provided to further understand the invention and constitute a part of this invention. The illustrative embodiments of the invention and their descriptions are used to explain the invention and do not constitute an improper limitation of the invention.
[0074] Figure 1 This is a flowchart illustrating the present invention;
[0075] Figure 2 This is a flowchart of the improved vulture search algorithm involved in this invention;
[0076] Figure 3 These are clustering results of the three-dimensional point cloud models of indoor furniture according to the present invention; (a) is the clustering result of the bathtub point cloud model, (b) is the clustering result of the bed point cloud model, (c) is the clustering result of the bench point cloud model, (d) is the clustering result of the bookshelf point cloud model, (e) is the clustering result of the curtain point cloud model, (f) is the clustering result of the desk point cloud model, (g) is the clustering result of the door point cloud model, (h) is the clustering result of the dresser point cloud model, (i) is the clustering result of the stool point cloud model, (j) is the clustering result of the table point cloud model, (k) is the clustering result of the toilet point cloud model, and (l) is the clustering result of the TV stand point cloud model. Detailed Implementation
[0077] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0078] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0079] SeeFigure 1 The flowchart of this invention shows that the basic vulture search algorithm has been optimized and improved, and a vulture search algorithm based on a frenzied hunting mechanism has been proposed. Figure 2 This method is applied to the clustering and segmentation of 3D point clouds for indoor furniture. First, an initial cluster center selection model based on voxel bounding boxes is constructed, and a cost function is established. Second, a "crazy hunting" mechanism is designed to improve the optimization ability of the Browsing Eagle Search (BES) algorithm during the dive-capture phase, increasing the success rate of finding cluster centers. Then, a dynamic adaptive control operator and a Cauchy inverse strategy are designed to escape local optima, solving the problem of premature convergence and easy trapping in local optima in the selection and search space phases of BES. Figure 3 It can be seen that QO-BESCH can achieve effective clustering and segmentation, demonstrating good optimization ability and improving robustness and clustering accuracy.
[0080] The specific steps are as follows:
[0081] Step 1: Import the ModelNet40 point cloud dataset to obtain the indoor furniture point cloud file. Process the indoor furniture point cloud file using the voxel filter in the PCL point cloud library to obtain the furniture point cloud model. The voxel filter in the PCL point cloud library is a downsampling filter that reduces the number of points by using voxelization, preserving the shape features of the point cloud while reducing the amount of point cloud data.
[0082] Step 2: The clustering segmentation cost function is as follows:
[0083] For the furniture point cloud model, a QO-BESCH clustering segmentation cost function P is constructed using the intra-class average distance. Fi as follows:
[0084]
[0085] In the formula, P Fi Let x be the clustering segmentation cost function. j Let C be the position of the j-th point in the furniture point cloud model. j Let d(x) be the cluster center corresponding to the j-th point in the furniture point cloud model. j C j Let C be the Euclidean distance from the j-th point in the furniture point cloud model to the cluster center. Ni Let be the number of points of type i in the furniture point cloud model.
[0086] Step 3: The vulture search algorithm includes the following steps:
[0087] Step 3.1: Randomly initialize the vulture population;
[0088] Step 3.2: Based on the vulture population initialized in Step 3.1, update the location of the vulture population using the formula.
[0089] First, the vulture identifies and selects the best area (with the most food) within its search space until it captures its prey, updating its position according to the following formula:
[0090] p i,new =p best +α*r(p mean -p i )
[0091] In the formula, α is a parameter controlling the positional changes of the bald eagle in three-dimensional space, with a value range of (1.5, 2); r is a random number, with a value range of (0, 1); p best This is currently the best search location for the vultures; p mean To combine the average of the two consecutive vulture position updates; p i Let i be the position of the i-th vulture in the population;
[0092] Secondly, the vulture searches for prey within its search space, moving in different directions to gradually increase its search range. The position is updated using polar coordinates according to the following formula:
[0093] θ(i)=K*π*rand
[0094] r(i)=θ(i)+R*rand
[0095] xr(i)=r(i)*sin(θ(i)),yr(i)=r(i)*cos(θ(i))
[0096] x(i)=xr(i) / max(xr),y(i)=yr(i) / max(yr)
[0097] p i,new =p i +x(i)*(p i -p mean )+y(i)*(p i -p i+1 )
[0098] In the formula, θ(i) and r(i) are the polar angle and polar radius of the polar coordinate equation, respectively; K and R are control parameters, with variation ranges of (0,5) and (0.5,2), respectively; rand is a random number within (0,1); x(i) and y(i) represent the position of the vulture in polar coordinates, both taking values of (-1,1); p i+1 Let i be the next updated position of the i-th vulture;
[0099] Finally, all the vultures swooped down from their optimal positions in the search space to attack and hunt their prey. The positions were then updated using polar coordinates according to the formula, as follows:
[0100] θ(i)=α*π*rand,r(i)=θ(i)
[0101] xr(i)=r(i)*sinh(θ(i)),yrθ(i)=rθ(i)*cosh(θ(i))
[0102] x1(i)=xr(i) / max(xr|),y1(i)=yr(i) / max(yr)
[0103]
[0104] p i,new =rand*p best +δ x +δ y
[0105] In the formula, r(i) is the polar radius of the polar coordinate equation, x1, y1, xr, and yr are the coordinate values of the bald eagle under different conditions, x1 and y1, xr and yr are the positions of the i-th bald eagle in polar coordinates, and δ x δ y c1 and c2 represent the changes in the coordinates of the vulture in the x and y coordinates, respectively. c1 and c2 represent the inertial parameters of the vulture's motion toward the optimal position, and their values are both in the range of (1,2).
[0106] Step 4: Based on the characteristics of the furniture point cloud model, the vulture search algorithm obtained in Step 3 is improved to obtain the improved vulture search algorithm. The specific steps include:
[0107] Step 4.1: For the furniture point cloud model obtained in Step 1, select the initial cluster center based on the point cloud volume element density, with each bald eagle representing a point cloud location;
[0108] Step 4.2: First, in the region selection phase, a dynamic adaptive control operator is used to update the location of the bald eagle population;
[0109] Step 4.3: Next, in the search phase, the location of the bald eagle population is updated using the Cauchy reverse learning strategy;
[0110] Step 4.4: Finally, update the position of the vulture population during the dive capture phase using the frenzied hunting mechanism;
[0111] Step 4.5: Calculate the fitness of the bald eagle population and select the best bald eagle based on the fitness level;
[0112] Step 4.6: Determine if the maximum number of iterations has been reached. If yes, output the optimal bald eagle, i.e., the optimal cluster center. If no, return to step 4.2.
[0113] In step 4.1, the initial cluster centers are selected based on the point cloud volume element density, using the following formula:
[0114]
[0115]
[0116]
[0117]
[0118]
[0119]
[0120] In the formula, x max y max , z max and x min y min , z min Let V represent the maximum and minimum values of the point cloud in the XYZ coordinate directions, respectively, where V is the volume of the point cloud bounding box, and L is the value of the point cloud bounding box. x L y L z Let be the lengths of its three sides, 'a' be the side length of the bounding box volume element of the point cloud, 'M' be the number of generated volume elements, and 'n' be the number of generated volume elements. x n y n z Let N represent the number of voxels in the XYZ coordinate directions, (i,j,k) be the coordinates of any chosen voxel, the inequality in the above formula represents the range of point cloud coordinates, and box(i,j,k) is the voxel. box(i,j,k) ρ represents the number of points falling within the range of the volume element box(i,j,k). box(i,j,k) Given the point cloud density, the centroids of the top K densest voxels are calculated using the above formula and used as the initial cluster centers, where c x c y c z x represents the coordinates of the current point cloud model cluster center. t y t , z t Let t be the coordinates of any point cloud in the XYZ coordinate direction, and t be the counting parameter.
[0121] In step 4.2, during the region selection phase, a dynamic adaptive control operator is used to update the location of the bald eagle population as follows:
[0122] p i,new =pbest +lm(p mean -p i )
[0123] lm = lm min +(lm max -lm min )*(n / Max_iter) 5
[0124] In the formula, lm is the dynamic adaptive control operator with an interval of [2, 2.5], n is the current iteration number, Max_iter is the maximum iteration number, and lm min and lm max These are the lower and upper bounds of lm, respectively, namely 2 and 2.5.
[0125] Step 4.3 uses a Cauchy back-learning strategy to update the location of the bald eagle population, specifically as follows:
[0126] QOP = rand((ub dim+ lb dim ) / 2,ub dim +lb dim -x dim ), i = 1, 2, ...
[0127] In the formula, QOP is the Cauchy inverse point, rand is a random number within (0,1), and ub dim and lb dim Given the upper and lower bounds of the vulture population in the dim dimension, a Cauchy reverse learning strategy is adopted to generate a reverse population of the current population in order to escape local optima.
[0128] Step 4.4 updates the vulture population's dive-and-capture phase location using a frenzied hunting mechanism, specifically as follows:
[0129]
[0130]
[0131] ω=2*rand-1
[0132] EA = 0.5 * rand * e (1-n / Max _ iter)
[0133] In the formula, χ is the quality function of the balanced search strategy, ω is the motion morphology parameter, n is the current iteration number, Max_iter is the maximum iteration number, pop is the population size, and EA is the escape factor.
[0134] Step 5: Optimize the clustering and segmentation of the 3D point cloud of indoor furniture using the obtained improved vulture search algorithm. The specific method is as follows:
[0135] After initializing the cluster centers based on point cloud volume element density, a QO-BESCH optimization operation is performed in each category of bald eagle population to obtain new cluster centers. The specific steps for optimizing the 3D point cloud clustering and segmentation of indoor furniture using QO-BESCH include:
[0136] Step 5.1: Use the method in Step 4.1 to obtain the initial cluster centers for the furniture point cloud model obtained in Step 1;
[0137] Step 5.2: Calculate the fitness of each bald eagle in the initial bald eagle population using the clustering segmentation cost function obtained in Step 2, sort the bald eagle population according to the fitness, and select the best bald eagle.
[0138] Step 5.3: Update the position of the vulture population using the methods in steps 4.2-4.4, calculate the fitness of each vulture, and sort the vulture population according to the fitness values.
[0139] Step 5.4: Determine if the maximum number of iterations has been reached. If yes, output the new cluster center of each class after merging; otherwise, return to step 5.3.
[0140] Figure 3 This is a clustering effect diagram of a 3D point cloud model of indoor furniture according to the present invention;
[0141] Figure 3 The 3D point cloud models of indoor furniture in the ModelNet40 dataset are clustered after being filtered by a voxel filter. ModelNet40 is a large part repository with rich annotations represented by 3D-CAD model objects and is widely used in point cloud part segmentation tasks. Figure 3 It can be seen that QO-BESCH-KMC achieved relatively ideal segmentation results on various models, with almost no undersegmentation or mixed segmentation, and fine segmentation of obvious regions can be observed, thus meeting the needs of practical applications. When the sum of the Scat and Dens indices reaches its minimum, the clustering is definitely the optimal clustering. QO-BESCH-KMC achieves the best Scat and Dens values with a success rate of 95% on different models, further demonstrating the effectiveness of QO-BESCH clustering.
[0142] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and not to limit its scope of protection. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that after reading the present invention, they can still make various changes, modifications or equivalent substitutions to the specific implementation of the invention, but these changes, modifications or equivalent substitutions are all within the scope of protection of the pending claims of the invention.
Claims
1. A 3D point cloud clustering and segmentation method in smart home digital twins, characterized in that, Includes the following steps: Step 1: Obtain the point cloud file of the indoor furniture, process the point cloud file of the indoor furniture using a voxel filter, and obtain the furniture point cloud model; Step 2: Determine the clustering segmentation cost function for the furniture point cloud model obtained in Step 1; Step 3: Obtain the vulture search algorithm; the vulture search algorithm includes the following steps: Step 3.1: Randomly initialize the vulture population; Step 3.2: Based on the vulture population initialized in Step 3.1, update the location of the vulture population using the formula; First, the vulture identifies and selects the optimal area within its search space until it captures its prey. The optimal location represents the area with the most food. The location is updated according to the following formula: In the formula, a The parameters used to control the positional changes of the bald eagle in three-dimensional space are set to a value range of (1.5, 2). r This is a random number, with a value range of (0,1). p best This is currently the best search location for vultures; p mean This is an average of the two consecutive bald eagle update locations; p i The first in the population i The location of the vulture; Secondly, the vulture searches for prey within its search space, moving in different directions to gradually increase its search range. The position is updated using polar coordinates according to the following formula: In the formula, θ ( i )and r ( i ) represent the polar angle and polar radius of the polar coordinate equation, respectively; K and R These are control parameters, with variation ranges of (0,5) and (0.5,2) respectively; rand A random number within the range (0,1); x ( i )and y ( i () represents the position of the vulture in polar coordinates, with values of (-1, 1); p i+1 For the first i The next update location for the vulture; Finally, all the vultures swooped down from their optimal positions in the search space to attack and hunt their prey. The positions were then updated using polar coordinates according to the formula, as follows: In the formula, r ( i () represents the polar radius of the polar coordinate equation. x 1 ,y 1 ,xr,yr These are the coordinates of the bald eagle under different conditions. x 1 and y 1, xr and yr In polar coordinates, the first i Only the location of the vulture, δ x δ y The coordinates of the bald eagle in polar coordinates are respectively x and y The change value in c 1 and c 2 represents the inertial parameters of the vulture's movement towards the optimal position, with values ranging from (1,2); Step 4: Based on the characteristics of the furniture point cloud model, the vulture search algorithm obtained in Step 3 is improved to obtain the improved vulture search algorithm; Step 5: Utilize the improved vulture search algorithm obtained in Step 4 and the clustering segmentation cost function obtained in Step 2 to optimize the clustering segmentation of the 3D point cloud of indoor furniture.
2. The three-dimensional point cloud clustering and segmentation method in smart home digital twins according to claim 1, characterized in that, In step 1, the indoor furniture point cloud file is obtained from the ModelNet40 point cloud dataset; and the voxel filter in the PCL point cloud library is used to process the indoor furniture point cloud file to obtain the furniture point cloud model.
3. The three-dimensional point cloud clustering and segmentation method in smart home digital twins according to claim 1, characterized in that, The clustering segmentation cost function in step 2 is as follows: In the formula, P Fi The clustering segmentation cost function, x j In the point cloud model of furniture j The location of the point C j In the point cloud model of furniture j The cluster centers corresponding to each point. d ( x j ,C j ) is the first in the furniture point cloud model j Euclidean distance from a point to the cluster center C Ni In the point cloud model of furniture i The number of point cloud-like objects.
4. The three-dimensional point cloud clustering and segmentation method in smart home digital twins according to claim 1, characterized in that, In step 4, the vulture search algorithm obtained in step 3 is improved based on the characteristics of the furniture point cloud model, resulting in an improved vulture search algorithm. Specific steps include: Step 4.1: For the furniture point cloud model obtained in Step 1, select the initial cluster center based on the point cloud volume element density, with each bald eagle representing a point cloud location; Step 4.2: First, in the region selection phase, a dynamic adaptive control operator is used to update the location of the bald eagle population; Step 4.3: Next, in the search phase, the location of the bald eagle population is updated using the Cauchy reverse learning strategy; Step 4.4: Finally, update the position of the vulture population during the dive capture phase using the frenzied hunting mechanism; Step 4.5: Calculate the fitness of the bald eagle population and select the best bald eagle based on the fitness level; Step 4.6: Determine if the maximum number of iterations has been reached. If yes, output the optimal bald eagle, i.e., the optimal cluster center. If no, return to step 4.
2.
5. The three-dimensional point cloud clustering and segmentation method in smart home digital twins according to claim 4, characterized in that, In step 4.1, the initial cluster centers are selected based on the point cloud volume element density, using the following formula: In the formula, x max , y max , z max and x min , y min , z min Point clouds are respectively XYZ The maximum and minimum values corresponding to the coordinate direction. V Let V be the volume of the point cloud bounding box. L x , L y , L z Let be the lengths of the three sides of the point cloud bounding box. a Let the side length of the box element enclosing the point cloud be . M The number of voxels generated. n x , n y , n z They are respectively in XYZ The number of volume elements in the coordinate direction, ( i,j,k Let be the coordinates of any chosen volume element, and the inequality in the above formula represents the range of point cloud coordinate values. box ( i,j,k ) is a volume element, N box(i,j,k) To fall into the body element box ( i,j,k The number of points within the range, ρ box(i,j,k) Given the point cloud density, the highest density is calculated using the above formula. K The centroid of the individual element serves as the initial cluster center, where, c x , c y , c z The coordinates of the current point cloud model cluster center. x t , y t , z t To take any point cloud in XYZ Coordinates in the direction of coordinates, t This is the counting parameter.
6. The three-dimensional point cloud clustering and segmentation method in smart home digital twins according to claim 4, characterized in that, In step 4.2, during the region selection phase, a dynamic adaptive control operator is first used to update the location of the bald eagle population: In the formula, lm It is a dynamic adaptive control operator with an interval of [2, 2.5]. n This represents the current iteration number. Max_iter The maximum number of iterations, lm min and lm max They are respectively lm The lower and upper bounds are 2 and 2.5, respectively.
7. The three-dimensional point cloud clustering and segmentation method in smart home digital twins according to claim 4, characterized in that, Step 4.3 uses a Cauchy back-learning strategy to update the location of the bald eagle population, specifically as follows: In the formula, QOP Here, the Cauchy inverse is defined, and rand is a random number within the range (0,1). ub dim and lb dim For the vulture in the dim The upper and lower bounds of the dimension are determined by employing the Cauchy backward learning strategy to generate a backward population of the current population in order to escape local optima.
8. The three-dimensional point cloud clustering and segmentation method in smart home digital twins according to claim 4, characterized in that, Step 4.4 updates the vulture population's dive-and-capture phase location using a frenzied hunting mechanism, specifically as follows: In the formula, χ To balance the quality function of the search strategy, ω For motion morphology parameters, n This represents the current iteration number. Max_ iter The maximum number of iterations, pop For population size, EA It is an escape factor.
9. The three-dimensional point cloud clustering and segmentation method in smart home digital twins according to claim 4, characterized in that, In step 5, the improved vulture search algorithm is used to optimize the clustering and segmentation of the 3D point cloud of indoor furniture. The specific method is as follows: After initializing the cluster centers based on point cloud volume element density, a QO-BESCH optimization operation is performed in each category of bald eagle population to obtain new cluster centers. The specific steps for optimizing the 3D point cloud clustering and segmentation of indoor furniture using QO-BESCH include: Step 5.1: Use the method in Step 4.1 to obtain the initial cluster centers for the furniture point cloud model obtained in Step 1; Step 5.2: Calculate the fitness of each bald eagle in the initial bald eagle population using the clustering segmentation cost function obtained in Step 2, sort the bald eagle population according to the fitness, and select the best bald eagle. Step 5.3: Update the position of the vulture population using the methods in steps 4.2-4.4, calculate the fitness of each vulture, and sort the vulture population according to the fitness values. Step 5.4: Determine if the maximum number of iterations has been reached. If yes, output the new cluster center of each class after merging; otherwise, return to step 5.3.
Citation Information
Patent Citations
Power grid secondary frequency modulation control technology based on bald eagle search algorithm
CN113241780A
Heterogeneous network resource scheduling method used in industrial Internet of Things environment
CN114173359A