A method for recognizing multiple machining features of 3D models for 3D machining process design

By constructing an adjacency attribute graph and a convolutional neural network, the limitations of feature recognition in 3D machining process design are solved, achieving high-accuracy feature classification and decomposition, and improving the robustness and scalability of the algorithm.

CN115841598BActive Publication Date: 2025-11-14NANJING UNIV OF AERONAUTICS & ASTRONAUTICS
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211699983.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-29
Publication Date
2025-11-14
Estimated Expiration
2042-12-29

AI Technical Summary

Technical Problem

Existing technologies for feature recognition in 3D machining process design have limitations. They cannot effectively identify complex features, resulting in the loss of topological and geometric information, low classification accuracy, and poor algorithm robustness.

Method used

This paper adopts a method based on adjacency attribute graphs and convolutional neural networks. By reading the geometric surface information of a 3D solid model, an adjacency attribute graph is constructed to separate feature surfaces and non-feature surfaces. Convolutional neural networks are then used for feature classification to decompose the intersecting features of multiple base surfaces, thereby achieving automatic feature extraction and classification.

Benefits of technology

It achieves high-accuracy feature classification, avoids information loss, has good robustness and scalability, can effectively identify complex features, and solves the problem of multi-feature recognition.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115841598B_ABST
    Figure CN115841598B_ABST
Patent Text Reader

Abstract

This invention discloses a method for recognizing multiple machining features of a 3D model for 3D machining process design, relating to the field of 3D machining process design technology. This invention proposes: 1) a method for recognizing multiple machining features of a 3D model for 3D machining process design; 2) this feature recognition method performs a decomposition operation on intersecting features containing coplanar surfaces, inputting the decomposed independent features into a network model for classification, thus realizing the recognition of coplanar intersecting features, and the algorithm has good robustness; 3) this feature recognition method realizes the automatic extraction and classification of workpiece features, solving the problem of multi-feature recognition of workpiece solid models.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of three-dimensional machining process design technology, and in particular to a method for recognizing multiple machining features of a three-dimensional model for three-dimensional machining process design. Background Technology

[0002] Automatic feature recognition technology is also an important component of computer-aided design, computer-aided process engineering, and computer-aided manufacturing, and is a key technology for realizing digital manufacturing throughout the entire product lifecycle. Due to the large number of features that may exist in a workpiece, the uncertainty in the number and type of surfaces that make up the features, and the various unpredictable and complex intersections between features, automatic feature recognition technology has always been a pressing technical challenge and key issue in the field of digital manufacturing. Traditional feature recognition methods include attribute adjacency graph-based methods, cue-based methods, and heuristic feature recognition methods. However, these traditional methods all have many limitations and encounter various problems in actual processing and production. For example, cue-based methods determine some geometric and topological information based on the features to be recognized, but this method can only recognize a very limited number of features and cannot summarize and derive identifiable cue information for some complex features.

[0003] Besides traditional methods, academia and industry have also attempted to use some newer theoretical approaches to solve feature recognition problems. For example, artificial neural networks (ANNs) are used to build model classifiers to address the problem of feature classification after feature extraction. However, when using this method, the network input is a vector of fixed size, while the number of faces in the features varies, making direct input into the network for feature classification impossible. It is necessary to construct more advanced statistical features to achieve a fixed input for the network, such as the number of planes or cylinders as a fixed-size input. While this statistical feature approach can achieve a fixed-size vector input, it suffers from the loss of topological and geometric information. With this loss of input information, and given the relatively shallow network depth, the neural network cannot automatically extract and construct semantic features from the input, resulting in low feature classification accuracy. Some feature recognition methods combine multiple algorithms, but the results are still unsatisfactory. The main problem is that the intersection of features is too complex, disrupting the original topological features and rendering algorithms originally designed to identify independent and complete features ineffective.

[0004] This invention improves and expands the functionality of the INTE3D 3D engineering application platform for Tianyu products. Its main objective is to study the feature recognition technologies involved in the 3D machining process design and provide technical support for the realization of 3D machining processes.

[0005] Therefore, proposing a method for recognizing multiple machining features of 3D models for 3D machining process design to solve the difficulties existing in the prior art is a problem that urgently needs to be solved by those skilled in the art. Summary of the Invention

[0006] In view of this, the present invention provides a method for recognizing multiple machining features of a 3D model for 3D machining process design, which can realize the automatic extraction and classification of workpiece features, solve the problem of multi-feature recognition of workpiece solid models, and ensure that the feature recognition algorithm has a very high classification accuracy.

[0007] To achieve the above objectives, the present invention adopts the following technical solution:

[0008] A method for recognizing multiple machining features of 3D models for 3D machining process design includes the following steps:

[0009] S1. Read the 3D solid model of the workpiece to be analyzed, and extract all geometric surfaces on the workpiece and the geometric information on the geometric surfaces;

[0010] S2. Calculate the adjacency relationship between all geometric surfaces of the workpiece based on the geometric information on the geometric surface, determine the geometric surfaces with connection relationships, calculate the concavity and convexity between all connected surfaces, and obtain the adjacency attribute map of the entire workpiece.

[0011] S3. Distinguish between feature surfaces and non-feature surfaces using the adjacency attribute graph, and extract features from the feature surfaces to obtain the identified features and unidentified features;

[0012] S4. Input the unidentified features from S3 into the standard face node topology structure, output the topology information, and use the topology information and geometric information as input to the established convolutional neural network for feature classification and recognition;

[0013] S5. Based on the predefined feature recognition rule base, classify the features identified in S3 into simple features, multi-plane intersection features, and unclassified features;

[0014] S6. Decompose the multi-plane intersection feature in S5 to obtain independent features;

[0015] S7. Use the convolutional neural network built from the independent features in S6 to perform feature classification and obtain the classification results of the independent features.

[0016] In the above method, optionally, the geometric information on the geometric surface in S1 includes, but is not limited to: type information, curve data, and starting point information.

[0017] The above method, optionally, includes the following specific content for S2:

[0018] The connection between two geometric surfaces is determined by the boundary curves in the geometric information on the surface. If the boundary curves intersect, the two geometric surfaces are connected; if they do not intersect, they are not connected. The concavity and convexity of the corresponding connection between two geometric surfaces that are connected are calculated to obtain the adjacency attribute map of the entire workpiece.

[0019] Alternatively, in S2, the method for calculating concavity / convexity described above is as follows:

[0020] The intersecting parts of the boundary curves are called intersecting curves. Take a point on the intersecting curve, let it be A. Then take a point on a geometric surface on one side of the intersecting curve, let it be B. Take a point on a geometric surface on the other side of the intersecting curve, let it be C. Calculate the normal vector of the geometric surface to which point B belongs. Calculate the direction vectors with A as the starting point and C as the ending point. Calculate the angle between the normal vector and the direction vector. If the angle is less than 90°, the connection is a concave connection. If the angle is greater than 90°, the connection is a convex connection. If the angle is equal to 90°, the connection is a tangent connection.

[0021] Optionally, the specific content of the adjacency attribute graph in S2 is as follows:

[0022] The adjacency attribute graph is calculated based on the connection attributes between all geometric faces. An M×M adjacency matrix is ​​constructed to store all adjacency values, where M is the number of geometric faces in the workpiece, and the row and column numbers of the matrix correspond to the index number of each geometric face.

[0023] The above method, optionally, includes the following specific content in S3:

[0024] S31 traverses all rows in the adjacency matrix, finds fully convex geometric surfaces that are convexly connected to all connected surfaces, marks the convex geometric surfaces as non-feature surfaces, and the remaining geometric surfaces as feature surfaces;

[0025] S32 selects any geometric surface from the feature surfaces to start extracting features. All geometric surfaces that are concavely connected to the current geometric surface are stored in a feature container. Then, it iterates through all the geometric surfaces in the feature container, searches for all geometric surfaces that are concavely connected to it and adds them to the feature container, until there are no concavely connected geometric surfaces outside the feature container in the feature container.

[0026] S33 performs the operation of S32 on all feature surfaces until all features are extracted.

[0027] The above methods are optional.

