A method for identifying the number of bundles of hoisted bars based on three-dimensional point cloud data
Through three-dimensional point cloud data processing and feature extraction, the problem of inconvenient bar counting is solved, accurate bar bundle recognition is achieved, and automation level and efficiency are improved.
Patent Information
- Application Number
- CN202211110667.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-13
- Publication Date
- 2025-08-29
- Estimated Expiration
- 2042-09-13
AI Technical Summary
In the prior art, the bar counting method has problems such as inconvenient manual counting, high safety risks, easy damage to the automated counting equipment and high cost.
The bar lifting bale number identification method based on three-dimensional point cloud data is used to scan the bar through three-dimensional lidar, point cloud data processing and feature extraction are performed to determine the number of bar lifting bale.
Accurate counting has been achieved, the automation level of steel enterprises has been improved, labor costs have been reduced and efficiency has been improved.
Smart Images

Figure CN115542342B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of intelligent metallurgical detection technology, and in particular to a method for identifying the number of hoisted bundles of bars based on three-dimensional point cloud data. Background Art
[0002] Bars are a type of steel with large production and consumption. During the circulation process of rebar steel enterprises, it is necessary to count the bundles of rebars packaged in them. At present, the main method used is manual counting. The manual counting method requires workers to spend a long time on site to count the bundles of bars hoisted by the overhead crane. However, due to the inconvenience of counting in the complex environment on site, it also poses certain hidden dangers to the safety of workers. In addition, workers are prone to counting errors under long working conditions.
[0003] In addition, there are some automated counting methods, such as photoelectric method, radio frequency tag method, photoelectric counting, etc. After long-term use of the hardware, the photoelectric tube in the sensor is prone to aging, needs to be replaced frequently, and the counting effect is not good; although the radio frequency tag counting is very effective, it is very costly. Summary of the Invention
[0004] The present invention provides a method for identifying the number of hoisted bundles of bar materials based on three-dimensional point cloud data, so as to solve the technical problems of poor counting effect and high cost in the prior art.
[0005] In order to solve the above technical problems, the present invention provides the following technical solutions:
[0006] In one aspect, the present invention provides a method for identifying the number of bundles of bar material hoisted based on three-dimensional point cloud data, the method comprising:
[0007] Scan the lifting bar with a 3D laser radar to obtain 3D point cloud data of the lifting bar;
[0008] Processing the scanned three-dimensional point cloud data of the hoisted bar to obtain the identification area of the bar;
[0009] Performing feature extraction on the point cloud data in the recognition area to obtain feature points of the recognition area;
[0010] The number of lifting bundles of bars is determined based on the number of the characteristic points.
[0011] Furthermore, the three-dimensional laser radar is fixed in a laser radar installation box and installed together with the bottom edge of the overhead crane trolley, and the three-dimensional laser radar is connected to the laser radar server;
[0012] The three-dimensional laser radar is used to scan the lifted rods to obtain three-dimensional point cloud data of the lifted rods, including: when lifting the rods, as the trolley moves, the three-dimensional laser radar moves to the rod lifting position, and when the disk completes lifting the rods, the three-dimensional laser radar is started to scan the lifted rods to obtain three-dimensional point cloud data, and the obtained three-dimensional point cloud data is transmitted to the laser radar server; the laser radar server processes the three-dimensional point cloud data obtained by the scan, and finally obtains the number of lifted bundles of rods.
[0013] Furthermore, the three-dimensional point cloud data of the lifted bar obtained by scanning is processed to obtain the identification area of the bar, including:
[0014] Perform coordinate transformation on the scanned 3D point cloud data of the lifted bar, align the laser radar coordinate system of the 3D laser radar with the world coordinate system of the warehouse area, and convert the scanned point cloud dataset ori_data relative to the laser radar coordinate system into the point cloud dataset trans_data relative to the world coordinate system;
[0015] According to the current disk sling center coordinates, the position of the hoisted bar relative to the 3D lidar is determined by the disk x-axis coordinates. The straight-through filter range values in different directions are set, and the point cloud dataset trans_data is straight-through filtered to remove the point clouds far away from the bar area to obtain the point cloud dataset rebar_data.
[0016] Based on the point cloud dataset rebar_data, according to the point cloud features of the hoisted bar, the identification area of the bar is determined, and the point cloud dataset rebar_count_data corresponding to the identification area of the bar is obtained.
[0017] Furthermore, feature extraction is performed on the point cloud data in the recognition area to obtain feature points of the recognition area, including:
[0018] Downsample the point cloud dataset rebar_count_data to obtain the downsampled point cloud dataset;
[0019] Search for feature points in the downsampled point cloud dataset and count the number of feature points.
[0020] Furthermore, based on the point cloud dataset rebar_data, the identification area of the bar is determined according to the point cloud features of the hoisted bar, and the point cloud dataset rebar_count_data corresponding to the identification area of the bar is obtained, including:
[0021] The minimum absolute value of the y-axis direction in rebar_data is the inner edge value y_eg of the identification area;
[0022] Filter the points in rebar_data whose distance from y_eg in the y-axis direction is within the range of cony, and use the filtered points to form the point cloud dataset rebar_data_y. The maximum value in the z-axis direction of rebar_data_y is z_eg, where the value range of cony is 100-200mm;
[0023] Filter the points in rebar_data whose z-axis value is greater than z_eg+conz, and use the filtered points to form the point cloud dataset data_z_f, where the value range of conz is 40-80mm;
[0024] If the point cloud dataset data_z_f is empty, the maximum absolute value of the y-axis direction in rebar_data is recorded as the outer edge value yeg2 of the recognition area. If the point cloud dataset data_z_f is not empty, the minimum absolute value of the y-axis direction in data_z_f is recorded as the outer edge value yeg2 of the recognition area.
[0025] Filter the points in trans_data whose y-axis absolute value is between the outer edge value yeg2 of the recognition area and cony1 to cony2, and whose z-axis value is greater than z_eg+conz1, and use the filtered points to form the point cloud dataset new_data_disk. If new_data_disk is not empty, the x-axis direction values xmin and xmax of the inner and outer edge values of the recognition area are recorded as the minimum and maximum x-axis values of the points in the point cloud dataset new_data_disk. If new_data_disk is empty, the outer edge of the recognition area is recorded. The x-axis direction values of the edge values xmax and xmin are REBAR_X_MAX and REBAR_X_MIN plus or minus an offset. conx1 is the minimum and maximum x-axis direction values of the midpoint of the point cloud dataset new_data_disk. Among them, REBAR_X_MAX and REBAR_X_MIN are the boundary values of the x-axis direction in the pass filter respectively. The value ranges of cony1, cony2, conz1, and conx1 are 900-1000mm, 1000-1100mm, 900-1100mm, and 600-800mm respectively.
[0026] In rebar_data, the inner edge xmin in the x-axis direction is offset inward by xdiff to the outer edge xmax which is offset outward by xdiff, the inner edge y_eg in the y-axis direction is offset outward by ydiff to the outer edge y_eg2 which is offset inward by ydiff, and the area from z_eg-zdiff to z_eg in the height direction is taken as the recognition area of the bar, thereby obtaining the point cloud dataset rebar_count_data corresponding to the recognition area of the bar; among them, the value ranges of xdiff, ydiff, and zdiff are 300-500mm, 80-120mm, and 80-120mm, respectively.
[0027] Furthermore, downsampling the point cloud dataset rebar_count_data includes:
[0028] Sort the point clouds in the point cloud dataset rebar_count_data by their x-axis coordinate values from small to large to obtain the three-dimensional point cloud dataset rebar_count_data_sor;
[0029] Take the minimum value of the x-axis direction in the three-dimensional point cloud dataset rebar_count_data_sort as rebar_box_min, and use the grid BOX_SIZE size as the unit grid. Divide the points in the point cloud dataset rebar_count_data_sort into the corresponding n grids according to the coordinate value in the x-axis direction, and take the coordinate value of each grid in the x-axis direction as rebar_count_min+(i-1) / 2*BOX_SIZE, where BOX_SIZE is 30-60, n is an integer value, i is the grid number, the coordinate value in the z-axis direction is the average of the z-coordinate values of all points in the grid, and the coordinate value in the y-axis direction is 0, and the point cloud dataset rebar is obtained.
[0030] Furthermore, searching for feature points on the downsampled point cloud dataset includes:
[0031] Starting from the third point in the rebar, determine whether the z-axis coordinate of the current point is the minimum of the z-axis coordinates of the two points before and after it. Continue to determine the point n-2, and select the point with the minimum z-axis coordinate between the two points before and after it, where n is the number of points in the rebar.
[0032] The x-axis distance between adjacent points in the points with the minimum z-axis coordinate among the two points before and after is judged and filtered out in sequence. If the distance between adjacent points is less than 200 mm, the next point is deleted and the x-axis distance between adjacent points is re-judged until the distance between adjacent points is not less than 200 mm. Finally, the number of feature points is obtained.
[0033] Furthermore, based on the number of the characteristic points, determining the number of bundles of bars to be hoisted includes:
[0034] After the number of the characteristic points is obtained, the number of hoisted bundles of bars is determined as the number of the characteristic points plus 1.
[0035] On the other hand, the present invention further provides an electronic device, comprising a processor and a memory; wherein the memory stores at least one instruction, and the instruction is loaded and executed by the processor to implement the above method.
[0036] In yet another aspect, the present invention further provides a computer-readable storage medium, wherein the storage medium stores at least one instruction, and the instruction is loaded and executed by a processor to implement the above method.
[0037] The beneficial effects brought about by the technical solution provided by the present invention include at least:
[0038] The present invention provides a method for identifying the number of bundles of hoisted bars based on three-dimensional point cloud data. The method scans the area where the overhead crane hoists the bars on site, uses a projection grid-based method to perform feature analysis on the point cloud of the hoisted bars, and calculates the number of bundles of hoisted bars, with accurate counting. By counting the hoisted bars through three-dimensional laser radar, the automation level of the steel enterprise is effectively improved, labor costs are reduced, and efficiency is increased. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0040] Figure 1 1 is a schematic diagram of the execution flow of a method for identifying the number of bundles of hoisted bars based on three-dimensional point cloud data provided by an embodiment of the present invention;
[0041] Figure 2 is a schematic diagram of a lifting bar provided by an embodiment of the present invention;
[0042] Figure 3 is a schematic diagram of a point cloud of a hoisted bar after calibration provided by an embodiment of the present invention;
[0043] Figure 4 This is a schematic diagram of the point cloud of the lifting bar area after through-filtering provided by an embodiment of the present invention;
[0044] Figure 5 This is a schematic diagram of a point cloud of a lifting bar identification area provided by an embodiment of the present invention;
[0045] Figure 6 It is a schematic diagram of the positions of characteristic points in the lifting rod provided by an embodiment of the present invention.
[0046] Description of reference numerals:
[0047] 1. Overhead crane; 2. 3D laser radar; 3. Hoist; 4. Disk; 5. Rod; 6. Laser radar server. DETAILED DESCRIPTION
[0048] To make the objectives, technical solutions and advantages of the present invention more clear, the embodiments of the present invention will be described in further detail below with reference to the accompanying drawings.
[0049] First embodiment
[0050] This embodiment provides a method for identifying the number of bundles of bar materials hoisted based on three-dimensional point cloud data, which can be implemented by an electronic device. The execution process of the method is as follows: Figure 1 As shown, the following steps are included:
[0051] S1, scanning the lifting bar by a 3D laser radar to obtain 3D point cloud data of the lifting bar;
[0052] Among them, such as Figure 2 As shown, the three-dimensional laser radar 2 is fixed in the laser radar installation box and installed together with the bottom edge of the trolley of the overhead crane 1. The three-dimensional laser radar 2 is connected to the laser radar server 6; when the rods are lifted by the sling 3, as the trolley moves, the three-dimensional laser radar 2 moves to the lifting position of the rod 5. When the disk 4 completes lifting the rod 5, the three-dimensional laser radar 2 is started to scan the lifted rod to obtain three-dimensional point cloud data, and the obtained three-dimensional point cloud data is transmitted to the laser radar server 6; the laser radar server 6 processes the three-dimensional point cloud data obtained by the scan, and finally obtains the number of lifted bundles of rods.
[0053] S2, processing the scanned three-dimensional point cloud data of the lifted bar to obtain a bar recognition area;
[0054] Specifically, the above S2 includes the following steps:
[0055] S21, coordinate transformation: perform coordinate transformation on the three-dimensional point cloud data of the hoisted bar obtained by three-dimensional laser radar scanning, and coincide the laser radar coordinate system of the three-dimensional laser radar with the world coordinate system of the warehouse area, so as to convert the point cloud dataset ori_data relative to the laser radar coordinate system obtained by the three-dimensional laser radar scanning into the point cloud dataset trans_data relative to the world coordinate system; the conversion formula is shown in Equation 1:
[0056] trans_data=T*ori_data (1)
[0057]
[0058] Wherein, T is the coordinate transformation matrix obtained through calibration according to the actual situation on site;
[0059] In this embodiment, the calibrated lifting bar data is as follows: Figure 3 As shown;
[0060] S22, data preprocessing: According to the current disk sling center coordinates (x r ,y r ), through the disk x-axis coordinate x r Determine the position of the hoisted bar relative to the 3D lidar, set the through-filter range values in different directions, perform through-filtering on the point cloud dataset trans_data, and remove point clouds far from the bar area to obtain the point cloud dataset rebar_data. Specifically, the preprocessing process includes the following steps:
[0061] S221, based on the positive or negative y-axis coordinate a of the center of the magnetic disk sling transmitted by the warehouse management system, determine the relative position of the hoisted bar relative to the three-dimensional laser radar;
[0062] S222: Set the retention range values in different directions to perform straight-through filtering on the point cloud data to remove point clouds that are far away from the bar area. The formula is as follows:
[0063]
[0064] Among them, REBAR_X_MIN, REBAR_Y_MAX, REBAR_Y_MIN, REBAR_Y_MAX, REBAR_Z_MIN, and REBAR_Z_MAX are the boundary values of the x, y, and z axes in the pass-through filtering respectively:
[0065] Specifically, in this embodiment, according to the current Y-axis coordinate of the disk sling center transmitted by the warehouse management system, which is 7015.7, it is judged that the lifting bar is on the right side relative to the radar, and REBAR_X_MIN, REBAR_Y_MAX, REBAR_Y_MIN, REBAR_Y_MAX, REBAR_Z_MIN, and REBAR_Z_MAX are set to 1100, 1400, 500, 1100, -2200, and -1000 respectively; thus, the lifting bar data set rebar_data after straight-through filtering is obtained as shown in FIG. Figure 4 shown.
[0066] S23, determining the bar identification area: determining the bar identification area based on the point cloud features of the hoisted bar, and obtaining the point cloud dataset rebar_count_data corresponding to the bar identification area; specifically comprising the following steps:
[0067] S231, record the minimum absolute value of the y-axis direction in the point cloud dataset rebar_data as the inner edge value y_eg of the identification area, the formula is as follows:
[0068]
[0069] Specifically, in this embodiment, y_eg=min(abs(rebar_data(y)))=1425.87;
[0070] S232: Filter the points in rebar_data whose distance from y_eg in the y-axis direction is within the range of cony, and use the filtered points to form the point cloud dataset rebar_data_y. The maximum value in the z-axis direction in rebar_data_y is z_eg. The value range of cony is 100-200 mm. The formula is as follows:
[0071]
[0072] Specifically, in this embodiment, the value of cony is 300 mm; that is:
[0073]
[0074] S233, filter out points in rebar_data whose z-axis direction value is greater than z_eg + conz, and use the filtered points to form the point cloud dataset data_z_f, where the value range of conz is 40-80mm; the formula is as follows:
[0075] data_z_f=rebar_data(x,y,z-z_eg>conz} (7)
[0076] Specifically, in this embodiment, the value of conz is 50 mm;
[0077] S234: If the point cloud dataset data_z_f is empty, the maximum absolute value of the y-axis direction in rebar_data is recorded as the outer edge value yeg2 of the recognition area. If the point cloud dataset data_z_f is not empty, the minimum absolute value of the y-axis direction in data_z_f is recorded as the outer edge value yeg2 of the recognition area. The formula is as follows:
[0078]
[0079] In this embodiment, data_z_f is not empty, so the minimum absolute value of the y-axis direction of the midpoint of data_z_f is recorded as the outer edge value yeg2 of the identification area, as shown in the following formula:
[0080] y_eg2=min(abs(data_z_f))=1938.16 (9)
[0081] S235, filter the points in trans_data whose y-axis absolute value is between cony1 and cony2 from the outer edge value yeg2 of the recognition area and whose z-axis value is greater than z_eg+conz1, and use the filtered points to form the point cloud dataset new_data_disk. If new_data_disk is not empty, the x-axis direction values xmin and xmax of the inner and outer edge values of the recognition area are recorded as the minimum and maximum x-axis direction values of the midpoint of the point cloud dataset new_data_disk. If new_data_disk is empty, the x-axis direction values xmax and xmin of the outer edge value of the recognition area are recorded as REBAR_X_MAX and REBAR_X_MIN plus or minus an offset conx1 as the minimum and maximum x-axis direction values of the midpoint of the point cloud dataset new_data_disk. The formula is as follows:
[0082]
[0083] Among them, the value ranges of cony1, cony2, conz1, and conx1 are 900-1000mm, 1000-1100mm, 900-1100mm, and 600-800mm respectively;
[0084] Specifically, in this embodiment, the values of cony1, cony2, and conz1 are 1000 mm, 1100 mm, and 1000 mm, respectively. In this embodiment, new_data_disk is not empty, and the x-axis direction values xmin and xmax of the inner and outer edge values of the recognition area are the minimum and maximum x-axis directions of the midpoints of the point cloud dataset new_data_disk, as shown in the following formula:
[0085]
[0086] S236: Filter rebar_data, where the inner edge xmin in the x-axis direction is offset inward by xdiff to the outer edge xmax, which is offset outward by xdiffmm; the inner edge y_eg in the y-axis direction is offset outward by ydiffmm to the outer edge y_eg2, which is offset inward by ydiffmm; and the area from z_eg-zdiff to z_egmm in the height direction is taken as the identification area of the bar, thereby obtaining the point cloud dataset rebar_count_data corresponding to the identification area; the formula is as follows:
[0087]
[0088] Among them, the value ranges of xdiff, ydiff, and zdiff are 300-500mm, 80-120mm, and 80-120mm respectively. Specifically, in this embodiment, the values of ydiff, ydiff, xdiff, xdiff, and zdiff are 100mm, 100mm, 700mm, 700mm, and 400mm respectively; rebar_count_data is as follows Figure 5 S3, performing feature extraction on the point cloud data in the recognition area to obtain feature points of the recognition area;
[0089] Specifically, in this embodiment, the above S3 includes the following steps:
[0090] S31, compress data: downsample the dataset rebar_count_data; the specific steps are as follows:
[0091] S311, sorting the point clouds in the point cloud dataset rebar_count_data in ascending order according to the coordinate values in the x-axis direction to obtain a three-dimensional point cloud dataset rebar_count_data_sor;
[0092] S312, take the minimum value of the x-axis direction in the point cloud dataset rebar_count_data_sort as rebar_box_min, take the grid BOX_SIZE size as the unit grid, divide the points in rebar_count_data_sort into corresponding n grids according to the coordinate value in the x-axis direction, take the coordinate value of each grid in the x-axis direction as rebar_count_min+(i-1) / 2*BOX_SIZE, where BOX_SIZE is 30-60, n is an integer value, i is the grid number, the coordinate value in the z-axis direction is the average of the z-coordinate values of all points in the grid, and the coordinate value in the y-axis direction is 0, and the point cloud dataset rebar is obtained; the formula is as follows:
[0093]
[0094] Specifically, in this embodiment, the minimum value in the x-axis direction of the 3D point cloud dataset rebar_count_data_sort is -400.96 mm, and the value of BOX_SIZE is 50 mm, thus obtaining:
[0095]
[0096] S32, feature point search: search for feature points in the point cloud dataset rebar. The specific steps are as follows:
[0097] S321, starting from the third point in the rebar, determine whether the z-axis coordinate of the current point is the minimum of the z-axis coordinates of the two points before and after it, and determine the point with the minimum z-axis coordinate among the i-2 points before and after it, where n is the number of points in the rebar;
[0098] Specifically, in this embodiment, there are three feature points, such as Figure 6 Middle cross position;
[0099] S322, judge in turn the distance in the x-axis direction between adjacent points in the points with the minimum z-axis coordinates among the two points before and after. If the distance between adjacent points is less than 200mm, delete the next point and re-judge the distance in the x-axis direction between adjacent points until the distance between adjacent points is not less than 200mm, and obtain the number of feature points.
[0100] In this embodiment, there are no points whose adjacent distance is less than 200 mm, so the final number of feature points is 3.
[0101] S4, determining the number of bundles of bars to be lifted based on the number of the characteristic points.
[0102] Specifically, in this embodiment, the number of lifted bundles of bars is determined to be the number of feature points plus 1.
[0103] In summary, this embodiment provides a method for identifying the number of hoisted bundles of bars based on three-dimensional point cloud data. Using this method, after the overhead crane completes lifting the bars, the hoisted bars are scanned by a three-dimensional laser radar installed on the overhead crane to obtain a three-dimensional point cloud. The point cloud data of the bar area is obtained through filtering and other methods. Finally, the hoisted bars are counted by performing feature analysis and extraction on the point cloud of the bar area, and the counting is accurate, thereby effectively improving the automation level of the steel enterprise, reducing labor costs, and improving efficiency.
[0104] Second embodiment
[0105] This embodiment provides an electronic device, which includes a processor and a memory; wherein the memory stores at least one instruction, and the instruction is loaded and executed by the processor to implement the method of the first embodiment.
[0106] The electronic device may have relatively large differences due to different configurations or performances, and may include one or more processors (central processing units, CPU) and one or more memories, wherein the memory stores at least one instruction, which is loaded by the processor to execute the above method.
[0107] Third embodiment
[0108] This embodiment provides a computer-readable storage medium storing at least one instruction, which is loaded and executed by a processor to implement the method of the first embodiment described above. The computer-readable storage medium may be a ROM, random access memory, CD-ROM, magnetic tape, floppy disk, or optical data storage device. The instructions stored therein can be loaded by a processor in a terminal to execute the method described above.
[0109] Furthermore, it should be noted that the present invention may be provided as a method, apparatus, or computer program product. Thus, embodiments of the present invention may take the form of entirely hardware embodiments, entirely software embodiments, or embodiments combining software and hardware aspects. Furthermore, embodiments of the present invention may take the form of a computer program product embodied on one or more computer-usable storage media containing computer-usable program code.
[0110] The embodiments of the present invention are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (systems), and computer program products according to the embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, an embedded processor, or other programmable data processing terminal device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing terminal device generate instructions for implementing the process in the flowchart and / or block diagram. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0111] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing terminal device to operate in a specific manner, so that the instructions stored in the computer readable memory produce a manufactured product including an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device, so that a series of operation steps are executed on the computer or other programmable terminal device to produce a computer-implemented process, thereby providing instructions for implementing the process in the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0112] It should also be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or terminal device comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or terminal device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or terminal device comprising the element.
[0113] Finally, it should be noted that the above is a preferred embodiment of the present invention. It should be noted that although the preferred embodiment of the present invention has been described, it is clear that those skilled in the art, once they understand the basic inventive concept of the present invention, can make various improvements and modifications without departing from the principles of the present invention. Such improvements and modifications should also be considered as within the scope of protection of the present invention. Therefore, the appended claims are intended to be interpreted as including the preferred embodiment and all changes and modifications that fall within the scope of the embodiments of the present invention.
Claims
1. A method for identifying the number of bundles of bar material hoisted based on three-dimensional point cloud data, characterized in that: include: Scan the lifting bar with a 3D laser radar to obtain 3D point cloud data of the lifting bar; Processing the scanned three-dimensional point cloud data of the hoisted bar to obtain the identification area of the bar; Performing feature extraction on the point cloud data in the recognition area to obtain feature points of the recognition area; Determining the number of lifting bundles of bars based on the number of the characteristic points; wherein, feature extraction is performed on the point cloud data in the identification area to obtain feature points of the identification area, including: downsampling the point cloud dataset rebar_count_data corresponding to the identification area of the bar to obtain a downsampled point cloud dataset; searching for feature points in the downsampled point cloud dataset and counting the number of feature points; Downsampling the point cloud dataset rebar_count_data includes: sorting the point cloud in the point cloud dataset rebar_count_data in ascending order according to the coordinate value of the x-axis direction to obtain the three-dimensional point cloud dataset rebar_count_data_sort; taking the minimum value of the x-axis direction in the three-dimensional point cloud dataset rebar_count_data_sort as rebar_box_min, taking the grid BOX_SIZE size as the unit grid, dividing the points in the point cloud dataset rebar_count_data_sort into the corresponding n grids according to the coordinate value of the x-axis direction, taking the coordinate value of the x-axis direction of each grid as rebar_count_min+(i-1) / 2*BOX_SIZE, where BOX_SIZE is 30-60, n is an integer value, i is the grid number, the coordinate value of the z-axis direction is the average of the z-coordinate values of all points in the grid, and the coordinate value of the y-axis direction is 0, thereby obtaining the point cloud dataset rebar; The feature point search is performed on the downsampled point cloud dataset, including: starting from the third point in the rebar, judging whether the z-axis coordinate of the current point is the minimum of the z-axis coordinates of the two points before and after it, judging to n-2 points, and screening out the point with the minimum z-axis coordinate among the two points before and after, where n is the number of points in the rebar; successively judging the x-axis distance between adjacent points among the points with the minimum z-axis coordinate among the two points before and after, if the distance between adjacent points is less than 200 mm, deleting the next point and re-judging the x-axis distance between adjacent points until the distance between adjacent points is not less than 200 mm, and finally obtaining the number of feature points.
2. The method for identifying the number of bundles of bars hoisted based on three-dimensional point cloud data according to claim 1, characterized in that: The three-dimensional laser radar is fixed in the laser radar installation box and installed together with the bottom edge of the overhead crane trolley. The three-dimensional laser radar is connected to the laser radar server. The three-dimensional laser radar is used to scan the lifted rods to obtain three-dimensional point cloud data of the lifted rods, including: when lifting the rods, as the trolley moves, the three-dimensional laser radar moves to the rod lifting position, and when the disk completes lifting the rods, the three-dimensional laser radar is started to scan the lifted rods to obtain three-dimensional point cloud data, and the obtained three-dimensional point cloud data is transmitted to the laser radar server; the laser radar server processes the three-dimensional point cloud data obtained by the scan, and finally obtains the number of lifted bundles of rods.
3. The method for identifying the number of bundles of bars hoisted based on three-dimensional point cloud data according to claim 1, characterized in that: The three-dimensional point cloud data of the lifted bar obtained by scanning is processed to obtain the identification area of the bar, including: Perform coordinate transformation on the scanned 3D point cloud data of the lifted bar, align the laser radar coordinate system of the 3D laser radar with the world coordinate system of the warehouse area, and convert the scanned point cloud dataset ori_data relative to the laser radar coordinate system into the point cloud dataset trans_data relative to the world coordinate system; According to the current disk sling center coordinates, the position of the hoisted bar relative to the 3D lidar is determined by the disk x-axis coordinates. The straight-through filter range values in different directions are set, and the point cloud dataset trans_data is straight-through filtered to remove the point clouds far away from the bar area to obtain the point cloud dataset rebar_data. Based on the point cloud dataset rebar_data, according to the point cloud features of the hoisted bar, the identification area of the bar is determined, and the point cloud dataset rebar_count_data corresponding to the identification area of the bar is obtained.
4. The method for identifying the number of bundles of bars hoisted based on three-dimensional point cloud data according to claim 1, characterized in that: The method of determining the identification area of the bar based on the point cloud dataset rebar_data and the point cloud features of the hoisted bar to obtain the point cloud dataset rebar_count_data corresponding to the identification area of the bar includes: The minimum absolute value of the y-axis direction in rebar_data is the inner edge value y_eg of the identification area; Filter the points in rebar_data whose distance from y_eg in the y-axis direction is within the range of cony, and use the filtered points to form the point cloud dataset rebar_data_y. The maximum value in the z-axis direction of rebar_data_y is z_eg, where the value range of cony is 100-200mm; Filter the points in rebar_data whose z-axis value is greater than z_eg+conz, and use the filtered points to form the point cloud dataset data_z_f, where the value range of conz is 40-80mm; If the point cloud dataset data_z_f is empty, the maximum absolute value of the y-axis direction in rebar_data is recorded as the outer edge value yeg2 of the recognition area. If the point cloud dataset data_z_f is not empty, the minimum absolute value of the y-axis direction in data_z_f is recorded as the outer edge value yeg2 of the recognition area. Filter the points in trans_data whose y-axis absolute value is between the outer edge value yeg2 of the recognition area and cony1 to cony2, and whose z-axis value is greater than z_eg+conz1, and use the filtered points to form the point cloud dataset new_data_disk. If new_data_disk is not empty, the x-axis direction values xmin and xmax of the inner and outer edge values of the recognition area are recorded as the minimum and maximum x-axis values of the points in the point cloud dataset new_data_disk. If new_data_disk is empty, the outer edge of the recognition area is recorded. The x-axis direction values of the edge values xmax and xmin are REBAR_X_MAX and REBAR_X_MIN plus or minus an offset. conx1 is the minimum and maximum x-axis direction values of the midpoint of the point cloud dataset new_data_disk. Among them, REBAR_X_MAX and REBAR_X_MIN are the boundary values of the x-axis direction in the pass filter respectively. The value ranges of cony1, cony2, conz1, and conx1 are 900-1000mm, 1000-1100mm, 900-1100mm, and 600-800mm respectively. In the filtered rebar_data, the x-axis coordinates satisfy: xmin is offset inward by xdiff to xmax is offset outward by xdiff, the y-axis coordinates satisfy: y_eg is offset outward by ydiff to yeg2 is offset inward by ydiff, and the height coordinates satisfy: the area from z_eg-zdiff to z_eg is used as the recognition area of the bar, thereby obtaining the point cloud dataset rebar_count_data corresponding to the recognition area of the bar; among them, the value ranges of xdiff, ydiff, and zdiff are 300-500mm, 80-120mm, and 80-120mm, respectively.
5. The method for identifying the number of bundles of bars hoisted based on three-dimensional point cloud data according to claim 1, characterized in that: Determining the number of lifting bundles of bars based on the number of the characteristic points includes: After the number of the characteristic points is obtained, the number of lifted bundles of bars is determined as the number of the characteristic points plus 1.
Citation Information
Patent Citations
Three-dimensional intelligent counting method and system
CN112183707A