A point cloud-based model matching method, device, equipment and medium

By obtaining the principal axis of the 3D mesh model to establish a local coordinate system, extracting position features and performing point cloud sampling, the problem of low recognition rate in existing model matching methods is solved, and efficient matching of 3D mesh models with similar geometric appearance but different structures is achieved.

CN118552613BActive Publication Date: 2026-07-24GLODON CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
GLODON CO LTD
Filing Date
2023-02-24
Publication Date
2026-07-24

AI Technical Summary

Technical Problem

Existing model matching methods cannot effectively identify 3D mesh models that have similar geometric appearances but not exactly the same geometric structure, or the matching recognition rate between models at different levels of detail is low.

Method used

By obtaining the principal axis of the target 3D mesh model, establishing a local coordinate system, extracting positional features, sampling point clouds, and calculating point cloud distances, a matching 3D mesh model can be selected.

Benefits of technology

It improves the recognition rate of model matching, effectively identifying similar 3D mesh models with different levels of detail and different geometric structures. It has a certain degree of fuzziness and intuitiveness, thus improving the accuracy and efficiency of matching.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118552613B_ABST
    Figure CN118552613B_ABST
Patent Text Reader

Abstract

The application provides a point cloud-based model matching method, device, equipment and medium, the method comprises the following steps: obtaining a target three-dimensional grid model, and calculating the main shaft of the target three-dimensional grid model; a local coordinate system is established based on the main shaft, and the target three-dimensional grid model is transformed to the local coordinate system, and the position feature of the target three-dimensional grid model is extracted; based on the position feature, the target three-dimensional grid model is sampled by point cloud, and the target point cloud is obtained; the distance of the first point cloud corresponding to each three-dimensional grid model to be matched of the target point cloud is calculated respectively, so as to screen the three-dimensional grid model matched with the target three-dimensional grid model from the to-be-matched list. The geometric invariant feature of the three-dimensional grid model position feature is used for subsequent model matching, which improves the recognition rate of the model, and the point cloud distance is used as the basis for model matching, which has a certain fuzziness, and has good matching recognition rate for similar three-dimensional grid models with different detail levels or different geometric structures.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computer-aided design technology, specifically to a point cloud-based model matching method, apparatus, device, and medium. Background Technology

[0002] With the development of computer graphics technology, the 3D mesh models used for rendering have become increasingly detailed and complex, greatly improving the display effect. Due to the need for processing and optimizing 3D mesh models, it is often necessary to search and match 3D mesh models. That is, given a 3D mesh model, find the same or most similar 3D mesh models in a specified model space to achieve optimization or application such as instantiation optimization, mesh retrieval, and model comparison.

[0003] Existing model matching methods mainly include: geometric comparison method, which compares the vertex coordinates and index ordinal numbers of the 3D mesh model, or the topological information such as edges and faces of the 3D mesh model. If the two are completely identical, they are the same 3D mesh model; feature index comparison method, which compares a certain feature index of the 3D mesh model and makes a histogram. The similarity of the 3D mesh models is judged based on the deviation of the histogram.

[0004] However, existing model matching technologies are all based on the vertex-index geometric data structure of the 3D mesh model itself. They have low fuzziness, are too strict, and are difficult to match in a fuzzy manner. For models with similar geometric appearances but not completely identical geometric structures, or for models at different levels of detail, the matching recognition rate is low, which limits the application of various model matching algorithms. Summary of the Invention

[0005] In view of this, embodiments of the present invention provide a point cloud-based model matching method, apparatus, device, and medium to overcome the problems of existing model matching methods being unable to perform fuzzy matching, having a low matching recognition rate for models with similar geometric appearances but not completely identical geometric structures, or for models at different levels of detail.

[0006] According to a first aspect, embodiments of the present invention provide a point cloud-based model matching method, the method comprising:

[0007] Obtain the target 3D mesh model and calculate the principal axes of the target 3D mesh model;

[0008] A local coordinate system is established based on the principal axis, and the target 3D mesh model is transformed into the local coordinate system to extract the position features of the target 3D mesh model.

[0009] Based on the location features, point cloud sampling is performed on the target 3D mesh model to obtain the target point cloud corresponding to the target 3D mesh model;

