Lidar positioning method, system, electronic device, and storage medium
By constructing and matching the feature set and global coordinate set in the LiDAR scan image, the feature extraction of the marker is simplified, and the positioning accuracy and efficiency of LiDAR in high dynamic scenes are improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ZHEJIANG GUOZI ROBOT TECH
- Filing Date
- 2022-12-16
- Publication Date
- 2026-07-14
AI Technical Summary
Existing marker-based lidar positioning methods are complex and inaccurate, making it difficult to achieve stable and accurate positioning in highly dynamic scenarios.
By acquiring the coordinates of markers in the scanned image during the movement of the lidar, a feature set is constructed. Then, by matching the preset positioning solution relationship with the global coordinate set, the position of the lidar in the preset scene is determined, simplifying the feature extraction process and improving the positioning accuracy.
This achievement improves the efficiency and accuracy of lidar positioning without increasing computational costs, thus solving the problem of complexity and inaccuracy.
Smart Images

Figure CN116106916B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of radar positioning, and in particular to lidar positioning methods, systems, electronic devices, and storage media. Background Technology
[0002] With the rapid development of LiDAR technology, its performance has improved and its cost has decreased, leading to its widespread application in robotics, drones, autonomous driving, surveying, and other fields. It is one of the most important sensors for enabling robots and other intelligent vehicles to locate, perceive, and reconstruct environmental models. Localization is a crucial part of LiDAR's many applications, responsible for calculating the real-time position of the intelligent vehicle on a map, a fundamental function for robots to achieve autonomous movement. However, in many scenarios, such as highly dynamic factories and open public roads, relying solely on natural features makes stable and accurate localization difficult. Without semantic information, both stability and accuracy become extremely challenging problems.
[0003] Therefore, using laser markers with clear distinguishing capabilities is an important way to solve the problem. Among the existing laser radar positioning methods based on laser markers, some require the markers to have relatively large and specific shapes, some process the markers individually, and some require complex calculations on many markers. None of them can balance efficiency and performance.
[0004] There is currently no effective solution to the problem that the marker-based lidar positioning method is complex and inaccurate. Summary of the Invention
[0005] This embodiment provides a lidar positioning method, apparatus, system, electronic device, and storage medium to address the problems of complexity and inaccuracy in related technologies for lidar positioning methods based on markers.
[0006] Firstly, this embodiment provides a lidar positioning method, in which, during the movement of the lidar, a first scan image generated by the lidar scanning a preset scene in a first scanning cycle is acquired, and the coordinates of an object in the first scan image relative to the lidar are determined, wherein the lidar is arranged on a movable carrier.
[0007] The second radar global coordinates of the position of the lidar in the second scanning cycle are obtained. Based on the second radar global coordinates, the coordinates of the marker in the first scanning image relative to the lidar, and the preset positioning solution relationship, the first marker coordinates of the marker in the first scanning image in the preset scene are determined. The second scanning cycle is the previous scanning cycle adjacent to the first scanning cycle.
[0008] A first feature set is constructed based on any three identifiers in the first scanned image;
[0009] Obtain a global coordinate set of multiple markers in the preset scene, filter a subset of global coordinates that match the coordinates of the first marker from the global coordinate set, and construct a second feature set based on any three global coordinates in the global coordinate subset;
[0010] The first feature set and the second feature set are matched, and the first global coordinates of the lidar at the position of the lidar in the first scanning cycle are determined based on the matching result.
[0011] In some embodiments, constructing a first feature set based on every three markers in the first scanned image includes:
[0012] A first triangle is constructed based on any three markers in the first scanned image, and a first feature set is constructed based on the characteristic angles of multiple first triangles; wherein,
[0013] If the first triangle is an isosceles triangle, the vertex angle formed by the two legs of the first triangle is selected as the characteristic angle; and / or, if the first triangle is not an isosceles triangle, the largest angle of the first triangle is selected as the characteristic angle.
[0014] In some embodiments, constructing a first feature set based on every three markers in the first scanned image includes:
[0015] The first feature set is constructed based on the angles and side lengths of the multiple feature angles.
[0016] In some embodiments, constructing the first feature set based on the angles and side lengths of the plurality of feature angles includes:
[0017] With the vertex of the feature angle as the center of rotation, rotate the first side to the second side that constitute the feature angle in either a counterclockwise or clockwise direction. Define the two sides that constitute the feature angle as the starting side and the ending side according to the rotation angle.
[0018] The starting side length, ending side length, and angle of the feature angle are obtained to obtain the first feature set.
[0019] In some embodiments, constructing a second feature set based on every three global coordinates in the subset of global coordinates includes:
[0020] A second triangle is constructed based on any three global coordinates in the subset of global coordinates, and a second feature set is constructed based on the feature angles of multiple second triangles; wherein,
[0021] If the second triangle is an isosceles triangle, the vertex angle formed by the two legs of the second triangle is selected as the characteristic angle; and / or, if the second triangle is not an isosceles triangle, the largest angle of the second triangle is selected as the characteristic angle.
[0022] In some embodiments, matching the first feature set and the second feature set, and determining the first global coordinates of the lidar's location in the first scanning cycle based on the matching result, includes:
[0023] Filter target feature angles that are similar to the first feature set from the second feature set, and obtain the global coordinates corresponding to the target feature angles;
[0024] Based on the global coordinates corresponding to the target feature angle and the coordinates of the marker in the first scan image relative to the lidar, the first global coordinates of the lidar at its position in the first scan cycle are calculated.
[0025] In some embodiments, obtaining the global coordinate set of multiple markers in the preset scene includes:
[0026] The global coordinates of the lidar at its position in the third scanning cycle are obtained, as well as the third scan image generated by scanning the preset scene in the third scanning cycle, and the coordinates of the markers in the third scan image relative to the lidar are determined.
[0027] A third feature set is constructed based on any three identifiers in the third scanned image;
[0028] The fourth scan image generated by the lidar scanning the preset scene in the fourth scan cycle is obtained, and the coordinates of the markers in the fourth scan image relative to the lidar are determined.
[0029] A fourth feature set is constructed based on any three identifiers in the fourth scanned image;
[0030] The third feature set and the fourth feature set are matched, and the relative position of the lidar in the fourth scanning cycle relative to the third scanning cycle is determined based on the matching result.
[0031] Based on the relative position of the lidar in the fourth scanning cycle relative to the third scanning cycle, a global coordinate set of multiple markers in the preset scene is obtained.
[0032] In some embodiments, after acquiring the first scan image generated by the lidar scanning a preset scene in the first scan cycle, the method further includes:
[0033] The scanning information of multiple scanning points in the first scan image is obtained, wherein the scanning information includes the reflected energy intensity of each scanning point, the straight-line distance from each scanning point to the lidar, and the scanning angle of each point;
[0034] Obtain a reflection intensity threshold curve, and identify the markers in the first scan image based on the reflection intensity threshold curve and the scanning information of the plurality of scan points.
[0035] In some embodiments, obtaining the reflection intensity threshold curve includes:
[0036] Based on the reflected energy intensity of the marker and the standard reference at different distances, the reflected energy curves of the marker and the standard reference are obtained respectively.
[0037] The reflection intensity threshold curve is obtained based on the reflection intensity curve of the marker and the reflection intensity curve of the standard reference.
[0038] In some embodiments, filtering a subset of global coordinates that match the coordinates of the first identifier from the global coordinate set includes:
[0039] In the global coordinate set, the global coordinates closest to the coordinates of each of the first markers are selected, and the global coordinate subset is formed based on the selected global coordinates.
[0040] Secondly, this embodiment provides a lidar positioning system, including: a movable carrier and a lidar, wherein the lidar is mounted on the movable carrier and is used to perform the lidar positioning method described in the first aspect above.
[0041] Thirdly, this embodiment 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 lidar positioning method described in the first aspect above.
[0042] Fourthly, this embodiment provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the lidar positioning method described in the first aspect above.
[0043] Compared with related technologies, the lidar positioning method, system, electronic device, and storage medium provided in this embodiment acquire a first scan image generated by the lidar scanning a preset scene in a first scanning cycle during the lidar's movement, and determine the coordinates of a marker in the first scan image relative to the lidar, wherein the lidar is arranged on a movable carrier; acquire the second lidar global coordinates of the lidar's position in a second scanning cycle, and determine the first marker coordinates of the marker in the first scan image in the preset scene based on the second lidar global coordinates, the coordinates of the marker in the first scan image relative to the lidar, and a preset positioning calculation relationship, wherein the second scan... The scanning cycle is the previous scanning cycle adjacent to the first scanning cycle; a first feature set is constructed based on any three markers in the first scan image; a global coordinate set of multiple markers in a preset scene is obtained, and a subset of global coordinates that match the coordinates of the first markers is selected from the global coordinate set, and a second feature set is constructed based on any three global coordinates in the subset of global coordinates; the first feature set and the second feature set are matched, and the first global coordinates of the LiDAR in the first scanning cycle are determined based on the matching result. This solves the problem of the complexity and inaccuracy of the marker-based LiDAR positioning method, and improves the efficiency and performance of the marker-based LiDAR positioning method.
[0044] Details of one or more embodiments of this application are set forth in the following drawings and description to make other features, objects and advantages of this application more readily apparent. Attached Figure Description
[0045] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0046] Figure 1 This is a hardware structure block diagram of a terminal for a laser radar positioning method according to an embodiment of this application;
[0047] Figure 2 This is a flowchart of a lidar positioning method according to an embodiment of this application;
[0048] Figure 3 This is a schematic diagram of a two-dimensional lidar scanning according to an embodiment of this application;
[0049] Figure 4 This is a schematic diagram of the characteristic angle of an embodiment of this application;
[0050] Figure 5 This is a schematic diagram of the reflected energy intensity curve according to an embodiment of this application;
[0051] Figure 6This is a preferred flowchart of a lidar positioning method according to an embodiment of this application;
[0052] Figure 7 This is a preferred flowchart of a laser-marked map construction method according to an embodiment of this application. Detailed Implementation
[0053] To better understand the purpose, technical solution, and advantages of this application, the application is described and illustrated below in conjunction with the accompanying drawings and embodiments.
[0054] Unless otherwise defined, the technical or scientific terms used in this application shall have the general meaning understood by one of ordinary skill in the art to which this application pertains. In this application, words such as “a,” “an,” “an,” “the,” “the,” and “these” do not indicate quantitative limitation and may be singular or plural. The terms “comprising,” “including,” “having,” and any variations thereof used in this application are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or device that comprises a series of steps or modules (units) is not limited to the listed steps or modules (units) but may include steps or modules (units) not listed, or may include other steps or modules (units) inherent to such processes, methods, products, or devices. The terms “connected,” “linked,” and “coupled” used in this application are not limited to physical or mechanical connections but may include electrical connections, whether direct or indirect. The term “multiple” used in this application refers to two or more. The "and / or" operator describes the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: A alone, A and B simultaneously, and B alone. Typically, the character " / " indicates that the objects before and after it are in an "or" relationship. The terms "first," "second," and "third," etc., used in this application are merely for distinguishing similar objects and do not represent a specific ordering of the objects.
[0055] The method embodiments provided in this example can be executed on a terminal, computer, or similar computing device. For example, it can run on a terminal. Figure 1 This is a hardware structure block diagram of a terminal for a lidar positioning method according to an embodiment of this application. For example... Figure 1 As shown, a terminal may include one or more ( Figure 1 Only one is shown in the diagram. A processor 102 and a memory 104 for storing data are also included. The processor 102 may be, but is not limited to, a microprocessor (MCU) or a programmable logic device (FPGA). The terminal may also include a transmission device 106 for communication functions and an input / output device 108. Those skilled in the art will understand that… Figure 1The structure shown is for illustrative purposes only and does not limit the structure of the terminal described above. For example, the terminal may also include components that are larger than... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown are illustrated.
[0056] The memory 104 can be used to store computer programs, such as application software programs and modules, like the computer program corresponding to the lidar positioning method in this embodiment. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, thereby implementing the above-described method. The memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor 102, and these remote memories can be connected to the terminal via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0057] The transmission device 106 is used to receive or send data via a network. This network includes a wireless network provided by the terminal's communication provider. In one example, the transmission device 106 includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device 106 can be a Radio Frequency (RF) module used for wireless communication with the Internet.
[0058] This embodiment provides a lidar positioning method. Figure 2 This is a flowchart of the lidar positioning method in this embodiment, as follows: Figure 2 As shown, the process includes the following steps:
[0059] Step S201: During the movement of the lidar, acquire the first scan image generated by the lidar scanning the preset scene in the first scan cycle, and determine the coordinates of the marker in the first scan image relative to the lidar, wherein the lidar is arranged on a movable carrier.
[0060] The first scan image includes multiple scan points. The LiDAR can obtain scan information for these points, including the straight-line distance from each scan point to the LiDAR, the scan angle, and the reflected energy intensity. After identifying a marker in the first scan image, the polar coordinates of each marker relative to the LiDAR are obtained based on the straight-line distance and angle of each marker relative to the LiDAR in the scan information. These polar coordinates are then converted to Cartesian coordinates using a coordinate transformation method to obtain the coordinates of the marker relative to the LiDAR in the first scan image.
[0061] For example, Figure 3 This is a schematic diagram of a two-dimensional lidar scan in this embodiment, as shown below. Figure 3 As shown, a two-dimensional lidar with a scanning angle of 360 degrees and an angular resolution of 0.1 degrees is selected. The detector of the two-dimensional lidar rotates and scans the preset scene on a plane. After scanning one revolution, the information of 3600 scanning points in the scan image output by the lidar is obtained. The scanning information includes the distance r from each scanning point to the lidar, the scanning angle α, and the reflected energy intensity rssi. The scanning information is represented as... Where i represents the i-th laser point, and L represents the lidar coordinate system established by the lidar. The markers in the first scanned image are determined, and their polar coordinates are obtained. Where r represents the straight-line distance between the marker and the lidar. The distance and angle of the marker relative to the lidar are used to obtain the coordinates of the marker relative to the lidar in the first scan image after converting the polar coordinates to Cartesian coordinates. Where L represents the lidar coordinate system and m represents the m-th feature of the marker.
[0062] Step S202: Obtain the global coordinates of the second radar at the position of the LiDAR in the second scanning cycle. Based on the global coordinates of the second radar, the coordinates of the marker in the first scan image relative to the LiDAR, and the preset positioning solution relationship, determine the coordinates of the first marker in the first scan image in the preset scene. The second scanning cycle is the previous scanning cycle adjacent to the first scanning cycle.
[0063] The lidar is deployed on a moving platform and begins to move from a known coordinate in a pre-defined scene.
[0064] The second scanning cycle is the preceding scanning cycle adjacent to the first scanning cycle. The global coordinates of the second radar position in the second scanning cycle are assumed to be the global radar coordinates of the laser radar position in the first scanning cycle. Based on the global coordinates of the second radar position in the second scanning cycle and the coordinates of the scanned marker relative to the laser radar in the first scanning cycle, the coordinates of the first marker scanned in the first scanning cycle in a preset scene are calculated using a preset positioning solution relationship.
[0065] Step S203: Construct a first feature set based on any three markers in the first scanned image.
[0066] Obtain the markers in the first scan image and their coordinates relative to the lidar. Extract an interior angle from every triangle formed by connecting three markers as a feature angle, and construct a first feature set based on the angle and side length of the feature angle.
[0067] Step S204: Obtain a global coordinate set of multiple markers in a preset scene, filter the global coordinate subset that matches the coordinates of the first marker in the global coordinate set, and construct a second feature set based on any three global coordinates in the global coordinate subset.
[0068] By moving the LiDAR within a preset scene, a set of global coordinates for multiple markers in the preset scene is obtained. The coordinates of the first marker in the preset scene are matched with the coordinates of the first marker in the first scanned image, and the global coordinates of the multiple markers in the preset scene are used to find the global coordinates closest to the first marker, forming a subset of global coordinates. Every three global coordinates in the subset are selected to form a triangle, and an interior angle is extracted from the triangle as a feature angle. A second feature set is then constructed based on the angle and side length of the feature angle.
[0069] For example, extracting an interior angle as a characteristic angle from a triangle includes: if the triangle is isosceles, selecting the vertex angle formed by the two legs of the triangle as the characteristic angle; and / or, if the triangle is not isosceles, selecting the largest angle of the triangle as the characteristic angle. Rotating counterclockwise or clockwise around the vertex of the characteristic angle as the center of rotation, calculate the rotation angle traversed by the first side when rotating to the position of the second side. If the rotation angle is greater than 0 degrees and less than 180 degrees, define the first side as the starting side and the second side as the ending side; otherwise, define the first side as the ending side and the second side as the starting side.
[0070] Step S205: Match the first feature set and the second feature set, and determine the first global coordinates of the lidar position in the first scanning cycle based on the matching result.
[0071] To locate the first radar global coordinates of the LiDAR in the first scanning cycle, a first feature set constructed from markers in the first scan image and a second feature set constructed from a subset of global coordinates are matched to obtain the global coordinates in the global coordinate set corresponding to the markers in the first scan image. Through a preset positioning solution relationship, the first radar global coordinates of the LiDAR's position in the first scanning cycle can be calculated based on the global coordinates of the markers in the first scan image within a preset scene and the coordinates of the markers relative to the LiDAR in the first scan image.
[0072] For example, the global coordinates corresponding to the markers in the first scanned image are in the global coordinate set. The coordinates of the marker relative to the lidar in the first scan image are: Where G represents the global coordinate system, m represents the m-th feature of the marker, L represents the lidar coordinate system, and L represents the lidar global coordinate system at the location of the lidar in the first scanning cycle. θ represents the heading angle of the LiDAR in the preset environment when the scanned image is captured. Based on the preset positioning calculation relationship, the equation is obtained: The global coordinates of the first radar were calculated.
[0073] Specifically, the formula for the above-mentioned preset positioning solution relationship... Rewritten Let z = cosθ and w = sinθ, and calculate x, y, z, and w using the standard linear least squares method. And because z... 2 +w 2 =cos 2 θ+sin 2 θ = 1, through the normalization equation After normalizing z and w, θ = arcsin(w) can be calculated using inverse trigonometric functions, thus obtaining the global coordinates of the second radar.
[0074] In steps S201 to S205 above, markers are placed in a preset scene, and a LiDAR is deployed on the mobile vehicle to be located. The LiDAR scans the preset scene to obtain the markers in the surrounding environment in real time. Since the positional relationship between every three markers is unique, the markers placed in the preset scene do not need to have special encoding information. The features of the markers can be obtained solely based on the positional relationship between every three markers, reducing the cost of feature extraction and improving the stability of the feature extraction process. The position of the markers scanned by the LiDAR in the preset scene is calculated using the matching results of the first and second feature sets and the preset positioning solution relationship. The coordinates of the vehicle are further calculated. The uniqueness of the positional relationship between the three markers simplifies the matching process of the feature sets, and the matching results have excellent robustness. Thus, without increasing the computational cost, the accuracy of the marker-based LiDAR positioning method is improved, solving the problems of complexity and inaccuracy in marker-based LiDAR positioning methods.
[0075] In some embodiments, constructing a first feature set based on any three markers in the first scanned image includes: constructing a first triangle based on any three markers in the first scanned image, and constructing a first feature set based on the feature angles of multiple first triangles; wherein, if the first triangle is an isosceles triangle, the vertex angle formed by the two legs of the first triangle is selected as the feature angle; and / or, if the first triangle is not an isosceles triangle, the largest angle of the first triangle is selected as the feature angle.
[0076] Furthermore, constructing a first feature set based on any three markers in the first scanned image includes constructing the first feature set based on the angles and side lengths of multiple feature angles.
[0077] For example, Figure 4 This is a schematic diagram of the characteristic angle of this application, such as... Figure 4 As shown, the preset scene includes three coordinates (x, y). i (x,y) j (x,y) k The markers are used to determine the characteristic angle formed by the three markers. The angle is greater than 0 degrees and less than 180 degrees, and the angle, starting side, and ending side of the characteristic angle can be obtained. If the first triangle is an equilateral triangle, any interior angle of the triangle can be used as the characteristic angle. Since equilateral triangles do not exist in practical applications, the characteristic angle corresponding to any three markers is unique.
[0078] In some embodiments, constructing a first feature set based on the angles and side lengths of multiple feature angles includes: rotating the first side to the second side constituting the feature angle in a counterclockwise or clockwise direction with the vertex of the feature angle as the rotation center; defining the two sides constituting the feature angle as the starting side and the ending side according to the rotation angle; and obtaining the starting side length, ending side length, and angle of the feature angle to obtain the first feature set.
[0079] Using the vertex of the feature angle in the first triangle as the center of rotation, rotate the first side counterclockwise or clockwise to the position of the second side, and calculate the rotation angle traversed by the first side during this process. If the rotation angle is greater than 0 degrees and less than 180 degrees, define the first side as the starting side and the second side as the ending side; otherwise, define the first side as the ending side and the second side as the starting side. The rotation direction used when defining the starting and ending sides of the first feature set is consistent with the rotation direction used when constructing the second feature set.
[0080] In some embodiments, constructing a second feature set based on any three global coordinates in a subset of global coordinates includes: constructing a second triangle based on any three global coordinates in a subset of global coordinates, and constructing a second feature set based on the feature angles of multiple second triangles; wherein, if the second triangle is an isosceles triangle, the vertex angle formed by the two legs of the second triangle is selected as the feature angle; and / or, if the second triangle is not an isosceles triangle, the largest angle of the second triangle is selected as the feature angle.
[0081] With the positions of the three markers determined, the starting and ending sides of the feature angle they form are also determined, making the feature formed by the three markers unique.
[0082] In some embodiments, matching a first feature set and a second feature set, and determining the first global coordinates of the lidar position in the first scanning cycle based on the matching result includes: filtering target feature angles similar to the first feature set from the second feature set, and obtaining the global coordinates corresponding to the target feature angles; calculating the first global coordinates of the lidar position in the first scanning cycle based on the global coordinates corresponding to the target feature angles and the coordinates of the markers in the first scan image relative to the lidar.
[0083] The process of selecting target feature angles similar to the first feature set from the second feature set involves matching feature angles in both the second and first feature sets where the feature angles, starting side lengths, and ending side lengths are all less than a preset error. Since the second feature set is constructed from any three global coordinates in a subset of global coordinates, the global coordinates corresponding to multiple markers in the first feature set, i.e., the global coordinates of multiple markers in the first scanned image, can be obtained based on the matched target feature angles. According to the preset positioning and calculation relationship,
[0084] In some embodiments, obtaining a global coordinate set of multiple markers in a preset scene includes: obtaining the global coordinates of the third radar at the location of the LiDAR in the third scanning cycle, and a third scan image generated by scanning the preset scene in the third scanning cycle, and determining the marker coordinates of the markers in the third scan image relative to the LiDAR; and constructing a third feature set based on any three markers in the third scan image.
[0085] Acquire the fourth scan image generated by the lidar scanning the preset scene in the fourth scan cycle, and determine the coordinates of the markers in the fourth scan image relative to the lidar; construct a fourth feature set based on every three markers in the fourth scan image;
[0086] The third and fourth feature sets are matched, and the relative position of the LiDAR in the fourth scanning cycle relative to the third scanning cycle is determined based on the matching result. Based on the relative position of the LiDAR in the fourth scanning cycle relative to the third scanning cycle, the global coordinate set of multiple markers in the preset scene is obtained.
[0087] The lidar is deployed on a mobile carrier. Based on the scanning information obtained from the lidar scanning a preset scene, a global coordinate set of multiple markers in the preset scene is calculated. The method for constructing a feature set by building a third feature set based on any three markers in the third scan image, and a fourth feature set based on any three markers in the fourth scan image, is consistent with the method in the previous embodiment for constructing a first feature set based on any three markers in the first scan image. The method for matching the third and fourth feature sets is consistent with the method in the previous embodiment for selecting a subset of global coordinates that match the coordinates of the first markers from the global coordinate set.
[0088] After obtaining the relative position of the LiDAR in the fourth scanning cycle relative to the third scanning cycle, the coordinates of the LiDAR's position relative to the starting point of movement can be calculated in each scanning cycle of the LiDAR's movement in the preset scene. Then, based on the coordinates of the LiDAR relative to the starting point of movement in each cycle, the coordinates of the markers in the LiDAR scan image in each cycle relative to the LiDAR, and the preset positioning solution relationship, the global coordinate set of multiple markers in the preset scene can be calculated.
[0089] In some embodiments, after acquiring a first scan image generated by the lidar scanning a preset scene in the first scan cycle, scanning information of multiple scan points in the first scan image is acquired, wherein the scanning information includes the reflection energy intensity of each scan point, the straight-line distance from each scan point to the lidar, and the scanning angle of each point; a reflection intensity threshold curve is acquired, and based on the reflection intensity threshold curve and the scanning information of multiple scan points, the markers in the first scan image are identified.
[0090] Furthermore, obtaining the reflection intensity threshold curve includes: obtaining the reflection intensity curve of the marker and the reflection intensity curve of the standard reference object based on the reflection energy intensity of the marker and the standard reference object at different distances; and obtaining the reflection intensity threshold curve based on the reflection intensity curve of the marker and the reflection intensity curve of the standard reference object.
[0091] Specifically, within the preset ranging range of the lidar, the reflected energy intensity of the marker and the reflected energy intensity of the standard reference are obtained in each preset unit interval. Based on the obtained marker reflection intensity curve and standard reference reflection intensity curve, a curve is set in the middle of the two curves to distinguish the reflected energy of the marker from the reflected energy of other environmental objects, namely the reflection intensity threshold curve.
[0092] For example, with a unit interval of 0.5m and a white wall as the standard reference, the reflected energy intensity of the marker and the white wall are obtained at every 0.5m interval, and corresponding marking points are generated. The reflected energy intensity between adjacent marking points at 0.5m intervals is linearly interpolated to obtain the curves of the reflected energy intensity of the marker and the white wall as a function of distance measurement: the marker reflection intensity curve and the standard reference reflection intensity curve. A reflection intensity threshold curve is set between the two curves. Figure 5 This is a schematic diagram of the reflected energy intensity curve of an embodiment of this application, as shown below. Figure 5As shown, the horizontal axis represents the ranging distance of the LiDAR, and the vertical axis represents the reflected energy intensity. The top curve is the reflectivity curve of the marker, the bottom curve is the reflectivity curve of the standard reference object, and the middle curve is the reflectivity threshold curve. In the LiDAR scan image, environmental objects with a reflectivity intensity higher than the threshold curve can be identified as markers in the preset scene. Because LiDAR scanning may scan multiple points of the same marker, the points with reflectivity intensity higher than the threshold curve in the first scan image are clustered. The number of clusters is the number of markers. Furthermore, because laser detection has random errors, to more accurately calculate the marker coordinates, the angle and ranging of each clustered point are mean-filtered to obtain the ranging and angle of each marker relative to the LiDAR, resulting in the polar coordinates of the marker relative to the LiDAR. After converting the polar coordinates to Cartesian coordinates, the coordinates of the marker relative to the LiDAR in the scan image are obtained.
[0093] In some embodiments, filtering a subset of global coordinates that match the coordinates of the first marker in the global coordinate set includes: filtering the global coordinates that are closest to each coordinate of the first marker in the global coordinate set, and forming a subset of global coordinates based on the filtered global coordinates.
[0094] Calculate the straight-line distance between the global coordinates and the coordinates of the first marker. Based on the coordinates of the first marker, find the global coordinates that are closest to each first marker coordinate in the global coordinate set, and obtain the subset of global coordinates of the markers in the preset scene scanned by the LiDAR during the first scanning cycle.
[0095] In some of these embodiments, Figure 6 This is a preferred flowchart of the lidar positioning method in this embodiment.
[0096] Step S601: Control the lidar from the coordinate starting point. It begins to move in the vicinity of other known coordinates or other locations.
[0097] The lidar is horizontally mounted on a mobile platform, which may include robots, unmanned vehicles, etc.
[0098] In step S602, during the first scanning cycle, the markers and their coordinates relative to the lidar are extracted from the scanned image obtained by the lidar scanning a preset scene, and a first feature set is obtained.
[0099] Specifically, markers are objects whose reflectance intensity is significantly higher than that of ordinary environmental features when scanned by lidar. By utilizing the characteristics of reflectance intensity, markers can be easily extracted from the environment. Markers include highly reflective columnar objects, highly reflective sheet-like objects, and highly bright road markings.
[0100] Step S603: During the laser movement, the global coordinates of the laser radar position in the second scanning cycle are obtained, and the global coordinates of the laser radar are used as the coordinates of the laser radar in the preset scene in the current scanning cycle. The second scanning cycle is the previous scanning cycle adjacent to the first scanning cycle.
[0101] Step S604: Based on the global coordinates of the LiDAR location in the second scanning cycle and the coordinates of the marker relative to the LiDAR in the first scanning cycle, calculate the marker coordinates of the marker in the preset scene scanned by the LiDAR in the first scanning cycle.
[0102] Step S605: Obtain the global coordinate set of multiple markers in the preset scene, denoted as the marker map. Based on the marker coordinates of each marker in step S604, find the global coordinates closest to the marker coordinates in the marker map, form a subset of the global coordinates of the map, and extract the second feature set of the global marker subset.
[0103] Step S606: Match the first feature set of the first scanning cycle in step S603 with the second feature set in step S605 to obtain the matching relationship between the markers in the lidar scanning data of the first scanning cycle and the laser markers in the marker map.
[0104] Step S607: Based on the matching relationship in step S606 and the preset positioning solution relationship, calculate the first global coordinates of the lidar at its position in the first scanning cycle. Repeat steps S602 and S607 to achieve real-time continuous positioning of the lidar.
[0105] Figure 7 This is a preferred flowchart of the laser-marked map construction method in this embodiment, such as... Figure 7 As shown, the laser-marked map construction method includes the following steps:
[0106] Step S701: Move the LiDAR in the preset scene to acquire scanned images.
[0107] Step S702: Extract the set of coordinates of the marker relative to the lidar from each frame of the acquired scan image.
[0108] Step S703: Extract the first feature set based on the coordinate set of the markers relative to the lidar in each frame of the scanned image.
[0109] Step S704: Based on the previous scan image in each pair of adjacent scan images, locate the position of the LiDAR when the next scan image is captured, and calculate the relative positioning coordinates of the LiDAR when the two adjacent scan images are captured according to the preset positioning solution relationship.
[0110] Where θ represents the heading angle of the lidar in the preset environment when the scan image is captured, and i represents the i-th frame of the scan image obtained by the lidar.
[0111] Step S705: Connect the relative positioning coordinates of the lidar in all adjacent frames to obtain the coordinates of the lidar relative to the starting point when each frame of the scan image is captured, thus forming the scanning trajectory of the lidar.
[0112] Step S706: When each frame of the scanned image is captured, the coordinates of the LiDAR relative to the starting point are used to calculate the global coordinates of the laser marker in each frame of the laser based on the preset positioning solution relationship.
[0113] Step S707: When the same marker is scanned by multiple frames of images, the global coordinates of the same marker in different frames are fused by averaging multiple coordinates to obtain the coordinates of each marker relative to the starting point of the lidar movement, thus obtaining the map of the lidar marker.
[0114] It should be noted that the steps shown in the above process or in the flowchart of the accompanying figures can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases the steps shown or described may be executed in a different order than that shown here.
[0115] In conjunction with the lidar positioning method of the above embodiments, this embodiment also provides a lidar positioning system, which includes: a movable carrier and a lidar, wherein the lidar is mounted on the movable carrier. The lidar is used to perform... Figure 2 The steps of the lidar positioning method shown are described, in which a movable carrier is used to move within a preset scene.
[0116] This embodiment also provides an electronic device, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to run the computer program to perform the steps in any of the above method embodiments.
[0117] Optionally, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor and the input / output device is connected to the processor.
[0118] Optionally, in this embodiment, the processor can be configured to perform the following steps via a computer program:
[0119] Step S201: During the movement of the lidar, acquire the first scan image generated by the lidar scanning the preset scene in the first scan cycle, and determine the coordinates of the marker in the first scan image relative to the lidar, wherein the lidar is arranged on a movable carrier.
[0120] Step S202: Obtain the global coordinates of the second radar at the position of the LiDAR in the second scanning cycle. Based on the global coordinates of the second radar, the coordinates of the marker in the first scanning image relative to the LiDAR, and the preset positioning solution relationship, determine the coordinates of the first marker in the first scanning image in the preset scene. The second scanning cycle is the previous scanning cycle adjacent to the first scanning cycle.
[0121] Step S203: Construct a first feature set based on any three markers in the first scanned image;
[0122] Step S204: Obtain a global coordinate set of multiple markers in a preset scene, filter the global coordinate subset that matches the coordinates of the first marker in the global coordinate set, and construct a second feature set based on any three global coordinates in the global coordinate subset;
[0123] Step S205: Match the first feature set and the second feature set, and determine the first global coordinates of the lidar position in the first scanning cycle based on the matching result.
[0124] It should be noted that the specific examples in this embodiment can refer to the examples described in the above embodiments and optional implementations, and will not be repeated in this embodiment.
[0125] Furthermore, in conjunction with the lidar positioning method provided in the above embodiments, this embodiment can also provide a storage medium for implementation. The storage medium stores a computer program; when executed by a processor, the computer program implements any one of the lidar positioning methods described in the above embodiments.
[0126] It should be understood that the specific embodiments described herein are merely illustrative of the application and not intended to limit it. All other embodiments derived by those skilled in the art based on the embodiments provided in this application without inventive effort are within the scope of protection of this application.
[0127] Obviously, the accompanying drawings are merely some examples or embodiments of this application. Those skilled in the art can apply this application to other similar situations based on these drawings without any creative effort. Furthermore, it is understood that although the work done in this development process may be complex and lengthy, for those skilled in the art, certain design, manufacturing, or production modifications made based on the technical content disclosed in this application are merely conventional technical means and should not be considered as insufficient disclosure of this application.
[0128] The term "embodiment" in this application refers to a specific feature, structure, or characteristic described in connection with an embodiment that may be included in at least one embodiment of this application. The appearance of this phrase in various places in the specification does not necessarily imply the same embodiment, nor does it imply that it is mutually exclusive with or independent of other embodiments. It will be clearly or implicitly understood by those skilled in the art that the embodiments described in this application may be combined with other embodiments without conflict.
[0129] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of patent protection. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the appended claims.
Claims
1. A lidar positioning method, characterized in that, include: During the movement of the lidar, a first scan image generated by the lidar scanning a preset scene in the first scan cycle is acquired, and the coordinates of the markers in the first scan image relative to the lidar are determined, wherein the lidar is arranged on a movable carrier. The second radar global coordinates of the position of the lidar in the second scanning cycle are obtained. Based on the second radar global coordinates, the coordinates of the marker in the first scanning image relative to the lidar, and the preset positioning solution relationship, the first marker coordinates of the marker in the first scanning image in the preset scene are determined. The second scanning cycle is the previous scanning cycle adjacent to the first scanning cycle. A first feature set is constructed based on any three identifiers in the first scanned image; Obtain a global coordinate set of multiple markers in the preset scene, filter a subset of global coordinates that match the coordinates of the first marker from the global coordinate set, and construct a second feature set based on any three global coordinates in the global coordinate subset; The first feature set and the second feature set are matched, and the first global coordinates of the lidar at the position of the lidar in the first scanning cycle are determined based on the matching result.
2. The lidar positioning method according to claim 1, characterized in that, Constructing a first feature set based on any three markers in the first scanned image includes: A first triangle is constructed based on any three markers in the first scanned image, and a first feature set is constructed based on the characteristic angles of multiple first triangles; wherein, If the first triangle is an isosceles triangle, the vertex angle formed by the two legs of the first triangle is selected as the characteristic angle; and / or, if the first triangle is not an isosceles triangle, the largest angle of the first triangle is selected as the characteristic angle.
3. The lidar positioning method according to claim 2, characterized in that, Constructing a first feature set based on any three markers in the first scanned image includes: The first feature set is constructed based on the angles and side lengths of the multiple feature angles.
4. The lidar positioning method according to claim 3, characterized in that, Constructing the first feature set based on the angles and side lengths of multiple feature angles includes: With the vertex of the feature angle as the center of rotation, rotate the first side to the second side that constitute the feature angle in either a counterclockwise or clockwise direction. Define the two sides that constitute the feature angle as the starting side and the ending side according to the rotation angle. The starting side length, ending side length, and angle of the feature angle are obtained to obtain the first feature set.
5. The lidar positioning method according to claim 1, characterized in that, Constructing a second feature set based on any three global coordinates from the aforementioned global coordinate subset includes: A second triangle is constructed based on any three global coordinates in the subset of global coordinates, and a second feature set is constructed based on the feature angles of multiple second triangles; wherein, If the second triangle is an isosceles triangle, the vertex angle formed by the two legs of the second triangle is selected as the characteristic angle; and / or, if the second triangle is not an isosceles triangle, the largest angle of the second triangle is selected as the characteristic angle.
6. The lidar positioning method according to claim 2, characterized in that, Matching the first feature set and the second feature set, and determining the first global coordinates of the lidar's position in the first scanning cycle based on the matching result includes: Filter target feature angles that are similar to the first feature set from the second feature set, and obtain the global coordinates corresponding to the target feature angles; Based on the global coordinates corresponding to the target feature angle and the coordinates of the marker in the first scan image relative to the lidar, the first global coordinates of the lidar at its position in the first scan cycle are calculated.
7. The lidar positioning method according to claim 1, characterized in that, Obtaining the global coordinate set of multiple markers in the preset scene includes: The global coordinates of the lidar in the third scanning cycle are obtained, as well as the third scan image generated by scanning the preset scene in the third scanning cycle, and the coordinates of the markers in the third scan image relative to the lidar are determined. A third feature set is constructed based on any three identifiers in the third scanned image; The fourth scan image generated by the lidar scanning the preset scene in the fourth scan cycle is obtained, and the coordinates of the markers in the fourth scan image relative to the lidar are determined. A fourth feature set is constructed based on any three identifiers in the fourth scanned image; The third feature set and the fourth feature set are matched, and the relative position of the lidar in the fourth scanning cycle relative to the third scanning cycle is determined based on the matching result. Based on the relative position of the lidar in the fourth scanning cycle relative to the third scanning cycle, a global coordinate set of multiple markers in the preset scene is obtained.
8. The lidar positioning method according to claim 1, characterized in that, After acquiring the first scan image generated by the lidar scanning a preset scene in the first scan cycle, the method further includes: The scanning information of multiple scanning points in the first scan image is obtained, wherein the scanning information includes the reflected energy intensity of each scanning point, the straight-line distance from each scanning point to the lidar, and the scanning angle of each point; Obtain a reflection intensity threshold curve, and identify the markers in the first scan image based on the reflection intensity threshold curve and the scanning information of the plurality of scan points.
9. The lidar positioning method according to claim 8, characterized in that, Obtaining the reflection intensity threshold curve includes: Based on the reflected energy intensity of the marker and the standard reference at different distances, the reflected energy curves of the marker and the standard reference are obtained respectively. The reflection intensity threshold curve is obtained based on the reflection intensity curve of the marker and the reflection intensity curve of the standard reference.
10. The lidar positioning method according to claim 1, characterized in that, Filtering a subset of global coordinates from the global coordinate set that matches the coordinates of the first identifier includes: In the global coordinate set, the global coordinates closest to the coordinates of each of the first markers are selected, and the global coordinate subset is formed based on the selected global coordinates.
11. A lidar positioning system, characterized in that, include: A movable carrier and a lidar, wherein the lidar is mounted on the movable carrier and is used to perform the lidar positioning method according to any one of claims 1 to 10.
12. An electronic device comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to run the computer program to perform the lidar positioning method according to any one of claims 1 to 10.
13. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the steps of the lidar positioning method according to any one of claims 1 to 10.