Weld seam identification method, device, welding robot and storage medium
By performing planar segmentation and intersecting line detection on the three-dimensional point cloud data of the V-groove workpiece, weld feature points are identified, solving the problem of insufficient efficiency and accuracy of weld identification in the existing technology, and realizing efficient and accurate weld identification and welding.
Patent Information
- Application Number
- CN202211063968.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-31
- Publication Date
- 2025-10-28
- Estimated Expiration
- 2042-08-31
AI Technical Summary
Existing technologies struggle to balance efficiency and accuracy when identifying weld seams on V-groove workpieces. Line laser scanning robots have poor welding accuracy, while manually taught and programmed robots have low welding efficiency.
By acquiring the 3D point cloud data of the V-groove workpiece, performing planar segmentation and intersecting line detection, extracting adjacent points, identifying weld feature points based on perpendicular distance comparison, and combining the 3D point cloud data for coordinate transformation and clustering to remove noise points, the recognition accuracy and efficiency are improved.
It enables efficient and accurate identification of weld feature points on V-groove workpieces, improving the precision and efficiency of welding robot welding and avoiding the shortcomings of line laser scanning and manual teaching.
Smart Images

Figure CN115409809B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of welding technology, specifically to a weld seam identification method, device, welding robot, and storage medium. Background Technology
[0002] In robotic welding technology, weld seam identification is necessary for welding. Currently, line laser scanning robotic welding and manually taught robotic welding are mainly used. Line laser scanning robotic welding has poor accuracy in identifying weld seams on V-groove workpieces, while manually taught robotic welding is cumbersome and inefficient in weld seam identification. Therefore, current methods for weld seam identification on V-groove workpieces struggle to balance efficiency and accuracy. Summary of the Invention
[0003] One objective of this application is to provide a weld identification method, apparatus, welding robot, and storage medium that improves both the efficiency and accuracy of identifying weld feature points on V-groove workpieces.
[0004] According to one aspect of the embodiments of this application, a weld identification method is provided, including:
[0005] Acquire 3D point cloud data of V-groove workpiece;
[0006] The three-dimensional point cloud data is subjected to planar segmentation and intersecting line detection to obtain the intersecting lines between every two planes;
[0007] From the three-dimensional point cloud data, extract multiple adjacent points corresponding to the intersecting straight lines; the adjacent points are points in the three-dimensional point cloud data within a preset range of the intersecting straight lines.
[0008] Based on the perpendiculars of multiple adjacent points on corresponding intersecting lines, the distance between every two perpendiculars on the intersecting lines is compared to obtain the two target perpendiculars corresponding to the maximum distance;
[0009] The point on which the target perpendicular lies is identified as the weld feature point of the V-groove workpiece; the weld feature point is the feature point at the weld of the V-groove workpiece.
[0010] According to one aspect of the embodiments of this application, a weld seam identification device is provided, comprising:
[0011] The acquisition module is used to acquire the three-dimensional point cloud data of the V-groove workpiece;
[0012] The intersecting line detection module is used to perform planar segmentation processing and intersecting line detection on the three-dimensional point cloud data to obtain the intersecting lines between every two planes.
[0013] The adjacent point extraction module is used to extract multiple adjacent points corresponding to the intersecting lines from the three-dimensional point cloud data; the adjacent points are points in the three-dimensional point cloud data within a preset range of the intersecting lines;
[0014] The distance comparison module is used to compare the distance between every two perpendiculars on the intersecting lines based on the perpendiculars of multiple adjacent points on the corresponding intersecting lines, and to obtain the two target perpendiculars corresponding to the maximum distance;
[0015] The weld feature point recognition module is used to identify the point on the intersecting straight line where the target perpendicular is located as the weld feature point of the V-groove workpiece; the weld feature point is the feature point at the weld of the V-groove workpiece.
[0016] In some embodiments of this application, based on the above technical solutions, the weld identification device is configured as follows:
[0017] The three-dimensional point cloud data is subjected to planar segmentation processing to obtain at least two planes corresponding to the V-shaped bevel workpiece; the at least two planes include at least two of the following: a horizontal plane, a first inclined plane, and a second inclined plane corresponding to the V-shaped bevel workpiece.
[0018] The intersecting lines between each pair of planes are detected to obtain the intersecting lines; the intersecting lines include at least one of a first line, a second line, and a third line; the first line is the line where the horizontal plane intersects the first inclined plane, the second line is the line where the horizontal plane intersects the second inclined plane, and the third line is the line where the first inclined plane intersects the second inclined plane.
[0019] In some embodiments of this application, based on the above technical solutions, the weld identification device is configured as follows:
[0020] Detect the distance between each point in the three-dimensional point cloud data and the intersecting straight line;
[0021] All points in the 3D point cloud data whose distance is less than or equal to a preset distance are considered as the neighboring points;
[0022] Project each of the adjacent points onto the intersecting line to obtain the foot of the perpendicular of each of the adjacent points on the intersecting line;
[0023] Determine the distance between each pair of perpendicular feet;
[0024] By comparing the distances between every two perpendicular feet, the maximum distance is obtained;
[0025] Obtain the two target perpendicular feet corresponding to the maximum distance.
[0026] In some embodiments of this application, based on the above technical solutions, the weld identification device is configured as follows:
[0027] Obtain the original three-dimensional point cloud data for the V-shaped bevel workpiece;
[0028] The original three-dimensional point cloud data is transformed to obtain the actual three-dimensional point cloud data in the coordinate system of the welding robot base.
[0029] The actual 3D point cloud data is clustered to obtain the 3D point cloud data.
[0030] In some embodiments of this application, based on the above technical solutions, the weld identification device is configured as follows:
[0031] Obtain the value range of the actual 3D point cloud data in a preset dimension;
[0032] Iterate through each point in the actual 3D point cloud data and determine the value of the point in the preset dimension; the preset dimension is a pre-defined dimension used to indicate the direction towards the ground.
[0033] Get all points whose values are not within the range of the given values;
[0034] Filter out all points whose values are not within the range to obtain real 3D point cloud data;
[0035] The real 3D point cloud data is sampled to obtain sampled 3D point cloud data;
[0036] Clustering is performed on the sampled 3D point cloud data to obtain spatial noise points and target 3D point cloud data, and the target 3D point cloud data is used as the 3D point cloud data.
[0037] In some embodiments of this application, based on the above technical solutions, the weld identification device is configured as follows:
[0038] Based on the posture matrix of the center point of the welding robot's end tool and the robot's hand-eye matrix, the original three-dimensional point cloud data is transformed to obtain the actual three-dimensional point cloud data in the welding robot's base coordinate system.
[0039] In some embodiments of this application, based on the above technical solutions, the weld identification device is configured as follows:
[0040] Welding is performed on the V-groove workpiece based on the weld feature points of the V-groove workpiece.
[0041] According to one aspect of the embodiments of this application, a welding robot is provided, including: one or more processors; and a storage device for storing one or more programs, which, when executed by the one or more processors, cause the welding robot to implement the methods provided in the various optional implementations described above.
[0042] According to one aspect of the embodiments of this application, a computer program medium is provided, on which computer-readable instructions are stored, which, when executed by a computer's processor, cause the computer to perform the methods provided in the various optional implementations described above.
[0043] According to one aspect of the embodiments of this application, a computer program product or computer program is provided, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the methods provided in the various optional implementations described above.
[0044] In the technical solution provided in this application embodiment, considering the characteristics of the V-groove workpiece, the workpiece is divided into planes based on three-dimensional point cloud data, and intersecting lines between two planes are obtained. Based on the perpendiculars of adjacent points on the intersecting lines, the two target perpendiculars with the maximum distance are obtained. Feature points at the weld of the V-groove workpiece are identified based on the points on the lines containing these target perpendiculars. On one hand, compared to the two-dimensional data processing method of line laser scanning, this application can more accurately reflect the characteristics of the V-groove workpiece in three-dimensional space using three-dimensional data, thus obtaining more accurate endpoints. On the other hand, compared to the method of transforming manual teaching into robotic welding, this application directly identifies weld feature points based on three-dimensional point cloud data, which is more efficient than manual methods. Therefore, this application balances efficiency and accuracy when identifying welds on V-groove workpieces.
[0045] Other features and advantages of this application will become apparent from the following detailed description, or may be learned in part from practice of this application.
[0046] It should be understood that the above general description and the following detailed description are merely exemplary and do not limit this application. Attached Figure Description
[0047] The above and other objectives, features and advantages of this application will become more apparent from a detailed description of exemplary embodiments thereof with reference to the accompanying drawings.
[0048] Figure 1 A schematic flowchart of a weld identification method according to Embodiment 1 of this application is shown.
[0049] Figure 2 A schematic diagram of a V-groove workpiece according to Embodiment 1 of this application is shown.
[0050] Figure 3 A schematic flowchart of a weld identification method according to Embodiment 2 of this application is shown.
[0051] Figure 4 A schematic diagram showing the relationship between the ground point cloud and the actual point cloud of the V-shaped bevel workpiece according to Embodiment 2 of this application is shown.
[0052] Figure 5 A schematic diagram of the three planes obtained by cutting according to Embodiment 2 of this application is shown.
[0053] Figure 6 A schematic diagram showing the relationship between intersecting lines in a plane and adjacent points according to Embodiment 2 of this application is shown.
[0054] Figure 7 A schematic diagram of the weld feature points of a V-groove workpiece according to Embodiment 2 of this application is shown.
[0055] Figure 8 A detailed flowchart illustrating weld seam identification in a specific scenario according to Embodiment 2 of this application is shown.
[0056] Figure 9 A schematic diagram of the weld identification device according to Embodiment 3 of this application is shown.
[0057] Figure 10 A schematic diagram of the structure of a welding robot according to Embodiment 4 of this application is shown. Detailed Implementation
[0058] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, they are provided to make the description of this application more comprehensive and complete, and to fully convey the concept of the exemplary embodiments to those skilled in the art. The drawings are merely illustrative of this application and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted.
[0059] Furthermore, the described features, structures, or characteristics can be combined in any suitable manner in one or more exemplary embodiments. Numerous specific details are provided in the following description to give a full understanding of exemplary embodiments of this application. However, those skilled in the art will recognize that the technical solutions of this application can be practiced with one or more specific details omitted, or other methods, components, steps, etc., can be employed. In other instances, well-known structures, methods, implementations, or operations are not shown or described in detail to avoid obscuring various aspects of this application.
[0060] Some of the block diagrams shown in the accompanying drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.
[0061] Figure 1 A flowchart illustrating the weld identification method according to Embodiment 1 of this application is shown. The method includes the following steps:
[0062] Step S101: Obtain the three-dimensional point cloud data of the V-groove workpiece;
[0063] A V-groove workpiece is a workpiece with a V-shaped bevel. Three-dimensional point cloud data is data containing point cloud information in three different dimensions. Three-dimensional point cloud data includes the positional information of the point cloud, such as coordinates. Three-dimensional point cloud data can be acquired by a three-dimensional camera at the end of the welding torch of a welding robot.
[0064] As an alternative implementation method, after the 3D camera acquires data, the acquired data can be used as 3D point cloud data, which can quickly obtain 3D point cloud data.
[0065] As an alternative implementation method, after the data acquired by the 3D camera is processed, more accurate 3D point cloud data can be obtained.
[0066] Step S102: Perform planar segmentation and intersecting line detection on the 3D point cloud data to obtain the intersecting lines between every two planes;
[0067] As an optional implementation, the three-dimensional point cloud data is subjected to planar segmentation processing and intersecting line detection to obtain intersecting lines between every two planes, including: performing planar segmentation processing on the three-dimensional point cloud data to obtain at least two planes corresponding to the V-shaped bevel workpiece; the at least two planes include at least two of the horizontal plane, the first inclined plane, and the second inclined plane corresponding to the V-shaped bevel workpiece; detecting the intersecting lines between every two planes to obtain intersecting lines; the intersecting lines include at least one of the first line, the second line, and the third line; the first line is the line intersecting the horizontal plane and the first inclined plane, the second line is the line intersecting the horizontal plane and the second inclined plane, and the third line is the line intersecting the first inclined plane and the second inclined plane.
[0068] V-groove workpieces have multiple planes, such as horizontal planes and inclined planes. The horizontal plane refers to the plane in the V-groove workpiece that is parallel to the horizontal line. The inclined plane is the plane that connects to the horizontal plane, and its inclination relative to the horizontal line is relatively large.
[0069] Three-dimensional point cloud data can be segmented into three planes. Among them, the reference plane... Figure 2 As shown, the three planes are plane A, plane B, and plane C. Plane A is a horizontal plane, divided into two parts. Planes B and C are both inclined planes. Planes A and B intersect on line a, plane B and plane C intersect on line b, and plane C and plane A intersect on line c.
[0070] To obtain all weld feature points, during the plane segmentation process, the various planes of the V-groove workpiece can be segmented, and the intersecting straight lines between each pair of segmented planes can be detected and their equations calculated.
[0071] Step S103: Extract multiple adjacent points corresponding to intersecting lines from the 3D point cloud data; adjacent points are points in the 3D point cloud data within a preset range of the intersecting lines.
[0072] As an optional implementation, extracting multiple neighboring points corresponding to intersecting lines from 3D point cloud data includes: detecting the distance between each point in the 3D point cloud data and the intersecting lines; and taking all points in the 3D point cloud data whose distance is less than or equal to a preset distance as neighboring points.
[0073] The preset distance is a pre-defined distance between points located near and approximately adjacent to intersecting lines. All points in the 3D point cloud data located at a distance less than or equal to the preset distance from either side of the intersecting line can be selected as adjacent points.
[0074] As an alternative implementation, points within a certain distance on both sides of the intersecting lines can be extracted from the 3D point cloud data along an axis perpendicular to the intersecting lines, and these points can be designated as adjacent points. For example, if the intersecting lines are taken as the X-axis and the lines perpendicular to them are taken as the Y-axis, then there may be multiple points at a certain distance along the Y-axis, and the point closest to the X-axis among these points can be designated as an adjacent point.
[0075] Step S104: Based on the perpendiculars of multiple adjacent points on the corresponding intersecting lines, compare the distance between every two perpendiculars on the intersecting lines to obtain the two target perpendiculars corresponding to the maximum distance;
[0076] As an optional implementation, based on the perpendiculars of multiple adjacent points on corresponding intersecting lines, the distance between every two perpendiculars on the intersecting lines is compared to obtain two target perpendiculars corresponding to the maximum distance. This includes: projecting each adjacent point onto the intersecting line to obtain the perpendiculars of each adjacent point on the intersecting line; determining the distance between every two perpendiculars; comparing the distance between every two perpendiculars to obtain the maximum distance; and obtaining two target perpendiculars corresponding to the maximum distance.
[0077] The target perpendicular foot is the perpendicular foot corresponding to the maximum distance. The Euclidean distance between any two perpendicular feet can be calculated, and the maximum Euclidean distance is taken as the maximum distance.
[0078] By projecting adjacent points onto intersecting lines to obtain the perpendicular feet, and comparing the maximum distance between the perpendicular feet to obtain the point where the perpendicular foot lies on the line, compared to finding the endpoints by finding the points where the intersecting lines coincide with the 3D point cloud data, this method avoids the problem of the endpoints on both sides failing to be found due to the lack of coincidence between the endpoints on both sides and the intersecting lines. Furthermore, since this embodiment obtains the points where the perpendicular feet of the points in the 3D point cloud lie on the intersecting lines, it can ensure that the weld feature points correspond to the actual 3D point cloud data, thus making the weld feature points accurate.
[0079] Step S105: Identify the point where the target foot lies on the intersecting straight line as the weld feature point of the V-groove workpiece; the weld feature point is the feature point at the weld of the V-groove workpiece.
[0080] As an optional implementation, after identifying the point where the target's perpendicular foot lies on the intersecting straight line as the weld feature point of the V-groove workpiece, the method further includes: welding the V-groove workpiece based on the weld feature point of the V-groove workpiece. Three-dimensional point cloud data can more realistically reflect the relative position between the welding robot and the workpiece. Based on the identified weld, the welding robot can be guided to make a realistic welding motion trajectory, which can improve both welding accuracy and welding efficiency.
[0081] like Figure 2As shown, weld feature points include pt1, pt2, pt3, pt4, pt5, and pt6.
[0082] Compared to line laser weld identification based on a two-dimensional camera, which is prone to weld position misidentification, this embodiment uses three-dimensional point cloud data for weld identification, enabling more accurate identification of weld feature points. Compared to manual teaching methods for weld identification, which require manual intervention and are labor-intensive, this embodiment processes the three-dimensional point cloud data to obtain the weld feature points of the V-groove workpiece, resulting in higher efficiency.
[0083] Figure 3 A schematic flowchart of a weld identification method according to Embodiment 2 of this application is shown. The method includes the following steps:
[0084] Step S201: Obtain the original 3D point cloud data for the V-groove workpiece;
[0085] This embodiment illustrates how to obtain more accurate 3D point cloud data so that the accuracy of the identified weld feature points is higher than that of weld identification using the original acquired 3D point cloud data.
[0086] Step S202: Perform coordinate transformation on the original 3D point cloud data to obtain the actual 3D point cloud data in the coordinate system of the welding robot base;
[0087] As an optional implementation, coordinate transformation is performed on the original three-dimensional point cloud data to obtain the actual three-dimensional point cloud data in the welding robot base coordinate system. This includes: performing coordinate transformation on the original three-dimensional point cloud data based on the posture matrix of the center point of the welding robot end tool and the robot hand-eye matrix to obtain the actual three-dimensional point cloud data in the welding robot base coordinate system.
[0088] As an alternative implementation, the tool center point is the end point of the welding robot's welding torch.
[0089] Step S203: Cluster the actual 3D point cloud data to obtain 3D point cloud data;
[0090] As an optional implementation, clustering actual 3D point cloud data to obtain 3D point cloud data includes: obtaining the value range of the actual 3D point cloud data in a preset dimension; traversing each point in the actual 3D point cloud data and determining the value of the point in the preset dimension; the preset dimension is a pre-defined dimension used to indicate the direction towards the ground; obtaining all points whose values are not within the value range; filtering out all points whose values are not within the value range to obtain real 3D point cloud data; sampling the real 3D point cloud data to obtain sampled 3D point cloud data; clustering the sampled 3D point cloud data to obtain spatial noise points and target 3D point cloud data, and using the target 3D point cloud data as the 3D point cloud data.
[0091] True 3D point cloud data is 3D point cloud data with ground point cloud data removed. Sampled 3D point cloud data is a portion of true 3D point cloud data that has been sampled. Target 3D point cloud data is point cloud data from sampled 3D point cloud data, excluding spatial noise points.
[0092] Using the above method, ground point clouds and spatial noise points can be removed, resulting in more accurate 3D point cloud data of the workpiece. Furthermore, sampling reduces the computational cost of weld seam recognition, improving its efficiency compared to processing all points.
[0093] Step S204: Perform planar segmentation and intersecting line detection on the 3D point cloud data to obtain the intersecting lines between every two planes;
[0094] Step S205: Extract multiple adjacent points corresponding to intersecting lines from the 3D point cloud data; adjacent points are points in the 3D point cloud data within a preset range of the intersecting lines.
[0095] As an alternative implementation, multiple adjacent points corresponding to intersecting lines can be obtained from real 3D point cloud data.
[0096] Step S206: Based on the perpendiculars of multiple adjacent points on the corresponding intersecting lines, compare the distance between every two perpendiculars on the intersecting lines to obtain the two target perpendiculars corresponding to the maximum distance;
[0097] Step S207: Identify the point where the target foot lies on the intersecting straight line as the weld feature point of the V-groove workpiece; the weld feature point is the feature point at the weld of the V-groove workpiece.
[0098] The following is for reference Figures 4 to 8 The technical solution of this embodiment will be described in conjunction with a specific scenario.
[0099] Combination Figure 8 The flowchart shown illustrates the steps involved in weld identification. The weld identification process includes:
[0100] Acquire original 3D point cloud data of V-groove workpiece: Use a 3D data camera to acquire point cloud data of V-groove welded workpiece and obtain pcd0.
[0101] The original 3D point cloud data is transformed into the robot base coordinate system: pcd0 is transformed into the welding robot base coordinate system using the toolPos posture matrix of the welding robot's end effector TCP and the robot's hand-eye matrix handEye, resulting in the actual point cloud pcd1 of the V-groove welding workpiece. The transformation method is as follows:
[0102] pcd1=transform(pcd0,toolPos*handEye).
[0103] Ground point cloud filtering: A filter is used to remove irrelevant point clouds (ground point clouds) from pcd1 related to the V-groove workpiece. This yields the true point cloud pcd2 for the V-groove workpiece. The relationship between the ground point cloud and the V-groove workpiece point cloud is as follows: Figure 4 As shown, the ground point cloud and the V-shaped slope point cloud differ in their vertical positions. Based on this characteristic, the ground point cloud can be filtered out using a filter.
[0104] Sampling of point cloud of V-groove workpiece: Uniform sampling of the actual point cloud pcd2 of V-groove workpiece to obtain point cloud pcd3. This process can reduce the number of points in the actual point cloud, thereby reducing the computational cost of extracting V-groove weld seam.
[0105] Clustering of point clouds of V-groove workpieces: Clustering and segmentation of actual point cloud pcd3 of V-groove workpieces to remove spatial noise points other than actual point cloud of V-groove workpieces, resulting in point cloud pcd4, thus avoiding interference with the extraction of V-groove weld seams.
[0106] Planar segmentation of the point cloud of the V-groove workpiece: The actual point cloud pcd4 of the V-groove workpiece is segmented into planes to obtain the plane equations of point cloud planes plane1, plane2, and plane3, respectively. Schematic diagrams of the resulting planes plane1, plane2, and plane3 are shown below. Figure 5 As shown.
[0107] To determine whether there are intersecting straight lines between the point cloud planes of the V-groove workpiece, traverse the plane point cloud: traverse all the divided plane point clouds plane1, plane2 and plane3, and determine whether there are intersecting straight lines between each pair of them. If there are, find the corresponding straight lines. At this time, the equations of the straight lines are obtained as L1, L2 and L3 respectively.
[0108] To find the perpendicular feet of all points near intersecting lines on the lines: In the actual point cloud pcd4 of the V-groove workpiece, find the adjacent points of lines L1, L2, and L3 within a certain threshold, and project these adjacent points onto the lines to obtain the perpendicular feet of each adjacent point on the lines. The relationship between adjacent points and lines L1, L2, and L3 is as follows: Figure 5 As shown.
[0109] To find the endpoints of all perpendiculars: Calculate the endpoints of all perpendiculars to each line. The endpoints on a line are determined by finding the two points on the line whose pairs of perpendiculars have the greatest distance between them. The Euclidean distance between these two points is:
[0110] d=sqrt((x1-x2)^2+(y1-y2)^2+(z1-z2)^2).
[0111] 6 endpoints such as Figure 6 As shown, the starting points of the V-groove weld are pt1, pt2, pt3, pt4, pt5, and pt6. These six endpoints are the characteristic points of the weld.
[0112] Output all endpoints on the straight line: Finally, output the V-shaped points corresponding to the real V-groove, and thus provide the real V-groove weld start points pt1, pt2, pt3, pt4, pt5 and pt6 for intelligent welding. At this time, the intelligent welding robot can make welding trajectory planning for the V-groove weld based on the output 6 endpoints, thereby improving the welding efficiency of the V-groove weld.
[0113] Using the above method can improve the efficiency and accuracy of V-groove weld extraction in intelligent welding.
[0114] Figure 9 A weld identification device according to Embodiment 3 of this application is shown. The device includes:
[0115] The acquisition module 301 is used to acquire the three-dimensional point cloud data of the V-shaped bevel workpiece;
[0116] The intersecting line detection module 302 is used to perform planar segmentation processing and intersecting line detection on the three-dimensional point cloud data to obtain the intersecting lines between every two planes.
[0117] The adjacent point extraction module 303 is used to extract multiple adjacent points corresponding to intersecting lines from the three-dimensional point cloud data; the adjacent points are points in the three-dimensional point cloud data within a preset range of the intersecting lines.
[0118] The distance comparison module 304 is used to compare the distance between every two perpendiculars on the intersecting lines based on the perpendiculars of multiple adjacent points on the corresponding intersecting lines, and to obtain the two target perpendiculars corresponding to the maximum distance;
[0119] The weld feature point recognition module 305 is used to identify the points where the target foot is on the intersecting straight line as weld feature points of the V-groove workpiece; the weld feature points are the feature points at the weld of the V-groove workpiece.
[0120] In one exemplary embodiment of this application, the weld identification device is configured as follows:
[0121] The three-dimensional point cloud data is subjected to planar segmentation to obtain at least two planes corresponding to the V-shaped bevel workpiece; the at least two planes include at least two of the horizontal plane, the first inclined plane, and the second inclined plane corresponding to the V-shaped bevel workpiece.
[0122] The intersecting lines between each pair of planes are detected separately to obtain the intersecting lines. The intersecting lines include at least one of the first line, the second line, and the third line. The first line is the line that intersects the horizontal plane and the first inclined plane, the second line is the line that intersects the horizontal plane and the second inclined plane, and the third line is the line that intersects the first inclined plane and the second inclined plane.
[0123] In one exemplary embodiment of this application, the weld identification device is configured as follows:
[0124] Detect the distance between each point in a 3D point cloud and intersecting lines;
[0125] All points in the 3D point cloud data whose distance is less than or equal to a preset distance are considered as neighboring points;
[0126] Project each adjacent point onto the intersecting line to obtain the foot of the perpendicular of each adjacent point on the intersecting line;
[0127] Determine the distance between each pair of perpendicular feet;
[0128] Compare the distances between every two perpendicular feet to obtain the maximum distance;
[0129] Obtain the two target feet corresponding to the maximum distance.
[0130] In one exemplary embodiment of this application, the weld identification device is configured as follows:
[0131] Obtain the original 3D point cloud data for the V-groove workpiece;
[0132] The original 3D point cloud data is transformed to obtain the actual 3D point cloud data in the coordinate system of the welding robot base.
[0133] Clustering is performed on actual 3D point cloud data to obtain 3D point cloud data.
[0134] In one exemplary embodiment of this application, the weld identification device is configured as follows:
[0135] Obtain the value range of actual 3D point cloud data in a preset dimension;
[0136] Iterate through each point in the actual 3D point cloud data and determine the value of the point in the preset dimension; the preset dimension is a pre-defined dimension used to indicate the direction towards the ground.
[0137] Get all points whose values are outside the range of values;
[0138] All points whose values are outside the range are filtered out to obtain the true 3D point cloud data;
[0139] Sampled 3D point cloud data is obtained by sampling real 3D point cloud data.
[0140] Clustering is performed on the sampled 3D point cloud data to obtain spatial noise points and target 3D point cloud data, and the target 3D point cloud data is used as the 3D point cloud data.
[0141] In one exemplary embodiment of this application, the weld identification device is configured as follows:
[0142] Based on the posture matrix of the center point of the welding robot's end tool and the robot's hand-eye matrix, coordinate transformation is performed on the original 3D point cloud data to obtain the actual 3D point cloud data in the welding robot's base coordinate system.
[0143] In one exemplary embodiment of this application, the weld identification device is configured as follows:
[0144] Welding is performed on V-groove workpieces based on the weld seam feature points.
[0145] The following is for reference. Figure 10 To describe the welding robot 40 according to Embodiment 4 of this application. Figure 10 The welding robot 40 shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.
[0146] like Figure 10 As shown, the welding robot 40 is represented in the form of a general-purpose computing device. The components of the welding robot 40 may include, but are not limited to: at least one processing unit 410, at least one storage unit 420, and a bus 430 connecting different system components (including storage unit 420 and processing unit 410).
[0147] The storage unit stores program code, which can be executed by the processing unit 410 to perform the steps described in the explanatory section of this specification, based on various exemplary embodiments of the present invention. For example, the processing unit 410 can perform actions such as... Figure 1 The steps shown are as follows.
[0148] Storage unit 420 may include a readable medium in the form of a volatile storage unit, such as random access memory (RAM) 4201 and / or cache memory 4202, and may further include a read-only memory (ROM) 4203.
[0149] Storage unit 420 may also include a program / utility 4204 having a set (at least one) program module 4205, such program module 4205 including but not limited to: operating system, one or more application programs, other program modules and program data, each or some combination of these examples may include an implementation of a network environment.
[0150] Bus 430 can represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of the various bus structures.
[0151] The welding robot 40 can also communicate with one or more devices that enable users to interact with it, and / or with any device that enables it to communicate with one or more other computing devices (e.g., routers, modems, etc.). This communication can be achieved through an input / output (I / O) interface 450, which is connected to a display unit 440. Furthermore, the welding robot 40 can also communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) via a network adapter 460. As shown, the network adapter 460 communicates with other modules of the welding robot 40 via a bus 430. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with the welding robot 40, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0152] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (including a welding robot) to execute the method according to the embodiments of this application.
[0153] In an exemplary embodiment of this application, a computer-readable storage medium is also provided, on which computer-readable instructions are stored, which, when executed by a computer's processor, cause the computer to perform the methods described in the above method embodiments.
[0154] According to one embodiment of this application, a program product for implementing the methods in the above-described method embodiments is also provided. This product may employ a portable compact disc read-only memory (CD-ROM) and include program code, and may run on a welding robot. However, the program product of this invention is not limited thereto. In this document, a readable storage medium may be any tangible medium containing or storing a program that may be used by or in conjunction with an instruction execution system, apparatus, or device.
[0155] The program product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (a non-exhaustive list) of readable storage media include: electrical connections having one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0156] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting programs for use by or in conjunction with an instruction execution system, apparatus, or device.
[0157] The program code contained on the readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.
[0158] Program code for performing the operations of this invention can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, and conventional procedural programming languages such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0159] It should be noted that although several modules or units for the device used to perform actions have been mentioned in the detailed description above, this division is not mandatory. In fact, according to the embodiments of this application, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.
[0160] Furthermore, although the steps of the method in this application are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additional or alternative steps may be omitted, multiple steps may be combined into one step, and / or a step may be broken down into multiple steps.
[0161] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (including a welding robot) to execute the method according to the embodiments of this application.
[0162] Other embodiments of this application will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this application are indicated by the appended claims.
Claims
1. A method for weld identification, characterized in that, include: Acquire 3D point cloud data of V-groove workpiece; The three-dimensional point cloud data is subjected to planar segmentation and intersecting line detection to obtain the intersecting lines between every two planes; From the three-dimensional point cloud data, extract multiple adjacent points corresponding to the intersecting straight lines; the adjacent points are points in the three-dimensional point cloud data within a preset range of the intersecting straight lines. Based on the perpendiculars of multiple adjacent points on corresponding intersecting lines, the distance between every two perpendiculars on the intersecting lines is compared to obtain the two target perpendiculars corresponding to the maximum distance; The point on which the target perpendicular lies is identified as the weld feature point of the V-groove workpiece; the weld feature point is the feature point at the weld of the V-groove workpiece.
2. The method according to claim 1, characterized in that, The 3D point cloud data is subjected to planar segmentation and intersecting line detection to obtain the intersecting lines between every two planes, including: The three-dimensional point cloud data is subjected to planar segmentation processing to obtain at least two planes corresponding to the V-shaped bevel workpiece; the at least two planes include at least two of the horizontal plane, the first inclined plane, and the second inclined plane corresponding to the V-shaped bevel workpiece. The intersecting lines between each pair of planes are detected to obtain the intersecting lines; the intersecting lines include at least one of a first line, a second line, and a third line; the first line is the line where the horizontal plane intersects the first inclined plane, the second line is the line where the horizontal plane intersects the second inclined plane, and the third line is the line where the first inclined plane intersects the second inclined plane.
3. The method according to claim 1, characterized in that, From the 3D point cloud data, multiple neighboring points corresponding to the intersecting lines are extracted. Based on the perpendiculars of the multiple neighboring points on the corresponding intersecting lines, the distance between every two perpendiculars on the intersecting lines is compared to obtain the two target perpendiculars corresponding to the maximum distance, including: Detect the distance between each point in the three-dimensional point cloud data and the intersecting straight line; All points in the 3D point cloud data whose distance is less than or equal to a preset distance are considered as the neighboring points; Project each of the adjacent points onto the intersecting line to obtain the foot of the perpendicular of each of the adjacent points on the intersecting line; Determine the distance between each pair of perpendicular feet; By comparing the distances between every two perpendicular feet, the maximum distance is obtained; Obtain the two target perpendicular feet corresponding to the maximum distance.
4. The method according to claim 1, characterized in that, Obtain the 3D point cloud data of the V-groove workpiece, including: Obtain the original three-dimensional point cloud data for the V-shaped bevel workpiece; The original three-dimensional point cloud data is transformed to obtain the actual three-dimensional point cloud data in the coordinate system of the welding robot base. The actual 3D point cloud data is clustered to obtain the 3D point cloud data.
5. The method according to claim 4, characterized in that, Clustering the actual 3D point cloud data to obtain the 3D point cloud data includes: Obtain the value range of the actual 3D point cloud data in a preset dimension; Iterate through each point in the actual 3D point cloud data and determine the value of the point in the preset dimension; the preset dimension is a pre-defined dimension used to indicate the direction towards the ground. Get all points whose values are not within the range of the given values; Filter out all points whose values are not within the range to obtain real 3D point cloud data; The real 3D point cloud data is sampled to obtain sampled 3D point cloud data; Clustering is performed on the sampled 3D point cloud data to obtain spatial noise points and target 3D point cloud data, and the target 3D point cloud data is used as the 3D point cloud data.
6. The method according to claim 4, characterized in that, The original 3D point cloud data is transformed to obtain the actual 3D point cloud data in the base coordinate system of the welding robot, including: Based on the posture matrix of the center point of the welding robot's end tool and the robot's hand-eye matrix, the original three-dimensional point cloud data is transformed to obtain the actual three-dimensional point cloud data in the welding robot's base coordinate system.
7. The method according to claim 1, characterized in that, After identifying the point where the target perpendicular lies on the intersecting straight line as the weld feature point of the V-groove workpiece, the method further includes: Welding is performed on the V-groove workpiece based on the weld feature points of the V-groove workpiece.
8. A weld seam identification device, characterized in that, include: The acquisition module is used to acquire the three-dimensional point cloud data of the V-groove workpiece; The intersecting line detection module is used to perform planar segmentation processing and intersecting line detection on the three-dimensional point cloud data to obtain the intersecting lines between every two planes. The adjacent point extraction module is used to extract multiple adjacent points corresponding to the intersecting lines from the three-dimensional point cloud data; the adjacent points are points in the three-dimensional point cloud data within a preset range of the intersecting lines; The distance comparison module is used to compare the distance between every two perpendiculars on the intersecting lines based on the perpendiculars of multiple adjacent points on the corresponding intersecting lines, and to obtain the two target perpendiculars corresponding to the maximum distance; The weld feature point recognition module is used to identify the point on the intersecting straight line where the target perpendicular is located as the weld feature point of the V-groove workpiece; the weld feature point is the feature point at the weld of the V-groove workpiece.
9. A welding robot, characterized in that, include: One or more processors; A storage device for storing one or more programs that, when executed by one or more processors, cause the welding robot to perform the method as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, It stores computer-readable instructions that, when executed by the computer's processor, cause the computer to perform the method of any one of claims 1 to 7.
Citation Information
Patent Citations
3D curve welding seam autonomous demonstration method for welding robot based on linear structure light perception
CN109514133A
Three-dimensional object segmentation method and device and medium
CN110163863A