Method and device for storing mapping data

By determining the keyframe point cloud in the laser mapping system and generating serialized data, the problem of time-consuming reproduction of the mapping state after the system restart is solved, and efficient data storage and rapid loading are achieved.

CN120086398APending Publication Date: 2025-06-03SAIC GM WULING AUTOMOBILE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510009729.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-03
Publication Date
2025-06-03

AI Technical Summary

Technical Problem

After the laser map construction system is restarted, replaying the previous map construction status requires replaying the laser point cloud map construction data packet, which takes a long time and takes up a lot of storage space, affecting the normal operation of smart driving vehicles.

Method used

By determining discrete multiple keyframe point clouds in multiple frame point clouds of local point clouds, feature serialization data and factor serialization data are generated based on point cloud data of these keyframe point clouds and saved to a specific map data set.

Benefits of technology

It greatly reduces the amount of data, improves the ability to quickly extract data from specific map data sets, improves the efficiency of loading maps, and supports rapid upload of data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120086398A_ABST
    Figure CN120086398A_ABST
Patent Text Reader

Abstract

The invention provides a mapping data storage method and device. The method comprises the following steps: determining a plurality of discrete key frame point clouds in a plurality of frame point clouds of local point clouds; respectively generating point cloud feature data and factor data corresponding to the key frame point clouds based on the respective point cloud data of the plurality of key frame point clouds; respectively generating feature serialization data and factor serialization data corresponding to the key frame point clouds based on the point cloud feature data and the factor data of each key frame point cloud; and storing the feature serialization data and the factor serialization data of each key frame point cloud into a specific map data set. According to the method, the point cloud data of the key frame point cloud is converted into the point cloud feature data and the factor data, and the point cloud feature data and the factor data are serialized and stored in the database, so that the data volume is greatly reduced, the data can be quickly extracted from a specific map data set, the map loading efficiency is improved, and the data can be quickly uploaded.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of electronic maps. Specifically, it relates to a method, device, medium, and electronic device for storing mapping data. Background Art

[0002] Currently, during laser mapping, if the system needs to reproduce the previous mapping state after restarting, it is usually necessary to play the laser point cloud mapping data packet again. This processing not only takes a long time, but also the loaded laser point cloud mapping data packet occupies a large storage space, which is not conducive to the normal operation of intelligent driving vehicles.

[0003] Therefore, this application provides a method for storing mapping data to solve the above technical problems. Summary of the Invention

[0004] The purpose of this application is to provide a method, device, medium, and electronic device for storing mapping data, which can solve at least one of the above-mentioned technical problems. The specific solutions are as follows:

[0005] According to the specific embodiments of this application, in a first aspect, this application provides a method for storing mapping data, including:

[0006] Obtain the local point cloud of a local area, where the local point cloud includes multiple frame point clouds;

[0007] Determine multiple discrete key frame point clouds among the multiple frame point clouds, where the multiple key frame point clouds at least include the first frame point cloud and the last frame point cloud in the local point cloud;

[0008] Generate point cloud feature data and factor data corresponding to each key frame point cloud based on the point cloud data of each key frame point cloud;

[0009] Generate feature serialization data and factor serialization data corresponding to each key frame point cloud based on the point cloud feature data and factor data of each key frame point cloud;

[0010] Save the feature serialization data and factor serialization data of each key frame point cloud to a specific map data set.

[0011] Optionally, the determining multiple discrete key frame point clouds among the multiple frame point clouds includes:

[0012] Determine the first frame point cloud and the last frame point cloud in the multiple frame point clouds as key frame point clouds respectively;

[0013] Among the multiple frame point clouds, starting from the positioning data of the first frame point cloud, determine a frame point cloud as a key frame point cloud every preset extraction distance value.

[0014] Optionally, determining a discrete plurality of key frame point clouds from the plurality of frame point clouds includes:

[0015] Determining the first frame point cloud and the last frame point cloud in the plurality of frame point clouds as key frame point clouds respectively;

[0016] In the plurality of frame point clouds, starting from the positioning time point of the first frame point cloud, determining one frame point cloud as a key frame point cloud every preset extraction duration.

[0017] Optionally, generating point cloud feature data and factor data corresponding to each of the plurality of key frame point clouds based on the point cloud data of each of the plurality of key frame point clouds at least includes:

[0018] Determining the target frame point cloud corresponding to each key frame point cloud from the historical map data set based on the first pose data and the first positioning time point of each key frame point cloud, wherein the second pose data of the target frame point cloud of each key frame point cloud satisfies a preset proximity condition with the first pose data of the corresponding key frame point cloud, and the time difference between the second positioning time point of the target frame point cloud of the corresponding key frame point cloud and the first positioning time point of the corresponding key frame point cloud satisfies a preset time difference condition;

[0019] Generating historical relative pose data corresponding to each key frame point cloud based on the second pose data of the target frame point cloud of each key frame point cloud and the first pose data of the corresponding key frame point cloud;

[0020] Determining that the first frame sequence number of each key frame point cloud, the second frame sequence number of the target frame point cloud of the corresponding key frame point cloud, and the historical relative pose data of the corresponding key frame point cloud form the loop factor data of the corresponding key frame point cloud.

[0021] Optionally, generating point cloud feature data and factor data corresponding to each of the plurality of key frame point clouds based on the point cloud data of each of the plurality of key frame point clouds at least includes:

