CN115507840A - Grid map construction method, grid map construction device and electronic equipment - Google Patents

Grid map construction method, grid map construction device and electronic equipment Download PDF

Info

Publication number
CN115507840A
CN115507840A CN202211142230.2A CN202211142230A CN115507840A CN 115507840 A CN115507840 A CN 115507840A CN 202211142230 A CN202211142230 A CN 202211142230A CN 115507840 A CN115507840 A CN 115507840A
Authority
CN
China
Prior art keywords
grid map
dimensional detection
point cloud
key frame
array
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211142230.2A
Other languages
Chinese (zh)
Inventor
毕占甲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ubtech Robotics Corp
Original Assignee
Ubtech Robotics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ubtech Robotics Corp filed Critical Ubtech Robotics Corp
Priority to CN202211142230.2A priority Critical patent/CN115507840A/en
Publication of CN115507840A publication Critical patent/CN115507840A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

The application discloses a grid map construction method, a grid map construction device, electronic equipment and a computer readable storage medium. The method comprises the following steps: aiming at each point cloud key frame currently acquired by the three-dimensional detection equipment, generating a virtual wire harness ranging result corresponding to the point cloud key frame according to a preset height interval; maintaining a grid map structure table according to the pose of the three-dimensional detection equipment corresponding to each point cloud key frame and the virtual wire harness distance measurement result corresponding to each point cloud key frame, wherein the grid map structure table is used for describing the state of each grid in the environment grid map; and updating the environment grid map according to the grid map structure table. According to the scheme, the grid map can be efficiently constructed aiming at the space obstacles with different height planes.

Description

Grid map construction method, grid map construction device and electronic equipment
Technical Field
The present application relates to the field of navigation technologies, and in particular, to a grid map construction method, a grid map construction apparatus, an electronic device, and a computer-readable storage medium.
Background
The grid map is generally generated by a robot depending on distance measurement data of an obstacle by a two-dimensional laser radar mounted on the robot when the robot performs instantaneous positioning and Mapping (SLAM). However, the two-dimensional lidar can generally only scan range data at the same level as itself. Therefore, the space obstacles in different height planes cannot be reflected in the grid map due to the limitation of the placement height of the two-dimensional laser radar, so that the current grid map has great limitation.
Disclosure of Invention
The application provides a grid map construction method, a grid map construction device, electronic equipment and a computer readable storage medium, which can realize efficient construction of grid maps aiming at space obstacles of planes with different heights.
In a first aspect, the present application provides a grid map construction method, including:
generating a virtual wire harness ranging result corresponding to the point cloud key frame according to a preset height interval aiming at each point cloud key frame currently acquired by the three-dimensional detection equipment;
maintaining a grid map structure table according to the pose of the three-dimensional detection device corresponding to each point cloud key frame and the virtual wire harness distance measurement result corresponding to each point cloud key frame, wherein the grid map structure table is used for describing the state of each grid in the environment grid map;
and updating the environment grid map according to the grid map structure table.
In a second aspect, the present application provides a grid map building apparatus, including:
the generating module is used for generating a virtual wire harness ranging result corresponding to the point cloud key frame according to a preset height interval aiming at each point cloud key frame currently acquired by the three-dimensional detection equipment;
the maintenance module is used for maintaining a grid map structure table according to the pose of the three-dimensional detection equipment corresponding to each point cloud key frame and the virtual wire harness distance measurement result corresponding to each point cloud key frame, wherein the grid map structure table is used for describing the state of each grid in the environment grid map;
and the updating module is used for updating the environment grid map according to the grid map structure table.
In a third aspect, the present application provides an electronic device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the method according to the first aspect when executing the computer program.
In a fourth aspect, the present application provides a computer readable storage medium having stored thereon a computer program which, when executed by a processor, performs the steps of the method of the first aspect.
In a fifth aspect, the present application provides a computer program product comprising a computer program which, when executed by one or more processors, performs the steps of the method of the first aspect as described above.
Compared with the prior art, the beneficial effect that this application exists is: the grid map is not generated by the two-dimensional detection device, but is generated by the three-dimensional detection device by utilizing the space perception capability of the three-dimensional detection device. Specifically, for each point cloud key frame currently acquired by the three-dimensional detection device, a virtual wire harness ranging result corresponding to the point cloud key frame may be generated according to a preset height interval, then a grid map structure table used for describing the state of each grid in the environment grid map may be maintained according to the pose of the three-dimensional detection device corresponding to each point cloud key frame and the virtual wire harness ranging result corresponding to each point cloud key frame, and finally the environment grid map may be updated according to the grid map structure table. It can be understood that, in the process of constructing the grid map, the influence of the obstacles in the interested height interval on the grid map is fully considered, high calculation force support is not needed, and the grid map can be efficiently constructed in real time aiming at the space obstacles of different height planes in the common platform operation environment.
It is to be understood that, for the beneficial effects of the second aspect to the fifth aspect, reference may be made to the relevant description in the first aspect, and details are not described herein again.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the embodiments or the prior art descriptions will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings without creative efforts.
Fig. 1 is a schematic implementation flow diagram of a grid map construction method provided in an embodiment of the present application;
fig. 2 is a schematic diagram of a determination process of a third target element according to an embodiment of the present application;
fig. 3 is a block diagram of a grid map building apparatus according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
In the following description, for purposes of explanation and not limitation, specific details are set forth such as particular system structures, techniques, etc. in order to provide a thorough understanding of the embodiments of the present application. It will be apparent, however, to one skilled in the art that the present application may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present application with unnecessary detail.
In order to explain the technical solution proposed in the present application, the following description will be given by way of specific examples.
The grid map construction method provided by the embodiment of the application can be applied to electronic equipment, the electronic equipment can be a robot, a server which establishes communication connection with the robot, or other equipment which establishes communication connection with the robot and can perform data processing operation, and the type of the electronic equipment is not limited herein.
The following describes a grid map construction method proposed in the embodiments of the present application, taking a robot as an example. Referring to fig. 1, the implementation flow of the grid map construction method is detailed as follows:
step 101, aiming at each point cloud key frame currently acquired by the three-dimensional detection equipment, generating a virtual line bundle ranging result corresponding to the point cloud key frame according to a preset height interval.
A three-dimensional detection device is generally mounted on a robot body. For example only, the three-dimensional detection device may be a detection sensor with spatial perception capability, such as a three-dimensional laser radar, and the specific type of the three-dimensional detection device is not limited herein.
When an environment grid map needs to be constructed, the robot can trigger the SLAM system to operate, initialize the environment grid map with a preset size and a grid map structure table, and autonomously control the robot to move in the environment. Specifically, after the SLAM system is operated, the origin of the map can be set according to the pose when the three-dimensional detection device acquires the first frame of key point cloud frame, wherein the pose comprises: a position, in particular a two-dimensional coordinate under a given plane (typically the ground plane), and its orientation; that is, when the three-dimensional detection device acquires the first frame point cloud key frame, the position of the three-dimensional detection device itself is the origin position of the map.
During the movement of the robot in the environment, the movement of the robot itself may be monitored according to its Inertial Measurement Unit (IMU) or other sensors. Once the movement of the robot is monitored to meet a preset movement condition, for example, the moving distance reaches a preset distance threshold, or the moving angle reaches a preset angle threshold, the three-dimensional detection device can be triggered to perform one-time detection on the environment, so that a new frame of point cloud key frame is obtained, and the pose of the point cloud key frame is obtained by the three-dimensional detection device through detection. That is, each frame of the point cloud key frame has corresponding pose information, which represents the pose of the three-dimensional detection device when acquiring the point cloud key frame.
It will be appreciated that since the three-dimensional probe device is typically fixed to the robot, the pose of the robot is also determined after the pose of the three-dimensional probe device is known. For convenience of subsequent description, the pose of the three-dimensional detection device can be equivalent to the pose of the robot. That is, the position of the three-dimensional detection device may be regarded as the position of the robot, and the orientation of the three-dimensional detection device may be regarded as the orientation of the robot.
It can be understood that, as the robot moves, the sizes of the environment grid map and the grid map structure table may be correspondingly increased when there is a need, and the sizes of the environment grid map and the grid map structure table are always kept synchronous, which is not described herein again.
In order to realize the real-time construction of the grid map, after the robot acquires a new point cloud key frame through the three-dimensional detection equipment each time, the execution of the step 101 and the subsequent steps can be triggered, so that the environmental grid map can be updated according to the latest point cloud key frame. In the practical application process, in order to save calculation power, when the robot obtains the 1 st frame point cloud key frame, a virtual line beam ranging result corresponding to the 1 st frame point cloud key frame can be generated and stored in a storage space; therefore, when the robot obtains the 2 nd frame point cloud key frame, the virtual line beam distance measurement result corresponding to the 1 st frame point cloud key frame is stored in the storage space, and only the virtual line beam distance measurement result corresponding to the 2 nd frame point cloud key frame needs to be generated and stored in the storage space at this time; by analogy, when the robot obtains the nth frame of point cloud key frame, the virtual line beam ranging result corresponding to the previous n frames of point cloud key frames is already stored in the storage space, and only the virtual line beam ranging result corresponding to the nth frame of point cloud key frame needs to be generated and stored in the storage space. That is, for each point cloud key frame currently acquired by the three-dimensional detection device, although the robot needs to generate a corresponding virtual line bundle ranging result, the actual generation time may not be uniform, specifically: for any point cloud key frame, the robot can generate a virtual line bundle ranging result corresponding to the point cloud key frame immediately according to a preset height interval after obtaining the point cloud key frame, wherein the height interval plays a role in primarily screening points in the point cloud key frame.
And 102, maintaining a grid map structure table according to the pose of the three-dimensional detection equipment respectively corresponding to each point cloud key frame and the virtual wire harness distance measurement result respectively corresponding to each point cloud key frame.
The grid map structure table is used for describing the state of each grid in the environment grid map. Specifically, the grid has three states: occupied, idle, and unknown. For any point cloud key frame, the robot can generate a two-dimensional virtual line bundle corresponding to the point cloud key frame in a grid map structure table according to the pose of the three-dimensional detection device corresponding to the point cloud key frame and the virtual line bundle distance measurement result. According to the path of the virtual wire harness, the robot can maintain the state of each grid in the grid map structure table. In the embodiment of the present application, the grid map structure table may be understood as a temporary grid map.
It should be noted that, when the height interval concerned by the robot has a large span, in order to ensure the accuracy of the subsequent environment grid map, the robot may consider maintaining two or more grid map structure tables, where different grid map structure tables are used to describe the states of each grid in the environment grid map in different height ranges, and the size ranges of the maps represented by the different grid map structure tables are completely the same.
And 103, updating the environment grid map according to the grid map structure table.
When the span of the height interval concerned by the robot is small, the robot can maintain a grid map structure table; in this case, the grid map structure table itself may be equivalent to the environment grid map, that is, the state of each grid represented by the grid map structure table is the state of each corresponding grid in the environment grid map. When the span of the height interval concerned by the robot is large, the robot can generally maintain two or more grid map structure tables; in this case, the robot may merge the maintained grid map structure tables, and update the environment grid map according to the result of the merging.
Specifically, it has been described above that the grid MAP structure table is similar to the temporary grid MAP, so that taking the robot maintaining two grid MAP structure tables, MAP1 and MAP2 as an example, the following table 1 is used to exemplify the strategy adopted in the fusion:
Figure BDA0003854102750000061
TABLE 1
The MAP refers to an environment grid MAP obtained after fusion. As can be seen from table 1 above, for a trellis with the same index, if the state of the trellis in MAP1 and/or MAP2 is occupied, the final state of the trellis in MAP is also occupied; if the state of the trellis in MAP1 and MAP2 is unknown, the final state of the trellis in MAP is also unknown; if the state of the grid in MAP1 is idle and the state in MAP2 is idle or unknown, or the state of the grid in MAP2 is idle and the state in MAP1 is idle or unknown, the final state of the grid in MAP is idle.
In some embodiments, considering that the robot may generate the virtual line beam ranging result corresponding to each point cloud key frame by using the same process, for convenience of understanding, the generation process of the virtual line beam ranging result corresponding to any point cloud key frame is described herein by taking any point cloud key frame as an example. The generation process comprises:
step 1011, determining the number of the virtual beams and the angular resolution of the virtual beams according to the attributes of the three-dimensional detection equipment.
The properties of the three-dimensional detection device include: the number of laser points and the horizontal angle resolution of one horizontal scanning line of the three-dimensional detection device. In the embodiment of the present application, the number of virtual beams is equal to the number of laser points, and for convenience of subsequent description, the number of virtual beams is denoted as H _ NUM; similarly, the angular resolution of the virtual beam is also equal to the horizontal angular resolution, and for the convenience of the following description, the angular resolution of the virtual beam is denoted as H _ RES. Generally, the number and angular resolution of virtual beams satisfy the following relationship:
Figure BDA0003854102750000071
at step 1012, an array is created.
Wherein the number of elements of the array is equal to the number of virtual harnesses, and the value of each element in the array is initialized to INFINITY. It should be noted that, the number of arrays is not limited in the embodiments of the present application, and the robot may create a certain number of arrays according to the span of the height interval concerned by the robot.
Specifically, when the robot focuses only on a higher obstacle, a first array associated with the higher obstacle may be correspondingly created. For convenience of description, the higher obstacle may be referred to as a first obstacle. It can be understood that, subsequently, according to the first array, the robot only generates a corresponding grid map structure table.
Specifically, when the robot focuses only on a lower obstacle, a second array associated with the lower obstacle may be correspondingly created. For convenience of description, the lower obstacle may be referred to as a second obstacle. It can be understood that, subsequently, according to the second array, the robot only generates a corresponding grid map structure table.
Obviously, the first obstacle is used as a higher obstacle, the second obstacle is used as a lower obstacle, and the height of the first obstacle is higher than that of the second obstacle; that is, the first obstacle belongs to a non-low obstacle, and the second obstacle belongs to a low obstacle.
Specifically, when the robot focuses not only on a lower obstacle but also on a higher obstacle, the robot may create the first array and the second array correspondingly. It can be understood that, subsequently, according to the first array and the second array, the robot may correspondingly generate two grid map structure tables, which are: a first grid map structure table for a first obstacle (i.e., a non-low obstacle), and a second grid map structure table for a second obstacle (i.e., a low obstacle).
For the sake of convenience in the following description, the first array may be referred to as range [ H _ NUM ], and the second array may be referred to as low _ range [ H _ NUM ].
And 1013, updating the array according to the height interval, the angular resolution and the point cloud key frame, wherein the updated array is used for representing the virtual wire harness ranging result.
The robot can firstly pass through the height interval to primarily screen each point of the point cloud key frame. And then, the robot can further screen the points reserved after screening, and update the array according to the result of further screening.
Take the first array and the second array as examples, as set forth above: the updated first array can be used for representing the distance measurement result obtained by the virtual wire harness hitting on the first obstacle (non-low obstacle); the updated second array may be used to characterize the range finding that the virtual line is hitting on a second obstacle (a low obstacle).
Through the process, the robot can obtain the ranging results of a limited number of virtual wire harnesses in an array form. In addition, in the process of updating the array, the robot can screen the points in the point cloud key frame, so that the excessive demand of the robot on computing power can be avoided, and the process can be realized on a platform with lower computing power.
In some embodiments, step 1013 specifically includes:
a1, screening candidate points from a point cloud key frame, wherein the candidate points are as follows: points in the height interval.
The robot can traverse the points in the point cloud key frame to judge whether the points are in the set height interval. It will be appreciated that the points within the altitude interval are the points of interest to the robot and thus the points within the altitude interval can be determined by the robot as candidate points, thereby allowing points on the ground and points of apparent inattention to the robot to be filtered out. Specifically, taking any point as an example, the coordinates of the point may be represented as (x, y, z). Wherein X represents the offset of the point on the X axis of the three-dimensional detection equipment relative to the three-dimensional detection equipment; y represents the offset of the point on the Y axis of the three-dimensional detection equipment relative to the three-dimensional detection equipment; z represents the offset of the point on the Z axis of the three-dimensional detection device relative to the three-dimensional detection device (namely the height relative to the three-dimensional detection device); the XY plane is generally parallel to the designated plane (i.e., the ground plane). Then the robot may compare the coordinate z value of the point with the set height interval to determine whether the point is a candidate point.
In the case where the robot focuses on both the first obstacle and the second obstacle, the span of the height section is generally large. Considering that the heights of the obstacles corresponding to the first obstacle and the second obstacle are different, in order to realize relatively accurate screening, the height sections of interest of the first obstacle and the second obstacle can be respectively and correspondingly set for the first obstacle and the second obstacle according to the height sections, specifically: aiming at the first obstacle (namely the first array), a first height interval can be correspondingly set according to the set height interval and the general height of the first obstacle; for the second obstacle (i.e. the second group), the second height interval may be set according to the set height interval and the general height of the second obstacle. It will be appreciated that in this way, more targeted candidate points may be screened for the first array and the second array, respectively.
By way of example only, in the height interval [ z ] 01 ,z 02 ]In this case, the first height interval may be [ z ] 03 ,z 02 ]The second height interval may be [ z ] 01 ,z 04 ]Wherein z is 03 >z 01 ,z 04 <z 02 And z is 04 >z 03 . Wherein z is 04 >z 03 The reason for (2) is: the second obstacle (i.e., a low obstacle) of interest to the embodiments of the present application needs to be at z 03 No obstacle above the height; but if only z is of interest 01 To z 03 At the point in the height interval, the robot can not know that the obstacle corresponding to the point is at z 03 Whether there is no obstacle above the height; based on this, the height interval in which the robot is interested may be relaxed for the second obstacle to avoid erroneously identifying a point on the first obstacle as a point on the second obstacle.
And A2, calculating the orientation angle of each candidate point relative to the three-dimensional detection device and the projection distance of each candidate point relative to the three-dimensional detection device.
The projection distance means: the distance between the candidate point projected on the designated plane and the three-dimensional detection device, that is, the distance between the candidate point and the three-dimensional detection device on the designated plane, where the designated plane is specifically an XY plane (which may be equivalent to a ground plane) of the three-dimensional detection device. Taking the example that the coordinates of the candidate point are expressed as (x, y, z), the candidate isThe orientation angle of the point relative to the three-dimensional detection device can be calculated by the following formula:
Figure BDA0003854102750000091
wherein, the origin is the calculated orientation distance; the projection distance of the candidate point relative to the three-dimensional detection device can be calculated by the following formula:
Figure BDA0003854102750000092
wherein, horizon _ range is the calculated projection distance.
And A3, updating the first array and the second array according to the orientation angle of each candidate point relative to the three-dimensional detection device and the projection distance and the angular resolution of each candidate point relative to the three-dimensional detection device.
Specifically, the first array may be updated by the following process:
and B1, calculating a first index value corresponding to the candidate point according to the orientation angle and the angular resolution of the candidate point relative to the three-dimensional detection device based on each candidate point screened out aiming at the first array.
The first index value corresponding to the candidate point can be calculated by the following formula:
Figure BDA0003854102750000101
wherein, index1 is the calculated first index value, and the origin and H _ RES have been explained in the foregoing, which is not described herein again.
And B2, comparing the value of the first target element with the projection distance of the candidate point relative to the three-dimensional detection equipment.
Wherein the first target element is: the first index value indicates an element in the first array. That is, the robot can compare the range [ index1] with the horizon _ range corresponding to the candidate points.
And B3, if the projection distance of the candidate point relative to the three-dimensional detection equipment is smaller than the value of the first target element, updating the value of the first target element into the projection distance of the candidate point relative to the three-dimensional detection equipment.
That is, when the range _ range < range [ index1] corresponding to the candidate point, the robot may update the range [ index1] to the range _ range. Correspondingly, when the horizon _ range corresponding to the candidate point is larger than or equal to the range [ index1], the robot does not update the value of the range [ index1 ].
It will be appreciated that after steps B1-B3 have been performed for all candidate points, the value of any element in the first array may eventually be updated as: the minimum projection distance of the candidate point at the corresponding orientation angle.
Specifically, the second array may be updated by the following process:
c1, creating a container.
Wherein, similar to the created array, the number of elements of the container is equal to the number of virtual harnesses. It should be noted that the elements in the container are specifically priority queues implemented by a small top-heap structure, and the priority queues are used for storing the value pairs of all candidate points belonging to the same orientation angle origin in the following; the value pair is composed of the projection distance and height corresponding to the candidate points, which can be represented as (horizontal _ range, z). It will be appreciated that each element in the container is initially empty (i.e., each priority queue is initially empty).
For the convenience of the following description, the container may be denoted vec _ priority _ queue [ H _ NUM ].
And C2, respectively calculating a second index value corresponding to each candidate point according to the orientation angle and the angular resolution of each candidate point relative to the three-dimensional detection equipment.
For any candidate point, the second index value corresponding to the candidate point can be calculated by the following formula:
Figure BDA0003854102750000111
wherein, index2 is the calculated second index value, and the origin and H _ RES have already been explained in the foregoing, and are not described herein again.
And C3, for each second index value, inserting the value pair of each candidate point corresponding to the second index value into a second target element according to the sequence of the projection distance from small to large, wherein the second target element is as follows: the second index value is an element indicated in the container.
It has been described above that the value pairs of the candidate points considered in the embodiments of the present application specifically include the projection distances and heights of the candidate points. It will be appreciated that, with this step, each element (i.e. each priority queue) actually stores: the value pairs of (horizontal _ range, z) belonging to all candidate points under the same orientation angle origin are used as the sequence of the value pairs in the element (i.e. priority queue) in the order of the projection distance from small to large. Finally, the head of line of each element (i.e., each priority queue) stores: corresponding to the orientation angle origin, the value pair (horizontal _ range, z) of the candidate point with the smallest distance (i.e. the candidate point closest to the three-dimensional detection device on the XY plane) is projected.
For example only, if the second index values corresponding to the four candidate points P1, P2, P3, and P4 are the same and all are 8, the value pairs of the four candidate points may be inserted into the element vec _ priority _ queue [8 ]. Assuming that the value pair of P1 is (horizontal _ range1, z 1), the value pair of P2 is (horizontal _ range2, z 2), the value pair of P3 is (horizontal _ range3, z 3), the value pair of P4 is (horizontal _ range4, z 4), and horizontal _ range3 < horizontal _ range2 < horizontal _ range1 < horizontal _ range4, the insertion order is: the pair of values of P3-P2-P1-P4. And the characteristics of the queue are as follows: an insert operation is performed at the tail of the queue, and thus the ordering of the pairs of values contained in the element vec _ priority _ queue [8] is equivalent to the insertion order of the respective pairs of values. Finally, in element vec _ priority _ queue [8], the value pair for P3 is at the head of the queue, the value pair for P2 is at the second position of the queue, the value pair for P3 is at the third position of the queue, and the value pair for P4 is at the tail of the queue.
And C4, screening a third target element from the container.
For any element in the container, whether the data pair of the element at the head of the queue meets the preset screening condition can be judged. If so, the element may be determined to be a third target element. It is understood that the robot may set the screening condition in advance, where the screening condition is mainly used to determine whether the candidate point corresponding to the value pair of each element at the head of the line is really from the second obstacle (i.e., a short obstacle).
Considering that the most significant difference between the first obstacle and the second obstacle is the height, the robot may determine, for each element in the container, whether the element is a third target element according to the height of the element in a first target value pair and a preset height threshold, where the first target value pair is: in this element, the value pair at the head of the line. It is understood that the height threshold is specifically: the maximum height of the second obstacle of interest to the robot.
In some embodiments, referring to fig. 2, to achieve precise screening, for any element in the container, the robot may determine whether it is the third target element by the following process:
c41, detecting whether the height in the first target value pair of the elements is larger than a height threshold value. If yes, go to step C47, otherwise go to step C42.
Wherein the first target value pair is: the value pair at the head of the queue. Noting the height in the first target value pair as height _ nearest, if height _ nearest > H, execute step C47, otherwise execute step C42. Where H is the height threshold.
And C42, detecting whether a second target value pair exists in the element. If yes, go to step C43, otherwise go to step C48.
Wherein the second target value pair is: a value pair at the ith position in an element, where i is initially 2.
And C43, detecting whether the difference of the projection distances between the second target value pair and the first target value pair is smaller than a preset first difference threshold value. If yes, step C45 is executed, and if no, step C44 is executed.
And C45, recording the projection distance of the second target value pair as range _ i, and recording the projection distance of the first target value pair as range _ neighbor, if the range _ i-range _ neighbor is less than D1, executing step C44, otherwise, executing step C44. Wherein D1 is a first difference threshold.
And C44, detecting whether the difference of the projection distances of the second target value pair and the first target value pair is larger than a preset second difference threshold value. If yes, go to step C48, otherwise go to step C46.
When range _ i-range _ nearest > D2, perform step C48, otherwise perform step C46. Wherein D2 is the second difference threshold. It is noted that the second difference threshold is greater than the first difference threshold, i.e., D2 > D1.
And C45, detecting whether the height in the second target value pair is larger than a height threshold value. If yes, go to step C47, otherwise go to step C46.
Noting the height of the second target value pair as height _ i, if height _ i > H, perform step C47, otherwise perform step C46.
C46, updating i and jumping to execute the step C42.
Wherein, the updating operation specifically comprises the following steps: i is self-increased by 1, i = i +1.
And C47, determining that the element is not the third target element.
And C48, determining the element as a third target element.
And C5, for each third target element in the container, updating the value of the fourth target element to the projection distance in the numerical pair of the head of line in the third target element, wherein the fourth target element is as follows: in the second array, the elements having the same index value as the third target element.
If the screened third target element is vec _ priority _ queue [ x ], the projection distance in the value pair at the head of the queue (i.e., the first target value pair) in vec _ priority _ queue [ x ] may be assigned to low _ range [ x ].
For example only, if vec _ priority _ queue [8] shown above is determined as the third target element through step C4, the projected distance horizon _ range3 in the numerical pair at the head of the queue in vec _ priority _ queue [8] may be assigned to low _ range [8], that is, the value of low _ range [8] is updated as horizon _ range3.
In some embodiments, to implement effective maintenance on the grid map structure table, step 102 specifically includes:
and 1021, determining the path of the virtual line beam according to the position and the pose of the three-dimensional detection equipment corresponding to the point cloud key frame and the virtual line beam distance measurement result aiming at each point cloud key frame.
When the array is used for representing the virtual wire harness ranging result, different elements of the array correspond to different orientation angles, and the value of each element is as follows: and (4) correspondingly measuring the distance of the virtual line bundle which is under the orientation angle and is shot on the obstacle. Based on the method, aiming at each point cloud key frame, the path of a virtual line bundle can be determined according to the pose of the three-dimensional detection equipment corresponding to the point cloud key frame and one element in the array. Wherein, the starting point of the path is: a position indicated by a pose of the three-dimensional detection apparatus; the end points of the path are: and under the orientation angle corresponding to the element, separating the element from the starting point by a position of a target distance, wherein the target distance is the value of the element. Subsequently, the robot may generate a path of the virtual wire harness according to a starting point and an end point of the path by combining with Bresenham's line algorithm (Bresenham's algorithm), thereby obtaining all grids passed by the virtual wire harness.
And step 1022, maintaining a grid map structure table according to the path of each virtual wire harness.
It can be understood that, for the path of any virtual line beam, the end point is the hit point of the virtual line beam (i.e. the point where the hit obstacle is located). Based on this, the grid map structure table can be maintained according to the path of each virtual wire harness, and the method specifically comprises the following steps:
if the grid is a grid through which a certain virtual wire harness passes, if the state of the grid is originally unknown, the robot can update the state of the grid to be idle in the grid map structure table; if the state of the grid is not originally unknown, the robot may subtract 1 from the number of hits on the grid.
In the case where a grid is a grid corresponding to an end point (i.e., a hit point) of a certain virtual line bundle, the robot may add 1 to the number of hits of the grid.
For each grid, when the hitting times of the grid are larger than a preset time threshold, the robot can update the state of the grid into occupation in a grid map structure table; when the number of hits of the grid is less than or equal to the number threshold, the robot may update the state of the grid to idle in the grid map structure table.
It can be understood that in the grid map structure table, the states of all grids are initially unknown, and the number of hits of all grids is initially 0.
Under the condition that the robot generates the first array, the robot can maintain a first grid map structure table according to the first array corresponding to each point cloud key frame and the pose of the three-dimensional detection equipment corresponding to each point cloud key frame; the first grid map structure table may be understood as: a temporary grid map based on the first obstacle (not a short obstacle).
Similarly, under the condition that the robot generates the second array, the robot can maintain a second grid map structure table according to the second array corresponding to each point cloud key frame and the pose of the three-dimensional detection device corresponding to each point cloud key frame; the second grid map structure table may be understood as: a temporary grid map based on the second obstacle (low obstacle).
In some embodiments, after the robot moves to a position that has been reached before in the environment, a loop correction operation may be triggered, and the loop correction operation may correct the poses of the three-dimensional detection devices corresponding to all the point cloud key frames. After the correction is completed, the robot can trigger the execution of steps 102 and 103 again, so that the grid map structure table can be updated according to the corrected pose of the three-dimensional detection device, and a more accurate environment grid map can be obtained.
Therefore, the grid map is not generated by the two-dimensional detection device any longer, but the grid map is generated by the three-dimensional detection device by utilizing the space perception capability of the three-dimensional detection device. Specifically, for each point cloud key frame currently acquired by the three-dimensional detection device, a virtual wire harness distance measurement result corresponding to the point cloud key frame may be generated according to a preset height interval, then a grid map structure table may be maintained according to the pose of the three-dimensional detection device corresponding to each point cloud key frame and the virtual wire harness distance measurement result corresponding to each point cloud key frame, where the grid map structure table is used to describe the state of each grid in the environment grid map, and finally the environment grid map may be updated according to the grid map structure table. The method has the advantages that the influence of obstacles in the interested height interval on the grid map is fully considered in the process of constructing the grid map, high-calculation-force support is not needed, and the grid map can be efficiently constructed in real time aiming at the space obstacles of planes with different heights in the common platform operation environment.
Corresponding to the grid map construction method provided above, the embodiment of the present application further provides a grid map construction apparatus. As shown in fig. 3, the grid map construction apparatus 3 includes:
the generating module 301 is configured to generate, for each point cloud key frame currently acquired by the three-dimensional detection device, a virtual line bundle ranging result corresponding to the point cloud key frame according to a preset height interval;
a maintenance module 302, configured to maintain a grid map structure table according to the pose of the three-dimensional detection device corresponding to each point cloud key frame and the virtual wire harness ranging result corresponding to each point cloud key frame, where the grid map structure table is used to describe the state of each grid in the environment grid map;
and the updating module 303 is configured to update the environment grid map according to the grid map structure table.
In some embodiments, the generation module 301 includes:
the wire harness parameter determining submodule is used for determining the number of the virtual wire harnesses and the angular resolution of the virtual wire harnesses according to the attribute of the three-dimensional detection equipment;
the array creating submodule is used for creating an array, wherein the number of elements of the array is equal to the number of the virtual wire harnesses, and the value of each element in the array is initialized to be infinite;
and the ranging result updating submodule is used for updating the array according to the height interval, the angular resolution and the point cloud key frame, and the updated array is used for representing the virtual wire harness ranging result.
In some embodiments, the array comprises: a first array associated with a first obstacle, and a second array associated with a second obstacle, wherein the first obstacle has a height that is greater than a height of the second obstacle; a ranging result update submodule comprising:
the screening unit is used for screening out candidate points from the point cloud key frame, and the candidate points are as follows: points in the altitude interval;
the calculating unit is used for calculating the orientation angle of each candidate point relative to the three-dimensional detection device and the projection distance of each candidate point relative to the three-dimensional detection device, wherein the projection distance is as follows: the distance between the candidate point projected on the designated plane and the three-dimensional detection equipment;
and the updating unit is used for updating the first array and the second array according to the orientation angle of each candidate point relative to the three-dimensional detection equipment and the projection distance and the angular resolution of each candidate point relative to the three-dimensional detection equipment.
In some embodiments, the update unit comprises:
the first index value calculation operator unit is used for calculating a first index value corresponding to each candidate point according to the orientation angle and the angular resolution of the candidate point relative to the three-dimensional detection equipment;
and the comparison subunit is used for comparing the value of the first target element with the projection distance of the candidate point relative to the three-dimensional detection device, wherein the first target element is as follows: an element of the first index value indicated in the first array;
and the first updating subunit is configured to update the value of the first target element to the projection distance of the candidate point with respect to the three-dimensional detection device if the projection distance of the candidate point with respect to the three-dimensional detection device is smaller than the value of the first target element.
In some embodiments, the update unit comprises:
a container creating subunit, configured to create a container, where the number of elements of the container is equal to the number of virtual pencil bundles, the elements in the container are a queue, and each element of the container is initially empty;
the second index value operator unit is used for respectively calculating a second index value corresponding to each candidate point according to the orientation angle and the angular resolution of each candidate point relative to the three-dimensional detection equipment;
and the container updating subunit is configured to insert, for each second index value, a value pair of each candidate point corresponding to the second index value into a second target element according to the order of the projection distances from small to large, where the value pair includes the projection distance and the height, and the second target element is: an element indicated in the container by the second index value;
the element screening subunit is used for screening a third target element from the container, wherein the value pair at the head of the queue in the third target element meets a preset screening condition;
a second updating subunit, configured to update, for each third target element in the container, a value of a fourth target element to a projection distance in a numerical value pair at the head of the line in the third target elements, where the fourth target element is: in the second array, the elements having the same index value as the third target element.
In some embodiments, the element screening subunit is specifically configured to determine, for each element in the container, whether the element is a third target element according to the height of the first target value pair of the element and the screening condition, where the first target value pair is: the screening conditions are set according to a preset height threshold value for the numerical value pairs at the head of the line in the elements.
In some embodiments, maintenance module 302 includes:
the virtual wire harness determining sub-module is used for determining the path of the virtual wire harness according to the pose of the three-dimensional detection equipment corresponding to the point cloud key frame and the virtual wire harness distance measurement result aiming at each point cloud key frame;
and the structure table maintenance submodule is used for maintaining the grid map structure table according to the path of each virtual wire harness.
Therefore, the grid map is not generated by the two-dimensional detection device any longer, but the grid map is generated by the three-dimensional detection device by utilizing the space perception capability of the three-dimensional detection device. Specifically, for each point cloud key frame currently acquired by the three-dimensional detection device, a virtual wire harness distance measurement result corresponding to the point cloud key frame may be generated according to a preset height interval, then a grid map structure table may be maintained according to the pose of the three-dimensional detection device corresponding to each point cloud key frame and the virtual wire harness distance measurement result corresponding to each point cloud key frame, where the grid map structure table is used to describe the state of each grid in the environment grid map, and finally the environment grid map may be updated according to the grid map structure table. It can be understood that, in the process of constructing the grid map, the influence of the obstacles in the interested height interval on the grid map is fully considered, high calculation force support is not needed, and the grid map can be efficiently constructed in real time aiming at the space obstacles of different height planes in the common platform operation environment.
Corresponding to the grid map construction method provided above, an embodiment of the present application further provides an electronic device. Referring to fig. 4, an electronic device 4 in the embodiment of the present application includes: a memory 401, one or more processors 402 (only one shown in fig. 4), and computer programs stored on the memory 401 and executable on the processors. Wherein: the memory 401 is used for storing software programs and units, and the processor 402 executes various functional applications and data processing by running the software programs and units stored in the memory 401, so as to acquire resources corresponding to the preset events. Specifically, the processor 402, by running the above-mentioned computer program stored in the memory 401, implements the steps of:
generating a virtual wire harness ranging result corresponding to the point cloud key frame according to a preset height interval aiming at each point cloud key frame currently acquired by the three-dimensional detection equipment;
maintaining a grid map structure table according to the pose of the three-dimensional detection device corresponding to each point cloud key frame and the virtual wire harness distance measurement result corresponding to each point cloud key frame, wherein the grid map structure table is used for describing the state of each grid in the environment grid map;
and updating the environment grid map according to the grid map structure table.
Assuming the above is the first possible implementation, in a second possible implementation provided on the basis of the first possible implementation, generating a virtual line bundle ranging result corresponding to a point cloud key frame according to a preset height interval includes:
determining the number of the virtual wire harnesses and the angular resolution of the virtual wire harnesses according to the attribute of the three-dimensional detection equipment;
creating an array, wherein the number of elements of the array is equal to the number of virtual harnesses, and the value of each element in the array is initialized to infinity;
and updating the array according to the height interval, the angular resolution and the point cloud key frame, wherein the updated array is used for representing the virtual line beam ranging result.
In a third possible implementation manner provided on the basis of the second possible implementation manner, the array includes: a first array associated with a first obstacle, and a second array associated with a second obstacle, wherein the first obstacle has a height that is higher than the height of the second obstacle; updating the array according to the height interval, the angular resolution and the point cloud key frame, and comprising the following steps:
screening out candidate points from the point cloud key frame, wherein the candidate points are as follows: points in the height interval;
calculating the orientation angle of each candidate point relative to the three-dimensional detection device and the projection distance of each candidate point relative to the three-dimensional detection device, wherein the projection distance is as follows: the distance between the candidate points projected on the designated plane and the three-dimensional detection equipment;
and updating the first array and the second array according to the orientation angle of each candidate point relative to the three-dimensional detection device and the projection distance and the angular resolution of each candidate point relative to the three-dimensional detection device.
In a fourth possible implementation manner provided on the basis of the third possible implementation manner, the updating process of the first array includes:
for each candidate point, calculating a first index value corresponding to the candidate point according to the orientation angle and the angular resolution of the candidate point relative to the three-dimensional detection equipment;
comparing the value of the first target element with the projection distance of the candidate point relative to the three-dimensional detection equipment, wherein the first target element is as follows: an element for which the first index value is indicated in the first array;
and if the projection distance of the candidate point relative to the three-dimensional detection equipment is smaller than the value of the first target element, updating the value of the first target element into the projection distance of the candidate point relative to the three-dimensional detection equipment.
In a fifth possible implementation manner provided on the basis of the third possible implementation manner, the updating process of the second array includes:
creating a container, wherein the number of elements of the container is equal to the number of virtual harnesses, the elements in the container are queues, and each element of the container is initially empty;
respectively calculating a second index value corresponding to each candidate point according to the orientation angle and the angular resolution of each candidate point relative to the three-dimensional detection equipment;
for each second index value, inserting the value pair of each candidate point corresponding to the second index value into a second target element according to the sequence of the projection distance from small to large, wherein the value pair comprises the projection distance and the height, and the second target element is as follows: an element indicated in the container by the second index value;
screening a third target element from a container, wherein a value pair at the head of the queue in the third target element meets a preset screening condition;
for each third target element in the container, updating the value of the fourth target element to the projection distance in the numerical pair at the head of the line in the third target element, wherein the fourth target element is: in the second array, the elements having the same index value as the third target element.
In a sixth possible embodiment provided on the basis of the fifth possible embodiment, screening out a third target element from a container includes:
for each element in the container, determining whether the element is a third target element according to the height of the first target value pair of the element and the screening condition, wherein the first target value pair is: the numerical value pairs at the head of the queue in the element, and the screening condition is set according to a preset height threshold value.
In a seventh possible implementation manner provided based on the first possible implementation manner, maintaining a grid map structure table according to the poses of the three-dimensional detection devices respectively corresponding to the point cloud key frames and the virtual line bundle ranging results respectively corresponding to the point cloud key frames includes:
aiming at each point cloud key frame, determining a path of a virtual line beam according to the position and posture of the three-dimensional detection equipment corresponding to the point cloud key frame and the virtual line beam distance measurement result;
and maintaining a grid map structure table according to the path of each virtual wire harness.
It should be understood that, in the embodiment of the present Application, the Processor 402 may be a Central Processing Unit (CPU), and the Processor may also be other general-purpose processors, digital Signal Processors (DSPs), application Specific Integrated Circuits (ASICs), field-Programmable Gate arrays (FPGAs) or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components, and the like. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
Memory 401 may include both read-only memory and random-access memory, and provides instructions and data to processor 402. Some or all of memory 401 may also include non-volatile random access memory. For example, the memory 401 may also store information of device classes.
Therefore, the grid map is not generated by the two-dimensional detection device any longer, but the grid map is generated by the three-dimensional detection device by utilizing the space perception capability of the three-dimensional detection device. Specifically, for each point cloud key frame currently acquired by the three-dimensional detection device, a virtual wire harness distance measurement result corresponding to the point cloud key frame may be generated according to a preset height interval, then a grid map structure table may be maintained according to the pose of the three-dimensional detection device corresponding to each point cloud key frame and the virtual wire harness distance measurement result corresponding to each point cloud key frame, where the grid map structure table is used to describe the state of each grid in the environment grid map, and finally the environment grid map may be updated according to the grid map structure table. The method has the advantages that the influence of obstacles in the interested height interval on the grid map is fully considered in the process of constructing the grid map, high-calculation-force support is not needed, and the grid map can be efficiently constructed in real time aiming at the space obstacles of planes with different heights in the common platform operation environment.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned functions may be distributed as different functional units and modules according to needs, that is, the internal structure of the apparatus may be divided into different functional units or modules to implement all or part of the above-mentioned functions. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the system may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the above embodiments, the description of each embodiment has its own emphasis, and reference may be made to the related description of other embodiments for parts that are not described or recited in any embodiment.
Those of ordinary skill in the art would appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of external device software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
In the embodiments provided in the present application, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the above-described system embodiments are merely illustrative, and for example, the division of the above modules or units is only one type of logical functional division, and other divisions may be realized in practice, for example, multiple units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
The integrated unit may be stored in a computer-readable storage medium if it is implemented in the form of a software functional unit and sold or used as a separate product. Based on such understanding, all or part of the flow in the method of the embodiments described above can be realized by a computer program, which can be stored in a computer-readable storage medium and can realize the steps of the embodiments of the methods described above when the computer program is executed by a processor. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer-readable storage medium may include: any entity or device capable of carrying the above-described computer program code, recording medium, usb disk, removable hard disk, magnetic disk, optical disk, computer readable Memory, read-Only Memory (ROM), random Access Memory (RAM), electrical carrier wave signal, telecommunication signal, software distribution medium, etc. It should be noted that the computer-readable storage media described above may be appropriately increased or decreased as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer-readable storage media may not include electrical carrier signals or telecommunication signals in accordance with legislation and patent practice.
The above embodiments are only used to illustrate the technical solutions of the present application, and not to limit the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present application and are intended to be included within the scope of the present application.

