Semantic map updating method, apparatus and computer storage medium
By averaging the semantic information of objects in the new and old point clouds in the semantic map, the problem of accuracy loss caused by errors in crowdsourced map collection is solved, and high-precision map updates and improved positioning accuracy are achieved.
Patent Information
- Application Number
- CN202210004626.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-01-04
- Publication Date
- 2026-02-10
- Estimated Expiration
- 2042-01-04
AI Technical Summary
Existing crowdsourced data collection and mapping methods suffer from map accuracy loss due to inconsistent errors in sensors from multiple vehicles. Furthermore, visual crowdsourced data collection solutions have high data transmission costs, as do radar point cloud data transmission costs, making it difficult to effectively update high-precision maps.
The map is updated by averaging the semantic information of newly acquired point cloud objects with those of matching point cloud objects in the existing map. This includes interpolation or averaging of information such as PCA coordinate system orientation, point cloud center, bounding box vertex coordinates, and histogram, ensuring map accuracy.
It preserves crowdsourced data information to the greatest extent, avoids single errors from affecting map accuracy, and improves the accuracy of the map and subsequent positioning.
Smart Images

Figure CN115544189B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of autonomous driving map and positioning technology, and in particular to a semantic map updating method, apparatus and computer storage medium. Background Technology
[0002] In fields such as autonomous driving and high-precision mapping, crowdsourced data collection and mapping, which has a high update frequency and low computational cost, is increasingly favored by industry and academia compared to professional data collection and mapping, which has a low update frequency and is relatively time-consuming and labor-intensive.
[0003] Traditional data collection methods typically require a large number of specialized data collectors, surveying equipment, and collection vehicles. High-precision map collection needs to include road network data, lane network data, road traffic facility data, and more, often requiring multiple data collection runs along a single road to ensure accuracy. After collection, the data must undergo numerous stages, including data fusion, processing, publishing, and delivery.
[0004] Crowdsourced data collection can be understood as users using the sensors of autonomous vehicles themselves, or other low-cost sensors, to collect road data and transmit it to the cloud for data fusion. This fusion method improves data accuracy, enabling the creation of crowdsourced high-precision maps or semantic maps. It mainly includes visual and radar methods. Among these, visual crowdsourced data collection solutions are currently the primary data collection solutions for mapping and autonomous driving companies both domestically and internationally. Crowdsourced data collection solutions based on radar 3D point clouds, however, suffer from larger point cloud data volumes and higher data transmission costs compared to visual image data.
[0005] However, current crowdsourced data collection and mapping methods suffer from inconsistent sensor errors across multiple vehicles, and even the same vehicle collecting data on the same object may have different errors, which can easily lead to a loss of accuracy. Summary of the Invention
[0006] Therefore, it is necessary to provide a semantic map updating method, apparatus, computer equipment, computer-readable storage medium, and computer program product that can improve map accuracy in response to the above-mentioned technical problems.
[0007] Firstly, this application provides a semantic information method for semantic maps. The method includes:
[0008] When updating the collection area, if a corresponding semantic map exists, determine the first point cloud object and the corresponding first semantic information of the newly collected crowdsourced map in the collection area.
[0009] When a matching point cloud object exists in the semantic map, the second semantic information of the matching point cloud object is obtained.
[0010] By performing semantic averaging on the first semantic information and the second semantic information, the average semantic information of the updated point cloud object is obtained.
[0011] The semantic map is updated based on the average semantic information.
[0012] In one embodiment, obtaining the updated average semantic information of the first point cloud object by performing semantic averaging on the first semantic information and the second semantic information includes:
[0013] Based on the first semantic information and the second semantic information, semantic averaging is performed to update the first semantic information of the first point cloud object, thereby obtaining the updated average semantic information of the first point cloud object; the average semantic information includes at least one of the following: updated PCA coordinate system direction, updated point cloud center, updated bounding box vertex coordinates, updated point cloud convex hull, and updated histogram.
[0014] In one embodiment, the step of performing semantic averaging based on the first semantic information and the second semantic information to update the first semantic information of the first point cloud object, and obtaining the updated average semantic information of the first point cloud object, includes:
[0015] The PCA coordinate system direction in the first semantic information and the PCA coordinate system direction in the second semantic information are interpolated to obtain the updated PCA coordinate system direction.
[0016] Based on the updated PCA coordinate system orientation, the updated average semantic information of the first point cloud object is obtained.
[0017] In one embodiment, the step of performing semantic averaging based on the first semantic information and the second semantic information to update the first semantic information of the first point cloud object, and obtaining the updated average semantic information of the first point cloud object, includes:
[0018] The point cloud centers in the first semantic information and the point cloud centers in the second semantic information are averaged to obtain the updated point cloud centers;
[0019] Based on the updated PCA coordinate system orientation and the updated point cloud center, the average semantic information of the first point cloud object is obtained.
[0020] In one embodiment, the step of performing semantic averaging based on the first semantic information and the second semantic information to update the first semantic information of the first point cloud object, and obtaining the updated average semantic information of the first point cloud object, includes:
[0021] The vertex coordinates of the updated bounding box are obtained by performing mean processing and coordinate transformation on the minimum bounding box of the point cloud in the first semantic information and the minimum bounding box of the point cloud in the second semantic information.
[0022] The average semantic information of the first point cloud object is obtained based on the updated PCA coordinate system direction, the updated point cloud center, and the vertex coordinates of the updated bounding box.
[0023] In one embodiment, the step of performing mean processing and coordinate transformation processing on the minimum bounding boxes of the point clouds in the first semantic information and the minimum bounding boxes of the point clouds in the second semantic information to obtain the vertex coordinates of the updated bounding box includes:
[0024] The minimum bounding box of the point cloud in the first semantic information and the minimum bounding box of the point cloud in the second semantic information are averaged to obtain the updated minimum bounding box of the point cloud.
[0025] Based on the updated PCA coordinate system orientation, the updated point cloud center is transformed to the updated object coordinate system to obtain the target point cloud center coordinates;
[0026] The vertex coordinates of the updated bounding box are obtained based on the center coordinates of the target point cloud and the minimum bounding box of the updated point cloud.
[0027] In one embodiment, obtaining the vertex coordinates of the updated bounding box based on the center coordinates of the target point cloud and the minimum bounding box of the updated point cloud includes:
[0028] The vertex coordinates are determined based on the center coordinates of the target point cloud and the size information of the minimum bounding box of the updated point cloud; the size information includes width, height, and depth.
[0029] Specifically, the vertex coordinates of the updated bounding box on the x-axis are obtained based on the x-axis coordinates of the target point cloud center and the width.
[0030] The vertex coordinates of the updated bounding box on the y-axis are obtained based on the y-axis coordinates of the target point cloud center and the height; and
[0031] The vertex coordinates of the updated bounding box on the z-axis are obtained based on the z-axis coordinates of the target point cloud center and the depth.
[0032] In one embodiment, the step of performing semantic averaging based on the first semantic information and the second semantic information to update the first semantic information of the first point cloud object, and obtaining the updated average semantic information of the first point cloud object, includes:
[0033] The point cloud convex hull in the first semantic information and the point cloud convex hull in the second semantic information are translated, rotated and transformed to obtain the updated point cloud convex hull;
[0034] The average semantic information of the first point cloud object is obtained based on the updated PCA coordinate system direction, the updated point cloud center, the vertex coordinates of the updated bounding box, and the updated point cloud convex hull.
[0035] In one embodiment, the step of performing semantic averaging based on the first semantic information and the second semantic information to update the first semantic information of the first point cloud object, and obtaining the updated average semantic information of the first point cloud object, includes:
[0036] The updated histogram in the second semantic information is obtained by performing coordinate system transformation based on the object point cloud of the first point cloud object.
[0037] Based on the updated PCA coordinate system orientation, the updated point cloud center, the updated bounding box vertex coordinates, the updated point cloud convex hull, and the updated histogram, the average semantic information of the first point cloud object is obtained after the update.
[0038] Secondly, this application also provides a semantic map updating apparatus. It includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:
[0039] When updating the collection area, if a corresponding semantic map exists, determine the first point cloud object and the corresponding first semantic information of the newly collected crowdsourced map in the collection area.
[0040] When a matching point cloud object exists in the semantic map, the second semantic information of the matching point cloud object is obtained.
[0041] By performing semantic averaging on the first semantic information and the second semantic information, the updated average semantic information of the first point cloud object is obtained.
[0042] The semantic map is updated based on the average semantic information.
[0043] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:
[0044] When updating the collection area, if a corresponding semantic map exists, determine the first point cloud object and the corresponding first semantic information of the newly collected crowdsourced map in the collection area.
[0045] When a matching point cloud object exists in the semantic map, the second semantic information of the matching point cloud object is obtained.
[0046] By performing semantic averaging on the first semantic information and the second semantic information, the updated average semantic information of the first point cloud object is obtained.
[0047] The semantic map is updated based on the average semantic information.
[0048] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps:
[0049] When updating the collection area, if a corresponding semantic map exists, determine the first point cloud object and the corresponding first semantic information of the newly collected crowdsourced map in the collection area.
[0050] When a matching point cloud object exists in the semantic map, the second semantic information of the matching point cloud object is obtained.
[0051] By performing semantic averaging on the first semantic information and the second semantic information, the updated average semantic information of the first point cloud object is obtained.
[0052] The semantic map is updated based on the average semantic information.
[0053] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps:
[0054] When updating the collection area, if a corresponding semantic map exists, determine the first point cloud object and the corresponding first semantic information of the newly collected crowdsourced map in the collection area.
[0055] When a matching point cloud object exists in the semantic map, the second semantic information of the matching point cloud object is obtained.
[0056] By performing semantic averaging on the first semantic information and the second semantic information, the updated average semantic information of the first point cloud object is obtained.
[0057] The semantic map is updated based on the average semantic information.
[0058] The aforementioned semantic map updating method, apparatus, computer equipment, storage medium, and computer program product, when updating a semantic map in an area where a corresponding semantic map exists, extracts the semantic information of point cloud objects. When a matching point cloud object exists in a newly collected crowdsourced map within the corresponding semantic map, the semantic information of the collected point cloud object is semantically averaged with the semantic information of the object in the corresponding semantic map to obtain the average semantic information of the updated point cloud object. The semantic map is then updated based on this average semantic information, thereby maximizing the retention of crowdsourced data information and preventing a single data point with the largest error from being stored solely in the map, which could affect map accuracy and subsequent positioning accuracy. Attached Figure Description
[0059] Figure 1 This is an application environment diagram of the semantic map update method in one embodiment;
[0060] Figure 2 This is a flowchart illustrating a semantic map update method in one embodiment;
[0061] Figure 3a This is one embodiment of partial semantic information of some objects in a local 3D crowdsourced semantic map;
[0062] Figure 3b This is a schematic diagram of matching point cloud objects in one embodiment;
[0063] Figure 4 This is a flowchart illustrating a semantic distance determination method in one embodiment;
[0064] Figure 5 This is a flowchart illustrating a map matching method in one embodiment;
[0065] Figure 6 This is a flowchart illustrating a semantic information averaging method in one embodiment;
[0066] Figure 7 This is a flowchart illustrating a method for determining the vertex coordinates of a bounding box in one embodiment.
[0067] Figure 8 This is a flowchart illustrating the semantic map update method in another embodiment;
[0068] Figure 9 This is a flowchart illustrating the semantic map update method in another embodiment;
[0069] Figure 10 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0070] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0071] The semantic map update method provided in this application can be applied to, for example, Figure 1 In the application environment shown, the acquisition device 102 communicates with the terminal 104 via a network. A data storage system can store the data that the terminal 104 needs to process. The data storage system can be integrated into the terminal 104 or placed in the cloud or on another network server. When updating the semantic map of the acquisition area, the terminal 104 determines the first point cloud object and its corresponding first semantic information of the newly acquired crowdsourced map in the acquisition area; when a matching point cloud object exists in the semantic map, it obtains the second semantic information of the matching point cloud object; by performing semantic averaging on the first and second semantic information, it obtains the average semantic information of the updated point cloud object; and updates the semantic map based on the average semantic information. The terminal 104 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, or autonomous driving computing platforms. The acquisition device can be a lidar, millimeter-wave radar, or ultrasonic radar, or it can be integrated into the terminal. It is understood that this method can also be applied to servers, and can also be applied to systems including terminals and servers, and implemented through the interaction between the terminal and the server.
[0072] In one embodiment, such as Figure 2 As shown, a semantic map update method is provided, which is applied to... Figure 1 Taking the terminal in the example, the explanation includes the following steps:
[0073] Step 202: When updating the collection area, if there is a corresponding semantic map, determine the first point cloud object and the corresponding first semantic information of the newly collected crowdsourced map in the collection area.
[0074] Crowdsourced maps or crowdsourced-style maps refer to maps acquired by terminals via the cloud, collected by other vehicles, and uploaded to the cloud. The first point cloud of the newly collected crowdsourced map in the collection area is constructed by denoising and clustering the target object point cloud in the crowdsourced map; the target object point cloud refers to the point cloud of objects needed to construct a semantic map (e.g., traffic sign objects). Objects needed for a semantic map include, but are not limited to, traffic lights, traffic signs, lane lines, pedestrian crossings, and other objects carrying necessary traffic information. Target object point cloud extraction can be performed using existing methods, including feature extraction and selection, and classification.
[0075] For example, extracting point clouds of a target object can be achieved by projecting the 3D point cloud collected by a LiDAR onto a corresponding 2D image, extracting the 2D points within the object's bounding box, and then reconstructing the 3D points. Alternatively, object perception markers can be determined through deep learning to obtain the corresponding object's point cloud. Here, the object's bounding box is identified using a pre-trained perceptual deep learning model; the perceptual markers in the point cloud are also obtained through deep learning methods. For instance, the 2D traffic light bounding box is identified by a perceptual deep learning model; the 3D point cloud from the LiDAR is projected onto the 2D image, the points within the bounding box are extracted, and then the 3D image is reconstructed; these points are considered to be traffic light points. Similarly, the perceptual markers of traffic signs in the point cloud obtained through deep learning methods can be directly used as the traffic sign point cloud.
[0076] The first semantic information includes the point cloud object identifier, the point cloud PCA (Principal Components Analysis) coordinate system orientation, the point cloud principal direction, the point cloud object center, the point cloud minimum bounding box (OBB), the point cloud convex hull, and the point cloud histogram. It's understood that the first point cloud object here is not limited to one, but can be multiple; OBBs have better compactness, which can significantly reduce the number of bounding boxes participating in intersection tests, resulting in better overall performance than AABBs. When the geometric object undergoes rotation, only the OBBs need to be rotated in the same way.
[0077] Furthermore, the point cloud object identifier for each object is different, i.e., unique. Point cloud PCA (Programmatical Convergence Aspect Ratio) uses eigenvalue decomposition of the point cloud covariance matrix to determine the orientation in three dimensions through eigenvectors, defining this coordinate system as the object's local coordinate system. The principal orientation of the point cloud is determined after PCA calculation, selecting the eigenvector corresponding to the smallest eigenvalue as the principal orientation of the point cloud object. For example, a common traffic sign has a point cloud that is approximately planar (of course, a threshold is given during mapping; if it is less than the threshold, a minimum width is given to ensure that the point cloud object is a three-dimensional object). In this case, the eigenvalue corresponding to the plane normal direction is the smallest, and we define this normal direction as the principal orientation.
[0078] The center of a point cloud object is determined based on the maximum and minimum coordinates of its midpoint. Specifically, the maximum and minimum values on different axes are determined in the local coordinate system. A weighted average of these maximum and minimum values is then taken, and the resulting coordinates are transformed to world coordinates. For example, the maximum and minimum values of the midpoint of the first point cloud object along the x, y, and z axes are x, y, and z, respectively. max ,y max Z max ,x min ,y min Zmin , the center of the point cloud object is obtained as C = [C x , C y , C Z T , where C x = (x max + x min ) / 2, C y = (y max + y min ) / 2, C Z = (Z max + Z min ) / 2.
[0079] The bounding box dimensions of the oriented bounding box (OBB) of the point cloud are width, height, and depth, where width < height < depth, and it can be represented by eight vertices in the world coordinate system; the convex hull of the point cloud is the smallest convex hull that contains all the points of an object; the point cloud histogram stores the histograms of three dimensions x, y, z in a one-dimensional vector. As Figure 3a shown, it is the partial semantic information (including OBB and PCA coordinate systems) of some objects in the local 3D crowdsourced semantic map in an embodiment.
[0080] Specifically, when there is a corresponding semantic map in the updated acquisition area, it is necessary to determine the matching situation of the point cloud objects between the newly acquired crowdsourced map and the existing corresponding semantic map, determine the objects required for constructing the semantic map, extract the target object point cloud used to represent traffic indication objects from the crowdsourced map, perform denoising and clustering processing on the target object point cloud to obtain the first point cloud object in the crowdsourced map, and extract the first semantic information of all the first point cloud objects in the crowdsourced map.
[0081] Step 204, when there is a matching point cloud object in the semantic map with the first point cloud object, obtain the second semantic information of the matching point cloud object.
[0082] Specifically, obtain all the second point cloud objects in the semantic map, and extract the second semantic information of each second point cloud object; determine the semantic distance according to the second semantic information of the second point cloud object and the first semantic information of the first point cloud object, determine the matching point cloud object that matches the first point cloud object from the semantic map according to the semantic distance, and obtain the second semantic information of the matching point cloud object.
[0083] Step 206, by performing semantic averaging on the first semantic information and the second semantic information, obtain the average semantic information of the updated point cloud object.
[0084] The first semantic information and the second semantic information include the PCA coordinate system direction, the point cloud center, the point cloud minimum bounding box, the point cloud convex hull, and the histogram, respectively. The first semantic information refers to the semantic information of the newly acquired first point cloud object; the second semantic information refers to the semantic information of the second point cloud object that exists in the corresponding semantic map.
[0085] Specifically, the average semantic information of the updated point cloud objects is obtained by performing semantic averaging on the PCA coordinate system direction, point cloud center, point cloud minimum bounding box, point cloud convex hull and histogram in the first semantic information, and the PCA coordinate system direction, point cloud center, point cloud minimum bounding box, point cloud convex hull and histogram in the second semantic information.
[0086] Step 208: Update the semantic map based on the average semantic information.
[0087] In the aforementioned semantic map update method, when a corresponding semantic map exists in the updated collection area, the semantic information of point cloud objects is extracted. When a matching point cloud object exists in the newly collected crowdsourced map within the corresponding semantic map, the semantic information of the collected point cloud object and the semantic information of the object in the corresponding semantic map are semantically averaged to obtain the average semantic information of the updated point cloud object. The semantic map is then updated based on the average semantic information to maximize the preservation of crowdsourced data information and avoid the sole storage of a single data point with the largest error in the map, which could affect map accuracy and subsequent positioning accuracy.
[0088] In one embodiment, such as Figure 4 As shown, a method for semantic distance of point cloud objects is provided, which is then applied to... Figure 1 Taking the terminal in the example, the explanation includes the following steps:
[0089] Step 402: Determine the difference value of the center position coordinate distance based on the point cloud center coordinates of the first point cloud object and the point cloud center coordinates of the second point cloud object.
[0090] The first point cloud object is constructed based on the target object point cloud extracted from the newly collected crowdsourced map. The first semantic information is the physical geometric information of the point cloud extracted from the first point cloud object, including the point cloud object identifier, point cloud center, point cloud convex hull, point cloud minimum bounding box OBB, point cloud PCA coordinate system direction, point cloud main direction, and point cloud histogram.
[0091] Specifically, the process involves extracting target object point clouds from the crowdsourced map and constructing a corresponding first point cloud object, as well as extracting the first semantic information of the first point cloud object; then determining a second point cloud object from the corresponding semantic map, and its second semantic information. For example, in a local map (crowdsourced collection), the center coordinates of the first point cloud object are (x1, y1, z1), the main direction of the point cloud is a, the bounding box size is (w1, h1, d1), the shape feature is a 30-dimensional vector s1, and the original number of point clouds is n1. On the other hand, the center coordinates of the second point cloud object in the semantic map are (x2, ..., ... y2 The point cloud has a main direction of b, a bounding box size of (w2, h2, d2), a shape feature of 30-dimensional vector s2, and an original point cloud size of n2. The bounding box size can be understood as the size of the minimum bounding box of the point cloud.
[0092] The difference in center position coordinates, distance1, is determined based on the point cloud center coordinates (x1, y1, z1) of the first point cloud object and the point cloud center coordinates (x2, y2, z2) of the second point cloud object. This difference can be expressed as:
[0093]
[0094] Step 404: Determine the difference value of the vertex cloud object orientation based on the principal orientation of the first point cloud object and the principal orientation of the second point cloud object.
[0095] The point cloud object orientation difference value distance2 can be expressed as:
[0096] cos(θ) = a·b / (|a|·|b|); the larger the angle, the greater the difference, and the smaller the cos value; the smaller the angle, the smaller the difference, and the larger the cos value.
[0097] distance2 = 1 - cos(θ), the smaller the difference, the smaller the directional distance.
[0098] Step 406: Determine the difference value of the calibration frame size based on the calibration frame size of the first point cloud object and the calibration frame size of the second point cloud object.
[0099] Wherein, the bounding box size of the first point cloud object is (w1, h1, d1), and the bounding box size of the second point cloud object is (w2, h2, d2); the bounding box size difference value distance3 can be expressed as:
[0100]
[0101] Step 408: Determine the appearance feature difference value based on the shape elements of the point cloud histogram of the first point cloud object and the shape elements of the point cloud histogram of the second point cloud object.
[0102] The difference in appearance features can be expressed as:
[0103]
[0104] Step 410: By weighting the center position coordinate distance difference value, point cloud object orientation difference value, calibration box size difference value and appearance feature difference value, the semantic distance between each first point cloud object and the second point cloud object in the semantic map is obtained.
[0105] Specifically, the weight values w1, w2, w3, and w4 corresponding to the center position coordinate distance difference value (distance1), the point cloud object orientation difference value (distance2), the calibration box size difference value (distance3), and the appearance feature difference value (distance4) are obtained. The semantic distance score is obtained by weighting and summing these weights, where each weight ranges from 0 to 1. In other words, each difference value is weighted and then linearly summed to obtain the final semantic distance; that is, semantic distance = w1*distance1 + w2*distance2 + w3*distance3 + w4*distance4.
[0106] Based on the map matching algorithm, the collected crowdsourced map is matched with the corresponding semantic map according to the semantic distance between each first point cloud object and the second point cloud object in the semantic map. The matching status between point cloud objects in the crowdsourced map and the corresponding semantic map is determined. The matching status includes the first point cloud object in the crowdsourced map having a matching second point cloud object in the semantic map, the first point cloud object in the crowdsourced map not having a matching second point cloud object in the semantic map (i.e., the first point cloud object is a newly added point cloud object), and the second point cloud object in the semantic map not having a matching first point cloud object in the crowdsourced map (i.e., the second point cloud object disappears).
[0107] In the above method for determining the semantic distance of point cloud objects, the semantic information of the first point cloud object in the crowdsourced map and the semantic information of the second point cloud object with a corresponding semantic map are extracted. Based on the geometric information of the objects, the semantic distance between the point cloud objects in the crowdsourced map and the point cloud objects in the semantic map is determined, which provides a guarantee for map matching and updating.
[0108] In one embodiment, such as Figure 5 As shown, a map matching method is provided, which is applied to... Figure 1 Taking the terminal in the example, the explanation includes the following steps:
[0109] Step 502: Extract the point cloud of the target object from the crowdsourced map corresponding to the current collection area.
[0110] Step 504: Construct the first point cloud object based on the target object point cloud and extract the corresponding first semantic information.
[0111] Specifically, the extracted target object point cloud is denoised and clustered to construct at least one first point cloud object, and the first semantic information of each first point cloud object is extracted.
[0112] Step 506: Obtain all second point cloud objects in the semantic map and their corresponding second semantic information.
[0113] Step 508: Determine the semantic distance between the first point cloud object and each of the second point cloud objects based on the first semantic information and the second semantic information.
[0114] Specifically, the center position coordinate distance difference value is determined based on the point cloud center coordinates of the first point cloud object and the point cloud center coordinates of the second point cloud object; the vertex cloud object orientation difference value is determined based on the main orientation of the first point cloud object and the main orientation of the second point cloud object; the calibration box size difference value is determined based on the calibration box size of the first point cloud object and the second point cloud object; the appearance feature difference value is determined based on the shape elements of the point cloud histogram of the first point cloud object and the shape elements of the point cloud histogram of the second point cloud object; and the semantic distance between each first point cloud object and the second point cloud object in the semantic map is obtained by weighting the center position coordinate distance difference score, the point cloud object orientation difference score, the calibration box size difference score, and the appearance feature difference score.
[0115] Step 510: Obtain the number of first point cloud objects n in the crowdsourced map and the number of second point cloud objects m in the semantic map, and obtain an n*m correlation matrix.
[0116] Step 512: Use the semantic distance as an element of the association matrix.
[0117] Understandably, each element in the association matrix represents the semantic distance between the first point cloud object in the crowdsourced map and the second point cloud object in the semantic map. For example, if there are 3 first point cloud objects in the crowdsourced map and 3 second point cloud objects in the semantic map, forming a 3*3 association matrix, each element of the association matrix represents the semantic distance between the first point cloud object and the second point cloud object in the semantic map.
[0118] Step 514: Based on the predetermined threshold and the association matrix, obtain the matching result between the first point cloud object in the crowdsourced map and the second point cloud object in the semantic map.
[0119] If the semantic distance is less than a predetermined threshold, it indicates that there is a correlation between the corresponding first point cloud object and the second point cloud object.
[0120] Specifically, semantic distance is used as an element of the association matrix. When there is a first element in the association matrix that is greater than or equal to a predetermined threshold, it is determined that the first point cloud object and the second point cloud object corresponding to the first element are not a point cloud object matching pair. The first point cloud object and the second point cloud object corresponding to the first element not being a point cloud object matching pair includes the first point cloud object being a newly added point cloud object or the second point cloud object being a disappeared point cloud object.
[0121] When at least one second element in the association matrix is less than a predetermined threshold, it is determined that the first point cloud object corresponding to the second element has at least one matching second point cloud object. The association matrix is then segmented based on the second element to obtain several sub-graphs. Bipartite graph matching is performed on each sub-graph to determine the second point cloud object that matches the first point cloud object. In other words, bipartite graph matching is performed on each sub-graph to determine the matching cost between the first point cloud object and each second point cloud object in the sub-graph. The second point cloud object corresponding to the smallest matching cost is determined as the matching point cloud object of the first point cloud object. The bipartite graph matching is implemented using the Hungarian algorithm. The object connection pair (object, crowd_object) with the minimum cost is the point cloud object matching pair. For example... Figure 3b The image shown is a schematic diagram of matching point cloud objects in one embodiment.
[0122] For example, a crowdsourced map includes first point cloud objects 1, 2, and 3, and corresponding semantic maps contain second point cloud objects 4, 5, and 6. The semantic distance between first point cloud object 2 and second point cloud object 4, and between first point cloud object 2 and second point cloud object 5 is greater than a predetermined value, making them unmatched point cloud objects. The semantic distance between first point cloud object 1 and second point cloud object 4, and between first point cloud object 1 and second point cloud object 5 is less than a predetermined threshold. Therefore, the semantic distance between first point cloud object 1 and second point cloud object 4, and between first point cloud object 1 and second point cloud object 5 needs to be segmented into a sub-graph. The existing Hungarian matching algorithm is then used to obtain the matching cost for first point cloud object 1 and second point cloud object 4, and between first point cloud object 1 and second point cloud object 5. The point cloud object with the smallest cost is determined as the final matched point cloud object for first point cloud object 1.
[0123] In the above map matching method, target object point clouds are extracted from crowdsourced data. Semantic information is further extracted from the extracted object point clouds, compressing the data size while obtaining more information. This makes the overall map data size extremely small while containing all the necessary information. Here, a matching algorithm is added to the map update, instead of simply judging whether they are the same object based on semantic distance. In the local map, when the number of objects exceeds a certain threshold, the semantic distance-based matching algorithm will make the map update more accurate.
[0124] In one embodiment, such as Figure 6 As shown, a semantic information averaging processing method is provided, which is then applied to... Figure 1 Taking the terminal in the example, the explanation includes the following steps:
[0125] Step 602: Interpolate the PCA coordinate system direction in the first semantic information and the PCA coordinate system direction in the second semantic information to obtain the updated PCA coordinate system direction.
[0126] In this context, the PCA coordinate system direction in the first semantic information and the PCA coordinate system direction in the second semantic information are quaternions. That is, the PCA coordinate system direction in the first semantic information is quaternion q1, the PCA coordinate system direction in the second semantic information is quaternion q2, and the resulting updated PCA coordinate system direction is quaternion q. update .
[0127] Based on quaternions q1 and q2, the updated PCA coordinate system orientation is obtained as quaternion q. update It is determined through quaternion Slerp interpolation, including the following steps:
[0128] Calculate the relative rotation Δq between q1 and q2.
[0129] Δq=q1 -1 *q2=[Δq w Δq x Δq y Δq z ] T ; where Δq w , Δq x , Δq y , Δq z These four are the four components of a quaternion.
[0130] Calculate the rotation angle θ between the point cloud centers of the first and second point cloud objects.
[0131] θ = 2*arccos(Δq) w )
[0132] slerp interpolation value
[0133] q update =(q1*sin((1-t)θ / 2)+q2*sin(tθ / 2)) / sin(θ / 2)
[0134] Where t∈[0,1]. In this embodiment, t=0.5.
[0135] Specifically, the PCA coordinate system direction in the first semantic information and the PCA coordinate system direction in the second semantic information are interpolated to obtain the updated PCA coordinate system direction. The main direction of the point cloud is updated according to the updated PCA coordinate system direction, and the same axis (such as the x-axis, y-axis, or z-axis) of the updated PCA coordinate system direction is used as the updated main direction.
[0136] Step 604: Perform mean processing on the point cloud centers in the first semantic information and the point cloud centers in the second semantic information to obtain the updated point cloud centers.
[0137] Specifically, the point cloud centers (cx1, cy1, cz1) in the first semantic information of the first point cloud object in the local coordinate system and the point cloud centers (cx2, cy2, cz2) in the second semantic information of the second point cloud object in the local coordinate system are averaged and then transformed to obtain the updated point cloud center c in world coordinates. update It can be represented in the following ways:
[0138] c update =[cx update cy update cz update ] T ; where cx update = (cx1 + cx2) / 2;
[0139] cy update =(cy1+cy2) / 2; cz update = (cz1+cz2) / 2;
[0140] Step 606: Perform mean processing on the minimum bounding boxes of the point cloud in the first semantic information and the minimum bounding boxes of the point cloud in the second semantic information to obtain the updated minimum bounding boxes of the point cloud.
[0141] Step 608: Based on the updated PCA coordinate system orientation, perform coordinate transformation on the updated point cloud center to the updated object coordinate system to obtain the target point cloud center coordinates.
[0142] The bounding box dimensions of the point cloud minimum bounding box are width, height, and depth, where width < height < depth. The updated bounding box dimensions are obtained by averaging the point cloud minimum bounding boxes (w1, h1, d1) in the first semantic information and (w2, h2, d2) in the second semantic information. update h update d update ).in:
[0143] w update = (w1+w2) / 2
[0144] h update = (h1+h2) / 2
[0145] d update = (d1+d2) / 2
[0146] Based on the updated PCA coordinate system direction q update The point cloud center will be updated. update =[cx update cy update cz update ] T Perform a coordinate transformation to the updated object coordinate system calculated by PCA to obtain the center coordinates c of the target point cloud. local =[cx local cy local cz local ] T .
[0147] Step 610: Based on the center coordinates of the target point cloud and the minimum bounding box of the updated point cloud, obtain the vertex coordinates of the updated bounding box.
[0148] Specifically, vertex coordinates are determined based on the center coordinates of the target point cloud and the size information of the updated minimum bounding box of the point cloud; the size information includes width, height, and depth; the specific steps include:
[0149] Step 702: Obtain the vertex coordinates of the updated bounding box on the x-axis based on the x-axis coordinates of the target point cloud center and the width.
[0150] Step 704: Obtain the vertex coordinates of the updated bounding box on the y-axis based on the y-axis coordinates and height of the target point cloud center.
[0151] Step 706: Obtain the vertex coordinates of the updated bounding box on the z-axis based on the z-axis coordinates of the target point cloud center and the depth.
[0152] Step 708: Obtain the vertex coordinates of the updated bounding box based on the vertex coordinates of the updated bounding box on the x-axis, the vertex coordinates on the y-axis, and the vertex coordinates on the z-axis.
[0153] In other words, the maximum and minimum values on the x-axis of the local coordinate system are obtained based on the x-axis coordinate and width of the target point cloud center; the maximum and minimum values on the y-axis of the local coordinate system are obtained based on the y-axis coordinate and height of the target point cloud center; the maximum and minimum values on the z-axis of the local coordinate system are obtained based on the z-axis coordinate and depth of the target point cloud center; and the vertex coordinates of the updated bounding box are determined based on the maximum and minimum values on the x-axis, y-axis, and z-axis.
[0154] Specifically, the maximum and minimum values on the x-axis, y-axis, and z-axis of the local coordinate system are inverted to the world coordinate system to obtain the corresponding maximum and minimum values on the x-axis, y-axis, and z-axis. This allows us to obtain the coordinates of the 8 vertices of the updated bounding box. That is, based on the updated point cloud minimum bounding box (w... utpdate h update d update ) and c in the local coordinate system local =[cx local cy local cz local ] T Determine the maximum and minimum values in the x, y, and z directions in the local coordinate system. in:
[0155]
[0156]
[0157]
[0158] The above-mentioned local coordinate system is used to calculate Reverse to world coordinates to obtain the maximum and minimum values of x, y, and z in the corresponding coordinates. min x max y min y max , z min , z max The coordinates of the 8 vertices of the updated bounding box are obtained as follows:
[0159] 1(x max y max , z max ), 2(x max ymax , z min ),
[0160] 3(x max y min , z min ), 4(x max y min , z max ),
[0161] 5(x min y max , z max ), 6(x min y max , z min ),
[0162] 7(x min y min , z min ), 8(x min y min , z max ).
[0163] Step 612: Perform translation, rotation, and coordinate transformation on the point cloud convex hull in the first semantic information and the point cloud convex hull in the second semantic information to obtain the updated point cloud convex hull.
[0164] Specifically, according to the updated PCA coordinate system direction q update and update point cloud center c update The point cloud convex hull M1 in the first semantic information and the point cloud convex hull M2 in the second semantic information are translated and rotated to a position c. update Centered on, q update In local coordinates for the rotation direction, the fused point cloud convex hull M of the two point cloud convex hulls is obtained. local The existing point cloud convex hull calculation method is used to recalculate the fused point cloud convex hull M. local The convex hull is obtained by using the updated point cloud minimum bounding box (w update h update d update ) for the convex hull M of the fused point cloud local The convex hull of the point cloud is filtered to obtain the filtered point cloud convex hull M. local+update , the convex hull M of the point cloud local+update After transforming the coordinate system to the world coordinate system, we obtain the updated point cloud convex hull M. update .
[0165] Step 614: Based on the object point cloud of the first point cloud, perform coordinate system transformation to update the histogram in the second semantic information, and obtain the updated histogram.
[0166] In semantic maps, it is not necessary to save the object point cloud itself; the histogram can be re-determined based on the object point cloud data of the newly collected crowdsourced map.
[0167] Specifically, according to the PCA coordinate system direction q update Update point cloud center c update The relative relationship between the PCA coordinate system direction q1 and the point cloud center c1 of the first point cloud object is used to transform the object point cloud PLC1 of the first point cloud object to q1. update and c update PLC in local coordinate system local After transforming to the world coordinate system, the PLC is obtained. update The updated point cloud minimum bounding box (w) is used. update h update d update ) Filter the updated object point cloud, filtering within the minimum bounding box (w) of the point cloud. update h update d update After removing points outside the target area, the histogram is recalculated to obtain updated histograms of the same object in the crowdsourced map and semantic map.
[0168] Step 616: Based on the updated PCA coordinate system orientation, updated point cloud center, vertex coordinates, updated point cloud convex hull, and updated histogram, obtain the average semantic information of the first point cloud object after the update.
[0169] In the above-mentioned semantic information averaging method, when new data is collected through crowdsourcing, it is matched with the corresponding semantic map. For the matched point cloud objects, semantic averaging is performed on semantic information such as the distance between the center points of the matched point cloud objects, the magnitude of differences in object orientation, the magnitude of differences in bounding box size, and the magnitude of differences in histogram, rather than simply retaining old objects or using new objects. This method maximizes the preservation of information from the crowdsourced data and improves the accuracy of map updates.
[0170] In another embodiment, such as Figure 8 As shown, a semantic map update method is provided, which is applied to... Figure 1 Taking the terminal in the example, the explanation includes the following steps:
[0171] Step 802: When the updated collection area has a corresponding semantic map, determine the first point cloud object and the corresponding first semantic information of the newly collected crowdsourced map in the collection area.
[0172] Step 804: When there is a matching point cloud object in the semantic map that matches the first point cloud object, obtain the second semantic information of the matching point cloud object.
[0173] Step 806: Perform semantic averaging based on the first semantic information and the second semantic information to update the first semantic information of the first point cloud object, and obtain the updated average semantic information of the first point cloud object.
[0174] The average semantic information includes at least one of the following: the updated PCA coordinate system orientation, the updated point cloud center, the updated bounding box vertex coordinates, the updated point cloud convex hull, and the updated histogram.
[0175] Specifically, semantic averaging is performed based on the first semantic information and the second semantic information to update the first semantic information of the first point cloud object, thereby obtaining the updated PCA coordinate system direction of the first point cloud object, the updated point cloud center, the updated vertex coordinates of the bounding box, the updated point cloud convex hull, and any one of the average semantic information in the histogram.
[0176] Optionally, in one embodiment, the PCA coordinate system direction in the first semantic information and the PCA coordinate system direction in the second semantic information are interpolated to obtain the updated PCA coordinate system direction; based on the updated PCA coordinate system direction, the updated average semantic information of the first point cloud object is obtained.
[0177] Optionally, in one embodiment, after determining the updated PCA coordinate system orientation, the point cloud center in the first semantic information and the point cloud center in the second semantic information are averaged to obtain the updated point cloud center; based on the updated PCA coordinate system orientation and the updated point cloud center, the updated average semantic information of the first point cloud object is obtained.
[0178] Optionally, in one embodiment, after determining the updated PCA coordinate system orientation and the updated point cloud center, the minimum bounding box of the point cloud in the first semantic information and the minimum bounding box of the point cloud in the second semantic information are subjected to mean processing and coordinate transformation processing to obtain the vertex coordinates of the updated bounding box; based on the updated PCA coordinate system orientation, the updated point cloud center and the vertex coordinates of the updated bounding box, the updated average semantic information of the first point cloud object is obtained.
[0179] Optionally, in one embodiment, after determining the updated PCA coordinate system orientation, the updated point cloud center, and the updated bounding box vertex coordinates, the point cloud convex hull in the first semantic information and the point cloud convex hull in the second semantic information are further translated, rotated, and transformed to obtain the updated point cloud convex hull; based on the updated PCA coordinate system orientation, the updated point cloud center, the updated bounding box vertex coordinates, and the updated point cloud convex hull, the updated average semantic information of the first point cloud object is obtained.
[0180] Optionally, in one embodiment, the updated PCA coordinate system orientation, the updated point cloud center, the updated bounding box vertex coordinates, and the updated point cloud convex hull are determined. Furthermore, the histogram in the second semantic information is updated based on the object point cloud of the first point cloud object through coordinate system transformation to obtain an updated histogram. Based on the updated PCA coordinate system orientation, the updated point cloud center, the updated bounding box vertex coordinates, the updated point cloud convex hull, and the updated histogram, the updated average semantic information of the first point cloud object is obtained.
[0181] Step 808: Update the semantic map based on the average semantic information.
[0182] The aforementioned semantic map update method, when a corresponding semantic map exists in the updated collection area, extracts the semantic information of point cloud objects. When a matching point cloud object exists in both the corresponding semantic map and the newly collected crowdsourced map, the semantic information of the collected point cloud object is semantically averaged with the semantic information of the object in the corresponding semantic map. This yields one of the following: updated PCA coordinate system direction, updated point cloud center, updated bounding box vertex coordinates, updated point cloud convex hull, and updated histogram. The semantic map is then updated based on the average semantic information, maximizing the preservation of crowdsourced data information and preventing a single data point with the largest error from being stored in the map, which could affect map accuracy and subsequent positioning accuracy; thus further improving the safety of autonomous driving.
[0183] In another embodiment, such as Figure 9 As shown, a semantic map update method is provided, which is applied to... Figure 1 Taking the terminal in the example, the explanation includes the following steps:
[0184] Step 902: When the updated collection area has a corresponding semantic map, determine the first point cloud object and the corresponding first semantic information of the newly collected crowdsourced map in the collection area.
[0185] Step 904: When there is a matching point cloud object in the semantic map that matches the first point cloud object, obtain the second semantic information of the matching point cloud object.
[0186] Step 906: Interpolate the PCA coordinate system direction in the first semantic information and the PCA coordinate system direction in the second semantic information to obtain the updated PCA coordinate system direction.
[0187] Step 908: Average the point cloud centers in the first semantic information and the point cloud centers in the second semantic information to obtain the updated point cloud centers.
[0188] Step 910: Perform mean processing and coordinate transformation on the minimum bounding box of the point cloud in the first semantic information and the minimum bounding box of the point cloud in the second semantic information to obtain the vertex coordinates of the updated bounding box.
[0189] Step 912: Perform translation, rotation, and coordinate transformation on the point cloud convex hull in the first semantic information and the point cloud convex hull in the second semantic information to obtain the updated point cloud convex hull.
[0190] Step 914: Based on the object point cloud of the first point cloud object, perform coordinate system transformation to update the histogram in the second semantic information, and obtain the updated histogram.
[0191] Step 916: Based on the updated PCA coordinate system orientation, updated point cloud center, vertex coordinates, updated point cloud convex hull, and updated histogram, obtain the average semantic information of the updated first point cloud object.
[0192] Step 918: Update the semantic map based on the average semantic information.
[0193] Step 920: Localization is performed based on the updated semantic map obtained after updating the semantic map.
[0194] The process involves loop closure detection and localization based on the updated semantic map. The methods for localization and loop closure detection can be implemented using existing techniques and will not be elaborated upon here. Loop closure detection, also known as loop shut-off detection, refers to the device's ability to identify instances where a scene has been visited, thus closing the map loop; that is, it can match the currently generated map with the previously generated map.
[0195] In other words, after obtaining the updated semantic map, localization and loop closure detection can be performed on the semantic map to match objects and lane lines and obtain localization results; for example, the surrounding traffic environment of the current location can be obtained; prompts can be generated based on the surrounding traffic environment, and the planned route can be updated in real time according to the destination, improving the on-time arrival rate and the safety of autonomous driving; that is, the updated semantic map improves the loop closure detection capability, reduces accumulated errors, and further improves the accuracy of localization and speed obstacle avoidance.
[0196] The aforementioned semantic map update method, when a corresponding semantic map exists in the updated collection area, extracts the semantic information of point cloud objects. When a matching point cloud object exists in both the corresponding semantic map and the newly collected crowdsourced map, the semantic information of the collected point cloud object is semantically averaged with the semantic information of the object in the corresponding semantic map to obtain the average semantic information of the updated point cloud object. The semantic map is then updated based on this average semantic information, thus maximizing the preservation of information from the crowdsourced data and preventing a single data point with the largest error from being stored in the map, which could affect map accuracy and subsequent positioning accuracy; this further improves the safety of autonomous driving.
[0197] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0198] Based on the same inventive concept, this application also provides a semantic map updating apparatus for implementing the semantic map updating method described above. The solution provided by this apparatus is similar to the implementation described in the above method; therefore, the specific limitations in one or more semantic map updating apparatus embodiments provided below can be found in the limitations of the semantic map updating method described above, and will not be repeated here.
[0199] A semantic map updating apparatus includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to perform the following steps:
[0200] When updating the collection area, if a corresponding semantic map exists, determine the first point cloud object and the corresponding first semantic information of the newly collected crowdsourced map in the collection area.
[0201] When a matching point cloud object exists in the semantic map, the second semantic information of the matching point cloud object is obtained.
[0202] By performing semantic averaging on the first and second semantic information, the updated average semantic information of the first point cloud object is obtained.
[0203] The semantic map is updated based on average semantic information.
[0204] The aforementioned semantic map update device, when a corresponding semantic map exists in the updated collection area, extracts the semantic information of point cloud objects. When a matching point cloud object exists in both the corresponding semantic map and the newly collected crowdsourced map, the semantic information of the collected point cloud object is semantically averaged with the semantic information of the object in the corresponding semantic map to obtain the average semantic information of the updated point cloud object. The semantic map is then updated based on this average semantic information, thus maximizing the preservation of information from the crowdsourced data and preventing a single data point with the largest error from being stored in the map, which could affect map accuracy and subsequent positioning accuracy; this further improves the safety of autonomous driving.
[0205] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 10 As shown, the computer device includes a processor, memory, communication interface, display screen, and input devices connected via a system bus. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When executed by the processor, the computer program implements a semantic map update method. The display screen can be an LCD screen or an e-ink display screen. The input devices can be a touch layer covering the display screen, buttons, a trackball, or a touchpad mounted on the computer device casing, or an external keyboard, touchpad, or mouse.
[0206] Those skilled in the art will understand that Figure 10 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0207] In one embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above method embodiments.
[0208] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.
[0209] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.
[0210] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties.
[0211] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0212] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0213] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A semantic map update method, characterized in that, The method includes: When updating the collection area, if a corresponding semantic map exists, determine the first point cloud object and the corresponding first semantic information of the newly collected crowdsourced map in the collection area. When a matching point cloud object exists in the semantic map, the second semantic information of the matching point cloud object is obtained. Based on the first semantic information and the second semantic information, perform semantic averaging to update the first semantic information of the first point cloud object, and obtain the updated average semantic information of the first point cloud object. The semantic map is updated based on the average semantic information; The step of performing semantic averaging based on the first semantic information and the second semantic information to update the first semantic information of the first point cloud object and obtain the updated average semantic information of the first point cloud object includes: performing interpolation processing on the PCA coordinate system direction in the first semantic information and the PCA coordinate system direction in the second semantic information to obtain the updated PCA coordinate system direction; performing averaging processing on the point cloud center in the first semantic information and the point cloud center in the second semantic information to obtain the updated point cloud center; performing averaging processing and coordinate transformation processing on the minimum bounding box of the point cloud in the first semantic information and the minimum bounding box of the point cloud in the second semantic information to obtain the vertex coordinates of the updated bounding box; and obtaining the updated average semantic information of the first point cloud object based on the updated PCA coordinate system direction, the updated point cloud center, and the vertex coordinates of the updated bounding box.
2. The method according to claim 1, characterized in that, The average semantic information also includes either updating the point cloud convex hull or updating the histogram.
3. The method according to claim 1, characterized in that, The step of performing mean processing and coordinate transformation on the minimum bounding boxes of the point clouds in the first semantic information and the second semantic information to obtain the vertex coordinates of the updated bounding box includes: The minimum bounding boxes of the point cloud in the first semantic information and the minimum bounding boxes of the point cloud in the second semantic information are averaged to obtain the updated minimum bounding boxes of the point cloud. Based on the updated PCA coordinate system orientation, the updated point cloud center is transformed to the updated object coordinate system to obtain the target point cloud center coordinates; The vertex coordinates of the updated bounding box are obtained based on the center coordinates of the target point cloud and the minimum bounding box of the updated point cloud.
4. The method according to claim 3, characterized in that, The step of obtaining the vertex coordinates of the updated bounding box based on the center coordinates of the target point cloud and the minimum bounding box of the updated point cloud includes: The vertex coordinates are determined based on the center coordinates of the target point cloud and the size information of the minimum bounding box of the updated point cloud; the size information includes width, height, and depth. Specifically, the vertex coordinates of the updated bounding box on the x-axis are obtained based on the x-axis coordinates of the target point cloud center and the width. The vertex coordinates of the updated bounding box on the y-axis are obtained based on the y-axis coordinates of the target point cloud center and the height; and The vertex coordinates of the updated bounding box on the z-axis are obtained based on the z-axis coordinates of the target point cloud center and the depth.
5. The method according to claim 2, characterized in that, The step of performing semantic averaging based on the first semantic information and the second semantic information to update the first semantic information of the first point cloud object, and obtaining the updated average semantic information of the first point cloud object, includes: The point cloud convex hull in the first semantic information and the point cloud convex hull in the second semantic information are translated, rotated and transformed to obtain the updated point cloud convex hull; The average semantic information of the first point cloud object is obtained based on the updated PCA coordinate system direction, the updated point cloud center, the vertex coordinates of the updated bounding box, and the updated point cloud convex hull.
6. The method according to claim 5, characterized in that, The step of performing semantic averaging based on the first semantic information and the second semantic information to update the first semantic information of the first point cloud object, and obtaining the updated average semantic information of the first point cloud object, includes: The updated histogram in the second semantic information is obtained by performing coordinate system transformation based on the object point cloud of the first point cloud object. Based on the updated PCA coordinate system orientation, the updated point cloud center, the updated bounding box vertex coordinates, the updated point cloud convex hull, and the updated histogram, the average semantic information of the first point cloud object is obtained after the update.
7. A semantic map updating apparatus, comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it performs the following steps: When updating the collection area, if a corresponding semantic map exists, determine the first point cloud object and the corresponding first semantic information of the newly collected crowdsourced map in the collection area. When a matching point cloud object exists in the semantic map, the second semantic information of the matching point cloud object is obtained. Based on the first semantic information and the second semantic information, perform semantic averaging to update the first semantic information of the first point cloud object, and obtain the updated average semantic information of the first point cloud object. The semantic map is updated based on the average semantic information; The step of performing semantic averaging based on the first semantic information and the second semantic information to update the first semantic information of the first point cloud object and obtain the updated average semantic information of the first point cloud object includes: interpolating the PCA coordinate system direction in the first semantic information and the PCA coordinate system direction in the second semantic information to obtain the updated PCA coordinate system direction; averaging the point cloud center in the first semantic information and the point cloud center in the second semantic information to obtain the updated point cloud center; averaging and coordinate transformation the minimum bounding box of the point cloud in the first semantic information and the minimum bounding box of the point cloud in the second semantic information to obtain the vertex coordinates of the updated bounding box; and obtaining the updated average semantic information of the first point cloud object based on the updated PCA coordinate system direction, the updated point cloud center, and the vertex coordinates of the updated bounding box.
8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes a computer program, it implements the steps of the method as described in any one of claims 1 to 6.
9. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Semantic map construction method and equipment
CN112784873A
Cited By
Deviation correction tracking method and system based on semantic map and high-precision map matching and medium
CN117109605A