[0022] Determining a plurality of other intermediate key frame point clouds from the plurality of key frame point clouds except the first frame point cloud and the last frame point cloud;

[0023] Determining the adjacent intermediate key frame point cloud corresponding to each intermediate key frame point cloud from the plurality of intermediate key frame point clouds based on the frame sequence number of each intermediate key frame point cloud;

[0024] Obtaining the adjacent relative pose of each intermediate key frame point cloud based on the pose data of each intermediate key frame point cloud and the pose data of the adjacent intermediate key frame point cloud corresponding to the intermediate key frame point cloud;

[0025] Determining that the frame sequence number of each intermediate key frame point cloud and the adjacent relative pose of the corresponding intermediate key frame point cloud form the odometry factor data of the corresponding intermediate key frame point cloud.

[0026] Optionally, generating point cloud feature data and factor data corresponding to the key frame point clouds respectively based on the point cloud data of each of the multiple key frame point clouds includes at least:

[0027] Among the multiple key frame point clouds, determining the first frame point cloud and the last frame point cloud as positioning key frame point clouds respectively, and starting from the positioning data of the first frame point cloud, determining a key frame point cloud as a positioning key frame point cloud every preset positioning distance value;

[0028] Based on the frame number and absolute pose data of each positioning key frame point cloud, forming positioning factor data corresponding to the positioning key frame point cloud.

[0029] Optionally, the point cloud feature data includes corner feature point data and surface feature point data of obstacles.

[0030] Optionally, the method further includes:

[0031] When passing through the local area, obtaining the feature serialization data and factor serialization data of the multiple key frame point clouds from the specific map data set;

[0032] Deserializing the factor serialization data and the feature serialization data of each of the multiple key frame point clouds respectively to obtain the factor data and point cloud feature data corresponding to the key frame point clouds respectively;

[0033] Constructing a factor graph based on the factor data of the multiple key frame point clouds;

[0034] Obtaining the pose data of each of the multiple key frame point clouds based on the factor graph;

[0035] Generating an electronic map of the local area based on the pose data and point cloud feature data of the multiple key frame point clouds.

[0036] Optionally, obtaining the feature serialization data and factor serialization data of the multiple key frame point clouds from the specific map data set includes:

[0037] Obtaining the factor serialization data of the multiple key frame point clouds from the specific map data set, and

[0038] Obtaining a preset number of the latest feature serialization data from the specific map data set.

[0039] According to the specific embodiments of the present application, in a second aspect, the present application provides a storage device for mapping data, including:

[0040] A point cloud acquisition unit for acquiring local point clouds of a local area, where the local point clouds include multiple frame point clouds;

[0041] A determination unit, configured to determine a plurality of discrete key frame point clouds from the plurality of frame point clouds, where the plurality of key frame point clouds at least include the first frame point cloud and the last frame point cloud in the local point cloud;

[0042] A data generation unit, configured to generate point cloud feature data and factor data corresponding to each key frame point cloud respectively based on the point cloud data of each of the plurality of key frame point clouds;

[0043] A serialization unit, configured to generate feature serialization data and factor serialization data corresponding to each key frame point cloud respectively based on the point cloud feature data and factor data of each key frame point cloud;

[0044] A saving unit, configured to save the feature serialization data and factor serialization data of each key frame point cloud into a specific map data set.

[0045] Optionally, the determining a plurality of discrete key frame point clouds from the plurality of frame point clouds includes:

[0046] Determining the first frame point cloud and the last frame point cloud in the plurality of frame point clouds as key frame point clouds respectively;

[0047] In the plurality of frame point clouds, starting from the positioning data of the first frame point cloud, determining a frame point cloud as a key frame point cloud every preset extraction distance value.

[0048] Optionally, the determining a plurality of discrete key frame point clouds from the plurality of frame point clouds includes:

[0049] Determining the first frame point cloud and the last frame point cloud in the plurality of frame point clouds as key frame point clouds respectively;

[0050] In the plurality of frame point clouds, starting from the positioning time point of the first frame point cloud, determining a frame point cloud as a key frame point cloud every preset extraction duration.

[0051] Optionally, the generating point cloud feature data and factor data corresponding to each key frame point cloud respectively based on the point cloud data of each of the plurality of key frame point clouds at least includes:

[0052] Determining a target frame point cloud corresponding to each key frame point cloud from a historical map data set respectively based on the first pose data and the first positioning time point of each key frame point cloud, where the second pose data of the target frame point cloud of each key frame point cloud satisfies a preset proximity condition with the first pose data of the corresponding key frame point cloud, and the time difference between the second positioning time point of the target frame point cloud of the corresponding key frame point cloud and the first positioning time point of the corresponding key frame point cloud satisfies a preset time difference condition;

[0053] Generate the historical relative pose data of the corresponding key-frame point cloud based on the second pose data of the target-frame point cloud of each key-frame point cloud and the first pose data of the corresponding key-frame point cloud;

[0054] Determine that the first frame number of each key-frame point cloud, the second frame number of the target-frame point cloud of the corresponding key-frame point cloud, and the historical relative pose data of the corresponding key-frame point cloud form the loop closure factor data of the corresponding key-frame point cloud.

