Tower crane sling identification methods, identification devices, electronic equipment, and storage media
By preprocessing and progressively deriving the tower crane point cloud data, the starting point of the sling is determined using the coordinates of the luffing trolley, and the sling equation is fitted. This solves the problem of accurately locating the tower crane sling position and enables fast and accurate sling identification and dynamic obstacle avoidance.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- KYLAND TECH CO LTD
- Filing Date
- 2023-11-08
- Publication Date
- 2026-06-30
Smart Images

Figure CN117522964B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of image processing technology, and in particular relates to a method, identification device, electronic device and storage medium for identifying the slings of a tower crane. Background Technology
[0002] During operation, tower cranes need to prevent collisions. There are generally two types of collisions: (1) In the production or construction scenario of a tower group, there are at least two tower cranes, and the tower cranes collide with each other; (2) The crane's boom, slings, hooks and the object being lifted collide with obstacles such as buildings or trees in the surrounding area.
[0003] For scenario (1), since the position of the tower body is fixed, by establishing a unified coordinate system between tower cranes, the luffing position of each luffing trolley and the slewing position of the boom can be obtained. Then, by using network communication to achieve time alignment between tower cranes, the position information of the boom and luffing trolley between tower cranes can be determined in real time, thereby avoiding collisions. For scenario (2), it is difficult to detect the position of components such as slings, hooks, and hoisted objects and their distance from obstacles in real time. In particular, slings have the problem of being thin and long, making it even more difficult to detect and locate them in real time, which makes it difficult to achieve adaptive collision avoidance.
[0004] To address the above issues, relevant technologies generally employ hook positioning methods based on navigation satellite systems (including GPS, BeiDou, etc.) and cameras. This method infers the sling position from the hook, but it is costly, and its positioning accuracy is affected by weather and environmental factors. Alternatively, a LiDAR scan can be used to identify the point cloud of the suspended object area. This point cloud is then combined with the navigation satellite system to determine the hook position, indirectly obtaining the sling point cloud. However, this method also suffers from positioning accuracy issues due to weather and the surrounding environment. Summary of the Invention
[0005] This application aims to address at least one of the technical problems existing in the prior art. To this end, this application proposes a method, identification device, electronic device, and storage medium for identifying the slings of a tower crane, which can quickly, accurately, and in real time automatically extract the sling point cloud.
[0006] Firstly, this application provides a method for identifying the slings of a tower crane, the tower crane including a jib, a luffing trolley mounted on the jib, and slings mounted on the luffing trolley, the method comprising:
[0007] The point cloud of the area where the tower crane is located is preprocessed to obtain point cloud data, wherein the point cloud data is not higher than the vertex of the sling; the coordinate position Q of the luffing trolley is obtained;
[0008] Based on the coordinate position Q of the luffing trolley, the starting point of the upper part of the point cloud of the sling is determined from the point cloud data as the first base point P1;
[0009] The point set surrounding each of the base points is determined from the point cloud data as a candidate point cloud subset of the sling, and the next base point is determined based on the candidate point cloud subset corresponding to the previous base point.
[0010] Based on the relationship between adjacent candidate point cloud subsets, a point cloud subset corresponding to the sling is determined from the candidate point cloud subsets; wherein, the subset of the point cloud corresponding to the sling includes the candidate point cloud subset determined based on the first base point;
[0011] Based on the point cloud subset corresponding to the sling, the point cloud corresponding to the sling is obtained, and based on the point cloud corresponding to the sling, the equation corresponding to the sling is fitted.
[0012] According to the sling identification method provided in the embodiments of this application, the top position of the sling can be directly found from the overall point cloud of the scene by using the coordinates of the luffing trolley. This position is accurate and is not affected by weather or the surrounding environment. Under the premise of accurate starting point, the point cloud subsets are retrieved one by one through step-by-step derivation. Finally, the sling point cloud can be extracted quickly, accurately and in real time, and the requirements of dynamic obstacle avoidance of the point cloud are met.
[0013] According to one embodiment of this application, determining a set of points surrounding each of the base points from the point cloud data as a candidate point cloud subset for the sling, and determining the next base point based on the candidate point cloud subset corresponding to the previous base point, includes:
[0014] Determine the area surrounding the i-th base point P in the point cloud data. i The point set {Q i} as a subset of the candidate point cloud for the sling, based on the point set {Q i The fitted line L is obtained i Based on the point set {Q i} and the straight line L i Determine the (i+1)th base point P i+1 ;i≥1.
[0015] The above method can retrieve the base points used to determine the next candidate point cloud subset while retrieving the next candidate point cloud subset. Through multiple iterations, all candidate point cloud subsets can be found from the point cloud data.
[0016] According to one embodiment of this application, the point set {Q} is used as the basis for... i} and the straight line L i Determine the (i+1)th base point P i+1 ,include:
[0017] The point set {Q i Orthographic projection onto the line L i The resulting line segment l i Among them, line segment l i For line L i The line connecting the projection points at both ends;
[0018] Based on the line segment l i The lower endpoint P i dn The coordinates are used to determine the (i+1)th base point P. i+1 ; where the (i+1)th basic point P i+1 For line L i The upper part is located at the lower endpoint P. i dn Below and at a distance from the lower endpoint P i dn The point of target length s.
[0019] According to one embodiment of this application, the step of determining the i-th base point P in the point cloud data... i The point set {Q i},include:
[0020] The distance from the i-th base point P in the point cloud data is... i The set of all points whose distance is not greater than the target distance r is defined as the point set {Q}. i}
[0021] According to one embodiment of this application, determining the point cloud subset corresponding to the sling in the candidate point cloud subset based on the relationship between adjacent candidate point cloud subsets includes:
[0022] The straight line L obtained by fitting the i-th candidate point cloud subset i The straight line L obtained by fitting the (i+1)th candidate point cloud subset i+1 The included angle θ i In the case of ≤β, the (i+1)th candidate point cloud subset {Q i+1} is determined to be a subset of the point cloud corresponding to the sling; where β is the target angle.
[0023] According to one embodiment of this application, the sling identification method further includes:
[0024] On line L i With line L i+1 The included angle θ i >β, or the (i+1)th candidate point cloud subset {Q i+1 If}=Ø, stop determining the next base point.
[0025] According to one embodiment of this application, determining the starting point of the upper part of the sling point cloud as the first base point P1 from the point cloud data based on the coordinate position Q of the luffing trolley includes:
[0026] The point in the point cloud data that is closest to the coordinate position Q of the luffing trolley is taken as the starting point of the sling and the first base point P1.
[0027] According to one embodiment of this application, the preprocessing of the point cloud of the area where the tower crane is located to obtain point cloud data, wherein the point cloud data is not higher than the vertex of the sling, includes:
[0028] The point cloud data of the area where the tower crane is located is obtained by filtering out noise and removing point clouds with a height greater than the bottom of the crane boom.
[0029] According to one embodiment of this application, obtaining the coordinate position Q of the luffing trolley includes:
[0030] Obtain the luffing value of the luffing trolley, the slewing angle of the boom, and the height of the bottom of the boom;
[0031] The coordinate position Q of the luffing trolley is determined based on the luffing value of the luffing trolley, the slewing angle of the boom, and the height of the bottom of the boom.
[0032] Secondly, this application provides a sling identification device for a tower crane, the tower crane including a jib, a luffing trolley mounted on the jib, and slings mounted on the luffing trolley, the device comprising:
[0033] The acquisition module is used to preprocess the point cloud of the area where the tower crane is located, acquire point cloud data, wherein the point cloud data is not higher than the vertex of the sling; and acquire the coordinate position Q of the luffing trolley.
[0034] The first determining module is used to determine the first base point P1 from the point cloud data based on the coordinate position Q of the luffing trolley.
[0035] The second determining module is used to determine a set of points surrounding each of the base points from the point cloud data as a candidate point cloud subset of the sling, and to determine the next base point based on the candidate point cloud subset corresponding to the previous base point.
[0036] The third determining module is used to determine the point cloud subset corresponding to the sling in the candidate point cloud subset based on the relationship between adjacent candidate point cloud subsets; wherein, the subset of the point cloud corresponding to the sling includes the candidate point cloud subset determined based on the first base point;
[0037] The fourth determining module is used to obtain the point cloud corresponding to the sling based on the point cloud subset corresponding to the sling, and to fit the equation corresponding to the sling based on the point cloud corresponding to the sling.
[0038] According to the tower crane sling identification device of this application, the top position of the sling can be directly found from the overall point cloud of the scene, and the sling point cloud can be automatically extracted quickly, accurately and in real time through step-by-step derivation, and the requirements of dynamic obstacle avoidance of point cloud can be met.
[0039] Thirdly, this application provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the tower crane sling identification method as described in the first aspect above.
[0040] Fourthly, this application provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the tower crane sling identification method as described in the first aspect above.
[0041] Fifthly, this application provides a chip including a processor and a communication interface, the communication interface being coupled to the processor, the processor being used to run programs or instructions to implement the tower crane sling identification method as described in the first aspect.
[0042] In a sixth aspect, this application provides a computer program product, including a computer program that, when executed by a processor, implements the tower crane sling identification method as described in the first aspect above.
[0043] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description
[0044] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the description of the embodiments taken in conjunction with the following drawings, in which:
[0045] Figure 1 This is one of the flowcharts illustrating the tower crane sling identification method provided in the embodiments of this application;
[0046] Figure 2 This is a second schematic flowchart of the tower crane sling identification method provided in the embodiments of this application;
[0047] Figure 3 This is a schematic diagram of the structure of the tower crane sling identification device provided in the embodiments of this application;
[0048] Figure 4This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation
[0049] The technical solutions of the embodiments of this application will be clearly described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application are within the scope of protection of this application.
[0050] The terms "first," "second," etc., used in the specification and claims of this application are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such use of data can be interchanged where appropriate so that embodiments of this application can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first," "second," etc., are generally of the same class and the number of objects is not limited; for example, a first object can be one or more. Furthermore, in the specification and claims, "and / or" indicates at least one of the connected objects, and the character " / " generally indicates that the preceding and following objects are in an "or" relationship.
[0051] The following description, in conjunction with the accompanying drawings, details the tower crane sling identification method, tower crane sling identification device, electronic device, and readable storage medium provided in this application through specific embodiments and application scenarios.
[0052] The tower crane sling identification method can be applied to the terminal, specifically executed by the hardware or software in the terminal.
[0053] The terminal includes, but is not limited to, portable communication devices such as mobile phones or tablets with touch-sensitive surfaces (e.g., touchscreen displays and / or touchpads). It should also be understood that, in some embodiments, the terminal may not be a portable communication device, but rather a desktop computer with touch-sensitive surfaces (e.g., touchscreen displays and / or touchpads).
[0054] The following embodiments describe a terminal including a display and a touch-sensitive surface. However, it should be understood that the terminal may include one or more other physical user interface devices such as a physical keyboard, mouse, and joystick.
[0055] The tower crane sling identification method provided in this application embodiment can be executed by an electronic device or a functional module or entity within an electronic device capable of implementing the tower crane sling identification method. The electronic device mentioned in this application embodiment can be the tower crane's edge controller, or a server connected to the tower crane's edge controller. Alternatively, the electronic device mentioned in this application embodiment includes, but is not limited to, mobile phones, tablets, computers, cameras, and wearable devices. The tower crane sling identification method provided in this application embodiment will be described below using an electronic device as the execution subject as an example.
[0056] Tower cranes, also known as tower hoists, include: tower body, boom, luffing trolley, slings, and hooks.
[0057] The boom is installed on the tower and can move vertically relative to the tower to adjust its height. The boom can also rotate relative to the tower.
[0058] The luffing trolley is mounted on the boom and can move laterally on the boom to adjust the luffing size.
[0059] The upper end of the sling is installed on the luffing trolley, and the lower end is connected to a hook for lifting the load. The sling can be made of steel wire rope, nylon rope, etc.
[0060] like Figure 1 As shown, the method for identifying the slings of the tower crane includes steps 110, 120, 130, 140, and 150.
[0061] Step 110: Preprocess the point cloud of the area where the tower crane is located to obtain point cloud data, and the point cloud data shall not be higher than the apex of the sling; obtain the coordinate position Q of the luffing trolley;
[0062] In actual operation, the area where the tower crane is located can be scanned by LiDAR to obtain the point cloud of the area. The point cloud in this scenario can include the point cloud corresponding to the tower body, the point cloud corresponding to the boom, the point cloud corresponding to the luffing trolley, the point cloud corresponding to the sling, the point cloud corresponding to the hook, the point cloud corresponding to the suspended object, and the point cloud corresponding to the obstacle.
[0063] The point cloud is preprocessed to remove the point cloud data of other structures above the vertices of the suspension cable, resulting in point cloud data for subsequent processing steps.
[0064] The coordinate position Q of the luffing trolley can be calculated in real time based on the mechanical structure of the tower crane. The upper end of the sling is installed on the luffing trolley, and the coordinate position Q of the luffing trolley is equivalent to the position of the suspension point of the sling.
[0065] Step 120: Based on the coordinate position Q of the luffing trolley, determine the starting point of the upper part of the point cloud of the sling as the first base point P1 from the point cloud data;
[0066] This step is used to determine the starting point for determining the upper part of the sling point cloud from the point cloud data, and to use this starting point as the first base point P1. Since the coordinate position Q of the luffing trolley is equivalent to the position of the sling suspension point, that is, the known point Q is close to the vertex of the sling, the first base point P1 can be determined from the point cloud data through the known point Q.
[0067] Step 130: Determine the point set surrounding each base point from the point cloud data as a candidate point cloud subset for the sling, and determine the next base point based on the candidate point cloud subset corresponding to the previous base point;
[0068] In step 120, the starting point of the point cloud above the sling is determined as the first base point P1. In step 130, the set of points surrounding the first base point P1 is determined from the point cloud data as a candidate point cloud subset of the sling. The second base point P2 is determined from the candidate point cloud subset corresponding to the first base point P1.
[0069] Then, the above steps can be repeated for the second base point to determine the set of points surrounding the second base point P2 from the point cloud data, which will be used as a candidate point cloud subset for the sling. The third base point will then be determined from the candidate point cloud subset corresponding to the second base point P2.
[0070] The above steps can then be repeated for the third base point.
[0071] The above steps can be performed multiple times until the latest candidate point cloud subset is an empty set, or until the latest candidate point cloud subset cannot be used as the point cloud subset corresponding to the sling after the judgment in step 140.
[0072] In this step, the point set surrounding each base point is determined from the point cloud data, which can be achieved by performing cluster analysis on the point cloud data.
[0073] Step 140: Based on the relationship between adjacent candidate point cloud subsets, determine the point cloud subset corresponding to the sling in the candidate point cloud subset; wherein, the subset of the point cloud corresponding to the sling includes the candidate point cloud subset determined based on the first base point;
[0074] In this step, the relationship between the current candidate point cloud subset and the previous candidate point cloud subset is used to determine whether the current candidate point cloud subset is the point cloud subset corresponding to the suspension cable. The candidate point cloud subset determined by the first base point is directly used as the subset of the point cloud corresponding to the suspension cable. The previous candidate point cloud subset must be determined as a subset of the point cloud corresponding to the suspension cable before it can be used to determine whether the current candidate point cloud subset is the subset of the point cloud corresponding to the suspension cable.
[0075] In practice, the relationship between the candidate point cloud subset determined by the second base point and the candidate point cloud subset determined by the first base point is used to determine whether the candidate point cloud subset determined by the second base point is the point cloud subset corresponding to the sling. If the candidate point cloud subset determined by the second base point is determined to be the point cloud subset corresponding to the sling, the relationship between the candidate point cloud subset determined by the third base point and the candidate point cloud subset determined by the second base point is used to determine whether the candidate point cloud subset determined by the third base point is the point cloud subset corresponding to the sling.
[0076] The relationship between adjacent candidate point cloud subsets can be determined by calculating the angle between the lines fitted to each adjacent candidate point cloud subset, or by calculating the collinearity of points on adjacent candidate point cloud subsets.
[0077] Step 150: Based on the point cloud subset corresponding to the suspension cable, obtain the point cloud corresponding to the suspension cable, and fit the equation corresponding to the suspension cable based on the point cloud corresponding to the suspension cable.
[0078] The union of the subsets that meet the conditions obtained above is used to obtain the point cloud corresponding to the suspension cable. The line equation is obtained by fitting the point cloud corresponding to the suspension cable, which is the equation corresponding to the suspension cable.
[0079] According to the sling identification method provided in the embodiments of this application, the top position of the sling can be directly found from the overall point cloud of the scene by using the coordinates of the luffing trolley. This position is accurate and is not affected by weather or the surrounding environment. Under the premise of accurate starting point, the point cloud subsets are retrieved one by one through step-by-step derivation. Finally, the sling point cloud can be extracted quickly, accurately and in real time, and the requirements of dynamic obstacle avoidance of the point cloud are met.
[0080] In some embodiments, step 110, preprocessing the point cloud of the area where the tower crane is located to obtain point cloud data, wherein the point cloud data is not higher than the vertex of the sling, includes:
[0081] Noise is filtered out from the point cloud of the area where the tower crane is located, and point clouds with a height greater than the bottom of the crane boom are removed to obtain point cloud data.
[0082] In this implementation, noise and outlier points need to be filtered out from the point cloud of the area where the tower crane is located. The point cloud above the crane boom is filtered out according to the height H of the bottom of the boom, leaving points with a height no greater than H. This removes the point cloud of the remaining structure above the sling, and obtains point cloud data for subsequent processing steps.
[0083] There are various methods for noise and outlier removal, including but not limited to: distance-based denoising methods, normal vector-based denoising methods, clustering-based denoising methods, statistical analysis-based denoising methods, or machine learning-based denoising methods.
[0084] The height H at the bottom of the boom can be collected by the tower crane's own sensors or by external sensors.
[0085] The above method can easily remove point clouds above the vertices of the suspension cable with minimal computation.
[0086] In some embodiments, step 110, obtaining the coordinate position Q of the luffing trolley, includes:
[0087] Obtain the luffing value of the luffing trolley, the slewing angle of the boom, and the height of the bottom of the boom;
[0088] The coordinate position Q of the luffing trolley is determined based on the luffing value, the slewing angle of the boom, and the height of the bottom of the boom.
[0089] Understandably, the coordinate position Q of the luffing trolley can be determined using the following formula:
[0090] ,
[0091] Where (x, y, z) are the spatial rectangular coordinates of the coordinate position Q, R is the luffing value of the luffing trolley, α is the slewing angle of the boom, and H is the height of the bottom of the boom. R, α, and H can be obtained directly from the edge controller of the tower crane.
[0092] The above method does not require additional sensor equipment and the calculation process is simple.
[0093] In some embodiments, step 120, determining the first base point P1 from the point cloud data based on the coordinate position Q of the luffing trolley, includes:
[0094] The point in the point cloud data that is closest to the coordinate position Q of the luffing trolley is taken as the first base point P1 for finding the sling.
[0095] In practice, the distance from each point in the point cloud data to the coordinate position Q is calculated. The point with the smallest distance is used as the starting point for finding the upper part of the sling point cloud, and this point is also used as the first base point P1. The distance from each point in the point cloud data to the coordinate position Q can be expressed in Euclidean distance.
[0096] In some embodiments, step 130, determining a set of points surrounding each base point from the point cloud data as a candidate point cloud subset for the sling, and determining the next base point based on the candidate point cloud subset corresponding to the previous base point, includes:
[0097] Determine the location around the i-th base point P in the point cloud data. i The point set {Q i} as a candidate point cloud subset for the suspension cable, based on the point set {Qi The fitted line L is obtained i Based on the point set {Q i} and line L i Determine the (i+1)th base point P i+1 ; i≥1, i is an integer.
[0098] Starting from i=1, repeat the process multiple times until the latest candidate point cloud subset is an empty set, or until the latest candidate point cloud subset, after being judged in step 140, cannot be used as the point cloud subset corresponding to the suspension cable.
[0099] In this step, the point set {Q} i Let} be the i-th base point P in the point cloud data. i The set of nearby points, the i-th base point P i The nearby point set {Q i} can be considered as a subset of the candidate point cloud for the suspension cable.
[0100] The point set {Q i The fitted line L is obtained i This can be achieved in various ways, including but not limited to least squares, RANSAC algorithm, or deep learning-based methods.
[0101] straight line L i The equation is as follows:
[0102]
[0103] Where (x, y, z) is the line L i The coordinates of any point on the line L are (x0, y0, z0). i The coordinates of a known point on the [plane / the surface]. For line L i The direction vector.
[0104] Based on the point set {Q i The fitted straight line L i It can also help determine the next foundation point P. i+1 The next basic point P i+1 The nearby point set {Q i+1 This can also be viewed as a subset of candidate point clouds for the sling, and by looping through it, all candidate point cloud subsets for the sling can be gradually searched from the point cloud data.
[0105] For example, in point cloud data, determine the point set {Q1} corresponding to the first basic point P1, fit a straight line L1 based on the point set {Q1}, and determine the second basic point P2 based on the point set {Q1} and the straight line L1; in point cloud data, determine the point set {Q2} corresponding to the second basic point P2, fit a straight line L2 based on the point set {Q2}, and determine the third basic point P3 based on the point set {Q2} and the straight line L2.
[0106] In other words, we first assume the equation of the line adjacent to the suspension cable of line L1, then find the second base point P2 on line L1 to help search the next point set {Q2}; thus, the i-th base point P... i Nearby point set {Q i As a subset of candidate point clouds for slings, it can help to quickly and accurately find the point cloud of slings.
[0107] The above method can retrieve the base points used to determine the next candidate point cloud subset while retrieving the next candidate point cloud subset. Through multiple iterations, all candidate point cloud subsets can be found from the point cloud data.
[0108] In some embodiments, the step of determining the i-th base point P in the point cloud data i The point set {Q i},include:
[0109] The distance from the i-th base point P in the point cloud data i The set of all points whose distance is not greater than the target distance r is defined as the point set {Q}. i}
[0110] In other words, {Q i Let} be the i-th base point P in the point cloud data. i The set of nearby points.
[0111] Searching for P using radius r as the distance threshold i The set of n points near a given point is denoted as {Q}. i}, {Q i} represents a subset of the candidate point cloud for the sling. The target distance r is a parameter related to the point cloud density, which can be determined based on the point cloud density in actual execution. n is an indeterminate integer.
[0112] The first base point P1 is near the vertex of the sling; the other base points P... i All points are determined from the straight line equation L1 of the adjacent suspension cables. Therefore, the i-th base point P... i Nearby point set {Q i As a subset of candidate point clouds for slings, it can help to quickly and accurately find the point cloud of slings.
[0113] In some embodiments, step 130, based on the point set {Q i} and line L i Determine the (i+1)th base point P i+1 ,include:
[0114] The point set {Q i Orthographic projection onto line L i The resulting line segment l i Among them, line segment l i For line L i The line connecting the projection points at both ends;
[0115] Based on line segment l i The lower endpoint P i dn The coordinates are used to determine the (i+1)th base point P. i+1 ; where the (i+1)th base point P i+1 For line L i The upper part is located at the lower endpoint P. i dn Below and at a distance from the lower endpoint P i dn The point of target length s.
[0116] It is understandable that the point set {Q} i The set of points {Q} includes multiple points. i Each point in} is orthographically projected onto line L i Multiple projection points are obtained from the above, and line segment l is formed. i For the line segment l connecting the two ends of these projection points, the line segment is... i With lower endpoint P i dn .
[0117] straight line L i The equation is as follows:
[0118]
[0119] Where (x, y, z) is the line L i The coordinates of any point on the line L are (x0, y0, z0). i The coordinates of a known point on the [plane / the surface]. For line L i The direction vector points to the bottom, and k is a real number representing the direction of the vector. In vector The projection onto the surface, k is calculated as follows:
[0120]
[0121] Lower endpoint P idn The formula is as follows:
[0122]
[0123] Where, k i For the point set {Q i Projected onto line L i The maximum value in the set {k} obtained above.
[0124] The (i+1)th base point P i+1 The formula is as follows:
[0125]
[0126] The above method for determining the next base point uses a step-by-step iterative approach, which can reduce the error in finding the point and is highly efficient with a small computational load.
[0127] In some implementations, step 140, determining the point cloud subset corresponding to the sling within the candidate point cloud subset based on the relationship between adjacent candidate point cloud subsets, includes:
[0128] The straight line L obtained by fitting the i-th candidate point cloud subset i The straight line L obtained by fitting the (i+1)th candidate point cloud subset i+1 The included angle θ i In the case of ≤β, the (i+1)th candidate point cloud subset {Q i+1} is determined as a subset of the point cloud corresponding to the sling; where β is the target angle.
[0129] The points in the first point set {Q1} are those near the first base point P1. Therefore, the first point set {Q1} is the point cloud of the upper part of the sling, that is, a subset of the point cloud corresponding to the sling. The other point sets {Q... i+1 If a point cloud is to be considered as a candidate subset of the point cloud, then the angle between two adjacent lines needs to be used to determine whether it is a subset of the point cloud corresponding to the suspension cable.
[0130] straight line L i With line L i+1 The included angle θ i Determined by the following formula:
[0131]
[0132] The target angle β can be determined based on requirements. The smaller the target angle β is set, the higher the accuracy of the point cloud corresponding to the sling will be, but it may result in a smaller data volume of the point cloud corresponding to the sling. The larger the target angle β is set, the lower the accuracy of the point cloud corresponding to the sling will be, but the larger the data volume of the point cloud corresponding to the sling will be.
[0133] By comparing adjacent i-th straight lines L i With the (i+1)th straight line L i+1 The degree of collinearity can be used to quickly determine whether the (i+1)th candidate point cloud subset is the point cloud subset corresponding to the suspension cable.
[0134] In some embodiments, the sling identification method may further include:
[0135] On line L i With line L i+1 The included angle θ i >β, or {Q i+1 If}=Ø, stop determining the next base point.
[0136] In other words, on the newly determined straight line L i+1 If the angle between the point cloud and the previous line is too large or no new candidate point cloud subset can be retrieved, stop searching for candidate point clouds from the point cloud data.
[0137] The following is for reference. Figure 2 This application describes a sling identification method provided in its embodiments.
[0138] like Figure 2 As shown, the sling identification method includes steps 201, 202, 203, 204, 205, 206, 207, and 208.
[0139] Step 201: Point cloud preprocessing and luffing trolley coordinate calculation;
[0140] Noise is filtered out from the point cloud of the area where the tower crane is located, and point clouds with a height greater than the bottom of the crane boom are removed to obtain point cloud data.
[0141] In this implementation, noise and outlier points need to be filtered out from the point cloud of the area where the tower crane is located. The point cloud above the crane boom is filtered out according to the height H of the bottom of the boom, leaving points with a height no greater than H. This removes the point cloud of the remaining structure above the sling, and obtains point cloud data for subsequent processing steps.
[0142] The coordinate position Q of the luffing trolley is determined by the following formula:
[0143] ,
[0144] Where (x, y, z) are the spatial rectangular coordinates of the coordinate position Q, R is the luffing value of the luffing trolley, α is the slewing angle of the boom, and H is the height of the bottom of the boom. R, α, and H can be obtained directly from the edge controller of the tower crane.
[0145] Step 202: Determine the starting point of the sling and designate it as the foundation point P1;
[0146] Calculate the distance from each point in the point cloud data to the coordinate position Q, and take the point with the smallest distance as the starting point for finding the sling vertex point cloud and the first base point P1. The distance from each point in the point cloud data to the coordinate position Q can be Euclidean distance.
[0147] Step 203: Based on the base point P1, search the point cloud subset {Q1} of the sling, fit the straight line L1, and determine the lower endpoint P. 1 dn ;
[0148] Using a radius r as a distance threshold, search for n points near point P1 in the point cloud data, forming a point set denoted as {Q1}. Point set {Q1} is a subset of the point cloud of the suspension cable, used to represent the point cloud of the cable vertices. The target distance r is a parameter related to the point cloud density, which can be determined based on the point cloud density in actual execution. n is an indeterminate integer.
[0149] Fitting the point set {Q1} yields the line L1, whose equation is as follows:
[0150]
[0151] Where (x, y, z) are the coordinates of any point on line L1, and (x0, y0, z0) are the coordinates of a known point on line L1. Let k be the direction vector of line L1, pointing towards the bottom surface, and k be a real number representing the vector. In vector The projection onto the surface, k is calculated as follows:
[0152]
[0153] Projecting the point set {Q1} orthogonally onto the line L1, we obtain line segment l1, and the lower endpoint P of line segment l1 is... 1 dn The formula is as follows:
[0154]
[0155] Where k1 is the maximum value in the set {k} obtained by projecting the point set {Q1} onto the line L1.
[0156] Step 204, based on the lower endpoint P 1 dn The base point P2 is used to search for a candidate point cloud subset {Q2} for the sling, fit a straight line L2, and determine the lower endpoint P. 2 dn ;
[0157] With P 1 dnStarting from point P1 and with a step size of s, calculate the point P2 located at the lower end of line L1. The formula for the base point P2 is as follows:
[0158]
[0159] Search for n points near point P2 with radius r as the distance threshold, and denote the point set as {Q2}. Fit the point set {Q2} to obtain the line L2. Project the point set {Q2} orthographically onto the line L2 to obtain the line segment l2, and obtain the lower endpoint P of the line segment l2. 2 dn .
[0160] The direction vector of line L2 is .
[0161] Step 205: Determine whether the angle θ1 between L1 and L2 is ≤ β;
[0162] The angle θ1 between lines L1 and L2 is determined by the following formula:
[0163]
[0164] β is the set target angle, which is a threshold.
[0165] Step 206: When θ1≤β, the candidate point cloud subset {Q2} is taken as the point cloud subset of the suspension cable;
[0166] Repeat steps 204 and 205 to determine a new candidate point cloud subset {Q2}, in θ i >β, or {Q i+1 If}=Ø, terminate the search.
[0167] Step 207: Fit the point cloud {Q} of the suspension cable to obtain the equation of the suspension cable;
[0168] Step 208: Identify other slings in the remaining point cloud.
[0169] Extract the point cloud containing any possible suspension cables from the remaining point cloud. Repeat steps 202-207 in the point cloud {Q} that does not contain the previous suspension cable.
[0170] The tower crane sling identification method provided in this application can be executed by a tower crane sling identification device. This application uses a tower crane sling identification device executing the tower crane sling identification method as an example to illustrate the tower crane sling identification device provided in this application.
[0171] This application also provides a sling identification device for a tower crane, the tower crane including a boom, a luffing trolley installed on the boom, and slings installed on the luffing trolley.
[0172] like Figure 3 As shown, the sling identification device of the tower crane includes: an acquisition module 310, a first determination module 320, a second determination module 330, a third determination module 340, and a fourth determination module 350.
[0173] The acquisition module 310 is used to preprocess the point cloud of the area where the tower crane is located, acquire point cloud data, wherein the point cloud data is not higher than the vertex of the sling; and acquire the coordinate position Q of the luffing trolley.
[0174] The first determining module 320 is used to determine the first base point P1 from the point cloud data based on the coordinate position Q of the luffing trolley.
[0175] The second determining module 330 is used to determine the point set around each base point from the point cloud data as a candidate point cloud subset for the sling, and to determine the next base point based on the candidate point cloud subset corresponding to the previous base point.
[0176] The third determining module 340 is used to determine the point cloud subset corresponding to the sling in the candidate point cloud subset based on the relationship between adjacent candidate point cloud subsets; wherein, the subset of the point cloud corresponding to the sling includes the candidate point cloud subset determined based on the first base point;
[0177] The fourth determination module 350 is used to obtain the point cloud corresponding to the sling based on the point cloud subset corresponding to the sling, and to fit the equation corresponding to the sling based on the point cloud corresponding to the sling.
[0178] According to the sling identification device provided in the embodiments of this application, the top position of the sling can be directly found from the overall point cloud of the scene by using the coordinates of the luffing trolley. The position is accurate and is not affected by the weather or the surrounding environment. Under the premise of accurate starting point, the point cloud subsets are retrieved one by one through step-by-step deduction. Finally, the sling point cloud can be extracted quickly, accurately and in real time, and the requirements of dynamic obstacle avoidance of the point cloud are met.
[0179] In some embodiments, the second determining module 330 is further configured to determine, in the point cloud data, the area surrounding the i-th base point P. i The point set {Q i} as a candidate point cloud subset for the suspension cable, based on the point set {Q i The fitted line L is obtained i Based on the point set {Q i} and line L i Determine the (i+1)th base point P i+1 ;i≥1.
[0180] In some embodiments, the second determining module 330 is further configured to determine the point set {Q} i Orthographic projection onto line L i The resulting line segment l iAmong them, line segment l i For line L i The line connecting the projection points at both ends; based on line segment l i The lower endpoint P i dn The coordinates are used to determine the (i+1)th base point P. i+1 ; where the (i+1)th base point P i+1 For line L i The upper part is located at the lower endpoint P. i dn Below and at a distance from the lower endpoint P i dn The point of target length s.
[0181] In some embodiments, the second determining module 330 is further configured to determine the distance from the i-th base point P in the point cloud data. i The set of all points whose distance is not greater than the target distance r is defined as the point set {Q}. i}
[0182] In some embodiments, the third determining module 340 is further configured to fit the straight line L obtained from the i-th candidate point cloud subset. i The straight line L obtained by fitting the (i+1)th candidate point cloud subset i+1 The included angle θ i In the case of ≤β, the (i+1)th candidate point cloud subset {Q i+1} is determined as a subset of the point cloud corresponding to the sling; where β is the target angle.
[0183] In some embodiments, the third determining module 340 is further configured to determine the line L i With line L i+1 The included angle θ i >β, or the (i+1)th candidate point cloud subset {Q i+1 If}=Ø, stop determining the next base point.
[0184] In some embodiments, the first determining module 320 is further configured to take the point in the point cloud data that is closest to the coordinate position Q of the luffing trolley as the starting point of the sling and the first base point P1.
[0185] In some embodiments, the acquisition module 310 is further configured to perform noise filtering on the point cloud of the area where the tower crane is located, and remove point clouds with a height greater than the bottom of the crane boom, to obtain point cloud data.
[0186] In some embodiments, the acquisition module 310 is further configured to acquire the luffing value of the luffing trolley, the slewing angle of the boom, and the height of the bottom of the boom; and determine the coordinate position Q of the luffing trolley based on the luffing value of the luffing trolley, the slewing angle of the boom, and the height of the bottom of the boom.
[0187] The sling identification device for the tower crane in this embodiment can be an electronic device or a component of an electronic device, such as an integrated circuit or a chip. The electronic device can be a terminal or other devices besides a terminal. For example, the electronic device can be a mobile phone, tablet computer, laptop computer, PDA, in-vehicle electronic device, mobile internet device (MID), augmented reality (AR) / virtual reality (VR) device, robot, wearable device, ultra-mobile personal computer (UMPC), netbook, or personal digital assistant (PDA), etc. It can also be a server, network attached storage (NAS), personal computer (PC), television (TV), ATM, or self-service machine, etc. This embodiment does not specifically limit the specific type of device.
[0188] The tower crane sling identification device in this embodiment can be a device with an operating system. This operating system can be a Microsoft (Windows) operating system, a Linux operating system, an iOS operating system, or other possible operating systems; this embodiment does not specifically limit the specific operating system.
[0189] The tower crane sling identification device provided in this application embodiment can achieve... Figures 1 to 2 The various processes implemented in the method implementation examples will not be described again here to avoid repetition.
[0190] In some embodiments, such as Figure 4 As shown, this application embodiment also provides an electronic device 400, including a processor 401, a memory 402, and a computer program stored in the memory 402 and executable on the processor 401. When the program is executed by the processor 401, it implements the various processes of the above-described tower crane sling identification method embodiment and can achieve the same technical effect. To avoid repetition, it will not be described again here.
[0191] It should be noted that the electronic devices in the embodiments of this application include the mobile electronic devices and non-mobile electronic devices described above.
[0192] This application also provides a non-transitory computer-readable storage medium storing a computer program. When the computer program is executed by a processor, it implements the various processes of the above-described tower crane sling identification method embodiment and achieves the same technical effect. To avoid repetition, it will not be described again here.
[0193] The processor is the processor in the electronic device described in the above embodiments. The readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk.
[0194] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described tower crane sling identification method.
[0195] The processor is the processor in the electronic device described in the above embodiments. The readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk.
[0196] This application embodiment also provides a chip, which includes a processor and a communication interface. The communication interface is coupled to the processor. The processor is used to run programs or instructions to implement the various processes of the above-described tower crane sling identification method embodiment and achieve the same technical effect. To avoid repetition, it will not be described again here.
[0197] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.
[0198] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element. Furthermore, it should be noted that the scope of the methods and apparatuses in the embodiments of this application is not limited to performing functions in the order shown or discussed, but may also include performing functions substantially simultaneously or in the reverse order, depending on the functions involved. For example, the described methods may be performed in a different order than described, and various steps may be added, omitted, or combined. Additionally, features described with reference to certain examples may be combined in other examples.
[0199] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a computer software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of this application.
[0200] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.
[0201] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "illustrative embodiment," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.
[0202] Although embodiments of this application have been shown and described, those skilled in the art will understand that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of this application, the scope of which is defined by the claims and their equivalents.
Claims
1. A method for identifying the slings of a tower crane, the tower crane comprising a jib, a luffing trolley mounted on the jib, and slings mounted on the luffing trolley, characterized in that, The method includes: The point cloud of the area where the tower crane is located is preprocessed to obtain point cloud data, wherein the point cloud data is not higher than the vertex of the sling; the coordinate position Q of the luffing trolley is obtained; Based on the coordinate position Q of the luffing trolley, the starting point of the upper part of the point cloud of the sling is determined from the point cloud data as the first base point P1; The point set surrounding each of the base points is determined from the point cloud data as a candidate point cloud subset for the sling, and the next base point is determined based on the candidate point cloud subset corresponding to the previous base point, including determining the point set surrounding the i-th base point P from the point cloud data. i The point set {Q i } as a subset of the candidate point cloud for the sling, based on the point set {Q i The fitted line L is obtained i Based on the point set {Q i } and the straight line L i Determine the (i+1)th base point P i+1 ; i≥1; the point set {Q} i } and the straight line L i Determine the (i+1)th base point P i+1 This includes: setting the point set {Q} i Orthographic projection onto the line L i The resulting line segment l i Among them, line segment l i For line L i The line connecting the projection points at both ends; based on the line segment l i The lower endpoint P i dn The coordinates are used to determine the (i+1)th base point P. i+1 ; where the (i+1)th basic point P i+1 For line L i The upper part is located at the lower endpoint P. i dn Below and at a distance from the lower endpoint P i dn A point with a target length of s; Based on the relationship between adjacent candidate point cloud subsets, a point cloud subset corresponding to the sling is determined in the candidate point cloud subset; wherein, the subset of the point cloud corresponding to the sling includes the candidate point cloud subset determined based on the first base point, and the relationship between adjacent candidate point cloud subsets is determined by calculating the angle between the straight lines fitted by each adjacent candidate point cloud subset or by calculating the collinearity of points on adjacent candidate point cloud subsets. Based on the point cloud subset corresponding to the sling, the point cloud corresponding to the sling is obtained, and based on the point cloud corresponding to the sling, the equation corresponding to the sling is fitted.
2. The sling identification method according to claim 1, characterized in that, The point cloud data is used to determine the orbit around the i-th base point P. i The point set {Q i },include: The distance from the i-th base point P in the point cloud data is... i The set of all points whose distance is not greater than the target distance r is defined as the point set {Q}. i } 3. The sling identification method according to claim 1, characterized in that, The step of determining the point cloud subset corresponding to the sling within the candidate point cloud subset based on the relationship between adjacent candidate point cloud subsets includes: The straight line L obtained by fitting the i-th candidate point cloud subset i The straight line L obtained by fitting the (i+1)th candidate point cloud subset i+1 The included angle θ i In the case of ≤β, the (i+1)th candidate point cloud subset {Q i+1 } is determined to be a subset of the point cloud corresponding to the sling; where β is the target angle.
4. The sling identification method according to claim 3, characterized in that, Also includes: In the straight line L i With the straight line L i+1 The included angle θ i >β, or the (i+1)th candidate point cloud subset {Q i+1 If}=Ø, stop determining the next base point.
5. The sling identification method according to claim 1, characterized in that, The step of determining the starting point of the upper part of the sling point cloud as the first base point P1 from the point cloud data based on the coordinate position Q of the luffing trolley includes: The point in the point cloud data that is closest to the coordinate position Q of the luffing trolley is taken as the starting point of the sling and the first base point P1.
6. The sling identification method according to any one of claims 1-5, characterized in that, The preprocessing of the point cloud in the area where the tower crane is located to obtain point cloud data, wherein the point cloud data is no higher than the vertex of the sling, includes: The point cloud data of the area where the tower crane is located is obtained by filtering out noise and removing point clouds with a height greater than the bottom of the crane boom.
7. The sling identification method according to any one of claims 1-5, characterized in that, Obtaining the coordinate position Q of the luffing trolley includes: Obtain the luffing value of the luffing trolley, the slewing angle of the boom, and the height of the bottom of the boom; The coordinate position Q of the luffing trolley is determined based on the luffing value of the luffing trolley, the slewing angle of the boom, and the height of the bottom of the boom.
8. A sling identification device for a tower crane, the tower crane comprising a jib, a luffing trolley mounted on the jib, and slings mounted on the luffing trolley, characterized in that, The device includes: The acquisition module is used to preprocess the point cloud of the area where the tower crane is located, acquire point cloud data, wherein the point cloud data is not higher than the vertex of the sling; and acquire the coordinate position Q of the luffing trolley. The first determining module is used to determine the first base point P1 from the point cloud data based on the coordinate position Q of the luffing trolley. The second determining module is used to determine a set of points surrounding each of the base points from the point cloud data as a candidate point cloud subset for the sling, and to determine the next base point based on the candidate point cloud subset corresponding to the previous base point, including determining the points surrounding the i-th base point P from the point cloud data. i The point set {Q i } as a subset of the candidate point cloud for the sling, based on the point set {Q i The fitted line L is obtained i Based on the point set {Q i } and the straight line L i Determine the (i+1)th base point P i+1 ; i≥1; the point set {Q} i } and the straight line L i Determine the (i+1)th base point P i+1 This includes: setting the point set {Q} i Orthographic projection onto the line L i The resulting line segment l i Among them, line segment l i For line L i The line connecting the projection points at both ends; based on the line segment l i The lower endpoint P i dn The coordinates are used to determine the (i+1)th base point P. i+1 ; where the (i+1)th basic point P i+1 For line L i The upper part is located at the lower endpoint P. i dn Below and at a distance from the lower endpoint P i dn A point with a target length of s; The third determining module is used to determine the point cloud subset corresponding to the sling in the candidate point cloud subset based on the relationship between adjacent candidate point cloud subsets; wherein, the subset of the point cloud corresponding to the sling includes the candidate point cloud subset determined based on the first base point, and the relationship between adjacent candidate point cloud subsets is determined by calculating the angle between the straight lines fitted by each adjacent candidate point cloud subset or by calculating the collinearity of points on adjacent candidate point cloud subsets. The fourth determining module is used to obtain the point cloud corresponding to the sling based on the point cloud subset corresponding to the sling, and to fit the equation corresponding to the sling based on the point cloud corresponding to the sling.
9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the sling identification method as described in any one of claims 1-7.
10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When executed by a processor, the computer program implements the sling identification method as described in any one of claims 1-7.
11. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the sling identification method as described in any one of claims 1-7.