[0028] The specific steps for constructing the standard surface node topology in S4 are as follows:

[0029] All face nodes are constructed into an edge length vector with a fixed number of columns and a variable number of rows to represent the feature face node topology;

[0030] The specific steps for building a convolutional neural network in S4 are as follows:

[0031] The front end of the convolutional neural network consists of three convolutional neural network modules for automatic feature extraction. These three modules are connected layer by layer. The pooling layer is divided into two parts: the first part is used to calculate the weight scores of each dimension in the automatically constructed features, and the second part is to perform pooling calculations using average pooling, minimum pooling, and maximum pooling operators, respectively. The back end of the convolutional neural network is a fully connected layer module.

[0032] The above method, optionally, involves identifying simple features, multi-plane intersection features, and unclassified features in S5 as follows:

[0033] Simple features: Identifying simple features by establishing rules;

[0034] Multi-plane intersection features: Identifying multi-plane intersection features using the bounding box method and tool machining direction;

[0035] Unclassified features: The remaining features excluding simple features and multi-plane intersection features are unclassified features.

[0036] The above method, optionally, includes the following specific content for decomposing the multi-base plane intersection feature in S6:

[0037] First, count the number of base planes in the current intersection feature, and then count the cutting depth of each base plane;

[0038] Merge base surfaces with the same cutting depth and perform feature decomposition operation on the features according to the cutting depth;

[0039] Select a base plane at any cutting depth and construct a plane with a height higher than the current base plane; perform a Boolean intersection operation on the constructed plane and all geometric surfaces of the current feature;

[0040] The intersection lines with all feature surfaces are obtained by performing plane intersection operations. Each intersection line has a unique corresponding feature surface. All intersection lines are connected into a loop according to the connection relationship of the endpoints, and the bounding box and bounding box depth of each loop are calculated.

[0041] Optionally, in the above method, the bounding box depth is the number of times the current bounding box is contained within other bounding boxes.

[0042] As can be seen from the above technical solution, compared with the prior art, the method for recognizing multiple machining features of a 3D model for 3D machining process design provided by the present invention is as follows:

[0043] (1) All the topological information of the features can be input into the convolutional neural network without the need to manually construct statistical features, thus avoiding the loss of feature information during input.

[0044] (2) The convolutional neural network of the present invention has a large number of layers and parameters. It automatically extracts high-order features from the topological vector through the convolution operator and achieves a high-accuracy feature classification model driven by a large number of feature samples.

[0045] (3) The adjacency graph was decomposed based on the feature-based attribute adjacency graph, realizing automatic feature extraction and separation of intersecting features that do not contain shared surfaces.

[0046] (4) This invention decomposes the intersecting features containing coplanar features, and inputs the decomposed independent features into the network model for classification, thereby realizing the recognition of coplanar intersecting features. The algorithm has good robustness.

[0047] (5) The feature recognition method proposed in this invention is scalable. The dataset of the corresponding features can be determined according to the requirements, and the number of neurons in the last layer of the neural network can be changed. The corresponding feature classification model can be obtained through training.

[0048] (6) This invention realizes the automatic extraction and classification of workpiece features, and solves the problem of multi-feature recognition of workpiece entity models. Attached Figure Description

[0049] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.

[0050] Figure 1 The flowchart of the method for recognizing multiple machining features of a 3D model for 3D machining process design provided by the present invention is shown below.

[0051] Figure 2 A schematic diagram of the convolutional neural network structure provided by this invention;

[0052] Figure 3 This is an example diagram of the intersection feature decomposition process provided by the present invention;

[0053] Figure 4 This is an example diagram of multi-feature recognition of workpiece entity models provided by the present invention. Detailed Implementation

[0054] 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, 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 are within the scope of protection of the present invention.

[0055] Reference Figure 1 As shown, this invention discloses a method for recognizing multiple machining features of a 3D model for 3D machining process design, comprising the following steps:

[0056] S1. Read the 3D solid model of the workpiece to be analyzed, and extract all geometric surfaces on the workpiece and the geometric information on the geometric surfaces;

[0057] S2. Calculate the adjacency relationship between all geometric surfaces of the workpiece based on the geometric information on the geometric surface, determine the geometric surfaces with connection relationships, calculate the concavity and convexity between all connected surfaces, and obtain the adjacency attribute map of the entire workpiece.

[0058] S3. Distinguish between feature surfaces and non-feature surfaces using the adjacency attribute graph, and extract features from the feature surfaces to obtain the identified features and unidentified features;

[0059] S4. Input the unidentified features from S3 into the standard face node topology structure, output the topology information, and use the topology information and geometric information as input to the established convolutional neural network for feature classification and recognition;

[0060] S5. Based on the predefined feature recognition rule base, classify the features identified in S3 into simple features, multi-plane intersection features, and unclassified features;

[0061] S6. Decompose the multi-plane intersection feature in S5 to obtain independent features;

[0062] S7. Use the convolutional neural network built from the independent features in S6 to perform feature classification and obtain the classification results of the independent features.

[0063] Furthermore, the geometric information on the geometric surface in S1 includes, but is not limited to: type information, curve data, and starting point information.

[0064] Furthermore, the specific content of S2 is as follows:

[0065] The connection between two geometric surfaces is determined by the boundary curves in the geometric information on the surface. If the boundary curves intersect, the two geometric surfaces are connected; if they do not intersect, they are not connected. The concavity and convexity of the corresponding connection between two geometric surfaces that are connected are calculated to obtain the adjacency attribute map of the entire workpiece.

[0066] Furthermore, in S2, the method for calculating concavity / convexity is as follows:

[0067] The intersecting parts of the boundary curves are called intersecting curves. Take a point on the intersecting curve, let it be A. Then take a point on a geometric surface on one side of the intersecting curve, let it be B. Take a point on a geometric surface on the other side of the intersecting curve, let it be C. Calculate the normal vector of the geometric surface to which point B belongs. Calculate the direction vectors with A as the starting point and C as the ending point. Calculate the angle between the normal vector and the direction vector. If the angle is less than 90°, the connection is a concave connection. If the angle is greater than 90°, the connection is a convex connection. If the angle is equal to 90°, the connection is a tangent connection.

[0068] Furthermore, the specific content of the adjacency attribute graph in S2 is as follows:

[0069] The adjacency attribute graph is calculated based on the connection attributes between all geometric faces. An M×M adjacency matrix is ​​constructed to store all adjacency values, where M is the number of geometric faces in the workpiece, and the row and column numbers of the matrix correspond to the index number of each geometric face.

[0070] Furthermore, the specific content of S3 is as follows:

[0071] S31 traverses all rows in the adjacency matrix, finds fully convex geometric surfaces that are convexly connected to all connected surfaces, marks the convex geometric surfaces as non-feature surfaces, and the remaining geometric surfaces as feature surfaces;

[0072] S32 selects any geometric surface from the feature surfaces to start extracting features. All geometric surfaces that are concavely connected to the current geometric surface are stored in a feature container. Then, it iterates through all the geometric surfaces in the feature container, searches for all geometric surfaces that are concavely connected to it and adds them to the feature container, until there are no concavely connected geometric surfaces outside the feature container in the feature container.

[0073] S33 performs the operation of S32 on all feature surfaces until all features are extracted.

[0074] Furthermore, the specific details of constructing the standard face node topology in S4 are as follows:

[0075] All face nodes are constructed into an edge length vector with a fixed number of columns and a variable number of rows to represent the feature face node topology;

[0076] The specific steps for building a convolutional neural network in S4 are as follows:

[0077] The front end of the convolutional neural network consists of three convolutional neural network modules for automatic feature extraction. These three modules are connected layer by layer. The pooling layer is divided into two parts: the first part is used to calculate the weight scores of each dimension in the automatically constructed features, and the second part is to perform pooling calculations using average pooling, minimum pooling, and maximum pooling operators, respectively. The back end of the convolutional neural network is a fully connected layer module.

[0078] Furthermore, the specific methods for identifying simple features, multi-plane intersection features, and unclassified features in S5 are as follows:

[0079] Simple features: Identifying simple features by establishing rules;

[0080] Multi-plane intersection features: Identifying multi-plane intersection features using the bounding box method and tool machining direction;

[0081] Unclassified features: The remaining features excluding simple features and multi-plane intersection features are unclassified features.

[0082] Furthermore, the specific details of decomposing the multi-basic plane intersection feature in S6 are as follows:

[0083] First, count the number of base planes in the current intersection feature, and then count the cutting depth of each base plane;

[0084] Merge base surfaces with the same cutting depth and perform feature decomposition operation on the features according to the cutting depth;

[0085] Select a base plane at any cutting depth and construct a plane with a height higher than the current base plane; perform a Boolean intersection operation on the constructed plane and all geometric surfaces of the current feature;

[0086] The intersection lines with all feature surfaces are obtained by performing plane intersection operations. Each intersection line has a unique corresponding feature surface. All intersection lines are connected into a loop according to the connection relationship of the endpoints, and the bounding box and bounding box depth of each loop are calculated.

[0087] Furthermore, the bounding box depth is the number of times the current bounding box is contained within other bounding boxes.

[0088] Specifically, S1 reads the workpiece entity model represented by the workpiece representation method, calculates the attribute adjacency graph of the entire workpiece based on the entity model, and extracts workpiece features; simple features and intersecting features with multiple base planes are directly identified through a predefined feature rule library. The decomposed intersecting features with multiple base planes and the unidentified features are all input into the trained convolutional neural network in the form of a graph to obtain the classification results of all features.

[0089] Specifically, in S1, the read workpiece entity model is constructed using boundary representation. The workpiece can be decomposed into several geometric surfaces. After extracting all geometric surfaces of the entity model, all inner and outer loops are traversed from the geometric surfaces. Then, all boundary curves are traversed from all inner and outer loops. All starting point information is extracted from all boundary curves. The type information, curve data, and starting point information of each surface are saved into a structure.

[0090] Specifically, in S2, the connection between geometric surfaces is determined by the boundary curves of each surface. If the boundary curves intersect, the two surfaces are connected; otherwise, they are not. For two connected surfaces, the concavity / convexity of the connection needs to be calculated. The calculation method is as follows: Take a point A on the intersecting curve, a point B on a surface near the intersecting curve, and a point C on another surface near the intersecting curve. Calculate the normal vector of the surface to which point B belongs at that point, calculate the direction vectors with A as the starting point and C as the ending point, and calculate the angle between the normal vector and the direction vector. If the angle is less than 90 degrees, the connection is concave; if the angle is greater than 90 degrees, the connection is convex. An attribute adjacency graph is calculated based on the connection attributes between all geometric surfaces. An M×M adjacency matrix is ​​constructed to store all adjacency values, where M is the number of geometric surfaces in the workpiece, and the row and column numbers of the matrix correspond to the index of each geometric surface. The values ​​in the matrix can only be 0, 1, 2, and -2. In this matrix, 0 indicates that the two geometric surfaces are not connected, 1 indicates that the geometric surfaces are connected when their row and column numbers are the same, 2 indicates that the two geometric surfaces are convexly connected, and -2 indicates that the two surfaces are concavely connected. This matrix enables the storage of the adjacency information of all geometric surfaces of the entire workpiece in the computer.

[0091] Specifically, in S3, all rows in the adjacency matrix are traversed, and rows whose values ​​do not contain "-2" are found. The faces corresponding to these row numbers are marked as non-feature faces, and the faces corresponding to the remaining row numbers are marked as feature faces. Starting from any face in the feature face, features are extracted. Assuming the row number of the feature face is i, the i-th row in the matrix is ​​found, and the columns with values ​​of "-2" are identified. The geometric faces corresponding to these column numbers are the geometric faces concavely connected to the current feature face. These geometric faces are placed into a feature container. Then, all geometric faces in the container are traversed iteratively, searching for geometric faces with concave connections to these geometric faces and adding them to the feature container, until no geometric face in the container has a concave connection outside the container. At this point, the geometric faces in the container constitute a feature, which is saved. After cleaning the container, the above operation is repeated for the remaining feature faces until all features are extracted.