Claims (10)

1. A grid map construction method, comprising:
aiming at each point cloud key frame currently acquired by the three-dimensional detection equipment, generating a virtual wire harness ranging result corresponding to the point cloud key frame according to a preset height interval;
maintaining a grid map structure table according to the position and pose of the three-dimensional detection equipment corresponding to each point cloud key frame and the virtual wire harness ranging result corresponding to each point cloud key frame, wherein the grid map structure table is used for describing the state of each grid in the environment grid map;
and updating the environment grid map according to the grid map structure table.
2. The grid map construction method of claim 1, wherein the generating of the virtual line bundle ranging result corresponding to the point cloud key frame according to the preset height interval comprises:
determining the number of virtual wire harnesses and the angular resolution of the virtual wire harnesses according to the attribute of the three-dimensional detection equipment;
creating an array, wherein the number of elements of the array is equal to the number of virtual harnesses, and the value of each element in the array is initialized to infinity;
and updating the array according to the height interval, the angular resolution and the point cloud key frame, wherein the updated array is used for representing a virtual wire harness ranging result.
3. The grid mapping method of claim 2, wherein the array comprises: a first array associated with a first obstacle, and a second array associated with a second obstacle, wherein the first obstacle has a height that is higher than a height of the second obstacle; the updating the array according to the height interval, the angular resolution and the point cloud key frame comprises:
screening out candidate points from the point cloud key frame, wherein the candidate points are as follows: a point in the height interval;
calculating the orientation angle of each candidate point relative to the three-dimensional detection device and the projection distance of each candidate point relative to the three-dimensional detection device, wherein the projection distance is as follows: the distance between the candidate points projected on a designated plane and the three-dimensional detection equipment;
and updating the first array and the second array according to the orientation angle of each candidate point relative to the three-dimensional detection equipment, the projection distance of each candidate point relative to the three-dimensional detection equipment and the angular resolution.
4. The grid mapping method of claim 3, wherein the updating of the first array comprises:
for each candidate point, calculating a first index value corresponding to the candidate point according to the orientation angle and the angular resolution of the candidate point relative to the three-dimensional detection equipment;
comparing the value of a first target element with the projection distance of the candidate point relative to the three-dimensional detection device, wherein the first target element is: an element indicated in the first array by the first index value;
and if the projection distance of the candidate point relative to the three-dimensional detection equipment is smaller than the value of the first target element, updating the value of the first target element to the projection distance of the candidate point relative to the three-dimensional detection equipment.
5. The grid mapping method according to claim 3, wherein the updating process of the second array includes:
creating a container, wherein the number of elements of the container is equal to the number of virtual harnesses, the elements in the container are queues, and each element of the container is initially empty;
respectively calculating a second index value corresponding to each candidate point according to the orientation angle and the angular resolution of each candidate point relative to the three-dimensional detection equipment;
for each second index value, inserting a value pair of each candidate point corresponding to the second index value into a second target element according to a sequence of projection distances from small to large, where the value pair includes a projection distance and a height, and the second target element is: an element indicated in the container by the second index value;
screening a third target element from the container, wherein the value pair at the head of the queue in the third target element meets a preset screening condition;
for each of the third target elements in the container, updating a value of a fourth target element to be a projection distance in a numerical pair at the head of line in the third target element, wherein the fourth target element is: in the second array, the elements having the same index value as the third target element.
6. The grid mapping method of claim 5, wherein said screening out a third target element from said container comprises:
for each of the elements in the container, determining whether the element is a third target element according to the height of the first target value pair of the elements and the screening condition, wherein the first target value pair is: and the screening condition is set according to a preset height threshold value.
7. The grid map construction method according to claim 1, wherein the maintaining of the grid map structure table according to the pose of the three-dimensional detection device corresponding to each point cloud key frame and the virtual line beam ranging result corresponding to each point cloud key frame comprises:
aiming at each point cloud key frame, determining a path of a virtual line beam according to the position and posture of the three-dimensional detection equipment corresponding to the point cloud key frame and the virtual line beam ranging result;
and maintaining the grid map structure table according to the path of each virtual wire harness.
8. A grid map construction apparatus, comprising:
the generating module is used for generating a virtual wire harness ranging result corresponding to each point cloud key frame which is currently acquired by the three-dimensional detection equipment according to a preset height interval;
the maintenance module is used for maintaining a grid map structure table according to the poses of the three-dimensional detection equipment respectively corresponding to the point cloud key frames and the virtual wire harness distance measurement results respectively corresponding to the point cloud key frames, wherein the grid map structure table is used for describing the states of all grids in the environment grid map;
and the updating module is used for updating the environment grid map according to the grid map structure table.
9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method of any of claims 1 to 7 when executing the computer program.
10. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1 to 7.
CN202211142230.2A 2022-09-20 2022-09-20 Grid map construction method, grid map construction device and electronic equipment Pending CN115507840A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211142230.2A CN115507840A (en) 2022-09-20 2022-09-20 Grid map construction method, grid map construction device and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211142230.2A CN115507840A (en) 2022-09-20 2022-09-20 Grid map construction method, grid map construction device and electronic equipment