[0055] Optionally, the generating the point cloud feature data and factor data of the corresponding key-frame point cloud respectively based on the point cloud data of each of the multiple key-frame point clouds at least includes:

[0056] Determine multiple intermediate key-frame point clouds other than the first-frame point cloud and the last-frame point cloud from the multiple key-frame point clouds;

[0057] Determine the adjacent intermediate key-frame point cloud of the corresponding intermediate key-frame point cloud from the multiple intermediate key-frame point clouds based on the frame number of each intermediate key-frame point cloud;

[0058] Obtain the adjacent relative pose of the corresponding intermediate key-frame point cloud based on the pose data of each intermediate key-frame point cloud and the pose data of the adjacent intermediate key-frame point cloud of the corresponding intermediate key-frame point cloud;

[0059] Determine that the frame number of each intermediate key-frame point cloud and the adjacent relative pose of the corresponding intermediate key-frame point cloud form the odometry factor data of the corresponding intermediate key-frame point cloud.

[0060] Optionally, the generating the point cloud feature data and factor data of the corresponding key-frame point cloud respectively based on the point cloud data of each of the multiple key-frame point clouds at least includes:

[0061] In the multiple key-frame point clouds, determine that the first-frame point cloud and the last-frame point cloud are respectively positioning key-frame point clouds, and starting from the positioning data of the first-frame point cloud, determine a key-frame point cloud as a positioning key-frame point cloud every preset positioning distance value;

[0062] Based on the frame number and absolute pose data of each positioning key-frame point cloud, form the positioning factor data of the corresponding positioning key-frame point cloud.

[0063] Optionally, the point cloud feature data includes the corner feature point data and surface feature point data of the obstacle.

[0064] Optionally, the device further includes:

[0065] A trigger unit, configured to obtain the feature serialization data and factor serialization data of the multiple key-frame point clouds from the specific map data set when passing through the local area;

[0066] A deserialization unit, configured to deserialize the factor serialization data and the feature serialization data of each of the multiple key-frame point clouds respectively, so as to obtain the factor data and the point cloud feature data corresponding to the key-frame point clouds respectively;

[0067] A construction unit, configured to construct a factor graph based on the factor data of the multiple key-frame point clouds;

[0068] An obtaining unit, configured to obtain the pose data of each of the multiple key-frame point clouds based on the factor graph;

[0069] A map generation unit, configured to generate an electronic map of the local area based on the pose data and the point cloud feature data of the multiple key-frame point clouds.

[0070] Optionally, obtaining the feature serialization data and the factor serialization data of the multiple key-frame point clouds from the specific map data set includes:

[0071] Obtaining the factor serialization data of the multiple key-frame point clouds from the specific map data set, and

[0072] Obtaining a preset number of the latest feature serialization data from the specific map data set.

[0073] According to a specific embodiment of the present application, in a third aspect, the present application provides a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the method for storing mapping data as described in any one of the above is implemented.

[0074] According to a specific embodiment of the present application, in a fourth aspect, the present application provides an electronic device, including: one or more processors; a storage device, configured to store one or more programs, and when the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the method for storing mapping data as described in any one of the above.

[0075] The above solution of the embodiment of the present application has at least the following beneficial effects compared with the prior art:

[0076] The present application provides a method, apparatus, medium, and electronic device for storing mapping data. The present application determines a plurality of discrete key-frame point clouds from multiple frames of local point clouds; generates point cloud feature data and factor data corresponding to the key-frame point clouds based on the point cloud data of the respective key-frame point clouds; generates feature serialization data and factor serialization data corresponding to the key-frame point clouds based on the point cloud feature data and factor data of each key-frame point cloud; and saves the feature serialization data and factor serialization data of each key-frame point cloud to a specific map data set. Transforming the point cloud data of the key-frame point clouds into point cloud feature data and factor data and serially storing them in a database greatly reduces the data volume, facilitates quickly extracting data from the specific map data set, improves the efficiency of loading the map, and is conducive to quickly uploading data. BRIEF DESCRIPTION OF THE DRAWINGS

[0077] Figure 1 FIG. shows a flowchart of a method for storing mapping data according to an embodiment of the present application;

[0078] Figure 2 FIG. shows a block diagram of units of a device for storing mapping data according to an embodiment of the present application. DETAILED DESCRIPTION

[0079] In order to make the objectives, technical solutions, and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings. Apparently, the described embodiments are only some of the embodiments of the present application, rather than all of them. All other embodiments obtained by those of ordinary skill in the art based on the embodiments in the present application without creative efforts shall fall within the scope of protection of the present application.

[0080] The terms used in the embodiments of the present application are only for the purpose of describing specific embodiments and are not intended to limit the present application. The singular forms "a", "the", and "said" used in the embodiments of the present application and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. "Plurality" generally includes at least two.

[0081] It should be understood that the term " / and" used herein is only a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B may represent: A exists alone, A and B exist simultaneously, and B exists alone. In addition, the character " / " herein generally represents an "or" relationship between the associated objects before and after.

[0082] It should be understood that although terms such as first, second, and third may be used in the embodiments of the present application for description, these descriptions should not be limited to these terms. These terms are only used to distinguish the descriptions. For example, without departing from the scope of the embodiments of the present application, the first may also be referred to as the second, and similarly, the second may also be referred to as the first.

[0083] Depending on the context, the words "if", "when" as used herein may be interpreted as "when" or "while" or "in response to determining" or "in response to detecting". Similarly, depending on the context, the phrase "if determined" or "if detected (stated condition or event)" may be interpreted as "when determined" or "in response to determining" or "when detecting (stated condition or event)" or "in response to detecting (stated condition or event)".

[0084] It should also be noted that the term "comprising", "including" or any other variation thereof is intended to cover non-exclusive inclusion, so that a commodity or device comprising a series of elements not only includes those elements but also other elements not expressly listed, or elements inherent to such commodity or device. Without further limitation, an element defined by the statement "comprising an..." does not exclude the presence of additional identical elements in the commodity or device comprising said element.

[0085] It should be particularly noted that symbols and / or numbers present in the specification, if not marked in the drawings description, are not drawing reference numerals.

[0086] The optional embodiments of the present application will be described in detail below with reference to the drawings.

[0087] For the embodiments provided by the present application, namely embodiments of a method for storing mapping data.

[0088] The following will be combined with Figure 1 The embodiments of the present application will be described in detail.

[0089] Step S101, obtain the local point cloud of the local area.

[0090] If a large area (for example, the urban area of a city, or the area of a province, or the area of a country, the present application is not limited thereto) is regarded as a global area, the embodiments of the present application divide the global area into multiple local areas. When the vehicle passes through a local area, the on-vehicle sensing device (such as a lidar) continuously scans the surrounding area to obtain the point cloud of the local area (i.e., the local point cloud).

[0091] Wherein, the local point cloud includes multiple frame point clouds.

[0092] The frame point cloud is the point cloud obtained after the vehicle-mounted sensing device scans the surrounding environment for one week. The frame point cloud includes a plurality of point data.

[0093] Step S102: Determine a plurality of discrete key frame point clouds from the plurality of frame point clouds.

[0094] Among them, the plurality of key frame point clouds at least include the first frame point cloud and the last frame point cloud in the local point cloud.

[0095] For the local point cloud collected by the lidar, the visual range is very wide, mostly dozens of meters to hundreds of meters. The frame rate of the point cloud collected by the lidar is generally 10hz, that is, 10 frames of data per second. These data are redundant and repeated. Therefore, in the embodiments of the present application, not all the frame point clouds in the local point cloud are adopted, but a plurality of discrete key frame point clouds are selected from all the frame point clouds in the local point cloud, so as to reduce the data volume of the key frame point clouds.

[0096] In some specific embodiments, the determining a plurality of discrete key frame point clouds from the plurality of frame point clouds includes:

[0097] Step S102a-1: Determine the first frame point cloud and the last frame point cloud as key frame point clouds respectively in the plurality of frame point clouds.

[0098] Step S102a-2: In the plurality of frame point clouds, starting from the positioning data of the first frame point cloud, determine a frame point cloud as a key frame point cloud every preset extraction distance value.

[0099] Determining the first frame point cloud and the last frame point cloud as key frame point clouds ensures that the navigation information generated by these key frame point clouds can be coherently connected to the navigation information generated by the local point clouds before and after this local point cloud, and avoids the jitter phenomenon at the connection part of the navigation information.

[0100] For example, the preset extraction distance value is one meter, that is, starting from the positioning data of the first frame point cloud, select a frame point cloud as a key frame point cloud every one meter. Thus, the data volume of the key frame point clouds is reduced.

[0101] In some specific embodiments, the determining a plurality of discrete key frame point clouds from the plurality of frame point clouds includes:

[0102] Step S102b-1: Determine the first frame point cloud and the last frame point cloud as key frame point clouds respectively in the plurality of frame point clouds.

[0103] Step S102b-2: In the plurality of frame point clouds, starting from the positioning time point of the first frame point cloud, determine a frame point cloud as a key frame point cloud every preset extraction duration.

[0104] For example, the preset extraction duration is 10 s, that is, starting from the positioning data of the first frame of point cloud, a frame of point cloud is selected as a key frame of point cloud every 10 s. Thereby reducing the data volume of the key frames of point cloud.

[0105] Step S103, respectively generate point cloud feature data and factor data corresponding to the key frames of point cloud based on the point cloud data of each of the multiple key frames of point cloud.

[0106] The point cloud feature data is the point data obtained by scanning obstacles.

[0107] The factor data is the data associated with the ego vehicle's position and pose.

[0108] In some specific embodiments, the point cloud feature data includes corner feature point data and surface feature point data of obstacles.

[0109] When the laser scans the surface of an obstacle, point data on the surface of the obstacle will be received. When scanning the corners of an obstacle, corner feature point data is obtained; when scanning the plane of an obstacle, surface feature point data is obtained.

[0110] In the embodiments of the present application, the factor data includes: positioning factor data, odometer factor data, and / or loop closure factor data.

[0111] In some specific embodiments, the generating the point cloud feature data and factor data corresponding to the key frames of point cloud based on the point cloud data of each of the multiple key frames of point cloud at least includes:

[0112] Step S103a-1, among the multiple key frames of point cloud, determine the first frame of point cloud and the last frame of point cloud as positioning key frames of point cloud respectively, and starting from the positioning data of the first frame of point cloud, determine a key frame of point cloud as a positioning key frame of point cloud every preset positioning distance value.

[0113] Step S103a-2, compose the positioning factor data corresponding to each positioning key frame of point cloud based on the frame number and absolute pose data of each positioning key frame of point cloud.

[0114] The preset positioning distance value is used to control the number of positioning key frames of point cloud, thereby reducing the data volume. For example, the preset positioning distance value is 20 m, that is, starting from the positioning data of the first frame of point cloud, a key frame of point cloud is determined as a positioning key frame of point cloud every 20 m.

[0115] The absolute pose data includes the positioning data of the vehicle and the attitude data of the vehicle.

[0116] In some specific embodiments, the generating the point cloud feature data and factor data corresponding to the key frames of point cloud based on the point cloud data of each of the multiple key frames of point cloud at least includes:

[0117] Step S103b-1: Determine multiple intermediate key frame point clouds other than the first frame point cloud and the last frame point cloud from the multiple key frame point clouds.

[0118] The odometry factor data is relative data. That is, based on the positioning factor data of the positioning key frame point cloud, the original data of the intermediate key frame point cloud can be restored through the odometry factor data of the intermediate key frame point cloud. Since both the first frame point cloud and the last frame point cloud are positioning key frame point clouds, they do not necessarily have odometry factor data.

[0119] Step S103b-2: Determine the adjacent intermediate key frame point clouds corresponding to each intermediate key frame point cloud from the multiple intermediate key frame point clouds based on the frame numbers of each intermediate key frame point cloud.

[0120] Step S103b-3: Obtain the adjacent relative pose of each intermediate key frame point cloud based on the pose data of each intermediate key frame point cloud and the pose data of the adjacent intermediate key frame point cloud corresponding to it.

[0121] The adjacent relative pose is generated between an intermediate key frame point cloud and its adjacent intermediate key frame point cloud.

[0122] For example, after the positioning key frame point cloud, there are: the first intermediate key frame point cloud, the second intermediate key frame point cloud, and the third intermediate key frame point cloud; the absolute pose data of the first intermediate key frame point cloud can be obtained based on the absolute pose data of the positioning key frame point cloud and the adjacent relative pose of the first intermediate key frame point cloud; the absolute pose data of the second intermediate key frame point cloud can be obtained based on the absolute pose data of the first intermediate key frame point cloud and the adjacent relative pose of the second intermediate key frame point cloud; the absolute pose data of the third intermediate key frame point cloud can be obtained based on the absolute pose data of the second intermediate key frame point cloud and the adjacent relative pose of the third intermediate key frame point cloud; and so on.

[0123] Step S103b-4: Determine that the frame number of each intermediate key frame point cloud and the adjacent relative pose corresponding to it form the odometry factor data of the corresponding intermediate key frame point cloud.

[0124] In some specific embodiments, the generating the point cloud feature data and factor data corresponding to each key frame point cloud based on the point cloud data of each key frame point cloud respectively includes at least:

[0125] Step S103c-1: Determine the target frame point cloud corresponding to each key frame point cloud from the historical map data set based on the first pose data and the first positioning time point of each key frame point cloud.

[0126] Among them, the second pose data of the target point cloud of each key-frame point cloud and the first pose data of the corresponding key-frame point cloud satisfy a preset proximity condition, and the time difference between the second positioning time point of the target point cloud of the corresponding key-frame point cloud and the first positioning time point of the corresponding key-frame point cloud satisfies a preset time difference condition.

[0127] The preset proximity condition is used to ensure that the second pose data of the target point cloud is close to the first pose data of the corresponding key-frame point cloud, ensuring the comparability of the two point clouds.

[0128] The preset time difference condition is used to ensure that the second positioning time point of the target point cloud and the first positioning time point of the corresponding key-frame point cloud are not too close. If the second positioning time point and the first positioning time point are too close, it can be considered that the key-frame point cloud and the target point cloud are point clouds in the same situation, or the same point cloud.

[0129] Step S103c-2: Generate historical relative pose data of the corresponding key-frame point cloud based on the second pose data of the target point cloud of each key-frame point cloud and the first pose data of the corresponding key-frame point cloud.

[0130] Step S103c-3: Determine that the first frame number of each key-frame point cloud, the second frame number of the target point cloud of the corresponding key-frame point cloud, and the historical relative pose data of the corresponding key-frame point cloud form the loop factor data of the corresponding key-frame point cloud.

[0131] The loop factor data can correct the local electronic map when loading the local electronic map, ensuring the reliability and stability of the local electronic map.

[0132] Step S104: Generate feature serialization data and factor serialization data of the corresponding key-frame point cloud based on the point cloud feature data and factor data of each key-frame point cloud respectively.

[0133] Serializing the data further compresses the data volume.

[0134] Step S105: Save the feature serialization data and factor serialization data of each key-frame point cloud to a specific map data set.

[0135] The specific map data set is different from the general map data set. The general map data set is used to save the point clouds in the local point cloud that are not determined as key-frame point clouds. The specific map data set only saves the feature serialization data and factor serialization data of each key-frame point cloud. Thus, the data volume in the specific map data set is greatly reduced, which is conducive to quickly extracting data from the specific map data set and improving the efficiency of loading the map.

[0136] A 4G point cloud data packet, the corresponding specific map data set is approximately 80M in size. This not only facilitates the retention of the specific map data set in the robot domain control but also facilitates the uploading of the specific map data set. If using a 4G data packet to restart mapping, it needs to play it completely, and it takes about 250 seconds to resume the mapping state; while if using the data of the specific map data set for processing, the mapping state can be restored within 10 seconds.

[0137] In the embodiments of the present application, discrete multiple key frame point clouds are determined from multiple frame point clouds of local point clouds; based on the point cloud data of each of the multiple key frame point clouds, point cloud feature data and factor data corresponding to the key frame point clouds are respectively generated; based on the point cloud feature data and factor data of each key frame point cloud, feature serialization data and factor serialization data corresponding to the key frame point clouds are respectively generated; and the feature serialization data and factor serialization data of each key frame point cloud are saved to a specific map data set. Transforming the point cloud data of the key frame point clouds into point cloud feature data and factor data and serially storing them in the database greatly reduces the data volume, facilitates quickly extracting data from the specific map data set, improves the efficiency of loading the map, and is conducive to quickly uploading data.

[0138] In some specific embodiments, a method for loading mapping data is also provided. The method further includes:

[0139] Step S111, when passing through the local area, obtain the feature serialization data and factor serialization data of the multiple key frame point clouds from the specific map data set.

[0140] In some specific embodiments, obtaining the feature serialization data and factor serialization data of the multiple key frame point clouds from the specific map data set includes:

[0141] Step S111a, obtain the factor serialization data of the multiple key frame point clouds from the specific map data set.

[0142] Step S111b, obtain a preset number of the latest feature serialization data from the specific map data set.

[0143] The preset number is used to limit the number of the latest point cloud feature data obtained. For example, obtain the factor serialization data and point cloud feature data of the last 100 key frame point clouds from the specific map data set. This can not only reduce the data reading duration but also meet the requirements of point cloud pairing, avoid frequently reading data from the specific map data set, and improve the efficiency of data acquisition.

[0144] Among them, the execution order of step S111a and step S111b is not in a specific sequence.

[0145] Step S112, deserializing the factor serialized data and the feature serialized data of each of the multiple key frame point clouds, respectively, to obtain the factor data and the point cloud feature data of the corresponding key frame point clouds, respectively.

[0146] Deserialization is the reverse process of serialization.

[0147] Step S113: construct a factor graph based on the factor data of the multiple key frame point clouds.

[0148] Step S114: obtaining the pose data of each of the plurality of key frame point clouds based on the factor graph.

[0149] Step S115: generating an electronic map of the local area based on the pose data and point cloud feature data of the multiple key frame point clouds.

[0150] In this specific embodiment, when a vehicle passes through a local area, the vehicle obtains the feature serialization data and factor serialization data of each key frame point cloud from a specific map data set, and then converts the feature serialization data and factor serialization data of each key frame point cloud into point cloud feature data and factor serialization data, and uses the point cloud feature data and factor serialization data of multiple key frame point clouds to generate an electronic map of the local area. There is no need to wait for the point cloud data packet to be played, and the purpose of quickly restoring the electronic map of the local area is achieved by using a small amount of data.

[0151] The present application also provides a device embodiment that is based on the above embodiment, which is used to implement the method steps described in the above embodiment. The explanation based on the same name meaning is the same as the above embodiment, and has the same technical effect as the above embodiment, which will not be repeated here.

[0152] like Figure 2 As shown, the present application provides a storage device 200 for mapping data, comprising:

[0153] A point cloud acquisition unit 201 is used to acquire a local point cloud of a local area, wherein the local point cloud includes a plurality of frame point clouds;

[0154] A determination unit 202 is used to determine a plurality of discrete key frame point clouds from the plurality of frame point clouds, wherein the plurality of key frame point clouds at least include a first frame point cloud and a last frame point cloud in the local point cloud;

[0155] A data generating unit 203 is used to generate point cloud feature data and factor data of corresponding key frame point clouds based on the point cloud data of each of the plurality of key frame point clouds;

[0156] A serialization unit 204 for generating feature serialization data and factor serialization data corresponding to each key-frame point cloud based on the point cloud feature data and factor data of each key-frame point cloud respectively;

[0157] A saving unit 205 for saving the feature serialization data and factor serialization data of each key-frame point cloud into a specific map data set.

[0158] Optionally, determining discrete multiple key-frame point clouds among the multiple frame point clouds includes:

[0159] Determining the first frame point cloud and the last frame point cloud among the multiple frame point clouds as key-frame point clouds respectively;

[0160] Among the multiple frame point clouds, starting from the positioning data of the first frame point cloud, determining a frame point cloud as a key-frame point cloud every preset extraction distance value.

[0161] Optionally, determining discrete multiple key-frame point clouds among the multiple frame point clouds includes:

[0162] Determining the first frame point cloud and the last frame point cloud among the multiple frame point clouds as key-frame point clouds respectively;

[0163] Among the multiple frame point clouds, starting from the positioning time point of the first frame point cloud, determining a frame point cloud as a key-frame point cloud every preset extraction duration.

[0164] Optionally, generating the point cloud feature data and factor data corresponding to each key-frame point cloud based on the point cloud data of each key-frame point cloud respectively includes at least:

[0165] Determining the target frame point cloud corresponding to each key-frame point cloud from the historical map data set based on the first pose data and the first positioning time point of each key-frame point cloud, wherein the second pose data of the target frame point cloud of each key-frame point cloud satisfies a preset proximity condition with the first pose data of the corresponding key-frame point cloud, and the time difference between the second positioning time point of the target frame point cloud of the corresponding key-frame point cloud and the first positioning time point of the corresponding key-frame point cloud satisfies a preset time difference condition;

[0166] Generating historical relative pose data corresponding to each key-frame point cloud based on the second pose data of the target frame point cloud of each key-frame point cloud and the first pose data of the corresponding key-frame point cloud;

[0167] Determining the first frame sequence number of each key-frame point cloud, the second frame sequence number of the target frame point cloud of the corresponding key-frame point cloud, and the historical relative pose data of the corresponding key-frame point cloud to form the loop closure factor data corresponding to the corresponding key-frame point cloud.

[0168] Optionally, generating point cloud feature data and factor data corresponding to the key frame point clouds respectively based on the point cloud data of the respective multiple key frame point clouds includes at least:

[0169] Determining multiple intermediate key frame point clouds other than the first frame point cloud and the last frame point cloud from the multiple key frame point clouds;

[0170] Determining adjacent intermediate key frame point clouds corresponding to each intermediate key frame point cloud from the multiple intermediate key frame point clouds based on the frame sequence number of each intermediate key frame point cloud;

[0171] Obtaining the adjacent relative pose of each intermediate key frame point cloud based on the pose data of each intermediate key frame point cloud and the pose data of the adjacent intermediate key frame point cloud corresponding to it;

[0172] Determining the odometry factor data corresponding to each intermediate key frame point cloud by combining the frame sequence number of each intermediate key frame point cloud and its adjacent relative pose.

[0173] Optionally, generating point cloud feature data and factor data corresponding to the key frame point clouds respectively based on the point cloud data of the respective multiple key frame point clouds includes at least:

[0174] In the multiple key frame point clouds, determining the first frame point cloud and the last frame point cloud as positioning key frame point clouds respectively, and starting from the positioning data of the first frame point cloud, determining a key frame point cloud as a positioning key frame point cloud every preset positioning distance value;

[0175] Forming the positioning factor data corresponding to each positioning key frame point cloud by combining the frame sequence number and the absolute pose data of each positioning key frame point cloud.

[0176] Optionally, the point cloud feature data includes corner feature point data and surface feature point data of obstacles.

[0177] Optionally, the device further includes:

[0178] A trigger unit, configured to obtain the feature serialization data and factor serialization data of the multiple key frame point clouds from the specific map data set when passing through the local area;

[0179] A deserialization unit, configured to deserialize the factor serialization data and the feature serialization data of the multiple key frame point clouds respectively to obtain the factor data and the point cloud feature data corresponding to the key frame point clouds respectively;

[0180] A construction unit, configured to construct a factor graph based on the factor data of the multiple key frame point clouds;

[0181] An acquisition unit, configured to obtain the pose data of each of the multiple key-frame point clouds based on the factor graph;

[0182] A map generation unit, configured to generate an electronic map of the local area based on the pose data and point cloud feature data of the multiple key-frame point clouds.

[0183] Optionally, the obtaining the feature serialization data and factor serialization data of the multiple key-frame point clouds from the specific map data set includes:

[0184] Obtaining the factor serialization data of the multiple key-frame point clouds from the specific map data set, and

[0185] Obtaining a preset number of the latest feature serialization data from the specific map data set.

[0186] The present application provides a method, an apparatus, a medium, and an electronic device for storing mapping data. The present application determines discrete multiple key-frame point clouds among multiple frame point clouds of local point clouds; respectively generates point cloud feature data and factor data corresponding to the key-frame point clouds based on the point cloud data of each of the multiple key-frame point clouds; respectively generates feature serialization data and factor serialization data corresponding to the key-frame point clouds based on the point cloud feature data and factor data of each key-frame point cloud; and saves the feature serialization data and factor serialization data of each key-frame point cloud to a specific map data set. Transforming the point cloud data of the key-frame point clouds into point cloud feature data and factor data, and serially storing them in a database greatly reduces the data volume, facilitates quickly extracting data from the specific map data set, improves the efficiency of loading the map, and facilitates quickly uploading data.

[0187] Embodiment 3

[0188] The present embodiment provides an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein, the memory stores instructions executable by the one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the method steps as described in the above embodiment.

[0189] Embodiment 4

[0190] The embodiment of the present application provides a non-volatile computer storage medium, and the computer storage medium stores computer-executable instructions, and the computer-executable instructions can execute the method steps as described in the above embodiment.

[0191] Finally, it should be noted that the embodiments in this specification are described in a progressive manner. Each embodiment focuses on the differences from other embodiments. For the same or similar parts among the embodiments, reference can be made to each other. For the systems or devices disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the description is relatively simple. For the relevant parts, reference can be made to the description in the method section.

[0192] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements on some of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims

1. A method for storing mapping data, characterized in that: include: Acquire a local point cloud of a local area, wherein the local point cloud includes a plurality of frame point clouds; Determine a plurality of discrete key frame point clouds in the plurality of frame point clouds, wherein the plurality of key frame point clouds include at least a first frame point cloud and a last frame point cloud in the local point cloud; Based on the point cloud data of each of the plurality of key frame point clouds, point cloud feature data and factor data of the corresponding key frame point clouds are respectively generated; Based on the point cloud feature data and factor data of each key frame point cloud, feature serialization data and factor serialization data of the corresponding key frame point cloud are generated respectively; The feature serialization data and factor serialization data of each keyframe point cloud are saved in a specific map data set.

