Linear weld identification method and device
By conducting local photography and structural analysis of the detected workpiece, the local point cloud and structure list of the workpiece are constructed and updated, the recognition problem of point clouds relying on the workpiece model in the prior art is solved, and linear weld recognition is achieved without a pre-model.
Patent Information
- Application Number
- CN202411621006.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-14
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2044-11-14
AI Technical Summary
The existing linear weld recognition technology highly relies on the existence of workpiece model point clouds, and cannot identify linear welds when the workpiece point cloud model does not exist.
By taking local photos of the detected workpiece, the number of times the local photos is determined, and based on the structure search algorithm and the structure merging algorithm, the local point cloud and structure list of the workpiece are constructed and updated until the preset number is reached, the latest structure list is obtained, and the linear weld is identified based on this.
When the workpiece point cloud model does not exist, linear welds can be effectively identified to achieve weld recognition without a pre-model.
Smart Images

Figure CN119131037B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of weld seam recognition, and in particular to a linear weld seam recognition method and device. Background Art
[0002] The existing point cloud-based straight weld recognition technology requires weld recognition based on the existing workpiece model point cloud. The general weld recognition process is as follows: the workpiece model point cloud (point cloud P, located in the workpiece model coordinate system) is registered with the collected workpiece point cloud (point cloud Q, located in the robot base coordinate system) to obtain the rotation matrix from the workpiece model coordinate system to the robot base coordinate system. R and translation vectors T The starting point and end point of the linear weld selected on the workpiece model are transferred to the robot base coordinate system, and the converted points are adjusted using the local point adjustment algorithm to obtain the adjusted points, which can be considered as the result of weld recognition.
[0003] It can be seen from the above weld recognition process that the existing straight weld recognition algorithm is highly dependent on the existence of the workpiece model point cloud. Its dependence is mainly manifested in two aspects: 1. The workpiece model point cloud and the collected workpiece point cloud need to be registered to obtain the conversion relationship between the two coordinate systems. 2. The starting point and end point of the straight weld need to be selected in advance on the workpiece model, and then the selected weld starting point and end point are converted. If the workpiece model point cloud does not exist, the above registration and point selection from the model cannot be performed, and the existing weld recognition algorithm will not be able to recognize the weld. Summary of the invention
[0004] The object of the present invention is to provide a linear weld recognition method and device, which can realize the recognition of linear welds when a workpiece point cloud model does not exist.
[0005] In order to achieve the above purpose, the technical solution adopted in the embodiment of the present application is as follows:
[0006] In a first aspect, an embodiment of the present application provides a linear weld recognition method, the method comprising:
[0007] Take partial photos of the workpiece to be inspected and determine the number of partial photos;
[0008] For each partial photo, determine the local point cloud of the workpiece to be inspected;
[0009] Determine each first structure in the local point cloud and the concavity and convexity of each first structure based on a structure search algorithm;
[0010] Determine the existing structure list of the workpiece to be inspected;
[0011] Based on the structure merging algorithm, the number of local photos taken, and the concavity and convexity of each of the first structures, each of the first structures is merged into the existing structure list to obtain an updated structure list, wherein the updated structure list includes the number of votes for each structure;
[0012] Returning to the step of determining the local point cloud of the workpiece to be inspected for each local photographing to the step of merging each of the first structures into the existing structure list to obtain an updated structure list based on the structure merging algorithm and the concavity and convexity of each of the first structures, until the number of the local photographing reaches a preset number, and the latest structure list is obtained;
[0013] Acquire, from the latest structure list, first target structures in which the number of votes is greater than a preset number and parameter information of each of the first target structures;
[0014] Linear weld identification is performed based on each of the parameter information.
[0015] Optionally, the step of determining each first structure in the local point cloud and the concavity and convexity of each first structure based on a structure search algorithm comprises:
[0016] Detecting each plane in the local point cloud;
[0017] Based on each of the planes, construct a two-tuple list and a three-tuple list, wherein the two-tuple list includes at least one first structure composed of two planes and the concavity and convexity corresponding to the first structure, and the three-tuple list includes at least one first structure composed of three planes and the concavity and convexity corresponding to the first structure;
[0018] Based on the bigram list and the triplet list, a bigram-only list is determined.
[0019] Optionally, the step of constructing a list of two-tuples and a list of three-tuples based on each of the planes includes:
[0020] Get a plane detection list based on each plane;
[0021] Determine whether plane i and plane j have an intersection, wherein variable i is used to traverse each plane in the plane detection list from 0 to n, and variable j is used to traverse each plane in the plane detection list from i+1 to n, where n is the number of planes in the plane detection list;
[0022] If the plane i and the plane j have an intersection line, the plane i and the plane j form a tuple, and the tuple is recorded in a tuple list;
[0023] Determine whether the plane i and the plane k have an intersection, wherein the variable k is used to traverse each plane in the plane detection list from j+1 to n;
[0024] If the plane i and the plane k have an intersection line, the plane i and the plane k form a tuple, and the tuple is recorded in the tuple list;
[0025] Determine whether the plane j and the plane k have an intersection line;
[0026] When there is an intersection line between the plane j and the plane k, the plane j and the plane k form a tuple, and the tuple is recorded in the tuple list;
[0027] Determine whether there is an intersection line between the plane i and the plane j, whether there is an intersection line between the plane i and the plane k, and whether there is an intersection line between the plane j and the plane k;
[0028] In the case where the plane i and the plane j have an intersection line, the plane i and the plane k have an intersection line, and the plane j and the plane k have an intersection line, the plane i, the plane j, and the plane k form a triplet, and the triplet is recorded in the triplet list;
[0029] Determine the coordinates of the optical center of the camera when taking local photos;
[0030] Based on the camera optical center coordinates, the convexity and concavity of each first structure in the binary list and the convexity and concavity of each first structure in the triple list are determined.
[0031] Optionally, the step of determining only the two-tuple list based on the two-tuple list and the three-tuple list includes:
[0032] Determine whether triple j contains bigram i, wherein the bigram list is traversed using variable i, and the triple list is traversed using variable j;
[0033] If the triple j does not include the bigram i, the bigram i is determined to be a only bigram, and the only bigram is added to the only bigram list.
[0034] Optionally, the step of merging each of the first structures into the existing structure list to obtain an updated structure list based on a structure merging algorithm, the number of local photographing times, and the concavity and convexity of each of the first structures includes:
[0035] When the number of local photographing is zero, each of the first structures is added to the existing structure list to obtain an updated structure list, and the number of votes for the newly added first structure in the updated structure list is assigned a value of 1.
[0036] Optionally, the step of merging each of the first structures into the existing structure list to obtain an updated structure list based on a structure merging algorithm, the number of local photographs, and the concavity of each of the first structures, and updating the number of votes for each structure in the updated structure list includes:
[0037] When the number of local photographing is not zero, determining a new triple list according to the triple list and the target triple list in the existing structure list, wherein the existing structure list includes the target triple list;
[0038] Updating the existing structure list based on the triple list and the target triple list;
[0039] updating the existing structure list based on the new triple list and the target only bigram list in the existing structure list, wherein the existing structure list includes the target only bigram list;
[0040] Obtaining a temporary list of only two-tuples based on the list of only two-tuples and the target list of three-tuples;
[0041] updating the existing structure list based on the two-tuple list and the target triplet list;
[0042] The existing structure list is updated based on the temporary two-tuple-only list and the target two-tuple-only list.
[0043] Optionally, the step of updating the existing structure list based on the triple list and the target triple list includes:
[0044] Determine whether triple a and target triple b have three common two-sided structures and the two-sided structures have the same concavity and convexity, wherein the triple list is traversed using variable a and the target triple list is traversed using variable b;
[0045] If yes, the triple a is merged into the existing structure list to obtain an updated structure list, and the number of votes for the target triple b in the updated structure list is updated;
[0046] If not, determine whether the triple a and the target triple b have a common two-sided structure and the two-sided structure has the same concavity and convexity;
[0047] In the case where the triple a and the target triple b have a common two-sided structure and the two-sided structures have the same concavity and convexity, determining a list of associated structures corresponding to the target triple b;
[0048] Determine whether there is a second target structure in the associated structure list that has three common two-face structures with the triple a and has the same two-face structure concavity and convexity;
[0049] If there is a second target structure in the associated structure list that has three common two-sided structures with the triple a and the two-sided structures have the same concavity and convexity, determine the target number of the second target structure in the existing triple list;
[0050] Merging the triple a into the existing structure list to obtain an updated structure list;
[0051] If there is no second target structure in the associated structure list that has three common dihedral structures or dihedral structures with different concavity and convexity as the triple a, adding the triple a to the existing structure list to obtain an updated structure list;
[0052] In the case that the triple a and the target triple b do not have a common two-sided structure, the triple a is added to the existing structure list to obtain an updated structure list.
[0053] Optionally, the step of updating the existing structure list based on the new triple list and the target two-tuple list in the existing structure list comprises:
[0054] Determine whether the new triple i and the target only two-tuple j have a common two-sided structure and the two-sided structure has the same convexity and concavity, wherein the variable i is used to traverse each new triple in the new triple list, and the variable j is used to traverse the target only two-tuple in the target only two-tuple list;
[0055] When the new triplet i and the target binary j have a common two-sided structure and the two-sided structures have the same concavity and convexity, the intersection line of the new triplet i is updated based on the intersection line of the target binary.
[0056] Optionally, the step of obtaining a temporary list of only two-tuples based on the list of only two-tuples and the target list of three-tuples comprises:
[0057] Determine whether the only two-tuple i and the target triple j have a common two-sided structure and the two-sided structure has the same concavity and convexity, wherein the variable i is used to traverse each only two-tuple in the only two-tuple list, and the variable j is used to traverse each target triple in the target triple list;
[0058] When the two-tuple i and the target triple j have a common two-surface structure and the two-surface structures have the same concavity and convexity, updating the intersection line of the target triple j based on the intersection line of the two-tuple i;
[0059] If only two-tuple i and target triple j do not have a common two-sided structure, then only two-tuple i is added to the temporary list of only two-tuples.
[0060] In a second aspect, an embodiment of the present application provides a linear weld recognition device, the device comprising: a determination module, used to take a partial photo of a workpiece to be detected, and determine the number of partial photos; for each partial photo, determine a local point cloud of the workpiece to be detected; determine each first structure in the local point cloud and the concavity and convexity of each first structure based on a structure search algorithm; determine a list of existing structures of the workpiece to be detected;
[0061] An updating module, configured to merge each of the first structures into the existing structure list to obtain an updated structure list based on a structure merging algorithm, the number of local photographs, and the concavity of each of the first structures, wherein the updated structure list includes the number of votes for each structure;
[0062] Returning to the execution module, used for returning to the step of determining the local point cloud of the workpiece to be inspected for each local photographing to the step of merging each of the first structures into the existing structure list to obtain an updated structure list based on the structure merging algorithm and the concavity and convexity of each of the first structures, until the number of the local photographing reaches a preset number, and the latest structure list is obtained;
[0063] An acquisition module, configured to acquire, from the latest structure list, first target structures having a number of votes greater than a preset number and parameter information of each of the first target structures;
[0064] The identification module is used to identify the straight weld based on the parameter information.
[0065] In a third aspect, an embodiment of the present application provides an electronic device, including a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the linear weld identification method when executing the computer program.
[0066] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, which implements the steps of the linear weld identification method when executed by a processor.
[0067] This application has the following beneficial effects:
[0068] The present application takes a local photo of the workpiece to be inspected, and determines the number of local photos. For each local photo, the local point cloud of the workpiece to be inspected is determined, and each first structure and the concavity of each first structure in the local point cloud are determined based on a structure search algorithm, and the existing structure list of the workpiece to be inspected is determined. Based on the structure merging algorithm, the number of local photos and the concavity of each first structure, each first structure is merged into the existing structure list to obtain an updated structure list, wherein the updated structure list includes the number of votes for each structure, and returns to the step of determining the local point cloud of the workpiece to be inspected for each local photo to the step of merging each first structure into the existing structure list to obtain an updated structure list based on the structure merging algorithm and the concavity of each first structure, until the number of local photos reaches a preset number, the latest structure list is obtained, and the first target structure with a voting number greater than the preset number and the parameter information of each first target structure are obtained from the latest structure list, and the linear weld is identified based on the parameter information. In the process of successively photographing the workpiece to be inspected, the linear weld is constructed by performing structural detection and voting, and the linear weld identification result is obtained from the construction result, so as to realize the identification of the linear weld when the workpiece point cloud model does not exist. BRIEF DESCRIPTION OF THE DRAWINGS
[0069] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.
[0070] Figure 1 A block diagram of an electronic device provided by an embodiment of the present invention;
[0071] Figure 2 One of the flow charts of a linear weld identification method provided by an embodiment of the present invention;
[0072] Figure 3 A second flow chart of a linear weld identification method provided by an embodiment of the present invention;
[0073] Figure 4 A schematic diagram of plane cutting provided by an embodiment of the present invention;
[0074] Figure 5 A third flow chart of a linear weld identification method provided by an embodiment of the present invention;
[0075] Figure 6 A schematic diagram of two three-sided structures sharing one intersection line provided in an embodiment of the present invention;
[0076] Figure 7 A fourth flow chart of a linear weld identification method provided by an embodiment of the present invention;
[0077] Figure 8 A fifth flow chart of a linear weld identification method provided by an embodiment of the present invention;
[0078] Fig. 9 A schematic structural diagram of a linear weld identification device provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0079] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Generally, the components of the embodiments of the present invention described and shown in the drawings here can be arranged and designed in various different configurations.
[0080] Therefore, the following detailed description of the embodiments of the present invention provided in the accompanying drawings is not intended to limit the scope of the invention claimed for protection, but merely represents selected embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0081] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, further definition and explanation thereof is not required in subsequent drawings.
[0082] In the description of the present invention, it should be noted that if the terms "upper", "lower", "inside", "outside", etc. appear to indicate an orientation or position relationship, they are based on the orientation or position relationship shown in the accompanying drawings, or are the orientation or position relationship in which the product of the invention is usually placed when used. They are only for the convenience of describing the present invention and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation on the present invention.
[0083] In addition, the terms “first”, “second”, etc., if used, are merely used to distinguish between the descriptions and should not be understood as indicating or implying relative importance.
[0084] In the description of this application, it should also be noted that, unless otherwise clearly specified and limited, the terms "set", "install", "connect", and "connect" should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection, or it can be indirectly connected through an intermediate medium, or it can be the internal communication of two elements. For ordinary technicians in this field, the specific meanings of the above terms in this application can be understood according to specific circumstances.
[0085] After extensive research, the inventors found that when the workpiece model point cloud does not exist, it is impossible to identify the straight weld.
[0086] In view of the discovery of the above problems, the present embodiment provides a linear weld recognition method and device, which can take local photos of the workpiece to be detected and determine the number of local photos. For each local photo, a local point cloud of the workpiece to be detected is determined, and each first structure and the concavity and convexity of each first structure in the local point cloud are determined based on a structure search algorithm. The existing structure list of the workpiece to be detected is determined, and based on a structure merging algorithm, the number of local photos and the concavity and convexity of each first structure, each first structure is merged into the existing structure list to obtain an updated structure list, wherein the updated structure list includes the number of votes for each structure, and returns to the step of determining the local point cloud of the workpiece to be detected for each local photo to the step of merging each first structure into the existing structure list to obtain an updated structure list based on the structure merging algorithm and the concavity and convexity of each first structure, until the number of local photos reaches a preset number, the latest structure list is obtained, and the first target structure with a voting number greater than the preset number and parameter information of each first target structure are obtained from the latest structure list, and linear weld recognition is performed based on each parameter information. In the process of successively photographing the workpiece to be inspected, a straight line weld is constructed by performing structural detection and voting, and a straight line weld recognition result is obtained from the construction result, so as to realize the recognition of the straight line weld when the workpiece point cloud model does not exist. The scheme provided in this embodiment is elaborated in detail below.
[0087] This embodiment provides an electronic device that can identify a straight weld. In a possible implementation, the electronic device can be a user terminal, for example, the electronic device can be, but is not limited to, a server, a smart phone, a personal computer (PC), a tablet computer, a personal digital assistant (PDA), a mobile Internet device (MID), and a weld recognition robot.
[0088] Please refer to Figure 1 , Figure 11 is a schematic diagram of the structure of the electronic device 100 provided in the embodiment of the present application. The electronic device 100 may also include Figure 1 More or fewer components as shown, or with Figure 1 Different configurations are shown. Figure 1 Each component shown in the figure can be implemented by hardware, software or a combination thereof.
[0089] The electronic device 100 includes a linear weld recognition device 110 , a memory 120 and a processor 130 .
[0090] The memory 120 and the processor 130 are electrically connected to each other directly or indirectly to achieve data transmission or interaction. For example, these components can be electrically connected to each other through one or more communication buses or signal lines. The linear weld recognition device 110 includes at least one software function module that can be stored in the memory 120 in the form of software or firmware or fixed in the operating system (OS) of the electronic device 100. The processor 130 is used to execute the executable modules stored in the memory 120, such as the software function modules and computer programs included in the linear weld recognition device 110.
[0091] The memory 120 may be, but is not limited to, a random access memory (RAM), a read only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable read-only memory (EEPROM), etc. The memory 120 is used to store a program, and the processor 130 executes the program after receiving an execution instruction.
[0092] Please refer to Figure 2 , Figure 2 For application Figure 1 A flow chart of a linear weld recognition method of an electronic device 100 is provided, and the method including each step is described in detail below.
[0093] S201: Taking partial photos of the workpiece to be inspected and determining the number of partial photos to be taken.
[0094] S202: For each partial photo-taking, a local point cloud of the workpiece to be inspected is determined.
[0095] S203: Determine each first structure in the local point cloud and the concavity and convexity of each first structure based on a structure search algorithm.
[0096] S204: Determine the existing structure list of the workpiece to be detected.
[0097] S205: Based on the structure merging algorithm, the number of local photographing times and the concavity and convexity of each first structure, each first structure is merged into the existing structure list to obtain an updated structure list.
[0098] The updated structure list includes the number of votes for each structure.
[0099] S206: Return to the step of determining the local point cloud of the workpiece to be inspected for each local photographing, and then merge each first structure into the existing structure list to obtain an updated structure list based on the structure merging algorithm and the concavity and convexity of each first structure, until the number of local photographing reaches a preset number, and the latest structure list is obtained.
[0100] S207: Acquire, from the latest structure list, first target structures having a voting number greater than a preset number and parameter information of each first target structure.
[0101] S208: Identify the straight weld based on the parameter information.
[0102] Take a partial photo of the workpiece to be inspected and record the number of partial photos. You can set the number of partial photos to 0, which means the first photo of the workpiece to be inspected, and the number of partial photos to 1, which means the second photo of the workpiece to be inspected. The camera pose when the number of partial photos is 0 is different from the camera pose when the number of partial photos is 1.
[0103] When the number of partial photos does not meet the preset number of photos, the camera position is adjusted for the next partial photo. Since there is no information about the workpiece model, there is no position information of any workpiece point cloud, so the photo here is somewhat experimental. When welding the workpiece, a placement range of the workpiece to be inspected can be delineated on the ground, and the workpiece to be inspected can be placed within the workpiece placement range. When taking photos, the robot collects the partial point cloud of the workpiece to be inspected within the workpiece placement range, that is, each time a partial photo is taken of the workpiece to be inspected, the partial point cloud of the workpiece to be inspected will be collected.
[0104] A structure search algorithm is used to determine the first structure of the local point cloud of the workpiece to be inspected collected by each local photo shooting. The first structure includes a three-sided structure and a two-sided structure. The camera optical center coordinates when collecting the local point cloud can be used to give each first structure concavity and convexity.
[0105] Based on the structure merging algorithm, the number of local photos and the concavity of each first structure, each first structure is merged into the existing structure list to obtain an updated structure list, wherein the updated structure list includes the number of votes for each structure.
[0106] The existing structure list can be obtained by indicating the number of local photos taken as the first time. In this case, the first structure detected in the local point cloud can be directly stored in the structure record to obtain the existing structure list, and each first structure in the existing structure list is given a vote number of 1.
[0107] When the number of local photos indicates that it is not the first time to take photos, the first structure detected in the local point cloud is merged into the existing structure list, and the number of votes for each structure in the existing structure list is updated to obtain an updated structure list.
[0108] Determine the local point cloud corresponding to the first local photographing, determine each first structure in the local point cloud and the concavity and convexity of each first structure based on the structure search algorithm, determine the existing structure list of the workpiece to be detected, and merge each first structure into the existing structure list based on the structure merging algorithm, the number of local photographing and the concavity and convexity of each first structure to obtain an updated structure list, i.e., the first structure list, wherein the first structure list includes the number of votes for each structure.
[0109] Determine the local point cloud corresponding to the second local photo, and determine the first structures in the local point cloud and the concavity of each first structure based on the structure search algorithm, determine the existing structure list of the workpiece to be detected, and merge each first structure into the existing structure list based on the structure merging algorithm, the number of local photos and the concavity of each first structure to obtain an updated structure list, i.e., the second structure list, wherein the second structure list includes the number of votes for each structure. Until the number of local photos reaches the preset number, the latest structure list is obtained, and the first target structure with a voting number greater than the preset number and the parameter information of each first target structure are obtained from the latest structure list, and linear weld recognition is performed based on the parameter information.
[0110] When the number of local photos reaches the preset number, it indicates that the shooting is completed, and all the first structures on the workpiece to be detected and the number of votes for each first structure have been obtained. Traverse each structure in the latest structure list, and when the number of votes for the first target structure is greater than the preset number, it indicates that the first target structure exists in the real workpiece, and the parameter information of the first target structure can be given, that is, the starting point and end point of the straight weld in the first target structure, thereby completing the straight weld identification.
[0111] There are many implementation methods for determining each first structure and the concavity and convexity of each first structure in the local point cloud based on the structure search algorithm. In one implementation method, Figure 3 As shown, the following steps are included:
[0112] S301: Detect each plane in the local point cloud.
[0113] S302: Construct a list of two-tuples and a list of three-tuples based on each plane.
[0114] The binary list includes at least one first structure composed of two planes and the concavity and convexity corresponding to the first structure, and the triple list includes at least one first structure composed of three planes and the concavity and convexity corresponding to the first structure.
[0115] S303: Determine a list of only two tuples based on the two-tuple list and the three-tuple list.
[0116] Based on each plane, constructing a list of two-tuples and a list of three-tuples can be obtained based on the following method:
[0117] Based on each plane, a plane detection list is obtained to determine whether plane i and plane j have an intersection. Variable i is used to traverse each plane in the plane detection list from 0 to n, and variable j is used to traverse each plane in the plane detection list from i+1 to n, where n is the number of planes in the plane detection list. If plane i and plane j have an intersection, plane i and plane j form a tuple, and the tuple is recorded in the tuple list. Determine whether plane i and plane k have an intersection. Variable k is used to traverse each plane in the plane detection list from j+1 to n. If plane i and plane k have an intersection, plane i and plane k form a tuple, and the tuple is recorded in the tuple list. Determine whether plane i and plane k have an intersection. Whether there is an intersection between plane i and plane k, when there is an intersection between plane j and plane k, plane j and plane k constitute a tuple, and the tuple is recorded in the tuple list, and it is determined whether there is an intersection between plane i and plane j, whether there is an intersection between plane i and plane k, and whether there is an intersection between plane j and plane k. When there is an intersection between plane i and plane j, plane i and plane k, and plane j and plane k, plane i, plane j and plane k constitute a triple, and the triple is recorded in the triple list, and the camera optical center coordinates when taking local photos are determined. Based on the camera optical center coordinates, the convexity and concavity of each first structure in the tuple list and the concavity and convexity of each first structure in the triple list are determined.
[0118] There are multiple ways to determine the convexity and concavity of each first structure in the binary list and the convexity and concavity of each first structure in the triple list based on the camera optical center coordinates. In one implementation:
[0119] When determining the convexity of each first structure in the binary list based on the camera optical center coordinates, such as Figure 4 , shows the relationship between the camera optical center coordinates and the first structure being a two-sided structure, the two-sided structure includes plane 1 and plane 2. When judging the concavity of the first structure, first use plane 1 to divide plane 2 to judge the relative position of the camera optical center coordinates in plane 1, that is, whether the camera optical center coordinates are on the left or right side of plane 1, as shown in Figure 4 As shown in , the camera optical center coordinates are on the right side of plane 1. At this time, the part of plane 2 on the right side of plane 1 is retained, and plane 1 is divided by plane 2 to determine the relative position of the camera optical center coordinates on plane 2, that is, whether the camera optical center coordinates are on the upper side or the lower side of plane 2, as shown in Figure 4 As shown in , the coordinates of the camera optical center are on the upper side of plane 2, and the portion of plane 1 located on the upper side of plane 2 is retained. After the two planes are segmented, it can be determined whether the intersection line formed by plane 1 and plane 2 in the first structure formed by plane 1 and plane 2 is convex or concave, thereby determining the concave-convexity of the first structure.
[0120] Based on the coordinates of the camera optical center, the convexity of each first structure in the triple list is determined. Exemplarily, when the triple list contains the first structure corresponding to any triple, such as (i, j, k), indicating that the first structure is composed of plane i, plane j and plane k, the convexity of the intersection line formed by plane i and plane j, the convexity of the intersection line formed by plane j and plane k, and the convexity of the intersection line formed by plane i and plane k are determined respectively, and finally the convexity corresponding to the triple (i, j, k) is obtained. The method of determining the convexity of the intersection line formed by plane i and plane j, the convexity of the intersection line formed by plane j and plane k, and the convexity of the intersection line formed by plane i and plane k is consistent with the method of determining the convexity of the intersection line formed by plane No. 1 and plane No. 2, which will not be repeated.
[0121] Based on the two-tuple list and the three-tuple list, there are multiple implementations for determining only the two-tuple list, exemplarily:
[0122] Use variable i to traverse each tuple in the tuple list, and use variable j to traverse each triple in the triple list. For the i-th tuple, determine whether it is in the j-th triple. Let the j-th 3-tuple be represented as (u, v, w). If (u, v) or (u, w) or (v, w) is the same as the label in the tuple, then the triple contains the tuple. If it is determined that the j-th triple contains the i-th tuple, the mark of the current tuple is set to 1. The mark of 1 indicates that the current tuple is not a two-tuple only, and the mark of 0 indicates that the current tuple is a two-tuple only. The meaning of two-tuple only is that the tuple has not appeared in any triple. After the above i, j traversal is completed, it can be obtained whether each tuple is a two-tuple only. Use variable i to traverse each tuple in the tuple list, and determine whether the mark of the i-th tuple is 0. If so, use the camera optical center coordinates to cut the two planes, determine the convexity of the tuple, and store the tuple in a list of only tuples.
[0123] Based on the structure search algorithm, all three-sided structures and their concavity and convexity in the current local point cloud can be obtained. The three-sided structure is a structure in which there are intersection lines between the three faces. The three-sided structure and its concavity and convexity exist in the triple list. At the same time, all the two-sided structures and their concavity and convexity in the current local point cloud can also be obtained. The two-sided structure is a structure in which there is an intersection line between the two faces, but this two-sided structure does not belong to any three-sided structure. The two-sided structure and its concavity and convexity exist in the two-sided list.
[0124] There are multiple implementations of merging each first structure into the existing structure list to obtain an updated structure list based on the structure merging algorithm, the number of local photos taken, and the concavity and convexity of each first structure. In one implementation, Figure 5 As shown, the following steps are included:
[0125] S401: When the number of local photographing is not zero, a new triple list is determined according to the triple list and the target triple list in the existing structure list.
[0126] Among them, the existing structure list contains the target triple list.
[0127] S402: Update the existing structure list based on the triple list and the target triple list.
[0128] S403: Update the existing structure list based on the new triple list and the target two-tuple list in the existing structure list.
[0129] Among them, the existing structure list contains the target only two-tuple list.
[0130] S404: Obtain a temporary list of only two-tuples based on the list of only two-tuples and the target list of three-tuples.
[0131] S405: Update the existing structure list based on the two-tuple list and the target three-tuple list.
[0132] S406: Update the existing structure list based on the temporary two-tuple list and the target two-tuple list.
[0133] Methods for updating the existing structure list and determining a new triple list based on the triple list and the target triple list include:
[0134] Determine whether triple a and target triple b have three common two-sided structures and the two-sided structures have the same convexity and concavity, wherein the variable a is used to traverse the triple list, and the variable b is used to traverse the target triple list; if so, merge triple a into the existing structure list to obtain an updated structure list, and update the number of votes for target triple b in the updated structure list; if not, determine whether triple a and target triple b have a common two-sided structure and the two-sided structures have the same convexity and concavity; in the case that triple a and target triple b have a common two-sided structure and the two-sided structures have the same convexity and concavity, determine the associated structure list corresponding to triple b; determine whether there is a corresponding structure list in the associated structure list that exists with triple a a second target structure having three common diface structures and the same diface structure convexity; if there is a second target structure in the associated structure list that has three common diface structures with triple a and the same diface structure convexity, determine the target number of the second target structure in the existing triple list; merge triple a into the existing structure list to obtain an updated structure list; if there is no second target structure in the associated structure list that has three common diface structures with triple a or the diface structure convexity is different, add triple a to the existing structure list to obtain an updated structure list; if triple a and target triple b do not have a common diface structure, add triple a to the existing structure list to obtain an updated structure list.
[0135] Use variable a to traverse the triplets in the triplet list in the current local point cloud, and use variable b to traverse the target triplets in the target triplet list in the existing structure list, and determine whether the triplets a and target triplets b have three common two-sided structures and the two-sided structures have the same convexity. If so, it indicates that the triplets a and target triplets b represent the same three-sided structure in the workpiece to be detected. At this time, update the existing structure list and merge the triplets a into the existing structure list. Because the current local point cloud is taken by the camera in a new shooting posture, and the existing three-sided structure is detected in the current local point cloud, the confidence that the three-sided structure is a real three-sided structure increases. In the existing structure list, each three-sided structure has a number of votes, and the number of votes represents the confidence of the three-sided structure. Add 1 to the number of votes for the target triplet b.
[0136] If triple a and target triple b have three common two-sided structures and the two-sided structures have the same concavity and convexity, triple a is merged into the existing structure list to obtain an updated structure list. The specific method may include:
[0137] If triple a and target triple b have three common two-face structures and the two-face structures have the same concavity and convexity, determine each first intersection line of triple a and each second intersection line of target triple b, and there is a corresponding relationship between the first intersection line and the second intersection line; determine the first starting point and the first end point of the first intersection line, and determine the second starting point and the second end point of the second intersection line; for each first intersection line, determine the union of the first starting point and the first end point of the first intersection line and the second starting point and the second end point of the second intersection line corresponding to the first intersection line; update the corresponding intersection line in target triple b with the union set to obtain an updated structure list.
[0138] It should be noted that if there are three common two-sided structures between triplet a and target triplet b and the concavity and convexity of the two-sided structures are the same, then triplet a and target triplet b are the same three-sided structure, but the plane range captured may be different. It is necessary to update the intersection line of the three-sided structure in target triplet b. The updating method is to update each intersection line in turn. Let triplet a be expressed as (i 1 , i 2 , i 3 ), the target triple b is expressed as (j 1 , j 2 , j 3 ), we get (i 1 , i 2 ) of the intersection line, we get (j 1 , j 2 )’s starting and ending points, and (i 1 , i 2 ) and (j 1 , j 2 ) is updated with the union of the starting point and the end point of the intersection line of the target triple b (j 1 , j 2 ), and the other two intersection lines are updated in the same way.
[0139] If triple a and target triple b do not have three common two-sided structures or the two-sided structures have different convexity and concavity, determine whether triple a and target triple b have a common two-sided structure and the two-sided structures have the same convexity and concavity. If so, the following two cases need to be divided.
[0140] The first case is: traverse the associated structure list of target triple b. When there is a second target structure in the associated structure list of target triple b that has three common two-sided structures with triple a and the same two-sided structure concavity, it means that triple a already exists in the existing structure list. Let the target label of the triple corresponding to triple a in the associated structure list corresponding to target triple b be i_index, and the target label is the label of the triple corresponding to triple a in the associated structure list in the existing structure list. At this time, update the existing structure list, merge triple a into the existing structure list, add 1 to the vote number of the triple of i_index in the existing structure list, and update the three intersection lines in the three-sided structure of the triple of i_index.
[0141] The second case is: when traversing the associated structure list of the target triple b, if there is no structure in the associated structure list that has three common two-sided structures with triple a and the two-sided structures have the same concavity and convexity, then triple a is a new three-sided structure, but it shares one intersection line with the existing three-sided structure. Figure 6 As shown. Figure 6 A 3-concave structure and an adjacent 2-concave and 1-convex structure are shown in FIG. 1 , and the two three-sided structures share one intersection line.
[0142] If there is no second target structure in the associated structure list that has three common two-sided structures with triple a or has different two-sided structure concavity, triple a is added to the existing structure list for update: triple a is added to the existing structure list, the number of votes is set to 1, the number of votes for target triple b is increased by 1, the intersection line of the common two-sided structure in target triple b is updated, and the label of the newly added triple is recorded in the new triple list.
[0143] After the traversal of the target triple list is completed, and if triple a and target triple b do not have a common two-sided structure, the existing structure list is updated: if b has been traversed and the target triple b and triple a do not have a common two-sided structure, it means that the target triple b does not share a two-sided structure with the existing three-sided structures in the existing structure list. Add triple a to the existing structure list and set the number of votes for triple a to 1.
[0144] Before determining the associated structure list corresponding to the target triple b, the associated structure list corresponding to the existing structure list can be obtained based on the existing structure list. The specific method is as follows:
[0145] Use variable d to traverse all triples in the existing structure list, d starts from 0, and use variable e to traverse all triples in the existing structure list, e starts from d+1. Take out triples d and triples e, and determine whether triples d and triples e have a common two-sided structure. If so, it means that triples d and triples e are related to each other. Add e to the associated structure list of triple d and add the associated line label. Add d to the associated structure list of triple e and add the associated line label. The associated structure list can be represented by a vector, each element contains 3 values. The first value represents the label of the triple associated with the current triple, the second value represents the first label of the associated line in the current triple, and the third value represents the second label of the associated line in the associated 3-tuple.
[0146] There are many implementations for updating the existing structure list based on the new triple list and the target two-tuple list in the existing structure list. In one implementation, for example Figure 7 As shown, the following steps are included:
[0147] S501: Determine whether the new triplet i and the target binary j have a common two-face structure and the two-face structures have the same concavity and convexity.
[0148] The variable i is used to traverse each new triple in the new triple list, and the variable j is used to traverse the target-only binary in the target-only binary list.
[0149] S502: When the new triple i and the target binary j have a common two-sided structure and the two-sided structures have the same concavity and convexity, the intersection line of the new triple i is updated based on the intersection line of the target binary.
[0150] Use variable i to traverse each new triple in the new triple list, use variable j to traverse the target only binary in the target only binary list, take out new triple i from the new triple list, determine whether new triple i and target only binary j have a common two-sided structure and the two-sided structure has the same convexity and concavity, if so, update the existing structure list, update the intersection line of new triple i in the existing structure list: and delete target only binary j in the target only binary list in the existing structure list, and increase the number of votes for new triple i in the existing structure list by 1.
[0151] Because any plane has thickness, there is no real two-sided structure in the workpiece to be inspected, and any two-sided structure should belong to a three-sided structure.
[0152] There are many implementations for obtaining a temporary list of only two-tuples based on the list of only two-tuples and the target list of three-tuples. In one implementation, Figure 8 As shown, the following steps are included:
[0153] S601: Determine whether only the binary group i and the target triplet j have a common two-sided structure and the two-sided structures have the same concavity and convexity.
[0154] The variable i is used to traverse each two-tuple in the two-tuple list, and the variable j is used to traverse each target triple in the target triple list.
[0155] S602: When only the binary group i and the target triple group j have a common two-surface structure and the two-surface structures have the same concavity and convexity, the intersection line of the target triple group j is updated based on the intersection line of the binary group i.
[0156] S603: If only the bigram i and the target triplet j do not have a common two-sided structure, only the bigram i is added to the temporary list of only bigrams.
[0157] Use variable i to traverse the list of only two-tuples, and use variable j to traverse the list of target triples in the existing structure list, and determine whether only two-tuple i and target triple j have a common two-sided structure and the two-sided structure has the same convexity. If so, update the existing structure list: add 1 to the number of votes for target triple j, and jump directly to the step of increasing i. If j is traversed, it means that only two-tuple i has no duplication with any triple in the existing structure list, and the only two-tuple i is stored in the temporary list.
[0158] The implementation method of updating the existing structure list based on the temporary list of only two-tuples and the target list of only two-tuples can be:
[0159] Use variable i to traverse the temporary list of only two tuples, and use variable j to traverse the target list of only two tuples in the existing structure list, and determine whether the temporary two tuple i and the target two tuple j have a common two-sided structure and the two-sided structure has the same convexity and concavity. If so, jump directly to the step of adding i. If j has been traversed, it means that the temporary two tuple i is a new two-tuple, then the existing structure list is updated, and the temporary two tuple i is added to the existing structure list.
[0160] Please refer to Fig. 9 The present application embodiment also provides an application Figure 1 The linear weld seam recognition device 110 of the electronic device 100 includes:
[0161] The determination module 111 is used to take a partial photo of the workpiece to be inspected and determine the number of partial photos; determine a partial point cloud of the workpiece to be inspected for each partial photo; determine each first structure in the partial point cloud and the concavity and convexity of each first structure based on a structure search algorithm; and determine a list of existing structures of the workpiece to be inspected;
[0162] An updating module 112, configured to merge each of the first structures into the existing structure list to obtain an updated structure list based on a structure merging algorithm, the number of local photographs, and the concavity of each of the first structures, wherein the updated structure list includes the number of votes for each structure;
[0163] Return to the execution module 113, which is used to return to the step of determining the local point cloud of the workpiece to be inspected for each local photographing to the step of merging each of the first structures into the existing structure list to obtain an updated structure list based on the structure merging algorithm and the concavity and convexity of each of the first structures, until the number of the local photographing reaches a preset number, and the latest structure list is obtained;
[0164] An acquisition module 114 is used to acquire, from the latest structure list, first target structures whose vote counts are greater than a preset count and parameter information of each of the first target structures;
[0165] The identification module 115 is used to identify the straight weld based on the parameter information.
[0166] The present application also provides an electronic device 100, which includes a processor 130 and a memory 120. The memory 120 stores computer executable instructions, and when the computer executable instructions are executed by the processor 130, the linear weld recognition method is implemented.
[0167] The embodiment of the present application further provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by the processor 130, the linear weld identification method is implemented.
[0168] In the embodiments provided in the present application, it should be understood that the disclosed devices and methods can also be implemented in other ways. The device embodiments described above are merely schematic. For example, the flowcharts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the devices, methods and computer program products according to the multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of a code, and the module, a program segment or a part of a code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or the flowchart, and the combination of boxes in the block diagram and / or the flowchart can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.
[0169] In addition, each functional module in each embodiment of the present application can be integrated together to form an independent part, or each module can exist separately, or two or more modules can be integrated to form an independent part. If the function is implemented in the form of a software functional module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including several instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a disk or an optical disk.
[0170] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
[0171] The above are only various implementations of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
Claims
1. A linear weld recognition method, characterized in that: The method comprises: Take partial photos of the workpiece to be inspected and determine the number of partial photos; For each partial photo, determine the local point cloud of the workpiece to be inspected; Determine each first structure in the local point cloud and the concavity and convexity of each first structure based on a structure search algorithm; Determine the existing structure list of the workpiece to be inspected; Based on the structure merging algorithm, the number of local photos taken, and the concavity and convexity of each of the first structures, each of the first structures is merged into the existing structure list to obtain an updated structure list, wherein the updated structure list includes the number of votes for each structure; Returning to the step of determining the local point cloud of the workpiece to be inspected for each local photographing to the step of merging each of the first structures into the existing structure list to obtain an updated structure list based on the structure merging algorithm and the concavity and convexity of each of the first structures, until the number of the local photographing reaches a preset number, and the latest structure list is obtained; Acquire, from the latest structure list, first target structures in which the number of votes is greater than a preset number and parameter information of each of the first target structures; Linear weld identification is performed based on each of the parameter information.
2. The method according to claim 1, characterized in that The step of determining each first structure in the local point cloud and the concavity and convexity of each first structure based on a structure search algorithm comprises: Detecting each plane in the local point cloud; Based on each of the planes, construct a two-tuple list and a three-tuple list, wherein the two-tuple list includes at least one first structure composed of two planes and the concavity and convexity corresponding to the first structure, and the three-tuple list includes at least one first structure composed of three planes and the concavity and convexity corresponding to the first structure; Based on the bigram list and the triplet list, a bigram-only list is determined.
3. The method according to claim 2, characterized in that The step of constructing a list of two-tuples and a list of three-tuples based on each of the planes comprises: Get a plane detection list based on each plane; Determine whether plane i and plane j have an intersection, wherein variable i is used to traverse each plane in the plane detection list from 0 to n, and variable j is used to traverse each plane in the plane detection list from i+1 to n, where n is the number of planes in the plane detection list; If the plane i and the plane j have an intersection line, the plane i and the plane j form a tuple, and the tuple is recorded in a tuple list; Determine whether the plane i and the plane k have an intersection, wherein the variable k is used to traverse each plane in the plane detection list from j+1 to n; If the plane i and the plane k have an intersection line, the plane i and the plane k form a tuple, and the tuple is recorded in the tuple list; Determine whether the plane j and the plane k have an intersection line; When there is an intersection line between the plane j and the plane k, the plane j and the plane k form a tuple, and the tuple is recorded in the tuple list; Determine whether there is an intersection line between the plane i and the plane j, whether there is an intersection line between the plane i and the plane k, and whether there is an intersection line between the plane j and the plane k; In the case where the plane i and the plane j have an intersection line, the plane i and the plane k have an intersection line, and the plane j and the plane k have an intersection line, the plane i, the plane j, and the plane k form a triplet, and the triplet is recorded in the triplet list; Determine the coordinates of the optical center of the camera when taking local photos; Based on the camera optical center coordinates, the convexity and concavity of each first structure in the binary list and the convexity and concavity of each first structure in the triple list are determined.
4. The method according to claim 2, characterized in that: The step of determining only a two-tuple list based on the two-tuple list and the three-tuple list comprises: Determine whether triple j contains bigram i, wherein the bigram list is traversed using variable i, and the triple list is traversed using variable j; If the triple j does not include the bigram i, the bigram i is determined to be a only bigram, and the only bigram is added to the only bigram list.
5. The method according to claim 1, characterized in that The step of merging each of the first structures into the existing structure list to obtain an updated structure list based on the structure merging algorithm, the number of local photographing times, and the concavity and convexity of each of the first structures comprises: When the number of local photographing is zero, each of the first structures is added to the existing structure list to obtain an updated structure list, and the number of votes for the newly added first structure in the updated structure list is assigned a value of 1.
6. The method according to claim 2, characterized in that The step of merging each of the first structures into the existing structure list to obtain an updated structure list based on the structure merging algorithm, the number of local photos taken, and the concavity of each of the first structures, and updating the number of votes for each structure in the updated structure list includes: When the number of local photographing is not zero, determining a new triple list according to the triple list and the target triple list in the existing structure list, wherein the existing structure list includes the target triple list; Updating the existing structure list based on the triple list and the target triple list; updating the existing structure list based on the new triple list and the target only bigram list in the existing structure list, wherein the existing structure list includes the target only bigram list; Obtaining a temporary list of only two-tuples based on the list of only two-tuples and the target list of three-tuples; updating the existing structure list based on the two-tuple list and the target triplet list; The existing structure list is updated based on the temporary two-tuple-only list and the target two-tuple-only list.
7. The method according to claim 6, characterized in that The step of updating the existing structure list based on the triple list and the target triple list includes: Determine whether triple a and target triple b have three common two-sided structures and the two-sided structures have the same concavity and convexity, wherein the triple list is traversed using variable a and the target triple list is traversed using variable b; If yes, the triple a is merged into the existing structure list to obtain an updated structure list, and the number of votes for the target triple b in the updated structure list is updated; If not, determine whether the triple a and the target triple b have a common two-sided structure and the two-sided structure has the same concavity and convexity; In the case where the triple a and the target triple b have a common two-sided structure and the two-sided structures have the same concavity and convexity, determining a list of associated structures corresponding to the target triple b; Determine whether there is a second target structure in the associated structure list that has three common two-face structures with the triple a and has the same two-face structure concavity and convexity; If there is a second target structure in the associated structure list that has three common two-sided structures with the triple a and the two-sided structures have the same concavity and convexity, determine the target number of the second target structure in the existing triple list; Merging the triple a into the existing structure list to obtain an updated structure list; If there is no second target structure in the associated structure list that has three common dihedral structures or dihedral structures with different concavity and convexity as the triple a, adding the triple a to the existing structure list to obtain an updated structure list; In the case that the triple a and the target triple b do not have a common two-sided structure, the triple a is added to the existing structure list to obtain an updated structure list.
8. The method according to claim 6, characterized in that The step of updating the existing structure list based on the new triple list and the target two-tuple list in the existing structure list comprises: Determine whether the new triple i and the target only two-tuple j have a common two-sided structure and the two-sided structure has the same convexity and concavity, wherein the variable i is used to traverse each new triple in the new triple list, and the variable j is used to traverse the target only two-tuple in the target only two-tuple list; When the new triplet i and the target binary j have a common two-sided structure and the two-sided structures have the same concavity and convexity, the intersection line of the new triplet i is updated based on the intersection line of the target binary.
9. The method according to claim 6, characterized in that The step of obtaining a temporary list of only two-tuples based on the list of only two-tuples and the target list of three-tuples comprises: Determine whether the only two-tuple i and the target triple j have a common two-sided structure and the two-sided structure has the same concavity and convexity, wherein the variable i is used to traverse each only two-tuple in the only two-tuple list, and the variable j is used to traverse each target triple in the target triple list; When the two-tuple i and the target triple j have a common two-surface structure and the two-surface structures have the same concavity and convexity, updating the intersection line of the target triple j based on the intersection line of the two-tuple i; If only two-tuple i and target triple j do not have a common two-sided structure, then only two-tuple i is added to the only two-tuple temporary list.
10. A linear weld identification device, characterized in that: The device comprises: a determination module, which is used to take a partial photo of the workpiece to be inspected and determine the number of partial photos; determine a partial point cloud of the workpiece to be inspected for each partial photo; determine each first structure in the partial point cloud and the concavity and convexity of each first structure based on a structure search algorithm; and determine a list of existing structures of the workpiece to be inspected; An updating module, configured to merge each of the first structures into the existing structure list to obtain an updated structure list based on a structure merging algorithm, the number of local photographs, and the concavity of each of the first structures, wherein the updated structure list includes the number of votes for each structure; Returning to the execution module, used for returning to the step of determining the local point cloud of the workpiece to be inspected for each local photographing to the step of merging each of the first structures into the existing structure list to obtain an updated structure list based on the structure merging algorithm and the concavity and convexity of each of the first structures, until the number of the local photographing reaches a preset number, and the latest structure list is obtained; An acquisition module, configured to acquire, from the latest structure list, first target structures having a number of votes greater than a preset number and parameter information of each of the first target structures; The identification module is used to identify the straight weld based on the parameter information.
Citation Information
Patent Citations
Method and device for identifying arc-shaped welding seam
CN118196109A
Linear welding seam recognition method and device and electronic equipment
CN118212233A