WO2021219023A1 - 定位方法、装置、电子设备及存储介质 - Google Patents

定位方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
WO2021219023A1
WO2021219023A1 PCT/CN2021/090659 CN2021090659W WO2021219023A1 WO 2021219023 A1 WO2021219023 A1 WO 2021219023A1 CN 2021090659 W CN2021090659 W CN 2021090659W WO 2021219023 A1 WO2021219023 A1 WO 2021219023A1
Authority
WO
WIPO (PCT)
Prior art keywords
pose
point cloud
layer
cloud information
target
Prior art date
Application number
PCT/CN2021/090659
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 WO2021219023A1 publication Critical patent/WO2021219023A1/zh

Links

Images

Classifications

    • 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/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • 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/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial 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/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
    • 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/86Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
    • 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
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/497Means for monitoring or calibrating

Definitions

  • This application relates to the field of positioning technology, in particular to positioning methods, devices, electronic equipment, and storage media.
  • maps are usually used as a priori information to realize autonomous positioning and navigation.
  • To use a map you first need to know the position and posture of the robot itself on the map, which requires the use of relocation technology.
  • Relocation technology can be divided into local relocation and global relocation according to whether there is prior information.
  • the purpose of the embodiments of the present application is to provide a positioning method, device, electronic equipment, and storage medium, so as to reduce the influence of illumination on positioning accuracy.
  • the specific technical solutions are as follows:
  • an embodiment of the present application provides a positioning method, and the method includes:
  • target point cloud information according to the point cloud information collected by the radar of the robot, where the target point cloud information represents the current pose of the radar;
  • the pyramid map includes N layers, each layer includes multiple unit areas, one unit area in the i-th layer corresponds to multiple unit areas in the (i+1)th layer, and the first
  • the probability of the unit area in the i layer is the maximum value of the probability of the unit area in the i+1th layer.
  • the target point cloud information perform pose matching layer by layer in the pyramid map, and determine the pose corresponding to the unit area in the target layer whose pose matching score meets a preset condition as the target pose;
  • the target pose is corrected to obtain the current pose information of the radar, and the positioning information of the robot is determined according to the current pose information of the radar.
  • the obtaining the target point cloud information according to the point cloud information collected by the radar of the robot includes:
  • the multi-frame point cloud information is converted to the coordinate system of the current pose of the radar to obtain target point cloud information.
  • the pyramid chart is generated according to the following method:
  • the occupancy probability grid map includes a plurality of grid areas, and the probability corresponding to each grid area indicates that the grid area is occupied by an object The probability;
  • a pyramid map is generated according to the occupancy probability grid map, the ratio of the number of unit areas between the preset levels, and the number of pyramid layers.
  • the pose matching is performed layer by layer in the pyramid map according to the target point cloud information, and the unit area in the target layer whose pose matching score meets a preset condition is mapped to The pose of is determined as the target pose, including:
  • the pose matching is performed layer by layer, and the m-th layer
  • the position corresponding to the unit area with the highest score in the middle pose matching is determined as the target pose.
  • the layer performs pose matching, and determines the pose corresponding to the unit area with the highest pose matching score in the m-th layer as the target pose, including:
  • each unit area in the first layer is subjected to pose matching one by one to obtain a pose matching score that satisfies a preset condition Unit area;
  • the second layer to the m-th layer perform pose matching in the unit area of the current layer corresponding to the unit area whose upper-layer pose matching score meets the preset conditions, and score the pose matching in the m-th layer.
  • the pose corresponding to the highest unit area is determined as the target pose.
  • the correcting the pose of the target to obtain the pose of the radar includes:
  • the point cloud information at the target pose is calculated as reference point cloud information, wherein the sample point cloud information is that the radar is at multiple positions in advance Point cloud information collected;
  • the target pose is transformed according to the pose transformation matrix to obtain the corrected radar pose.
  • determining the positioning information of the robot according to the current pose information of the radar includes:
  • the second odometer information convert the poses of the radar at multiple positions to the coordinate system of the current pose of the radar to obtain each reference pose;
  • the positioning information of the robot is determined.
  • an embodiment of the present application provides a positioning device, which includes:
  • the point cloud information acquisition module is configured to obtain target point cloud information according to the point cloud information collected by the radar of the robot, where the target point cloud information represents the current pose of the radar;
  • the target pose matching module is used to perform pose matching layer by layer in the pyramid map according to the target point cloud information, and to match the poses corresponding to the unit areas in the target layer whose pose matching scores meet preset conditions , Determined as the target pose;
  • the radar pose correction module is used to correct the target pose to obtain the current pose information of the radar;
  • the positioning information determining module is used to determine the positioning information of the robot according to the current pose information of the radar.
  • the point cloud information acquisition module is specifically configured to: acquire multi-frame point cloud information collected by the robot’s radar, and based on the odometer data of the robot, the multi-frame point cloud information
  • the cloud information synthesizes a frame of data to obtain the target point cloud information.
  • the point cloud information acquisition module is specifically configured to: acquire multi-frame point cloud information collected by the robot’s radar at multiple locations, and acquire the multi-frame point cloud information of the robot.
  • the odometer information corresponding to each position corresponding to the information is obtained to obtain the first odometer information; according to the first odometer information, the multi-frame point cloud information is converted to the coordinate system of the current pose of the radar , Get the target point cloud information.
  • the device further includes: a pyramid map generating module, configured to: obtain point cloud information collected by the radar in multiple poses to obtain multi-frame sample point cloud information; and generate the An occupancy probability grid map corresponding to multi-frame sample point cloud information, wherein the occupancy probability grid map includes multiple grid areas, and the probability corresponding to each grid area represents the probability that the grid area is occupied by an object;
  • the number of pyramid layers is calculated according to the number of grid areas in the occupancy probability grid map and the ratio of the number of unit areas between the preset levels; the number of pyramid layers is calculated according to the occupancy probability grid map, the ratio of the number of unit areas between the preset levels and all State the number of pyramid layers and generate a pyramid map.
  • the target pose matching module includes:
  • the target layer number obtaining submodule is used to obtain the preset target layer number m and the rotation point cloud information at a specified angle, where m is a positive integer and m ⁇ N;
  • the pose matching score calculation sub-module is used to calculate the target point cloud information and the rotation point cloud information at the specified angle, in the pyramid chart, in the order from the first layer to the mth layer, layer by layer Perform pose matching, and determine the pose corresponding to the unit area with the highest pose matching score in the m-th layer as the target pose.
  • the pose matching score calculation sub-module is specifically configured to: according to the target point cloud information and the rotation point cloud information at the specified angle, in the pyramid map, Each unit area in the first layer performs pose matching one by one to obtain a unit area whose pose matching score meets the preset conditions; in the order from the second layer to the mth layer, the pose matching score of the upper layer meets the pre-defined It is assumed that the pose matching is performed in the unit region of the current layer corresponding to the unit region of the condition, and the pose corresponding to the unit region with the highest pose matching score in the m-th layer is determined as the target pose.
  • the radar pose correction module is specifically configured to calculate the point cloud information at the target pose based on the target pose and multi-frame sample point cloud information, as a reference point Cloud information, wherein the sample point cloud information is point cloud information collected by the radar in multiple locations in advance; iterating points representing the same location in the reference point cloud information and the target point cloud information, The pose transformation matrix between the reference point cloud information and the target point cloud information is calculated; the target pose is transformed according to the pose transformation matrix to obtain the corrected pose of the radar.
  • the positioning information determination module is specifically configured to: obtain the poses of the radar at multiple positions, and obtain the second mileage of the movement of the robot between positions corresponding to each pose Meter information; according to the second odometer information, the poses of the radar at multiple positions are converted to the coordinate system of the current pose of the radar to obtain each reference pose; according to the reference poses and The corrected pose of the radar determines the target pose of the radar; and the positioning information of the robot is determined according to the target pose of the radar.
  • an embodiment of the present application provides an electronic device, including a processor and a memory;
  • the memory is used to store computer programs
  • the processor is configured to implement the positioning method of any one of the foregoing first aspects when executing the program stored in the memory.
  • an embodiment of the present application provides a computer-readable storage medium having a computer program stored in the computer-readable storage medium. Positioning method.
  • the positioning method, device, electronic equipment, and storage medium obtained by the embodiments of the present application obtain target point cloud information according to the point cloud information collected by the radar of the robot, where the target point cloud information represents the current pose of the radar; Pyramid diagram, where the pyramid diagram includes N layers, each layer includes multiple unit areas, one unit area in the i-th layer corresponds to multiple unit areas in the i+1-th layer, and the unit area in the i-th layer
  • the probability is the maximum value of the probability of the unit area in the i+1th layer.
  • the unit area in the Nth layer of the pyramid map corresponds to the grid area of the occupancy probability grid map of the positioning scene, and the Nth level of the pyramid map
  • the pose matching is performed layer by layer, and the pose corresponding to the unit area whose pose matching score meets the preset conditions in the target layer is determined as the target pose; the target pose is corrected to obtain the current pose information of the radar , And determine the positioning information of the robot according to the current pose information of the radar.
  • the positioning based on the point cloud information collected by radar is less affected by the light intensity than positioning based on the visible light image, and the impact of the light on the positioning accuracy can be reduced.
  • a pyramid map method is used to perform pose matching, instead of violent search for each pose, which can improve the efficiency of matching and save calculation time.
  • any product or method of the present application does not necessarily need to achieve all the advantages described above at the same time.
  • FIG. 1 is a first schematic diagram of a positioning method according to an embodiment of this application.
  • FIG. 2 is a schematic diagram of a pyramid chart according to an embodiment of the application.
  • FIG. 3 is a second schematic diagram of a positioning method according to an embodiment of this application.
  • FIG. 4 is a schematic diagram of a method for generating a pyramid chart according to an embodiment of the application
  • FIG. 5 is a first schematic diagram of pose matching according to an embodiment of this application.
  • FIG. 6 is a second schematic diagram of pose matching according to an embodiment of this application.
  • FIG. 7 is a schematic diagram of pose correction according to an embodiment of the application.
  • FIG. 8 is a schematic diagram of positioning information correction according to an embodiment of the application.
  • FIG. 9 is a third schematic diagram of a positioning method according to an embodiment of this application.
  • FIG. 10 is a schematic diagram of a positioning device according to an embodiment of the application.
  • FIG. 11 is a schematic diagram of an electronic device according to an embodiment of the application.
  • an embodiment of the present application provides a positioning method, which includes:
  • the target point cloud information is obtained, where the target point cloud information represents the current pose of the radar;
  • the pyramid map includes N layers, each layer includes multiple unit areas, one unit area in the i-th layer corresponds to multiple unit areas in the i+1-th layer, and the i-th layer
  • the probability of the middle unit area is the maximum value of the probability of the unit area in the i+1th layer.
  • the unit area in the Nth layer of the pyramid map corresponds to the grid area of the occupancy probability grid map of the positioning scene, the pyramid
  • the target point cloud information perform pose matching layer by layer in the pyramid map, and determine the pose corresponding to the unit area in the target layer whose pose matching score meets the preset conditions as the target pose;
  • the target pose is corrected to obtain the current pose information of the radar, and the positioning information of the robot is determined according to the current pose information of the radar.
  • the positioning based on the point cloud information collected by radar is less affected by the light intensity than positioning based on the visible light image, and the impact of the light on the positioning accuracy can be reduced.
  • a pyramid map method is used to perform pose matching, instead of violent search for each pose, which can improve the efficiency of matching and save calculation time. And further correct the target pose, so as to further improve the accuracy of positioning.
  • the embodiment of the present application provides a positioning method. Referring to FIG. 1, the method includes:
  • S11 Obtain target point cloud information according to the point cloud information collected by the radar of the robot, where the target point cloud information represents the current pose of the radar.
  • the positioning method in the embodiment of the present application can be applied to a global relocation scenario, and is especially suitable for an indoor global relocation scenario.
  • the positioning method in the embodiment of the present application may be implemented by an electronic device.
  • the electronic device may be a robot equipped with a radar and an odometer and equipped with a mobile function.
  • the radar here can be a two-dimensional lidar, etc.
  • an odometer is a device for measuring travel, which can measure the traveling direction and travel distance of the robot.
  • the robot in the embodiment of the present application may be a service robot, which can realize functions such as reception, guidance, and navigation; it may also be a sweeping robot or a pet robot.
  • the point cloud information of the current frame collected by the radar may be directly used as the target point cloud information.
  • obtaining the target point cloud information based on the point cloud information collected by the radar of the robot includes: obtaining multi-frame point cloud information collected by the radar of the robot, based on the mileage of the robot Calculate data, combine multiple frames of point cloud information into one frame of data to obtain target point cloud information.
  • the odometer here may be a wheel odometer or an IMU (Inertial Measurement Unit, inertial measurement unit), etc., and the odometer information may also be obtained by means of laser matching or the like. Combine multiple frames of laser point cloud information into one frame of data to obtain target laser point cloud information, which increases the amount of information in the target laser point cloud information, thereby reducing matching errors and increasing positioning accuracy.
  • IMU Inertial Measurement Unit, inertial measurement unit
  • each layer includes multiple unit areas, one unit area in the i-th layer corresponds to multiple unit areas in the (i+1)th layer, and the first
  • the probability of the unit area in the i layer is the maximum value of the probability of the unit area in the i+1 layer.
  • the unit area in the N layer of the pyramid map corresponds to the occupancy probability of the location scene.
  • the pre-generated pyramid map includes multiple layers, from the top to the bottom sequentially from the first layer to the Nth layer.
  • the uppermost layer of the pyramid map may include one or more unit areas (also referred to as pixels), and all layers except the uppermost layer in the pyramid map include multiple unit areas (also referred to as pixels).
  • a unit area in the upper layer corresponds to multiple unit areas in the lower layer.
  • a unit area in the upper layer corresponds to multiple unit areas in the lower layer in a square arrangement. The arrangement is related to the actual shape of the occupancy probability grid map. For example, as shown in Figure 2, in two adjacent layers, 1 unit area in the upper layer corresponds to 4 unit areas in the lower layer.
  • 1 unit area in the upper layer corresponds to 9 unit areas in the lower layer, and so on.
  • the embodiment of the present invention does not limit the specific number of unit areas in the lower layer corresponding to one unit area in the upper layer.
  • 1 unit area in the upper layer corresponds to 4 unit areas in the lower layer, and the positioning accuracy in this way is higher.
  • the number of unit areas for example, as shown in the dashed box, there may be a case where 1 unit area in the upper layer corresponds to 1 unit in the lower layer.
  • the unit area in the Nth layer of the pyramid map corresponds to the grid area in the occupancy probability grid map in a one-to-one correspondence.
  • the grid area is the basic area unit in the occupancy probability grid map, and the occupancy probability grid map includes multiple grid areas.
  • the occupancy probability grid map corresponds to the map of the scene where the robot is currently located, and the map of the current location scene is divided into multiple grid areas to obtain the occupancy probability grid map.
  • the size of each grid area can be customized. The size of the grid area is related to the actual positioning accuracy required. The higher the required positioning accuracy, the smaller the grid area is set. Each grid area corresponds to a corresponding probability.
  • the probability corresponding to the grid area represents the probability that the grid area is occupied by an object, that is, the probability that an object exists in the grid.
  • the current scene of the robot is the scene of the actual movement area of the robot.
  • the current scene of the robot can be a company, factory, hotel or shopping mall, etc.; when the robot is a sweeping robot, the current scene of the robot can be the living room or bedroom. Wait.
  • the point cloud information of each sample collected by the radar in multiple poses in the scene where the robot is currently located can be used in advance to construct a grid map of the occupancy probability of the scene where the robot is currently located.
  • the probability of a unit area in the Nth layer of the pyramid map is the probability that the grid area corresponding to the unit area may be occupied by an object.
  • the probability of the unit area in the upper layer is the maximum value of the probability of each lower unit area, that is, the probability of the unit area in the i-th layer is its corresponding i-th The maximum value of the probability of the unit area in the +1 layer, where i ⁇ [1,...,N-1].
  • the upper unit area A corresponds to the lower unit area 1, the lower unit area 2, the lower unit area 3, and the lower unit area 4.
  • the probability of the lower unit area 1 is a
  • the probability of the lower unit area 2 is b
  • the probability of the lower unit area 3 is c
  • the probability of the lower unit area 4 is d
  • a>b>c>d then the unit area A
  • the probability is the largest among a, b, c, and d, that is, the probability of the unit area A is a.
  • S13 Perform pose matching layer by layer in the pyramid map according to the target point cloud information, and determine the pose corresponding to the unit area in the target layer whose pose matching score meets the preset condition as the target pose.
  • the target layer is the number of layers to be calculated, which can be a preset value.
  • the target layer is related to the required positioning accuracy. The higher the positioning accuracy, the greater the number of target layers.
  • the target layer can also be determined according to the size of the grid area. The larger the grid area, the greater the number of layers of the target layer.
  • the preset branch and bound algorithm can be used to match the target point cloud information with the point cloud information corresponding to the corresponding unit area in the pyramid chart in order from top to bottom, so as to obtain the pose matching score of each unit area.
  • a unit area whose pose matching score meets a preset condition is selected, for example, the unit area with the highest pose matching score, and the pose corresponding to the unit area is determined as the target pose.
  • the pose corresponding to the unit area whose pose matching score is higher than the set threshold is determined as the target pose.
  • the pose corresponding to the unit area with the pose matching score higher than the set threshold and the highest score is determined as the target pose.
  • S14 Correct the pose of the target to obtain current pose information of the radar, and determine the positioning information of the robot according to the current pose information of the radar.
  • the target pose is corrected by a preset correction method, and the current pose information of the radar is obtained, so that according to the current pose information of the radar, the positioning information of the robot equipped with the radar can be obtained.
  • the preset correction method can be selected according to the actual situation, for example, obtain multi-frame point cloud information under the condition of the same radar pose, and calculate the pose corresponding to each frame of point cloud information, take the average of each pose or calculate each person The weighted average of the poses, etc., to obtain the corrected pose of the lidar.
  • the weight coefficient of each pose can be customized according to the actual situation. For example, the weight coefficient of the pose is positively correlated with the pose matching score corresponding to the position. The higher the pose matching score, the greater the weight coefficient of the pose; for example, the covariance of each pose can be used as the respective weight coefficient.
  • the positioning based on the point cloud information collected by radar is less affected by the intensity of the light than the positioning based on the visible light image, and the impact of the light on the positioning accuracy can be reduced.
  • a pyramid map method is used to perform pose matching, instead of violent search for each pose, which can improve the efficiency of matching and save calculation time. And correct the target pose to further improve the accuracy of positioning.
  • obtaining target point cloud information according to the point cloud information collected by the robot's radar includes:
  • S111 Acquire multi-frame point cloud information collected by the robot's radar at multiple positions, obtain corresponding odometer information of the robot traveling between positions corresponding to the multi-frame point cloud information, and obtain first odometer information.
  • the multi-frame point cloud information is converted to the coordinate system of the current pose of the radar to obtain the target point cloud information.
  • the robot collects a frame of point cloud information at position A, position B, and position C, where position C is the current position of the robot.
  • the odometer carried by the robot records the direction and distance of movement of the robot from position A to position B, and records the direction and distance of movement from position B to position C.
  • vector a from position A to position B can be obtained, and vector a is the conversion vector for converting the point cloud information from the coordinate system of position A to the coordinate system of position B;
  • the vector b from the position B to the position C can be obtained, and the vector b is the conversion vector for converting the point cloud information from the position B coordinate system to the position C coordinate system.
  • Use vector b to convert the point cloud information collected at position B to the coordinate system of position C and use vector a and vector b to convert the point cloud information collected at position A to the coordinate system of position C.
  • the cloud information is all converted to the coordinate system of the position C, and the three frames of point cloud information in the coordinate system of the position C are synthesized, for example, the corresponding points are averaged, etc., to obtain the target point cloud information.
  • the use of multi-frame point cloud information to synthesize the target point cloud information can reduce the contingency of a single frame of point cloud information, increase the representativeness of the target point cloud information, and thereby increase the positioning accuracy.
  • the steps of generating a pyramid chart include:
  • S21 Obtain laser point cloud information collected by the radar in multiple poses, and obtain multi-frame sample point cloud information.
  • the generation rules of the pyramid map are the same, but for different positioning scenarios, the occupancy probability grid maps are generally different.
  • the point cloud information of each sample collected by the radar in multiple poses of the current positioning scene is used to construct a grid map of the occupancy probability of the current positioning scene.
  • the occupancy probability grid map includes multiple grid areas, and the size of each grid area can be customized. Each grid area corresponds to a corresponding probability.
  • the probability corresponding to the grid area represents the probability of the grid area being occupied, that is, the probability of being occupied by an object in the grid.
  • the probability corresponding to the grid area can be calculated according to the number of frames occupied by the grid area, and the specific calculation method can refer to the calculation method of the grid area occupancy probability in the related art, which will not be repeated here.
  • the preset ratio of the number of unit areas between levels indicates the ratio of the number of unit areas between adjacent levels in the pyramid.
  • a unit area of corresponds to M unit areas in the lower layer.
  • the ratio of the number of unit areas between the preset levels can be set to 4.
  • the number of pyramid layers is related to the total number of grid areas in the occupancy probability grid map.
  • the total number of grid areas in the occupancy probability grid map is S
  • the number of pyramid levels K satisfies 4 K-1 ⁇ S.
  • the ratio of the number of unit areas between the preset levels is 4, according to the total number S of grid areas in the occupancy probability grid map, the formula K ⁇ 1+log 4 S is used to obtain the largest integer K, which is the pyramid The number of layers.
  • S24 Generate a pyramid map according to the above-mentioned occupancy probability grid map, the preset ratio of the number of unit areas between levels, and the above-mentioned number of pyramid layers.
  • the total number of grid areas in the occupancy probability grid map is S
  • the preset ratio of the number of unit areas between levels is 4
  • the number of pyramid layers is K.
  • a grid area is regarded as a unit area.
  • the lowermost layer including S unit areas is generated.
  • the lowermost layer adjacent to the upper layer get Unit areas, among which, the 4 unit areas at the bottom level correspond to one unit area on this floor, Indicates rounding up.
  • the top layer of the pyramid chart is generated.
  • the preset ratio of the number of unit areas among the levels is 4
  • the third layer (lowest layer) includes 20 unit areas
  • the second layer includes 5 unit areas
  • the first layer (top layer) includes 2 Unit area.
  • a method for generating a pyramid map which can generate a pyramid map corresponding to the actual scene where the robot is located, and provides a prerequisite for the subsequent calculation of positioning information.
  • pose matching is performed layer by layer, and the unit area in the target layer whose pose matching score meets preset conditions is corresponding
  • the pose of is determined as the target pose, including:
  • S131 Obtain a preset target number m and rotation point cloud information at a specified angle, where m is a positive integer and m ⁇ N.
  • the preset target number of layers is the number of layers that need to be calculated, denoted by m.
  • the number of preset target layers can be determined according to the required positioning accuracy. The higher the accuracy, the greater the number of preset target layers.
  • the radar collects multiple frames of point cloud information at multiple locations in advance as sample point cloud information.
  • the point cloud image of the entire positioning scene is generated in advance, and the point cloud information of the rotation at the specified angle is obtained according to the point cloud image of the positioning scene.
  • the specified angle is the current angle of the radar, or the angle calculated based on the prior information and the angle error range.
  • the current angle of the radar can be obtained, that is, the specified angle is the current angle of the radar
  • the point cloud information is rotated based on the direct current angle. If the current angle of the radar cannot be obtained, the rotation angle range of the angle needs to be determined according to the prior information and the angle error range, that is, the specified angle is the rotation angle range, and then the rotation point cloud information at each angle within the rotation range is obtained .
  • a preset branch and bound algorithm can be used to perform pose matching in the order of the number of layers from the first layer to the mth layer in the pyramid map, for example, CSM (Correlative Scan Matching, correlation scan matching) ), ignore the low-scoring branch, continue matching in the highest-scoring branch, and use the pose with the highest matching score in the m-th layer as the target pose.
  • CSM Correlative Scan Matching, correlation scan matching
  • the branch and bound method is used for pose matching, instead of violent search for each pose, which can improve the efficiency of matching and save calculation time.
  • the above S132 according to the above target point cloud information and the rotation point cloud information at the specified angle, in the above pyramid diagram, in the order from the first layer to the mth layer , Perform pose matching layer by layer, and determine the pose corresponding to the unit area with the highest pose matching score in the m-th layer as the target pose, including:
  • S1321 according to the above-mentioned target point cloud information and the above-mentioned rotating point cloud information at the specified angle, in the above-mentioned pyramid map, perform pose matching for each unit area in the first layer one by one, and obtain a pose matching score that meets a preset condition Unit area.
  • the unit area where the pose matching score meets the preset condition is generally the unit area with the highest pose matching score, and it can also be the unit area with the pose matching score greater than the preset score threshold, or greater than the preset score threshold.
  • Each unit area in the first layer of the pyramid map needs to be pose matched, so as to obtain the unit area in the first layer that meets the preset conditions.
  • S1322 in the order from the second layer to the mth layer, perform pose matching in the unit area of the current layer corresponding to the unit area of the upper layer whose pose matching score satisfies the preset condition, and compare the middle position of the mth layer.
  • the pose corresponding to the unit area with the highest pose matching score is determined as the target pose.
  • the unit area corresponding to the unit area of the upper layer that meets the preset condition in this layer determines the unit area corresponding to the unit area of the upper layer that meets the preset condition in this layer, and only perform position matching in these unit areas.
  • the pose corresponding to the unit area with the highest pose matching score is selected as the target pose.
  • the foregoing correction of the target pose to obtain the current pose information of the radar includes:
  • S141 Calculate the point cloud information at the target pose based on the target pose and the multi-frame sample point cloud information as reference point cloud information, where the sample point cloud information is the point cloud information collected by the radar in multiple locations in advance.
  • S142 Iterate on the points representing the same position in the reference point cloud information and the target point cloud information, and calculate a pose transformation matrix between the reference point cloud information and the target point cloud information.
  • the pose transformation matrix can be expressed as R and t Two parts, where R represents the rotation matrix of the pose transformation matrix, and t represents the translation vector of the pose transformation matrix.
  • the pose transformation matrix needs to minimize the loss E(R,t), where:
  • x i is the i-th point in X
  • p i is the i-th point in P.
  • the least squares method can be used to obtain the solutions of R and t, thereby obtaining the pose transformation matrix.
  • the true correspondence between the reference point cloud information and the target point cloud information is not known.
  • the closest point in the reference point cloud information and the target point cloud information is regarded as the point at the same position, and the point is selected.
  • Multiple groups of points representing the same position are iterated until E(R,t) converges or reaches the preset number of iterations, and the solutions of R and t at this time are obtained, thereby obtaining the pose transformation matrix.
  • the laser point cloud information at the target pose is calculated according to the target pose and the point cloud information of the multi-frame samples, as the reference point cloud information.
  • ICP Intelligent Closest Point
  • the pose transformation matrix of the reference point cloud information relative to the target point cloud information is calculated, and the pose transformation matrix and target position Attitude, the corrected pose of the radar is calculated, where the corrected pose of the radar is the current pose information of the radar.
  • the pose of the radar is corrected to obtain a more accurate radar pose, thereby improving the positioning accuracy.
  • the foregoing determination of the positioning information of the robot according to the current pose information of the radar includes:
  • S144 Obtain the poses of the radar at multiple positions, and obtain the second odometer information of the robot moving between the positions corresponding to each pose.
  • the poses of the radar at multiple positions are acquired, and the second odometer information of the robot moving between the positions corresponding to each pose, where the second odometer information includes the movement of the robot between the positions corresponding to each pose The driving direction and distance of the process.
  • S145 According to the second odometer information, convert the poses of the radar at multiple positions to the coordinate system of the current pose of the radar to obtain each reference pose.
  • the radar corresponds to position 1, position 2, and position 3, respectively, where position C is the current position.
  • the odometer mounted on the robot records the direction and distance of movement of the robot from position A to position B, as well as the direction and distance of movement from position B to position C. According to the movement direction and travel distance from position A to position B, the vector a from position A to position B can be obtained; according to the direction of movement and travel distance from position B to position C, the distance from position B to position can be obtained.
  • the vector b of C Use vector b to convert pose 2 to the coordinate system of position C to obtain reference pose 2; use vector a and vector b to convert the point cloud information collected in pose 1 to the coordinate system of position C to obtain the reference Posture 1.
  • S146 Determine the target pose of the radar according to each reference pose and the corrected pose of the radar.
  • each reference pose may be compared with the corrected pose of the radar to verify whether it is accurate. For example, a weighted average method may be used to obtain the average value of each reference pose and the corrected radar pose to obtain the target pose of the radar.
  • S147 Determine the positioning information of the robot according to the target pose of the radar.
  • the robot is equipped with a radar, and according to the position where the radar is installed in the robot, the positioning information of the robot can be obtained based on the pose of the radar. For example, which grid area or grid areas in which the robot is occupying the probability grid map.
  • using multiple frames of laser point cloud information to correct the pose of the lidar can improve the positioning accuracy of the lidar.
  • the positioning method of the embodiment of the present application includes: generating a pyramid map, correlation scan matching, and iterative closest point algorithm matching.
  • generating a pyramid map it is necessary to obtain multi-frame sample laser point cloud information, and generate an indoor occupancy probability grid map, and then calculate the number of pyramid layers to generate a pyramid map, and store the pyramid map and the occupancy probability grid map .
  • Correlation scan matching calculates the search parameters such as the number of target depth layers based on the laser point cloud information, generates the rotating point cloud information, and uses the branch and bound method to perform correlation scan matching from top to bottom in the pyramid map to obtain the position with the highest matching score.
  • Posture that is, the target posture.
  • Iterative closest point algorithm matching includes ICP algorithm matching and multi-frame laser point cloud information verification, and finally obtains the pose of the lidar.
  • the device includes:
  • the point cloud information acquisition module 201 is configured to obtain target point cloud information according to the point cloud information collected by the radar of the robot, where the target point cloud information indicates the current pose of the radar;
  • the pyramid map acquisition module 202 is used to acquire a pre-generated pyramid map, where the above-mentioned pyramid map includes N layers, and each layer includes a plurality of unit areas, and one unit area in the i-th layer corresponds to the one in the i+1-th layer Multiple unit areas, and the probability of the unit area in the i-th layer is the maximum value of the probability of the unit area in the i+1-th layer.
  • the unit area in the Nth layer of the above pyramid map corresponds to the occupancy of the positioning scene
  • the target pose matching module 203 is configured to perform pose matching layer by layer in the above-mentioned pyramid map according to the above-mentioned target point cloud information, and compare the poses corresponding to the unit regions whose pose matching scores meet the preset conditions in the target layer, Determined as the target pose;
  • the radar pose correction module 204 is used to correct the above-mentioned target pose to obtain the current pose information of the above-mentioned radar;
  • the positioning information determining module 205 is configured to determine the positioning information of the robot according to the current pose information of the radar.
  • the aforementioned point cloud information acquisition module 201 is specifically configured to: acquire multiple frames of point cloud information collected by the robot's radar, and combine the aforementioned multiple frames of point cloud information based on the odometer data of the aforementioned robot One frame of data to obtain the target point cloud information.
  • the above-mentioned point cloud information acquisition module 201 is specifically configured to: acquire the multi-frame point cloud information collected by the radar of the above-mentioned robot at multiple positions, and obtain the corresponding point cloud information of the above-mentioned robot in the above-mentioned multi-frame point cloud information.
  • the odometer information corresponding to the driving between each position obtains the first odometer information; according to the first odometer information, the above-mentioned multi-frame point cloud information is converted to the coordinate system of the above-mentioned radar current pose, and the target point cloud information is obtained .
  • the above-mentioned device further includes: a pyramid map generating module, configured to: obtain the point cloud information collected by the above-mentioned radar in multiple poses to obtain multi-frame sample point cloud information; and generate the multi-frame The occupancy probability grid map corresponding to the sample point cloud information, where the occupancy probability grid map includes a plurality of grid areas, and the probability corresponding to each grid area represents the probability that the grid area is occupied by an object; according to the above occupancy probability Calculate the number of pyramid layers based on the number of grid areas in the raster map and the ratio of the number of unit areas between the preset levels; generate according to the above-mentioned occupancy probability raster map, the ratio of the number of unit areas between the preset levels, and the number of pyramid layers mentioned above Pyramid diagram.
  • a pyramid map generating module configured to: obtain the point cloud information collected by the above-mentioned radar in multiple poses to obtain multi-frame sample point cloud information; and generate the multi-frame The occupancy probability grid map corresponding to the sample point cloud information, where the
  • the aforementioned target pose matching module 203 includes:
  • the target layer number obtaining submodule is used to obtain the preset target layer number m and the rotation point cloud information at a specified angle, where m is a positive integer and m ⁇ N;
  • the pose matching score calculation sub-module is used to perform the pose layer by layer according to the above-mentioned target point cloud information and the above-mentioned rotating point cloud information at the specified angle, in the above pyramid chart, in the order from the first layer to the mth layer Match, and determine the pose corresponding to the unit area with the highest pose matching score in the m-th layer as the target pose.
  • the aforementioned pose matching score calculation sub-module is used, specifically for: according to the aforementioned target point cloud information and the aforementioned rotating point cloud information at the specified angle, in the aforementioned pyramid map, Each unit area in one layer performs pose matching one by one, and the unit area whose pose matching score meets the preset conditions is obtained; in the order from the second layer to the mth layer, the pose matching score of the upper layer meets the preset The pose matching is performed in the unit region of the current layer corresponding to the unit region of the condition, and the pose corresponding to the unit region with the highest pose matching score in the m-th layer is used as the target pose.
  • the radar pose correction module 204 is specifically configured to calculate the point cloud information at the target pose based on the target pose and multi-frame sample point cloud information as reference point cloud information , wherein the sample point cloud information is the point cloud information collected by the radar in multiple locations in advance; the reference point cloud information and the target point cloud information are iterated to indicate the same position points to calculate the reference point cloud
  • the pose transformation matrix between the information and the above-mentioned target point cloud information; the above-mentioned target pose is transformed according to the above-mentioned pose transformation matrix to obtain the corrected pose of the radar.
  • the positioning information determining module 205 is specifically configured to: obtain the poses of the radar at multiple positions, and obtain the second odometer information of the robot moving between positions corresponding to each pose According to the above-mentioned second odometer information, the position of the radar at multiple positions is converted to the coordinate system of the current position of the radar to obtain each reference position; according to the above-mentioned reference position and the corrected radar The pose, the target pose of the radar is determined; and the positioning information of the robot is determined according to the target pose of the radar.
  • the embodiment of the present application also provides an electronic device, including: a processor and a memory;
  • the above-mentioned memory is used to store computer programs
  • the target point cloud information is obtained, where the target point cloud information represents the current pose of the radar;
  • the pyramid map includes N layers, each layer includes multiple unit areas, one unit area in the i-th layer corresponds to multiple unit areas in the i+1-th layer, and the i-th layer
  • the probability of the middle unit area is the maximum value of the probability of the unit area in the i+1th layer.
  • the unit area in the Nth layer of the pyramid map corresponds to the grid area of the occupancy probability grid map of the positioning scene, the pyramid
  • the target point cloud information perform pose matching layer by layer in the pyramid map, and determine the pose corresponding to the unit area whose pose matching score meets the preset conditions in the target layer as the target pose;
  • the target pose is corrected to obtain the current pose information of the radar, and the positioning information of the robot is determined according to the current pose information of the radar.
  • the implementation of the above-mentioned electronic device can refer to the above-mentioned method embodiment, and the repetition will not be repeated.
  • the electronic device of the embodiment of the present application further includes a communication interface 902 and a communication bus 904.
  • the processor 901, the communication interface 902, and the memory 903 communicate with each other through the communication bus 904.
  • the electronic device may be a robot equipped with a radar and an odometer.
  • the communication bus mentioned in the above electronic device may be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus or the like.
  • the communication bus can be divided into address bus, data bus, control bus and so on. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
  • the communication interface is used for communication between the above-mentioned electronic device and other devices.
  • the memory may include RAM (Random Access Memory, random access memory), and may also include NVM (Non-Volatile Memory, non-volatile memory), such as at least one disk storage.
  • NVM Non-Volatile Memory, non-volatile memory
  • the memory may also be at least one storage device located far away from the foregoing processor.
  • the above-mentioned processor may be a general-purpose processor, including CPU (Central Processing Unit), NP (Network Processor), etc.; it may also be DSP (Digital Signal Processing, digital signal processor), ASIC ( Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array, Field Programmable Gate Array) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.
  • CPU Central Processing Unit
  • NP Network Processor
  • DSP Digital Signal Processing, digital signal processor
  • ASIC Application Specific Integrated Circuit
  • FPGA Field-Programmable Gate Array, Field Programmable Gate Array
  • other programmable logic devices discrete gates or transistor logic devices, discrete hardware components.
  • the embodiments of the present application also provide a computer-readable storage medium, and the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the following steps are implemented:
  • the target point cloud information is obtained, where the target point cloud information represents the current pose of the radar;
  • the pyramid map includes N layers, each layer includes multiple unit areas, one unit area in the i-th layer corresponds to multiple unit areas in the i+1-th layer, and the i-th layer
  • the probability of the middle unit area is the maximum value of the probability of the unit area in the i+1th layer.
  • the unit area in the Nth layer of the pyramid map corresponds to the grid area of the occupancy probability grid map of the positioning scene, the pyramid
  • the target point cloud information perform pose matching layer by layer in the pyramid map, and determine the pose corresponding to the unit area in the target layer whose pose matching score meets the preset conditions as the target pose;
  • the target pose is corrected to obtain the current pose information of the radar, and the positioning information of the robot is determined according to the current pose information of the radar.
  • the implementation of the above-mentioned computer-readable storage medium can refer to the above-mentioned method embodiment, and the repetition will not be repeated.

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Automation & Control Theory (AREA)
  • Image Analysis (AREA)
  • Radar Systems Or Details Thereof (AREA)
  • Traffic Control Systems (AREA)

Abstract

一种定位方法、装置、电子设备及存储介质,应用于定位技术领域。根据机器人的雷达采集的点云信息,得到目标点云信息(S11);根据目标点云信息,在金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿(S13);对目标位姿进行校正,得到雷达当前的位姿信息,并根据雷达当前的位姿信息,确定机器人的定位信息(S14)。在实施例中,通过雷达采集的点云信息进行定位,相比于通过可见光图像进行定位,受光照强度的影响小,能够减少光照对定位精度的影响,并且采用金字塔图的方式进行位姿匹配,不用针对每个位姿都进行暴力搜索,能够提高匹配的效率,节约计算时间。

Description

定位方法、装置、电子设备及存储介质 技术领域
本申请涉及定位技术领域,特别是涉及定位方法、装置、电子设备及存储介质。
背景技术
在室内机器人领域,通常使用地图作为先验信息来实现自主定位和导航。而使用地图,首先需要知道机器人自身在地图上的位姿和姿态,这就需要使用重定位技术。重定位技术根据是否有先验信息,又可分为局部重定位和全局重定位。
现有的室内全局重定位技术中,需要采集可见光图像,依靠计算机视觉技术提取可见光图像中的特征点,然后通过视觉词袋模型,搜索地图中的相似环境来实现全局重定位,但是采用上述方法,在光照程度变化大时,特征点提取受影响,定位精度受光照影响大。
发明内容
本申请实施例的目的在于提供一种定位方法、装置、电子设备及存储介质,以实现减少光照对定位精度的影响。具体技术方案如下:
第一方面,本申请实施例提供了一种定位方法,所述方法包括:
根据机器人的雷达采集的点云信息,得到目标点云信息,其中,所述目标点云信息表示所述雷达的当前位姿;
获取预先生成的金字塔图,其中,所述金字塔图包括N个层,每层均包括多个单位区域,第i层中的一个单位区域对应第i+1层中的多个单位区域,且第i层中单位区域的概率为其对应的第i+1层中的单位区域的概率中的最大值,所述金字塔图的第N层中的单位区域对应定位场景的占用概率栅格地图的栅格区域,所述金字塔图的第N层中的单位区域的概率为该单位区域对应的栅格区域可能被物体占据的概率,i=1,…,N-1,N为大于1的正整数;
根据所述目标点云信息,在所述金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿;
对所述目标位姿进行校正,得到所述雷达当前的位姿信息,并根据所述雷达当前的位姿信息,确定所述机器人的定位信息。
在一种可能的实施方式中,所述根据机器人的雷达采集的点云信息,得到目标点云信息,包括:
获取所述机器人的雷达采集的多帧点云信息,基于所述机器人的里程计数据,将所述多帧点云信息合成一帧数据,得到目标点云信息。
在一种可能的实施方式中,所述获取所述机器人的雷达采集的多帧点云信息,基于所述机器人的里程计数据,将所述多帧点云信息合成一帧数据,得到目标点云信息,包括:
获取所述机器人的雷达在多个位置采集的多帧点云信息,获取所述机器人在所述多帧点云信息对应的各位置之间行驶对应的里程计信息,得到第一里程计信息;
根据所述第一里程计信息,将所述多帧点云信息转换到所述雷达当前位姿的坐标系下,得到目标点云信息。
在一种可能的实施方式中,根据如下方式生成金字塔图:
获取所述雷达在多个位姿下采集的点云信息,得到多帧样本点云信息;
生成所述多帧样本点云信息对应的占用概率栅格地图,其中,所述占用概率栅格地图包括多个栅格区域,各所述栅格区域对应的概率表示该栅格区域被物体占据的概率;
根据所述占用概率栅格地图中栅格区域的数量、及预设层级间单位区域数量比例,计算金字塔图层数;
根据所述占用概率栅格地图、预设层级间单位区域数量比例及所述金字塔图层数,生成金字塔图。
在一种可能的实施方式中,所述根据所述目标点云信息,在所述金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿,包括:
获取预设目标层数m以及指定角度上的旋转点云信息,其中,m为正整数,且m≤N;
根据所述目标点云信息及所述指定角度上的旋转点云信息,在所述金字塔图中,按照从第一层到第m层的顺序,逐层进行位姿匹配,并将第m层中位姿匹配评分最高的单位区域对应的位确定为目标位姿。
在一种可能的实施方式中,所述根据所述目标点云信息及所述指定角度上的旋转点云信息,在所述金字塔图中,按照从第一层到第m层的顺序,逐层进行位姿匹配,并将第m层中位姿匹配评分最高的单位区域对应的位姿确定为目标位姿,包括:
根据所述目标点云信息及所述指定角度上的旋转点云信息,在所述金字塔图中,对第一层中的各单位区域逐个进行位姿匹配,得到位姿匹配评分满足预设条件的单位区域;
按照从第二层到第m层的顺序,逐层在其上层位姿匹配评分满足预设条件的单位区域所对应的当前层单位区域中进行位姿匹配,将第m层中位姿匹配评分最高的单位区域对应的位姿确定为目标位姿。
在一种可能的实施方式中,所述对所述目标位姿进行校正,得到所述雷达的位姿,包括:
根据所述目标位姿及多帧样本点云信息,计算所述目标位姿处的点云信息,作为参考点云信息,其中,所述样本点云信息为所述雷达预先在多个位置处采集的点云信息;
对所述参考点云信息及所述目标点云信息中表示同一位置的点进行迭代,计算出所述参考点云信息与所述目标点云信息之间的位姿变换矩阵;
根据所述位姿变换矩阵对所述目标位姿进行变换,得到校正后的雷达的位姿。
在一种可能的实施方式中,根据所述雷达当前的位姿信息,确定所述机器人的定位信息,包括:
获取所述雷达在多个位置的位姿,及获取所述机器人在各位姿对应的位置之间运动的第二里程计信息;
根据所述第二里程计信息,将所述雷达在多个位置的位姿转换到所述雷达当前位姿的坐标系下,得到各参考位姿;
根据所述各参考位姿及所述校正后的雷达的位姿,确定所述雷达的目标位姿;
根据所述雷达的目标位姿,确定所述机器人的定位信息。
第二方面,本申请实施例提供了一种定位装置,所述装置包括:
点云信息获取模块,用于根据机器人的雷达采集的点云信息,得到目标点云信息,其中,所述目标点云信息表示所述雷达的当前位姿;
金字塔图获取模块,用于获取预先生成的金字塔图,其中,所述金字塔图包括N个层,每层均包括多个单位区域,第i层中的一个单位区域对应第i+1层中的多个单位区域,且第i层中单位区域的概率为其对应的第i+1层中的单位区域的概率中的最大值,所述金字塔图的第N层中的单位区域对应定位场景的占用概率栅格地图的栅格区域,所述金字塔图的第N层中的单位区域的概率为该单位区域对应的栅格区域可能被物体占据的概率,i=1,…,N-1,N为大于1的正整数;
目标位姿匹配模块,用于根据所述目标点云信息,在所述金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿;
雷达位姿校正模块,用于对所述目标位姿进行校正,得到所述雷达当前的位姿信息;
定位信息确定模块,用于根据所述雷达当前的位姿信息,确定所述机器人的定位信息。
在一种可能的实施方式中,所述点云信息获取模块,具体用于:获取所述机器人的雷达采集的多帧点云信息,基于所述机器人的里程计数据,将所述多帧点云信息合成一帧数据,得到目标点云信息。
在一种可能的实施方式中,所述点云信息获取模块,具体用于:获取所述机器人的雷达在多个位置采集的多帧点云信息,获取所述机器人在所述多帧点云信息对应的各位置之间行驶对应的里程计信息,得到第一里程计信息;根据所述第一里程计信息,将所述多帧点云信息转换到所述雷达当前位姿的坐标系下,得到目标点云信息。
在一种可能的实施方式中,所述装置还包括:金字塔图生成模块,用于:获取所述雷达 在多个位姿下采集的点云信息,得到多帧样本点云信息;生成所述多帧样本点云信息对应的占用概率栅格地图,其中,所述占用概率栅格地图包括多个栅格区域,各所述栅格区域对应的概率表示该栅格区域被物体占据的概率;根据所述占用概率栅格地图中栅格区域的数量、及预设层级间单位区域数量比例,计算金字塔图层数;根据所述占用概率栅格地图、预设层级间单位区域数量比例及所述金字塔图层数,生成金字塔图。
在一种可能的实施方式中,所述目标位姿匹配模块,包括:
目标层数获取子模块,用于获取预设目标层数m以及指定角度上的旋转点云信息,其中,m为正整数,且m≤N;
位姿匹配评分计算子模块,用于根据所述目标点云信息及所述指定角度上的旋转点云信息,在所述金字塔图中,按照从第一层到第m层的顺序,逐层进行位姿匹配,将第m层中位姿匹配评分最高的单位区域对应的位姿确定为目标位姿。
在一种可能的实施方式中,所述位姿匹配评分计算子模块,具体用于:根据所述目标点云信息及所述指定角度上的旋转点云信息,在所述金字塔图中,对第一层中的各单位区域逐个进行位姿匹配,得到位姿匹配评分满足预设条件的单位区域;按照从第二层到第m层的顺序,逐层在其上层位姿匹配评分满足预设条件的单位区域所对应的当前层单位区域中进行位姿匹配,并将第m层中位姿匹配评分最高的单位区域对应的位姿确定为目标位姿。
在一种可能的实施方式中,所述雷达位姿校正模块,具体用于:根据所述目标位姿及多帧样本点云信息,计算所述目标位姿处的点云信息,作为参考点云信息,其中,所述样本点云信息为所述雷达预先在多个位置处采集的点云信息;对所述参考点云信息及所述目标点云信息中表示同一位置的点进行迭代,计算出所述参考点云信息与所述目标点云信息之间的位姿变换矩阵;根据所述位姿变换矩阵对所述目标位姿进行变换,得到校正后的雷达的位姿。
在一种可能的实施方式中,所述定位信息确定模块,具体用于:获取所述雷达在多个位置的位姿,及获取所述机器人在各位姿对应的位置之间运动的第二里程计信息;根据所述第二里程计信息,将所述雷达在多个位置的位姿转换到所述雷达当前位姿的坐标系下,得到各参考位姿;根据所述各参考位姿及所述校正后的雷达的位姿,确定所述雷达的目标位姿;根据所述雷达的目标位姿,确定所述机器人的定位信息。
第三方面,本申请实施例提供了一种电子设备,包括处理器及存储器;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现上述第一方面任一所述的定位方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面任一所述的定位方法。
本申请实施例提供的定位方法、装置、电子设备及存储介质,根据机器人的雷达采集的点云信息,得到目标点云信息,其中,目标点云信息表示雷达的当前位姿;获取预先生成的金字塔图,其中,金字塔图包括N个层,每层均包括多个单位区域,第i层中的一个单位区域对应第i+1层中的多个单位区域,且第i层中单位区域的概率为其对应的第i+1层中的单位区域的概率中的最大值,金字塔图的第N层中的单位区域对应定位场景的占用概率栅格地图的栅格区域,金字塔图的第N层中的单位区域的概率为该单位区域对应的栅格区域可能被物体占据的概率,i=1,…,N-1,N为大于1的正整数;根据目标点云信息,在金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿;对目标位姿进行校正,得到雷达当前的位姿信息,并根据雷达当前的位姿信息,确定机器人的定位信息。在本申请实施例中,通过雷达采集的点云信息进行定位,相比于通过可见光图像进行定位,受光照强度的影响小,能够减少光照对定位精度的影响。并且采用金字塔图的方式进行位姿匹配,不用针对每个位姿都进行暴力搜索,能够提高匹配的效率,节约计算时间。当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例的定位方法的第一种示意图;
图2为本申请实施例的金字塔图的一种示意图;
图3为本申请实施例的定位方法的第二种示意图;
图4为本申请实施例的金字塔图生成方法的一种示意图;
图5为本申请实施例的位姿匹配的第一种示意图;
图6为本申请实施例的位姿匹配的第二种示意图;
图7为本申请实施例的位姿校正的一种示意图;
图8为本申请实施例的定位信息校正的一种示意图;
图9为本申请实施例的定位方法的第三种示意图;
图10为本申请实施例的定位装置的一种示意图;
图11为本申请实施例的电子设备的一种示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了减少光照对定位精度的影响,本申请实施例提供了一种定位方法,该方法包括:
根据机器人的雷达采集的点云信息,得到目标点云信息,其中,目标点云信息表示雷达的当前位姿;
获取预先生成的金字塔图,其中,金字塔图包括N个层,每层均包括多个单位区域,第i层中的一个单位区域对应第i+1层中的多个单位区域,且第i层中单位区域的概率为其对应的第i+1层中的单位区域的概率中的最大值,金字塔图的第N层中的单位区域对应定位场景的占用概率栅格地图的栅格区域,金字塔图的第N层中的单位区域的概率为该单位区域对应的栅格区域可能被物体占据的概率,i=1,…,N-1,N为大于1的正整数;
根据目标点云信息,在金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿;
对目标位姿进行校正,得到雷达当前的位姿信息,并根据雷达当前的位姿信息,确定机器人的定位信息。
在本申请实施例中,通过雷达采集的点云信息进行定位,相比于通过可见光图像进行定位,受光照强度的影响小,能够减少光照对定位精度的影响。并且采用金字塔图的方式进行位姿匹配,不用针对每个位姿都进行暴力搜索,能够提高匹配的效率,节约计算时间。并对目标位姿的进行进一步的校正,从而进一步提高定位的精度。
下面进行具体说明:
本申请实施例提供了一种定位方法,参见图1,该方法包括:
S11,根据机器人的雷达采集的点云信息,得到目标点云信息,其中,目标点云信息表示雷达的当前位姿。
本申请实施例的定位方法可以应用于全局重定位场景,尤其是适用于室内全局重定位场景。
本申请实施例的定位方法可以通过电子设备实现,具体的,该电子设备可以为搭载有雷达及里程计的具备移动功能的机器人。此处的雷达可以为二维激光雷达等,里程计是一种测量行程的装置,能够测量机器人的行驶方向及行驶路程。本申请实施例的中的机器人可以为服务机器人,服务机器人能够实现接待、引领、导览等功能;也可以为扫地机器人或宠物机器人等。
在一种可能的实施方式中,可以直接将雷达采集的当前帧点云信息,作为目标点云信息。但是为了增加准确度,在一种可能的实施方式中,上述根据机器人的雷达采集的点云信息,得到目标点云信息,包括:获取机器人的雷达采集的多帧点云信息,基于机器人的里程计数据,将多帧点云信息合成一帧数据,得到目标点云信息。
其中,此处的里程计可以为轮式里程计或IMU(Inertial measurement unit,惯性测量单元)等,也可以采用激光匹配等方式获得里程计信息。将多帧激光点云信息合成一帧数据,得到目标激光点云信息,增加了目标激光点云信息中的信息量,从而降低匹配错误的情形,增加了定位准确度。
S12,获取预先生成的金字塔图,其中,金字塔图包括N个层,每层均包括多个单位区域,第i层中的一个单位区域对应第i+1层中的多个单位区域,且第i层中单位区域的概率为其对应的第i+1层中的单位区域的概率中的最大值,金字塔图的第N层中的单位区域对应定位场景的占用概率栅格地图的栅格区域,金字塔图的第N层中的单位区域的概率为该单位区域对应的栅格区域可能被物体占据的概率,i=1,…,N-1,N为大于1的正整数。
具体实施中,预先生成的金字塔图包括多个层,从上到下依次为第1层至第N层。金字塔图的最上层可以包括一个或多个单位区域(也称为像素),金字塔图中除最上层外的其他层中均包括多个单位区域(也称为像素)。任意相邻的两个层中,上层中的一个单位区域对应下层中的多个单位区域,一般情况下,上层中的一个单位区域对应的下层中的多个单位区域成正方形排布,具体的排布与占用概率栅格地图的实际形状有关。例如图2所示,相邻的两个层中,上层中的1个单位区域对应下层中的4个单位区域。又如,相邻的两个层中,上层中的1个单位区域对应下层中的9个单位区域,等等。本发明实施例中不对上层中的一个单位区域对应的下层中的单位区域的具体数量进行限定。其中,相邻的两个层中,上层中的1个单位区域对应下层中的4个单位区域,采用这种方式的定位精度更高。但是因为单位区域数量的限制,例如虚线框中所示,也会存在一个上层中的1个单位区域对应下层中的1个单位的情况。
一般情况下,金字塔图的第N层中的单位区域与占用概率栅格地图中的栅格区域是一一对应的。栅格区域是占用概率栅格地图中的基本区域单位,占用概率栅格地图包括多个栅格区域。占用概率栅格地图对应机器人当前所在场景的地图,将当前定位场景的地图划分为多个栅格区域,得到占用概率栅格地图。每个栅格区域的大小可以自定义设定,栅格区域的大小与实际要求的定位精度相关,要求的定位精度越高栅格区域设定的越小。每个栅格区域均对应相应的概率,针对任一栅格区域,该栅格区域对应的概率表示该栅格区域被物体占据的概率,即该栅格中存在物体的概率。机器人当前所在场景即机器人实际运动区域的场景,例如,机器人为服务机器人时,机器人当前所在场景可以为公司、厂房、酒店或商场等;机器 人为扫地机器人时,机器人当前所在场景可以为客厅或卧室等。可以预先利用雷达在机器人当前所在场景中的多个位姿下采集的各样本点云信息,构建机器人当前所在场景的占用概率栅格地图。
本申请实施例中,金字塔图的第N层(即金字塔图的最底层)中的单位区域的概率为该单位区域对应的栅格区域可能被物体占据的概率。除第N层外,在金字塔图的其他层中,上层中单位区域的概率为其对应的各下层单位区域的概率中的最大值,即第i层中单位区域的概率为其对应的第i+1层中的单位区域的概率中的最大值,其中i∈[1,……,N-1]。例如,上层单位区域A对应下层单位区域1、下层单位区域2、下层单位区域3及下层单位区域4。下层单位区域1的概率为a、下层单位区域2的概率为b、下层单位区域3的概率为c及下层单位区域4的概率为d,且a>b>c>d,则单位区域A的概率为a、b、c、d中最大的,即单位区域A的概率为a。
S13,根据目标点云信息,在金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿。
其中,目标层为需要计算到的层数,可以为一个预设值。具体的,目标层与要求的定位精度相关,定位精度越高,目标层的层数越大。目标层也可以按照栅格区域的大小确定,栅格区域越大,目标层的层数越大。可以利用预设分支定界算法,在金字塔图中按照从上到下的顺序,匹配目标点云信息与相应单位区域对应的点云信息,从而得到各单位区域的位姿匹配评分。在匹配的目标层的单位区域中,选取位姿匹配评分满足预设条件的单位区域,例如位姿匹配评分最高的单位区域,将该单位区域对应的位姿确定为目标位姿。又如,将位姿匹配评分高于设定阈值的单位区域对应的位姿,确定为目标位姿。再如,将位姿匹配评分高于设定阈值且评分最高的单位区域对应的位姿,确定为目标位姿。
S14,对目标位姿进行校正,得到雷达当前的位姿信息,并根据雷达当前的位姿信息,确定机器人的定位信息。
在具体实施中,通过预设校正方法,对目标位姿进行校正,得到雷达当前的位姿信息,从而根据雷达当前的位姿信息,可以得到搭载该雷达的机器人的定位信息。预设校正方法可以根据实际情况进行选取,例如,在雷达位姿不变的情况下获取多帧点云信息,并计算各帧点云信息对应的位姿,对各位姿取平均值或计算各位姿的加权平均等,从而得到校正后的激光雷达的位姿。其中,在计算各位姿的加权平均的过程中,各位姿的权重系数可以按照实际情况自定义设置,例如,位姿的权重系数与该位置对应的位姿匹配评分正相关,该位置对应的位姿匹配评分越高,则该位姿的权重系数越大;例如,可以将各位姿的协方差作为各自的权重系数等。
在本申请实施例中,通过雷达采集的点云信息进行定位,相比于通过可见光图像进行定 位,受光照强度的影响小,能够减少光照对定位精度的影响。并且采用金字塔图的方式进行位姿匹配,不用针对每个位姿都进行暴力搜索,能够提高匹配的效率,节约计算时间。并对目标位姿进行校正,从而进一步提高定位的精度。
在一种可能的实施方式中,参见图3,上述S11,根据机器人的雷达采集的点云信息,得到目标点云信息,包括:
S111,获取机器人的雷达在多个位置采集的多帧点云信息,获取机器人在多帧点云信息对应的各位置之间行驶对应的里程计信息,得到第一里程计信息。
S112,根据第一里程计信息,将多帧点云信息转换到雷达当前位姿的坐标系下,得到目标点云信息。
例如,机器人在位置A、位置B及位置C各自采集了一帧点云信息,其中位置C为机器人的当前位置。机器人搭载的里程计记录了机器人由位置A运动到位置B的运动方向及行驶路程,并记录了由位置B运动到位置C的运动方向及行驶路程。则根据由位置A运动到位置B的运动方向及行驶路程,可以得到由位置A到位置B的向量a,向量a为将点云信息由位置A坐标系转换到位置B坐标系的转换向量;根据由位置B运动到位置C的运动方向及行驶路程,可以得到由位置B到位置C的向量b,向量b为将点云信息由位置B坐标系转换到位置C坐标系的转换向量。利用向量b将在位置B采集的点云信息转换到位置C的坐标系下,利用向量a及向量b将在位置A采集的点云信息转换到位置C的坐标系下,此时三帧点云信息均转换到位置C的坐标系下,将位置C的坐标系下的三帧点云信息进行合成,例如,将对应点取平均值等,得到目标点云信息。
在本申请实施例中,利用多帧点云信息合成目标点云信息,能够降低单帧点云信息的偶然性,增加目标点云信息的代表性,从而增加定位精度。
在一种可能的实施方式中,参见图4,生成的金字塔图的步骤包括:
S21,获取雷达在多个位姿采集的激光点云信息,得到多帧样本点云信息。
S22,生成上述多帧样本点云信息对应的占用概率栅格地图,其中,上述占用概率栅格地图包括多个栅格区域,各栅格区域对应的概率表示该栅格区域被物体占据的概率。
针对不同的场景,金字塔图的生成规则均相同,但是针对不同的定位场景,其占用概率栅格地图一般是不同的。利用雷达在当前定位场景的多个位姿采集的各样本点云信息,构建当前定位场景的占用概率栅格地图。占用概率栅格地图包括多个栅格区域,每个栅格区域的大小可以自定义设定。每个栅格区域均对应相应的概率,针对任一栅格区域,该栅格区域对应的概率表示该栅格区域被占据的概率,即该栅格中有物体占据的概率。栅格区域对应的概率可以根据该栅格区域被占据的帧数计算,其具体计算方法可以参见相关技术中栅格区域占用概率的计算方法,此处不再赘述。
S23,根据上述占用概率栅格地图中栅格区域的数量及预设层级间单位区域数量比例,计算金字塔图层数。
具体实施中,预设层级间单位区域数量比例表示金字塔图中相邻层间单位区域数量的比例,例如,预设层级间单位区域数量比例为M,则金字塔图中相邻层之间上层中的一个单位区域对应下层中的M个单位区域。一般情况下预设层级间单位区域数量比例可以设置为4。金字塔图层数与占用概率栅格地图中栅格区域的总数量有关。占用概率栅格地图中栅格区域的总数量为S,金字塔层数K满足4 K-1<S。具体的,在预设层级间单位区域数量比例为4时,根据占用概率栅格地图中栅格区域的总数量S,利用公式K<1+log 4S,得到最大的整数K,即为金字塔图层数。
S24,根据上述占用概率栅格地图、预设层级间单位区域数量比例及上述金字塔图层数,生成金字塔图。
例如,占用概率栅格地图中栅格区域的总数量为S,预设层级间单位区域数量比例为4,金字塔图层数为K,从最下层开始,将一个栅格区域作为一个单位区域,生成包括S个单位区域的最下层。然后生成最下层相邻的上层,得到
Figure PCTCN2021090659-appb-000001
个单位区域,其中,最下层的4个单位区域对应本层的一个单位区域,
Figure PCTCN2021090659-appb-000002
表示向上取整。依次类推,直至生成金字塔图的最上层。例如,图2所示,预设层级间单位区域数量比例为4,第三层(最下层)包括20个单位区域,第二层包括5个单位区域,第一层(最上层)包括2个单位区域。
在本申请实施例中,给出了金字塔图的生成方法,可以生成机器人所在的实际场景对应的金字塔图,为后续计算定位信息提供前提。
在一种可能的实施方式中,参见图5,根据上述目标点云信息,在上述金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿,包括:
S131,获取预设目标层数m以及指定角度上的旋转点云信息,其中,m为正整数,且m≤N。
其中,预设目标层数为需要计算到的层数,用m表示。预设目标层数可以根据要求的定位精度确定,精度越高,预设目标层数越大。例如可以默认预设目标层数为最底层,即m=N。
在具体实施中,雷达预先在多个位置处采集多帧点云信息作为样本点云信息。根据样本点云信息预先生成整个定位场景的点云图,根据定位场景的点云图,获取指定角度上的旋转点云信息。指定角度为雷达的当前角度,或根据先验信息和角度误差范围计算的角度。其中,若能够获取到雷达的当前角度,即指定角度为雷达的当前角度,则根据直接当前角度上的旋转点云信息。若无法获取到雷达的当前角度,则需要根据先验信息和角度误差范围,决定角 度的旋转角度范围,即指定角度为该旋转角度范围,然后获取该旋转范围内各角度上的旋转点云信息。
S132,根据上述目标点云信息及上述指定角度上的旋转点云信息,在上述金字塔图中,按照从第一层到第m层的顺序,逐层进行位姿匹配,并将第m层中位姿匹配评分最高的单位区域对应的位姿确定为目标位姿。
在一些实施例中,可以使用预设分支定界算法,在从金字塔图中按照层数从第一层到第m层的顺序,进行位姿匹配,例如CSM(Correlative Scan Matching,相关性扫描匹配),忽略评分低的分支,在评分最高的分支中继续匹配,将第m层中匹配评分最高的位姿,作为目标位姿。
在本申请实施例中,通过预设目标层数,可以设置计算的哪一层,能够节约计算资源。并且利用分支定界法进行位姿匹配,不用针对每个位姿都进行暴力搜索,能够提高匹配的效率,节约计算时间。
在一种可能的实施方式中,参见图6,上述S132,根据上述目标点云信息及上述指定角度上的旋转点云信息,在上述金字塔图中,按照从第一层到第m层的顺序,逐层进行位姿匹配,并将第m层中位姿匹配评分最高的单位区域对应的位姿确定为目标位姿,包括:
S1321,根据上述目标点云信息及上述指定角度上的旋转点云信息,在上述金字塔图中,对第一层中的各单位区域逐个进行位姿匹配,得到位姿匹配评分满足预设条件的单位区域。
在一些实施例中,位姿匹配评分满足预设条件的单位区域一般为位姿匹配评分最高的单位区域,还可以为位姿匹配评分大于预设评分阈值的单位区域,或大于预设评分阈值的单位区域中位姿匹配评分最高的单位区域等。金字塔图的第一层中各单位区域均需要进行位姿匹配,从而得到第一层中满足预设条件的单位区域。
S1322,按照从第二层到第m层的顺序,逐层在其上层位姿匹配评分满足预设条件的单位区域所对应的当前层单位区域中进行位姿匹配,并将第m层中位姿匹配评分最高的单位区域对应的位姿确定为目标位姿。
具体的,针对第二层到第m层中的任一层,确定其上层满足预设条件的单位区域在本层中所对应的单位区域,仅在这些单位区域中进行位置匹配。在第m层中选取位姿匹配评分最高的单位区域对应的位姿,作为目标位姿。
在本申请实施例中,不用针对每个位姿都进行暴力搜索,能够提高匹配的效率,节约计算时间。
在一种可能的实施方式中,参见图7,上述对目标位姿进行校正,得到雷达当前的位姿信息,包括:
S141,根据目标位姿及多帧样本点云信息,计算目标位姿处的点云信息,作为参考点云 信息,其中,样本点云信息为雷达预先在多个位置处采集的点云信息。
S142,对参考点云信息及目标点云信息中表示同一位置的点进行迭代,计算出参考点云信息与目标点云信息之间的位姿变换矩阵。
例如,目标点云信息可以表示为X={x 1,…,x n},参考点云信息可以表示为P={p 1,…,p n},位姿变换矩阵可以表示为R及t两部分,其中,R表示位姿变换矩阵的旋转矩阵,t表示姿变换矩阵的平移向量。
在具体实施中,位姿变换矩阵需要使得损失E(R,t)最小,其中:
Figure PCTCN2021090659-appb-000003
x i为X中的第i个点,p i为P中的第i个点。
当知道参考点云信息与目标点云信息中各点的真实对应关系的情况下,可以用最小二乘法获得R和t的解,从而得到位姿变换矩阵。
但是一般情况下,并不知道参考点云信息与目标点云信息中各点的真实对应关系,此时将参考点云信息及目标点云信息中最接近的点视为同一位置的点,选取多组表示同一位置的点进行迭代,直至E(R,t)收敛或达到预设迭代次数,得到此时的R和t的解,从而得到位姿变换矩阵。
当然此处也可以采用相关技术中的其他位姿变换矩阵的计算方法,来获得位姿变换矩阵,本申请实施例中不做具体限定。
S143,根据位姿变换矩阵对目标位姿进行变换,得到校正后的雷达的位姿。
具体实施中,根据目标位姿及多帧样本点云信息,计算目标位姿处的激光点云信息,作为参考点云信息。根据参考点云信息及目标点云信息,通过ICP(Iterative Closest Point,迭代最近点算法),计算出参考点云信息相对于目标点云信息的位姿变换矩阵,根据位姿变换矩阵及目标位姿,计算得到校正后的雷达的位姿,其中,校正后的雷达的位姿即为雷达当前的位姿信息。
在本申请实施例中对雷达的位姿进行校正,能够获得更加准确的雷达位姿,从而提高定位准确度。
在一种可能的实施方式中,参见图8,上述根据雷达当前的位姿信息,确定机器人的定位信息,包括:
S144,获取雷达在多个位置的位姿,及获取机器人在各位姿对应的位置之间运动的第二里程计信息。
具体实施中,获取雷达在多个位置的位姿,以及机器人在各位姿对应的位置之间运动的第二里程计信息,其中,第二里程计信息包括机器人在各位姿对应的位置之间运动过程的行 驶方向及行驶距离。
S145,根据第二里程计信息,将雷达在多个位置的位姿转换到雷达当前位姿的坐标系下,得到各参考位姿。
例如,机器人在位置A、位置B及位置C处时,雷达分别对应位姿1、位姿2及位姿3,其中,位置C为当前位置。机器人搭载的里程计记录了机器人由位置A运动到位置B的运动方向及行驶距离,并记录了由位置B运动到位置C的运动方向及行驶距离。则根据由位置A运动到位置B的运动方向及行驶距离,可以得到由位置A到位置B的向量a;根据由位置B运动到位置C的运动方向及行驶距离,可以得到由位置B到位置C的向量b。利用向量b将在位姿2转换到位置C的坐标系下,得到参考位姿2;利用向量a及向量b将在位姿1采集的点云信息转换到位置C的坐标系下,得到参考位姿1。
S146,根据各参考位姿及校正后的雷达的位姿,确定雷达的目标位姿。
在一些实施例中,可以将各参考位姿与校正后的雷达的位姿进行比较,验证其是否准确。例如,可以采用加权平均的方式求取各参考位姿与校正后的雷达的位姿的均值,得到雷达的目标位姿。
S147,根据雷达的目标位姿,确定机器人的定位信息。
具体的,机器人搭载有雷达,根据雷达在机器人中安装的位置,可以基于雷达的位姿得到机器人的定位信息。例如,机器人在占用概率栅格地图中的哪个或哪几个栅格区域中。
在本申请实施例中,利用多帧激光点云信息校正激光雷达的位姿,可以提高激光雷达的定位准确率。
在一种可能的实施方式中,参见图9,本申请实施例的定位方法包括:生成金字塔地图,相关性扫描匹配及迭代最近点算法匹配。其中,在生成金字塔地图时,要获取多帧样本激光点云信息,并生成室内的占用概率栅格地图,然后计算金字塔图层数,从而生成金字塔图,并存储金字塔图及占用概率栅格地图。相关性扫描匹配根据激光点云信息计算目标深度层数等搜索参数,生成在旋转点云信息,使用分支定界法在金字塔图中从上到下进行相关性扫描匹配,得到匹配评分最高的位姿,即目标位姿。迭代最近点算法匹配包括ICP算法匹配及多帧激光点云信息校验,最终得到激光雷达的位姿。
本申请实施例还提供了定位装置,参见图10,该装置包括:
点云信息获取模块201,用于根据机器人的雷达采集的点云信息,得到目标点云信息,其中,上述目标点云信息表示上述雷达的当前位姿;
金字塔图获取模块202,用于获取预先生成的金字塔图,其中,上述金字塔图包括N个层,每层均包括多个单位区域,第i层中的一个单位区域对应第i+1层中的多个单位区域,且第i层中单位区域的概率为其对应的第i+1层中的单位区域的概率中的最大值,上述金字 塔图的第N层中的单位区域对应定位场景的占用概率栅格地图的栅格区域,上述金字塔图的第N层中的单位区域的概率为该单位区域对应的栅格区域可能被物体占据的概率,i=1,…,N-1,N为大于1的正整数;
目标位姿匹配模块203,用于根据上述目标点云信息,在上述金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿;
雷达位姿校正模块204,用于对上述目标位姿进行校正,得到上述雷达当前的位姿信息;
定位信息确定模块205,用于根据上述雷达当前的位姿信息,确定上述机器人的定位信息。
在一种可能的实施方式中,上述点云信息获取模块201,具体用于:获取上述机器人的雷达采集的多帧点云信息,基于上述机器人的里程计数据,将上述多帧点云信息合成一帧数据,得到目标点云信息。
在一种可能的实施方式中,上述点云信息获取模块201,具体用于:获取上述机器人的雷达在多个位置采集的多帧点云信息,获取上述机器人在上述多帧点云信息对应的各位置之间行驶对应的里程计信息,得到第一里程计信息;根据上述第一里程计信息,将上述多帧点云信息转换到上述雷达当前位姿的坐标系下,得到目标点云信息。
在一种可能的实施方式中,上述装置还包括:金字塔图生成模块,用于:获取上述雷达在多个位姿下采集的点云信息,得到多帧样本点云信息;生成所述多帧样本点云信息对应的占用概率栅格地图,其中,上述占用概率栅格地图包括多个栅格区域,各上述栅格区域对应的概率表示该栅格区域被物体占据的概率;根据上述占用概率栅格地图中栅格区域的数量、及预设层级间单位区域数量比例,计算金字塔图层数;根据上述占用概率栅格地图、预设层级间单位区域数量比例及上述金字塔图层数,生成金字塔图。
在一种可能的实施方式中,上述目标位姿匹配模块203,包括:
目标层数获取子模块,用于获取预设目标层数m以及指定角度上的旋转点云信息,其中,m为正整数,且m≤N;
位姿匹配评分计算子模块,用于根据上述目标点云信息及上述指定角度上的旋转点云信息,在上述金字塔图中,按照从第一层到第m层的顺序,逐层进行位姿匹配,并将第m层中位姿匹配评分最高的单位区域对应的位姿确定为目标位姿。
在一种可能的实施方式中,上述位姿匹配评分计算子模块,用于,具体用于:根据上述目标点云信息及上述指定角度上的旋转点云信息,在上述金字塔图中,对第一层中的各单位区域逐个进行位姿匹配,得到位姿匹配评分满足预设条件的单位区域;按照从第二层到第m层的顺序,逐层在其上层位姿匹配评分满足预设条件的单位区域所对应的当前层单位区域中进行位姿匹配,并将第m层中位姿匹配评分最高的单位区域对应的位姿,作为目标位姿。
在一种可能的实施方式中,上述雷达位姿校正模块204,具体用于:根据上述目标位姿及多帧样本点云信息,计算上述目标位姿处的点云信息,作为参考点云信息,其中,上述样本点云信息为上述雷达预先在多个位置处采集的点云信息;对上述参考点云信息及上述目标点云信息中表示同一位置的点进行迭代,计算出上述参考点云信息与上述目标点云信息之间的位姿变换矩阵;根据上述位姿变换矩阵对上述目标位姿进行变换,得到校正后的雷达的位姿。
在一种可能的实施方式中,上述定位信息确定模块205,具体用于:获取上述雷达在多个位置的位姿,及获取上述机器人在各位姿对应的位置之间运动的第二里程计信息;根据上述第二里程计信息,将上述雷达在多个位置的位姿转换到上述雷达当前位姿的坐标系下,得到各参考位姿;根据上述各参考位姿及上述校正后的雷达的位姿,确定上述雷达的目标位姿;根据上述雷达的目标位姿,确定上述机器人的定位信息。
本申请实施例还提供了一种电子设备,包括:处理器及存储器;
上述存储器,用于存放计算机程序;
上述处理器用于执行上述存储器存放的计算机程序时,实现如下步骤:
根据机器人的雷达采集的点云信息,得到目标点云信息,其中,目标点云信息表示雷达的当前位姿;
获取预先生成的金字塔图,其中,金字塔图包括N个层,每层均包括多个单位区域,第i层中的一个单位区域对应第i+1层中的多个单位区域,且第i层中单位区域的概率为其对应的第i+1层中的单位区域的概率中的最大值,金字塔图的第N层中的单位区域对应定位场景的占用概率栅格地图的栅格区域,金字塔图的第N层中的单位区域的概率为该单位区域对应的栅格区域可能被物体占据的概率,i=1,…,N-1,N为大于1的正整数;
根据目标点云信息,在金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿;以及
对目标位姿进行校正,得到雷达当前的位姿信息,并根据雷达当前的位姿信息,确定机器人的定位信息。
由于上述电子设备解决问题的原理与上述定位方法相似,因此上述电子设备的实施可以参见上述方法实施例,重复之处不再赘述。
在一些实施例中,参见图11,本申请实施例的电子设备还包括通信接口902和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信。
在一些实施例中,上述处理器用于执行上述存储器存放的计算机程序时,还能够实现上述任一定位方法。具体的,该电子设备可以为搭载有雷达及里程计的机器人。
上述电子设备提到的通信总线可以是PCI(Peripheral Component Interconnect,外设部件 互连标准)总线或EISA(Extended Industry Standard Architecture,扩展工业标准结构)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括RAM(Random Access Memory,随机存取存储器),也可以包括NVM(Non-Volatile Memory,非易失性存储器),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processing,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例还提供了一种计算机可读存储介质,上述计算机可读存储介质内存储有计算机程序,上述计算机程序被处理器执行时实现如下步骤:
根据机器人的雷达采集的点云信息,得到目标点云信息,其中,目标点云信息表示雷达的当前位姿;
获取预先生成的金字塔图,其中,金字塔图包括N个层,每层均包括多个单位区域,第i层中的一个单位区域对应第i+1层中的多个单位区域,且第i层中单位区域的概率为其对应的第i+1层中的单位区域的概率中的最大值,金字塔图的第N层中的单位区域对应定位场景的占用概率栅格地图的栅格区域,金字塔图的第N层中的单位区域的概率为该单位区域对应的栅格区域可能被物体占据的概率,i=1,…,N-1,N为大于1的正整数;
根据目标点云信息,在金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿;
对目标位姿进行校正,得到雷达当前的位姿信息,并根据雷达当前的位姿信息,确定机器人的定位信息。
由于上述计算机可读存储介质解决问题的原理与上述定位方法相似,因此上述计算机可读存储介质的实施可以参见上述方法实施例,重复之处不再赘述。
需要说明的是,在本文中,各个可选方案中的技术特征只要不矛盾均可组合来形成方案,这些方案均在本申请公开的范围内。诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素, 而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备及存储介质的实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

Claims (10)

  1. 一种定位方法,其特征在于,所述方法包括:
    根据机器人的雷达采集的点云信息,得到目标点云信息,其中,所述目标点云信息表示所述雷达的当前位姿;
    获取预先生成的金字塔图,其中,所述金字塔图包括N个层,每层均包括多个单位区域,第i层中的一个单位区域对应第i+1层中的多个单位区域,且第i层中单位区域的概率为其对应的第i+1层中的单位区域的概率中的最大值,所述金字塔图的第N层中的单位区域对应定位场景的占用概率栅格地图的栅格区域,所述金字塔图的第N层中的单位区域的概率为该单位区域对应的栅格区域可能被物体占据的概率,i=1,…,N-1,N为大于1的正整数;
    根据所述目标点云信息,在所述金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿;
    对所述目标位姿进行校正,得到所述雷达当前的位姿信息,并根据所述雷达当前的位姿信息,确定所述机器人的定位信息。
  2. 根据权利要求1所述的方法,其特征在于,所述根据机器人的雷达采集的点云信息,得到目标点云信息,包括:
    获取所述机器人的雷达采集的多帧点云信息,基于所述机器人的里程计数据,将所述多帧点云信息合成一帧数据,得到目标点云信息。
  3. 根据权利要求1或2所述的方法,其特征在于,根据如下方式生成金字塔图:
    获取所述雷达在多个位姿下采集的点云信息,得到多帧样本点云信息;
    生成所述多帧样本点云信息对应的占用概率栅格地图,其中,所述占用概率栅格地图包括多个栅格区域,各所述栅格区域对应的概率表示该栅格区域被物体占据的概率;
    根据所述占用概率栅格地图中栅格区域的数量、及预设层级间单位区域数量比例,计算金字塔图层数;
    根据所述占用概率栅格地图、预设层级间单位区域数量比例及所述金字塔图层数,生成金字塔图。
  4. 根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述目标点云信息,在所述金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿,包括:
    获取预设目标层数m以及指定角度上的旋转点云信息,其中,m为正整数,且m≤N;
    根据所述目标点云信息及所述指定角度上的旋转点云信息,在所述金字塔图中,按照从第一层到第m层的顺序,逐层进行位姿匹配,将第m层中位姿匹配评分最高的单位区域对应的位姿确定为目标位姿。
  5. 根据权利要求4所述的方法,其特征在于,所述根据所述目标点云信息及所述指定角度上的旋转点云信息,在所述金字塔图中,按照从第一层到第m层的顺序,逐层进行位姿匹配,并将第m层中位姿匹配评分最高的单位区域对应的位姿确定为目标位姿,包括:
    根据所述目标点云信息及所述指定角度上的旋转点云信息,在所述金字塔图中,对第一层中的各单位区域逐个进行位姿匹配,得到位姿匹配评分满足预设条件的单位区域;
    按照从第二层到第m层的顺序,逐层在其上层位姿匹配评分满足预设条件的单位区域所对应的当前层单位区域中进行位姿匹配,并将第m层中位姿匹配评分最高的单位区域对应的位姿确定为目标位姿。
  6. 根据权利要求1-5任一项所述的方法,其特征在于,所述对所述目标位姿进行校正,得到所述雷达的位姿,包括:
    根据所述目标位姿及多帧样本点云信息,计算所述目标位姿处的点云信息,作为参考点云信息,其中,所述样本点云信息为所述雷达预先在多个位置处采集的点云信息;
    对所述参考点云信息及所述目标点云信息中表示同一位置的点进行迭代,计算出所述参考点云信息与所述目标点云信息之间的位姿变换矩阵;
    根据所述位姿变换矩阵对所述目标位姿进行变换,得到校正后的雷达的位姿。
  7. 根据权利要求6所述的方法,其特征在于,根据所述雷达当前的位姿信息,确定所述机器人的定位信息,包括:
    获取所述雷达在多个位置的位姿,及获取所述机器人在各位姿对应的位置之间运动的第二里程计信息;
    根据所述第二里程计信息,将所述雷达在多个位置的位姿转换到所述雷达当前位姿的坐标系下,得到各参考位姿;
    根据所述各参考位姿及所述校正后的雷达的位姿,确定所述雷达的目标位姿;
    根据所述雷达的目标位姿,确定所述机器人的定位信息。
  8. 一种定位装置,其特征在于,所述装置包括:
    点云信息获取模块,用于根据机器人的雷达采集的点云信息,得到目标点云信息,其中,所述目标点云信息表示所述雷达的当前位姿;
    金字塔图获取模块,用于获取预先生成的金字塔图,其中,所述金字塔图包括N个层,每层均包括多个单位区域,第i层中的一个单位区域对应第i+1层中的多个单位区域,且第i层中单位区域的概率为其对应的第i+1层中的单位区域的概率中的最大值,所述金字塔图的第N层中的单位区域对应定位场景的占用概率栅格地图的栅格区域,所述金字塔图的第N层中的单位区域的概率为该单位区域对应的栅格区域可能被物体占据的概率,i=1,…,N-1,N为大于1的正整数;
    目标位姿匹配模块,用于根据所述目标点云信息,在所述金字塔图中,逐层进行位姿匹配,并将目标层中位姿匹配评分满足预设条件的单位区域对应的位姿,确定为目标位姿;
    雷达位姿校正模块,用于对所述目标位姿进行校正,得到所述雷达当前的位姿信息;
    定位信息确定模块,用于根据所述雷达当前的位姿信息,确定所述机器人的定位信息。
  9. 一种电子设备,其特征在于,包括处理器及存储器;
    所述存储器,用于存放计算机程序;
    所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求1-7任一所述的定位方法。
  10. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一所述的定位方法。
PCT/CN2021/090659 2020-04-30 2021-04-28 定位方法、装置、电子设备及存储介质 WO2021219023A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010362075.XA CN113589306B (zh) 2020-04-30 2020-04-30 定位方法、装置、电子设备及存储介质
CN202010362075.X 2020-04-30

Publications (1)

Publication Number Publication Date
WO2021219023A1 true WO2021219023A1 (zh) 2021-11-04

Family

ID=78237088

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/090659 WO2021219023A1 (zh) 2020-04-30 2021-04-28 定位方法、装置、电子设备及存储介质

Country Status (2)

Country Link
CN (1) CN113589306B (zh)
WO (1) WO2021219023A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114353807A (zh) * 2022-03-21 2022-04-15 沈阳吕尚科技有限公司 一种机器人的定位方法及定位装置
CN115267812A (zh) * 2022-07-28 2022-11-01 广州高新兴机器人有限公司 一种基于高亮区域的定位方法、装置、介质及机器人
CN115290098A (zh) * 2022-09-30 2022-11-04 成都朴为科技有限公司 一种基于变步长的机器人定位方法和系统
CN116148879A (zh) * 2021-11-22 2023-05-23 珠海一微半导体股份有限公司 一种机器人提升障碍物标注精度的方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140350839A1 (en) * 2013-05-23 2014-11-27 Irobot Corporation Simultaneous Localization And Mapping For A Mobile Robot
CN106092104A (zh) * 2016-08-26 2016-11-09 深圳微服机器人科技有限公司 一种室内机器人的重定位方法及装置
CN107909612A (zh) * 2017-12-01 2018-04-13 驭势科技(北京)有限公司 一种基于3d点云的视觉即时定位与建图的方法与系统
CN108917759A (zh) * 2018-04-19 2018-11-30 电子科技大学 基于多层次地图匹配的移动机器人位姿纠正算法
CN110307838A (zh) * 2019-08-26 2019-10-08 深圳市优必选科技股份有限公司 机器人重定位方法、装置、计算机可读存储介质及机器人
CN110530368A (zh) * 2019-08-22 2019-12-03 浙江大华技术股份有限公司 一种机器人定位方法及设备
CN110738121A (zh) * 2019-09-17 2020-01-31 北京科技大学 一种前方车辆检测方法及检测系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110276834B (zh) * 2019-06-25 2023-04-11 达闼科技(北京)有限公司 一种激光点云地图的构建方法、终端和可读存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140350839A1 (en) * 2013-05-23 2014-11-27 Irobot Corporation Simultaneous Localization And Mapping For A Mobile Robot
CN106092104A (zh) * 2016-08-26 2016-11-09 深圳微服机器人科技有限公司 一种室内机器人的重定位方法及装置
CN107909612A (zh) * 2017-12-01 2018-04-13 驭势科技(北京)有限公司 一种基于3d点云的视觉即时定位与建图的方法与系统
CN108917759A (zh) * 2018-04-19 2018-11-30 电子科技大学 基于多层次地图匹配的移动机器人位姿纠正算法
CN110530368A (zh) * 2019-08-22 2019-12-03 浙江大华技术股份有限公司 一种机器人定位方法及设备
CN110307838A (zh) * 2019-08-26 2019-10-08 深圳市优必选科技股份有限公司 机器人重定位方法、装置、计算机可读存储介质及机器人
CN110738121A (zh) * 2019-09-17 2020-01-31 北京科技大学 一种前方车辆检测方法及检测系统

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116148879A (zh) * 2021-11-22 2023-05-23 珠海一微半导体股份有限公司 一种机器人提升障碍物标注精度的方法
CN116148879B (zh) * 2021-11-22 2024-05-03 珠海一微半导体股份有限公司 一种机器人提升障碍物标注精度的方法
CN114353807A (zh) * 2022-03-21 2022-04-15 沈阳吕尚科技有限公司 一种机器人的定位方法及定位装置
CN114353807B (zh) * 2022-03-21 2022-08-12 沈阳吕尚科技有限公司 一种机器人的定位方法及定位装置
CN115267812A (zh) * 2022-07-28 2022-11-01 广州高新兴机器人有限公司 一种基于高亮区域的定位方法、装置、介质及机器人
CN115290098A (zh) * 2022-09-30 2022-11-04 成都朴为科技有限公司 一种基于变步长的机器人定位方法和系统
CN115290098B (zh) * 2022-09-30 2022-12-23 成都朴为科技有限公司 一种基于变步长的机器人定位方法和系统

