Flat plate type part rapid identification method based on equal-thickness surface splicing
Through the equal-thick surface splicing method based on B-rep data and depth-first search algorithm, combined with the AABB bounding box algorithm, the problem of inefficient recognition of flat-panel parts is solved, and efficient and accurate automatic recognition is achieved, which is suitable for automated detection and classification in industrial manufacturing.
Patent Information
- Application Number
- CN202510964279.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-14
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2045-07-14
AI Technical Summary
In the prior art, the recognition efficiency of flat panel parts is inefficient and the accuracy is insufficient, making it difficult to achieve efficient and accurate automatic identification in industrial design and manufacturing.
By extracting the B-rep data of the part, using the depth-first search algorithm and the AABB bounding box algorithm, we can judge whether there are parallel planes in the part, and splicing is performed equal-thick surfaces, calculate the surface thickness and bounding box direction dimensions, and filter out flat-panel parts.
It realizes efficient and accurate identification of flat-panel parts, and is suitable for automated inspection and classification of large-scale parts libraries, improving identification efficiency and accuracy.
Smart Images

Figure CN120448934A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of parts identification, and in particular relates to a method for quickly identifying flat plate parts based on splicing of equal-thickness surfaces. Background Art
[0002] In industrial design and manufacturing, the geometric shape of a part directly impacts its manufacturing and assembly processes, making it a key feature that requires significant attention during product process planning. Therefore, the efficient identification of flat parts is fundamental to intelligent product development. Traditional recognition methods often rely on manual judgment or simple keyword matching, resulting in low efficiency and large recognition errors. With the advancement of 3D modeling technology, an increasing number of parts are stored digitally, creating an urgent need for an efficient and accurate automatic recognition method.
[0003] Based on the defects of low recognition efficiency and insufficient recognition accuracy in the existing flat plate parts recognition process, the present invention discloses a fast recognition method for flat plate parts based on splicing of equal thickness surfaces. Summary of the Invention
[0004] The present invention discloses a method for quickly identifying flat plate parts based on splicing of equal-thickness surfaces. The method is suitable for batch and efficient analysis and identification of large-scale parts libraries and can identify flat plate parts efficiently and accurately.
[0005] The present invention is achieved through the following technical solutions: A method for rapid identification of flat-plate parts based on splicing of equal-thickness surfaces is proposed. The B-rep data of the part is extracted based on the part digital model. Based on the B-rep data, it is determined whether there are parallel planes in the current part. For parts with parallel planes, a depth-first search algorithm is used to splice the equal-thickness surfaces in the part to obtain a splicing surface. The area of the splicing surface and the area of the original surface of the part are calculated, and the maximum surface thickness corresponding to the surface with the largest area is selected. The AABB bounding box algorithm is used to calculate the minimum directional dimension of the bounding box of the current part in the directions of the three coordinate axes. The maximum surface thickness is compared with the directional dimension. If the maximum surface thickness is equal to the minimum directional dimension, the current part is determined to be a flat-plate part.
[0006] In order to better implement the present invention, the following steps are further included: Step 1: Analyze and extract the B-rep data of the part, and determine whether there are parallel planes in the current part based on the B-rep data; Step 2: For the parts with parallel planes, extract the set of original part surfaces. Extract any part surface from the set of original part surfaces, find the parallel plane of any part surface, find the adjacent surface of any part surface, extract the first distance between any part surface and its parallel plane, extract the second distance between the adjacent surface and the parallel plane, and judge whether any part surface and the adjacent surface form a splicing surface based on the relationship between the first distance and the second distance; Step 3: Establish the set of surfaces of the original part and the splicing surface, sort the original part surfaces and the splicing surfaces in the surface set based on the area, and extract the surface with the largest area; calculate the third distance between the surface with the largest area and its corresponding parallel plane; Step 4: Calculate the minimum directional dimension of the bounding box of the current part in the three coordinate axis directions, and compare the minimum directional dimension with the third distance. If the third distance is equal to the minimum directional dimension, judge that the current part is a flat part.
[0007] To better implement the present invention, further, the specific content of step 2 includes: Step 2.1: Extract the set of original part surfaces F, and use the depth-first search algorithm to traverse and search the set of original surfaces F, and extract any part surface f in the set of original part surfaces F; Step 2.2: Perform reverse projection according to the normal direction of any part surface f to find the parallel plane ft parallel to any part surface f. If the extracted any part surface f has a parallel plane ft, then go to step 2.3; Step 2.3: Extract the adjacent surface fk of any part surface f. If the extracted any part surface f does not have an adjacent surface fk, then directly go to step 3; if the extracted any part surface f has an adjacent surface fk, then judge whether the normal direction of the extracted any part surface f is the same as the normal direction of the adjacent surface fk. If they are not the same, then go to step 3. If they are the same, then go to step 2.4; Step 2.4: Calculate the first distance d1 between the extracted any part surface f and the parallel plane ft, calculate the second distance d2 between the adjacent surface fk and the parallel plane ft, and judge whether any part surface f and the adjacent surface fk can form a splicing surface fp based on the quantitative relationship between the first distance d1 and the second distance d2.
[0008] To better implement the present invention, further, the quantitative relationship between the first distance d1 and the second distance d2 in step 2.4 is as follows: If |d1 - d2| / d1 < , then judge that any part surface f and the adjacent surface fk can form a splicing surface fp; if |d1 - d2| / d1 ≥ , then judge that any part surface f and the adjacent surface fk cannot form a splicing surface fp; Where: d1 represents the first distance; d2 represents the second distance; Indicates the calibration value.
[0009] In order to better implement the present invention, further, the step 2.3 specifically includes: Step 2.3.1. For any part face f that has an adjacent face fk, establish an adjacent face set Fk of any part face f, and extract the first boundary line of any part face f and the second boundary line of the adjacent face fk; Step 2.3.2, extract the first sampling point and the second sampling point on the first boundary line and the second boundary line respectively, calculate the first normal direction passing through the first sampling point based on the arbitrary part surface f, and calculate the second normal direction passing through the second sampling point based on the adjacent surface fk; Step 2.3.3: Determine whether the first normal direction and the second normal direction are in the same direction. If the first normal direction and the second normal direction are different, delete the current adjacent face fk from the adjacent face set Fk and re-execute steps 2.3.1-2.3.3; if the first normal direction and the second normal direction are the same, proceed to step 2.4.
[0010] In order to better implement the present invention, further, in the step 2.2, if the extracted arbitrary part surface f does not have a parallel surface ft, the currently extracted arbitrary part surface f is deleted from the part initial surface set F, and steps 2.1 to 2.2 are re-executed.
[0011] In order to better implement the present invention, further, in step 1, the extracted B-rep data at least includes the area of the original surface of the part, the normal direction of the original surface of the part, and the adjacency relationship between the original surfaces of the part.
[0012] In order to better implement the present invention, further, in step 1, if there is no parallel plane in the current part, the current part is directly determined to be a non-flat part.
[0013] In order to better implement the present invention, further, in step 4, a reference coordinate system O-XYZ is established, and the AABB bounding box algorithm is used to calculate the minimum directional dimensions of the current part in the three directions of the X axis, Y axis, and Z axis, which are respectively recorded as: X 、r Y 、r Z , the third spacing and r X 、r Y 、r Z Compare, if there is a third distance equal to r X 、r Y 、r Z If any one of the following is found, the current part is determined to be a flat part.
[0014] Compared with the prior art, the present invention has the following advantages and beneficial effects: The present invention combines geometric feature extraction, graph theory methods and depth-first search algorithms to provide an efficient and accurate automatic identification solution for flat-plate parts. It can be applied to flat plate identification in complex polyhedral parts and shows good efficiency when processing large-scale parts libraries. It is particularly suitable for automated detection and classification tasks in the field of industrial manufacturing. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Figure 1 It is a schematic diagram of the process steps of the present invention; Figure 2 It is a schematic diagram of a flat plate part; Figure 3 This is a schematic diagram of the first type of non-flat parts; Figure 4 This is a schematic diagram of the second type of non-flat parts. DETAILED DESCRIPTION
[0016] Example 1: This embodiment provides a rapid identification method for flat-plate parts based on splicing of equal-thickness surfaces. The method extracts the B-rep data of the part, and determines whether there are parallel planes in the current part based on the B-rep data. For parts with parallel planes, a depth-first search algorithm is used to splice the equal-thickness surfaces in the part to obtain a splicing surface. The area of the splicing surface and the area of the original surface of the part are calculated, and the maximum surface thickness corresponding to the surface with the largest area is screened. The AABB bounding box algorithm is used to calculate the minimum directional dimension of the bounding box of the current part in the directions of the three coordinate axes, and the maximum surface thickness is compared with the directional dimension. If the maximum surface thickness is equal to the minimum directional dimension, the current part is determined to be a flat-plate part.
[0017] like Figure 1 As shown, the specific steps include: Step 1: Extract the B-rep data of the part and determine whether there are parallel planes in the current part based on the B-rep data; Step 2: For parts with parallel planes, extract a set of original part faces, extract any part face from the set of original part faces, find a parallel face of any part face, find an adjacent face of any part face, extract a first distance between any part face and the parallel face, extract a second distance between the adjacent face and the parallel face, and determine whether any part face and the adjacent face constitute a splicing face based on the relationship between the first distance and the second distance; Step 3: Create a face set of the original face and the spliced face of the part, sort the original face and the spliced face in the face set based on their area, and extract the face with the largest area; calculate the third distance between the face with the largest area and its corresponding parallel face; Step 4: Calculate the minimum directional dimension of the bounding box of the current part in the directions of the three coordinate axes, and compare the minimum directional dimension with the third spacing. If the third spacing is equal to the minimum directional dimension, the current part is determined to be a flat part.
[0018] The step 2 specifically includes: Step 2.1, extract the original face set F of the part, use the depth-first search algorithm to traverse the original face set F, and extract any part face f in the original face set F; Step 2.2: Perform reverse projection based on the normal direction of the arbitrary part surface f to find a parallel surface ft that is parallel to the arbitrary part surface f. If a parallel surface ft exists for the extracted arbitrary part surface f, proceed to step 2.3. Step 2.3: Extract the adjacent surface fk of any part surface f. If the extracted arbitrary part surface f does not have an adjacent surface fk, proceed directly to step 3. If the extracted arbitrary part surface f has an adjacent surface fk, determine whether the normal direction of the extracted arbitrary part surface f is in the same direction as the normal direction of the adjacent surface fk. If not, proceed to step 3; if so, proceed to step 2.4. Step 2.4: Calculate the first distance d1 between the extracted arbitrary part surface f and the parallel surface ft, calculate the second distance d2 between the adjacent surface fk and the parallel surface ft, and based on the quantitative relationship between the first distance d1 and the second distance d2, determine whether the arbitrary part surface f and the adjacent surface fk can form a splicing surface fp.
[0019] In step 1, the extracted B-rep data at least includes the area of the original surface of the part, the normal direction of the original surface of the part, and the adjacency relationship between the original surfaces of the part.
[0020] In step 1, if there is no parallel plane in the current part, the current part is directly determined to be a non-flat part.
[0021] In step 2.2, if the extracted arbitrary part face f does not have a parallel face ft, the currently extracted arbitrary part face f is deleted from the part initial face set F, and steps 2.1 to 2.2 are executed again.
[0022] The step 2.3 specifically includes: Step 2.3.1. For any part face f that has an adjacent face fk, establish an adjacent face set Fk of any part face f, and extract the first boundary line of any part face f and the second boundary line of the adjacent face fk; Step 2.3.2, extract the first sampling point and the second sampling point on the first boundary line and the second boundary line respectively, calculate the first normal direction passing through the first sampling point based on the arbitrary part surface f, and calculate the second normal direction passing through the second sampling point based on the adjacent surface fk; Step 2.3.3: Determine whether the first normal direction and the second normal direction are the same. If the first normal direction and the second normal direction are different, delete the current adjacent face fk from the set of adjacent faces Fk, and re - execute Steps 2.3.1 - Step 2.3.3; if the first normal direction and the second normal direction are the same, proceed to Step 2.4.
[0023] The quantitative relationship between the first spacing d1 and the second spacing d2 in Step 2.4 is as follows: If |d1 - d2| / d1 < , then it is determined that any part face f and the adjacent face fk can form a splicing face fp; if |d1 - d2| / d1 ≥ , then it is determined that any part face f and the adjacent face fk cannot form a splicing face fp; Where: d1 represents the first spacing; d2 represents the second spacing; represents the calibration value.
[0024] In Step 4, a reference coordinate system O - XYZ is established, and the AABB bounding box algorithm is used to calculate the minimum directional dimensions of the current part in the three directions of the X - axis, Y - axis, and Z - axis, which are respectively denoted as: r X 、r Y 、r Z , compare the third spacing with r X 、r Y 、r Z . If there is a third spacing equal to r X 、r Y 、r Z among them, then it is determined that the current part is a flat - plate part.
[0025] Example 2: This example discloses a fast recognition method for flat - plate parts based on isopachous surface splicing, which is further optimized on the basis of Example 1. Specifically: Analyze the B - Rep data of the part, extract the area of each original part face in the part, the normal direction of the original part face, and the adjacency relationship between the original part faces. That is, establish a face adjacency graph G=(F, E), where F = {f1, f2,... f n}, F represents the set of original part faces, and f1 - f n represents that the number of face elements is 1 - n. E = {e1, e2,... e m}, E represents the set of adjacency relationships, where e1 - e m represents that the number of line - contact elements existing between any two original part faces in the set F is 1 - m.
[0026] Traverse any two planes f i 、f j, for 1 ≤ i < j ≤ n, if there exists f i , , and f i ∥f j , then proceed to the next step; otherwise, directly determine that the current part is a non-flat part.
[0027] Use the depth-first search algorithm to splice the equal-thickness surfaces in the part. The specific steps are as follows: Initialize the set F, set the traversal path P = [], the search depth depth = 1, find the splicing surface of the original surface of the part, and form the splicing surface set S. If there is no plane in the set S, end the search; if there is a plane in the set S, randomly select an arbitrary part surface f from the plane F, and initialize the splicing surface set of the arbitrary part surface f as S f = {f}, and record P[depth] = f.
[0028] Project according to the opposite direction of the normal direction of the arbitrary part surface f to find whether there is a parallel surface ft parallel to the arbitrary part surface f. If there is a parallel surface ft, calculate the first distance d1 between the arbitrary part surface f and its corresponding parallel surface f. If there is no parallel surface ft, delete the currently selected arbitrary part surface f from the set F.
[0029] Obtain the adjacent surface fk of the arbitrary part surface f, denoted as {fk丨e(f, fk) = 1, fk F}, where e(f, fk) = 1 means that there is at least one line contact element between the arbitrary part surface f and the adjacent surface fk. If there is no adjacent surface fk, directly add the current arbitrary part surface f to the surface set in step 3; if there is an adjacent surface fk adjacent to the arbitrary part surface f, select the un-traversed adjacent surface fk adjacent to the arbitrary part surface f, extract the first boundary line of the arbitrary part surface f, extract the second boundary line of the adjacent surface fk, and select the first sampling point and the second sampling point on the first boundary line and the second boundary line respectively. Calculate the first normal direction α passing through the first sampling point based on the arbitrary part surface f, and calculate the second normal direction β passing through the second sampling point based on the adjacent surface fk.
[0030] If α = β, it indicates that the currently selected arbitrary part surface f and its adjacent surface fk may be spliced to form a splicing surface; if α ≠ β, it indicates that the currently selected arbitrary part surface f and its adjacent surface fk cannot be spliced to form a splicing surface.
[0031] Calculate the first distance d1 between the extracted arbitrary part surface f and the parallel surface ft, calculate the second distance d2 between the adjacent surface fk and the parallel surface ft, and based on the quantitative relationship between the first distance d1 and the second distance d2, judge whether the arbitrary part surface f and the adjacent surface fk can form a splicing surface fp.
[0032] The quantitative relationship between the first spacing d1 and the second spacing d2 is as follows: If |d1 - d2| / d1 < , it is determined that any part surface f and the adjacent surface fk can form a splicing surface fp. At this time, the adjacent surface fk is deleted from the set F, and f ← fk, depth ← depth + 1 are assigned. The前述 “←” symbol means assigning the object after the arrow to the object before the arrow, and does not represent a precedence relationship; after P[depth] = fk, the adjacent surface judgment is performed again; if |d1 - d2| / d1 ≥ , it is determined that any part surface f and the adjacent surface fk cannot form a splicing surface fp. Where: d1 represents the first spacing; d2 represents the second spacing; represents the calibration value.
[0033] If depth = 1, then P = [], the splicing surface set S is an empty set, and the splicing surface set S is searched again; otherwise, depth ← depth + 1, f ← P[depth], and the adjacent surface fk of any part surface f is obtained by traversing again.
[0034] Step Four: For the splicing surface set S, calculate its area: ; Where: αs represents the total area of all surfaces in the set S; α f represents the area of any part surface f; k represents the number of surfaces in the set S; f represents any part surface in the set S.
[0035] Establish the surface set of the original part surface and the splicing surface, sort the original part surface and the splicing surface in the surface set based on the area, and extract the surface with the largest area; calculate the third spacing d3 between the surface with the largest area and its corresponding parallel surface; Use the AABB bounding box algorithm to calculate the AABB bounding box of the part, and calculate the minimum directional dimensions of the bounding box in the three main directions of the X-axis, Y-axis, and Z-axis in the reference coordinate system O-XYZ, denoted as the minimum directional dimension set R = {r X 、r Y 、r Z}.
[0036] If d3 = min(R), it is determined that the current part is a flat part, for example: Such as Figure 2-Figure 4 In the three parts shown, after the above processing, the minimum directional dimensions of the AABB bounding box are 3mm, 25mm, and 38.8mm respectively, and the third spacing d3 of the three parts are 3mm, 3mm, and 4mm respectively. It is thus determined that only Figure 2 The part shown in is a flat part.
[0037] The rest of this embodiment is the same as that of embodiment 1, so it will not be described again.
[0038] The above description is only a preferred embodiment of the present invention and does not limit the present invention in any form. Any simple modification or equivalent change made to the above embodiment based on the technical essence of the present invention shall fall within the scope of protection of the present invention.
Claims
1. A method for rapid identification of flat plate parts based on splicing of equal thickness surfaces, characterized in that: Extract the B-rep data of the part, and determine whether there are parallel planes in the current part based on the B-rep data. For parts with parallel planes, use the depth-first search algorithm to splice the equal-thickness surfaces in the part to obtain the splicing surface, calculate the area of the splicing surface and the area of the original surface of the part, and select the maximum surface thickness corresponding to the surface with the largest area; use the AABB bounding box algorithm to calculate the minimum directional dimension of the bounding box of the current part in the direction of the three coordinate axes, and compare the maximum surface thickness with the directional dimension. If the maximum surface thickness is equal to the minimum directional dimension, then the current part is judged to be a flat part.
2. The method for rapid identification of flat plate parts based on splicing of equal thickness surfaces according to claim 1 is characterized in that: The following steps are involved: Step 1: Analyze and extract the B-rep data of the part, and determine whether there are parallel planes in the current part based on the B-rep data; Step 2: For parts with parallel planes, extract a set of original part faces, extract any part face from the set of original part faces, find a parallel face of any part face, find an adjacent face of any part face, extract a first distance between any part face and the parallel face, extract a second distance between the adjacent face and the parallel face, and determine whether any part face and the adjacent face constitute a splicing face based on the relationship between the first distance and the second distance; Step 3: Create a face set of the original face and the spliced face of the part, sort the original face and the spliced face in the face set based on their area, and extract the face with the largest area; calculate the third distance between the face with the largest area and its corresponding parallel face; Step 4: Calculate the minimum directional dimension of the bounding box of the current part in the directions of the three coordinate axes, and compare the minimum directional dimension with the third spacing. If the third spacing is equal to the minimum directional dimension, the current part is determined to be a flat part.
3. The method for rapid identification of flat plate parts based on splicing of equal thickness surfaces according to claim 2 is characterized in that: The step 2 specifically includes: Step 2.1, extract the original face set F of the part, use the depth-first search algorithm to traverse the original face set F, and extract any part face f in the original face set F; Step 2.2: Perform reverse projection based on the normal direction of the arbitrary part surface f to find a parallel surface ft that is parallel to the arbitrary part surface f. If a parallel surface ft exists for the extracted arbitrary part surface f, proceed to step 2.
3. Step 2.3: Extract the adjacent surface fk of any part surface f. If the extracted arbitrary part surface f does not have an adjacent surface fk, proceed directly to step 3. If the extracted arbitrary part surface f has an adjacent surface fk, determine whether the normal direction of the extracted arbitrary part surface f is in the same direction as the normal direction of the adjacent surface fk. If not, proceed to step 3; if so, proceed to step 2.
4. Step 2.4: Calculate the first distance d1 between the extracted arbitrary part surface f and the parallel surface ft, calculate the second distance d2 between the adjacent surface fk and the parallel surface ft, and based on the quantitative relationship between the first distance d1 and the second distance d2, determine whether the arbitrary part surface f and the adjacent surface fk can form a splicing surface fp.
4. The method for rapid identification of flat plate parts based on splicing of equal thickness surfaces according to claim 3 is characterized in that: The quantitative relationship between the first distance d1 and the second distance d2 in step 2.4 is as follows: If |d1 - d2| / d1 < , then it is determined that any part surface f and the adjacent surface fk can form a splicing surface fp; if |d1 - d2| / d1 ≥ , then it is determined that any part surface f and the adjacent surface fk cannot form a splicing surface fp; Wherein: d1 represents the first spacing; d2 represents the second spacing; Indicates the calibration value.
5. The method for rapid identification of flat plate parts based on splicing of equal thickness surfaces according to claim 4 is characterized in that: The step 2.3 specifically includes: Step 2.3.
1. For any part face f that has an adjacent face fk, establish an adjacent face set Fk of any part face f, and extract the first boundary line of any part face f and the second boundary line of the adjacent face fk; Step 2.3.2, extract the first sampling point and the second sampling point on the first boundary line and the second boundary line respectively, calculate the first normal direction passing through the first sampling point based on the arbitrary part surface f, and calculate the second normal direction passing through the second sampling point based on the adjacent surface fk; Step 2.3.3: Determine whether the first normal direction and the second normal direction are in the same direction. If the first normal direction and the second normal direction are different, delete the current adjacent face fk from the adjacent face set Fk and re-execute steps 2.3.1-2.3.3; if the first normal direction and the second normal direction are the same, proceed to step 2.
4.
6. The method for rapid identification of flat plate parts based on splicing of equal thickness surfaces according to claim 5 is characterized in that: In step 2.2, if the extracted arbitrary part face f does not have a parallel face ft, the currently extracted arbitrary part face f is deleted from the part initial face set F, and steps 2.1 to 2.2 are executed again.
7. A method for quickly identifying flat plate parts based on splicing of equal-thickness surfaces according to any one of claims 2 to 6, characterized in that: In step 1, the extracted B-rep data at least includes the area of the original surface of the part, the normal direction of the original surface of the part, and the adjacency relationship between the original surfaces of the part.
8. The method for quickly identifying flat plate parts based on splicing of equal-thickness surfaces according to claim 7, characterized in that: In step 1, if there is no parallel plane in the current part, the current part is directly determined to be a non-flat part.
9. A method for quickly identifying flat plate parts based on splicing of equal-thickness surfaces according to any one of claims 2 to 6, characterized in that: In step 4, the reference coordinate system O-XYZ is established, and the AABB bounding box algorithm is used to calculate the minimum directional dimensions of the current part in the three directions of the X axis, Y axis, and Z axis, which are respectively recorded as: X 、r Y 、r Z , the third spacing and r X 、r Y 、r Z Compare, if there is a third distance equal to r X 、r Y 、r Z If any one of the following is found, the current part is determined to be a flat part.
Citation Information
Patent Citations
Machining feature recognition method for plate parts
CN116403207A
Aircraft part manufacturing unit identification method based on rule matching
CN120067774A
Aircraft conduit part identification method
CN120197280A