[0010] Calculate the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched in the matching list. The first point cloud is obtained by sampling the point cloud of the 3D mesh model to be matched based on the position features of the 3D mesh model to be matched in the local coordinate system established by its corresponding principal axis.

[0011] Based on the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched, 3D mesh models that match the target 3D mesh model are selected from the list of models to be matched.

[0012] Optionally, before calculating the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model in the match list, the method further includes:

[0013] Calculate the first minimum bounding box of the target 3D mesh model based on its positional features;

[0014] The difference between the first minimum bounding box and the second minimum bounding box corresponding to each 3D mesh model to be matched in the list of to be matched is calculated respectively. The second minimum bounding box is obtained by calculating the minimum bounding box of the 3D mesh model to be matched based on the position characteristics of the 3D mesh model to be matched in the local coordinate system established on its corresponding principal axis.

[0015] Remove any 3D mesh models with a difference greater than a preset difference threshold from the list of models to be matched.

[0016] Optionally, extracting the positional features of the target 3D mesh model includes:

[0017] Extract the vertex coordinates of each triangular facet of the target 3D mesh model in the local coordinate system.

[0018] Optionally, the step of sampling the target 3D mesh model based on the location features to obtain the target point cloud corresponding to the target 3D mesh model includes:

[0019] Based on the vertex coordinates of each triangular facet of the target 3D mesh model in the local coordinate system, point cloud sampling is performed on each triangular facet to obtain the target point cloud corresponding to the target 3D mesh model.

[0020] Optionally, the step of filtering 3D mesh models that match the target 3D mesh model from the matching list based on the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched includes:

[0021] Calculate the first distance from the target point cloud to the current first point cloud and the second distance from the current first point cloud to the target point cloud, respectively.

[0022] The model difference between the target point cloud and the current first point cloud is calculated based on the first distance and the second distance;

[0023] The 3D mesh model with the smallest model difference in the list of models to be matched is determined as the 3D mesh model that matches the target 3D mesh model.

[0024] Optionally, before determining the 3D mesh model with the smallest model difference in the list of models to be matched as the 3D mesh model that matches the target 3D mesh model, the method further includes:

[0025] Determine whether there exists a 3D mesh model in the list of models to be matched that has a model difference degree less than a preset model difference threshold;

[0026] When there is a three-dimensional mesh model to be matched in the list of models to be matched with a model difference degree less than a preset model difference degree threshold, the three-dimensional mesh model to be matched with the smallest model difference degree in the list of models to be matched is determined as the three-dimensional mesh model that matches the target three-dimensional mesh model.

[0027] If there is no matching 3D mesh model in the list of models to be matched with a model difference less than a preset model difference threshold, a message will be displayed indicating that there is no matching model.

[0028] Optionally, after deleting the 3D mesh models to be matched that have a difference greater than a preset difference threshold from the list of models to be matched, the method further includes:

[0029] Determine whether the list to be matched is empty;

[0030] When the list of models to be matched is empty, a message will be displayed indicating that there is no matching model.

[0031] When the list of objects to be matched is not empty, the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched in the list of objects to be matched is calculated.

[0032] Optionally, the method further includes:

[0033] Obtain a first transformation matrix that transforms the target 3D mesh model to the local coordinate system, and a second transformation matrix that transforms the 3D mesh model that matches the target 3D mesh model to the local coordinate system established based on its corresponding principal axis;

[0034] Based on the first transformation matrix and the second transformation matrix, calculate the target transformation matrix to transform the target 3D mesh model into a 3D mesh model that matches the target 3D mesh model.

[0035] According to a second aspect, embodiments of the present invention provide a point cloud-based model matching device, the device comprising:

[0036] The first processing module is used to acquire the target three-dimensional mesh model and calculate the principal axes of the target three-dimensional mesh model;

[0037] The second processing module is used to establish a local coordinate system based on the principal axis, transform the target three-dimensional mesh model to the local coordinate system, and extract the position features of the target three-dimensional mesh model.

[0038] The third processing module is used to perform point cloud sampling on the target 3D mesh model based on the location features to obtain the target point cloud corresponding to the target 3D mesh model;

[0039] The fourth processing module is used to calculate the distance between the target point cloud and the first point cloud corresponding to each three-dimensional mesh model to be matched in the matching list. The first point cloud is obtained by sampling the three-dimensional mesh model to be matched based on the position features of the three-dimensional mesh model to be matched in the local coordinate system established on its corresponding principal axis.

[0040] The fifth processing module is used to filter three-dimensional mesh models that match the target three-dimensional mesh model from the list of models to be matched, based on the distance between the target point cloud and the first point cloud corresponding to each three-dimensional mesh model to be matched.

[0041] According to a third aspect, embodiments of the present invention provide a point cloud-based model matching device, comprising:

[0042] A memory and a processor are communicatively connected, the memory storing computer instructions, and the processor executing the computer instructions to perform the method described in the first aspect and any of its alternative embodiments.

[0043] According to a fourth aspect, embodiments of the present invention provide a computer-readable storage medium storing computer instructions for causing a computer to perform the method described in the first aspect, or any optional embodiment of the first aspect.

[0044] The technical solution of this invention has the following advantages:

[0045] This invention provides a point cloud-based model matching method, which involves acquiring a target 3D mesh model and calculating its principal axes; establishing a local coordinate system based on the principal axes and transforming the target 3D mesh model to the local coordinate system to extract its positional features; sampling the target 3D mesh model for point cloud based on its positional features to obtain a target point cloud; calculating the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model in the matching list; and selecting 3D mesh models that match the target 3D mesh model from the matching list based on the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model in the matching list. By extracting the principal axis of the 3D mesh model to establish a local coordinate system, and extracting the positional features of the 3D mesh model in the local coordinate system, the geometrically invariant feature of the positional features of the 3D mesh model is used for subsequent model matching, which improves the model recognition rate. Using point cloud distance as the basis for model matching has a certain degree of ambiguity, and point cloud-based model matching starts from the geometry of the model itself, which can intuitively reflect the consistency between models, further improving the recognition rate of the matched models. It has a good matching and recognition rate for similar 3D mesh models with different levels of detail or different geometric structures. Attached Figure Description

[0046] To more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0047] Figure 1 This is a flowchart of the point cloud-based model matching method in an embodiment of the present invention;

[0048] Figure 2 This is a schematic diagram illustrating the specific working process of point cloud-based model matching in an embodiment of the present invention;

[0049] Figure 3 This is a schematic diagram of the point cloud-based model matching device according to an embodiment of the present invention;

[0050] Figure 4 This is a schematic diagram of the structure of a point cloud-based model matching device according to an embodiment of the present invention. Detailed Implementation

[0051] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0052] The technical features involved in the different embodiments of the present invention described below can be combined with each other as long as they do not conflict with each other.

[0053] In existing technologies, model matching solutions are all based on the vertex-index geometric data structure of the 3D mesh model itself. This results in low fuzziness, excessive strictness, and difficulty in fuzzy matching. The matching recognition rate is low for models with similar geometric appearances but not completely identical geometric structures, or for models at different levels of detail, which limits the application of various model matching-based algorithms.

[0054] To address the aforementioned problems, embodiments of the present invention provide a point cloud-based model matching method, such as... Figure 1 As shown, the method specifically includes the following steps:

[0055] Step S101: Obtain the target 3D mesh model and calculate the principal axes of the target 3D mesh model.

[0056] For example, the target 3D mesh model can be a 3D model of a building component, such as a beam or column. The principal axis is an axis determined according to preset rules / definitions. For example, the principal axis is defined as the maximum / minimum sum of the distances or variances from all vertices of the 3D mesh to that principal axis, or the eigenvector corresponding to the vertex feature matrix of the 3D mesh. The process of obtaining the principal axis is a mathematical method, and the specific calculation process can vary depending on the definition of the principal axis. For example, principal component analysis / least squares methods can be used for extraction. The specific extraction process is existing technology and will not be elaborated here.

[0057] Step S102: Establish a local coordinate system based on the principal axis, transform the target 3D mesh model to the local coordinate system, and extract the positional features of the target 3D mesh model.

[0058] To establish a local coordinate system based on the principal axes, we can first determine two principal axes according to the different definitions mentioned above. If the two principal axes are clearly orthogonal according to the definition, then we can directly take these two principal axes as the x-axis and y-axis; otherwise, we take the first principal axis as the x-axis and the cross product of the first and second principal axes as the y-axis. Finally, we take the cross product of the x-axis and y-axis as the z-axis, thus establishing the local coordinate system containing the principal axes.

[0059] Specifically, extracting the positional features of the target 3D mesh model includes extracting the vertex coordinates of each triangular facet of the target 3D mesh model in the local coordinate system. Since the position of the 3D mesh model is determined by the vertex positions of each triangular facet that constitutes the model, the vertex coordinates of each triangular facet are extracted as the positional features of the 3D mesh model.

[0060] Step S103: Based on the location features, perform point cloud sampling on the target 3D mesh model to obtain the target point cloud corresponding to the target 3D mesh model.

[0061] Specifically, by sampling point clouds on each triangular facet based on the vertex coordinates of each triangular facet in the local coordinate system of the target 3D mesh model, the target point cloud corresponding to the target 3D mesh model is obtained.

[0062] In practical applications, in order to ensure that the point cloud can accurately reflect the geometry of the 3D mesh model, point cloud sampling can be performed uniformly on each triangular facet to further improve the recognition rate of model matching.

[0063] Step S104: Calculate the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched in the matching list.

[0064] The first point cloud is obtained by sampling the point cloud of the 3D mesh model to be matched based on the position features of the 3D mesh model to be matched in the local coordinate system established on its corresponding principal axis. The specific process of obtaining the first point cloud corresponding to each 3D mesh model to be matched in the list of to be matched can be implemented by referring to the implementation method of obtaining the target point cloud of the target 3D mesh model in steps S101 to S103 above, and will not be repeated here.

[0065] Step S105: Based on the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched, filter the 3D mesh models that match the target 3D mesh model from the list of models to be matched.

[0066] Specifically, the distance between point clouds can be intuitively compared based on the geometry of the 3D mesh model to determine whether two 3D mesh models are similar, thereby enabling fuzzy search for model matching and improving the matching recognition rate.

[0067] By performing the above steps, the point cloud-based model matching method provided in this embodiment of the invention establishes a local coordinate system by extracting the principal axis of the 3D mesh model and extracting the position features of the 3D mesh model in the local coordinate system. This geometrically invariant feature of the position features of the 3D mesh model is used for subsequent model matching, thereby improving the model recognition rate. Using point cloud distance as the basis for model matching has a certain degree of ambiguity. Furthermore, point cloud-based model matching starts from the geometry of the model itself, which can intuitively reflect the consistency between models, further improving the recognition rate of the matched models. It has a good matching and recognition rate for similar 3D mesh models with different levels of detail or different geometric structures.

[0068] Specifically, in one embodiment, step S105 specifically includes the following steps:

[0069] Step S51: Calculate the first distance from the target point cloud to the current first point cloud and the second distance from the current first point cloud to the target point cloud.

[0070] Step S52: Calculate the model difference between the target point cloud and the current first point cloud based on the first distance and the second distance.

[0071] For example, the average of the first distance and the second distance can be used as the model difference between the target point cloud and the current first point cloud. Alternatively, the sum of the first distance and the second distance can be used as the model difference between the target point cloud and the current first point cloud, etc., but the present invention is not limited thereto.

[0072] Step S53: Determine the 3D mesh model with the smallest model difference in the matching list as the 3D mesh model that matches the target 3D mesh model.

[0073] Specifically, the smaller the model difference, the better the match between the two models, thus obtaining the 3D mesh model with the best match to the target 3D mesh model. By utilizing the mutual distance between the two point clouds, the difference between the two models is accurately reflected, further improving the accuracy of model matching.

[0074] Specifically, in one embodiment, before performing step S53, step S105 further includes the following steps:

[0075] Step S54: Determine whether there is a 3D mesh model to be matched in the list of models to be matched whose model difference is less than the preset model difference threshold.

[0076] The preset model difference threshold is a threshold that can be flexibly set according to the accuracy requirements of model matching. The smaller the value, the more accurate the matched 3D model and the lower the matching success rate; conversely, the larger the value, the more blurred the matched 3D model and the higher the matching success rate. This invention is not limited to this. By setting the ambiguity through the preset model difference threshold, the recognition rate of the model matching algorithm can be improved.

[0077] Specifically, if a 3D mesh model with a model difference less than a preset model difference threshold exists in the matching list, step S53 above is executed. If no 3D mesh model with a model difference less than the preset model difference threshold exists in the matching list, a message indicating no matching model is displayed. The matching process then ends.

[0078] Specifically, in one embodiment, before performing step S104 above, the point cloud-based model matching method provided by this embodiment of the invention further includes the following steps:

[0079] Step S106: Calculate the first minimum bounding box of the target 3D mesh model based on the positional features of the target 3D mesh model.

[0080] Specifically, the minimum bounding box of the target 3D model can be calculated based on the vertex coordinates of each of the aforementioned triangular facets. In this embodiment of the invention, an AABB bounding box is used as an example. The specific process for calculating the bounding box is prior art and will not be described in detail here.

[0081] Step S107: Calculate the difference between the first minimum bounding box and the second minimum bounding box corresponding to each 3D mesh model to be matched in the list of models to be matched.

[0082] The second minimum bounding box is calculated based on the positional characteristics of the 3D mesh model to be matched in the local coordinate system established by its corresponding principal axes.

[0083] Step S108: Remove the 3D mesh models to be matched that have a difference greater than a preset difference threshold from the list of models to be matched.

[0084] The preset difference threshold is a threshold that can be flexibly set according to the accuracy requirements of model matching. The smaller the value, the more accurate the matched 3D model and the lower the matching success rate. Conversely, the more blurred the matched 3D model and the higher the matching success rate, the more accurate the matching success rate. This invention is not limited to this. By setting the ambiguity through the preset difference threshold, the recognition rate of the model matching algorithm can be improved.

[0085] Specifically, in order to reduce the computational load of subsequent point cloud sampling and improve the efficiency of model matching, this embodiment of the invention calculates the minimum bounding box of the 3D mesh model, and by comparing the difference degree of the minimum bounding box, deletes the 3D mesh models to be matched that have obvious differences, and only retains the 3D mesh models to be matched with small bounding box differences, thereby improving the matching efficiency.

[0086] Specifically, in one embodiment, after performing the above step S108, the point cloud-based model matching method provided by the present invention further includes the following steps:

[0087] Step S109: Determine if the list to be matched is empty.

[0088] Specifically, if the list of models to be matched is empty, a message indicating no matching model is displayed will be displayed. The model matching process will then end. If the list of models to be matched is not empty, step S104 described above will be executed.

[0089] Specifically, in one embodiment, the point cloud-based model matching method provided by this invention further includes the following steps:

[0090] Step S201: Obtain the first transformation matrix for transforming the target 3D mesh model to the local coordinate system, and the second transformation matrix for transforming the 3D mesh model that matches the target 3D mesh model to the local coordinate system established based on its corresponding principal axes.

[0091] Step S202: Calculate the target transformation matrix based on the first transformation matrix and the second transformation matrix to transform the target 3D mesh model into a 3D mesh model that matches the target 3D mesh model.

[0092] Specifically, assume that the first transformation matrix of the target 3D mesh model is M. trf1 The second transformation matrix of the 3D mesh model that matches the target 3D mesh model is M. trf2 Then the target transformation matrix is ​​[M trf2 ] -1 ×[M trf1 This facilitates subsequent compression and other processing of the target mesh model based on the target transformation matrix, resulting in smaller and lighter overall model data and improved user experience.

[0093] The following section will describe in detail the specific implementation process of the point cloud-based model matching method provided in this embodiment of the invention, using specific application examples.

[0094] The improved technical solution of this invention uses a point cloud algorithm to match three-dimensional mesh models. The input of this method is all three-dimensional mesh models in the three-dimensional model space and a three-dimensional mesh model to be matched. The output is the matching three-dimensional mesh model that is the same as or most similar to the mesh to be matched in the three-dimensional model space and its spatial transformation matrix to the mesh of the three-dimensional mesh model to be matched.

[0095] like Figure 2 As shown, the detailed steps for 3D model matching are as follows:

[0096] Step 1: Preprocessing. For a specified 3D mesh model space, preprocess each 3D mesh model ( Figure 2 The principal axes of the 3D mesh (abbreviated as mesh) are determined, and the 3D mesh model is transformed to the local coordinate system where the principal axes are located. The transformation matrix is ​​then saved to achieve geometric normalization and extract geometrically invariant features.

[0097] Step 2: Input the 3D mesh model to be matched, find its principal axes and extract its geometrically invariant features.

[0098] Step 3: Initial Screening. Traverse the normalized 3D mesh models within the 3D mesh model space, comparing the bounding boxes of each 3D mesh model with the bounding boxes of the normalized 3D mesh models to be matched. If the bounding boxes match within a certain threshold 'a', add the mesh to the comparison list. If the comparison list is empty after traversing the entire model space, terminate the matching and return a null pointer; otherwise, proceed to Step 4.

[0099] Step 4: Comparison. Iterate through all 3D mesh models in the comparison list, performing the following steps:

[0100] (1) Traverse to obtain the current 3D mesh A.

[0101] (2) Perform point cloud sampling on the normalized 3D mesh model to be matched and the current 3D mesh model A to obtain point clouds PC1 and PC2 respectively, so that the obtained point clouds are distributed on each triangular face of the mesh.

[0102] (3) Calculate the distance from point cloud PC1 to PC2 and the distance from point cloud PC2 to PC1, and use the average of the two as the difference degree of the three-dimensional mesh model.

[0103] Step 5: Sort the meshes in the comparison list from smallest to largest according to their difference. The 3D mesh model 2 with the smallest difference that is less than the threshold b is the match that matches the input 3D mesh model 1, and the transformation matrix from the input 3D mesh model 1 to the 3D mesh model 2 is obtained. Finally, return the 3D mesh model 2 and the transformation matrix; if there is no match, return a null pointer.

[0104] Compared with traditional model matching methods based on grid data structures, the technical solution of this application uses innovative point cloud technology to match 3D models, which has the following advantages:

[0105] By preprocessing to extract geometrically invariant features from the 3D mesh, the recognition rate is improved. Using point cloud distance as a comparison criterion provides a degree of ambiguity, allowing for comparison of similar 3D meshes at different levels of detail or with different geometric structures, thus avoiding the low matching and recognition rate issues caused by the strictness of existing methods. The point cloud recognition method uses intuitive comparison based on the model's own geometry, avoiding the overly abstract nature of existing methods that rely on feature indicators and struggle to determine reasonable thresholds. The improved recognition rate facilitates further model compression, resulting in a smaller and lighter overall model dataset.

[0106] This invention also provides a point cloud-based model matching device, such as... Figure 3 As shown, the point cloud-based model matching device includes:

[0107] The first processing module 101 is used to acquire the target 3D mesh model and calculate the principal axes of the target 3D mesh model. For details, please refer to the relevant description of step S101 in the above method embodiments, which will not be repeated here.

[0108] The second processing module 102 is used to establish a local coordinate system based on the principal axis, transform the target 3D mesh model to the local coordinate system, and extract the positional features of the target 3D mesh model. For details, please refer to the relevant description of step S102 in the above method embodiments, which will not be repeated here.

[0109] The third processing module 103 is used to perform point cloud sampling on the target 3D mesh model based on positional features to obtain the target point cloud corresponding to the target 3D mesh model. For details, please refer to the relevant description of step S103 in the above method embodiments, which will not be repeated here.

[0110] The fourth processing module 104 is used to calculate the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched in the matching list. The first point cloud is obtained by sampling the point cloud of the 3D mesh model to be matched based on the position features of the 3D mesh model to be matched in the local coordinate system established on its corresponding principal axis. For details, please refer to the relevant description of step S104 in the above method embodiment, which will not be repeated here.

[0111] The fifth processing module 105 is used to filter 3D mesh models that match the target 3D mesh model from the matching list based on the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched. For details, please refer to the relevant description of step S105 in the above method embodiments, which will not be repeated here.

[0112] The point cloud-based model matching device provided in this embodiment of the invention is used to execute the point cloud-based model matching method provided in the above embodiment. Its implementation method and principle are the same. For details, please refer to the relevant description of the above method embodiment, which will not be repeated here.

[0113] Through the collaborative efforts of the aforementioned components, the point cloud-based model matching device provided in this embodiment of the invention establishes a local coordinate system by extracting the principal axis of the 3D mesh model and extracting the positional features of the 3D mesh model in the local coordinate system. This allows for subsequent model matching using the geometrically invariant feature of the 3D mesh model's positional features, thereby improving the model recognition rate. Furthermore, using point cloud distance as the basis for model matching introduces a degree of ambiguity. Since point cloud-based model matching starts from the geometry of the model itself, it can intuitively reflect the consistency between models, further improving the recognition rate of the matched models. It exhibits good matching and recognition rates for similar 3D mesh models with different levels of detail or different geometric structures.

[0114] This invention also provides a point cloud-based model matching device, such as... Figure 4 As shown, the point cloud-based model matching device includes a processor 901 and a memory 902, wherein the processor 901 and the memory 902 can be connected via a bus or other means. Figure 4 Taking the example of a connection between China and Israel via a bus.

[0115] Processor 901 can be a Central Processing Unit (CPU). Processor 901 can also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or combinations of the above types of chips.

[0116] The memory 902, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs, non-transitory computer-executable programs, and modules, such as the program instructions / modules corresponding to the methods in the above method embodiments. The processor 901 executes various functional applications and data processing of the processor by running the non-transitory software programs, instructions, and modules stored in the memory 902, thereby implementing the methods in the above method embodiments.

[0117] The memory 902 may include a program storage area and a data storage area. The program storage area may store the operating system and applications required for at least one function; the data storage area may store data created by the processor 901, etc. Furthermore, the memory 902 may include high-speed random access memory and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, the memory 902 may optionally include memory remotely located relative to the processor 901, and these remote memories may be connected to the processor 901 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0118] One or more modules are stored in memory 902, and when executed by processor 901, they perform the methods described in the above method embodiments.

[0119] For details regarding the point cloud-based model matching device, please refer to the relevant descriptions and effects in the above embodiments for further understanding; they will not be repeated here.

[0120] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The implemented program can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above methods. The storage medium can be a magnetic disk, optical disk, read-only memory (ROM), random access memory (RAM), flash memory, hard disk drive (HDD), or solid-state drive (SSD), etc.; the storage medium can also include combinations of the above types of memory.

[0121] Although embodiments of the invention have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of the invention, and such modifications and variations all fall within the scope defined by the appended claims.

Claims

1. A model matching method based on point clouds, characterized in that, The method includes: Obtain the target 3D mesh model and calculate the principal axes of the target 3D mesh model; A local coordinate system is established based on the principal axis, and the target 3D mesh model is transformed into the local coordinate system to extract the position features of the target 3D mesh model. Based on the location features, point cloud sampling is performed on the target 3D mesh model to obtain the target point cloud corresponding to the target 3D mesh model; Calculate the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched in the matching list. The first point cloud is obtained by sampling the point cloud of the 3D mesh model to be matched based on the position features of the 3D mesh model to be matched in the local coordinate system established by its corresponding principal axis. Based on the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched, 3D mesh models that match the target 3D mesh model are selected from the list of models to be matched. Before calculating the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model in the match list, the method further includes: Calculate the first minimum bounding box of the target 3D mesh model based on its positional features; The difference between the first minimum bounding box and the second minimum bounding box corresponding to each 3D mesh model to be matched in the list of to be matched is calculated respectively. The second minimum bounding box is obtained by calculating the minimum bounding box of the 3D mesh model to be matched based on the position characteristics of the 3D mesh model to be matched in the local coordinate system established on its corresponding principal axis. Remove any 3D mesh models with a difference greater than a preset difference threshold from the list of models to be matched.

2. The method according to claim 1, characterized in that, The extraction of the positional features of the target 3D mesh model includes: Extract the vertex coordinates of each triangular facet of the target 3D mesh model in the local coordinate system.

3. The method according to claim 2, characterized in that, The step of sampling the target 3D mesh model based on the location features to obtain the target point cloud corresponding to the target 3D mesh model includes: Based on the vertex coordinates of each triangular facet of the target 3D mesh model in the local coordinate system, point cloud sampling is performed on each triangular facet to obtain the target point cloud corresponding to the target 3D mesh model.

4. The method according to claim 1, characterized in that, The step of filtering 3D mesh models that match the target 3D mesh model from the list of models to be matched, based on the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched, includes: Calculate the first distance from the target point cloud to the current first point cloud and the second distance from the current first point cloud to the target point cloud, respectively. The model difference between the target point cloud and the current first point cloud is calculated based on the first distance and the second distance; The 3D mesh model with the smallest model difference in the list of models to be matched is determined as the 3D mesh model that matches the target 3D mesh model.

5. The method according to claim 4, characterized in that, Before determining the 3D mesh model with the smallest model difference in the list of models to be matched as the 3D mesh model that matches the target 3D mesh model, the method further includes: Determine whether there exists a 3D mesh model in the list of models to be matched that has a model difference degree less than a preset model difference threshold; When there is a three-dimensional mesh model to be matched in the list of models to be matched with a model difference degree less than a preset model difference degree threshold, the three-dimensional mesh model to be matched with the smallest model difference degree in the list of models to be matched is determined as the three-dimensional mesh model that matches the target three-dimensional mesh model. If there is no matching 3D mesh model in the list of models to be matched with a model difference less than a preset model difference threshold, a message will be displayed indicating that there is no matching model.

6. The method according to claim 1, characterized in that, After removing 3D mesh models with a difference greater than a preset difference threshold from the matching list, the method further includes: Determine whether the list to be matched is empty; When the list of models to be matched is empty, a message will be displayed indicating that there is no matching model. When the list of objects to be matched is not empty, the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched in the list of objects to be matched is calculated.

7. The method according to claim 1, characterized in that, Also includes: Obtain a first transformation matrix that transforms the target 3D mesh model to the local coordinate system, and a second transformation matrix that transforms the 3D mesh model that matches the target 3D mesh model to the local coordinate system established based on its corresponding principal axis; Based on the first transformation matrix and the second transformation matrix, calculate the target transformation matrix to transform the target 3D mesh model into a 3D mesh model that matches the target 3D mesh model.

8. A point cloud-based model matching device, characterized in that, The device includes: The first processing module is used to acquire the target three-dimensional mesh model and calculate the principal axes of the target three-dimensional mesh model; The second processing module is used to establish a local coordinate system based on the principal axis, transform the target three-dimensional mesh model to the local coordinate system, and extract the position features of the target three-dimensional mesh model. The third processing module is used to perform point cloud sampling on the target 3D mesh model based on the location features to obtain the target point cloud corresponding to the target 3D mesh model; The fourth processing module is used to calculate the first minimum bounding box of the target 3D mesh model based on its positional features; calculate the difference between the first minimum bounding box and the second minimum bounding box corresponding to each 3D mesh model to be matched in the matching list, wherein the second minimum bounding box is obtained by calculating the minimum bounding box of the 3D mesh model to be matched based on its positional features in the local coordinate system established on its corresponding principal axis; delete the 3D mesh models to be matched that have a difference greater than a preset difference threshold from the matching list; and calculate the distance between the target point cloud and the first point cloud corresponding to each 3D mesh model to be matched in the matching list, wherein the first point cloud is obtained by sampling the 3D mesh model to be matched based on its positional features in the local coordinate system established on its corresponding principal axis. The fifth processing module is used to filter three-dimensional mesh models that match the target three-dimensional mesh model from the list of models to be matched, based on the distance between the target point cloud and the first point cloud corresponding to each three-dimensional mesh model to be matched.

9. A point cloud-based model matching device, characterized in that, include: A memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, the processor executing the computer instructions to perform the method according to any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions for causing the computer to perform the method as described in any one of claims 1-7.