Also Published As

Publication number Publication date
CN113589306B (zh) 2023-04-11
CN113589306A (zh) 2021-11-02

Similar Documents

Publication Publication Date Title
WO2021219023A1 (zh) 定位方法、装置、电子设备及存储介质
KR102210715B1 (ko) 도로 중의 차도선을 확정하기 위한 방법, 장치 및 기기
KR102126724B1 (ko) 포인트 클라우드 데이터를 복구하기 위한 방법 및 장치
CN108868268B (zh) 基于点到面距离和互相关熵配准的无人车位姿估计方法
WO2018142900A1 (ja) 情報処理装置、データ管理装置、データ管理システム、方法、及びプログラム
CN110386142A (zh) 用于自动驾驶车辆的俯仰角校准方法
CN110189366B (zh) 一种激光粗配准方法、装置、移动终端及存储介质
WO2021052283A1 (zh) 处理三维点云数据的方法和计算设备
CN110132284B (zh) 一种基于深度信息的全局定位方法
CN112347550A (zh) 耦合式室内三维语义建图及建模方法
US11176425B2 (en) Joint detection and description systems and methods
EP3845927B1 (en) Merging multiple lidar point cloud data using an iterative closest point (icp) algorithm with weighting factor
CN102842134A (zh) 基于sar图像的快速景象匹配方法
WO2023045224A1 (zh) 地图生成
US11704825B2 (en) Method for acquiring distance from moving body to at least one object located in any direction of moving body by utilizing camera-view depth map and image processing device using the same
CN113344180A (zh) 神经网络训练与图像处理方法、装置、设备和存储介质
Dimitrievski et al. Robust matching of occupancy maps for odometry in autonomous vehicles
US20230350418A1 (en) Position determination by means of neural networks
CN112362059B (zh) 移动载体的定位方法、装置、计算机设备和介质
CN112148817B (zh) 一种基于全景图的slam优化方法、装置和系统
Sohn et al. Sequential modelling of building rooftops by integrating airborne LiDAR data and optical imagery: preliminary results
CN115993616A (zh) 一种基于异源影像匹配的无人机快速地理定位方法及装置
CN109784189A (zh) 基于深度学习的视频卫星遥感图像景相匹配方法及其装置
CN115164900A (zh) 一种基于全向相机的城市环境下视觉辅助导航方法及系统
CN114943766A (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: 21795803

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 07/03/2023)

122 Ep: pct application non-entry in european phase

Ref document number: 21795803

Country of ref document: EP

Kind code of ref document: A1