Map data processing method and device, electronic equipment and storage medium

CN118152491BActive Publication Date: 2026-10-27AUTONAVI SOFTWARE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410138139.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-01-31
Publication Date
2026-10-27
Estimated Expiration
2044-01-31

AI Technical Summary

Technical Problem

发明人研究发现,现有的切分方案可能会将收费站、路口、分岔口、盘桥等需要保证场景完整的一些复杂场景切分在不同的作业单元中,这些复杂场景的车道线和地面标志数量远多于普通路段,而且往往还有多层,对横向、纵向精度要求较高,如果将这些复杂场景从中间切开,将导致接边作业量大、难度大

Benefits of technology

[0017]根据本公开实施例提供的技术方案,可以在获取待切分的地图矢量数据之后,确定待切分的地图矢量数据中的复杂场景的场景边界,这样就可以确定未与所述复杂场景的场景边界相交的切分线,使用所述切分线切分所述待切分的地图矢量数据,得到的切分后的地图矢量数据中的复杂场景就会是连续的;这样通过确定待切分的地图矢量数据中的复杂场景的场景边界,找到未与复杂场景相交的切分线来切分该待切分的地图矢量数据,可以保证复杂场景的连续性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118152491B_ABST
    Figure CN118152491B_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure disclose a map data processing method and device, electronic equipment and storage medium. The method comprises: obtaining map vector data to be split; determining a scene boundary of a complex scene in the map vector data to be split; determining a split line that does not intersect the scene boundary of the complex scene; and splitting the map vector data to be split using the split line to obtain split map vector data. The technical solution can ensure the continuity of the complex scene.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of map data technology, specifically to a map data processing method, apparatus, electronic device, and storage medium. Background Technology

[0002] With urban construction and development, the real world is constantly changing, and electronic maps reflecting this reality also require continuous map data production and updates. Currently, the map data production process primarily involves data collection followed by creation. After collecting raw map data such as point clouds and images, algorithms such as image recognition, point cloud recognition, and relocation are used to process the data and create map vector data. These vector data are then processed to identify changed map vectors, which are then fused with existing map data before being published. Because each batch of map vector data is quite large, potentially spanning several kilometers or even tens of kilometers of road vector data, to meet the demands of large-scale, batch map production, this data is typically divided into relatively independent small work units. These units are then processed in parallel for subsequent comparisons and fusion.

[0003] Existing data segmentation schemes typically divide map vector data into multiple grid areas based on latitude and longitude, or into multiple road data lines based on road centerlines or collection trajectories within the map vector data. The inventors have discovered that existing segmentation schemes may divide complex scenes requiring complete scene integrity, such as toll stations, intersections, forks, and overpasses, into different work units. These complex scenes have far more lane lines and ground markings than ordinary road sections, and often involve multiple layers, requiring high lateral and longitudinal accuracy. Cutting these complex scenes in the middle would result in a large amount of complex edge-joining work and significant difficulty. Therefore, there is an urgent need for a data segmentation scheme that can guarantee the continuity of complex scenes. Summary of the Invention

[0004] To address the problems in the related technologies, this disclosure provides a map data processing method, apparatus, electronic device, and storage medium.

[0005] In a first aspect, this disclosure provides a map data processing method, including:

[0006] Obtain the map vector data to be segmented;

[0007] Determine the scene boundaries of complex scenes in the map vector data to be segmented;

[0008] Identify the dividing lines that do not intersect with the scene boundary of the complex scene;

[0009] The map vector data to be segmented is segmented using the segmentation line to obtain the segmented map vector data.

[0010] Secondly, this disclosure provides a map data processing apparatus, including:

[0011] The acquisition module is configured to acquire the map vector data to be segmented;

[0012] The boundary determination module is configured to determine the scene boundaries of complex scenes in the map vector data to be segmented;

[0013] The slicing line determination module is configured to determine slicing lines that do not intersect with the scene boundary of the complex scene;

[0014] The segmentation module is configured to segment the map vector data to be segmented using the segmentation line to obtain the segmented map vector data.

[0015] Thirdly, embodiments of this disclosure provide an electronic device including a memory and a processor, wherein the memory is used to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method as described in any one of the first aspects.

[0016] Fourthly, this disclosure provides a computer-readable storage medium having computer instructions stored thereon, which, when executed by a processor, implement the method as described in any one of the first aspects.

[0017] According to the technical solution provided in this disclosure, after obtaining the map vector data to be segmented, the scene boundaries of complex scenes in the map vector data to be segmented can be determined. In this way, the segmentation lines that do not intersect with the scene boundaries of the complex scenes can be determined. The map vector data to be segmented is then segmented using the segmentation lines, and the complex scenes in the resulting segmented map vector data will be continuous. In this way, by determining the scene boundaries of complex scenes in the map vector data to be segmented and finding the segmentation lines that do not intersect with the complex scenes to segment the map vector data to be segmented, the continuity of complex scenes can be guaranteed.

[0018] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description

[0019] Other features, objects, and advantages of this disclosure will become more apparent from the following detailed description of non-limiting embodiments, taken in conjunction with the accompanying drawings. In the drawings:

[0020] Figure 1 A flowchart illustrating a map data processing method according to an embodiment of the present disclosure is shown;

[0021] Figure 2 A schematic diagram of a candidate sliding line according to an embodiment of the present disclosure is shown;

[0022] Figure 3 A structural block diagram of a map data processing apparatus according to an embodiment of the present disclosure is shown;

[0023] Figure 4 A structural block diagram of an electronic device according to an embodiment of the present disclosure is shown;

[0024] Figure 5 A schematic diagram of the structure of a computer system suitable for implementing the method according to embodiments of the present disclosure is shown. Detailed Implementation

