Map construction method and device, data processing method and device and electronic equipment

By receiving and processing crowdsourcing data uploaded by the client, and building a target map, the problem of low accuracy and efficiency of adjusting the job location in the existing technology is solved, and a more stable and efficient map update is achieved.

CN119437205APending Publication Date: 2025-02-14LUOBO NETWORK (HANGZHOU) INFORMATION TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411686191.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-22
Publication Date
2025-02-14

AI Technical Summary

Technical Problem

In the prior art, the method of adjusting the operating points is low in accuracy and low efficiency, and cannot meet actual needs.

Method used

By receiving crowdsourcing data uploaded by the client, a crowdsourcing map including the original coordinate points is determined, and the original parameter information hashmap is obtained to obtain the target parameter information, and then a target map is built.

Benefits of technology

Improves the stability and continuity of map updates, reduces the risk of map inconsistency caused by perceived errors, and ensures the safety and efficiency of operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119437205A_ABST
    Figure CN119437205A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a map construction method and device, a data processing method and device and electronic equipment, and relates to the technical field of computers. The method comprises the following steps: receiving crowdsourcing data uploaded by a client; wherein the crowdsourcing data comprises at least one crowdsourcing frame, and the crowdsourcing frame corresponds to one piece of point cloud data; determining a crowdsourcing map comprising the original coordinate points; wherein the original coordinate points are coordinate points corresponding to the point cloud data; performing Hash mapping on the original parameter information corresponding to the original coordinate point to obtain target parameter information of the target coordinate point; wherein the original parameter information comprises at least one of the following items: first parameter information of the point cloud data, second parameter information of a reference coordinate point corresponding to the original coordinate point in the reference map, and historical parameter information of the reference coordinate point; and constructing a target map according to the target parameter information. By adopting the embodiment of the invention, the stability and continuity of map updating are enhanced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular to a map construction method, a data processing method, a map construction device, a data processing device, an electronic device, and a computer-readable storage medium. Background Art

[0002] During the actual driving process of the vehicle, it may not be possible to drive along the established reference route due to weather, road damage, etc. In some special environments, for example, during the long-term operation of a mine, the operating environment will be affected by more factors, especially mining activities and climate change, and these factors will continue to change over time, causing the conditions of the operating and transportation environment to change accordingly. For example, changes in terrain, soil settlement, and weather changes (such as rainfall, wind and sand, etc.) will all have an impact on the operating point, for example, causing the actual operating point to shift; in more serious cases, it may cause safety hazards.

[0003] Therefore, in the actual operation process, it is necessary to timely combine the above factors and adjust the operation points in time to ensure the safety of vehicle driving and the smooth progress of the operation, and improve the operation efficiency. However, the current method of adjusting the operation points has low accuracy and efficiency, and cannot meet the actual needs. Summary of the invention

[0004] The embodiments of the present disclosure provide a map construction method and a data processing method to solve the problem of low accuracy and low efficiency in adjusting the operation points in the related art.

[0005] Correspondingly, the embodiments of the present disclosure also provide a map construction device and a data processing device, an electronic device and a computer-readable storage medium to ensure the implementation and application of the above method.

[0006] In one aspect, an embodiment of the present disclosure provides a map construction method, the method comprising: Receive crowdsourced data uploaded by a client; wherein the crowdsourced data includes at least one crowdsourced frame, and the crowdsourced frame corresponds to a point cloud data; Determine a crowdsourced map including original coordinate points; wherein the original coordinate points are coordinate points corresponding to the point cloud data; Hash mapping is performed on the original parameter information corresponding to the original coordinate point to obtain the target parameter information of the target coordinate point; wherein the original parameter information includes at least one of the following: The first parameter information of the point cloud data, the second parameter information of the reference coordinate point corresponding to the original coordinate point in the reference map, and the historical parameter information of the reference coordinate point; wherein the parameter information includes at least one of the coordinate information, a label indicating the coordinate type, and a time value; According to the above target parameter information, a target map is constructed.

[0007] On the other hand, an embodiment of the present disclosure provides a data processing method, the method comprising: Based on a preset heartbeat mechanism, a reference map is obtained from a server using a first bandwidth; wherein, in the process of the client obtaining the reference map, other applications installed on the client run normally; In the process of working according to the reference map, the point cloud data of the client's location and the time value when the point cloud data is collected are collected in real time; Based on the heartbeat mechanism, the point cloud data and the time value when the point cloud data was collected are uploaded to the server as a crowdsourcing frame in the crowdsourcing data; Among them, the heartbeat mechanism includes: re-executing the preset operation when the execution time of the preset operation exceeds the preset time or the above preset operation is not successfully executed; the preset operation includes: obtaining a reference map and uploading crowdsourcing data.

[0008] On the other hand, an embodiment of the present disclosure provides a map construction device, the device comprising: A data transceiver module, used to receive crowdsourced data uploaded by a client; wherein the crowdsourced data includes at least one crowdsourced frame, and the crowdsourced frame corresponds to a point cloud data; Map building blocks that do the following: Determine a crowdsourced map including original coordinate points; wherein the original coordinate points are coordinate points corresponding to the point cloud data; Hash mapping is performed on the original parameter information corresponding to the original coordinate point to obtain the target parameter information of the target coordinate point; wherein the original parameter information includes at least one of the following: The first parameter information of the point cloud data, the second parameter information of the reference coordinate point corresponding to the original coordinate point in the reference map, and the historical parameter information of the reference coordinate point; wherein the parameter information includes at least one of the coordinate information, a label indicating the coordinate type, and a time value; According to the above target parameter information, a target map is constructed.

[0009] On the other hand, an embodiment of the present disclosure provides a data processing device, the device comprising: A data transceiver module is used to obtain a reference map from a server using a first bandwidth based on a preset heartbeat mechanism; wherein, in the process of the client obtaining the reference map, other applications installed on the client run normally; A data processing module, used for collecting point cloud data of the location of the client and the time value when collecting the point cloud data in real time during the process of operating according to the reference map; The data transceiver module is further used to upload the point cloud data and the time value when the point cloud data is collected to the server as a crowdsourcing frame in the crowdsourcing data based on the heartbeat mechanism; Among them, the above-mentioned heartbeat mechanism includes: when the execution time of the preset operation exceeds the preset time or the above-mentioned preset operation is not successfully executed, the above-mentioned preset operation is re-executed; the above-mentioned preset operation includes: obtaining a reference map and uploading crowdsourcing data.

[0010] On the other hand, an embodiment of the present disclosure provides an electronic device, including a processor and a memory, wherein the processor and the memory are connected to each other; The memory is used to store computer programs; The above-mentioned processor is configured to execute the map construction method or data processing method provided by the embodiment of the present disclosure when calling the above-mentioned computer program.

[0011] On the other hand, an embodiment of the present disclosure provides a computer-readable storage medium, which stores a computer program. The computer program is executed by a processor to implement the map construction method or data processing method provided by the embodiment of the present disclosure.

[0012] On the other hand, an embodiment of the present disclosure provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the map construction method or data processing method provided by the embodiment of the present disclosure is implemented.

[0013] In an embodiment of the present application, at least one of coordinate information, a label indicating the coordinate type, and a time value is used as parameter information. By performing hash mapping on the original parameter information including the first parameter information of the point cloud data, the second parameter information of the reference coordinate point corresponding to the original coordinate point in the reference map, and the historical parameter information of the reference coordinate point, the target parameter information of the target coordinate point is obtained, and a target map is constructed based on the target parameter information. In this way, by adopting a hash mapping method, the historical parameter information of the coordinate point and the latest crowdsourced data are combined to perform a map update, which can enhance the stability and continuity of the map update while reducing the risk of map inconsistency due to perception errors, thereby providing reliable support for downstream work (for example, the client uses a continuously updated map to perform work processes, etc.).

[0014] In addition, by adopting the crowdsourcing frame method to receive crowdsourcing data, crowdsourcing data can be received more efficiently. When the map is updated subsequently, the map can be updated based on each crowdsourcing frame received, and data processing and analysis can be performed more quickly and efficiently, ensuring that in high concurrency situations, map updates can still be performed with excellent performance. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] In order to more clearly illustrate the technical solutions in the embodiments of the present disclosure, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0016] Figure 1 One of the flowcharts of the map construction method provided by the embodiment of the present disclosure is shown; Figure 2 One of the scene schematic diagrams of the map construction method provided by the embodiment of the present disclosure is shown; Figure 3 A second schematic diagram of a scene of the map construction method provided by an embodiment of the present disclosure is shown; Figure 4 A third schematic diagram of a scene of the map construction method provided by an embodiment of the present disclosure is shown; Figure 5 A fourth schematic diagram of a scene of the map construction method provided by an embodiment of the present disclosure is shown; Figure 6 A schematic diagram showing a flow chart of a data processing method provided by an embodiment of the present disclosure is shown; Figure 7 A schematic diagram of the architecture of a map construction system provided by an embodiment of the present disclosure is shown; Figure 8 The second flowchart of the map construction method provided by the embodiment of the present disclosure is shown; Fig. 9 A schematic diagram showing the structure of a map construction device provided by an embodiment of the present disclosure is shown; Fig.10 A schematic diagram showing the structure of a data processing device provided by an embodiment of the present disclosure is shown; Fig.11 A schematic structural diagram of an electronic device provided by an embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0017] The following will be combined with the drawings in the embodiments of the present disclosure to clearly and completely describe the technical solutions in the embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, not all of the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present disclosure.

[0018] It should be noted that in the optional embodiments of the present application, when the above embodiments of the present application are applied to specific products or technologies, the image object information (such as user information appearing in the image, for example, user avatar, user nickname, etc.) and other related data involved need to obtain the permission or consent of the responding object, and the collection, use and processing of the relevant data need to comply with the relevant laws, regulations and standards of the relevant countries and regions. In other words, in the embodiments of the present application, the data related to the object involved is obtained with the authorization and consent of the object and in compliance with the relevant laws, regulations and standards of the country and region.

[0019] An embodiment of the present application provides a map construction method, which can be executed by any electronic device, and the electronic device can be a user terminal or a server.

[0020] It should be noted that the above-mentioned user terminal [also referred to as user equipment (UE)] can be a smart phone, a tablet computer, a laptop computer, a desktop computer, etc. The user terminal can be a physical device or a virtual device implemented based on cloud technology, and the embodiments of the present application do not limit this.

[0021] The above-mentioned servers can be independent physical servers, or they can be server clusters or distributed systems composed of multiple physical servers. They can also be cloud servers or server clusters that provide basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), as well as big data and artificial intelligence platforms.

[0022] Those skilled in the art should understand that the above-mentioned user terminals and servers are only examples, and other existing or future terminals or servers that may appear, if applicable to the present application, should also be included in the scope of protection of the present application and are included here by reference.

[0023] Optionally, with the continuous development of technology, the amount of calculation required for the data processing process is constantly increasing. In the embodiment of the present application, it is preferred to use a server to execute the map construction method.

[0024] See also Figure 1 , the method may include: Step 101, receiving crowdsourced data uploaded by a client; wherein the crowdsourced data includes at least one crowdsourced frame, and the crowdsourced frame corresponds to a point cloud data.

[0025] Optionally, the client may be a vehicle-mounted client. Accordingly, the crowdsourcing data may include vehicle surrounding environment information (ie, point cloud data) collected by the vehicle-mounted client during vehicle operation.

[0026] Optionally, the vehicle operation process may include but is not limited to the vehicle driving process (e.g., normal vehicle driving), the vehicle excavation process (e.g., a tunnel boring machine performing excavation operations), the vehicle transportation process (e.g., the vehicle loading or unloading materials), etc.

[0027] Optionally, the point cloud data may include, but is not limited to, terrain semantic information, vehicle location information (e.g., coordinate information of the vehicle's surroundings), origin information corresponding to the point cloud data, and a timestamp when the point cloud data was collected. The terrain semantic information may include, but is not limited to, whether the vehicle can drive normally, whether the vehicle cannot move forward (e.g., there are piles in front of the vehicle, there is no drivable road in front of the vehicle, etc.), and the difficulty of vehicle excavation.

[0028] Taking a mine car as an example, multiple sensors (for example, radars) can be installed on the mine car, and there may be multiple mine cars. Point cloud data can be collected by sensors installed on the mine cars. Through multiple mine cars and multiple sensors on the mine cars, all-round information collection of the mine car operating area in the mining area can be achieved.

[0029] Optionally, when the amount of crowdsourced data is large, a larger transmission bandwidth may be required, reducing the transmission rate, etc. In an embodiment of the present application, crowdsourced data can be transmitted in the form of crowdsourced frames, for example, a point cloud data is carried in a crowdsourced frame for transmission. In this way, when transmitting crowdsourced data, the time sequence of the crowdsourced frames can be obtained, and a single frame can be transmitted each time in the form of crowdsourced frames, thereby reducing the transmission bandwidth required for transmitting crowdsourced data and reducing the requirements for transmission bandwidth. In addition, during the transmission process, after the crowdsourced frame is collected, a single crowdsourced frame can be transmitted, without waiting for all the point cloud data to be completed before merging and transmitting the collected crowdsourced frames, thereby increasing the transmission rate.

[0030] As an example, see Figure 2 , take the client as a vehicle-mounted terminal (hereinafter referred to as "vehicle end"), the vehicle as a mine car, and the need to carry out a pick-up operation as an example. Assume that in the mining operation area, the coverage range of the vehicle's surrounding environment that can be detected by the vehicle end is 200m (meters) × 200m, which can cover the entire pick-up area. Then, the coverage range of each crowdsourcing frame in the crowdsourcing data can be set to 200m×200m, that is, the resolution of the crowdsourcing frame is 0.25, that is, in one crowdsourcing frame, multiple original coordinate points can be included, and the coverage range of each coordinate point is the information in a square area of ​​0.25m×0.25m, and the square area is used as an information area.

[0031] Step 102, determining a crowdsourced map including original coordinate points; wherein the original coordinate points are coordinate points corresponding to the point cloud data.

[0032] Optionally, after receiving the crowdsourcing data, the original coordinate point corresponding to the crowdsourcing frame and the first parameter information corresponding to the original coordinate point can be determined based on parameterized processing of the point cloud data carried by each crowdsourcing frame, for example, the coordinate information of the original coordinate point, a label indicating the coordinate type of the original coordinate point, and the time value of the original coordinate point.

[0033] Optionally, the coordinate type of the original coordinate point may be determined according to actual needs. After the crowdsourcing data is acquired, the coordinate type of the original coordinate point is determined based on the point cloud data carried in the crowdsourcing frame corresponding to the original coordinate point.

[0034] Optionally, the location information of the original coordinate point in the crowdsourced map can be determined based on the first coordinate information of the original coordinate point; and the environmental information of each original coordinate point in the crowdsourced map can be determined based on the type information of all the original coordinate points; and the time value of the original coordinate point can be stored, etc., so as to construct a crowdsourced map including the original coordinate points.

[0035] Step 103, performing hash mapping on the original parameter information corresponding to the original coordinate point to obtain target parameter information of the target coordinate point; wherein the original parameter information includes at least one of the following: The first parameter information of the above-mentioned point cloud data, the second parameter information of the reference coordinate point corresponding to the above-mentioned original coordinate point in the reference map, and the historical parameter information of the above-mentioned reference coordinate point; wherein the above-mentioned parameter information includes at least one of the coordinate information, a label indicating the coordinate type, and a time value.

[0036] Optionally, the coordinate system and the coordinate origin adopted by the original coordinate point and the reference coordinate point are consistent.

[0037] Optionally, the second parameter information of the reference coordinate point is the parameter information of each reference coordinate point currently used in the reference map. The historical parameter information of the reference coordinate point is the parameter information of the reference coordinate point determined in the historical operation of updating the reference map before the reference map is updated based on crowdsourcing data. The process of determining the parameter information of the reference coordinate point can refer to the process of determining the coordinate information of the original coordinate point mentioned above, which will not be described in detail here.

[0038] It can be understood that the historical parameter information of the reference coordinate point may include multiple groups, and the time value in the historical parameter information of the reference coordinate point should be the same as the time value in the second reference information, or earlier than the time value in the second reference information.

[0039] Optionally, when performing hash mapping on the original parameter information corresponding to the original coordinate point, a hash map (also called a hash map) can be constructed first, and then the hash key can be determined. Hash mapping is performed based on the hash key to determine the index position corresponding to each hash key, and the hash array is filled in the corresponding index position to obtain a complete hash map, and the target parameter information is determined based on the information stored in each hash array in the hash map.

[0040] Optionally, the reference map may include, but is not limited to, a map including only the client operation area, a map including the administrative area where the client operation area is located, and the like.

[0041] Optionally, when the reference map includes a map of the administrative area where the client's operating area is located, the coordinate points in the target area can be directly used as reference coordinate points; or the target area corresponding to the area where the crowdsourced map is located can be intercepted in the reference map according to the area where the crowdsourced map is located, and the coordinate points in the target area can be used as reference coordinate points. Compared with the former, the latter requires less data processing.

[0042] Optionally, when a target area corresponding to the area where the crowdsourcing map is located is intercepted in the reference map based on the area where the crowdsourcing map is located, the coordinate information of the corresponding reference coordinate point in the reference map can be determined based on the coordinate information of the original coordinate point at the edge position in the crowdsourcing map, and the position is outlined in the reference map based on the coordinate information of the corresponding reference coordinate point in the reference map, and the outlined area is determined as the local map that needs to be updated in the reference map (i.e., the target area).

[0043] Optionally, the original coordinate points at the edge of the crowdsourced map can be determined based on the maximum and minimum values ​​of the original coordinate points under each coordinate axis. Figure 2 , p1 (minimum value on the x-axis, maximum value on the y-axis), p2 (maximum value on the x-axis, maximum value on the y-axis), p3 (maximum value on the x-axis, minimum value on the y-axis), and p4 (minimum value on the x-axis, minimum value on the y-axis) can be used as the original coordinate points at the edge of the crowdsourcing map.

[0044] Accordingly, see Figure 3 , p1' corresponding to p1, p2' corresponding to p2, p3' corresponding to p3, and p4' corresponding to p4 in the reference map (i.e., the global map) can be determined, and the map indicated by the area enclosed by p1', p2', p3', and p4' is determined as the local map (i.e., the target area) that needs to be updated in the reference map, and the part of the reference map except the target area is the non-calculation area (i.e., the non-target area).

[0045] Step 104: construct a target map based on the target parameter information.

[0046] Optionally, the method of constructing a crowdsourcing map according to the first parameter information corresponding to the original coordinate points can be referred to, and a target map can be constructed according to the target parameter information, which will not be elaborated here.

[0047] Optionally, in the case where the reference map includes a map of the administrative area where the client's operating area is located, if when determining the reference coordinate points, the target area corresponding to the area where the crowdsourcing map is located is first intercepted in the reference map based on the area where the crowdsourcing map is located, and the coordinate points in the target area are used as reference coordinate points. After determining the target map, the target map can be spliced ​​with the non-target area in the reference map except the target area to obtain an updated target map, thereby completing the update of the reference map.

[0048] In an embodiment of the present application, by adopting a hash mapping method to combine the historical parameter information of the coordinate points with the latest crowdsourced data to update the map, the stability and continuity of the map update can be enhanced while reducing the risk of map inconsistency due to perception errors, thereby providing reliable support for downstream work (for example, the client uses a continuously updated map to perform operations, etc.).

[0049] In addition, by adopting the crowdsourcing frame method to receive crowdsourcing data, crowdsourcing data can be received more efficiently. When the map is updated subsequently, the map can be updated based on each crowdsourcing frame received, and data processing and analysis can be performed more quickly and efficiently, ensuring that in high concurrency situations, map updates can still be performed with excellent performance.

[0050] In some embodiments, determining the crowdsourced map including the original coordinate points may include: Determine the coordinate information in the first parameter information as the first coordinate information of the original coordinate point, and determine the time value when the point cloud data is collected as the time value corresponding to the original coordinate point; perform semantic feature analysis on other information in the point cloud data except the coordinate information to determine the label corresponding to the original coordinate point; A crowdsourcing map is constructed based on the first coordinate information of the original coordinate points, the corresponding time value and the label.

[0051] Optionally, in an embodiment of the present application, a label indicating a coordinate type may be determined based on the needs of the client for performing operations, for example, based on the requirements for generating an operation point.

[0052] As an example, during mining operations, usually, the mine car needs to determine whether to perform ground walking, wall excavation and other operations based on the map, and the coordinate types of the coordinate points can be divided into ground coordinates and wall coordinates.

[0053] Optionally, in order to speed up data processing efficiency, semantic training operations can be performed on the neural network model based on the point cloud data corresponding to the historical coordinate points to obtain a neural network model that can determine the labels of the coordinate points; in this way, in the subsequent processing process, the point cloud data corresponding to a certain coordinate point can be directly input into the neural network model, and the point cloud data can be analyzed by the neural network model to obtain the label of the coordinate point.

[0054] In some embodiments, when parameterizing the point cloud data carried by each crowdsourcing frame, the coordinate point indicated by the coordinate information (i.e., the position information, the coordinate information in the first parameter information) relative to the original coordinate point in the point cloud data is used as the original coordinate point, and the coordinate information in the point cloud data is used as the first coordinate information of the corresponding original coordinate point. ; The timestamp when collecting point cloud data is used as the time value corresponding to the original coordinate point ; and use the preset neural network model to perform semantic analysis on the information in the point cloud data other than the coordinate information and timestamp (for example, the above-mentioned terrain semantic information, the location information of the vehicle), and determine the semantic features (i.e., semantic categories) of the original coordinate points, that is, determine the labels of the original coordinate points In this way, the first parameter information of the original coordinate point can be expressed as: .

[0055] As an example, during mining operations, assuming that the label includes the ground or the wall, based on the collected point cloud data, the original coordinate points can be expressed as: ,or, .

[0056] Optionally, considering the errors in collecting point cloud data on the client side, after the crowdsourced map is constructed, the crowdsourced map can be further denoised. Specifically, any of the following methods can be used to remove noise points in the crowdsourced map (for example, deleting the ground coordinate points behind the wall): (1) For each original coordinate point, determine a preset area with a preset range and with the original coordinate point as the center. If within the preset area, the label of the original coordinate point is different from the labels of other coordinate points except the original coordinate point, delete the original coordinate point.

[0057] (2) For any original coordinate point, if any diameter including the original coordinate point is determined within the preset area corresponding to the original coordinate point, if for a certain diameter, the labels of the original coordinate points on one side of the diameter are all wall, and the labels of the original coordinate points on the other side of the diameter are also all wall, and the label of the original coordinate point is the ground, then delete the original coordinate point.

[0058] By denoising crowdsourced maps, we can avoid the situation where the map data becomes redundant and invalid due to the continuous accumulation of noise in the map, and even affects the subsequent point generation work.

[0059] In the above embodiment, by determining the first coordinate information, the corresponding time value and the label of the original coordinate point, and constructing a crowdsourcing map based on the first coordinate information, the corresponding time value and the label of the original coordinate point, parameterized processing of the point cloud data can be achieved, paving the way for subsequent map update operations.

[0060] In some embodiments, the above-mentioned hash mapping of the original parameter information corresponding to the original coordinate point to obtain the target parameter information of the target coordinate point may include: Determine the size of the hash mapping table corresponding to the target map according to the first coordinate information of the original coordinate point, the second coordinate information of the reference coordinate point, and the resolution of the crowdsourcing frame; wherein the hash mapping table is used to store at least one hash array; Determine a first hash key according to the first coordinate information; and determine a second hash key according to the second coordinate information; Perform hash mapping in the hash mapping table according to the first hash key and the second hash key to determine a storage location of the hash array in the hash mapping table; Determine the element stored in the hash array corresponding to the storage location according to the first parameter information, the second parameter information and the historical parameter information; Get the target parameter information according to the elements stored in the hash array.

[0061] Optionally, a size value of a hash map (also referred to as a “hash map”) under each coordinate axis may be determined according to the first coordinate information and the second coordinate information.

[0062] Optionally, the maximum number of elements stored in each hash array in the hash map (i.e., the capacity of the hash array) can be set according to actual needs. Naturally, when determining the size of the hash map, it is necessary to adjust the size of the hash map according to the capacity of the hash array. For example, the size of the hash map corresponding to the target map can be determined by multiplying the size of the hash map under all coordinate axes by the preset maximum number of elements in the hash array, so that a preset number of elements can be stored in each hash array of the hash map.

[0063] Optionally, the storage position of the hash array in the hash mapping table is determined by determining a hash key according to the first coordinate information and the second coordinate information respectively, and performing hash mapping in the hash mapping table according to the hash key; in this way, the storage positions of the hash array corresponding to the original coordinate point and the hash array corresponding to the reference coordinate point can be simultaneously mapped in the hash mapping table.

[0064] Furthermore, by determining the elements stored in the hash array corresponding to the above storage location based on the first parameter information, the second parameter information and the historical parameter information; and obtaining the target parameter information based on the elements stored in the hash array; in this way, the hash array corresponding to the original coordinate point and the hash array corresponding to the reference coordinate point can be stored in the hash mapping table at the same time, so as to realize map updating by combining historical parameter information and the latest crowdsourcing data.

[0065] In some embodiments, determining the size of the hash mapping table corresponding to the target map according to the first coordinate information of the original coordinate point, the second coordinate information of the reference coordinate point, and the resolution of the crowdsourced frame includes: Determine a maximum coordinate value, a minimum coordinate value, and a first difference between the corresponding maximum coordinate value and minimum coordinate value of the first coordinate information and the second coordinate information on each coordinate axis; Determining a size value of the hash mapping table on the above coordinate axis according to a quotient between the first difference and the resolution; The size of the hash mapping table corresponding to the target map is determined according to the product of the size values ​​under all coordinate axes and the preset maximum number of elements in the hash array.

[0066] Since the coordinate origin used by the original coordinate points and the reference coordinate points is consistent, the first coordinate information and the second coordinate information of all the original coordinate points can be directly compared to determine the maximum coordinate value and the minimum coordinate value of the first coordinate information and the second coordinate information under each coordinate axis; and the difference between the maximum coordinate value and the minimum coordinate value under each coordinate axis can be determined respectively.

[0067] Optionally, in the case of including multiple coordinate axes, the first difference should include the difference between the maximum coordinate value and the minimum coordinate value under each coordinate axis, that is, the difference between the maximum coordinate value and the minimum coordinate value under different coordinate axes is collectively referred to as the first difference. The size value of the hash mapping table under the above coordinate axis is also the size value of the hash mapping table under each coordinate axis.

[0068] Referring to the method for acquiring crowdsourcing data, the crowdsourcing data includes multiple crowdsourcing frames, and each crowdsourcing frame carries information in multiple information areas in the collection area corresponding to the client. Each information area corresponds to a coordinate point. Based directly on the coordinate information of the coordinate point, only the size value of the hash mapping table corresponding to each information area can be determined. The mapping relationship between each information area in the crowdsourcing frame and the collection area corresponding to the client is the "resolution of the crowdsourcing frame". Based on this, it is necessary to divide the first difference by the resolution to obtain the size value of the hash mapping table corresponding to the collection area corresponding to the client.

[0069] Optionally, for the convenience of calculation, in the embodiments of the present application, when calculating the quotient between two values, the obtained quotient may be rounded, for example, rounded up, rounded up, or rounded down, etc. The embodiments of the present disclosure do not limit the specific implementation means. In the following examples, in Formula 1, Formula 2, Formula 4, and Formula 5, when calculating the quotient between two values, the obtained quotient is rounded up for example.

[0070] Taking a rectangular coordinate system as an example, the coordinate axes of the rectangular coordinate system include an x-axis and a y-axis, and the directions of each coordinate axis are the x-direction and the y-direction. The size value of the hash map under the x-axis can be referred to in Formula 1: (Formula 1) in, is the maximum value (i.e. the maximum coordinate value) of the reference coordinate point and the original coordinate point (i.e. the first coordinate information and the second coordinate information) in the x direction. is the minimum value of the reference coordinate point and the original coordinate point in the x direction (i.e. the minimum coordinate value), is the set resolution (for example, 0.25m in the above example). The size of the hash map on the x-axis That is: determine the difference between the maximum value in the x direction and the minimum value in the x direction The quotient between this difference and the resolution Perform the rounding operation upward to get .

[0071] The size of the hash map on the y-axis can be found in Formula 2: (Formula 2) in, is the maximum value of the local reference coordinate point and the original coordinate point in the y direction, It is the minimum value of the reference coordinate point and the original coordinate point in the y direction. The size value of the hash map on the y axis That is: determine the difference between the maximum value in the y direction and the minimum value in the y direction The quotient between this difference and the resolution Perform the rounding operation upward to get .

[0072] It can be understood that the first difference includes as well as .

[0073] The size of the hash map can be found in Formula 3: (Formula 3) in, That is, the maximum number of elements in the hash array, that is, the maximum number of elements that can be stored for the above information area. That is: the size of the hash map on the x-axis , the size of the hash map on the y-axis And the product of the preset maximum number of elements.

[0074] Assume that the maximum number of elements is preset If it is 9, 9 elements can be stored in the hash array corresponding to one information area, including one second parameter information and 8 historical parameter information.

[0075] In the above embodiment, the hash mapping table is determined based on the mapping relationship between the collection area corresponding to the crowdsourcing frame and the collection area corresponding to the client and the capacity of each hash array in the hash mapping table; in this way, the obtained hash mapping table can store the parameter information of each coordinate point in the collection area corresponding to the client.

[0076] In some embodiments, determining the first hash key according to the first coordinate information includes: Determine a second difference between the coordinate value of the first coordinate information on the above coordinate axis and the minimum coordinate value corresponding to the coordinate axis; Determining a key value of the first hash key under the coordinate axis according to a quotient between the second difference and the resolution; Determine a first product between a key value of a first hash key on a first coordinate axis and a size value of the hash mapping table on the first coordinate axis; Determine a first sum between the key value of the first hash key under the second coordinate axis and the first product; A first hash key is determined according to the product of the first sum and a preset maximum number of elements.

[0077] Optionally, similar to the principle of the above-mentioned method of determining the size value of the hash mapping table, if the second difference between the coordinate value of the first coordinate information under the above-mentioned coordinate axis and the minimum coordinate value corresponding to the coordinate axis is directly used, only the key value of the hash key corresponding to each information area under a certain coordinate axis can be determined. Therefore, it is necessary to divide the second difference by the resolution to obtain the key value of the first hash key corresponding to the collection area corresponding to the client under the above-mentioned coordinate axis.

[0078] Optionally, the first coordinate axis may be any coordinate axis in the coordinate system where the first coordinate information and the second coordinate information are located, and the second coordinate axis may be a coordinate axis other than the first coordinate axis in the coordinate system. The number of the second coordinate axes may be one or more, which is not limited here.

[0079] In some embodiments, determining the second hash key according to the second coordinate information includes: Determine a third difference between the coordinate value of the second coordinate information on the coordinate axis and the minimum coordinate value corresponding to the coordinate axis; Determining a key value of the second hash key under the coordinate axis according to a quotient between the third difference and the resolution; Determine a second product between the key value of the second hash key on the first coordinate axis and the size value of the hash mapping table on the first coordinate axis; Determine a second sum between the key value of the second hash key under the second coordinate axis and the second product; A second hash key is determined according to the product of the second sum and the preset maximum number of elements.

[0080] Optionally, the second hash key may be determined by referring to the above method for determining the first hash key, which will not be described in detail here.

[0081] In order to more clearly illustrate the determination method of the first hash key and the second hash key, the following takes a plane rectangular coordinate system as an example. The coordinate axes of the plane rectangular coordinate system include an x-axis and a y-axis. The directions corresponding to each coordinate axis are the x-direction and the y-direction. Assuming that the y-axis is the first coordinate axis and the x-axis is the second coordinate axis, the hash key can be determined according to the following formulas 4 to 6: (Formula 4) (Formula 5) (Formula 6) in, That is the horizontal axis, which is also the x-axis mentioned above, That is the vertical axis, which is also the y-axis mentioned above. That is, the key value in the x-axis direction, That is, the key value in the y-axis direction, That is, the coordinate value of any coordinate point (for example, a reference coordinate point or an original coordinate point) under the x-axis (i.e., in the x-direction). That is, the coordinate value of the coordinate point below the y-axis (that is, in the opposite direction of the y-axis).

[0082] The key value in the x-axis direction That is: the coordinate value of the current coordinate point (original coordinate point or reference coordinate point) in the x-axis direction Based on the value of the reference coordinate point and the original coordinate point, subtract the minimum value in the x direction , for this difference The quotient between Perform the rounding operation upward to get .

[0083] Key value in the y-axis direction That is: the coordinate value of the current coordinate point (original coordinate point or reference coordinate point) in the y-axis direction Based on the value of the reference coordinate point and the original coordinate point, subtract the minimum value in the y direction , for this difference The quotient between Perform the rounding operation upward to get .

[0084] The key value corresponding to the current coordinate point , that is: the key value in the opposite direction of the x-axis at the current coordinate point On the basis of, add the key value of the current coordinate point in the y-axis direction The hash map has the same dimensions as the x-axis. The product (i.e., the first product or the second product) of the sum (i.e., the first sum or the second sum) and the preset maximum number of elements The product of .

[0085] In some embodiments, performing hash mapping in a hash mapping table according to the first hash key and the second hash key to determine a storage location of the hash array in the hash mapping table includes: Performing hash mapping in the hash mapping table according to the first hash key and the second hash key respectively, to determine the first index position and the second index position; When the first index position and the second index position are the same, the first index position is used as the storage position of the hash array; When the first index position and the second index position are different, the first index position and the second index position are respectively used as storage positions of different hash arrays.

[0086] When the first index position and the second index position are the same, it can be determined that the first coordinate information of the current original coordinate point is the same as the second coordinate information of the current reference coordinate point (that is, the storage positions of the original coordinate point and the reference coordinate point in the hash mapping table overlap), and in the hash mapping table, the parameter information of the original coordinate point and the reference coordinate point can be stored in the same hash array, that is, the first index position or the second index position can be directly used as the storage position of the hash array; when the first index position and the second index position are different, it can be determined that the first coordinate information of the current original coordinate point is different from the second coordinate information of the current reference coordinate point (that is, the storage positions of the original coordinate point and the reference coordinate point in the hash mapping table do not overlap), and in the hash mapping table, the parameter information of the original coordinate point and the reference coordinate point cannot be stored in the same hash array, that is, the parameter information of the original coordinate point and the parameter information of the reference coordinate point need to be stored respectively through different hash arrays, that is, the first index value and the second index value need to be used as storage positions of different hash arrays respectively.

[0087] Optionally, when the first coordinate information of the current original coordinate point is the same as the second coordinate information of the current reference coordinate point, the label of the original coordinate point may be the same as or different from the label of the reference coordinate point.

[0088] In some embodiments, determining the element stored in the hash array corresponding to the storage location according to the first parameter information, the second parameter information, and the historical parameter information includes: When the first index position and the second index position are the same, the first queue corresponding to the corresponding reference coordinate point is updated according to the first parameter information, and the updated first queue is used as an element stored in the corresponding hash array; wherein the first queue includes the second parameter information and the historical parameter information of the reference coordinate point; When the first index position and the second index position are different, a target queue is created according to the first parameter information, and the target queue is used as an element stored in the corresponding hash array; and the first queue is used as an element stored in the corresponding hash array.

[0089] Optionally, when updating the map, the second parameter information and historical parameter information of the reference coordinate point need to be considered. Therefore, in the hash mapping table, the second parameter information and historical parameter information of the reference coordinate point with the same coordinate information can be stored as the first queue in the corresponding hash array according to the coordinate information of the reference coordinate point.

[0090] As mentioned above, when the first index position and the second index position are the same, the first coordinate information of the current original coordinate point is the same as the second coordinate information of the current reference coordinate point, then the first parameter information of the original coordinate point, the second parameter information of the reference coordinate point and the historical parameter information of the reference coordinate point can be stored in the same hash array.

[0091] Optionally, as mentioned above, the number of elements stored in each hash array is limited, and an element in the hash array includes a set of parameter information of a coordinate point. Therefore, when storing the first parameter information of the original coordinate point, the second parameter information of the reference coordinate point, and the historical parameter information of the reference coordinate point in the same hash array, it is necessary to consider whether the number of elements in the same hash array is greater than the preset maximum number of elements, that is, it is necessary to ensure that the number of elements stored in each hash array is not higher than the preset maximum number of elements.

[0092] Optionally, if the number of elements corresponding to the second parameter information of the reference coordinate point and the historical parameter information of the reference coordinate point (i.e., the number of groups of the historical parameter information of the reference coordinate point + 1) is equal to the preset maximum number of elements, considering the real-time nature of map updates, it may be necessary to give priority to retaining the first parameter information of the original coordinate point, and delete part of the historical parameter information of the reference coordinate point, that is, it is necessary to update the first queue corresponding to the corresponding reference coordinate point according to the first parameter information, and use the updated first queue as the element stored in the corresponding hash array. For example, according to the order of time values, the historical parameter information with the earliest time value (i.e., the time value with the longest distance from the current time) is deleted, so that the first parameter information of the original coordinate point can be stored in the first queue.

[0093] As mentioned above, when the first index position and the second index position are different, the first coordinate information of the current original coordinate point is different from the second coordinate information of the current reference coordinate point, and the first coordinate information of the original coordinate point needs to be stored separately; in this case, the first parameter information can be directly stored as a target queue, or the first queue corresponding to the reference coordinate point can be stored as an element stored in the corresponding hash array.

[0094] In some embodiments, the updating of the first queue corresponding to the corresponding reference coordinate point according to the first parameter information may include any of the following: When the number of elements in the first queue is less than the preset maximum number of elements, adding the first parameter information to the first queue; The number of elements in the first queue is equal to the preset maximum number of elements (for example Figure 4As shown), according to the time value corresponding to each element in the first queue, remove the element in the first queue whose time value is farthest from the time value corresponding to the original coordinate point (that is, the time value is in front), and add the first parameter information to the first queue.

[0095] In this implementation, the first parameter information of the original coordinate point is retained first, and when the number of elements in the hash array is large, some historical parameter information of the reference coordinate point is deleted, which can improve the real-time performance of map updating.

[0096] In some embodiments, obtaining target parameter information according to the elements stored in the hash array may include: In the case where the hash array includes at least two elements, a weight value corresponding to the element is determined according to the time value corresponding to the element; and a weighted sum operation is performed on the coordinate information of all elements in the hash array according to the weight value corresponding to the element to obtain the target coordinate information; Under each label, determine the sum of the weight values ​​corresponding to all elements in the hash array; determine the label with the larger sum of weight values ​​as the target label; The latest time value corresponding to all elements in the hash array is used as the target time value; The target parameter information is determined according to the target coordinate information, target label and target time value.

[0097] Optionally, in the reference map, each historical parameter information corresponding to the reference coordinate point is represented by the second parameter information of the reference coordinate point, so the second parameter information of the reference coordinate point can be used as the performance data of the reference coordinate point. Accordingly, when determining the target parameter information, the target parameter information can also be determined based on each parameter information in each hash array (i.e., each element in the hash array).

[0098] Optionally, when an element is included in the hash array, parameter information corresponding to the element may be directly determined as the target parameter information.

[0099] Optionally, considering the real-time nature of map updates, when determining the target coordinate information, the weight value corresponding to each element in the hash array can be determined according to the time value corresponding to each element, and the coordinate information corresponding to each element can be weighted summed according to the weight value corresponding to each element to obtain the target coordinate information. The latest time value corresponding to all elements in the hash array is used as the target time value.

[0100] For example, you can set a lower weight value for an element with an earlier time value (i.e., a time value that is far from the time value corresponding to the original coordinate point) (i.e., an element that may deviate from the actual road conditions, an element that is about to expire), and set a higher weight value for an element with a later time value (i.e., a time value that is close to the time value corresponding to the original coordinate point) (i.e., an element that is most consistent with the actual road conditions).

[0101] Optionally, when determining the sum of weight values ​​corresponding to all elements in the hash array based on the label, if the sum of weight values ​​corresponding to a certain label is larger, it can be determined that in the process of detecting the coordinate point, the probability that the label of the coordinate point is determined to be the label is larger, and the label can be determined as the target label.

[0102] In the above embodiment, the weight value of each element is determined according to the time value corresponding to each element in the hash array, and the coordinate information of all elements in the hash array is weighted and summed to obtain the target coordinate information; the label with the larger sum of weight values ​​is determined as the target label; and the latest time value corresponding to all elements in the hash array is used as the target time value; in this way, the target coordinate information, the target label and the target time value are combined as the target parameter information, which can improve the accuracy, reliability and real-time performance of the determined target parameter information.

[0103] In some embodiments, determining the weight value corresponding to the above element according to the time value corresponding to the above element may include: Determine that the weight value corresponding to the first element in the hash array corresponding to the original coordinate point is 1; The weight values ​​corresponding to other elements in the hash array are determined by: the reciprocal of the difference between the time value corresponding to the first element and the time values ​​corresponding to other elements.

[0104] In the above embodiment, by setting a larger weight value for the first element corresponding to the original coordinate point and setting smaller weight values ​​for other elements according to the time value corresponding to each element in the hash array, and the element whose time value is farther away from the time value corresponding to the first element has a smaller corresponding weight value, the real-time performance of the determined target coordinate information and target parameter information can be improved in the subsequent map update process, thereby improving the real-time performance of the map update.

[0105] Optionally, assume that in a hash array, the time value corresponding to the first element is , the time values ​​corresponding to other elements are , the weight value corresponding to each element can be determined according to the following formula 7: (Formula 7) in, Indicates the weight value corresponding to each element, where the weight value corresponding to the first element is 1, and the weight values ​​corresponding to other elements are: the time value corresponding to the first element The time value corresponding to the current element The reciprocal of the difference between .

[0106] Optionally, under each label, the sum of the weight values ​​corresponding to all elements in the hash array can be determined by the following formula 8: (Formula 8) in, Indicates the weight corresponding to each label, It can represent any label. The weight corresponding to each label is the sum of the weight values ​​corresponding to the elements with the label. For example, the weight values ​​corresponding to all historical data with the label "ground" are added together to get , add up the weight values ​​corresponding to all historical data labeled as walls to get .

[0107] When determining the target label, the weights corresponding to each label can be compared, and the label with the larger corresponding weight value can be determined as the target label.

[0108] For example, in In the case of , the label of the performance data is determined to be the ground; In the case of , the label of the performance data is determined to be wall; and In this case, the label of the performance data is determined to be the label corresponding to the latest collected historical data.

[0109] Optionally, for a certain coordinate point, if the queue corresponding to the coordinate point has not been updated within a set period of time (e.g., 7 days), parameter information in which the interval between the corresponding time value stored in the hash array corresponding to the coordinate point and the current time value is greater than 7 days may also be deleted.

[0110] Optionally, after determining the elements in the hash array in the hash mapping table, the schematic diagram of the hash mapping table is as follows: Figure 5 As shown. Figure 5In the displayed local hash mapping table, the first hash array (directly based on the first queue corresponding to the reference coordinate point, or directly adding the parameter information of the original coordinate point to the first queue corresponding to the reference coordinate point) includes 3 historical data and 1 performance data, among which "not updated" means that the current element is empty and no information has been stored. The second hash array (directly based on the first queue corresponding to the reference coordinate point, or directly adding the parameter information of the original coordinate point to the first queue corresponding to the reference coordinate point, or updating the queue corresponding to the reference coordinate point according to the parameter information of the original coordinate point) includes 8 historical data and 1 performance data, and the third hash array (directly based on the target queue corresponding to the original coordinate point) includes 1 historical data and 1 performance data.

[0111] It should be noted that, due to the length of the picture, Figure 5 In fact, the first hash array, the second hash array, and the third hash array are adjacent to each other, that is, the last element in the first hash array shown in S1 is adjacent to the first element in the second hash array shown in S2, and the last element in the second hash array shown in S3 is adjacent to the first element in the third hash array shown in S4.

[0112] As another embodiment of the present application, a data processing method is provided. The data processing method can be executed by a client.

[0113] Optionally, the client may be a vehicle-mounted client. Accordingly, the crowdsourced data may be the vehicle surrounding environment information (i.e., point cloud data) collected by the vehicle-mounted client during the vehicle operation process. The vehicle operation process may include, but is not limited to, the vehicle driving process (e.g., normal vehicle driving), the vehicle excavation process (e.g., the excavation machine performs excavation operations), the vehicle transportation process (e.g., the vehicle loads or unloads materials), etc.

[0114] See also Figure 6 , the method comprising: Step 601: Based on a preset heartbeat mechanism, a reference map is obtained from a server using a first bandwidth; wherein, during the process of the client obtaining the reference map, other applications installed on the client run normally.

[0115] Among them, the heartbeat mechanism includes: re-executing the preset operation when the execution time of the preset operation exceeds the preset time or the above preset operation is not successfully executed; the preset operation includes: obtaining a reference map and uploading crowdsourcing data.

[0116] Optionally, the heartbeat status may include but is not limited to: whether the client successfully uploads the point cloud data, whether the latest map is successfully downloaded, and whether the version of the reference map stored locally on the client is consistent with the version of the acquired reference map.

[0117] Optionally, the execution time can be set according to actual needs and is not limited here. For example, the execution time can be 1 second.

[0118] Optionally, the bandwidth value of the first bandwidth may be set according to actual needs and is not limited here. For example, the first bandwidth may include 100 kb / s (kilobits per second).

[0119] By limiting the first bandwidth, when the client obtains the reference map, the normal operation of other applications will not be affected.

[0120] Step 602, in the process of operating according to the reference map, point cloud data of the location of the client and the time value when the point cloud data is collected are collected in real time.

[0121] Optionally, the process of collecting point cloud data by the client can refer to the above, which will not be repeated here.

[0122] Step 603: Based on the heartbeat mechanism, the point cloud data and the time value when the point cloud data is collected are uploaded to the server as a crowdsourcing frame in the crowdsourcing data.

[0123] Optionally, the process of uploading data based on the crowdsourcing frame can refer to the above-mentioned process of obtaining the intermediate security data, which will not be repeated here.

[0124] Optionally, after the client completes the transmission of crowdsourced data, it may send an indication message of "upload successful" to the server to trigger the server to perform a map update operation.

[0125] In some embodiments, when data is transmitted based on a heartbeat mechanism, if the client fails to successfully upload a crowdsourcing frame within a first preset time (e.g., 1s), the crowdsourcing frame may be re-uploaded; if the client fails to successfully obtain a reference map from the server within a second preset time (which may be the same as the first preset time, e.g., 1s), the reference map may be obtained from the server again.

[0126] In the embodiment of the present application, taking the application of the above-mentioned map updating method and data processing method in a mining environment as an example, the problems of operation point errors and low operation efficiency caused by changes in the working environment of the mining area can be solved. In the specific example, the above-mentioned data processing method can be referred to as "a transmission method for an overall data stream (i.e., a vehicle-cloud crowdsourcing data transmission method)", and the above-mentioned map updating method can be referred to as a "cloud-based map updating method (i.e., a crowdsourcing map updating method)".

[0127] See also Figure 7 The method can be implemented by the map updating system provided by the embodiment of the present application, in which the map updating system includes a vehicle side, a cloud side (that is, a storage device (e.g., a database) and a scheduler side, which can be implemented based on cloud technology, so it is called a cloud side), and a server side (which can also be implemented based on cloud technology, for example, called a cloud server side). Figure 7 The cloud and server in the above text can be collectively referred to as the "server".

[0128] In this method, before the vehicle arrives at the pick-up area, the map stored in the cloud storage is pulled down; in the pick-up area, based on the vehicle-side perception system, the point cloud data with semantic information of the current working environment in the global coordinate system is collected, and the actual working environment data is transmitted to the cloud at a high frequency; after leaving the pick-up area, based on the optimized transmission bandwidth, the collected point cloud data is uploaded to the cloud in the form of crowdsourcing frames, triggering the server to update the map, and providing the latest map for the next vehicle to enter the pick-up area, realizing high-frequency, real-time dynamic update of the map, so that the updated map can more accurately reflect the working environment, and further improve the autonomous driving effect in special environments such as mining areas. It can also include the following aspects: (1) By optimizing the transmission bandwidth and heartbeat mechanism for downloading or uploading map data on the vehicle side, the dependence on network speed is reduced, which greatly reduces the impact on other applications on the vehicle side.

[0129] (2) By performing semantic analysis on point cloud data and using map semantic information to update maps, the quality of map updates is improved and the depth of subsequent data analysis is enhanced.

[0130] (3) By combining historical environmental maps with the latest crowdsourced data, local maps are updated with structured data. This not only enhances the stability and continuity of map updates and reduces the risk of map inconsistencies due to perception errors, but also enables faster and more efficient data processing and analysis, ensuring that maps can still be updated with excellent performance under high concurrency conditions, providing reliable support for downstream data processing (for example, further promoting the development of intelligent management of mining areas, making the operation process smoother and more efficient).

[0131] (4) The vehicle-side, cloud-side and server-side work together to effectively reduce data transmission delays and improve the efficiency of information sharing compared to the traditional low-frequency update method. While real-time monitoring and obtaining updated mining environment information, the real-time and accuracy of map updates are significantly improved, better adapting to the complex and dynamically changing needs of the mining environment. When the vehicle arrives at the work point, it can operate based on the latest map data, ensuring the safety and accuracy of autonomous driving operations. This not only improves the overall efficiency of mining operations, but also enhances the ability of multiple vehicles to work together, ensuring the real-time and reliability of decision-making and path planning.

[0132] The following describes the vehicle-to-cloud crowdsourcing data transmission method and the crowdsourcing map update method in combination with specific examples.

[0133] 1. Car-to-Cloud Crowdsourcing Data Transmission Method 1. See Figure 7 ,When the mine car travels to a certain distance (for example, 100 meters) before the receiving area, in order to ensure that the mine car can generate key operations such as operation points and planned paths based on the latest map data, the vehicle side uses the heartbeat mechanism according to the heartbeat status and uses limited bandwidth (that is, the first bandwidth mentioned above) to pull down (that is, download) the latest version of the reference map from the cloud.

[0134] Among them, the heartbeat status may include: whether the vehicle side successfully uploads point cloud data, whether the latest map is successfully downloaded, and whether the version of the reference map stored locally on the vehicle side is consistent with the version of the latest version of the reference map stored in the cloud.

[0135] Among them, the heartbeat mechanism may include: if the vehicle side fails to successfully point cloud data within a first preset time (for example, 1s), then re-upload the point cloud data, and after the vehicle side successfully uploads the point cloud data, send "upload success indication information" to the cloud to trigger the server side to update the reference map; if the vehicle side fails to successfully pull down the latest version of the reference map from the cloud within a second preset time (which may be the same as the first preset time, for example, 1s), then pull down the latest version of the reference map from the cloud again.

[0136] The limited bandwidth may include 100 kb / s (kilobits per second).

[0137] In step 1, by limiting the bandwidth when pulling down the reference map and uploading point cloud data on the vehicle side, the vehicle side system can control network usage and reduce the impact on other applications on the vehicle side. By determining whether the version of the reference map stored locally on the vehicle side is consistent with the latest version of the reference map stored in the cloud, the latest version of the reference map can be obtained, so that the mine car can more accurately identify the operating area, ensure that the mine car can smoothly reach the predetermined operating point, and ensure the efficiency and safety of the operation.

[0138] 2. When the mine car arrives at the operation point smoothly and starts working, the vehicle end detects the point cloud data of the vehicle's surrounding environment in real time.

[0139] Among them, the point cloud data can refer to the above records, that is, it can include but is not limited to terrain semantic information, vehicle location information (for example, the vehicle's coordinate information, that is, the first coordinate information) and the origin information corresponding to the point cloud data (the origin information is consistent with the origin information of the coordinate system used by the reference map).

[0140] Among them, multiple radars are installed on the mine car, and there may be multiple mine cars, which can realize all-round information collection of the mine car operating area in the mining area.

[0141] 3. When the mine car completes its operation and is ready to leave the receiving area, the vehicle automatically uploads crowdsourced data to support the intelligent management of the entire mine area.

[0142] Optionally, the vehicle side can upload crowdsourcing data based on the heartbeat mechanism and limited bandwidth recorded in step 1 above.

[0143] Optionally, considering that during the transmission operation (for example, uploading or downloading) between the vehicle and the cloud, if the amount of data transmitted is too large, it will have a certain impact on the transmission rate and transmission bandwidth (for example, the transmission rate becomes lower, requiring a higher transmission bandwidth, etc.). In this embodiment of the present application, in order to ensure the accuracy of the operation, the transmitted data can be compressed.

[0144] 4. The cloud scheduler traverses the crowdsourced data uploaded by the vehicle at a fixed frequency (for example, 1s), traverses the paths in the crowdsourced data, and triggers the server to perform a crowdsourced map update operation when it determines that there is a new path.

[0145] In the vehicle-cloud crowdsourcing data transmission method, timely updating of maps can be achieved by detecting crowdsourcing data at a fixed frequency, ensuring the integrity and automation of the entire data chain; by checking the version information of the cloud storage and the current reference map on the server side, it is determined whether a new reference map needs to be pulled down from the server side to the cloud storage; by uploading crowdsourcing data to the designated path locally on the server side, the server side is triggered to perform crowdsourcing map update operations (for example, analyzing crowdsourcing data and reference map data, and making necessary map corrections and optimizations); by uploading the updated map from the server side and saving it to the cloud data management platform (i.e., cloud storage), it can be used for subsequent vehicle-side operations and path planning.

[0146] In short, through the collaborative work of the vehicle side, the cloud side and the server side, the data intelligent transmission process is completed, and crowdsourcing data acquisition and map updates in a multi-vehicle mining environment are realized. The entire data transmission link forms an efficient closed loop without human intervention, which significantly improves the efficiency and safety of mining operations. This real-time monitoring and feedback mechanism not only optimizes resource utilization, but also lays a solid foundation for the intelligent management of mining areas.

[0147] 2. Crowdsourcing map update method Figure 8 The corresponding flowchart) 1. Obtain crowd-sourced data. After obtaining the crowd-sourced data, perform parameterization on the crowd-sourced data to determine the parameter information of the original coordinate points in the crowd-sourced data.

[0148] Among them, in order to complete continuous and efficient mining operations, the work points rely on the update of the surrounding environment. In the embodiment of the present application, according to the generation requirements of the work points (i.e. ground walking or wall excavation), the coordinate types of the coordinate points are divided into ground coordinates and wall coordinates. Accordingly, the label indicating the coordinate type may include ground or wall.

[0149] (1) When performing parameterized processing on crowdsourced data, when performing parameterized processing on the point cloud data carried by each crowdsourced frame, the coordinate point indicated by the coordinate information relative to the original coordinate point in the point cloud data is used as the original coordinate point, and the coordinate information in the point cloud data is used as the first coordinate information of the corresponding original coordinate point. ; The timestamp when collecting point cloud data is used as the time value corresponding to the original coordinate point ; And use the preset neural network model to perform semantic analysis on the information in the point cloud data except the coordinate information and timestamp, and determine the semantic features (i.e., semantic categories) of the original coordinate points, that is, determine the labels of the original coordinate points In this way, the first parameter information of the original coordinate point can be expressed as: .

[0150] (2) Construct a crowdsourcing map based on the first parameter information of the original coordinate points.

[0151] 2. Perform preprocessing operations on crowdsourced maps to remove noise points in crowdsourced maps.

[0152] Optionally, use any of the following methods to remove noise points in the crowdsourced map (for example, delete ground coordinate points behind a wall): For each original coordinate point, a preset area with a preset range and with the original coordinate point as the center is determined. If within the preset area, the label of the original coordinate point is different from the labels of other coordinate points except the original coordinate point, the original coordinate point is deleted.

[0153] For any original coordinate point, if any diameter including the original coordinate point is determined in the preset area corresponding to the original coordinate point, if for a certain diameter, the labels of the original coordinate points on one side of the diameter are all walls, and the labels of the original coordinate points on the other side of the diameter are also walls, and the label of the original coordinate point is the ground, then delete the original coordinate point.

[0154] By denoising crowdsourced maps, we can avoid the situation where the map data becomes redundant and invalid due to the continuous accumulation of noise in the map, and even affects the subsequent point generation work.

[0155] 3. Obtain the global map stored locally on the server from the server, that is, the map of the entire range, for example, a map of the entire mining area, a map of the urban area where the entire mining area is located, etc.

[0156] The global map may be a global map with historical information. From the perspective of data structure, each reference coordinate point may correspond to an information area, and the information area may correspond to a queue. In one queue, eight historical data (i.e., historical parameter information) and one performance data of the same reference coordinate point may be stored. The performance data may be obtained by weighted summation and other processing operations based on the weight information of the eight historical parameter information of the reference coordinate point under each label. In general, the parameter information of the reference coordinate point may be represented by the performance data.

[0157] Optionally, the second parameter information of the reference coordinate point may be expressed as: .in, That is, the second coordinate information of the reference coordinate point; That is, the time value of the reference coordinate point; That is, the label of the reference coordinate point. The specific method of determining the second parameter information can refer to the above process of determining the target parameter information, which will not be described in detail here.

[0158] Among them, the latest collected historical data (i.e. Fig. 9 The weight value of new_data shown in the figure is 1, and the weight value of other historical data (i.e. Fig. 9 The weight value corresponding to the old_data shown is: the time value corresponding to the historical data The time value corresponding to the most recently collected historical data The reciprocal of the difference between .

[0159] After determining the performance data corresponding to the reference coordinate point, the parameter information corresponding to the reference coordinate point can be expressed as Figure 4 The queue (i.e. hash array) shown.

[0160] Optionally, the above is based on the example that the parameter information corresponding to the reference coordinate point includes 8 historical parameter information to determine the performance data corresponding to the reference coordinate point and the corresponding queue. In actual application, the above method can be referred to to determine the performance data corresponding to the reference coordinate point and the corresponding queue according to the actual number of parameter information corresponding to the reference coordinate point.

[0161] Through the above processing operations, it is possible to avoid the situation where the ground and the wall are incorrectly identified, which would cause the map to carry erroneous information when the map is updated based on the new data with erroneous semantics.

[0162] 4. Obtain the local map (i.e., reference map) from the global map.

[0163] In order to improve computing efficiency and reduce unnecessary calculations, in an embodiment of the present application, a map indicating an area in a global map corresponding to a crowdsourced map may be used as a reference map (ie, the second method of determining a reference map mentioned above).

[0164] 5. Update the reference map based on the crowdsourced map.

[0165] Optionally, in an embodiment of the present application, parameter information of the central reference coordinate point of the global map can be allocated in a hash map (i.e., hash-map, hash mapping table), so that when the reference map is updated, the information area corresponding to the corresponding reference coordinate point in the hash map (i.e., the above-mentioned queue) can be directly queried, thereby reducing the query time.

[0166] Assume that the actual time to query the information area corresponding to a reference coordinate point through the hash map is , compared with directly querying the parameter information corresponding to the reference coordinate point (ie, the second parameter information and the historical parameter information) in the massive data, the query time can be greatly reduced.

[0167] Specifically, the steps for updating the reference map can be referred to above and will not be described in detail here.

[0168] In the present embodiment, the maximum number of elements is preset to 9, that is, =9.

[0169] Wherein, when the storage positions of the original coordinate point and the reference coordinate point in the hash map do not overlap, the parameter information of the original coordinate point is stored as a hash array in the corresponding storage position, and the parameter information of the reference coordinate point is stored as a hash array in the corresponding storage position; When the storage locations of the original coordinate point and the reference coordinate point in the hash map overlap, the number of parameter information of the reference coordinate point is determined. When the number of parameter information of the reference coordinate point is less than the maximum number of elements, the parameter information of the original coordinate point is added to the queue corresponding to the reference coordinate point as a historical parameter information of the reference coordinate point, and the performance data of the reference coordinate point is re-determined based on the new historical parameter information. When the number of parameter information of the reference coordinate point is greater than or equal to the maximum number of elements, the parameter information with the smallest time value in the historical parameter information of the reference coordinate point (that is, the parameter information with the time value farthest from the time value corresponding to the original coordinate point) is deleted, the parameter information of the original coordinate point is added to the queue corresponding to the reference coordinate point as a historical parameter information of the reference coordinate point, and the performance data of the reference coordinate point is re-determined based on the new historical parameter information.

[0170] Optionally, for a certain coordinate point, if the queue corresponding to the coordinate point has not been updated within a set period of time (for example, 7 days), the parameter information in which the interval between the corresponding time value and the current time value in the queue corresponding to the coordinate point is greater than 7 days is deleted.

[0171] (4) Construct a target map based on the performance data of each coordinate point in the hash map, splice the target map with the non-computational map in the global map to obtain an updated global map, and update the updated global map to the local server-side and cloud storage.

[0172] Based on the same principle as the map construction method provided in the embodiment of the present disclosure, the embodiment of the present disclosure also provides a map construction device. Fig. 9 , the map construction device 900 comprises: The data transceiver module 901 is used to receive crowdsourced data uploaded by the client; wherein the crowdsourced data includes at least one crowdsourced frame, and the crowdsourced frame corresponds to a point cloud data; The map construction module 902 is used to perform the following operations: Determine a crowdsourced map including original coordinate points; wherein the original coordinate points are coordinate points corresponding to the point cloud data; Hash mapping is performed on the original parameter information corresponding to the original coordinate point to obtain the target parameter information of the target coordinate point; wherein the original parameter information includes at least one of the following: The first parameter information of the point cloud data, the second parameter information of the reference coordinate point corresponding to the original coordinate point in the reference map, and the historical parameter information of the reference coordinate point; wherein the parameter information includes at least one of the coordinate information, a label indicating the coordinate type, and a time value; According to the above target parameter information, a target map is constructed.

[0173] In some embodiments, when the map construction module 902 performs hash mapping on the original parameter information corresponding to the original coordinate point to obtain the target parameter information of the target coordinate point, it can be used to perform the following operations: Determine the size of the hash mapping table corresponding to the target map according to the first coordinate information of the original coordinate point, the second coordinate information of the reference coordinate point, and the resolution of the crowdsourcing frame; wherein the hash mapping table is used to store at least one hash array; Determine a first hash key based on the first coordinate information; and determine a second hash key based on the second coordinate information; Performing hash mapping in the hash mapping table according to the first hash key and the second hash key to determine a storage location of the hash array in the hash mapping table; Determine the element stored in the hash array corresponding to the storage location according to the first parameter information, the second parameter information and the historical parameter information; The target parameter information is obtained according to the elements stored in the hash array.

[0174] In some embodiments, when the map construction module 902 determines the size of the hash mapping table corresponding to the target map according to the first coordinate information of the original coordinate point, the second coordinate information of the reference coordinate point, and the resolution of the crowdsourcing frame, it can be used to perform the following operations: Determine the maximum coordinate value, the minimum coordinate value, and the first difference between the corresponding maximum coordinate value and the minimum coordinate value of the first coordinate information and the second coordinate information in each coordinate axis; Determining a size value of the hash mapping table on the coordinate axis according to a quotient between the first difference and the resolution; The size of the hash mapping table is determined according to the product of the size values ​​under all the above coordinate axes and the preset maximum number of elements in the above hash array.

[0175] In some embodiments, when the map construction module 902 determines the first hash key according to the first coordinate information, it can be used to perform the following operations: Determine a second difference between the coordinate value of the first coordinate information on the coordinate axis and the minimum coordinate value corresponding to the coordinate axis; Determining a key value of the first hash key under the coordinate axis according to a quotient between the second difference and the resolution; Determine a first product between a key value of the first hash key on a first coordinate axis and a size value of the hash mapping table on the first coordinate axis; Determine a first sum between the key value of the first hash key under the second coordinate axis and the first product; The first hash key is determined according to the product of the first sum and the preset maximum number of elements.

[0176] In some embodiments, when the map construction module 902 determines the second hash key according to the second coordinate information, it can be used to perform the following operations: Determine a third difference between the coordinate value of the second coordinate information on the coordinate axis and the minimum coordinate value corresponding to the coordinate axis; Determining a key value of the second hash key under the coordinate axis according to a quotient between the third difference and the resolution; Determine a second product between the key value of the second hash key on the first coordinate axis and the size value of the hash mapping table on the first coordinate axis; Determine a second sum between the key value of the second hash key under the second coordinate axis and the second product; The second hash key is determined according to the product of the second sum and the preset maximum number of elements.

[0177] In some embodiments, when the map construction module 902 performs hash mapping in the hash mapping table according to the first hash key and the second hash key to determine the storage location of the hash array in the hash mapping table, it can be used to perform the following operations: Performing hash mapping in the hash mapping table according to the first hash key and the second hash key respectively, to determine a first index position and a second index position; In the case where the first index position is the same as the second index position, the first index position is used as the storage position of the hash array; When the first index position and the second index position are different, the first index position and the second index position are respectively used as different storage positions of the hash array.

[0178] In some embodiments, when the map construction module 902 determines the elements stored in the hash array corresponding to the storage location according to the first parameter information, the second parameter information and the historical parameter information, it can be used to perform the following operations: In the case where the first index position and the second index position are the same, the first queue corresponding to the corresponding reference coordinate point is updated according to the first parameter information, and the updated first queue is used as an element stored in the corresponding hash array; wherein the first queue includes the second parameter information and the historical parameter information of the reference coordinate point; When the first index position and the second index position are different, a target queue is created according to the first parameter information, and the target queue is used as an element stored in the corresponding hash array; and the first queue is used as an element stored in the corresponding hash array.

[0179] In some embodiments, when the map construction module 902 updates the first queue corresponding to the corresponding reference coordinate point according to the first parameter information, it can be used to perform any of the following operations: When the number of elements in the first queue is less than the preset maximum number of elements, adding the first parameter information to the first queue; When the number of elements in the first queue is equal to the preset maximum number of elements, according to the time value corresponding to each element in the first queue, remove the element in the first queue whose time value is farthest from the time value corresponding to the original coordinate point, and add the first parameter information to the first queue.

[0180] In some embodiments, when the map construction module 902 obtains the target parameter information according to the elements stored in the hash array, it can be used to perform the following operations: In the case where the hash array includes at least two elements, determining a weight value corresponding to the element according to a time value corresponding to the element; performing a weighted sum operation on the coordinate information of all elements in the hash array according to the weight value corresponding to the element to obtain target coordinate information; Under each label, determine the sum of the weight values ​​corresponding to all elements in the hash array; determine the label with the larger sum of the weight values ​​as the target label; The latest time value corresponding to all elements in the above hash array is used as the target time value; The target parameter information is determined based on the target coordinate information, the target tag and the target time value.

[0181] In some embodiments, when the map construction module 902 determines the weight values ​​corresponding to the above elements according to the time values ​​corresponding to the above elements, it can be used to perform the following operations: Determine that the weight value corresponding to the first element in the hash array corresponding to the original coordinate point is 1; The weight values ​​corresponding to the other elements in the hash array are determined as: the reciprocal of the difference between the time value corresponding to the first element and the time values ​​corresponding to the other elements.

[0182] In some embodiments, when the map construction module 902 determines a crowdsourced map including original coordinate points, it can be used to perform the following operations: Determine the coordinate information in the first parameter information as the first coordinate information of the original coordinate point, and determine the time value when the point cloud data is collected as the time value corresponding to the original coordinate point; perform semantic feature analysis on other information in the point cloud data except the coordinate information to determine the label corresponding to the original coordinate point; The crowdsourcing map is constructed based on the first coordinate information, corresponding time value and label of the original coordinate point.

[0183] Based on the same principle as the data processing method provided in the embodiment of the present disclosure, the embodiment of the present disclosure also provides a data processing device. Fig.10 , the data processing device 1000 comprises: The data transceiver module 1001 is used to obtain a reference map from a server using a first bandwidth based on a preset heartbeat mechanism; wherein, in the process of the client obtaining the reference map, other applications installed on the client run normally; The data processing module 1002 is used to collect point cloud data of the location of the client and the time value when the point cloud data is collected in real time during the process of operating according to the reference map; The data transceiver module is further used to upload the point cloud data and the time value when the point cloud data is collected to the server as a crowdsourcing frame in the crowdsourcing data based on the heartbeat mechanism; Among them, the above-mentioned heartbeat mechanism includes: when the execution time of the preset operation exceeds the preset time or the above-mentioned preset operation is not successfully executed, the above-mentioned preset operation is re-executed; the above-mentioned preset operation includes: obtaining a reference map and uploading crowdsourcing data.

[0184] The device of the embodiments of the present disclosure can execute the method provided by the embodiments of the present disclosure, and the implementation principles are similar. The actions performed by each module in the device of each embodiment of the present disclosure correspond to the steps in the method of each embodiment of the present disclosure. For the detailed functional description of each module of the device, please refer to the description in the corresponding method shown in the previous text, which will not be repeated here.

[0185] Based on the same principle as the method and device provided in the embodiments of the present disclosure, an electronic device (such as a server) is also provided in the embodiments of the present disclosure. The electronic device may include a memory, a processor and a computer program stored in the memory. The processor executes the above computer program to implement the method provided in any optional embodiment of the present disclosure.

[0186] See also Fig.11 , Fig.11 FIG. 1 shows a schematic diagram of the structure of an electronic device provided by an embodiment of the present disclosure. Fig.11As shown, the electronic device 1100 in this embodiment may include: a processor 1101, a network interface 1104 and a memory 1105. In addition, the above-mentioned electronic device 1100 may also include: an object interface 1103, and at least one bus 1102. Among them, the bus 1102 is used to realize the connection and communication between these components. Among them, the object interface 1103 may include a display screen (Display), a keyboard (Keyboard), and the object interface 1103 may optionally include a standard wired interface and a wireless interface. The network interface 1104 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 1105 may be a high-speed RAM memory, or it may be a non-volatile memory (NVM), such as at least one disk storage. The memory 1105 may optionally also be at least one storage device located away from the aforementioned processor 1101. As Fig.11 As shown, the memory 1105 as a computer-readable storage medium may include an operating system, a network communication module, an object interface module, and a device control application program.

[0187] exist Fig.11 In the electronic device 1100 shown, the network interface 1104 can provide a network communication function; the object interface 1103 is mainly used to provide an input interface for the object; and the processor 1101 can be used to call the device control application stored in the memory 1105 to implement the above method: It should be understood that in some feasible implementations, the processor 1101 may be a central processing unit (CPU), and the processor may also be other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc. The memory may include a read-only memory and a random access memory, and provide instructions and data to the processor. A portion of the memory may also include a non-volatile random access memory. For example, the memory may also store information about the device type.

[0188] In some feasible implementations, the bus 1102 may be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus, etc. The bus 1102 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig.11 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0189] The memory 1105 may be a ROM (Read Only Memory) or other types of static storage devices that can store static information and instructions, a RAM (Random Access Memory) or other types of dynamic storage devices that can store information and instructions, or an EEPROM (Electrically Erasable Programmable Read Only Memory), a CD-ROM (Compact Disc Read Only Memory) or other optical disk storage, optical disk storage (including compressed optical disk, laser disk, optical disk, digital versatile disk, Blu-ray disk, etc.), magnetic disk storage media, other magnetic storage devices, or any other medium that can be used to carry or store computer programs and can be read by a computer, without limitation herein.

[0190] The memory 1105 is used to store the computer program for executing the embodiment of the present disclosure, and the execution is controlled by the processor 1101. The processor 1101 is used to execute the computer program stored in the memory 4003 to implement the steps shown in the above method embodiment.

[0191] Among them, electronic equipment includes but is not limited to: displays, image acquisition equipment, cameras, antennas, vehicle-mounted terminals, etc.

[0192] In a specific implementation, the electronic device 1100 can execute the above-mentioned functions through its built-in functional modules. Figure 1 , Figure 6 , Figure 7 or Figure 8 For the implementation methods provided in each step, please refer to the implementation methods provided in the above steps for details, which will not be repeated here.

[0193] The embodiment of the present disclosure also provides a computer-readable storage medium, which stores a computer program and can implement the steps and corresponding contents of the aforementioned method embodiment when executed by a processor. For details, please refer to the implementation methods provided in the above steps, which will not be repeated here.

[0194] The computer-readable storage medium may be an internal storage unit of the device or electronic device provided in any of the aforementioned embodiments, such as a hard disk or memory of an electronic device. The computer-readable storage medium may also be an external storage device of the electronic device, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the electronic device. The computer-readable storage medium may also include a magnetic disk, an optical disk, a read-only memory (ROM) or a random access memory (RAM), etc. Further, the computer-readable storage medium may also include both an internal storage unit of the electronic device and an external storage device. The computer-readable storage medium is used to store the computer program and other programs and data required by the electronic device. The computer-readable storage medium may also be used to temporarily store data that has been output or is to be output.

[0195] The embodiments of the present disclosure also provide a computer program product, including a computer program, which can implement the steps and corresponding contents of the aforementioned method embodiments when executed by a processor.

[0196] The terms “first”, “second” and the like in the claims, the specification and the drawings of the present disclosure are used to distinguish different objects rather than to describe a specific order.

[0197] It should be understood that, although the flowchart of the embodiment of the present disclosure indicates each operation step by arrows, the implementation order of these steps is not limited to the order indicated by the arrows. Unless clearly stated herein, in some implementation scenarios of the embodiment of the present disclosure, the implementation steps in each flowchart can be executed in other orders according to demand. In addition, some or all of the steps in each flowchart may include multiple sub-steps or multiple stages based on the actual implementation scenario. Some or all of these sub-steps or stages can be executed at the same time, and each sub-step or stage in these sub-steps or stages can also be executed at different times. In scenarios with different execution times, the execution order of these sub-steps or stages can be flexibly configured according to demand, and the embodiment of the present disclosure does not limit this.

[0198] In addition, those skilled in the art will understand that, unless otherwise stated, the singular forms "a", "an", "said" and "the" used herein may also include plural forms. The terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or electronic device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units that are not listed, or may optionally include other steps or units that are inherent to these processes, methods, products or electronic devices.

[0199] Reference to "embodiment" herein means that the specific features, structures or characteristics described in conjunction with the embodiment may be included in at least one embodiment of the present disclosure. Displaying the phrase at various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments. The term "and / or" used in this disclosure and the appended claims refers to any combination of one or more of the associated listed items and all possible combinations, and includes these combinations.

[0200] In the embodiments of the present disclosure, the term "module" or "unit" refers to a computer program or a part of a computer program that has a predetermined function and works together with other related parts to achieve a predetermined goal, and can be implemented in whole or in part by using software, hardware (such as processing circuits or memories), or a combination thereof. Similarly, a processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be part of an overall module or unit that includes the function of the module or unit.

[0201] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in terms of function in the above description. Professional and technical personnel may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this disclosure.

[0202] The above is only an optional implementation method for some implementation scenarios of the present disclosure. It should be pointed out that for ordinary technicians in this technical field, without departing from the technical concept of the scheme of the present disclosure, other similar implementation methods based on the technical ideas of the present disclosure are also within the protection scope of the embodiments of the present disclosure.

Claims

1. A map construction method, characterized in that: The method comprises: Receive crowdsourced data uploaded by a client; wherein the crowdsourced data includes at least one crowdsourced frame, and the crowdsourced frame corresponds to a point cloud data; Determine a crowdsourced map including original coordinate points; wherein the original coordinate points are coordinate points corresponding to the point cloud data; Perform hash mapping on the original parameter information corresponding to the original coordinate point to obtain target parameter information of the target coordinate point; wherein the original parameter information includes at least one of the following: first parameter information of the point cloud data, second parameter information of a reference coordinate point in a reference map corresponding to the original coordinate point, and historical parameter information of the reference coordinate point; wherein the parameter information includes at least one of coordinate information, a label indicating a coordinate type, and a time value; A target map is constructed according to the target parameter information.

2. The map construction method according to claim 1, characterized in that: The performing hash mapping on the original parameter information corresponding to the original coordinate point to obtain the target parameter information of the target coordinate point includes: Determine the size of the hash mapping table corresponding to the target map according to the first coordinate information of the original coordinate point, the second coordinate information of the reference coordinate point, and the resolution of the crowdsourcing frame; wherein the hash mapping table is used to store at least one hash array; Determine a first Hash key according to the first coordinate information; and determine a second Hash key according to the second coordinate information; Perform hash mapping in the hash mapping table according to the first hash key and the second hash key to determine a storage location of the hash array in the hash mapping table; Determine, according to the first parameter information, the second parameter information and the historical parameter information, an element stored in the hash array corresponding to the storage location; The target parameter information is obtained according to the elements stored in the hash array.

3. The map construction method according to claim 2, characterized in that: The determining, according to the first coordinate information of the original coordinate point, the second coordinate information of the reference coordinate point, and the resolution of the crowdsourcing frame, a size of the hash mapping table corresponding to the target map includes: Determine a maximum coordinate value, a minimum coordinate value, and a first difference between the corresponding maximum coordinate value and minimum coordinate value of the first coordinate information and the second coordinate information in each coordinate axis; Determining a size value of the hash mapping table on the coordinate axis according to a quotient between the first difference and the resolution; The size of the hash mapping table is determined according to the product of the size values ​​under all the coordinate axes and the preset maximum number of elements in the hash array.

4. The map construction method according to claim 3, characterized in that: The determining a first hash key according to the first coordinate information includes: Determine a second difference between a coordinate value of the first coordinate information on the coordinate axis and a minimum coordinate value corresponding to the coordinate axis; Determining a key value of the first hash key under the coordinate axis according to a quotient between the second difference and the resolution; Determine a first product between a key value of the first hash key on a first coordinate axis and a size value of the hash mapping table on the first coordinate axis; Determine a first sum between the key value of the first hash key under the second coordinate axis and the first product; The first hash key is determined according to the product of the first sum and the preset maximum number of elements.

5. The map construction method according to claim 3 or 4, characterized in that: The determining a second hash key according to the second coordinate information includes: Determine a third difference between the coordinate value of the second coordinate information on the coordinate axis and the minimum coordinate value corresponding to the coordinate axis; Determining a key value of the second hash key under the coordinate axis according to a quotient between the third difference and the resolution; Determine a second product between a key value of the second hash key on a first coordinate axis and a size value of the hash mapping table on the first coordinate axis; Determine a second sum between the key value of the second hash key under the second coordinate axis and the second product; The second hash key is determined according to the product of the second sum and the preset maximum number of elements.

6. The map construction method according to any one of claims 3 to 5, characterized in that: The performing hash mapping in the hash mapping table according to the first hash key and the second hash key to determine the storage position of the hash array in the hash mapping table includes: Performing hash mapping in the hash mapping table according to the first hash key and the second hash key respectively to determine a first index position and a second index position; When the first index position is the same as the second index position, using the first index position as the storage position of the hash array; When the first index position and the second index position are different, the first index position and the second index position are respectively used as different storage positions of the hash array.

7. The map construction method according to claim 6, characterized in that: The determining, according to the first parameter information, the second parameter information, and the historical parameter information, the element stored in the hash array corresponding to the storage location includes: When the first index position and the second index position are the same, the first queue corresponding to the corresponding reference coordinate point is updated according to the first parameter information, and the updated first queue is used as an element stored in the corresponding hash array; wherein the first queue includes the second parameter information and historical parameter information of the reference coordinate point; When the first index position and the second index position are different, a target queue is created according to the first parameter information, and the target queue is used as an element stored in a corresponding hash array; and the first queue is used as an element stored in a corresponding hash array.

8. The map construction method according to claim 7, characterized in that: The updating of the first queue corresponding to the corresponding reference coordinate point according to the first parameter information includes any one of the following: When the number of elements in the first queue is less than the preset maximum number of elements, adding the first parameter information to the first queue; When the number of elements in the first queue is equal to the preset maximum number of elements, according to the time value corresponding to each element in the first queue, remove the element in the first queue whose time value is farthest from the time value corresponding to the original coordinate point, and add the first parameter information to the first queue.

9. The map construction method according to claim 8, characterized in that: The obtaining the target parameter information according to the elements stored in the hash array includes: In the case where the hash array includes at least two elements, determining a weight value corresponding to the element according to a time value corresponding to the element; performing a weighted sum operation on coordinate information of all elements in the hash array according to the weight value corresponding to the element to obtain target coordinate information; Under each tag, determine the sum of weight values ​​corresponding to all elements in the hash array; determine the tag with the larger sum of weight values ​​as the target tag; The latest time value corresponding to all elements in the hash array is used as the target time value; The target parameter information is determined according to the target coordinate information, the target tag and the target time value.

10. The map construction method according to claim 9, characterized in that: The determining, according to the time value corresponding to the element, the weight value corresponding to the element comprises: Determine that a weight value corresponding to the first element in the hash array corresponding to the original coordinate point is 1; The weight values ​​corresponding to other elements in the hash array are determined as: the reciprocal of the difference between the time value corresponding to the first element and the time value corresponding to the other elements.

11. The map construction method according to any one of claims 1 to 10, characterized in that: The determining of a crowdsourced map including original coordinate points comprises: Determine the coordinate information in the first parameter information as the first coordinate information of the original coordinate point, and determine the time value when the point cloud data is collected as the time value corresponding to the original coordinate point; perform semantic feature analysis on other information in the point cloud data except the coordinate information to determine the label corresponding to the original coordinate point; The crowdsourcing map is constructed according to the first coordinate information of the original coordinate point, the corresponding time value and the label.

12. A data processing method, characterized in that: The method comprises: Based on a preset heartbeat mechanism, a reference map is obtained from a server using a first bandwidth; wherein, in the process of the client obtaining the reference map, other applications installed on the client run normally; In the process of operating according to the reference map, collecting point cloud data of the location of the client and the time value when collecting the point cloud data in real time; Based on the heartbeat mechanism, uploading the point cloud data and the time value when the point cloud data is collected to the server as a crowdsourcing frame in crowdsourcing data; The heartbeat mechanism includes: re-executing the preset operation when the execution time of the preset operation exceeds the preset time or the preset operation is not successfully executed; the preset operation includes: obtaining a reference map and uploading crowdsourcing data.

13. A map construction device, characterized in that: The device comprises: A data transceiver module, used to receive crowdsourced data uploaded by a client; wherein the crowdsourced data includes at least one crowdsourced frame, and the crowdsourced frame corresponds to a point cloud data; Map building blocks that do the following: Determine a crowdsourced map including original coordinate points; wherein the original coordinate points are coordinate points corresponding to the point cloud data; Perform hash mapping on the original parameter information corresponding to the original coordinate point to obtain target parameter information of the target coordinate point; wherein the original parameter information includes at least one of the following: first parameter information of the point cloud data, second parameter information of a reference coordinate point in a reference map corresponding to the original coordinate point, and historical parameter information of the reference coordinate point; wherein the parameter information includes at least one of coordinate information, a label indicating a coordinate type, and a time value; A target map is constructed according to the target parameter information.

14. A data processing device, characterized in that: The device comprises: A data transceiver module, configured to obtain a reference map from a server using a first bandwidth based on a preset heartbeat mechanism; wherein, in the process of the client obtaining the reference map, other applications installed on the client run normally; A data processing module, used for collecting point cloud data of the location of the client and the time value when collecting the point cloud data in real time during the process of operating according to the reference map; The data transceiver module is further used to upload the point cloud data and the time value when the point cloud data is collected to the server as a crowdsourcing frame in the crowdsourcing data based on the heartbeat mechanism; The heartbeat mechanism includes: re-executing the preset operation when the execution time of the preset operation exceeds the preset time or the preset operation is not successfully executed; the preset operation includes: obtaining a reference map and uploading crowdsourcing data.

15. An electronic device, characterized in that: comprising a processor and a memory, wherein the processor and the memory are connected to each other; The memory is used to store computer programs; The processor is configured to execute the method according to any one of claims 1 to 12 when calling the computer program.

16. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 12 is implemented.