Publications (1)

Publication Number Publication Date
CN115507840A true CN115507840A (en) 2022-12-23

Family

ID=84503515

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211142230.2A Pending CN115507840A (en) 2022-09-20 2022-09-20 Grid map construction method, grid map construction device and electronic equipment

Country Status (1)

Country Link
CN (1) CN115507840A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117739993A (en) * 2024-02-19 2024-03-22 福勤智能科技(昆山)有限公司 Robot positioning method and device, robot and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117739993A (en) * 2024-02-19 2024-03-22 福勤智能科技(昆山)有限公司 Robot positioning method and device, robot and storage medium
CN117739993B (en) * 2024-02-19 2024-04-30 福勤智能科技(昆山)有限公司 Robot positioning method and device, robot and storage medium

Similar Documents

Publication Publication Date Title
US11030803B2 (en) Method and apparatus for generating raster map
CN109509210B (en) Obstacle tracking method and device
CN110858076B (en) Equipment positioning and grid map construction method and mobile robot
CN108279670B (en) Method, apparatus and computer readable medium for adjusting point cloud data acquisition trajectory
CN108734780B (en) Method, device and equipment for generating map
CN111121754A (en) Mobile robot positioning navigation method and device, mobile robot and storage medium
CN110749901B (en) Autonomous mobile robot, map splicing method and device thereof, and readable storage medium
CN111563450B (en) Data processing method, device, equipment and storage medium
CN112700479B (en) Registration method based on CNN point cloud target detection
CN113587933B (en) Indoor mobile robot positioning method based on branch-and-bound algorithm
CN111680747B (en) Method and apparatus for closed loop detection of occupancy grid subgraphs
CN111380510B (en) Repositioning method and device and robot
CN110889808A (en) Positioning method, device, equipment and storage medium
CN112036359B (en) Method for obtaining topological information of lane line, electronic device and storage medium
CN111142514A (en) Robot and obstacle avoidance method and device thereof
CN113432533A (en) Robot positioning method and device, robot and storage medium
CN112652062A (en) Point cloud map construction method, device, equipment and storage medium
CN115507840A (en) Grid map construction method, grid map construction device and electronic equipment
CN113244619B (en) Data processing method, device, equipment and storage medium
CN112381873B (en) Data labeling method and device
CN112015938B (en) Point cloud label transfer method, device and system
CN116642490A (en) Visual positioning navigation method based on hybrid map, robot and storage medium
CN114236566A (en) Control method and device of laser system, electronic equipment and readable storage medium
CN114964204A (en) Map construction method, map using method, map constructing device, map using equipment and storage medium
CN113433566A (en) Map construction system and map construction method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination