CN117053781A - Grid map generation method, grid map-based positioning method and device - Google Patents
Grid map generation method, grid map-based positioning method and device Download PDFInfo
- Publication number
- CN117053781A CN117053781A CN202311021027.4A CN202311021027A CN117053781A CN 117053781 A CN117053781 A CN 117053781A CN 202311021027 A CN202311021027 A CN 202311021027A CN 117053781 A CN117053781 A CN 117053781A
- Authority
- CN
- China
- Prior art keywords
- grid
- map
- target
- point
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 230000008569 process Effects 0.000 claims abstract description 15
- 238000012545 processing Methods 0.000 claims description 45
- 238000004590 computer program Methods 0.000 claims description 21
- 238000005457 optimization Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 abstract description 27
- 230000000875 corresponding effect Effects 0.000 description 181
- 238000010586 diagram Methods 0.000 description 11
- 230000002596 correlated effect Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 6
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000005286 illumination Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013523 data management Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012015 optical character recognition Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3807—Creation or updating of map data characterised by the type of data
- G01C21/3811—Point data, e.g. Point of Interest [POI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Navigation (AREA)
Abstract
The embodiment of the application provides a grid map generation method, a grid map-based positioning method and a grid map-based positioning device, and relates to the fields of automatic driving technology, vehicle-road coordination, cloud technology and the like. The method comprises the following steps: for each first target point in the first point cloud, performing a map update process on at least one grid map established in advance based on the point information of the first target point, the map update process including, for each grid map: determining a first target data sequence corresponding to the first point position information from first map data of the grid map based on the first point position information, one first data sequence in the first map data indicating a first grid characteristic of one grid; updating the first target data sequence based on the point information if the first target data sequence is successfully determined; in the case that the determination of the first target data sequence fails, a new first data sequence is generated in the first map data based on the point information, and the applicability of the grid map can be improved.
Description
Technical Field
The application relates to the technical field of automatic driving, and also relates to the fields of vehicle-road coordination, cloud technology and the like. More particularly, the present application relates to a method for generating a grid map, and a positioning method and apparatus based on the grid map.
Background
With the rapid development of autopilot technology, it is also becoming increasingly important how to improve the applicability of autopilot. In automatic driving, it is generally necessary to perform the operation based on a grid map. In the related art, the grid map needs to be stored in the form of a point cloud for preservation.
However, storing the grid map in the form of a point cloud only allows a grid map of a specific grid size, for example, a grid map of a grid size of 0.1 meter (m), a grid map of a grid size of 0.5m, or a grid map of a grid size of 1m, which results in a very limited applicability of the grid map and thus a very limited applicability of automatic driving.
Disclosure of Invention
The embodiment of the application provides a grid map generation method, a grid map-based positioning method and a grid map-based positioning device, which are used for solving the technical problem that the applicability of a grid map is very limited.
In one aspect, an embodiment of the present application provides a method for generating a grid map, including:
Acquiring a first point cloud scanned by a first movable device;
for each first target point in the first point cloud, carrying out map updating processing on at least one grid map established in advance based on the point information of the first target point to obtain updated grid maps, wherein the point information comprises first point position information, and each grid map corresponds to one grid size;
wherein, for each grid map, the map update process includes:
determining a first target data sequence corresponding to the first point position information from first map data of the grid map based on the first point position information, one first data sequence in the first map data indicating a first grid characteristic of one grid;
updating the first target data sequence based on the point information if the first target data sequence is successfully determined;
in case the first target data sequence determination fails, a new first data sequence is generated in the first map data based on the point information.
In one possible implementation, the first grid features include a position average of all grid points in the grid, distribution information of all grid points, and a grid geometry feature of the grid, and each first data sequence includes a first data segment indicating the position average of all grid points, a second data segment indicating the distribution information of all grid points, and a third data segment indicating the grid geometry feature;
The first map data further includes first index information indicating a first grid feature, a data start position, and a data length corresponding to each of the first data segment, the second data segment, and the third data segment;
updating the first target data sequence based on the point information, comprising:
determining a new position mean and new distribution information based on the first point position information, updating the first data segment based on the first index information and the new position mean, and updating the second data segment based on the first index information and the new distribution information;
a new grid geometry is determined based on the new distribution information and the third data segment is updated based on the first index information and the new grid geometry.
In one possible implementation, each grid map includes at least two tile maps, the first map data corresponds to tile map data corresponding to each of the at least two tile maps, and before determining the first target data sequence corresponding to the first point position information from the first map data of the grid map based on the first point position information, the method further includes:
determining a target tile map to which the first target point belongs from at least two tile maps based on the first point position information;
Determining a first target data sequence corresponding to the first point position information from first map data of the grid map based on the first point position information, comprising:
acquiring target tile map data corresponding to a target tile map from first map data of a grid map;
determining a first target data sequence corresponding to the first point location information from the target tile map data based on the first point location information;
generating a new first data sequence in the first map data based on the point information, comprising:
a new first data sequence is generated in the target tile map data based on the point information.
In one possible implementation, each tile map corresponds to a tile map location, and the determining, based on the first point location information, a target tile map to which the first target point belongs from at least two tile maps includes:
determining the position of a tile map to which first point position information of a first target point belongs;
and taking the tile map corresponding to the position of the tile map as a target tile map of the first target point.
In one possible implementation, the first point position information includes a first coordinate along a first direction and a second coordinate along a second direction, a first tile size of each tile map along the first direction is the same, and a second tile size of each tile map along the second direction is the same, the tile map position includes a first tile reference coordinate corresponding to the first direction and a second tile reference coordinate corresponding to the second direction, and the first direction is perpendicular to the second direction;
Determining a tile map position to which first point position information of a first target point belongs, including:
determining a first reference coordinate based on the first coordinate and the first tile size, and determining a second reference coordinate based on the second coordinate and the second tile size;
determining a first tile reference coordinate matched with the first reference coordinate, and determining a second tile reference coordinate matched with the second reference coordinate;
taking a tile map corresponding to the position of the tile map as a target tile map of the first target point, wherein the target tile map comprises:
and taking the same tile map corresponding to the matched first tile reference coordinate and the matched second tile reference coordinate as a target tile map to which the first target point belongs.
In one possible implementation, the first point location information includes a first coordinate along a first direction, a second coordinate along a second direction, and a third coordinate along a third direction, any two of the first direction, the second direction, and the third direction being perpendicular to each other, the first target data sequence being determined by:
determining a first target hash value based on the first coordinate and a grid size corresponding to the grid map, determining a second target hash value based on the second coordinate and the grid size, and determining a third target hash value based on the third coordinate and the grid size;
Obtaining a hash map, wherein the hash map indicates the corresponding relation between a hash value group and a first data sequence identifier, and one group of hash value groups corresponds to one grid;
if one of the hash value groups of the hash map has a first target hash value, a second target hash value and a third target hash value, a first data sequence corresponding to a first data sequence identifier corresponding to the one of the hash value groups is used as a first target data sequence;
if any hash value group of the hash map does not have the first target hash value, the second target hash value and the third target hash value, the first target data sequence fails to be determined;
if any hash value group of the hash map does not have the first target hash value, the second target hash value and the third target hash value, the method further comprises:
and updating the processing hash map based on the first target hash value, the second target hash value, the third target hash value and the sequence identifier corresponding to the new first data sequence.
On the other hand, the embodiment of the application also provides a positioning method based on the grid map, which comprises the following steps:
acquiring first positioning information of a second movable device and second point clouds scanned by the second movable device, wherein the first positioning information comprises first device position information and first gesture information;
Determining second point position information of each second target point in the second point cloud based on the first device position information and the first gesture information;
acquiring second map data of a first grid map generated in advance, wherein the second map data comprises a plurality of second data sequences, one second data sequence indicates a second grid characteristic of one grid, and the second grid characteristic comprises a position average value of all grid points in the grid and grid geometric characteristics of the grid;
determining a second target data sequence corresponding to each second target point from second map data corresponding to the first grid map based on the position mean value indicated by each second data sequence corresponding to the first grid map and second point position information of each second target point;
and carrying out positioning update processing on the first positioning information based on the second point position information of each second target point and the grid geometric characteristics indicated by the corresponding second target data sequence to obtain second positioning information, wherein the second positioning information comprises second equipment position information and second gesture information.
In one possible implementation, the method further includes:
determining third point position information of each second target point in the second point cloud based on the second device position information and the second gesture information;
Acquiring second map data of a pre-generated second grid map, wherein the grid size corresponding to the second grid map is smaller than that corresponding to the first grid map;
determining a third target data sequence corresponding to each second target point from second map data corresponding to the second grid map based on the position mean value indicated by each second data sequence corresponding to the second grid map and third point position information of each second target point;
and carrying out positioning update processing on the second positioning information based on the third point position information of each second target point and the grid geometric characteristics indicated by the corresponding third target data sequence to obtain third positioning information, wherein the third positioning information comprises third equipment position information and third posture information.
In one possible implementation manner, applied to an electronic device, the acquiring the second map data of the second grid map, which is generated in advance, includes:
determining computing power information of the electronic equipment, wherein the computing power information indicates data processing capacity of the electronic equipment;
determining a reference grid size based on the grid size and the computing power capability information corresponding to the first grid map, wherein the reference grid size is inversely related to the data processing capability and the reference grid size is positively related to the grid size corresponding to the first grid map;
Determining a size difference between a target grid size and a grid size corresponding to each of a plurality of grid maps generated in advance;
and taking the grid size with the smallest corresponding size difference as a target grid size based on the size difference corresponding to each grid map, and taking the grid map corresponding to the target grid size as a second grid map to acquire second map data of the second grid map.
In one possible implementation, each second data sequence comprises a first data segment indicating a position mean of all grid points and a third data segment indicating a grid geometry;
the second map data comprises second index information, and the second index information indicates a second grid characteristic, a data starting position and a data length corresponding to each data segment in the first data segment and the third data segment;
the position mean indicated by the second data sequence is determined based on the first data segment searched for in the second data sequence based on the second index information;
the grid geometry indicated by the second data sequence is determined based on the third data segment being looked up from the second data sequence based on the second index information.
In one possible implementation, the location update process includes:
for each second target point, determining a spatial distance between the second target point and each grid geometric feature based on the point location information of the second target point and the grid geometric feature indicated by the corresponding second data sequence;
and taking the space distance corresponding to each second target point as a residual error of the least square method, and performing iterative optimization based on the residual error corresponding to each second target point to obtain updated positioning information.
On the other hand, the embodiment of the application also provides a generating device of the grid map, which comprises the following steps:
the first acquisition module is used for acquiring a first point cloud scanned by the first movable equipment;
the grid map generation module is used for carrying out map updating processing on at least one pre-established grid map based on point information of the first target points for each first target point in the first point cloud to obtain updated grid maps, wherein the point information comprises first point position information, and each grid map corresponds to one grid size;
wherein, for each grid map, the grid map is used for carrying out map updating processing:
determining a first target data sequence corresponding to the first point position information from first map data of the grid map based on the first point position information, one first data sequence in the first map data indicating a first grid characteristic of one grid;
Updating the first target data sequence based on the point information if the first target data sequence is successfully determined;
in case the first target data sequence determination fails, a new first data sequence is generated in the first map data based on the point information.
On the other hand, the embodiment of the application also provides a positioning device based on the grid map, which comprises the following steps:
the second acquisition module is used for acquiring first positioning information of the second movable equipment and second point clouds scanned by the second movable equipment, and the first positioning information comprises first equipment position information and first gesture information;
a point position information determining module for determining second point position information of each second target point in the second point cloud based on the first device position information and the first posture information;
a third acquisition module for acquiring second map data of the first grid map generated in advance, the second map data including a plurality of second data sequences, one second data sequence indicating a position average of all grid points in one grid and a grid geometry of one grid;
the data sequence determining module is used for determining a second target data sequence corresponding to each second target point from second map data corresponding to the first grid map based on the position mean value indicated by each second data sequence corresponding to the first grid map and second point position information of each second target point;
And the positioning module is used for carrying out positioning update processing on the first positioning information based on the second point position information of each second target point and the grid geometric characteristics indicated by the corresponding second target data sequence to obtain second positioning information, wherein the second positioning information comprises second equipment position information and second posture information.
In another aspect, an embodiment of the present application further provides an electronic device, including a memory, a processor, and a computer program stored on the memory, where the processor executes the computer program to implement the steps of the method of any embodiment of the present application.
In another aspect, embodiments of the present application also provide a computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the method of any of the embodiments of the present application.
In another aspect, embodiments of the present application also provide a computer program product comprising a computer program which, when executed by a processor, implements the steps of the method of any of the embodiments of the present application.
According to the technical scheme, a first point cloud scanned by first movable equipment is obtained; for each first target point in the first point cloud, performing map updating processing on at least one pre-established grid map based on the point information of the first target point to obtain updated grid maps, wherein for each grid map, the map updating processing comprises: determining a first target data sequence corresponding to the first point position information from first map data of the grid map based on the first point position information, one first data sequence in the first map data indicating a first grid characteristic of one grid; updating the first target data sequence based on the point information if the first target data sequence is successfully determined; in the case that the determination of the first target data sequence fails, a new first data sequence is generated in the first map data based on the point information, and since the first map data of the grid map is stored in the form of the first data sequence, the grid map of one or more grid sizes can be stored as needed, and thus the applicability of the grid map can be improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings that are required to be used in the description of the embodiments of the present application will be briefly described below.
Fig. 1 is a schematic view of an application scenario of a grid map generating method and a grid map-based positioning method according to an embodiment of the present application;
fig. 2 is a flow chart of a method for generating a grid map according to an embodiment of the present application;
fig. 3 is a schematic diagram of a data structure of first map data according to an embodiment of the present application;
fig. 4 is a schematic diagram of a data structure of another first map data according to an embodiment of the present application;
FIG. 5 is a detailed flowchart of a map update process according to an embodiment of the present application;
fig. 6 is a schematic diagram of a data structure of another first map data according to an embodiment of the present application;
fig. 7 is a flow chart of a positioning method based on a grid map according to an embodiment of the present application;
fig. 8 is a schematic structural diagram of a grid map generating device according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a positioning device based on a grid map according to an embodiment of the present application;
fig. 10 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
Embodiments of the present application are described below with reference to the drawings in the present application. It should be understood that the embodiments described below with reference to the drawings are exemplary descriptions for explaining the technical solutions of the embodiments of the present application, and the technical solutions of the embodiments of the present application are not limited.
As used herein, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless expressly stated otherwise, as understood by those skilled in the art. It will be further understood that the terms "comprises" and "comprising," when used in this specification, specify the presence of stated features, information, data, steps, operations, elements, and/or components, but do not preclude the presence or addition of other features, information, data, steps, operations, elements, components, and/or groups thereof, all of which may be included in the present specification. It will be understood that when an element is referred to as being "connected" or "coupled" to another element, it can be directly connected or coupled to the other element or intervening elements may be present. Further, "connected" or "coupled" as used herein may include wirelessly connected or wirelessly coupled. The term "and/or" as used herein indicates at least one of the items defined by the term, e.g. "a and/or B" indicates implementation as "a", or as "a and B".
For the purpose of making the objects, technical solutions and advantages of the present application more apparent, the embodiments of the present application will be described in further detail with reference to the accompanying drawings.
Referring to fig. 1, fig. 1 is a schematic view of an application scenario of a grid map generating method and a grid map-based positioning method according to an embodiment of the present application.
The application scenario as shown in fig. 1 may be a traffic scenario. In the application scenario shown in fig. 1, each vehicle may be provided with a laser scanning device, for example a laser radar, by means of which a nearby point cloud may be scanned. Specifically, the grid map may be generated based on the scanned point cloud by using the method for generating the grid map according to the embodiment of the present application.
Alternatively, the grid map may be established by a vehicle. The grid map generated by each vehicle can be used as data used when the vehicle is positioned, or the grid map generated by each vehicle can be reported to a server, the server can integrate the grid maps reported by different vehicles, and when any vehicle is positioned, the grid map can be requested from the grid map, and then the requested grid map is utilized for positioning. Alternatively, vehicles may communicate with each other to transmit the generated grid map to each other, and each vehicle may integrate the grid maps of other vehicles.
If the grid map is created by the vehicle, the grid map may be created at the user terminal on the vehicle. And similarly, when the vehicle is positioned, the processor configured by the vehicle is used for positioning, or a mobile terminal on the vehicle is called for positioning. Alternatively, the mobile terminal may include, but is not limited to, one or more of a notebook computer, a smart phone, a tablet computer, an internet of things device, or a portable wearable device. The internet of things device may be one or more of an intelligent sound box, an intelligent vehicle-mounted unit, and the like. The portable wearable device may be one or more of a smart watch, a smart bracelet, or a headset device, etc.
Alternatively, the grid map may be established by a server. Specifically, after each vehicle scans the point cloud, the point cloud data is reported to the server, and the server can establish the grid map through the method of the embodiment of the application. The server may be a separate physical server or may be a service node in a blockchain system, where a Peer-To-Peer (Peer To Peer) network is formed between service nodes, and the Peer-To-Peer protocol is an application layer protocol that runs on top of a transmission control protocol (TCP, transmission Control Protocol) protocol.
The server may be a server cluster formed by a plurality of physical servers, and may be a cloud server providing cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (Content Delivery Network, CDN), and basic cloud computing services such as big data and artificial intelligence platforms.
Optionally, the technical solution of the embodiment of the present application may relate to the field of autopilot. For example, the scheme of the embodiment of the application is adopted to generate the grid map and/or position based on the grid map in the automatic driving process. Autopilot is a comprehensive technology integrating a plurality of high and new technologies, and environmental information acquisition and intelligent decision control as key links are based on a series of innovation and breakthrough of the high and new technologies such as sensor technology, image recognition technology, electronic and computer technology and control technology. Autopilot relies on a number of technological breakthroughs and innovations. Key technologies related to autopilot systems include context awareness, logical reasoning and decision-making, motion control, processor performance, and the like. With the advancement of machine vision (e.g., 3D camera technology), pattern recognition software (e.g., optical character recognition programs), and light reaching systems (which have combined global positioning technology and spatial data), on-board computers can control the travel of vehicles by combining machine vision, sensor data, and spatial data. On the other hand, the popularization of the system has some key technical problems to be solved, including the problems of communication protocol specification among vehicles, shared lanes of unmanned vehicles, establishment of a general software development platform, information fusion among various sensors, and the applicability of a visual algorithm to the environment.
Optionally, the technical scheme of the embodiment of the application can also relate to the technical field of vehicle-road coordination. For example, by generating and/or locating based on the grid map through the scheme of the embodiment of the application, the grid map is transmitted between vehicles, so that the current position is determined based on the grid map or some driving reaction is made. The vehicular synergy system (Intelligent Vehicle Infrastructure Cooperative Systems, IVICS) is one direction of development of intelligent transportation systems (Intelligent Traffic System, ITS). The vehicle-road cooperative system adopts advanced wireless communication, new generation internet and other technologies, carries out vehicle-vehicle and vehicle-road dynamic real-time information interaction in all directions, develops vehicle active safety control and road cooperative management on the basis of full-time idle dynamic traffic information acquisition and fusion, fully realizes effective cooperation of people and vehicles and roads, ensures traffic safety, improves traffic efficiency, and forms a safe, efficient and environment-friendly road traffic system.
Optionally, the embodiment of the present application may further relate to cloud technology, for example, an aspect of the embodiment of the present application may be performed by a cloud server, where data processing involved in an implementation process of the aspect may be implemented based on cloud technology, for example, generating a grid map through cloud computing and/or positioning based on the grid map.
The Cloud technology (Cloud technology) is based on the general terms of network technology, information technology, integration technology, management platform technology, application technology and the like applied by a Cloud computing business model, can form a resource pool, is used as required, and is flexible and convenient. Cloud computing technology will become an important support. The cloud storage (cloud storage) is a new concept that extends and develops in the concept of cloud computing, and the distributed cloud storage system (hereinafter referred to as a storage system for short) refers to a storage system that provides data storage and target service access functions for the outside through functions such as cluster application, grid technology, and distributed storage file system, and a large number of storage devices (storage devices are also referred to as storage nodes) of different types in a network are combined to cooperate through application software or an application interface.
It should be noted that, in the alternative embodiment of the present application, related data such as object information is required to obtain permission or consent of the object when the embodiment of the present application is applied to a specific product or technology, and the collection, use and processing of related data are required to comply with related laws and regulations and standards of related countries and regions. That is, in the embodiment of the present application, if data related to the object is involved, the data needs to be acquired through the approval of the object, the approval of the related department, and the compliance with the related laws and regulations and standards of the country and region. In the embodiment, for example, the personal information is involved, the acquisition of all the personal information needs to obtain the personal consent, for example, the sensitive information is involved, the individual consent of the information body needs to be obtained, and the embodiment also needs to be implemented under the condition of the authorized consent of the object.
In the related art, a grid map is stored in the form of a point cloud, and only a grid map of a specific grid size can be obtained. However, in some example scenarios, it is desirable to use a grid map of a different grid size. Taking a traffic scene as an example, running of a vehicle on a road and entering of the vehicle into a parking lot require the use of grid maps of different grid sizes. Taking a living scene as an example, a movable robot performs a rough work task and performs a fine task by using grid maps of different grid sizes.
Therefore, storing a grid map in the form of a point cloud can only obtain a grid map of a specific grid size, which results in a very limited applicability of the grid map. Therefore, in order to solve at least one of the above technical problems or the places to be improved in the related art, the present application provides a method for generating a grid map, a positioning method and a positioning device based on the grid map, which can improve applicability of the grid map, and further improve applicability of automatic driving.
The technical solutions of the embodiments of the present application and technical effects produced by the technical solutions of the present application are described below by describing several exemplary embodiments. It should be noted that the following embodiments may be referred to, or combined with each other, and the description will not be repeated for the same terms, similar features, similar implementation steps, and the like in different embodiments.
First, generation of a grid map will be described.
Referring to fig. 2, fig. 2 is a flowchart illustrating a method for generating a grid map according to an embodiment of the present application. The method of the present embodiment may be performed by an electronic device, which may include, but is not limited to, one or more of a vehicle, a mobile terminal, a mobile robot, or a server. The method as shown in fig. 2 includes:
s210, acquiring a first point cloud scanned by a first movable device.
Wherein the first mobile device may refer to a device having self-movement capabilities. Alternatively, the first movable device may be a vehicle, a mobile robot, or the like, which is not limited herein. In this embodiment, the first movable device may be understood as a device required to generate the grid map. Alternatively, the first movable device may be provided with a laser scanning apparatus, by which a first point cloud of the peripheral region of the first movable device may be scanned. It will be appreciated that the size of the peripheral region may be related to the scanning capabilities of the laser scanning device. A point cloud is a data set where each point represents a set of X, Y, Z geometric coordinates and an intensity value that records the intensity of the return signal based on the reflectivity of the object surface. When these points are combined together, a point cloud is formed, i.e., a collection of data points representing a 3D shape or object in space.
S220, for each first target point in the first point cloud, carrying out map updating processing on at least one pre-established grid map based on the point information of the first target point to obtain an updated grid map.
Wherein the point information includes first point position information. In this embodiment, the first point position information of each first target point may be unique. Alternatively, the first point location information may be based on location information in a world coordinate system or a universal transverse ink card grid system (Universal Transverse Mercator Grid System, UTM) coordinate system. The UTM coordinate system is a global regional european space coordinate system, so every point on the earth is unique in the UTM coordinate system. Optionally, the point information may further include color information, illumination intensity information, and the like, which is not limited herein.
Specifically, the first point cloud may be scanned by the laser scanning device of the first movable device, and after the first point cloud is obtained by scanning, the relative positional relationship between each target point and the laser scanning device of the first movable terminal may be known, and then the relative positional relationship between the first movable device and each first target point may be determined by combining the relative positional relationship between the laser scanning devices of the first movable terminal. Then, based on the device position information of the first movable device and the relative position relationship between the first movable device and each first target point, first point position information of each first target point can be obtained.
In this embodiment, each grid map corresponds to one grid size. Alternatively, if the grid map is at least two, the grid sizes corresponding to different grid maps may be different.
In the present embodiment, the map update process includes the following steps for each grid map:
s221, determining a first target data sequence corresponding to the first point position information from the first map data of the grid map based on the first point position information.
The first map data may refer to a data format, and does not represent specific map data of a certain grid map. The first map data may include a first data sequence (float_data). A first data sequence in the first map data indicates a first grid characteristic of a grid. In this embodiment, if one first data sequence in the first map data indicates a first grid feature of one grid, determining the first target data sequence corresponding to the first point position information may also be understood as determining the grid to which the first target point belongs.
S222, updating the first target data sequence based on the point information under the condition that the first target data sequence is successfully determined.
In this embodiment, if the determination of the first target data sequence corresponding to the first target point is successful, it is indicated that the first data sequence of the grid corresponding to the first target point has been previously constructed, and then the first data sequence may be updated based on the point information, so as to update the first grid characteristic of the grid corresponding to the first target point.
S223, in the case that the first target data sequence determination fails, generating a new first data sequence in the first map data based on the point information.
In this embodiment, if the determination of the first target data sequence corresponding to the first target point is successful, it is explained that the first data sequence of the grid corresponding to the first target point is not constructed before, and then a new first data sequence needs to be generated in the first map data based on the point information, so as to store the first grid feature of the grid corresponding to the first target point.
Optionally, the new first data sequence is consistent with the sequence format of the other generated first data sequences.
It will be appreciated that by cycling through the above steps, a final grid map may be obtained. The first map data of the grid map includes a plurality of first data sequences.
It should be noted that, the area size of the grid map may be established according to the need, the number of grids in the grid map may be determined, and when the number of the first data sequences in the first map data of the grid map is consistent with the preset number of grids, or when the number of the first data sequences in the first map data of the grid map is consistent with the preset number of grids and each first data sequence is no longer updated, the first map data of the grid map may be determined to be completely constructed, that is, the grid map is completely constructed.
Referring to fig. 3, fig. 3 is a schematic diagram of a data structure of first map data according to an embodiment of the application. As shown in fig. 3, the first map data includes M columns of first data sequences, each of the M columns of first data sequences corresponds to one grid of the grid map, and the M columns of first data sequences correspond to M grids of the grid map.
According to the technical scheme, a first point cloud scanned by first movable equipment is obtained; for each first target point in the first point cloud, performing map updating processing on at least one pre-established grid map based on the point information of the first target point to obtain updated grid maps, wherein for each grid map, the map updating processing comprises: determining a first target data sequence corresponding to the first point position information from first map data of the grid map based on the first point position information, one first data sequence in the first map data indicating a first grid characteristic of one grid; updating the first target data sequence based on the point information if the first target data sequence is successfully determined; in the case that the determination of the first target data sequence fails, a new first data sequence is generated in the first map data based on the point information, and since the first map data of the grid map is stored in the form of the first data sequence, the grid map of one or more grid sizes can be stored as needed, and thus the applicability of the grid map can be improved.
In one possible implementation, the first grid features include a position mean of all grid points in the grid, distribution information of all grid points, and a grid geometry feature of the grid, and each first data sequence includes a first data segment indicating the position mean (means) of all grid points, a second data segment indicating the distribution information (covariance) of all grid points, and a third data segment indicating the grid geometry feature (feature). Optionally, if the point information further includes color information, illumination information, and the like, the grid features may further include color features and illumination features corresponding to the grid geometric features.
Correspondingly, the first map data further comprises first index information, wherein the first index information indicates a first grid characteristic, a data starting position and a data length corresponding to each of the first data segment, the second data segment and the third data segment.
Correspondingly, updating the first target data sequence based on the point information comprises:
determining a new position mean and new distribution information based on the first point position information, updating the first data segment based on the first index information and the new position mean, and updating the second data segment based on the first index information and the new distribution information;
A new grid geometry is determined based on the new distribution information and the third data segment is updated based on the first index information and the new grid geometry.
In this embodiment, the position average value of all grid points in one grid may reflect the grid characteristics such as the center, the gravity center, or the centroid of the grid. The location average may be an average of the locations of all grid points within the grid. Alternatively, taking the example that the point location information includes an X coordinate, a Y coordinate, and a Z coordinate, the location average may be an X coordinate average, a Y coordinate average, and a Z coordinate average. The distribution information of all grid points in one grid can reflect the distribution situation of all grid points in the grid. The grid geometric features may include at least one of line features or face features. The line or plane characteristics of a grid can be determined from the distribution information of all grid points of the grid. Alternatively, the distribution information may be a matrix of 3*3.
Specifically, when the first target data sequence is determined successfully, it is indicated that the first data sequence of the grid corresponding to the first target point has been previously constructed, but the grid feature corresponding to the previously constructed first data sequence is not considered, so that at this time, the new position mean value and the new distribution information based on the first position mean value need to be determined separately, then the first data segment is updated based on the first index information and the new position mean value, and the second data segment is updated based on the first index information and the new distribution information, and in addition, the new grid geometric feature needs to be determined based on the new distribution information, and the third data segment needs to be updated based on the first index information and the new grid geometric feature.
It will be appreciated that in the generation of the grid map, the first data sequence in the first map data is continuously updated in the new first point cloud continuously scanned until the grid map generation is finished.
Referring to fig. 4, fig. 4 is a schematic diagram of a data structure of another first map data according to an embodiment of the application. As shown in fig. 4, the first map data stores a first data sequence of N rows by M columns. Illustratively, means, i.e., the mean of the point cloud in the grid, is xyz, with three data; the covariance value is a 3*3 matrix with nine digits and a first data sequence stores 15 bits of data assuming 3 digits in the feature field.
means, covariances and features, each field having a name of the corresponding field and a start position of the data of the field indexed in a column data and a data length of the field indexing data.
In fig. 4, mapdata storage represents first map data, rows is the number of lines designating float_data in the first map data, cols is the number of columns designating float_data, grid_size represents the size of a grid used when dividing the grid in this grid map, and map_origin represents at which origin this map is set.
Optionally, the first map data further includes at least one of a grid map origin position (map_origin) of the grid map, a grid size, a number of grids in the grid map, a data length of each first data sequence, or the like.
Specifically, the actual area corresponding to the grid map can be determined by the grid map origin position and the number of grids in the grid map. The grid size of each grid in the grid map may be determined by the grid size.
Specifically, in the related art, the index of a single point is indexed in the form of kd-tree, after the point cloud is loaded into the memory by the algorithm, the algorithm complexity of the searching mode is O (log (N)), and in the scenario of automatic driving, the lower the algorithm complexity is expected to be better. In this embodiment, the data in the target grid can be accessed under the complexity of O (1) by indexing by means of the first index information.
According to the technical scheme, the first grid characteristics corresponding to each grid are stored in the mode of the first data sequence, and the first index information is stored in the first map data, so that the first grid characteristics can be searched from the first data sequence through the first index information, the index mode is simple and quick, map data management of automatic driving is facilitated, and time complexity of indexing the map data in the online operation process of an automatic driving algorithm is reduced.
In one possible implementation, each grid map includes at least two tile maps, the first map data corresponds to tile map data corresponding to each of the at least two tile maps, and before determining the first target data sequence corresponding to the first point position information from the first map data of the grid map based on the first point position information, the method further includes:
and determining a target tile map to which the first target point belongs from at least two tile maps based on the first point position information.
Accordingly, determining, based on the first point position information, a first target data sequence corresponding to the first point position information from first map data of the grid map, includes:
acquiring target tile map data corresponding to a target tile map from first map data of a grid map; based on the first point location information, a first target data sequence corresponding to the first point location information is determined from the target tile map data.
Accordingly, generating a new first data sequence in the first map data based on the point information, comprising:
a new first data sequence is generated in the target tile map data based on the point information.
Referring to fig. 5, fig. 5 is a detailed flowchart of a map updating process according to an embodiment of the present application. The map updating process as shown in fig. 5 includes:
S510, determining a target tile map to which the first target point belongs from at least two tile maps of the grid map based on the first point position information.
In this embodiment, optionally, at least two tile maps may be evenly divided. That is, the number of grids corresponding to each of the at least two tile maps is consistent.
S520, acquiring target tile map data corresponding to the target tile map from the first map data of the grid map.
S530, determining a first target data sequence corresponding to the first point position information from the target tile map data based on the first point position information.
S540, updating the first target data sequence based on the point information under the condition that the first target data sequence is successfully determined.
Herein, S540 may refer to the description of any one of the above embodiments, and will not be described herein.
S550, in the case that the first target data sequence determination fails, a new first data sequence is generated in the target tile map data based on the point information.
Referring to fig. 6, fig. 6 is a schematic diagram of a data structure of another first map data according to an embodiment of the application. In this embodiment, the first map data corresponds to tile map data corresponding to each of at least two tile maps.
In connection with fig. 6, it is possible to determine which tile map the first target point belongs to based on the first point position information, then acquire target tile map data of a target tile map to which the first target point belongs, and update the target tile map data based on the first point position information.
Wherein m1+m2 may=m.
Optionally, each tile map data may further include a tile map origin position of the tile map. The tile map origin position corresponding to the tile map can be determined through the tile map origin position of the tile map.
According to the technical scheme, the grid map is divided into at least two tile maps, and tile map data corresponding to each tile map in the at least two tile maps are independent, so that the tile map data corresponding to each tile map can be independently updated and stored, and the safety of map data storage can be improved. In addition, the first point position information is firstly based on the target tile map to which the first target point belongs is determined from at least two tile maps, and then the first target data sequence corresponding to the first point position information is determined from target tile map data corresponding to the target tile map based on the first point position information, so that the efficiency of determining the first target data sequence can be improved, and the efficiency of generating the grid map is further improved.
In one possible implementation, each tile map corresponds to a tile map location, and the determining, based on the first point location information, a target tile map to which the first target point belongs from at least two tile maps includes:
determining the position of a tile map to which first point position information of a first target point belongs;
and taking the tile map corresponding to the position of the tile map as a target tile map of the first target point.
In this embodiment, the map sizes between different tile maps may be the same or different.
According to the technical scheme, the tile map position corresponding to each tile map is obtained, and the tile map position to which the first point position information of the first target point belongs is determined; and taking the tile map corresponding to the position of the tile map as the target tile map of the first target point, so that the target tile map can be rapidly determined.
In one possible implementation, the first point position information includes a first coordinate along a first direction and a second coordinate along a second direction, a first tile size of each tile map along the first direction is the same, and a second tile size of each tile map along the second direction is the same, the tile map position includes a first tile reference coordinate corresponding to the first direction and a second tile reference coordinate corresponding to the second direction, and the first direction is perpendicular to the second direction;
Determining a tile map position to which first point position information of a first target point belongs, including:
determining a first reference coordinate based on the first coordinate and the first tile size, and determining a second reference coordinate based on the second coordinate and the second tile size;
determining a first tile reference coordinate matched with the first reference coordinate, and determining a second tile reference coordinate matched with the second reference coordinate;
taking a tile map corresponding to the position of the tile map as a target tile map of the first target point, wherein the target tile map comprises:
and taking the same tile map corresponding to the matched first tile reference coordinate and the matched second tile reference coordinate as a target tile map to which the first target point belongs.
In this embodiment, the first direction may be an X-axis direction, and the first coordinate is an X-coordinate. The second direction may be a Y-axis direction and the second coordinate may be a Y-coordinate. The first reference coordinate may be positively correlated with the first coordinate and negatively correlated with the first tile size. Optionally, the first reference coordinate is an integer obtained by dividing the first coordinate by the first tile size. The second reference coordinate may be positively correlated with the second coordinate and negatively correlated with the second tile size. Optionally, the second reference coordinate is an integer obtained by dividing the second coordinate by the second tile size. The first tile reference coordinate and the second tile reference coordinate may be tile map origin coordinates of the tile map, such as a first tile map origin coordinate along a first direction and a second tile map origin coordinate along a second direction, or may be obtained based on the origin coordinates and the first tile size and the second tile size, respectively, such as dividing the first tile map origin coordinate by the first tile size to obtain the first tile reference coordinate, and dividing the second tile map origin coordinate by the second tile size to obtain the second tile reference coordinate. Optionally, if one of the first tile base coordinates is the same as the first reference coordinate, the first tile base coordinate is matched to the first reference coordinate. Similarly, if one of the second tile reference coordinates is the same as the second reference coordinate, the second tile reference coordinate is matched with the second reference coordinate.
For example, assuming the coordinates of the first target point are (65535.718, 623456.327, 10.55) and the first tile size and the second tile size of the tile map are both 100m, the first reference coordinate is 655 and the second reference coordinate may be 6234. If the tile map origin coordinate of one of the tile maps is (65500,623400), then that tile map is the target tile map.
The following embodiments describe how to determine the first target data sequence on the basis of any of the above embodiments.
In one possible implementation, the first point location information includes a first coordinate along a first direction, a second coordinate along a second direction, and a third coordinate along a third direction, any two of the first direction, the second direction, and the third direction being perpendicular to each other, the first target data sequence being determined by:
determining a first target hash value based on the first coordinate and a grid size corresponding to the grid map, determining a second target hash value based on the second coordinate and the grid size, and determining a third target hash value based on the third coordinate and the grid size;
obtaining a hash map, wherein the hash map indicates the corresponding relation between a hash value group and a first data sequence identifier, and one group of hash value groups corresponds to one grid;
If one of the hash value groups of the hash map has a first target hash value, a second target hash value and a third target hash value, a first data sequence corresponding to a first data sequence identifier corresponding to the one of the hash value groups is used as a first target data sequence;
if any hash value group of the hash map does not have the first target hash value, the second target hash value and the third target hash value, the first target data sequence fails to be determined;
if any hash value group of the hash map does not have the first target hash value, the second target hash value and the third target hash value, the method further comprises:
and updating the processing hash map based on the first target hash value, the second target hash value, the third target hash value and the sequence identifier corresponding to the new first data sequence.
The first direction may be an X-axis direction, and the first coordinate is an X-coordinate. The second direction may be a Y-axis direction and the second coordinate may be a Y-coordinate. The second direction may be a Z-axis direction, and the second coordinate may be a Z-coordinate.
Optionally, the first target hash value is positively correlated with the first coordinate and negatively correlated with the grid size. Alternatively, the first target hash value is determined based on the first coordinate and the grid size corresponding to the grid map, and may be an integer obtained by dividing the first coordinate by the grid size corresponding to the grid map. The second target hash value is positively correlated with the second coordinate and negatively correlated with the grid size. Optionally, the second target hash value is determined based on the second coordinate and the grid size corresponding to the grid map, and may be an integer obtained by dividing the second coordinate by the grid size corresponding to the grid map. The third target hash value is positively correlated with the third coordinate and negatively correlated with the grid size. Optionally, the third target hash value is determined based on the third coordinate and the grid size corresponding to the grid map, and may be an integer obtained by dividing the third coordinate by the grid size corresponding to the grid map. A hash value group may include three hash values, i.e., a first hash value, a second hash value, and a third hash value.
In this embodiment, the grid size is, for example, 0.1 x 0.1 assuming points (52.375, 64.628, 25.106), the first target hash value is 523, the second target hash value is 646, and the third target hash value is 251. Then, based on the hash map, whether a hash value group comprises a first target hash value, a second target hash value and a third target hash value is searched, and if so, the corresponding first data sequence corresponding to the hash value group is identified as a first target data sequence. If any hash value group of the hash map does not have the first target hash value, the second target hash value and the third target hash value, the grid characteristics of the grid are not recorded, so that the new first data sequence is generated, and the hash map is required to be updated based on the sequence identifications corresponding to the first target hash value, the second target hash value, the third target hash value and the new first data sequence.
Optionally, updating the hash map based on the first target hash value, the second target hash value, the third target hash value and the sequence identifier corresponding to the new first data sequence may be adding a correspondence between a new hash value set and the sequence identifier corresponding to the new first data sequence in the hash map, where the new hash value set includes the first target hash value, the second target hash value and the third target hash value.
If the first target data sequence is determined in the target tile map data, the hash map corresponds to the target tile map, and the first target data sequence is determined based on the hash map corresponding to the target tile map.
According to the technical scheme, the hash map is used as the index for determining the first target data sequence, so that whether the first target data sequence exists in the first map data can be determined quickly and simply, the generation efficiency of the grid map can be improved, and the complexity is reduced.
The following embodiments are described with respect to the use of the grid map on the basis of any of the above embodiments.
Referring to fig. 7, fig. 7 is a flowchart of a positioning method based on a grid map according to an embodiment of the application. The method of the present embodiment may be performed by an electronic device. The method as shown in fig. 7 includes:
s710, acquiring first positioning information of the second movable equipment and second point clouds scanned by the second movable equipment, wherein the first positioning information comprises first equipment position information and first gesture information.
Wherein the second mobile device may refer to a device having self-movement capabilities. Alternatively, the second movable apparatus may be a vehicle, a mobile robot, or the like, which is not limited herein. In this embodiment, the second movable device may be understood as a device that needs to be located. Optionally, the second movable device is provided with a laser scanning device, and the second point cloud of the peripheral area of the second movable device can be scanned by the laser scanning device.
It should be noted that, the first device location information is located by a GNSS (global navigation satellite system ) signal. The first pose information may be initialized pose information.
S720, determining second point position information of each second target point in the second point cloud based on the first device position information and the first gesture information.
In this embodiment, the second point position information of each second target point may be unique. Specifically, the second point cloud can be scanned by the laser scanning device of the second movable device, after the second point cloud is obtained by scanning, the relative position relationship between each target point and the laser scanning device of the second movable terminal can be known, and then the relative position relationship between the second movable device and each second target point can be determined by combining the relative position relationship between the laser scanning devices of the second movable terminal and the first gesture information. Then, based on the first device position information of the second movable device and the relative position relationship between the second movable device and each second target point, second point position information of each second target point can be obtained.
S730, acquiring second map data of the first grid map generated in advance, wherein the second map data comprises a plurality of second data sequences, one second data sequence indicates a second grid characteristic of one grid, and the second grid characteristic comprises a position average value of all grid points in the grid and grid geometric characteristics of the grid.
Wherein the first grid map may be one of the grid maps established by the above embodiments. The second map data may refer to a data format and does not represent specific map data of a certain grid map. In this embodiment, the second data sequence may have the same format as the data sequence of the first data sequence or may be different. Specifically, the distribution information can be used for updating the geometric characteristics of the grid when the grid map is generated, and after the grid map is generated, the distribution information can be unnecessary, so that the first data sequence can be included, or the data segment corresponding to the distribution information can be deleted on the basis of the first data sequence to obtain the second data sequence, and further the second map data can be obtained.
S740, determining a second target data sequence corresponding to each second target point from second map data corresponding to the first grid map based on the position mean value indicated by each second data sequence corresponding to the first grid map and the second point position information of each second target point.
And S750, carrying out positioning update processing on the first positioning information based on the second point position information of each second target point and the grid geometric characteristics indicated by the corresponding second target data sequence to obtain second positioning information, wherein the second positioning information comprises second equipment position information and second posture information.
In this embodiment, the first positioning information is subjected to positioning update processing, and the first device position information and the second posture information may be updated.
According to the technical scheme, first positioning information of a second movable device and second point clouds scanned by the second movable device are obtained, wherein the first positioning information comprises first device position information and first gesture information; determining second point position information of each second target point in the second point cloud based on the first device position information and the first gesture information; acquiring second map data of a first grid map generated in advance, wherein the second map data comprises a plurality of second data sequences, one second data sequence indicates a second grid characteristic of one grid, and the second grid characteristic comprises a position average value of all grid points in the grid and grid geometric characteristics of the grid; determining a second target data sequence corresponding to each second target point from second map data corresponding to the first grid map based on the position mean value indicated by each second data sequence corresponding to the first grid map and second point position information of each second target point; and carrying out positioning update processing on the first positioning information based on the second point position information of each second target point and the grid geometric characteristics indicated by the corresponding second target data sequence to obtain second positioning information, wherein the second map data of the second grid map are stored in the second data sequence, so that the grid map with one or more grid sizes can be acquired for positioning according to the requirement, and the applicability of the grid map can be improved.
In one possible implementation, the second target data sequence corresponding to each second target point is determined from the second map data corresponding to the first grid map based on the position average value indicated by each second data sequence corresponding to the first grid map and the second point position information of each second target point, which may be that a hash map is built based on the position average value indicated by each second data sequence corresponding to the first grid map, and then the second target data sequence corresponding to each second target point is determined from the second map data corresponding to the first grid map based on the hash map and the second point position information.
In one possible implementation manner, after obtaining the second positioning information, the method further includes:
determining third point position information of each second target point in the second point cloud based on the second device position information and the second gesture information;
acquiring second map data of a pre-generated second grid map, wherein the grid size corresponding to the second grid map is smaller than that corresponding to the first grid map;
determining a third target data sequence corresponding to each second target point from second map data corresponding to the second grid map based on the position mean value indicated by each second data sequence corresponding to the second grid map and third point position information of each second target point;
And carrying out positioning update processing on the second positioning information based on the third point position information of each second target point and the grid geometric characteristics indicated by the corresponding third target data sequence to obtain third positioning information, wherein the third positioning information comprises third equipment position information and third posture information.
In this embodiment, since the positioning information of the second movable device is updated, the third point position information of each second target point in the second point cloud can be determined based on the second device position information and the second pose information. Specifically, in combination with the relative positional relationship between the laser scanning apparatuses of the second movable terminal and the second posture information, a new relative positional relationship between the second movable device and each second target point may be determined. Then, based on the second device position information of the second movable device and the new relative position relationship between the second movable device and each second target point, new point position information of each second target point can be obtained, namely third point position information is obtained.
According to the technical scheme, after the primary positioning updating processing is performed, the secondary positioning updating processing which is more refined is performed, so that the positioning accuracy can be further improved.
In one possible implementation, the third target data sequence corresponding to each second target point is determined from the second map data corresponding to the second grid map based on the position average value indicated by each second data sequence corresponding to the second grid map and the third point position information of each second target point, which may be that a hash map is built based on the position average value indicated by each second data sequence corresponding to the second grid map, and then the third target data sequence corresponding to each second target point is determined from the second map data corresponding to the second grid map based on the hash map and the third point position information.
In one possible implementation, acquiring the second map data of the second grid map generated in advance includes:
determining computing power information of the electronic equipment, wherein the computing power information indicates data processing capacity of the electronic equipment;
determining a reference grid size based on the grid size and the computing power capability information corresponding to the first grid map, wherein the reference grid size is inversely related to the data processing capability and the reference grid size is positively related to the grid size corresponding to the first grid map;
determining a size difference between a target grid size and a grid size corresponding to each of a plurality of grid maps generated in advance;
And taking the grid size with the smallest corresponding size difference as a target grid size based on the size difference corresponding to each grid map, and taking the grid map corresponding to the target grid size as a second grid map to acquire second map data of the second grid map.
In the present embodiment, the capability information may include a CPU (central processing unit ) frequency, the number of CPU cores, and the like.
According to the technical scheme, the computing capability information of the electronic equipment is determined, and the computing capability information indicates the data processing capability of the electronic equipment; determining a reference grid size based on grid size and computing power capability information corresponding to the first grid map, and determining a size difference between a target grid size and a grid size corresponding to each of a plurality of grid maps generated in advance; based on the size difference corresponding to each grid map, taking the grid size with the smallest corresponding size difference as a target grid size, taking the grid map corresponding to the target grid size as a second grid map, so as to acquire second map data of the second grid map, and determining the second grid map by combining the data processing capability of the electronic equipment, so that the computing power of the electronic equipment can be utilized as much as possible, and the positioning efficiency and the positioning quality are both considered.
In one possible implementation, each second data sequence comprises a first data segment indicating a position mean of all grid points and a third data segment indicating a grid geometry;
the second map data comprises second index information, and the second index information indicates a second grid characteristic, a data starting position and a data length corresponding to each data segment in the first data segment and the third data segment;
the position mean indicated by the second data sequence is determined based on the first data segment searched for in the second data sequence based on the second index information;
the grid geometry indicated by the second data sequence is determined based on the third data segment being looked up from the second data sequence based on the second index information.
In this embodiment, the second index information may be the same as or different from the first index information. Specifically, if the second data sequence is obtained by deleting the second data segment from the first data sequence, the index information needs to be updated to obtain the second index information.
According to the technical scheme, the second grid characteristics corresponding to each grid are stored in the mode of the second data sequence, and the second index information is stored in the second map data, so that the second grid characteristics can be searched from the second data sequence through the second index information, the mode of indexing is simple and quick, automatic driving map data management is facilitated, positioning efficiency is reduced, and further time complexity of indexing the map data in the online operation process of an automatic driving algorithm is reduced.
In one possible implementation, the location update process includes:
for each second target point, determining a spatial distance between the second target point and each grid geometric feature based on the point location information of the second target point and the grid geometric feature indicated by the corresponding second data sequence;
and taking the space distance corresponding to each second target point as a residual error of the least square method, and performing iterative optimization based on the residual error corresponding to each second target point to obtain updated positioning information.
In this embodiment, since the residual error is obtained by fusing the initial positioning information and the residual error and then performing iterative optimization by establishing an optimization function with the optimization function as a constraint, the updated positioning information is obtained.
It should be noted that the point location information and the terminal location information mentioned in the above embodiments may be based on the same coordinate system.
Referring to fig. 8, fig. 8 is a schematic structural diagram of a grid map generating apparatus according to an embodiment of the present application. The grid map generating apparatus of the present embodiment can be applied to an electronic device. The grid map generating apparatus 80 as shown in fig. 8 may include a first acquisition module 810 and a grid map generating module 820, wherein:
A first obtaining module 810, configured to obtain a first point cloud scanned by a first mobile device; the grid map generating module 820 is configured to perform map update processing on at least one pre-established grid map for each first target point in the first point cloud based on point information of the first target point, so as to obtain updated grid maps, where the point information includes first point position information, and each grid map corresponds to one grid size; wherein, for each grid map, the grid map is used for carrying out map updating processing:
determining a first target data sequence corresponding to the first point position information from first map data of the grid map based on the first point position information, one first data sequence in the first map data indicating a first grid characteristic of one grid; updating the first target data sequence based on the point information if the first target data sequence is successfully determined; in case the first target data sequence determination fails, a new first data sequence is generated in the first map data based on the point information.
In one possible implementation, the first grid features include a position average of all grid points in the grid, distribution information of all grid points, and a grid geometry feature of the grid, and each first data sequence includes a first data segment indicating the position average of all grid points, a second data segment indicating the distribution information of all grid points, and a third data segment indicating the grid geometry feature; the first map data further includes first index information indicating a first grid feature, a data start position, and a data length corresponding to each of the first data segment, the second data segment, and the third data segment; the grid map generation module 820, when updating the first target data sequence based on the point information, may be configured to:
Determining a new position mean and new distribution information based on the first point position information, updating the first data segment based on the first index information and the new position mean, and updating the second data segment based on the first index information and the new distribution information; a new grid geometry is determined based on the new distribution information and the third data segment is updated based on the first index information and the new grid geometry.
In one possible implementation, each grid map includes at least two tile maps, the first map data corresponds to tile map data corresponding to each of the at least two tile maps, and the grid map generation module 820 is further configured to, prior to determining the first target data sequence corresponding to the first point location information from the first map data of the grid map based on the first point location information:
and determining a target tile map to which the first target point belongs from at least two tile maps based on the first point position information.
The grid map generating module 820, when determining a first target data sequence corresponding to the first point position information from the first map data of the grid map based on the first point position information, may be configured to:
Acquiring target tile map data corresponding to a target tile map from first map data of a grid map; the grid map generation module 820, when determining a first target data sequence corresponding to the first point location information from the target tile map data based on the first point location information, may be configured to:
a new first data sequence is generated in the target tile map data based on the point information.
In one possible implementation, each tile map corresponds to a tile map location, and the grid map generating module 820 may be configured to, when determining, from at least two tile maps, a target tile map to which the first target point belongs, based on the first point location information:
determining the position of a tile map to which first point position information of a first target point belongs; and taking the tile map corresponding to the position of the tile map as a target tile map of the first target point.
In one possible implementation, the first point position information includes a first coordinate along a first direction and a second coordinate along a second direction, a first tile size of each tile map along the first direction is the same, and a second tile size of each tile map along the second direction is the same, the tile map position includes a first tile reference coordinate corresponding to the first direction and a second tile reference coordinate corresponding to the second direction, and the first direction is perpendicular to the second direction;
When the grid map generating module 820 determines the tile map location to which the first point location information of the first target point belongs, it may be configured to:
determining a first reference coordinate based on the first coordinate and the first tile size, and determining a second reference coordinate based on the second coordinate and the second tile size; determining a first tile reference coordinate matched with the first reference coordinate, and determining a second tile reference coordinate matched with the second reference coordinate;
taking a tile map corresponding to the position of the tile map as a target tile map of the first target point, wherein the target tile map comprises:
and taking the same tile map corresponding to the matched first tile reference coordinate and the matched second tile reference coordinate as a target tile map to which the first target point belongs.
In one possible implementation, the first point location information includes a first coordinate along a first direction, a second coordinate along a second direction, and a third coordinate along a third direction, any two of the first direction, the second direction, and the third direction being perpendicular to each other, the grid map generation module 820 is configured to determine the first target data sequence by:
determining a first target hash value based on the first coordinate and a grid size corresponding to the grid map, determining a second target hash value based on the second coordinate and the grid size, and determining a third target hash value based on the third coordinate and the grid size; obtaining a hash map, wherein the hash map indicates the corresponding relation between a hash value group and a first data sequence identifier, and one group of hash value groups corresponds to one grid; if one of the hash value groups of the hash map has a first target hash value, a second target hash value and a third target hash value, a first data sequence corresponding to a first data sequence identifier corresponding to the one of the hash value groups is used as a first target data sequence; if any hash value group of the hash map does not have the first target hash value, the second target hash value and the third target hash value, the first target data sequence fails to be determined; if any hash value group of the hash map does not have the first target hash value, the second target hash value and the third target hash value, the grid map generating module 820 is further configured to:
And updating the processing hash map based on the first target hash value, the second target hash value, the third target hash value and the sequence identifier corresponding to the new first data sequence.
Referring to fig. 9, fig. 9 is a schematic structural diagram of a positioning device based on a grid map according to an embodiment of the present application. The device of the embodiment can be applied to electronic equipment. The grid map based positioning apparatus 90 as shown in fig. 9 may include a second acquisition module 910, a point location information determination module 920, a third acquisition module 930, a data sequence determination module 940, and a positioning module 950, wherein:
a second obtaining module 910, configured to obtain first positioning information of a second mobile device and a second point cloud scanned by the second mobile device, where the first positioning information includes first device position information and first gesture information; a point location information determining module 920, configured to determine second point location information of each second target point in the second point cloud based on the first device location information and the first pose information; a third obtaining module 930, configured to obtain second map data of the first grid map, where the second map data includes a plurality of second data sequences, and one second data sequence indicates a position average of all grid points in one grid and a grid geometric feature of one grid; a data sequence determining module 940, configured to determine a second target data sequence corresponding to each second target point from the second map data corresponding to the first raster map based on the position average indicated by each second data sequence corresponding to the first raster map and the second point position information of each second target point; the positioning module 950 is configured to perform positioning update processing on the first positioning information based on the second point position information of each second target point and the grid geometric feature indicated by the corresponding second target data sequence, to obtain second positioning information, where the second positioning information includes second device position information and second gesture information.
In one possible implementation, the point location information determining module 920 is further configured to determine third point location information of each second target point in the second point cloud based on the second device location information and the second pose information; the third obtaining module 930 is further configured to obtain second map data of a second pre-generated grid map, where a grid size corresponding to the second grid map is smaller than a grid size corresponding to the first grid map; the data sequence determining module 940 is further configured to determine a third target data sequence corresponding to each second target point from the second map data corresponding to the second grid map based on the position average indicated by each second data sequence corresponding to the second grid map and the third point position information of each second target point; the positioning module 950 is further configured to perform positioning update processing on the second positioning information based on the third point position information of each second target point and the grid geometric feature indicated by the corresponding third target data sequence, so as to obtain third positioning information, where the third positioning information includes third device position information and third gesture information.
In one possible implementation, when the third obtaining module 930 obtains the second map data of the second grid map, the second obtaining module may be configured to:
Determining computing power information of the electronic equipment, wherein the computing power information indicates data processing capacity of the electronic equipment; determining a reference grid size based on the grid size and the computing power capability information corresponding to the first grid map, wherein the reference grid size is inversely related to the data processing capability and the reference grid size is positively related to the grid size corresponding to the first grid map; determining a size difference between a target grid size and a grid size corresponding to each of a plurality of grid maps generated in advance; and taking the grid size with the smallest corresponding size difference as a target grid size based on the size difference corresponding to each grid map, and taking the grid map corresponding to the target grid size as a second grid map to acquire second map data of the second grid map.
In one possible implementation, each second data sequence comprises a first data segment indicating a position mean of all grid points and a third data segment indicating a grid geometry; the second map data comprises second index information, and the second index information indicates a second grid characteristic, a data starting position and a data length corresponding to each data segment in the first data segment and the third data segment; the position mean indicated by the second data sequence is determined based on the first data segment searched for in the second data sequence based on the second index information; the grid geometry indicated by the second data sequence is determined based on the third data segment being looked up from the second data sequence based on the second index information.
In one possible implementation, the positioning module 950 may be configured to determine, for each second target point, a spatial distance between the second target point and each grid geometric feature based on the point location information of the second target point and the grid geometric feature indicated by the corresponding second data sequence when performing the positioning update process; and taking the space distance corresponding to each second target point as a residual error of the least square method, and performing iterative optimization based on the residual error corresponding to each second target point to obtain updated positioning information.
The device of the embodiment of the present application may perform the method provided by the embodiment of the present application, and its implementation principle is similar, and actions performed by each module in the device of the embodiment of the present application correspond to steps in the method of the embodiment of the present application, and detailed functional descriptions of each module of the device may be referred to the descriptions in the corresponding methods shown in the foregoing, which are not repeated herein.
An embodiment of the present application provides an electronic device, including a memory, a processor, and a computer program stored on the memory, where the processor executes the computer program to implement the steps of the method of any embodiment.
In an alternative embodiment, an electronic device is provided, as shown in fig. 10, the electronic device 1000 shown in fig. 10 includes: a processor 1001 and a memory 1003. The processor 1001 is coupled to the memory 1003, such as via a bus 1002. Optionally, the electronic device 1000 may further include a transceiver 1004, where the transceiver 1004 may be used for data interaction between the electronic device and other electronic devices, such as transmission of data and/or reception of data, etc. It should be noted that, in practical applications, the transceiver 1004 is not limited to one, and the structure of the electronic device 1000 is not limited to the embodiment of the present application.
The processor 1001 may be a CPU (Central Processing Unit ), general purpose processor, DSP (Digital Signal Processor, data signal processor), ASIC (Application Specific Integrated Circuit ), FPGA (Field Programmable Gate Array, field programmable gate array) or other programmable logic device, transistor logic device, hardware components, or any combination thereof. Which may implement or perform the various exemplary logic blocks, modules and circuits described in connection with this disclosure. The processor 1001 may also be a complex implementing a computing function, e.g., comprising one or more microprocessors, a DSP and a microprocessor, etc.
Bus 1002 may include a path to transfer information between the various components. Bus 1002 may be a PCI (Peripheral Component Interconnect, peripheral component interconnect standard) bus, or EISA (Extended Industry Standard Architecture ) bus, among others. The bus 1002 may be divided into an address bus, a data bus, a control bus, and the like. For ease of illustration, only one thick line is shown in fig. 10, but not only one bus or one type of bus.
The Memory 1003 may be, but is not limited to, ROM (Read Only Memory) or other type of static storage device that can store static information and instructions, RAM (Random Access Memory ) or other type of dynamic storage device that can store information and instructions, EEPROM (Electrically Erasable Programmable Read Only Memory ), CD-ROM (Compact Disc Read Only Memory, compact disc Read Only Memory) or other optical disk storage, optical disk storage (including compact discs, laser discs, optical discs, digital versatile discs, blu-ray discs, etc.), magnetic disk storage media, other magnetic storage devices, or any other medium that can be used to carry or store a computer program and that can be Read by a computer.
The memory 1003 is used to store a computer program for executing an embodiment of the present application, and is controlled to be executed by the processor 1001. The processor 1001 is arranged to execute a computer program stored in the memory 1003 to implement the steps shown in the foregoing method embodiments.
Embodiments of the present application provide a computer readable storage medium having a computer program stored thereon, which when executed by a processor, implements the steps of the foregoing method embodiments and corresponding content.
The embodiment of the application also provides a computer program product, which comprises a computer program, wherein the computer program can realize the steps and corresponding contents of the embodiment of the method when being executed by a processor.
It should be understood that, although various operation steps are indicated by arrows in the flowcharts of the embodiments of the present application, the order in which these steps are implemented is not limited to the order indicated by the arrows. In some implementations of embodiments of the application, the implementation steps in the flowcharts may be performed in other orders as desired, unless explicitly stated herein. Furthermore, some or all of the steps in the flowcharts may include multiple sub-steps or multiple stages based on the actual implementation scenario. Some or all of these sub-steps or phases may be performed at the same time, or each of these sub-steps or phases may be performed at different times, respectively. In the case of different execution time, the execution sequence of the sub-steps or stages can be flexibly configured according to the requirement, which is not limited by the embodiment of the present application.
The foregoing is only an optional implementation manner of some implementation scenarios of the present application, and it should be noted that, for those skilled in the art, other similar implementation manners based on the technical ideas of the present application are adopted without departing from the technical ideas of the scheme of the present application, which also belongs to the protection scope of the embodiments of the present application.
Claims (16)
1. A method of generating a grid map, comprising:
acquiring a first point cloud scanned by a first movable device;
for each first target point in the first point cloud, carrying out map updating processing on at least one pre-established grid map based on the point information of the first target point to obtain updated grid maps, wherein the point information comprises first point position information, and each grid map corresponds to one grid size;
wherein, for each of the grid maps, the map update processing includes:
determining a first target data sequence corresponding to the first point position information from first map data of the grid map based on the first point position information, one first data sequence in the first map data indicating a first grid characteristic of one grid;
Updating the first target data sequence based on the point information if the first target data sequence determination is successful;
in case the first target data sequence determination fails, a new first data sequence is generated in the first map data based on the point information.
2. The method of claim 1, wherein the first grid features comprise a positional average of all grid points in a grid, distribution information of all grid points, and a grid geometry of a grid, each of the first data sequences comprising a first data segment indicative of the positional average of all grid points, a second data segment indicative of the distribution information of all grid points, and a third data segment indicative of the grid geometry;
the first map data further includes first index information indicating a first grid feature, a data start position, and a data length corresponding to each of the first data segment, the second data segment, and the third data segment;
the updating the first target data sequence based on the point information includes:
determining a new location mean and new distribution information based on the first point location information, and updating the first data segment based on the first index information and the new location mean, and updating the second data segment based on the first index information and the new distribution information;
A new grid geometry is determined based on the new distribution information and the third data segment is updated based on the first index information and the new grid geometry.
3. The method of claim 1, wherein each of the grid maps includes at least two tile maps, the first map data corresponds to tile map data corresponding to each of the at least two tile maps, and wherein prior to determining a first target data sequence corresponding to the first point location information from the first map data of the grid map based on the first point location information, further comprising:
determining a target tile map to which the first target point belongs from the at least two tile maps based on the first point position information;
the determining, based on the first point position information, a first target data sequence corresponding to the first point position information from first map data of the grid map, including:
acquiring target tile map data corresponding to the target tile map from the first map data of the grid map;
determining a first target data sequence corresponding to the first point position information from the target tile map data based on the first point position information;
The generating the new first data sequence in the first map data based on the point information includes:
generating a new said first data sequence in said target tile map data based on said point information.
4. The method of claim 3, wherein each tile map corresponds to a tile map location, wherein the determining, from the at least two tile maps, a target tile map to which the first target point belongs based on the first point location information comprises:
determining the tile map position to which the first point position information of the first target point belongs;
and taking the tile map corresponding to the tile map position to which the first target point belongs as a target tile map to which the first target point belongs.
5. The method of claim 4 wherein the first point location information includes first coordinates in a first direction and second coordinates in a second direction, a first tile size of each of the tile maps in the first direction being the same, and a second tile size of each of the tile maps in the second direction being the same, the tile map location including first tile reference coordinates corresponding to the first direction and second tile reference coordinates corresponding to the second direction, the first direction being perpendicular to the second direction;
The determining the tile map position to which the first point position information of the first target point belongs includes:
determining a first reference coordinate based on the first coordinate and the first tile size, and determining a second reference coordinate based on the second coordinate and the second tile size;
determining a first tile reference coordinate matched with the first reference coordinate, and determining a second tile reference coordinate matched with the second reference coordinate;
the step of using the tile map corresponding to the tile map position to which the first target point belongs as a target tile map to which the first target point belongs includes:
and taking the same tile map corresponding to the matched first tile reference coordinate and the matched second tile reference coordinate as a target tile map to which the first target point belongs.
6. The method of any of claims 1-5, wherein the first point location information includes a first coordinate in a first direction, a second coordinate in a second direction, and a third coordinate in a third direction, any two of the first direction, the second direction, and the third direction being perpendicular to each other, the first target data sequence being determined by:
Determining a first target hash value based on the first coordinate and a grid size corresponding to the grid map, determining a second target hash value based on the second coordinate and the grid size, and determining a third target hash value based on the third coordinate and the grid size;
obtaining a hash map, wherein the hash map indicates the corresponding relation between a hash value group and a first data sequence identifier, and one group of hash value groups corresponds to one grid;
if one of the hash value groups of the hash map has the first target hash value, the second target hash value and the third target hash value, a first data sequence corresponding to a first data sequence identifier corresponding to the one of the hash value groups is used as the first target data sequence;
if any hash value group of the hash map does not have the first target hash value, the second target hash value and the third target hash value, the first target data sequence fails to be determined;
if any hash value group of the hash map does not have the first target hash value, the second target hash value and the third target hash value, the method further comprises:
And updating the hash map based on the first target hash value, the second target hash value, the third target hash value and the sequence identifier corresponding to the new first data sequence.
7. A grid map-based positioning method, comprising:
acquiring first positioning information of a second movable device and second point cloud scanned by the second movable device, wherein the first positioning information comprises first device position information and first gesture information;
determining second point position information of each second target point in the second point cloud based on the first device position information and the first pose information;
acquiring second map data of a pre-generated first grid map, wherein the second map data comprises a plurality of second data sequences, one second data sequence indicates a second grid characteristic of one grid, and the second grid characteristic comprises a position average value of all grid points in the grid and grid geometric characteristics of the grid;
determining a second target data sequence corresponding to each second target point from second map data corresponding to the first grid map based on a position mean value indicated by each second data sequence corresponding to the first grid map and second point position information of each second target point;
And carrying out positioning update processing on the first positioning information based on the second point position information of each second target point and grid geometric characteristics indicated by the corresponding second target data sequence to obtain second positioning information, wherein the second positioning information comprises second equipment position information and second gesture information.
8. The method as recited in claim 7, further comprising:
determining third point position information of each second target point in the second point cloud based on the second device position information and the second pose information;
acquiring second map data of a pre-generated second grid map, wherein the grid size corresponding to the second grid map is smaller than that corresponding to the first grid map;
determining a third target data sequence corresponding to each second target point from second map data corresponding to the second grid map based on a position mean value indicated by each second data sequence corresponding to the second grid map and third point position information of each second target point;
and carrying out positioning update processing on the second positioning information based on third point position information of each second target point and grid geometric characteristics indicated by a corresponding third target data sequence to obtain third positioning information, wherein the third positioning information comprises third equipment position information and third posture information.
9. The method of claim 8, wherein the acquiring the second map data of the pre-generated second grid map applied to the electronic device comprises:
determining computing capability information of the electronic device, wherein the computing capability information indicates data processing capability of the electronic device;
determining a reference grid size based on the grid size corresponding to the first grid map and the computing power capability information, wherein the reference grid size is inversely related to the data processing capability and the reference grid size is positively related to the grid size corresponding to the first grid map;
determining a size difference between the target grid size and a grid size corresponding to each of a plurality of grid maps generated in advance;
and taking the grid size with the smallest corresponding size difference as a target grid size based on the size difference corresponding to each grid map, and taking the grid map corresponding to the target grid size as a second grid map to acquire second map data of the second grid map.
10. The method of claim 7, wherein each of the second data sequences comprises a first data segment indicating a positional average of all grid points and a third data segment indicating the grid geometry;
The second map data comprises second index information, wherein the second index information indicates a second grid characteristic, a data starting position and a data length corresponding to each data segment in the first data segment and the third data segment;
the position mean value indicated by the second data sequence is determined based on the first data segment searched from the second data sequence based on the second index information;
the grid geometry indicated by the second data sequence is determined based on searching a third data segment from the second data sequence based on the second index information and based on the searched third data segment.
11. The method according to any of claims 7-10, wherein the positioning update process comprises:
for each of the second target points, determining a spatial distance between the second target point and each grid geometric feature based on the point location information of the second target point and the grid geometric feature indicated by the corresponding second data sequence;
and taking the spatial distance corresponding to each second target point as a residual error of a least square method, and performing iterative optimization based on the residual error corresponding to each second target point to obtain updated positioning information.
12. A grid map generation apparatus, comprising:
the first acquisition module is used for acquiring a first point cloud scanned by the first movable equipment;
the grid map generation module is used for carrying out map updating processing on at least one pre-established grid map based on point information of each first target point in the first point cloud to obtain an updated grid map, wherein the point information comprises first point position information, and each grid map corresponds to one grid size;
wherein, for each of the grid maps, the grid map is used for, when performing the map update processing:
determining a first target data sequence corresponding to the first point position information from first map data of the grid map based on the first point position information, one first data sequence in the first map data indicating a first grid characteristic of one grid;
updating the first target data sequence based on the point information if the first target data sequence determination is successful;
in case the first target data sequence determination fails, a new first data sequence is generated in the first map data based on the point information.
13. A grid map based positioning apparatus, comprising:
the second acquisition module is used for acquiring first positioning information of a second movable device and second point clouds scanned by the second movable device, wherein the first positioning information comprises first device position information and first gesture information;
a point location information determining module configured to determine second point location information of each second target point in the second point cloud based on the first device location information and the first pose information;
a third acquisition module, configured to acquire second map data of a first grid map generated in advance, where the second map data includes a plurality of second data sequences, and one second data sequence indicates a position average value of all grid points in one grid and a grid geometric feature of the one grid;
the data sequence determining module is used for determining a second target data sequence corresponding to each second target point from second map data corresponding to the first grid map based on a position mean value indicated by each second data sequence corresponding to the first grid map and second point position information of each second target point;
And the positioning module is used for carrying out positioning update processing on the first positioning information based on the second point position information of each second target point and the grid geometric characteristics indicated by the corresponding second target data sequence to obtain second positioning information, wherein the second positioning information comprises second equipment position information and second gesture information.
14. An electronic device comprising a memory, a processor and a computer program stored on the memory, characterized in that the processor executes the computer program to carry out the steps of the method according to any one of claims 1-11.
15. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the steps of the method according to any of claims 1-11.
16. A computer program product comprising a computer program, characterized in that the computer program, when being executed by a processor, implements the steps of the method according to any of claims 1-11.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311021027.4A CN117053781A (en) | 2023-08-11 | 2023-08-11 | Grid map generation method, grid map-based positioning method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311021027.4A CN117053781A (en) | 2023-08-11 | 2023-08-11 | Grid map generation method, grid map-based positioning method and device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117053781A true CN117053781A (en) | 2023-11-14 |
Family
ID=88660276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311021027.4A Pending CN117053781A (en) | 2023-08-11 | 2023-08-11 | Grid map generation method, grid map-based positioning method and device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117053781A (en) |
-
2023
- 2023-08-11 CN CN202311021027.4A patent/CN117053781A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3506212B1 (en) | Method and apparatus for generating raster map | |
CN109783593A (en) | A kind of map updating system can be used for automatic Pilot and method | |
CN108763287A (en) | On a large scale can traffic areas driving map construction method and its unmanned application process | |
CN101324663B (en) | Rapid blocking and grating algorithm of laser radar point clouds data | |
CN112166458B (en) | Target detection and tracking method, system, equipment and storage medium | |
CN112611389A (en) | Region identification method and device and storage medium | |
WO2024012211A1 (en) | Autonomous-driving environmental perception method, medium and vehicle | |
WO2024012212A1 (en) | Environmental perception method, domain controller, storage medium, and vehicle | |
CN115164919B (en) | Method and device for constructing spatial travelable area map based on binocular camera | |
CN114485700A (en) | High-precision dynamic map generation method and device | |
CN112639822B (en) | Data processing method and device | |
CN108973995B (en) | Environment perception data processing method and device for driving assistance and vehicle | |
CN117053781A (en) | Grid map generation method, grid map-based positioning method and device | |
CN109906657A (en) | Resource multiplexing method, terminal and relevant device | |
Xiong et al. | Novel ITS based on space-air-ground collected big-data | |
CN114859942A (en) | Robot motion control method and device, electronic equipment and storage medium | |
CN113312403B (en) | Map acquisition method and device, electronic equipment and storage medium | |
AlKishri et al. | Object recognition for organizing the movement of self-driving car | |
CN113066009A (en) | Construction method, device and system of port high-precision map set and storage medium | |
Chu et al. | Convergent application for trace elimination of dynamic objects from accumulated lidar point clouds | |
CN117011486B (en) | Grid map construction method, device, electronic equipment and computer storage medium | |
CN116821270B (en) | Map generation method, device, equipment and storage medium | |
CN115802490B (en) | High-precision wireless positioning method, system and storage medium for positioning base station | |
CN112074871B (en) | High definition map management system and method | |
Shi et al. | Autonomous Driving Landscape |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |