A flat plate type part rapid identification method based on equal-thickness surface splicing
By combining a method based on equal-thickness surface splicing with B-rep data and a depth-first search algorithm, the problem of low recognition efficiency of flat 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
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-14
- Publication Date
- 2025-10-17
- Estimated Expiration
- 2045-07-14
AI Technical Summary
Existing methods for identifying flat parts are inefficient and lack accuracy, making it difficult to meet the needs of efficient and accurate automatic identification in industrial design and manufacturing.
A method based on equal-thickness surface splicing is adopted, combined with B-rep data, depth-first search algorithm and AABB bounding box algorithm. By judging parallel planes, splicing surface area and bounding box size, flat parts can be quickly identified.
It provides an efficient and accurate automatic identification solution suitable for batch analysis of large-scale parts libraries, and is particularly suitable for automated inspection and classification tasks in industrial manufacturing.
Smart Images

Figure CN120448934B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application belongs to the technical field of part recognition, and particularly relates to a flat plate type part rapid recognition method based on equal-thickness surface splicing. BACKGROUND
[0002] In the field of industrial design and manufacturing, the geometric shape of a part directly affects its manufacturing and assembly process, and is a type of feature that needs to be focused on in the product process planning link, so efficient recognition of flat plate type parts is a basic problem in intelligent product research and development. Traditional recognition methods usually rely on manual judgment or simple keyword matching, and have problems of low efficiency and large recognition error. With the development of three-dimensional modeling technology, more and more parts are stored in digital form, and there is 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 type part recognition process, the application discloses a flat plate type part rapid recognition method based on equal-thickness surface splicing. SUMMARY
[0004] The application discloses a flat plate type part rapid recognition method based on equal-thickness surface splicing, which is suitable for efficient batch analysis and recognition of large-scale part libraries, and can efficiently and accurately recognize flat plate type parts.
[0005] The application is implemented through the following technical solutions:
[0006] A flat plate type part rapid recognition method based on equal-thickness surface splicing extracts B-rep data of a part based on a part model, judges whether there is a parallel plane in the current part based on the B-rep data, for the part with a parallel plane, splices equal-thickness surfaces in the part to obtain a spliced surface by using a depth-first search algorithm, calculates the area of the spliced surface and the area of the original surface of the part, and screens the maximum surface thickness corresponding to the largest surface; an AABB bounding box algorithm is used to calculate the minimum direction size of the bounding box of the current part in three coordinate axis directions, the maximum surface thickness is compared with the direction size, and if the maximum surface thickness is equal to the minimum direction size, the current part is judged to be a flat plate type part.
[0007] In order to better implement the application, further comprising the following steps:
[0008] Step 1, analyze and extract B-rep data of a part, and judge whether there is a parallel plane in the current part based on the B-rep data;
[0009] Step 2, for the part with parallel planes, extracting a part original face set, extracting an arbitrary part face from the part original face set, finding a parallel plane of the arbitrary part face, finding an adjacent face of the arbitrary part face, extracting a first distance between the arbitrary part face and the parallel plane, extracting a second distance between the adjacent face and the parallel plane, judging whether the arbitrary part face and the adjacent face constitute a splicing face based on the relationship between the first distance and the second distance;
[0010] Step 3, establishing a face set of the part original face and the splicing face, sorting the part original face and the splicing face in the face set based on area, and extracting an area maximum face; calculating a third distance between the area maximum face and its corresponding parallel plane;
[0011] Step 4, calculating the minimum direction size of the bounding box of the current part in the three coordinate axis directions, and comparing the minimum direction size with the third distance, if the third distance is equal to the minimum direction size, judging that the current part is a flat plate type part.
[0012] In order to better realize the present application, further, the step 2 specifically comprises:
[0013] Step 2.1, extracting a part original face set F, and traversing and searching the original face set F by using a depth first search algorithm to extract an arbitrary part face f in the original face set F;
[0014] Step 2.2, performing reverse projection according to the normal direction of the arbitrary part face f to find a parallel plane ft parallel to the arbitrary part face f, if the extracted arbitrary part face f has the parallel plane ft, then entering step 2.3;
[0015] Step 2.3, extracting an adjacent face fk of the arbitrary part face f, if the extracted arbitrary part face f has no adjacent face fk, then directly entering step 3; if the extracted arbitrary part face f has the adjacent face fk, then judging whether the normal direction of the extracted arbitrary part face f and the normal direction of the adjacent face fk are in the same direction, if not, then entering step 3, if yes, then entering step 2.4;
[0016] Step 2.4, calculating a first distance d1 between the extracted arbitrary part face f and the parallel plane ft, calculating a second distance d2 between the adjacent face fk and the parallel plane ft, judging whether the arbitrary part face f and the adjacent face fk can constitute a splicing face fp based on the quantitative relationship between the first distance d1 and the second distance d2.
[0017] In order to better realize the present application, further, the quantitative relationship between the first distance d1 and the second distance d2 in the step 2.4 is as follows:
[0018] If |d1-d2| / d1 < 0.1, then the arbitrary part face f and the adjacent face fk can constitute the splicing face fp. If |d1-d2| / |d1≥ If |d1-d2| / |d1≥
[0019] Wherein, d1 represents the first distance; d2 represents the second distance. The calibration value is represented.
[0020] In order to better realize the present application, further, the step 2.3 specifically comprises:
[0021] Step 2.3.1, for any part surface f with the adjacent surface fk, establishing the adjacent surface set Fk of any part surface f, extracting the first boundary line of any part surface f and the second boundary line of the adjacent surface fk;
[0022] Step 2.3.2, extracting the first sampling point and the second sampling point on the first boundary line and the second boundary line respectively, calculating the first normal direction through the first sampling point based on any part surface f, and calculating the second normal direction through the second sampling point based on the adjacent surface fk;
[0023] Step 2.3.3, judging 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, deleting the current adjacent surface fk from the adjacent surface set Fk, and re-executing the step 2.3.1-2.3.3; if the first normal direction and the second normal direction are the same, turning to step 2.4.
[0024] In order to better realize the present application, further, in the step 2.2, if the extracted any part surface f does not exist parallel surface ft, deleting the current extracted any part surface f from the part initial surface set F, and re-executing the step 2.1-2.2.
[0025] In order to better realize the present application, further, in the step 1, the extracted B-rep data at least comprises the area of the part original surface, the normal direction of the part original surface, and the adjacent relationship between the part original surfaces.
[0026] In order to better realize the present application, further, in the step 1, if there is no parallel plane in the current part, directly identifying the current part as a non-flat plate type part.
[0027] In order to better realize the present application, further, in the step 4, establishing the reference coordinate system O-XYZ, and calculating the minimum direction size of the current part in the X axis, Y axis and Z axis directions by using the AABB bounding box algorithm, and respectively denoted as: r X , r Y , r Z The third distance is compared with rX 、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.
[0028] Compared with the prior art, the present invention has the following advantages and beneficial effects:
[0029] 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
[0030] Figure 1 It is a schematic diagram of the process steps of the present invention;
[0031] Figure 2 It is a schematic diagram of a flat plate part;
[0032] Figure 3 This is a schematic diagram of the first type of non-flat parts;
[0033] Figure 4 This is a schematic diagram of the second type of non-flat parts. DETAILED DESCRIPTION
[0034] Example 1:
[0035] 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.
[0036] like Figure 1 As shown, the specific steps include:
[0037] 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;
[0038] Step 2, for the part with parallel planes, extracting the original face set of the part, extracting any part face from the original face set of the part, finding the parallel plane of any part face, finding the adjacent face of any part face, extracting the first distance between any part face and the parallel plane, extracting the second distance between the adjacent face and the parallel plane, judging whether any part face and the adjacent face constitute a splicing face based on the relationship between the first distance and the second distance;
[0039] Step 3, establishing a face set of the original face of the part and the splicing face, sorting the original face of the part and the splicing face in the face set based on the area, and extracting the largest area face; calculating the third distance between the largest area face and its corresponding parallel plane;
[0040] Step 4, calculating the minimum direction size of the bounding box of the current part in the three coordinate axis directions, and comparing the minimum direction size with the third distance, if the third distance is equal to the minimum direction size, then judging that the current part is a flat plate type part.
[0041] The step 2 specifically comprises:
[0042] Step 2.1, extracting the original face set F of the part, using a depth-first search algorithm to traverse and search the original face set F, and extracting any part face f in the original face set F;
[0043] Step 2.2, according to the normal direction of any part face f, performing reverse projection to find a parallel plane ft parallel to any part face f, if any part face f exists, then turning to step 2.3;
[0044] Step 2.3, extracting the adjacent face fk of any part face f, if any part face f does not exist, then directly turning to step 3; if any part face f exists, then judging whether the normal direction of any part face f and the normal direction of the adjacent face fk are in the same direction, if not, then turning to step 3, if yes, then turning to step 2.4;
[0045] Step 2.4, calculating the first distance d1 between any part face f and the parallel plane ft, calculating the second distance d2 between the adjacent face fk and the parallel plane ft, and judging whether any part face f and the adjacent face fk can constitute a splicing face fp based on the quantitative relationship between the first distance d1 and the second distance d2.
[0046] In the step 1, the extracted B-rep data at least includes the area of the original face of the part, the normal direction of the original face of the part, and the adjacent relationship between the original faces of the part.
[0047] In the step 1, if there is no parallel plane in the current part, then directly identifying the current part as a non-flat plate type part.
[0048] In step 2.2, if the extracted arbitrary part surface f does not exist parallel surface ft, the current extracted arbitrary part surface f is deleted from the part initial surface set F, and steps 2.1-2.2 are re-executed.
[0049] The step 2.3 specifically comprises:
[0050] Step 2.3.1, for any part surface f existing adjacent surface fk, an adjacent surface set Fk of the arbitrary part surface f is established, and a first boundary line of the arbitrary part surface f and a second boundary line of the adjacent surface fk are extracted;
[0051] Step 2.3.2, first sampling points and second sampling points are extracted on the first boundary line and the second boundary line respectively, a first normal direction passing through the first sampling points is calculated based on the arbitrary part surface f, and a second normal direction passing through the second sampling points is calculated based on the adjacent surface fk;
[0052] Step 2.3.3, it is judged 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, the current adjacent surface fk is deleted from the adjacent surface set Fk, and steps 2.3.1-2.3.3 are re-executed; if the first normal direction and the second normal direction are the same, step 2.4 is entered.
[0053] The quantity relationship between the first interval d1 and the second interval d2 in the step 2.4 is as follows:
[0054] If |d1-d2| / d1 < 0.1, it is judged that the arbitrary part surface f and the adjacent surface fk can constitute a splicing surface fp; if |d1-d2| / d1≥ 0.1, then it is judged that the arbitrary part surface f and the adjacent surface fk cannot constitute a splicing surface fp.
[0055] Wherein: d1 represents the first interval; d2 represents the second interval; represents a calibration value.
[0056] In the step 4, a reference coordinate system O-XYZ is established, and an AABB bounding box algorithm is used to calculate the minimum directional size of the current part in the X axis, Y axis and Z axis directions, which are respectively denoted as: r X , r Y , r Z A third interval is compared with r X , r Y , r Z If there is any one of the third interval equal to r X , r Y , r Z , it is judged that the current part is a flat plate type part.
[0057] Example 2:
[0058] This embodiment discloses a method for quickly identifying flat plate parts based on splicing of equal-thickness surfaces, which is further optimized based on the first embodiment. Specifically,
[0059] Analyze the B-Rep data of the part, extract the area of each original face of the part, the normal direction of the original face of the part, and the adjacency relationship between the original faces of the part. That is, establish a face adjacency graph G = (F, E), where F = {f1, f2, ... f n}, F represents the set of original faces of the part, f1-f n Indicates that the number of face elements is 1-n. E={e1, e2, ...e m}, E represents the adjacency relationship set, where e1-e m It indicates that the number of line contact elements between any two original surfaces of parts in the set F is 1-m.
[0060] Traverse any two planes f in the face set F i 、f j , 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.
[0061] The depth-first search algorithm is used to splice the equal-thickness surfaces in the parts. The specific steps are as follows:
[0062] Initialize the set F, set the traversal path P = [], search depth depth = 1, find the splicing surface of the original part surface, and form the splicing surface set S. If there is no plane in the set S, the search ends; 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 any part surface f to S f ={f}, and record P[depth]=f.
[0063] Project the normal direction of any part face f in the opposite direction to determine whether a parallel face ft exists. If a parallel face ft exists, calculate the first distance d1 between any part face f and its corresponding parallel face f. If a parallel face ft does not exist, remove the currently selected part face f from the set F.
[0064] Get the adjacent surface fk of any part surface f, recorded as {fk丨e(f,fk)=1,fk F}, where e(f, fk) = 1 indicates that there is at least one line contact element between any part face f and its adjacent face fk. If no adjacent face fk exists, the current part face f is directly added to the face set in step 3. If an adjacent face fk exists, select an untraversed adjacent face fk that is adjacent to any part face f, extract the first boundary line of any part face f, extract the second boundary line of the adjacent face fk, and select the first and second sampling points on the first and second boundary lines, respectively. Calculate the first normal direction α passing through the first sampling point based on any part face f, and calculate the second normal direction β passing through the second sampling point based on the adjacent face fk.
[0065] If α=β, it means that the currently selected arbitrary part face f and its adjacent face fk can be spliced to form a splicing surface; if α≠β, it means that the currently selected arbitrary part face f and its adjacent face fk cannot be spliced to form a splicing surface.
[0066] 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.
[0067] The quantitative relationship between the first distance d1 and the second distance d2 is as follows:
[0068] If 丨d1-d2丨 / d1< , then it is determined that any part face f and the adjacent face fk can form a splicing face fp. At this time, the adjacent face fk is deleted from the set F and assigned f←fk, depth←depth+1. The aforementioned "←" symbol indicates that the object behind the arrow is assigned to the object in front of the arrow, and does not indicate a priority relationship. After P[depth]=fk, the adjacent face judgment is repeated. If 丨d1-d2丨 / d1≥ , then 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; Indicates the calibration value.
[0069] If depth=1, then P=[], the splicing face set S is an empty set, and the splicing face set S is searched again; otherwise, set depth←depth+1, f←P[depth], and re-traverse to obtain the adjacent face fk of any part face f.
[0070] Step 4: For the splicing surface set S, calculate its area:
[0071] ;
[0072] Wherein: αs represents the total area of all faces in the set S; α f represents the area of any part face f; k represents the number of faces in the set S; f represents any part face in the set S.
[0073] The face set of the part original face and the spliced face is established, the part original face and the spliced face in the face set are sorted based on the area, and the largest area face is extracted; the third distance d3 between the largest area face and its corresponding parallel face is calculated;
[0074] The AABB bounding box algorithm is used to calculate the AABB bounding box of the part, and the minimum directional size of the bounding box in the three main directions of the reference coordinate system O-XYZ is calculated, which is recorded as the minimum directional size set R={r X , r Y , r Z}.
[0075] If d3=min(R), it is judged that the current part is a flat part, for example:
[0076] As shown in the three parts in Figures 2-4 , the minimum directional size of the AABB bounding box after the above processing is 3mm, 25mm and 38.8mm respectively, and the third distance d3 of the three parts is 3mm, 3mm and 4mm respectively, so it is judged that only the part shown in Figure 2 is a flat part.
[0077] The other parts of the embodiment are the same as those of embodiment 1, and thus will not be described again.
[0078] The above is only a preferred embodiment of the present application, and does not limit the present application in any form. Any simple modification or equivalent change made according to the technical essence of the present application to the above embodiment falls within the protection scope of the present application.
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 based on the B-rep data, determine whether there are parallel planes in the current part. 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 directions of the three coordinate axes, compare the maximum surface thickness with the directional dimension, and if the maximum surface thickness is equal to the minimum directional dimension, determine that the current part is a flat part; 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.
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 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.
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 quantitative relationship between the first distance d1 and the second distance d2 in step 2.4 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; if |d1 - d2| / d1 ≥ , 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.
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 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.
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: 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.
6. A method for quickly identifying flat plate parts based on splicing of equal-thickness surfaces according to any one of claims 1 to 5, 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.
7. The method for rapid identification of flat plate parts based on splicing of equal thickness surfaces according to claim 6, 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.
8. A method for rapid identification of flat plate parts based on splicing of equal-thickness surfaces according to any one of claims 1 to 5, 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 conduit part identification method
CN120197280A