2. The method according to claim 1, characterized in that The step of determining a plurality of discrete key frame point clouds from the plurality of frame point clouds comprises: Determine among the multiple frame point clouds that the first frame point cloud and the last frame point cloud are respectively key frame point clouds; Among the multiple frame point clouds, starting from the positioning data of the first frame point cloud, a frame point cloud is determined as a key frame point cloud every preset extraction distance value.

3. The method according to claim 1, characterized in that The step of determining a plurality of discrete key frame point clouds from the plurality of frame point clouds comprises: Determine among the multiple frame point clouds that the first frame point cloud and the last frame point cloud are respectively key frame point clouds; Among the multiple frame point clouds, starting from the positioning time point of the first frame point cloud, a frame point cloud is determined as a key frame point cloud every preset extraction time length.

4. The method according to claim 1, characterized in that: The step of generating point cloud feature data and factor data of corresponding key frame point clouds based on the point cloud data of each of the plurality of key frame point clouds comprises at least: Based on the first pose data and the first positioning time point of each key frame point cloud, the target frame point cloud corresponding to the key frame point cloud is determined from the historical map data set, wherein the second pose data of the target frame point cloud of each key frame point cloud and the first pose data of the corresponding key frame point cloud meet the preset proximity condition, and the time difference between the second positioning time point of the target frame point cloud corresponding to the key frame point cloud and the first positioning time point of the corresponding key frame point cloud meets the preset time difference condition; Generate historical relative pose data of the corresponding key frame point cloud based on the second pose data of the target frame point cloud of each key frame point cloud and the first pose data of the corresponding key frame point cloud; Determine the first frame number of each key frame point cloud, the second frame number of the target frame point cloud corresponding to the key frame point cloud, and the historical relative pose data of the corresponding key frame point cloud to form the loop factor data of the corresponding key frame point cloud.

5. The method according to claim 1, characterized in that The step of generating point cloud feature data and factor data of corresponding key frame point clouds based on the point cloud data of each of the plurality of key frame point clouds comprises at least: Determine, from the multiple key frame point clouds, multiple intermediate key frame point clouds other than the first frame point cloud and the last frame point cloud; Determining, from the plurality of intermediate key frame point clouds, an adjacent intermediate key frame point cloud of the corresponding intermediate key frame point cloud based on a frame sequence number of each intermediate key frame point cloud; Based on the pose data of each intermediate key frame point cloud and the pose data of the adjacent intermediate key frame point cloud of the corresponding intermediate key frame point cloud, the adjacent relative poses of the corresponding intermediate key frame point cloud are obtained; Determine the frame number of each intermediate key frame point cloud and the adjacent relative poses of the corresponding intermediate key frame point cloud to form the odometer factor data of the corresponding intermediate key frame point cloud.

6. The method according to claim 1, characterized in that The step of generating point cloud feature data and factor data of corresponding key frame point clouds based on the point cloud data of each of the plurality of key frame point clouds comprises at least: Among the multiple key frame point clouds, the first frame point cloud and the last frame point cloud are determined to be positioning key frame point clouds respectively, and starting from the positioning data of the first frame point cloud, a key frame point cloud is determined to be a positioning key frame point cloud every preset positioning distance value; The positioning factor data of the corresponding positioning key frame point cloud is composed based on the frame number and absolute pose data of each positioning key frame point cloud.

7. The method according to claim 1, characterized in that The point cloud feature data includes corner feature point data and surface feature point data of obstacles.

8. The method according to claim 1, characterized in that The method further comprises: When passing through the local area, acquiring the feature serialization data and the factor serialization data of the plurality of key frame point clouds from the specific map data set; Deserializing the factor serialized data and the feature serialized data of each of the plurality of key frame point clouds respectively, and obtaining the factor data and the point cloud feature data of the corresponding key frame point clouds respectively; constructing a factor graph based on the factor data of the plurality of key frame point clouds; Obtaining the pose data of each of the plurality of key frame point clouds based on the factor graph; An electronic map of the local area is generated based on the pose data and point cloud feature data of the multiple key frame point clouds.

9. The method according to claim 8, characterized in that The step of acquiring the feature serialization data and factor serialization data of the plurality of key frame point clouds from the specific map data set includes: Obtaining factor serialized data of the plurality of key frame point clouds from the specific map data set, and A preset number of latest feature serialization data are obtained from the specific map data set.

10. A storage device for mapping data, characterized in that: include: A point cloud acquisition unit, used to acquire a local point cloud of a local area, wherein the local point cloud includes a plurality of frame point clouds; A determination unit, configured to determine a plurality of discrete key frame point clouds from the plurality of frame point clouds, wherein the plurality of key frame point clouds at least include a first frame point cloud and a last frame point cloud in the partial point cloud; A data generating unit, configured to generate point cloud feature data and factor data of corresponding key frame point clouds based on the point cloud data of each of the plurality of key frame point clouds; A serialization unit, used to generate feature serialization data and factor serialization data of the corresponding key frame point cloud based on the point cloud feature data and factor data of each key frame point cloud; The saving unit is used to save the feature serialization data and factor serialization data of each key frame point cloud into a specific map data set.