[0025] In the following, exemplary embodiments of the present disclosure will be described in detail with reference to the accompanying drawings to enable those skilled in the art to readily implement them. Furthermore, for clarity, portions unrelated to the description of exemplary embodiments have been omitted from the drawings.

[0026] In this disclosure, it should be understood that terms such as “comprising” or “having” are intended to indicate the presence of features, figures, steps, behaviors, components, parts or combinations thereof disclosed in this specification, and are not intended to exclude the possibility of the presence or addition of one or more other features, figures, steps, behaviors, components, parts or combinations thereof.

[0027] It should also be noted that, unless otherwise specified, the embodiments and features described in this disclosure can be combined with each other. This disclosure will now be described in detail with reference to the accompanying drawings and embodiments.

[0028] 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. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation portals are provided for users to choose to authorize or refuse.

[0029] As mentioned above, existing data segmentation schemes typically divide map vector data into multiple grid areas based on latitude and longitude, or into multiple road data based on road centerlines or collection trajectories within the map vector data. The inventors have discovered that existing segmentation schemes may divide complex scenes requiring completeness, such as toll stations, intersections, forks, and overpasses, into different work units. These complex scenes have far more lane lines and ground markings than ordinary road sections, and often involve multiple layers, requiring high lateral and longitudinal accuracy. Cutting these complex scenes in the middle would result in a large amount of complex edge-joining work and significant difficulty. Therefore, there is an urgent need for a data segmentation scheme that can guarantee the continuity of complex scenes.

[0030] This disclosure provides a map data processing method. This method can obtain a dividing line that does not intersect with the scene boundary of the complex scene in the map vector data to be divided. In this way, when the map vector data to be divided is divided using the dividing line, the complex scene in the map vector data to be divided will not be separated, and the complex scene in the resulting divided map vector data will be continuous.

[0031] Figure 1 A flowchart illustrating a map data processing method according to an embodiment of the present disclosure is shown. Figure 1 As shown, the map data processing method includes the following steps S101-S104:

[0032] In step S101, the map vector data to be segmented is obtained;

[0033] In step S102, the scene boundaries of complex scenes in the map vector data are determined;

[0034] In step S103, the dividing lines that do not intersect with the scene boundary of the complex scene are determined;

[0035] In step S104, the map vector data to be segmented is segmented using the segmentation line to obtain the segmented map vector data.

[0036] In one possible implementation, the map data processing method is applicable to devices such as computers, computing devices, servers, and server clusters capable of performing map data processing.

[0037] In one possible implementation, the map vector data refers to the vector data of various road elements on the map, which can be expressed as position coordinates and geometry (such as points, lines, polygons, polygon sets, etc.) based on a certain coordinate system, as well as classifications (such as lane lines, arrows, stop lines, speed limit signs, traffic guidance signs, pedestrian crossings, road sections, poles, signs, etc.).

[0038] In one possible implementation, the server can generate the map vector data to be segmented based on the collected raw map data, such as image data, point cloud data, trajectory data, etc., or it can obtain the map vector data to be segmented generated by the upstream client.

[0039] In one possible implementation, the complex scene refers to a scene with intricate road network, such as toll booths, intersections, forks in the road, and roundabouts. The boundary of this complex scene can be a manually selected and marked boundary, or it can be a boundary marked by a recognition algorithm after identifying the complex scene from the map vector data to be segmented.

[0040] In one possible implementation, the map vector data to be segmented can be divided into two or more regions, either equally or unequally, according to latitude and longitude. The line segments that cut the map vector data are called segmentation lines. These segmentation lines must ensure that they do not intersect with the scene boundaries of complex scenes within the map vector data to be segmented. It should be noted that equal division is preferred. Only when equal division is not possible without intersecting with the scene boundaries of the complex scene should unequal division be performed. In unequal division, the difference in data volume or area between the segmented regions must be within a predetermined data volume threshold or area difference threshold. Alternatively, the driving trajectory when collecting the original map data corresponding to the map vector data to be segmented can be used as a reference. The driving trajectory can be equally divided to segment the map vector data to be segmented. When equal division is not possible without intersecting with the scene boundaries of the complex scene, unequal division can be performed. In this case, the length difference between the segmented roads must be within a predetermined length threshold. Of course, the dividing line can also be determined in other ways, as long as it does not intersect with the scene boundary of the complex scene.

[0041] This implementation method can determine the scene boundaries of complex scenes in the map vector data to be segmented after acquiring the map vector data to be segmented. This allows for the identification of segmentation lines that do not intersect with the scene boundaries of the complex scenes. Using these segmentation lines to segment the map vector data ensures that the complex scenes in the resulting segmented map vector data are continuous. By determining the scene boundaries of complex scenes in the map vector data to be segmented and finding segmentation lines that do not intersect with the complex scenes, this implementation method can guarantee the continuity of complex scenes.

[0042] In one possible implementation, determining the dividing line that does not intersect with the scene boundary of the complex scene includes:

[0043] Determine the shape center point of the outer boundary line of the map vector data to be segmented;

[0044] From the map vector data to be segmented, find multiple shape points of vector features that meet predetermined conditions, including shape points whose distance from the center point of the shape is within a predetermined distance range, whose vector feature type is a predetermined type, and whose location is outside the scene boundary of the complex scene;

[0045] For each shape point, the straight line connecting each shape point to the center point of the shape is determined as a candidate cutting line;

[0046] From the multiple candidate cutting lines corresponding to the multiple shape points, determine the candidate cutting line that does not intersect with the scene boundary of the complex scene as the cutting line of the map vector data to be cut.

