WO2022095257A1 - 一种建图方法、装置、计算机可读存储介质及机器人 - Google Patents

一种建图方法、装置、计算机可读存储介质及机器人 Download PDF

Info

Publication number
WO2022095257A1
WO2022095257A1 PCT/CN2020/139872 CN2020139872W WO2022095257A1 WO 2022095257 A1 WO2022095257 A1 WO 2022095257A1 CN 2020139872 W CN2020139872 W CN 2020139872W WO 2022095257 A1 WO2022095257 A1 WO 2022095257A1
Authority
WO
WIPO (PCT)
Prior art keywords
grid
map
laser
probability
updated
Prior art date
Application number
PCT/CN2020/139872
Other languages
English (en)
French (fr)
Inventor
张思民
刘志超
Original Assignee
深圳市优必选科技股份有限公司
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 深圳市优必选科技股份有限公司 filed Critical 深圳市优必选科技股份有限公司
Publication of WO2022095257A1 publication Critical patent/WO2022095257A1/zh
Priority to US18/143,596 priority Critical patent/US20230273620A1/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0234Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
    • G05D1/0236Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons in combination with a laser
    • 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
    • G01C21/206Instruments for performing navigational calculations specially adapted for indoor navigation
    • 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
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/383Indoor 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/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3833Creation or updating of map data characterised by the source of data
    • G01C21/3837Data obtained from a single source
    • 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
    • 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/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0257Control of position or course in two dimensions specially adapted to land vehicles using a radar
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle

Definitions

  • the present application belongs to the field of robotics, and in particular, relates to a mapping method, a device, a computer-readable storage medium, and a robot.
  • Simultaneous Localization And Mapping for robots is an important method for robots to create laser navigation maps based on lidar data, which plays an important role in real-time localization and navigation planning in subsequent laser navigation.
  • SLAM Simultaneous Localization And Mapping
  • embodiments of the present application provide a mapping method, device, computer-readable storage medium, and robot to solve the problem of poor stability of positioning and navigation results of the robot in an environment with movable objects.
  • a first aspect of the embodiments of the present application provides a mapping method, which is applied to a robot, where the robot includes a first laser radar and a second laser radar, and the installation position of the first laser radar is higher than that of the second laser radar
  • the installation position of the lidar includes:
  • the first laser key frame is a current laser key frame collected by the first lidar
  • the second laser key frame is the current laser key frame collected by the second lidar
  • a fused grid map for robot navigation is generated according to the updated first probability map and the updated second probability map.
  • generating a fusion grid map for robot navigation according to the updated first probability map and the updated second probability map includes:
  • the first grid map and the second grid map are fused according to a preset relative pose conversion relationship to obtain the fused grid map, and the relative pose conversion relationship is the first lidar The relative pose conversion relationship with the second lidar.
  • the generating the first grid map corresponding to the updated first probability map includes:
  • the grid type of the target grid is determined according to the occupancy probability value.
  • the determining the grid type of the target grid according to the occupancy probability value includes:
  • the occupancy probability value is greater than or equal to a preset probability threshold, determining that the target grid is a black grid
  • the occupancy probability value is less than the probability threshold, determining that the target grid is a white grid
  • the occupancy probability value is empty, it is determined that the target grid is a gray grid.
  • the setting process of the relative pose conversion relationship includes:
  • the relative pose conversion relationship is determined according to the first ranging result and the second ranging result.
  • the fusion of the first grid map and the second grid map according to a preset relative pose conversion relationship to obtain the fusion grid map includes:
  • the grid is determined to be a black grid;
  • the first preset condition is: in the first grid map The corresponding grid is a black grid;
  • the second preset condition is met, it is determined that the grid is a white grid;
  • the second preset condition is: the grid corresponding to the first grid map is not a black grid, and the grid is not a black grid in the first grid map.
  • the corresponding grid in the second grid map is a white grid;
  • the grid is determined to be a gray grid.
  • the updating of the first probability map according to the current pose and the first laser key frame, to obtain the updated first probability map includes:
  • the connecting grid is the grid on the connecting line between the grid hit by the laser and the first lidar, and the first count value is all The number of times that the connected grid is hit by the laser emitted by the first lidar, and the second count value is when the connected grid is located between the grid hit by the laser and the first lidar the number of connections on the line;
  • the updated first count value and the updated second count value respectively update the occupancy probability value of each connected grid in the first probability map to obtain the updated first count value. Probability map.
  • a second aspect of the embodiments of the present application provides a mapping device, which is applied to a robot, where the robot includes a first laser radar and a second laser radar, and the installation position of the first laser radar is higher than that of the second laser radar
  • the installation location of the lidar, and the mapping device may include:
  • a first data acquisition module configured to acquire a first laser key frame, where the first laser key frame is a current laser key frame collected by the first lidar;
  • a pose calculation module configured to calculate the current pose of the robot according to the first laser key frame
  • a first map update module configured to update a first probability map according to the current pose and the first laser key frame to obtain an updated first probability map, where the first probability map is the same as the first laser The probability map corresponding to the radar;
  • a second data acquisition module configured to acquire a second laser key frame, where the second laser key frame is the current laser key frame collected by the second lidar;
  • a second map update module configured to update a second probability map according to the current pose and the second laser key frame to obtain an updated second probability map, where the second probability map is the same as that of the second laser The probability map corresponding to the radar;
  • a map fusion module configured to generate a fusion grid map for robot navigation according to the updated first probability map and the updated second probability map.
  • map fusion module may include:
  • a first grid map generation submodule for generating a first grid map corresponding to the updated first probability map
  • a second grid map generation submodule configured to generate a second grid map corresponding to the updated second probability map
  • a map fusion sub-module configured to fuse the first grid map and the second grid map according to a preset relative pose conversion relationship to obtain the fusion grid map, the relative pose conversion relationship is the relative pose conversion relationship between the first lidar and the second lidar.
  • the first grid map generation sub-module may include:
  • an occupancy probability value calculation unit configured to determine the occupancy probability value of a target grid in the updated first probability map, where the target grid is any grid in the first grid map;
  • a grid type determination unit configured to determine the grid type of the target grid according to the occupancy probability value.
  • the grid type determination unit is specifically used for:
  • the occupancy probability value is greater than or equal to a preset probability threshold, determining that the target grid is a black grid
  • the occupancy probability value is less than the probability threshold, determining that the target grid is a white grid
  • the occupancy probability value is empty, it is determined that the target grid is a gray grid.
  • mapping device may also include:
  • the ranging module is used to obtain the first ranging result of the target object by the first lidar and the second ranging result of the target object by the second lidar, and the target object is vertically Objects placed vertically in the line direction;
  • a relative pose determination module configured to determine the relative pose conversion relationship according to the first ranging result and the second ranging result.
  • map fusion submodule may include:
  • an aligning unit configured to align the first grid map and the second grid map according to a preset relative pose conversion relationship
  • the black grid determination unit is used for any grid in the fusion grid map, if it meets the first preset condition, then determine that the grid is a black grid; the first preset condition is: in The corresponding grid in the first grid map is a black grid;
  • the white grid determination unit is used to determine that the grid is a white grid if it meets a second preset condition;
  • the second preset condition is: the grid corresponding to the first grid map is not A black grid, and the corresponding grid in the second grid map is a white grid;
  • a gray grid determining unit configured to determine that the grid is a gray grid if neither of the first preset conditions nor the second preset conditions are met.
  • first map update module is specifically used for:
  • the connecting grid is the grid on the connecting line between the grid hit by the laser and the first lidar, and the first count value is all The number of times that the connected grid is hit by the laser emitted by the first lidar, and the second count value is when the connected grid is located between the grid hit by the laser and the first lidar the number of connections on the line;
  • the updated first count value and the updated second count value respectively update the occupancy probability value of each connected grid in the first probability map to obtain the updated first count value. Probability map.
  • a third aspect of the embodiments of the present application provides a computer-readable storage medium, where the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, implements the steps of any of the foregoing mapping methods.
  • a fourth aspect of the embodiments of the present application provides a robot, including a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor implements the computer program when the processor executes the computer program.
  • a fifth aspect of the embodiments of the present application provides a computer program product, which, when the computer program product runs on a robot, causes the robot to execute the steps of any one of the above-mentioned mapping methods.
  • the embodiment of the present application has the following beneficial effects: the embodiment of the present application adopts a SLAM architecture for simultaneous mapping of dual lidars, that is, a first lidar at a higher position and a lower lidar at the same time are used at the same time.
  • the second laser radar at the location is used for mapping. Because the position of the first laser radar is high, it is less disturbed by movable objects, so it can provide relatively stable positioning results. On this basis, the data of the two laser radars are analyzed. Fusion mapping is performed to obtain a fused map. Navigation based on this can greatly improve the stability of positioning and navigation by bypassing movable objects in the environment in advance.
  • FIG. 1 is a flowchart of an embodiment of a mapping method in an embodiment of the present application
  • Figure 2 is a schematic diagram of the process of laser hitting the obstacle point
  • Fig. 3 is the schematic diagram of merging the first grid map and the second grid map
  • mapping device 4 is a structural diagram of an embodiment of a mapping device in an embodiment of the present application.
  • FIG. 5 is a schematic block diagram of a robot in an embodiment of the present application.
  • the term “if” may be contextually interpreted as “when” or “once” or “in response to determining” or “in response to detecting” .
  • the phrases “if it is determined” or “if the [described condition or event] is detected” may be interpreted, depending on the context, to mean “once it is determined” or “in response to the determination” or “once the [described condition or event] is detected. ]” or “in response to detection of the [described condition or event]”.
  • the following methods can be used in laser mapping: one is laser mapping based on particle filtering, which uses particle filtering methods such as RBPF (Rao-Blackwellized Particle Filters) to estimate the pose.
  • particle filtering methods such as RBPF (Rao-Blackwellized Particle Filters) to estimate the pose.
  • RBPF Rao-Blackwellized Particle Filters
  • the particle-based method will sharply increase the resources required for its processing when the area is large and when dual radars are used, and each particle carries a map, so in the When building larger maps and entering more radar data, the amount of memory and computation required increases dramatically. Therefore, the particle method is not suitable for extending it to build larger maps and for dual radar mapping.
  • Another method based on key frame matching, by establishing constraints between key frames, can perform loop closure detection and optimization very well.
  • this structure is also very suitable for large-area scene mapping and multi-radar mapping. , due to the idea of key frames and constraints, enough constraints can be established when positioning the two radar data, so that the built map is more accurate and clear without ghosting.
  • the current key frame method only uses the key frame of a single radar in the calculation. If multiple radar data are directly input at the same time, the built map is not processed in layers, which will cause the data of the two radars to be mixed. At the same time, two radar data are used as one input for positioning, and two positioning will be generated, which will cause the problem of positioning beating.
  • the embodiment of the present application proposes a mapping method that can process dual radar data stably and flexibly, and can be applied to a robot equipped with dual laser radars (referred to as the first laser radar and the second laser radar respectively), wherein, The installation position of the first laser radar is higher than the installation position of the second laser radar.
  • the first lidar is installed in a high place and cannot scan movable objects such as ordinary tables and chairs, and the second lidar is installed at a low place and can scan these movable objects.
  • an embodiment of a mapping method in this embodiment of the present application may include:
  • Step S101 acquiring a first laser key frame.
  • the first laser key frame is a current laser key frame collected by the first laser radar.
  • the robot can detect the surrounding environment through lidar. Its working principle is to transmit a detection signal (laser) to the target, and then compare the received signal reflected from the target with the detection signal. After proper processing, the target's information can be obtained. information to detect, track and identify targets.
  • the robot can collect laser data according to a preset data collection frequency, and collect a frame of laser data every certain time interval.
  • the specific data collection frequency may be set according to the actual situation, which is not specifically limited in this embodiment of the present application.
  • the robot After the robot starts to build a map, it can use the first laser data frame as a laser key frame. When acquiring a new laser data frame later, it compares the new laser data frame with the current laser key frame. If the position between the two is If the difference is greater than the preset position difference threshold or the angle difference between the two is greater than the preset angle threshold, it is determined that the new laser data frame is a new laser key frame, otherwise, if the position difference between the two is less than or equal to If the position difference threshold and the angle difference between the two are less than or equal to the angle threshold, it is determined that the new laser data frame is not a new laser key frame.
  • the specific values of the position difference threshold and the angle threshold may be set according to actual conditions, which are not specifically limited in this embodiment of the present application.
  • the new laser data frame may also be determined to be a new laser key frame.
  • the specific value of the time threshold may be set according to the actual situation, which is not specifically limited in this embodiment of the present application.
  • the "current laser key frame” mentioned in this application refers to the laser key frame currently being processed by the robot, which refers to a dynamic object rather than a specific laser key frame, such as , the robot first processes the laser key frame collected for the first time, and records it as laser key frame 1, then the current laser key frame is laser key frame 1. After the robot processes laser key frame 1, it continues to process the second collection. The laser key frame is recorded as laser key frame 2, then the current laser key frame is laser key frame 2. After the robot processes laser key frame 2, it continues to process the laser key frame collected for the third time, and records it as laser key frame 2. is laser key frame 3, then the current laser key frame is laser key frame 3, ..., and so on.
  • Step S102 Calculate the current pose of the robot according to the first laser key frame.
  • iterative optimization can be performed by the Gauss-Newton matching method, so that the laser contour points included in the first laser key frame are aligned with the contour points of the first probability map, and according to the aligned
  • the current pose of the robot is calculated from the laser contour points.
  • the first probability map is a probability map corresponding to the first lidar, that is, a probability map constructed according to each laser key frame collected by the first lidar, and the first probability map is in the The initial construction is performed when the first laser radar captures the first frame of laser key frames, and then the map is updated every time a frame of laser key frames is collected.
  • Step S103 Update the first probability map according to the current pose and the first laser key frame, to obtain an updated first probability map.
  • the data in the first laser key frame can be superimposed on the first probability map according to the current pose, and the comparison between the first probability map and the first probability map can be performed.
  • the first count value and the second count value of each connection grid corresponding to the laser key frame are updated respectively to obtain the updated first count value and the updated second count value.
  • Figure 2 shows a schematic diagram of the process of laser hitting the obstacle point.
  • the hollow origin is the lidar
  • the solid origin is the obstacle
  • the grid where the obstacle is located is marked by ⁇
  • the grid where the connection line between the obstacle and the laser is located is marked. is gray.
  • the connecting grid here is a grid on the connecting line between the grid hit by the laser and the first lidar
  • the first count value is that the connecting grid is hit by the first laser radar.
  • the number of times the laser emitted by a laser radar hits, and the second count value is the number of times that the connecting grid is on the connecting line between the grid hit by the laser and the first laser radar.
  • the first count value is denoted as n1
  • the occupancy probability value of each connection grid in the first probability map is respectively updated.
  • its occupancy probability value in the first probability map can be calculated according to the following formula:
  • P(hit1) is the occupancy probability value of the grid in the first probability map.
  • Step S104 acquiring a second laser key frame.
  • the second laser key frame is the current laser key frame collected by the second laser radar.
  • Step S105 Update the second probability map according to the current pose and the second laser key frame, to obtain an updated second probability map.
  • the second probability map is a probability map corresponding to the second lidar, that is, a probability map constructed according to each laser key frame collected by the second lidar, and the second probability map is in the second probability map.
  • the initial construction is performed when the lidar collects the first frame of laser key frames, and then the map is updated every time a frame of laser key frames is collected.
  • the data in the second laser key frame can be superimposed on the second probability map according to the current pose, and the second probability map is compared with the second probability map.
  • the third count value and the fourth count value of each connection grid corresponding to the laser key frame are updated respectively to obtain the updated third count value and the updated fourth count value.
  • the connecting grid here is a grid on the connecting line between the grid hit by the laser and the second lidar
  • the third count value is the connecting grid being hit by the first laser.
  • the number of times that the laser light emitted by the second laser radar hits, and the fourth count value is the number of times that the connecting grid is on the connecting line between the grid hit by the laser and the second laser radar.
  • the third count value is denoted as n2, and the fourth count value is denoted as visit2.
  • the occupancy probability value of each connection grid in the second probability map is updated respectively.
  • its occupancy probability value in the second probability map can be calculated according to the following formula:
  • P(hit2) is the occupancy probability value of the grid in the second probability map.
  • the updated second probability map can be obtained by traversing all the connected grids and updating their occupancy probability values.
  • Step S106 Generate a fusion grid map for robot navigation according to the updated first probability map and the updated second probability map.
  • a first grid map corresponding to the updated first probability map is generated, and a second grid map corresponding to the updated second probability map is generated.
  • the specific value of the probability threshold may be set according to the actual situation, which is not specifically limited in this embodiment of the present application.
  • the generation process of the second grid map is similar to the generation process of the first grid map, and details are not repeated here.
  • the first grid map and the second grid map are fused according to a preset relative pose transformation relationship to obtain the fused grid map.
  • the relative pose transformation relationship is a relative pose transformation relationship between the first laser radar and the second laser radar.
  • the rough relative pose between the two lidars can be determined first through the mechanical structure of the robot, and then the two lidars scan the surrounding environment to perform accurate Calibration to obtain the relative pose conversion relationship between the two lidars.
  • the two lidars are installed in the horizontal direction, so the two lidars can be made to scan the same object placed vertically along the vertical line (referred to as the target object), and obtain the first A first ranging result of a laser radar on the target object and a second ranging result of the second laser radar on the target object, and the said first ranging result and the second ranging result are determined.
  • Relative pose transformation relationship For example, the difference between the two ranging results can be calculated to obtain the horizontal distance between the two lidars, which is used as the relative pose transformation relationship.
  • the first grid map and the second grid map may be first aligned according to the relative pose conversion relationship, and then the two are fused to obtain the fusion grid map.
  • the grid is determined to be a gray grid.
  • the first preset condition is: the grid corresponding to the first grid map is a black grid
  • the second preset condition is: the grid corresponding to the first grid map
  • the grid is not a black grid
  • the corresponding grid in the second grid map is a white grid.
  • the embodiment of the present application adopts a SLAM architecture for simultaneous mapping of dual lidars, that is, a first lidar at a higher position and a second lidar at a lower position are used for simultaneous mapping, Because the position of the first lidar is relatively high and is less disturbed by movable objects, it can provide relatively stable positioning results. On this basis, the data of the two lidars are fused to build a map to obtain a fused map , Navigation based on this can avoid movable objects in the environment in advance, which greatly improves the stability of positioning and navigation.
  • FIG. 4 shows a structural diagram of an embodiment of a mapping apparatus provided by an embodiment of the present application.
  • the mapping device is applied to a robot, the robot includes a first laser radar and a second laser radar, the installation position of the first laser radar is higher than the installation position of the second laser radar, and the mapping device Can include:
  • a first data acquisition module 401 configured to acquire a first laser key frame, where the first laser key frame is a current laser key frame collected by the first laser radar;
  • a pose calculation module 402 configured to calculate the current pose of the robot according to the first laser key frame
  • the first map update module 403 is configured to update the first probability map according to the current pose and the first laser key frame, and obtain an updated first probability map, where the first probability map is the same as the first probability map. Probability map corresponding to lidar;
  • the second data acquisition module 404 is used to acquire a second laser key frame, and the second laser key frame is the current laser key frame collected by the second laser radar;
  • the second map update module 405 is configured to update a second probability map according to the current pose and the second laser key frame, to obtain an updated second probability map, where the second probability map is the same as the second probability map. Probability map corresponding to lidar;
  • the map fusion module 406 is configured to generate a fusion grid map for robot navigation according to the updated first probability map and the updated second probability map.
  • map fusion module may include:
  • a first grid map generation submodule for generating a first grid map corresponding to the updated first probability map
  • a second grid map generation submodule configured to generate a second grid map corresponding to the updated second probability map
  • a map fusion sub-module configured to fuse the first grid map and the second grid map according to a preset relative pose conversion relationship to obtain the fusion grid map, the relative pose conversion relationship is the relative pose conversion relationship between the first lidar and the second lidar.
  • the first grid map generation sub-module may include:
  • an occupancy probability value calculation unit configured to determine the occupancy probability value of a target grid in the updated first probability map, where the target grid is any grid in the first grid map;
  • a grid type determination unit configured to determine the grid type of the target grid according to the occupancy probability value.
  • the grid type determination unit is specifically used for:
  • the occupancy probability value is greater than or equal to a preset probability threshold, determining that the target grid is a black grid
  • the occupancy probability value is less than the probability threshold, determining that the target grid is a white grid
  • the occupancy probability value is empty, it is determined that the target grid is a gray grid.
  • mapping device may also include:
  • the ranging module is used to obtain the first ranging result of the target object by the first lidar and the second ranging result of the target object by the second lidar, and the target object is vertically Objects placed vertically in the line direction;
  • a relative pose determination module configured to determine the relative pose conversion relationship according to the first ranging result and the second ranging result.
  • map fusion submodule may include:
  • an aligning unit configured to align the first grid map and the second grid map according to a preset relative pose conversion relationship
  • the black grid determination unit is used for any grid in the fusion grid map, if it meets the first preset condition, then determine that the grid is a black grid; the first preset condition is: in The corresponding grid in the first grid map is a black grid;
  • the white grid determination unit is used to determine that the grid is a white grid if it meets a second preset condition;
  • the second preset condition is: the grid corresponding to the first grid map is not A black grid, and the corresponding grid in the second grid map is a white grid;
  • a gray grid determining unit configured to determine that the grid is a gray grid if neither of the first preset conditions nor the second preset conditions are met.
  • first map update module is specifically used for:
  • the connecting grid is the grid on the connecting line between the grid hit by the laser and the first lidar, and the first count value is all The number of times that the connected grid is hit by the laser emitted by the first lidar, and the second count value is when the connected grid is located between the grid hit by the laser and the first lidar the number of connections on the line;
  • the updated first count value and the updated second count value respectively update the occupancy probability value of each connected grid in the first probability map to obtain the updated first count value. Probability map.
  • FIG. 5 shows a schematic block diagram of a robot provided by an embodiment of the present application. For convenience of description, only parts related to the embodiment of the present application are shown.
  • the robot 5 of this embodiment includes a processor 50 , a memory 51 , and a computer program 52 stored in the memory 51 and executable on the processor 50 .
  • the processor 50 executes the computer program 52
  • the steps in each of the above-mentioned embodiments of the mapping method are implemented, for example, steps S101 to S106 shown in FIG. 1 .
  • the processor 50 executes the computer program 52
  • the functions of the modules/units in the foregoing device embodiments for example, the functions of the modules 401 to 406 shown in FIG. 4 are implemented.
  • the computer program 52 can be divided into one or more modules/units, and the one or more modules/units are stored in the memory 51 and executed by the processor 50 to complete the this application.
  • the one or more modules/units may be a series of computer program instruction segments capable of performing specific functions, and the instruction segments are used to describe the execution process of the computer program 52 in the robot 5 .
  • FIG. 5 is only an example of the robot 5, and does not constitute a limitation to the robot 5. It may include more or less components than the one shown, or combine some components, or different components, such as
  • the robot 5 may also include input and output devices, network access devices, buses, and the like.
  • the processor 50 may be a central processing unit (Central Processing Unit, CPU), or other general-purpose processors, digital signal processors (Digital Signal Processor, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • CPU Central Processing Unit
  • DSP Digital Signal Processor
  • ASIC Application Specific Integrated Circuit
  • FPGA Field-Programmable Gate Array
  • a general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
  • the memory 51 may be an internal storage unit of the robot 5 , such as a hard disk or a memory of the robot 5 .
  • the memory 51 can also be an external storage device of the robot 5, such as a plug-in hard disk equipped on the robot 5, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, Flash card (Flash Card) and so on.
  • the memory 51 may also include both an internal storage unit of the robot 5 and an external storage device.
  • the memory 51 is used to store the computer program and other programs and data required by the robot 5 .
  • the memory 51 can also be used to temporarily store data that has been output or will be output.
  • the disclosed apparatus/robot and method may be implemented in other ways.
  • the device/robot embodiments described above are only illustrative.
  • the division of the modules or units is only a logical function division.
  • 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 electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution in this embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units may be implemented in the form of hardware, or may be implemented in the form of software functional units.
  • the integrated modules/units if implemented in the form of software functional units and sold or used as independent products, may be stored in a computer-readable storage medium.
  • the present application can implement all or part of the processes in the methods of the above embodiments, and can also be completed by instructing the relevant hardware through a computer program.
  • the computer program can be stored in a computer-readable storage medium, and the computer When the program is executed by the processor, the steps of the foregoing method embodiments can be implemented.
  • the computer program includes computer program code, and the computer program code may be in the form of source code, object code, executable file or some intermediate form, and the like.
  • the computer-readable storage medium may include: any entity or device capable of carrying the computer program code, a recording medium, a U disk, a removable hard disk, a magnetic disk, an optical disk, a computer memory, a read-only memory (ROM, Read-Only Memory) ), random access memory (RAM, Random Access Memory), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content contained in the computer-readable storage medium may be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction, for example, in some jurisdictions, according to legislation and patent practice, computer-readable Storage media exclude electrical carrier signals and telecommunications signals.

Abstract

一种建图方法、装置、计算机可读存储介质及机器人,属于机器人技术领域。所述方法应用于机器人中,所述机器人包括第一激光雷达和第二激光雷达,所述第一激光雷达的安装位置高于所述第二激光雷达的安装位置,所述方法包括:获取第一激光关键帧(S101);根据所述第一激光关键帧计算所述机器人的当前位姿(S102);根据所述当前位姿和所述第一激光关键帧更新第一概率地图,得到更新后的第一概率地图(S103);获取第二激光关键帧(S104);根据所述当前位姿和所述第二激光关键帧更新第二概率地图,得到更新后的第二概率地图(S105);根据所述更新后的第一概率地图和所述更新后的第二概率地图生成用于机器人导航的融合栅格地图(S106),极大提高了定位导航的稳定性。

Description

一种建图方法、装置、计算机可读存储介质及机器人
本申请要求于2020年11月06日在中国专利局提交的、申请号为202011232065.0的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请属于机器人技术领域,尤其涉及一种建图方法、装置、计算机可读存储介质及机器人。
背景技术
机器人的激光建图与定位技术(Simultaneous Localization And Mapping,SLAM)是机器人根据激光雷达数据创建激光导航地图的重要方法,为后续的激光导航中的实时定位和导航规划起到了重要的作用。但是,在办公室、图书馆、养老院、病房等地方具有非常多的可移动桌椅、病床等物体,这些物体的高度比较矮,一般都不超过1.5米,而这些可移动物体使得定位导航的环境易于变化,从而可能导致机器人的定位导航结果的稳定性较差。
技术问题
有鉴于此,本申请实施例提供了一种建图方法、装置、计算机可读存储介质及机器人,以解决在具有可移动物体的环境中,机器人的定位导航结果的稳定性较差的问题。
技术解决方案
本申请实施例的第一方面提供了一种建图方法,应用于机器人中,所述机器人包括第一激光雷达和第二激光雷达,所述第一激光雷达的安装位置高于所述第二激光雷达的安装位置,所述方法包括:
获取第一激光关键帧,所述第一激光关键帧为所述第一激光雷达采集的当前激光关键帧;
根据所述第一激光关键帧计算所述机器人的当前位姿;
根据所述当前位姿和所述第一激光关键帧更新第一概率地图,得到更新后的第一概率地图,所述第一概率地图为与所述第一激光雷达对应的概率地图;
获取第二激光关键帧,所述第二激光关键帧为所述第二激光雷达采集的当前激光关键帧;
根据所述当前位姿和所述第二激光关键帧更新第二概率地图,得到更新后的第二概率地图,所述第二概率地图为与所述第二激光雷达对应的概率地图;
根据所述更新后的第一概率地图和所述更新后的第二概率地图生成用于机器人导航的融合栅格地图。
进一步地,所述根据所述更新后的第一概率地图和所述更新后的第二概率地图生成用于机器人导航的融合栅格地图,包括:
生成与所述更新后的第一概率地图对应的第一栅格地图;
生成与所述更新后的第二概率地图对应的第二栅格地图;
根据预设的相对位姿转换关系将所述第一栅格地图和所述第二栅格地图进行融合,得到所述融合栅格地图,所述相对位姿转换关系为所述第一激光雷达与所述第二激光雷达之间的相对位姿转换关系。
进一步地,所述生成与所述更新后的第一概率地图对应的第一栅格地图,包括:
确定目标栅格在所述更新后的第一概率地图中的占用概率值,所述目标栅格为所述第一栅格地图中的任意一个栅格;
根据所述占用概率值确定所述目标栅格的栅格类型。
进一步地,所述根据所述占用概率值确定所述目标栅格的栅格类型,包括:
若所述占用概率值大于或等于预设的概率阈值,则确定所述目标栅格为黑色栅格;
若所述占用概率值小于所述概率阈值,则确定所述目标栅格为白色栅格;
若所述占用概率值为空,则确定所述目标栅格为灰色栅格。
进一步地,所述相对位姿转换关系的设置过程包括:
分别获取所述第一激光雷达对目标物体的第一测距结果和所述第二激光雷达对所述目标物体的第二测距结果,所述目标物体为沿铅垂线方向竖直放置的物体;
根据所述第一测距结果和所述第二测距结果确定所述相对位姿转换关系。
进一步地,所述根据预设的相对位姿转换关系将所述第一栅格地图和所述第二栅格地图进行融合,得到所述融合栅格地图,包括:
根据预设的相对位姿转换关系对齐所述第一栅格地图和所述第二栅格地图;
对于所述融合栅格地图中的任意一个栅格,若符合第一预设条件,则确定该栅格为黑色栅格;所述第一预设条件为:在所述第一栅格地图中对应的栅格为黑色栅格;
若符合第二预设条件,则确定该栅格为白色栅格;所述第二预设条件为:在所述第一栅格地图中对应的栅格不为黑色栅格,且在所述第二栅格地图中对应的栅格为白色栅格;
若均不符合所述第一预设条件和所述第二预设条件,则确定该栅格为灰色栅格。
进一步地,所述根据所述当前位姿和所述第一激光关键帧更新第一概率地图,得到更新后的第一概率地图,包括:
根据所述当前位姿对所述第一概率地图中与所述第一激光关键帧对应的各个连线栅格的第一计数值和第二计数值分别进行更新,得到更新后的第一计数值和更新后的第二计数值,所述连线栅格为处于被激光打到的栅格和所述第一激光雷达之间的连线上的栅格,所述第一计数值为所述连线栅格被所述第一激光雷达发射的激光打到的次数,所述第二计数值为所述连线栅格处于被激光打到的栅格和所述第一激光雷达之间的连线上的次数;
根据所述更新后的第一计数值和所述更新后的第二计数值分别对各个连线栅格在所述第一概率地图中的占用概率值进行更新,得到所述更新后的第一概率地图。
本申请实施例的第二方面提供了一种建图装置,应用于机器人中,所述机器人包括第一激光雷达和第二激光雷达,所述第一激光雷达的安装位置高于所述第二激光雷达的安装位置,所述建图装置可以包括:
第一数据获取模块,用于获取第一激光关键帧,所述第一激光关键帧为所述第一激光雷达采集的当前激光关键帧;
位姿计算模块,用于根据所述第一激光关键帧计算所述机器人的当前位姿;
第一地图更新模块,用于根据所述当前位姿和所述第一激光关键帧更新第一概率地图,得到更新后的第一概率地图,所述第一概率地图为与所述第一激光雷达对应的概率地图;
第二数据获取模块,用于获取第二激光关键帧,所述第二激光关键帧为所述第二激光雷达采集的当前激光关键帧;
第二地图更新模块,用于根据所述当前位姿和所述第二激光关键帧更新第二概率地图,得到更新后的第二概率地图,所述第二概率地图为与所述第二激光雷达对应的概率地图;
地图融合模块,用于根据所述更新后的第一概率地图和所述更新后的第二概率地图生成用于机器人导航的融合栅格地图。
进一步地,所述地图融合模块可以包括:
第一栅格地图生成子模块,用于生成与所述更新后的第一概率地图对应的第一栅格地图;
第二栅格地图生成子模块,用于生成与所述更新后的第二概率地图对应的第二栅格地图;
地图融合子模块,用于根据预设的相对位姿转换关系将所述第一栅格地图和所述第二栅格地图进行融合,得到所述融合栅格地图,所述相对位姿转换关系为所述第一激光雷达与所述第二激光雷达之间的相对位姿转换关系。
进一步地,所述第一栅格地图生成子模块可以包括:
占用概率值计算单元,用于确定目标栅格在所述更新后的第一概率地图中的占用概率值,所述目标栅格为所述第一栅格地图中的任意一个栅格;
栅格类型确定单元,用于根据所述占用概率值确定所述目标栅格的栅格类型。
进一步地,所述栅格类型确定单元具体用于:
若所述占用概率值大于或等于预设的概率阈值,则确定所述目标栅格为黑色栅格;
若所述占用概率值小于所述概率阈值,则确定所述目标栅格为白色栅格;
若所述占用概率值为空,则确定所述目标栅格为灰色栅格。
进一步地,所述建图装置还可以包括:
测距模块,用于分别获取所述第一激光雷达对目标物体的第一测距结果和所述第二激光雷达对所述目标物体的第二测距结果,所述目标物体为沿铅垂线方向竖直放置的物体;
相对位姿确定模块,用于根据所述第一测距结果和所述第二测距结果确定所述相对位姿转换关系。
进一步地,所述地图融合子模块可以包括:
对齐单元,用于根据预设的相对位姿转换关系对齐所述第一栅格地图和所述第二栅格地图;
黑色栅格确定单元,用于对于所述融合栅格地图中的任意一个栅格,若符合第一预设条件,则确定该栅格为黑色栅格;所述第一预设条件为:在所述第一栅格地图中对应的栅格为黑色栅格;
白色栅格确定单元,用于若符合第二预设条件,则确定该栅格为白色栅格;所述第二预设条件为:在所述第一栅格地图中对应的栅格不为黑色栅格,且在所述第二栅格地图中对应的栅格为白色栅格;
灰色栅格确定单元,用于若均不符合所述第一预设条件和所述第二预设条件,则确定该栅格为灰色栅格。
进一步地,所述第一地图更新模块具体用于:
根据所述当前位姿对所述第一概率地图中与所述第一激光关键帧对应的各个连线栅格的第一计数值和第二计数值分别进行更新,得到更新后的第一计数值和更新后的第二计数值,所述连线栅格为处于被激光打到的栅格和所述第一激光雷达之间的连线上的栅格,所述第一计数值为所述连线栅格被所述第一激光雷达发射的激光打到的次数,所述第二计数值为所述连线栅格处于被激光打到的栅格和所述第一激光雷达之间的连线上的次数;
根据所述更新后的第一计数值和所述更新后的第二计数值分别对各个连线栅格在所述第一概率地图中的占用概率值进行更新,得到所述更新后的第一概率地图。
本申请实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种建图方法的步骤。
本申请实施例的第四方面提供了一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种建图方法的步骤。
本申请实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在机器人上运行时,使得机器人执行上述任一种建图方法的步骤。
有益效果
本申请实施例与现有技术相比存在的有益效果是:本申请实施例采用了一种双激光雷达同时建图的SLAM架构,即同时使用一个较高位置的第一激光雷达和一个较低位置的第二激光雷达进行建图,由于第一激光雷达的位置较高,受到可移动物体的干扰较小,因此可以提供较为稳定的定位结果,在此基础上,对两个激光雷达的数据进行融合建图,得到一个融合的地图,据此进行导航能过提前绕开环境中的可移动物体,极大提高了定位导航的稳定性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例中一种建图方法的一个实施例流程图;
图2为激光打到障碍点过程的示意图;
图3为将第一栅格地图和第二栅格地图进行融合的示意图;
图4为本申请实施例中一种建图装置的一个实施例结构图;
图5为本申请实施例中一种机器人的示意框图。
本发明的实施方式
为使得本申请的发明目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本申请一部分实施例,而非全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
一般地,在进行激光建图时可以采用以下几种方法:一种是基于粒子滤波的激光建图,该方法通过RBPF(Rao-Blackwellized Particle Filters)等粒子滤波方法进行位姿估计,在构建小场景地图时计算量较小且精度较高,由于基于粒子的方法当面积较大时以及要采用双雷达时会急剧增大其处理需要的资源,同时每个粒子都携带一副地图,因此在构建较大地图及要输入更多雷达数据时,所需的内存和计算量都会急剧增加。因此,粒子的方法不适合对其进行扩展去建较大的地图和进行双雷达建图。
另一种基于关键帧匹配的方法,通过在关键帧之间建立约束,可以很好的进行回环检测与优化,同时这种结构也非常适用于较大面积场景的建图以及多雷达的建图,由于其关键帧和约束的思想,可以将两个雷达数据进行定位时建立足够多的约束关系,使得建出的地图更加准确和清晰无重影。
当前的关键帧方法只在计算时采用了单个雷达的关键帧,如果直接同时输入多个雷达数据时,建出的地图没有进行分层区分处理,这就会使得两个雷达的数据产生混合,同时两个雷达数据作为一个输入用来定位,则会产生两个定位,就会产生定位的跳动问题。
本申请实施例提出了一种可以进行稳定、灵活处理双雷达数据的建图方法,可以应用于安装有双激光雷达(分别记为第一激光雷达和第二激光雷达)的机器人中,其中,所述第一激光雷达的安装位置高于所述第二激光雷达的安装位置。所述第一激光雷达安装在较 高的地方,不会扫描到普通的桌椅等可移动物体,所述第二激光雷达安装在低处,可以扫描到这些可移动物体。
请参阅图1,本申请实施例中一种建图方法的一个实施例可以包括:
步骤S101、获取第一激光关键帧。
所述第一激光关键帧为所述第一激光雷达采集的当前激光关键帧。
机器人可以通过激光雷达来探测周边环境,其工作原理是向目标发射探测信号(激光),然后将接收到的从目标反射回来的信号与探测信号进行比较,作适当处理后,就可获得目标的有关信息,从而对目标进行探测、跟踪和识别。一般地,机器人可以按照预先设定的一个数据采集频率来进行激光数据的采集,每隔一定的时间间隔即采集一帧激光数据。具体的数据采集频率可以根据实际情况进行设置,本申请实施例对此不作具体限定。
机器人在开始建图后可以将第一个激光数据帧作为激光关键帧,后续获取新的激光数据帧时,将新的激光数据帧与当前的激光关键帧进行比较,若两者之间的位置差大于预设的位置差阈值或者两者之间的角度差大于预设的角度阈值,则判定新的激光数据帧为新的一个激光关键帧,反之,若两者之间的位置差小于等于所述位置差阈值且两者之间的角度差小于等于所述角度阈值,则判定新的激光数据帧不是新的一个激光关键帧。所述位置差阈值及所述角度阈值的具体取值可以根据实际情况进行设置,本申请实施例对此不作具体限定。可选地,若新的激光数据帧的采集时刻与当前的激光关键帧的采集时刻之间的时间差大于预设的时间阈值,则也可以判定新的激光数据帧为新的一个激光关键帧。所述时间阈值的具体取值可以根据实际情况进行设置,本申请实施例对此不作具体限定。不断重复以上过程,即可依次得到建图过程中的各个激光关键帧。
需要注意的是,本申请中所提及的“当前激光关键帧”,是指机器人当前正在处理的激光关键帧,其指代的是一个动态的对象,而非特指某一激光关键帧,例如,机器人首先处理第一次采集的激光关键帧,将其记为激光关键帧1,则当前激光关键帧即为激光关键帧1,当机器人处理完激光关键帧1之后,继续处理第二次采集的激光关键帧,将其记为激光关键帧2,则当前激光关键帧即为激光关键帧2,当机器人处理完激光关键帧2之后,继续处理第三次采集的激光关键帧,将其记为激光关键帧3,则当前激光关键帧即为激光关键帧3,…,以此类推。
步骤S102、根据所述第一激光关键帧计算所述机器人的当前位姿。
在获取到所述第一激光关键帧之后,可以通过高斯牛顿匹配法进行迭代优化,使得所述第一激光关键帧中包含的激光轮廓点与第一概率地图的轮廓点对齐,并根据对齐的激光轮廓点反算出所述机器人的当前位姿。
其中,所述第一概率地图为与所述第一激光雷达对应的概率地图,即根据所述第一激光雷达采集的各个激光关键帧所构建的概率地图,所述第一概率地图在所述第一激光雷达采集到第一帧激光关键帧时即进行初始构建,之后每采集到一帧激光关键帧即进行地图更新。
步骤S103、根据所述当前位姿和所述第一激光关键帧更新第一概率地图,得到更新后的第一概率地图。
确定所述当前位姿之后,则可以根据所述当前位姿将所述第一激光关键帧中的数据叠加到所述第一概率地图中,对所述第一概率地图中与所述第一激光关键帧对应的各个连线栅格的第一计数值和第二计数值分别进行更新,得到更新后的第一计数值和更新后的第二计数值。
图2所示为激光打到障碍点过程的一个示意图,空心原点为激光雷达,实心原点为障碍物,障碍物所在栅格被×标记,障碍物与激光器之间的连线所在栅格被标记为灰色。此处的连线栅格为处于被激光打到的栅格和所述第一激光雷达之间的连线上的栅格,所述第一计数值为所述连线栅格被所述第一激光雷达发射的激光打到的次数,所述第二计数值为所述连线栅格处于被激光打到的栅格和所述第一激光雷达之间的连线上的次数。
此处将所述第一计数值记为n1,将所述第二计数值记为visit1。容易理解地,当激光打到某一栅格时,该栅格的n1和visit1会同时累加,即执行:n1=n1+1,visit1=visit1+1;当激光未打到该栅格,而该栅格处于被激光打到的栅格和所述第一激光雷达之间的连线时,n1保持不变,visit1累加,即只执行:visit1=visit1+1。
然后,根据所述更新后的第一计数值和所述更新后的第二计数值分别对各个连线栅格在所述第一概率地图中的占用概率值进行更新。
具体地,对于任意一个连线栅格,可以根据下式计算其在所述第一概率地图中的占用概率值:
P(hit1)=n1/visit1
其中,P(hit1)即为该栅格在所述第一概率地图中的占用概率值。
在原有的第一概率地图的基础上,遍历所有的连线栅格,对其占用概率值均进行更新,即可得到所述更新后的第一概率地图。
步骤S104、获取第二激光关键帧。
所述第二激光关键帧为所述第二激光雷达采集的当前激光关键帧。
步骤S105、根据所述当前位姿和所述第二激光关键帧更新第二概率地图,得到更新后的第二概率地图。
所述第二概率地图为与所述第二激光雷达对应的概率地图,即根据所述第二激光雷达采集的各个激光关键帧所构建的概率地图,所述第二概率地图在所述第二激光雷达采集到第一帧激光关键帧时即进行初始构建,之后每采集到一帧激光关键帧即进行地图更新。
确定所述当前位姿之后,则可以根据所述当前位姿将所述第二激光关键帧中的数据叠加到所述第二概率地图中,对所述第二概率地图中与所述第二激光关键帧对应的各个连线栅格的第三计数值和第四计数值分别进行更新,得到更新后的第三计数值和更新后的第四计数值。
此处的连线栅格为处于被激光打到的栅格和所述第二激光雷达之间的连线上的栅格,所述第三计数值为所述连线栅格被所述第二激光雷达发射的激光打到的次数,所述第四计数值为所述连线栅格处于被激光打到的栅格和所述第二激光雷达之间的连线上的次数。
此处将所述第三计数值记为n2,将所述第四计数值记为visit2。容易理解地,当激光打到某一栅格时,该栅格的n2和visit2会同时累加,即执行:n2=n2+1,visit2=visit2+1;当激光未打到该栅格,而该栅格处于被激光打到的栅格和所述第二激光雷达之间的连线时,n2保持不变,visit2累加,即只执行:visit2=visit2+1。
然后,根据所述更新后的第三计数值和所述更新后的第四计数值分别对各个连线栅格在所述第二概率地图中的占用概率值进行更新。
具体地,对于任意一个连线栅格,可以根据下式计算其在所述第二概率地图中的占用概率值:
P(hit2)=n2/visit2
其中,P(hit2)即为该栅格在所述第二概率地图中的占用概率值。
在原有的第二概率地图的基础上,遍历所有的连线栅格,对其占用概率值均进行更新,即可得到所述更新后的第二概率地图。
步骤S106、根据所述更新后的第一概率地图和所述更新后的第二概率地图生成用于机器人导航的融合栅格地图。
首先,生成与所述更新后的第一概率地图对应的第一栅格地图,并生成与所述更新后的第二概率地图对应的第二栅格地图。
以所述第一栅格地图中的任意一个栅格(记为目标栅格)为例,可以确定所述目标栅格在所述更新后的第一概率地图中的占用概率值,并根据所述占用概率值确定所述目标栅格的栅格类型。具体地,若所述占用概率值大于或等于预设的概率阈值,则确定所述目标栅格为黑色栅格;若所述占用概率值小于所述概率阈值,则确定所述目标栅格为白色栅格; 若所述占用概率值为空,即visit1=0,则确定所述目标栅格为灰色栅格。照此遍历所述第一栅格地图中的所有栅格,则可以得到所有栅格的栅格类型,由这些黑白灰的栅格组成的地图即为所述第一栅格地图。所述概率阈值的具体取值可以根据实际情况进行设置,本申请实施例对此不作具体限定。所述第二栅格地图的生成过程与所述第一栅格地图的生成过程类似,此处不再赘述。
然后,根据预设的相对位姿转换关系将所述第一栅格地图和所述第二栅格地图进行融合,得到所述融合栅格地图。
所述相对位姿转换关系为所述第一激光雷达与所述第二激光雷达之间的相对位姿转换关系。在所述相对位姿转换关系的设置过程中,可以先通过所述机器人的机械结构确定两个激光雷达之间粗略的相对位姿,再通过两个激光雷达对周围环境的扫描来进行精确的标定,得到两个激光雷达之间的相对位姿转换关系。在本申请实施例中,两个激光雷达是在水平方向安装的,因此可以让两个激光雷达扫描同一个沿铅垂线方向竖直放置的物体(记为目标物体),分别获取所述第一激光雷达对目标物体的第一测距结果和所述第二激光雷达对所述目标物体的第二测距结果,根据所述第一测距结果和所述第二测距结果确定所述相对位姿转换关系。例如,可以计算这两个测距结果之差,得到两个激光雷达之间的水平距离,将其作为所述相对位姿转换关系。
在进行地图融合时,可以首先根据所述相对位姿转换关系对齐所述第一栅格地图和所述第二栅格地图,然后再将两者进行融合,得到所述融合栅格地图。
在本申请实施例的一种具体实现中,对于所述融合栅格地图中的任意一个栅格,若符合第一预设条件,则确定该栅格为黑色栅格;若符合第二预设条件,则确定该栅格为白色栅格;若均不符合所述第一预设条件和所述第二预设条件,则确定该栅格为灰色栅格。其中,所述第一预设条件为:在所述第一栅格地图中对应的栅格为黑色栅格;所述第二预设条件为:在所述第一栅格地图中对应的栅格不为黑色栅格,且在所述第二栅格地图中对应的栅格为白色栅格。照此遍历所述融合栅格地图中的所有栅格,即可确定所述融合栅格地图中的所有栅格的栅格类型,从而得到最终的融合栅格地图。图3所示即为具体融合效果的示例图。需要注意的是,以上仅为一种可能的融合方式,还可以根据实际情况设置其它的融合方式,本申请实施例对此不作具体限定。
综上所述,本申请实施例采用了一种双激光雷达同时建图的SLAM架构,即同时使用一个较高位置的第一激光雷达和一个较低位置的第二激光雷达同时进行建图,由于第一激光雷达的位置较高,受到可移动物体的干扰较小,因此可以提供较为稳定的定位结果,在此基础上,对两个激光雷达的数据进行融合建图,得到一个融合的地图,据此进行导航能过提前绕开环境中的可移动物体,极大提高了定位导航的稳定性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的一种建图方法,图4示出了本申请实施例提供的一种建图装置的一个实施例结构图。所述建图装置应用于机器人中,所述机器人包括第一激光雷达和第二激光雷达,所述第一激光雷达的安装位置高于所述第二激光雷达的安装位置,所述建图装置可以包括:
第一数据获取模块401,用于获取第一激光关键帧,所述第一激光关键帧为所述第一激光雷达采集的当前激光关键帧;
位姿计算模块402,用于根据所述第一激光关键帧计算所述机器人的当前位姿;
第一地图更新模块403,用于根据所述当前位姿和所述第一激光关键帧更新第一概率地图,得到更新后的第一概率地图,所述第一概率地图为与所述第一激光雷达对应的概率地图;
第二数据获取模块404,用于获取第二激光关键帧,所述第二激光关键帧为所述第二 激光雷达采集的当前激光关键帧;
第二地图更新模块405,用于根据所述当前位姿和所述第二激光关键帧更新第二概率地图,得到更新后的第二概率地图,所述第二概率地图为与所述第二激光雷达对应的概率地图;
地图融合模块406,用于根据所述更新后的第一概率地图和所述更新后的第二概率地图生成用于机器人导航的融合栅格地图。
进一步地,所述地图融合模块可以包括:
第一栅格地图生成子模块,用于生成与所述更新后的第一概率地图对应的第一栅格地图;
第二栅格地图生成子模块,用于生成与所述更新后的第二概率地图对应的第二栅格地图;
地图融合子模块,用于根据预设的相对位姿转换关系将所述第一栅格地图和所述第二栅格地图进行融合,得到所述融合栅格地图,所述相对位姿转换关系为所述第一激光雷达与所述第二激光雷达之间的相对位姿转换关系。
进一步地,所述第一栅格地图生成子模块可以包括:
占用概率值计算单元,用于确定目标栅格在所述更新后的第一概率地图中的占用概率值,所述目标栅格为所述第一栅格地图中的任意一个栅格;
栅格类型确定单元,用于根据所述占用概率值确定所述目标栅格的栅格类型。
进一步地,所述栅格类型确定单元具体用于:
若所述占用概率值大于或等于预设的概率阈值,则确定所述目标栅格为黑色栅格;
若所述占用概率值小于所述概率阈值,则确定所述目标栅格为白色栅格;
若所述占用概率值为空,则确定所述目标栅格为灰色栅格。
进一步地,所述建图装置还可以包括:
测距模块,用于分别获取所述第一激光雷达对目标物体的第一测距结果和所述第二激光雷达对所述目标物体的第二测距结果,所述目标物体为沿铅垂线方向竖直放置的物体;
相对位姿确定模块,用于根据所述第一测距结果和所述第二测距结果确定所述相对位姿转换关系。
进一步地,所述地图融合子模块可以包括:
对齐单元,用于根据预设的相对位姿转换关系对齐所述第一栅格地图和所述第二栅格地图;
黑色栅格确定单元,用于对于所述融合栅格地图中的任意一个栅格,若符合第一预设条件,则确定该栅格为黑色栅格;所述第一预设条件为:在所述第一栅格地图中对应的栅格为黑色栅格;
白色栅格确定单元,用于若符合第二预设条件,则确定该栅格为白色栅格;所述第二预设条件为:在所述第一栅格地图中对应的栅格不为黑色栅格,且在所述第二栅格地图中对应的栅格为白色栅格;
灰色栅格确定单元,用于若均不符合所述第一预设条件和所述第二预设条件,则确定该栅格为灰色栅格。
进一步地,所述第一地图更新模块具体用于:
根据所述当前位姿对所述第一概率地图中与所述第一激光关键帧对应的各个连线栅格的第一计数值和第二计数值分别进行更新,得到更新后的第一计数值和更新后的第二计数值,所述连线栅格为处于被激光打到的栅格和所述第一激光雷达之间的连线上的栅格,所述第一计数值为所述连线栅格被所述第一激光雷达发射的激光打到的次数,所述第二计数值为所述连线栅格处于被激光打到的栅格和所述第一激光雷达之间的连线上的次数;
根据所述更新后的第一计数值和所述更新后的第二计数值分别对各个连线栅格在所述第一概率地图中的占用概率值进行更新,得到所述更新后的第一概率地图。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
图5示出了本申请实施例提供的一种机器人的示意框图,为了便于说明,仅示出了与本申请实施例相关的部分。
如图5所示,该实施例的机器人5包括:处理器50、存储器51以及存储在所述存储器51中并可在所述处理器50上运行的计算机程序52。所述处理器50执行所述计算机程序52时实现上述各个建图方法实施例中的步骤,例如图1所示的步骤S101至步骤S106。或者,所述处理器50执行所述计算机程序52时实现上述各装置实施例中各模块/单元的功能,例如图4所示模块401至模块406的功能。
示例性的,所述计算机程序52可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器51中,并由所述处理器50执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序52在所述机器人5中的执行过程。
本领域技术人员可以理解,图5仅仅是机器人5的示例,并不构成对机器人5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述机器人5还可以包括输入输出设备、网络接入设备、总线等。
所述处理器50可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器51可以是所述机器人5的内部存储单元,例如机器人5的硬盘或内存。所述存储器51也可以是所述机器人5的外部存储设备,例如所述机器人5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器51还可以既包括所述机器人5的内部存储单元也包括外部存储设备。所述存储器51用于存储所述计算机程序以及所述机器人5所需的其它程序和数据。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/机器人和方法,可以通过其它的方式实现。例如,以上所描述的装置/机器人实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

  1. 一种建图方法,其特征在于,应用于机器人中,所述机器人包括第一激光雷达和第二激光雷达,所述第一激光雷达的安装位置高于所述第二激光雷达的安装位置,所述方法包括:
    获取第一激光关键帧,所述第一激光关键帧为所述第一激光雷达采集的当前激光关键帧;
    根据所述第一激光关键帧计算所述机器人的当前位姿;
    根据所述当前位姿和所述第一激光关键帧更新第一概率地图,得到更新后的第一概率地图,所述第一概率地图为与所述第一激光雷达对应的概率地图;
    获取第二激光关键帧,所述第二激光关键帧为所述第二激光雷达采集的当前激光关键帧;
    根据所述当前位姿和所述第二激光关键帧更新第二概率地图,得到更新后的第二概率地图,所述第二概率地图为与所述第二激光雷达对应的概率地图;
    根据所述更新后的第一概率地图和所述更新后的第二概率地图生成用于机器人导航的融合栅格地图。
  2. 根据权利要求1所述的建图方法,其特征在于,所述根据所述更新后的第一概率地图和所述更新后的第二概率地图生成用于机器人导航的融合栅格地图,包括:
    生成与所述更新后的第一概率地图对应的第一栅格地图;
    生成与所述更新后的第二概率地图对应的第二栅格地图;
    根据预设的相对位姿转换关系将所述第一栅格地图和所述第二栅格地图进行融合,得到所述融合栅格地图,所述相对位姿转换关系为所述第一激光雷达与所述第二激光雷达之间的相对位姿转换关系。
  3. 根据权利要求2所述的建图方法,其特征在于,所述生成与所述更新后的第一概率地图对应的第一栅格地图,包括:
    确定目标栅格在所述更新后的第一概率地图中的占用概率值,所述目标栅格为所述第一栅格地图中的任意一个栅格;
    根据所述占用概率值确定所述目标栅格的栅格类型。
  4. 根据权利要求3所述的建图方法,其特征在于,所述根据所述占用概率值确定所述目标栅格的栅格类型,包括:
    若所述占用概率值大于或等于预设的概率阈值,则确定所述目标栅格为黑色栅格;
    若所述占用概率值小于所述概率阈值,则确定所述目标栅格为白色栅格;
    若所述占用概率值为空,则确定所述目标栅格为灰色栅格。
  5. 根据权利要求2所述的建图方法,其特征在于,所述相对位姿转换关系的设置过程包括:
    分别获取所述第一激光雷达对目标物体的第一测距结果和所述第二激光雷达对所述目标物体的第二测距结果,所述目标物体为沿铅垂线方向竖直放置的物体;
    根据所述第一测距结果和所述第二测距结果确定所述相对位姿转换关系。
  6. 根据权利要求2所述的建图方法,其特征在于,所述根据预设的相对位姿转换关系将所述第一栅格地图和所述第二栅格地图进行融合,得到所述融合栅格地图,包括:
    根据预设的相对位姿转换关系对齐所述第一栅格地图和所述第二栅格地图;
    对于所述融合栅格地图中的任意一个栅格,若符合第一预设条件,则确定该栅格为黑色栅格;所述第一预设条件为:在所述第一栅格地图中对应的栅格为黑色栅格;
    若符合第二预设条件,则确定该栅格为白色栅格;所述第二预设条件为:在所述第一栅格地图中对应的栅格不为黑色栅格,且在所述第二栅格地图中对应的栅格为白色栅格;
    若均不符合所述第一预设条件和所述第二预设条件,则确定该栅格为灰色栅格。
  7. 根据权利要求1至6中任一项所述的建图方法,其特征在于,所述根据所述当前位 姿和所述第一激光关键帧更新第一概率地图,得到更新后的第一概率地图,包括:
    根据所述当前位姿对所述第一概率地图中与所述第一激光关键帧对应的各个连线栅格的第一计数值和第二计数值分别进行更新,得到更新后的第一计数值和更新后的第二计数值,所述连线栅格为处于被激光打到的栅格和所述第一激光雷达之间的连线上的栅格,所述第一计数值为所述连线栅格被所述第一激光雷达发射的激光打到的次数,所述第二计数值为所述连线栅格处于被激光打到的栅格和所述第一激光雷达之间的连线上的次数;
    根据所述更新后的第一计数值和所述更新后的第二计数值分别对各个连线栅格在所述第一概率地图中的占用概率值进行更新,得到所述更新后的第一概率地图。
  8. 一种建图装置,其特征在于,应用于机器人中,所述机器人包括第一激光雷达和第二激光雷达,所述第一激光雷达的安装位置高于所述第二激光雷达的安装位置,所述装置包括:
    第一数据获取模块,用于获取第一激光关键帧,所述第一激光关键帧为所述第一激光雷达采集的当前激光关键帧;
    位姿计算模块,用于根据所述第一激光关键帧计算所述机器人的当前位姿;
    第一地图更新模块,用于根据所述当前位姿和所述第一激光关键帧更新第一概率地图,得到更新后的第一概率地图,所述第一概率地图为与所述第一激光雷达对应的概率地图;
    第二数据获取模块,用于获取第二激光关键帧,所述第二激光关键帧为所述第二激光雷达采集的当前激光关键帧;
    第二地图更新模块,用于根据所述当前位姿和所述第二激光关键帧更新第二概率地图,得到更新后的第二概率地图,所述第二概率地图为与所述第二激光雷达对应的概率地图;
    地图融合模块,用于根据所述更新后的第一概率地图和所述更新后的第二概率地图生成用于机器人导航的融合栅格地图。
  9. 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的建图方法的步骤。
  10. 一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的建图方法的步骤。
PCT/CN2020/139872 2020-11-06 2020-12-28 一种建图方法、装置、计算机可读存储介质及机器人 WO2022095257A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/143,596 US20230273620A1 (en) 2020-11-06 2023-05-04 Mapping method, computer-readable storage medium, and robot

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011232065.0A CN112462758B (zh) 2020-11-06 2020-11-06 一种建图方法、装置、计算机可读存储介质及机器人
CN202011232065.0 2020-11-06

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/143,596 Continuation US20230273620A1 (en) 2020-11-06 2023-05-04 Mapping method, computer-readable storage medium, and robot

Publications (1)

Publication Number Publication Date
WO2022095257A1 true WO2022095257A1 (zh) 2022-05-12

Family

ID=74825876

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/139872 WO2022095257A1 (zh) 2020-11-06 2020-12-28 一种建图方法、装置、计算机可读存储介质及机器人

Country Status (3)

Country Link
US (1) US20230273620A1 (zh)
CN (1) CN112462758B (zh)
WO (1) WO2022095257A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115979248A (zh) * 2023-03-17 2023-04-18 上海仙工智能科技有限公司 基于定位位姿为约束的地图更新方法及系统、存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112986912B (zh) * 2021-03-19 2023-06-16 北京小狗吸尘器集团股份有限公司 基于结构光传感器的扫地机重定位方法、装置和电子设备
CN113311827B (zh) * 2021-05-08 2022-07-12 东南大学 一种提高存储效率的机器人室内地图及其生成方法
CN113390427B (zh) * 2021-06-09 2023-03-24 深圳市优必选科技股份有限公司 机器人建图方法、装置、机器人及计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8825391B1 (en) * 2011-08-04 2014-09-02 Google Inc. Building elevation maps from laser data
CN111257909A (zh) * 2020-03-05 2020-06-09 安徽意欧斯物流机器人有限公司 一种多2d激光雷达融合建图与定位方法及系统
CN111461245A (zh) * 2020-04-09 2020-07-28 武汉大学 一种融合点云和图像的轮式机器人语义建图方法及系统
CN111652179A (zh) * 2020-06-15 2020-09-11 东风汽车股份有限公司 基于点线特征融合激光的语义高精地图构建与定位方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105204510B (zh) * 2015-10-09 2016-06-22 福州华鹰重工机械有限公司 一种用于精确定位的概率地图的生成方法及装置
CN105573318B (zh) * 2015-12-15 2018-06-12 中国北方车辆研究所 基于概率分析的环境构建方法
CN106371103A (zh) * 2016-10-21 2017-02-01 复旦大学 基于表决融合的多激光传感器数据融合方法
CN107239076B (zh) * 2017-06-28 2020-06-23 仲训昱 基于虚拟扫描与测距匹配的agv激光slam方法
CN107505940A (zh) * 2017-08-08 2017-12-22 速感科技(北京)有限公司 自动引导车辆上的双激光雷达控制方法、系统及定位方法
CN207965645U (zh) * 2017-12-25 2018-10-12 北京工业大学 一种机器人自主导航系统
CN108170145A (zh) * 2017-12-28 2018-06-15 浙江捷尚人工智能研究发展有限公司 基于激光雷达的机器人避障系统及其应用方法
CN108608466A (zh) * 2018-02-26 2018-10-02 北京克路德人工智能科技有限公司 一种双目相机和激光雷达联合的机器人定位方法
CN108663681B (zh) * 2018-05-16 2021-01-19 华南理工大学 基于双目摄像头与二维激光雷达的移动机器人导航方法
US11188089B2 (en) * 2018-06-21 2021-11-30 Ford Global Technologies, Llc Localization for autonomous vehicles using gaussian mixture models
CN110376605B (zh) * 2018-09-18 2022-02-01 北京京东尚科信息技术有限公司 地图构建方法、导航方法和装置
EP3669141A4 (en) * 2018-11-09 2020-12-02 Beijing Didi Infinity Technology and Development Co., Ltd. VEHICLE POSITIONING SYSTEM USING A LIDAR
CN109541630A (zh) * 2018-11-22 2019-03-29 武汉科技大学 一种适用于建筑物室内平面2d slam测绘的方法
CN109814572B (zh) * 2019-02-20 2022-02-01 广州市山丘智能科技有限公司 移动机器人定位建图方法、装置、移动机器人和存储介质
CN111665826A (zh) * 2019-03-06 2020-09-15 北京奇虎科技有限公司 基于激光雷达与单目相机的深度图获取方法及扫地机器人
CN110174894B (zh) * 2019-05-27 2022-03-15 小狗电器互联网科技(北京)股份有限公司 机器人及其重定位方法
CN110658530B (zh) * 2019-08-01 2024-02-23 北京联合大学 一种基于双激光雷达数据融合的地图构建方法、系统及地图
CN110726409B (zh) * 2019-09-09 2021-06-22 杭州电子科技大学 一种基于激光slam和视觉slam地图融合方法
CN110398751A (zh) * 2019-09-11 2019-11-01 北京云迹科技有限公司 基于激光雷达生成地图的系统及方法
CN111024100B (zh) * 2019-12-20 2021-10-29 深圳市优必选科技股份有限公司 一种导航地图更新方法、装置、可读存储介质及机器人
KR102169283B1 (ko) * 2019-12-30 2020-10-23 (주)원익로보틱스 자율주행 로봇을 이용한 지도 업데이트 방법 및 시스템
CN111121754A (zh) * 2019-12-31 2020-05-08 深圳市优必选科技股份有限公司 移动机器人定位导航方法、装置、移动机器人及存储介质
CN111578932B (zh) * 2020-05-28 2021-12-24 长沙中联重科环境产业有限公司 一种基于多线激光雷达的建图方法、装置、介质及设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8825391B1 (en) * 2011-08-04 2014-09-02 Google Inc. Building elevation maps from laser data
CN111257909A (zh) * 2020-03-05 2020-06-09 安徽意欧斯物流机器人有限公司 一种多2d激光雷达融合建图与定位方法及系统
CN111461245A (zh) * 2020-04-09 2020-07-28 武汉大学 一种融合点云和图像的轮式机器人语义建图方法及系统
CN111652179A (zh) * 2020-06-15 2020-09-11 东风汽车股份有限公司 基于点线特征融合激光的语义高精地图构建与定位方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115979248A (zh) * 2023-03-17 2023-04-18 上海仙工智能科技有限公司 基于定位位姿为约束的地图更新方法及系统、存储介质
CN115979248B (zh) * 2023-03-17 2023-08-18 上海仙工智能科技有限公司 基于定位位姿为约束的地图更新方法及系统、存储介质

Also Published As

Publication number Publication date
CN112462758B (zh) 2022-05-06
CN112462758A (zh) 2021-03-09
US20230273620A1 (en) 2023-08-31

Similar Documents

Publication Publication Date Title
WO2022095257A1 (zh) 一种建图方法、装置、计算机可读存储介质及机器人
KR102125959B1 (ko) 포인트 클라우드 데이터 사이의 매칭 관계를 확정하는 방법 및 장치
WO2021097618A1 (zh) 点云分割方法、系统及计算机存储介质
WO2021104497A1 (zh) 基于激光雷达的定位方法及系统、存储介质和处理器
US11313951B2 (en) Ground detection method, electronic device, and vehicle
WO2022142628A1 (zh) 一种点云数据处理方法及装置
CN112100298B (zh) 一种建图方法、装置、计算机可读存储介质及机器人
WO2021253245A1 (zh) 识别车辆变道趋势的方法和装置
CN112763993A (zh) 标定雷达参数的方法和装置、电子设备、存储介质
CN115376109B (zh) 障碍物检测方法、障碍物检测装置以及存储介质
WO2022257332A1 (zh) 机器人建图方法、装置、机器人及计算机可读存储介质
CN113313765B (zh) 定位方法、装置、电子设备和存储介质
CN113296120B (zh) 一种障碍物检测方法及终端
WO2022036981A1 (zh) 机器人及其地图构建方法和装置
CN113734176A (zh) 智能驾驶车辆的环境感知系统、方法、车辆及存储介质
CN112630798B (zh) 用于估计地面的方法和装置
CN105301577B (zh) 一种激光强度校准方法及装置
CN115375870B (zh) 回环检测优化方法、电子设备及计算机可读存储装置
CN111736137B (zh) LiDAR外部参数标定方法、系统、计算机设备及可读存储介质
CN115507840A (zh) 一种栅格地图构建方法、栅格地图构建装置及电子设备
CN112084854B (zh) 一种障碍物检测方法、障碍物检测装置及机器人
CN115792891A (zh) 基于多毫米波雷达与激光雷达融合的目标航迹跟踪方法
CN112130137A (zh) 确定车道级轨迹的方法、装置及存储介质
CN113190564A (zh) 地图更新系统、方法及设备
WO2023097873A1 (zh) 用于车辆定位检查的方法、装置、存储介质及设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20960714

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20960714

Country of ref document: EP

Kind code of ref document: A1