[0092] Specifically, in S3, some simple features can be directly identified according to rules, and these features are called identified features; the remaining features that can be extracted but cannot be classified using rule-based methods are called unidentified features.

[0093] Specifically, in S4, the features not identified in step S3 are classified and identified using the neural network constructed in this invention. First, construct as follows: Figure 2 The diagram shows a convolutional neural network (CNN) structure. The front end consists of three CNN modules for automatic feature extraction. These three modules are connected layer by layer, progressively increasing the depth of feature extraction. The automatically extracted features from the three modules are stacked and concatenated, resulting in both shallow and deep features. The pooling layer can be divided into two parts: the first part calculates the weight scores for each dimension of the automatically constructed features, and the second part performs pooling calculations using average pooling, min pooling, and max pooling operators respectively. The calculation of weight scores introduces a self-attention mechanism, enabling the network to achieve better classification prediction performance. The three pooling operators retain important information as much as possible while reducing the vector size, transforming vectors of uncertain length into vectors of fixed size. In the readout layer, the three pooled vectors are stacked as the final feature input vector with a fixed size. The back end of the network is a fully connected layer module, mainly used for predicting the classification results. The network parameters in the fully connected layer are as follows: Figure 2 As shown.

[0094] right Figure 2 The input information for the network is explained. Figure 2 The input to the convolutional neural network consists of two matrices: an adjacency matrix and a face feature vector. During training, the convolutional neural network reads in all samples at once. Assume there are M features in each sample, and N faces for each M feature. Therefore, the adjacency matrix has a dimension of M×M, and the face feature vector has a dimension of N×3. Each face corresponds to a 1×3 feature vector. If the face is a base face, the first two dimensions of the vector are "1, 0"; otherwise, they are "0, 1". The third dimension of the vector represents the number of circumscribed surfaces. A circumscribed surface is a non-feature surface that is convexly connected to the current face. The parameter S in the fully connected layer represents the number of features to be classified, which needs to be determined based on the specific classification requirements. Therefore, this invention is scalable, and the number of classifications in the network can be adjusted according to needs.

[0095] Specifically, in S5, simple features such as through holes and blind holes are identified by establishing rules. Rule-based methods are more efficient at identifying these simple features. If a feature contains only two semi-cylindrical surfaces connected to each other, it is identified as a through hole feature. If a feature contains only two semi-cylindrical surfaces and a plane, with the two cylindrical surfaces connected and the plane and both semi-cylindrical surfaces being concave connections, it is identified as a blind hole feature. For the remaining features, the feature base plane is determined using a bounding box method and the tool machining direction. First, the bounding box of the feature is calculated, and planes coinciding with the boundary of the bounding box are found. Then, from these planes, a plane with a 90-degree angle to the tool feed direction is selected as the base plane. The remaining planes in the feature parallel to this base plane are also marked as base planes. If a feature contains more than one base plane, it is considered a multi-base-plane intersection feature. The remaining features are unclassified features.

[0096] Specifically, in S6, a feature decomposition operation is performed on intersecting features with multiple base planes. First, the number of base planes in the current intersecting feature is counted, and the cutting depth of each base plane is also counted. Base planes with the same cutting depth are merged, and feature decomposition is performed on the feature according to the cutting depth. A base plane with any cutting depth is selected, and a plane with a height higher than the current base plane is constructed. A Boolean intersection operation is performed between this constructed plane and all geometric faces of the current feature. If a feature face and this plane have an intersection line, it indicates that the feature construction at the current cutting depth requires this face. This method can identify all relevant feature faces at the current cutting depth. Furthermore, since multiple features may exist at the same cutting depth, feature grouping is also required for all identified feature faces. This invention obtains the intersection lines with all feature faces through plane intersection operations, and each intersection line has a unique corresponding feature face. All intersection lines are connected into loops according to the connection relationship of their endpoints. The bounding box and bounding box depth of each loop are calculated. The bounding box depth is the number of times the current bounding box is contained within other bounding boxes. Loops with even bounding box depths are marked as outer loops, and loops with odd bounding box depths are marked as inner loops. Sort the rings in the outer and inner ring groups according to their area from smallest to largest. Then, starting with the outer ring with the smallest area, find the inner rings contained within it in the inner ring group. After the search is complete, remove the outer ring and its corresponding inner ring from the outer and inner ring groups, and combine the geometric faces corresponding to these rings into a single feature. Repeat the above operation for the remaining rings in the outer and inner ring groups until no more rings exist in the inner and outer ring groups, obtaining all features at the current depth. Repeat the feature decomposition operation at the current cutting depth for the base planes of all cutting depths. Obtain the independent features obtained after the entire intersection feature decomposition. Figure 3The following example diagram illustrates the decomposition of intersecting features. An intersecting feature in the workpiece is selected for decomposition. Four base surfaces are identified within this feature, and these are merged based on two cutting depths. The intersection lines are constructed using planes and feature surfaces to determine the geometric surface corresponding to each decomposed feature. After the intersection lines are organized into loops, the bounding box depth is calculated to be 0, thus forming outer loops. Each outer loop corresponds to one feature. Three outer loops correspond to three decomposed features, such as... Figure 3 As shown in the image.

[0097] Specifically, in S7, the independent features obtained by decomposing the intersecting features are input into the neural network for feature classification to obtain the classification results of the decomposed features. Figure 3 All three decomposition features are cavities. For example... Figure 4 The image shown is an example of multi-feature recognition of a workpiece entity model involved in the method described in this invention. It shows the feature recognition results of this invention on a multi-feature workpiece entity model, and identifies a variety of common workpiece features such as through holes, steps, and cavities.

[0098] The above description of the disclosed embodiments enables those skilled in the art to make or use the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the invention is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A method for recognizing multiple machining features of a 3D model for 3D machining process design, characterized in that, Includes the following steps: S1. Read the 3D solid model of the workpiece to be analyzed, and extract all geometric surfaces on the workpiece and the geometric information on the geometric surfaces; S2. Calculate the adjacency relationship between all geometric surfaces of the workpiece based on the geometric information on the geometric surface, determine the geometric surfaces with connection relationships, calculate the concavity and convexity between all connected surfaces, and obtain the adjacency attribute map of the entire workpiece. S3. Distinguish between feature surfaces and non-feature surfaces using the adjacency attribute graph, and extract features from the feature surfaces to obtain the identified features and unidentified features; S4. Input the unidentified features from S3 into the standard face node topology structure, output the topology information, and use the topology information and geometric information as input to the established convolutional neural network for feature classification and recognition; S5. Based on the predefined feature recognition rule base, classify the features identified in S3 into simple features, multi-plane intersection features, and unclassified features; S6. Decompose the multi-plane intersection feature in S5 to obtain independent features; S7. Input the independent features from S6 into the convolutional neural network to perform feature classification and obtain the classification results of the independent features; The specific content of decomposing the multi-basic plane intersection feature in S6 is as follows: First, count the number of base planes in the current intersection feature, and then count the cutting depth of each base plane; Merge base surfaces with the same cutting depth and perform feature decomposition operation on the features according to the cutting depth; Select a base plane at any cutting depth and construct a plane with a height higher than the current base plane; perform a Boolean intersection operation on the constructed plane and all geometric surfaces of the current feature; The intersection lines with all feature surfaces are obtained by performing plane intersection operations. Each intersection line has a unique corresponding feature surface. All intersection lines are connected into a loop according to the connection relationship of the endpoints. The bounding box and the depth of each loop are calculated. The bounding box depth is the number of times the current bounding box is contained within other bounding boxes; Rings with even bounding box depths are labeled as outer rings, and rings with odd bounding box depths are labeled as inner rings. The rings in the outer and inner ring groups are sorted in ascending order of area. Then, starting with the outer ring with the smallest area, the inner rings contained within the outer ring group are searched. After the search is completed, the outer ring and the corresponding inner ring are removed from the outer and inner ring groups. At the same time, the geometric surfaces corresponding to these rings are combined into a feature. The above operation is repeated for the remaining rings in the outer and inner ring groups until there are no more rings in the inner and outer ring groups. All features at the current depth are obtained. The feature decomposition operation at the current cutting depth is repeated for the base surfaces of all cutting depths to obtain the independent features obtained after the entire intersection feature decomposition.

2. The method for recognizing multiple machining features of a 3D model for 3D machining process design according to claim 1, characterized in that, The geometric information on the geometric surface in S1 includes, but is not limited to: type information, curve data, and starting point information.

3. The method for recognizing multiple machining features of a 3D model for 3D machining process design according to claim 1, characterized in that, The specific content of S2 is as follows: The connection between two geometric surfaces is determined by the boundary curves in the geometric information on the surface. If the boundary curves intersect, the two geometric surfaces are connected; if they do not intersect, the two geometric surfaces are not connected. The concavity and convexity of the corresponding connection between two geometric surfaces with a connection relationship are calculated to obtain the adjacency attribute map of the entire workpiece.

4. The method for recognizing multiple machining features of a 3D model for 3D machining process design according to claim 3, characterized in that, In S2, the method for calculating concavity and convexity is as follows: The intersecting parts of the boundary curves are called intersecting curves. Take a point on the intersecting curve, let it be A. Then take a point on a geometric surface on one side of the intersecting curve, let it be B. Take a point on a geometric surface on the other side of the intersecting curve, let it be C. Calculate the normal vector of the geometric surface to which point B belongs. Calculate the direction vectors with A as the starting point and C as the ending point. Calculate the angle between the normal vector and the direction vector. If the angle is less than 90°, the connection is a concave connection. If the angle is greater than 90°, the connection is a convex connection. If the angle is equal to 90°, the connection is a tangent connection.

5. The method for recognizing multiple machining features of a 3D model for 3D machining process design according to claim 1, characterized in that, The specific content of the adjacency attribute graph in S2 is as follows: The adjacency attribute graph is calculated based on the connection attributes between all geometric faces. An M×M adjacency matrix is ​​constructed to store all adjacency values, where M is the number of geometric faces in the workpiece, and the row and column numbers of the matrix correspond to the index number of each geometric face.

6. The method for recognizing multiple machining features of a 3D model for 3D machining process design according to claim 5, characterized in that, The specific content in S3 is as follows: S31 traverses all rows in the adjacency matrix, finds fully convex geometric surfaces that are convexly connected to all connected surfaces, marks the convex geometric surfaces as non-feature surfaces, and the remaining geometric surfaces as feature surfaces; S32 selects any geometric surface from the feature surfaces to start extracting features. All geometric surfaces that are concavely connected to the current geometric surface are stored in a feature container. Then, it iterates through all the geometric surfaces in the feature container, searches for all geometric surfaces that are concavely connected to it and adds them to the feature container, until there are no concavely connected geometric surfaces outside the feature container in the feature container. S33 performs the operation of S32 on all feature surfaces until all features are extracted.

7. The method for recognizing multiple machining features of a 3D model for 3D machining process design according to claim 1, characterized in that, The specific steps for constructing the standard surface node topology in S4 are as follows: All face nodes are constructed into an edge length vector with a fixed number of columns and a variable number of rows to represent the feature face node topology; The specific steps for building a convolutional neural network in S4 are as follows: The front end of the convolutional neural network consists of three convolutional neural network modules for automatic feature extraction. These three modules are connected layer by layer. The pooling layer is divided into two parts: the first part is used to calculate the weight scores of each dimension in the automatically constructed features, and the second part is to perform pooling calculations using average pooling, minimum pooling, and maximum pooling operators, respectively. The back end of the convolutional neural network is a fully connected layer module.

8. The method for recognizing multiple machining features of a 3D model for 3D machining process design according to claim 1, characterized in that, The specific methods for identifying simple features, multi-plane intersection features, and unclassified features in S5 are as follows: Simple features: Identifying simple features by establishing rules; Multi-plane intersection features: Identifying multi-plane intersection features using the bounding box method and tool machining direction; Unclassified features: The remaining features excluding simple features and multi-plane intersection features are unclassified features.

Citation Information

Patent Citations

  • Automatic feature identification method and device for die with lots of bosses and grooves

    CN114140630A