[0047] In this embodiment, the outer boundary line of the map vector data to be segmented can be the boundary line of the smallest rectangle that covers the map vector data to be segmented, and the shape center point can be the center point of the smallest rectangle; alternatively, the outer boundary line can also define the boundary wrapping line that encloses the map vector data to be segmented, and the shape center point of the outer boundary line can be the shape center point of the boundary wrapping line, which can be calculated based on the vertex coordinates of the boundary wrapping line. Of course, there can be other methods to calculate the shape center point of the outer boundary line, as long as the calculation process is easy to implement and the computational load is small.

[0048] In this embodiment, the map vector data to be segmented includes many vector features. The geometric shapes of these vector features are mostly lines or polygons. The shape points of a vector feature refer to feature points that characterize the shape of that vector feature. Shape points of vector features located outside the scene boundary of the complex scene, within a predetermined distance from the center point of the shape, of a predetermined type, can be found in the map vector data to be segmented. These shape points are multiple and distributed around the center point of the shape. The predetermined type of vector feature refers to a vector feature that can be segmented, such as lane lines. Preferably, the predetermined type of vector feature can be a group of lane lines belonging to the same road.

[0049] In this embodiment, a KD tree, R tree, or octree can be constructed using the shape points of the vector features in the map vector data to be segmented, and a spatial search can be performed to obtain the shape points of the vector features that meet the predetermined conditions.

[0050] In this implementation, for each shape point, the straight line connecting the shape point and the shape center point can be determined as a candidate secant line. For example, Figure 2 A schematic diagram of a candidate dividing line according to an embodiment of the present disclosure is shown. Figure 2The diagram shows the geometric centerline point O and multiple shape points A, B, C, D, etc., of the map vector data to be segmented. Taking shape points A, B, C, and D as examples, the straight lines a, b, c, and d connecting shape points A, B, C, and D to the center point O of the shape are used as candidate segmentation lines. It should be noted here that... Figure 2 Other shape points shown also need to be connected to the center point O of the shape by straight lines as candidate dividing lines. For the sake of simplicity and clarity in the illustration, Figure 2 Only the connecting lines between shape points A, B, C, and D and the center point O of the shape are shown; the others are not shown.

[0051] In this implementation, one candidate cutting line can be selected from the multiple candidate cutting lines as the cutting line for the map vector data to be segmented. This selected candidate cutting line must ensure that it does not intersect with the scene boundary of the complex scene. Thus, when the map vector data to be segmented is segmented using the selected candidate cutting line, the complex scene within the map vector data will not be separated, and the complex scene in the resulting segmented map vector data will be continuous. For example, the scene boundary of the complex scene in the map vector data to be segmented is as follows: Figure 2 The dashed rectangular boundary shown in the figure originates from... Figure 2 As can be seen from the data, line a does not intersect with the scene boundary of the complex scene, line b intersects with the scene boundaries 201 and 202 of the complex scene, line c intersects with the scene boundaries 201 and 202 of the complex scene, and line d does not intersect with the scene boundary of the complex scene. Therefore, it can be determined that line a or line d is the dividing line of the map vector data to be divided.

[0052] It should be noted that the shape center point and shape point mentioned above can be two-dimensional location points such as latitude and longitude location points. The location calculations mentioned above are all performed in a two-dimensional scene and do not involve elevation information, which can reduce the amount of calculation.

[0053] This implementation method can determine the straight line connecting the shape center point and the shape points of vector elements outside the complex scene that are close to the shape center point as candidate cutting lines. From these candidate cutting lines, the cutting line that does not intersect with the scene boundary of the complex scene is selected as the cutting line of the map vector data to be cut. In this way, while ensuring the continuity and integrity of the scene, using the line based on the shape center point as the cutting line can approximately divide the map vector data to be cut evenly. This can ensure that the difference in the size of the data after cutting is small, so that the processing time of the subsequent work units is also similar, ensuring the stability of the processing cycle of the subsequent work units, facilitating the allocation of tasks to the subsequent work units, and benefiting the management of the subsequent work units.

[0054] In one possible implementation, determining a candidate cutting line from among the multiple candidate cutting lines corresponding to the plurality of shape points that does not intersect with the scene boundary of the complex scene as the cutting line of the map vector data to be cut includes:

[0055] One candidate cutting line that meets the screening criteria is selected from the multiple candidate cutting lines as the cutting line of the map vector data to be cut. The screening criteria include that the candidate cutting line does not intersect with the scene boundary of the complex scene and that the amount of data on both sides of the candidate cutting line and / or the number of vector features that intersect with the candidate cutting line both reach the predetermined cutting conditions.

[0056] In this implementation, when segmenting the map vector data to be segmented, in order to improve the concurrency and processing efficiency of subsequent work units, the segmented map vector data, in addition to satisfying the continuity of complex scenes, also needs to have a moderate data volume. If the data volume of the segmented map vector data is too large, it means that there are too few segments, which will lead to low concurrency and high resource processing requirements for subsequent work units. If the data volume of the segmented map vector data is too small, it will lead to insufficient reference data for subsequent work units, more edge-connecting operations between tasks, and affect work efficiency and quality. Therefore, it is necessary to ensure that the data volume of the segmented map vector data is moderate. At the same time, it is also necessary to ensure that the size difference of the segmented map vector data is small. This can ensure the stability of the processing cycle of subsequent work units, facilitate the allocation of tasks to subsequent work units, and benefit the management of subsequent work units.

[0057] Therefore, in order to better segment the map vector data to be segmented, the selection criteria for the segmentation line of the map vector data to be segmented, in addition to not intersecting with the scene boundary of the complex scene, also include that the amount of data on both sides of the candidate segmentation line and / or the number of vector features intersecting with the candidate segmentation line reach a predetermined segmentation condition. The predetermined segmentation condition can be at least one of the following conditions: the difference between the amount of data on both sides of the candidate segmentation line and the predetermined amount of data is within a first predetermined difference threshold; the difference between the amount of data on both sides of the candidate segmentation line is within a second predetermined difference threshold; and the number of vector features intersecting with the candidate segmentation line is less than or equal to a predetermined number threshold.

[0058] In this embodiment, candidate cutting lines that do not intersect with the scene boundary of the complex scene can be obtained first, and then candidate cutting lines that meet the above-mentioned predetermined cutting conditions can be selected from these candidate cutting lines as the cutting lines of the map vector data to be cut.

[0059] It should be noted that the amount of data on both sides of the candidate dividing line can be the total length of the lane lines on both sides of the candidate dividing line, or the length of the road on both sides of the candidate dividing line, etc.; the number of vector elements intersecting with the candidate dividing line can be the number of lane lines intersecting with the candidate dividing line, or the number of roads intersecting with the candidate dividing line, etc.

[0060] The dividing line selected in this embodiment not only considers the intersection with the scene boundary of the complex scene, but also considers whether the amount of data on both sides of the dividing line and / or the number of vector elements intersecting with the dividing line meet the predetermined dividing conditions. In this way, dividing lines that can better divide the map vector data to be divided can be selected.

[0061] In one possible implementation, the method further includes:

[0062] If none of the candidate cutting lines meet the screening conditions, then for each candidate cutting line, each candidate cutting line is translated within a predetermined movement range and / or rotated within a predetermined angle range to obtain multiple extended candidate cutting lines.

[0063] From the multiple extended candidate cutting lines, one extended candidate cutting line that meets the filtering conditions is determined as the cutting line of the map vector data to be cut.

[0064] In this implementation, if there are many complex scenes in the map vector data to be segmented, all of these candidate segmentation lines will intersect with the complex scenes. At this time, there may be multiple candidate segmentation lines that do not meet the above screening conditions. Since the data segmentation does not need to be strictly equal, these multiple candidate segmentation lines can be rotated and / or translated to expand the candidate segmentation lines.

[0065] In this embodiment, if none of the candidate cutting lines meet the above screening conditions, these candidate cutting lines can be rotated within a predetermined angle range, such as less than 90 degrees, to obtain extended candidate cutting lines. For example, the rotation can be performed in steps of 3 degrees, with each rotation being 3 degrees, to obtain a batch of extended candidate cutting lines. From this batch of extended candidate cutting lines, one extended candidate cutting line that meets the above screening conditions is determined as the cutting line of the map vector data to be segmented. Of course, if none of the extended candidate cutting lines in this batch meet the above screening conditions, the rotation can continue by 3 degrees to obtain another batch of extended candidate cutting lines for scoring, until an extended candidate cutting line that meets the above screening conditions is obtained as the cutting line of the map vector data to be segmented.

[0066] Alternatively, if none of the candidate cutting lines meet the above screening criteria, these candidate cutting lines can be translated within a predetermined range, such as 10% of the length of the map vector data to be segmented, to obtain extended candidate cutting lines. For example, the translation can be performed in 10m increments, obtaining a batch of extended candidate cutting lines. From this batch of extended candidate cutting lines, one extended candidate cutting line that meets the above screening criteria is determined as the cutting line of the map vector data to be segmented. Of course, if none of the extended candidate cutting lines in this batch meet the above screening criteria, the translation can continue to be performed by 10 meters to obtain another batch of extended candidate cutting lines for scoring, until an extended candidate cutting line that meets the above screening criteria is obtained as the cutting line of the map vector data to be segmented.

[0067] Alternatively, if none of the candidate cutting lines meet the above screening criteria, these candidate cutting lines can be translated within a predetermined movement range (e.g., 10% of the length of the map vector data to be cut) and rotated within a predetermined angle range (e.g., less than 90 degrees) to obtain a batch of extended candidate cutting lines. From this batch of extended candidate cutting lines, one extended candidate cutting line that meets the above screening criteria is determined as the cutting line of the map vector data to be cut. Of course, if none of the extended candidate cutting lines in this batch meet the above screening criteria, translation and rotation can continue within the predetermined movement range and predetermined angle range to obtain another batch of extended candidate cutting lines for scoring, until an extended candidate cutting line that meets the above screening criteria is obtained as the cutting line of the map vector data to be cut.

[0068] This implementation can expand the candidate cutting lines by translating and / or rotating them based on the original candidate cutting lines, thereby expanding the search range of the cutting lines of the better solution and finding a better cutting line among the approximate cutting lines with lower complexity.

[0069] In one possible implementation, selecting one candidate cutting line that meets the filtering criteria from the plurality of candidate cutting lines as the cutting line for the map vector data to be cut includes:

[0070] For each candidate cutting line, obtain the scoring factor value of the candidate cutting line. The scoring factor value includes the number of complex scenes where the scene boundary intersects with the candidate cutting line, and at least one of the following scoring factor values: the amount of data on both sides of the candidate cutting line, and the number of vector features that intersect with the candidate cutting line.

[0071] Calculate the score of the candidate slit line based on the score factor value of the candidate slit line;

[0072] Among the multiple candidate cutting lines, the candidate cutting line with a score exceeding a predetermined score threshold is determined as the cutting line of the map vector data to be cut, wherein the candidate cutting line with a score exceeding the predetermined score threshold does not intersect with the scene boundary of the complex scene;

[0073] The method involves translating each candidate cutting line within a predetermined movement range and / or rotating each candidate cutting line within a predetermined angle range to obtain multiple extended candidate cutting lines, including:

[0074] From the multiple candidate cutting lines, select the candidate cutting lines whose scores meet the predetermined scoring conditions as the candidate cutting lines to be processed;

[0075] Each candidate cutting line to be processed is translated within a predetermined movement range and / or rotated within a predetermined angle range to obtain multiple extended candidate cutting lines.

[0076] In this implementation, the aforementioned screening condition may be that the score of the candidate cutting line reaches a predetermined score threshold. The score factor value includes the number of complex scenes whose scene boundaries intersect with the candidate cutting line, and at least one of the following score factor values: the amount of data on both sides of the candidate cutting line, and the number of vector features intersecting with the candidate cutting line. The scoring rule may be that the fewer complex scenes whose scene boundaries intersect with the candidate cutting line, the higher the score of the candidate cutting line; the closer the amount of data on both sides of the candidate cutting line is to a predetermined amount of data, the higher the score of the candidate cutting line; the smaller the difference in the amount of data on both sides of the candidate cutting line, the higher the score; and the fewer the number of vector features intersecting with the candidate cutting line, the less subsequent edge-joining work is required, resulting in a higher score for the candidate cutting line. In addition to the above scoring rules, during scoring, it is also necessary to ensure that candidate cutting lines with scores exceeding a predetermined score threshold do not intersect with the scene boundaries of the complex scenes. If a candidate cutting line intersects with the scene boundaries of the complex scene, the score of that candidate cutting line will be below the predetermined score threshold. In this way, when calculating the scores of candidate cutting lines, as long as the score of a certain candidate cutting line exceeds the predetermined score threshold, the candidate cutting line can be directly used as the cutting line of the map vector data to be cut, without having to calculate the scores of all candidate cutting lines, thus reducing the amount of computation.

[0077] In this embodiment, in order to make the segmented map vector data more uniform, the data volume more moderate, and the number of subsequent edge vector elements less, the candidate segmentation line with the highest score can be determined from the candidate segmentation lines with scores exceeding a predetermined score threshold as the segmentation line of the map vector data to be segmented.

[0078] In this embodiment, if none of the candidate cutting lines have a score reaching a predetermined score threshold, then candidate cutting lines whose scores meet predetermined scoring conditions can be selected from the multiple candidate cutting lines. These predetermined scoring conditions can be the N candidate cutting lines with the highest scores or candidate cutting lines whose scores exceed a predetermined score. Then, each candidate cutting line whose score reaches the predetermined score threshold is translated within a predetermined movement range and / or rotated within a predetermined angle range to obtain multiple extended candidate cutting lines. The specific rotation and / or translation process is known from the above description and will not be repeated here.

[0079] This embodiment can filter candidate cutting lines by calculating their scores. When no candidate cutting lines meet the filtering criteria, the candidate cutting lines with higher scores can be selected for rotation and / or translation, thereby expanding the candidate cutting lines to better ones. Then, the candidate cutting lines that meet the filtering criteria can be found more quickly from these better expanded candidate cutting lines.

[0080] In one possible implementation, the method may further include the following steps:

[0081] If none of the extended candidate cutting lines meet the filtering conditions, then the candidate cutting line with the highest score is selected from the multiple candidate cutting lines and the multiple extended candidate cutting lines as the cutting line for the map vector data to be cut.

[0082] In this embodiment, if the map vector data to be segmented is large, regardless of how it is segmented, the amount of data in the segmented map vector data will exceed the predetermined amount. This will result in no candidate segmentation line with a score exceeding the predetermined score threshold among the candidate segmentation lines after translation and / or rotation. In this case, the candidate segmentation line with the highest score can be selected from the multiple candidate segmentation lines and the multiple extended candidate segmentation lines as the segmentation line for the map vector data to be segmented. The candidate segmentation line with the highest score is most likely a candidate segmentation line that does not intersect with the scene boundary of the complex scene. The score does not exceed the predetermined score threshold only because the amount of data in the segmented map vector data is too large. In this case, the candidate segmentation line with the highest score can be used to perform the initial segmentation of the map vector data to be segmented, and then perform the secondary segmentation of the segmented map vector data.

[0083] In this embodiment, the segmented map vector data can be used as new map vector data to be segmented, and the above-described map data processing method can be executed. For example, the shape center point of the segmented map vector data can be determined, and multiple shape points of vector features that meet predetermined conditions can be found from the segmented map vector data. The predetermined conditions include vector features whose distance from the shape center point of the segmented map vector data is within a predetermined distance range, whose vector feature type is a predetermined type, and whose vector features are located outside the scene boundary of the complex scene. For each shape point, the distance between the shape point and the shape center point of the segmented map vector data is... The connecting straight lines are determined as candidate cutting lines; for each candidate cutting line, a scoring factor value can be obtained, the scoring factor value includes the number of complex scenes whose scene boundaries intersect with the candidate cutting line, the amount of data on both sides of the candidate cutting line, and the number of vector features intersecting with the candidate cutting line; the score of the candidate cutting line is calculated based on the scoring factor value; one candidate cutting line among the multiple candidate cutting lines whose score exceeds a predetermined score threshold is determined as the secondary cutting line of the segmented map vector data, wherein the candidate cutting line whose score exceeds the predetermined score threshold does not intersect with the scene boundary of the complex scene. It should be noted that if none of the candidate cutting lines among the multiple candidate cutting lines has a score exceeding a predetermined score threshold, rotation and / or translation can be performed to obtain extended candidate cutting lines. From these extended candidate cutting lines, the one with a score exceeding the predetermined score threshold is selected as the cutting line for the segmented map vector data. If none of the extended candidate cutting lines have a score exceeding the predetermined score threshold, the candidate cutting line with the highest score is selected from both the multiple candidate cutting lines and the multiple extended candidate cutting lines as the cutting line for the segmented map vector data. This highest-scoring candidate cutting line is used to segment the segmented map vector data. Then, a third segmentation is performed on the segmented map vector data until a candidate cutting line with a score exceeding the predetermined score threshold is found among the candidate cutting lines and extended candidate cutting lines corresponding to the segmented map vector data. In practical applications, usually only two segmentations are needed, and the candidate cutting lines in the second segmentation usually include those with a score exceeding the predetermined score threshold.

[0084] In one possible implementation, determining the scene boundaries of a complex scene in the map vector data includes:

[0085] Based on the scene characteristics corresponding to the pre-configured, predetermined type of complex scene, determine the region where the vector elements with the scene characteristics in the map vector data are located;

[0086] The scene boundary of the complex scene is determined based on the region where the vector elements with the scene characteristics are located.

[0087] In this implementation, the identification of scene boundaries in complex scenes is mainly used to ensure the integrity of complex scenes. High accuracy and precision are not required; a rough identification is sufficient.

[0088] In this implementation, there are various types of complex scenarios, such as toll stations, intersections, forks, and roundabouts. Different types of complex scenarios correspond to different scenario characteristics. For example, the scenario characteristics of an intersection are: multiple pedestrian crossings, multiple transverse prohibition lines, and multiple lane lines intersecting in different directions, with the angle between the intersecting lane lines within a predetermined range, such as less than 180 degrees; the scenario characteristics of a roundabout are: multiple lane lines intersecting in different directions, with the angle between the intersecting lane lines within a predetermined range, and the lane lines having a hierarchical relationship; and so on.

[0089] In this embodiment, vector elements in the map vector data that have scene features corresponding to a certain complex scene can be identified based on the scene features corresponding to various complex scenes. The area where the vector element with the scene features is located can be determined. The boundary of the area where the vector element with the scene features is located can be directly determined as the scene boundary of the complex scene. Alternatively, in order to more accurately encompass the complete complex scene, the area where the vector element with the scene features is located can be expanded outward by a predetermined distance to obtain the scene boundary of the complex scene.

[0090] This implementation method identifies the region where the complex scene is located in the map vector data by using the scene features of the complex scene, and then determines the scene boundary of the complex scene. The method for determining the scene boundary is simple and easy to implement.

[0091] In one possible implementation, determining the scene boundaries of a complex scene in the map vector data includes:

[0092] Obtain the vector data of the target area from the map vector data;

[0093] The vector data of the target region is input into a pre-trained recognition model, the recognition model is executed, and the target scene type output by the recognition model is obtained. The target scene type includes complex scene types and non-complex scene types.

[0094] In response to the recognition model outputting a target scene type that is a complex scene, the region containing vector elements with the scene features in the target area is determined based on the pre-configured scene features corresponding to the complex scene of the target scene type.

[0095] The scene boundary of the complex scene is obtained by extending the region containing the vector elements with the scene characteristics by a predetermined distance.

[0096] In this embodiment, since the road conditions in complex scenes are diverse, it may not be possible to identify them by the scene features alone. Therefore, in order to identify complex scenes more accurately, a recognition model can be trained. The training process of the recognition model can be: acquiring training data, which is vector data of the area where the complex scene is located and the scene type of the complex scene marked by the manual annotation. The trained recognition model can be trained using the training data.

[0097] In this embodiment, the map vector data can be pre-segmented to obtain vector data for multiple target areas. For each target area, the vector data of the target area can be input into a pre-trained recognition model. Executing the recognition model will yield the target scene type output by the model. This target scene type can be a complex scene or a non-complex scene. If the target scene type output by the recognition model is a complex scene, the pre-configured scene features corresponding to the complex scene of the target scene type can be obtained. The corresponding scene features are used to locate the area where the vector elements with the scene features are located in the target area. By extending the area where the vector elements with the scene features are located by a predetermined distance, the scene boundary of the complex scene can be obtained.

[0098] This implementation uses a pre-trained recognition model to identify complex scenes, resulting in more accurate recognition of complex scenes.

[0099] Figure 3 A structural block diagram of a map data processing apparatus according to an embodiment of the present disclosure is shown. This apparatus can be implemented as part or all of an electronic device through software, hardware, or a combination of both. Figure 3 As shown, the map data processing device includes:

[0100] The acquisition module 301 is configured to acquire the map vector data to be segmented;

[0101] Boundary determination module 302 is configured to determine the scene boundaries of complex scenes in the map vector data to be segmented;

[0102] The sliding line determination module 303 is configured to determine sliding lines that do not intersect with the scene boundary of the complex scene;

[0103] The segmentation module 304 is configured to segment the map vector data to be segmented using the segmentation line to obtain the segmented map vector data.

[0104] In one possible implementation, the sliding line determination module 303 is configured to:

[0105] Determine the shape center point of the outer boundary line of the map vector data to be segmented;

[0106] From the map vector data to be segmented, find multiple shape points of vector elements that meet predetermined conditions, including shape points of vector elements whose distance from the center point of the shape is within a predetermined distance range, whose vector element type is a predetermined type, and whose location is outside the scene boundary of the complex scene.

[0107] For multiple shape points, the straight line connecting each shape point to the center point of the shape is determined as a candidate bisector line;

[0108] From the multiple candidate cutting lines corresponding to the multiple shape points, determine the candidate cutting line that does not intersect with the scene boundary of the complex scene as the cutting line of the map vector data to be cut.

[0109] In one possible implementation, the portion of the slicing line determination module 303 that determines a candidate slicing line from among multiple candidate slicing lines corresponding to the plurality of shape points that does not intersect with the scene boundary of the complex scene as the slicing line for the map vector data to be sliced ​​is configured as follows:

[0110] One candidate cutting line that meets the screening criteria is selected from the multiple candidate cutting lines as the cutting line of the map vector data to be cut. The screening criteria include that the candidate cutting line does not intersect with the scene boundary of the complex scene and that the amount of data on both sides of the candidate cutting line and / or the number of vector features that intersect with the candidate cutting line both reach the predetermined cutting conditions.

[0111] In one possible implementation, the device further includes:

[0112] An extension module is configured to, if there is no candidate cutting line among the multiple candidate cutting lines that satisfies the filtering conditions, translate the candidate cutting lines within a predetermined movement range and / or rotate the candidate cutting lines within a predetermined angle range to obtain multiple extended candidate cutting lines.

[0113] The extension line determination module is configured to determine one of the multiple extended candidate cutting lines that meets the filtering conditions as the cutting line of the map vector data to be cut.

[0114] In one possible implementation, the part of the dividing line determination module 303 that selects one candidate dividing line from the plurality of candidate dividing lines that meets the filtering conditions as the dividing line of the map vector data to be divided is configured as follows:

[0115] For each candidate cutting line, obtain the scoring factor value of the candidate cutting line. The scoring factor value includes the number of complex scenes where the scene boundary intersects with the candidate cutting line, and at least one of the following scoring factor values: the amount of data on both sides of the candidate cutting line, and the number of vector features that intersect with the candidate cutting line.

[0116] Calculate the score of the candidate slit line based on the score factor value of the candidate slit line;

[0117] Among the multiple candidate cutting lines, the candidate cutting line with a score exceeding a predetermined score threshold is determined as the cutting line of the map vector data to be cut, wherein the candidate cutting line with a score exceeding the predetermined score threshold does not intersect with the scene boundary of the complex scene;

[0118] The extension module is configured as follows:

[0119] From the multiple candidate cutting lines, select the candidate cutting lines whose scores meet the predetermined scoring conditions as the candidate cutting lines to be processed;

[0120] Each candidate cutting line to be processed is translated within a predetermined movement range and / or rotated within a predetermined angle range to obtain multiple extended candidate cutting lines.

[0121] In one possible implementation, the device further includes:

[0122] The selection module is configured to select the candidate cutting line with the highest score from the multiple candidate cutting lines and the multiple extended candidate cutting lines as the cutting line of the map vector data to be cut if there is no candidate cutting line that meets the filtering conditions among the multiple extended candidate cutting lines.

[0123] In one possible implementation, the boundary determination module 302 is configured to:

[0124] Based on the scene characteristics corresponding to the pre-configured, predetermined type of complex scene, determine the region where the vector elements with the scene characteristics in the map vector data are located;

[0125] The scene boundary of the complex scene is determined based on the region where the vector elements with the scene characteristics are located.

[0126] In one possible implementation, the boundary determination module 302 is configured to:

[0127] Obtain the vector data of the target area from the map vector data;

[0128] The vector data of the target region is input into a pre-trained recognition model, the recognition model is executed, and the target scene type output by the recognition model is obtained. The target scene type includes complex scene types and non-complex scene types.

[0129] In response to the recognition model outputting a target scene type that is a complex scene type, the region containing vector elements with the scene features in the target region is determined based on the pre-configured scene features corresponding to the complex scene of the target scene type.

[0130] The scene boundary of the complex scene is obtained by extending the region containing the vector elements with the scene characteristics by a predetermined distance.

[0131] The technical terms and features mentioned in this device implementation are the same or similar. For the explanation and description of the technical terms and features involved in this device, please refer to the explanation of the above method implementation, which will not be repeated here.

[0132] This disclosure also discloses an electronic device. Figure 4 A structural block diagram of an electronic device according to an embodiment of the present disclosure is shown.

[0133] like Figure 4 As shown, the electronic device 400 includes a memory 401 and a processor 402, wherein the memory 401 is used to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor 402 to implement the method according to an embodiment of the present disclosure.

[0134] Figure 5 A schematic diagram of the structure of a computer system suitable for implementing the method according to embodiments of the present disclosure is shown.

[0135] like Figure 5 As shown, the computer system 500 includes a processing unit 501, which can execute various processes described in the above embodiments according to a program stored in a read-only memory (ROM) 502 or a program loaded from a storage section 508 into a random access memory (RAM) 503. The RAM 503 also stores various programs and data required for the operation of the computer system 500. The processing unit 501, ROM 502, and RAM 503 are interconnected via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.

[0136] The following components are connected to I / O interface 505: an input section 506 including a keyboard, mouse, etc.; an output section 507 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 508 including a hard disk, etc.; and a communication section 509 including a network interface card such as a LAN card, modem, etc. The communication section 509 performs communication processing via a network such as the Internet. A drive 510 is also connected to I / O interface 505 as needed. A removable medium 511, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on drive 510 as needed so that computer programs read from it can be installed into storage section 508 as needed. The processing unit 501 can be implemented as a CPU, GPU, TPU, FPGA, NPU, etc.

[0137] In particular, according to embodiments of this disclosure, the methods described above can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising computer instructions that, when executed by a processor, implement the steps of the methods described above. In such embodiments, the computer program product can be downloaded and installed from a network via communication section 509, and / or installed from removable media 511.

[0138] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0139] The units or modules described in the embodiments of this disclosure can be implemented in software or programmable hardware. The described units or modules can also be located in a processor, and the names of these units or modules do not necessarily constitute a limitation on the unit or module itself.

[0140] In another aspect, this disclosure also provides a computer-readable storage medium, which may be a computer-readable storage medium included in the electronic device or computer system described above; or it may be a standalone computer-readable storage medium not assembled into a device. The computer-readable storage medium stores one or more programs, which are used by one or more processors to perform the methods described in this disclosure.

[0141] The above description is merely a preferred embodiment of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of the invention involved in this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the inventive concept. For example, technical solutions formed by substituting the above-described features with (but not limited to) technical features disclosed in this disclosure that have similar functions.

Claims

1. A map data processing method, comprising: Obtain the map vector data to be segmented; Determine the scene boundaries of complex scenes in the map vector data to be segmented; Determining the dividing line that does not intersect with the scene boundary of the complex scene includes: determining the shape center point of the outer boundary line of the map vector data to be divided; searching for multiple shape points of vector elements in the map vector data to be divided that meet predetermined conditions, the predetermined conditions including shape points of vector elements whose distance from the shape center point is within a predetermined distance range, whose vector element type is a predetermined type, and whose vector element is located outside the scene boundary of the complex scene; for multiple shape points, determining the straight line connecting each shape point and the shape center point as a candidate dividing line; and determining a candidate dividing line that does not intersect with the scene boundary of the complex scene from the multiple candidate dividing lines corresponding to the multiple shape points as the dividing line of the map vector data to be divided. The map vector data to be segmented is segmented using the segmentation line to obtain the segmented map vector data.

2. The method according to claim 1, wherein, The step of determining a candidate cutting line that does not intersect the scene boundary of the complex scene from multiple candidate cutting lines corresponding to the multiple shape points as the cutting line of the map vector data to be cut includes: One candidate cutting line that meets the screening criteria is selected from the multiple candidate cutting lines as the cutting line of the map vector data to be cut. The screening criteria include that the candidate cutting line does not intersect with the scene boundary of the complex scene and that the amount of data on both sides of the candidate cutting line and / or the number of vector features that intersect with the candidate cutting line both reach the predetermined cutting conditions.

3. The method according to claim 2, wherein, The method further includes: If none of the candidate cutting lines meet the screening conditions, then for the candidate cutting lines, the candidate cutting lines are translated within a predetermined movement range and / or rotated within a predetermined angle range to obtain multiple extended candidate cutting lines. From the multiple extended candidate cutting lines, one extended candidate cutting line that meets the filtering conditions is determined as the cutting line of the map vector data to be cut.

4. The method according to claim 3, wherein, The step of selecting one candidate cutting line that meets the filtering criteria from the plurality of candidate cutting lines as the cutting line for the map vector data to be cut includes: For each candidate cutting line, obtain the scoring factor value of the candidate cutting line. The scoring factor value includes the number of complex scenes where the scene boundary intersects with the candidate cutting line, and at least one of the following scoring factor values: the amount of data on both sides of the candidate cutting line, and the number of vector features that intersect with the candidate cutting line. Calculate the score of the candidate slit line based on the score factor value of the candidate slit line; Among the multiple candidate cutting lines, the candidate cutting line with a score exceeding a predetermined score threshold is determined as the cutting line of the map vector data to be cut, wherein the candidate cutting line with a score exceeding the predetermined score threshold does not intersect with the scene boundary of the complex scene; The method involves translating each candidate cutting line within a predetermined movement range and / or rotating each candidate cutting line within a predetermined angle range to obtain multiple extended candidate cutting lines, including: From the multiple candidate cutting lines, select the candidate cutting lines whose scores meet the predetermined scoring conditions as the candidate cutting lines to be processed; Each candidate cutting line to be processed is translated within a predetermined movement range and / or rotated within a predetermined angle range to obtain multiple extended candidate cutting lines.

5. The method according to claim 4, wherein, The method further includes: If none of the extended candidate cutting lines meet the filtering conditions, then the candidate cutting line with the highest score is selected from the multiple candidate cutting lines and the multiple extended candidate cutting lines as the cutting line for the map vector data to be cut.

6. The method according to claim 1, wherein, Determining the scene boundaries of complex scenes in the map vector data includes: Based on the scene characteristics corresponding to the pre-configured, predetermined type of complex scene, determine the region where the vector elements with the scene characteristics in the map vector data are located; The scene boundary of the complex scene is determined based on the region where the vector elements with the scene characteristics are located.

7. A map data processing apparatus, comprising: The acquisition module is configured to acquire the map vector data to be segmented; The boundary determination module is configured to determine the scene boundaries of complex scenes in the map vector data to be segmented; The slicing line determination module is configured to determine slicing lines that do not intersect the scene boundary of the complex scene; including: determining the shape center point of the outer boundary line of the map vector data to be sliced; searching for multiple shape points of vector elements in the map vector data to be sliced ​​that meet predetermined conditions, the predetermined conditions including shape points of vector elements whose distance from the shape center point is within a predetermined distance range, whose vector element type is a predetermined type, and whose vector element is located outside the scene boundary of the complex scene; for multiple shape points, determining the straight line connecting each shape point and the shape center point as a candidate slicing line; and determining a candidate slicing line that does not intersect the scene boundary of the complex scene from the multiple candidate slicing lines corresponding to the multiple shape points as the slicing line of the map vector data to be sliced; The segmentation module is configured to segment the map vector data to be segmented using the segmentation line to obtain the segmented map vector data.

8. An electronic device comprising a memory and a processor; wherein, The memory is used to store one or more computer instructions, which are executed by the processor to implement the steps of the method according to any one of claims 1 to 6.

9. A computer-readable storage medium having computer instructions stored thereon, wherein, When executed by a processor, the computer instructions implement the method described in any one of claims 1-6.

Citation Information

Patent Citations

  • High-precision map multi-source data fusion updating method and system

    CN116108029A

  • Track generation method and device, equipment and storage medium

    CN116860906A