Herringbone road splitting method, system and terminal
By identifying and screening the geometric features of lane-changing and splitting herringbone feature roads, the problem of herringbone roads in the prior art cannot be identified and split in cluster clusters, and the accuracy and processing efficiency of on-board maps are improved.
Patent Information
- Application Number
- CN202311739795.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-18
- Publication Date
- 2025-06-20
AI Technical Summary
The prior art is difficult to identify herringbone feature roads in conventional clustered clusters through geometric features of lane change, resulting in herringbone roads being unable to be separated from the clusters, affecting the accuracy of the on-board map.
By obtaining the result list after road clustering, selecting the first herringbone cluster, and obtaining the rectangular box list and vertical line list at its gap, filtering out the second herringbone cluster, and splitting it into a herringbone object list and a remaining list as feature information for generating the on-board map.
Effectively identify and split herringbone roads, improve the accuracy of clustering modules, improve the accuracy of generating on-board maps, and reduce processing time.
Smart Images

Figure CN120176694A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of image data processing, and particularly relates to a method, system, terminal, and computer-readable storage medium for splitting chevron roads. Background Art
[0002] With the popularization of automobiles, in-vehicle maps have become an indispensable part of the use of many automobiles. Through in-vehicle maps, destinations can be easily found, the possibility of getting lost on the road can be reduced, greatly improving our travel efficiency and safety. It can also provide real-time traffic information, facilitating users to understand the current traffic conditions of the road, avoiding congested sections in a timely manner, and choosing a more convenient route. In addition, in-vehicle maps can also help users plan the optimal route, enabling users to reach the destination more time-saving and labor-saving.
[0003] However, some special roads cannot be well recognized by in-vehicle maps. For example, chevron roads are a very special scenario where the angles and distances of the lane objects are similar, and other attributes cannot distinguish them. In the prior art, it is easy to cluster the chevron roads and other roads into one cluster only by clustering, resulting in incorrect recognition and low accuracy of the clustering module, interfering with the application of in-vehicle maps, affecting the accuracy of the maps, and being unfavorable for improving the user experience.
[0004] Therefore, the prior art still needs to be improved and developed. Summary of the Invention
[0005] The main purpose of this application is to provide a method, system, terminal, and computer-readable storage medium for splitting chevron roads, aiming to solve the problem in the prior art that for a lane-changing road containing a chevron road, the chevron feature road cannot be recognized in the cluster after conventional clustering through the geometric features of lane change, and the chevron road cannot be split from the cluster, affecting the processing of subsequent modules, resulting in inaccurate accuracy of the in-vehicle map generated based on the clustering cluster.
[0006] The first aspect embodiment of this application provides a method for splitting chevron roads, including the following steps: obtaining a result list obtained after road clustering processing, and selecting the first chevron cluster in the result list according to chevron road features; obtaining a list of rectangular frames and a list of perpendicular lines to the gaps corresponding to the gaps in the first chevron cluster, screening the rectangular frames and perpendicular lines according to the list of rectangular frames and the list of perpendicular lines to the gaps to obtain a second chevron cluster; splitting the chevron objects in the second chevron cluster to obtain a list of chevron objects and a remaining list, and combining the list of chevron objects and the remaining list to obtain a target list with classification completed; using the classified list of chevron objects and the remaining list in the target list as the element information for generating an in-vehicle map.
[0007] According to the above technical means, in the embodiments of the present application, the herringbone feature road is recognized through the geometric features of lane changes, and screened and segmented to obtain a herringbone object list and a non-herringbone object list, which can effectively segment the clusters with clustering errors correctly, provide correct shape features for the processing of subsequent modules, improve the accuracy of the clustering module, and the correctly segmented clusters are beneficial to improving the accuracy of the subsequent generated vehicle-mounted map.
[0008] Optionally, in an embodiment of the present application, the obtaining the result list obtained after the road clustering process, and selecting the first herringbone cluster in the result list according to the herringbone road feature specifically includes: clustering the lane objects in the road to obtain the result list after clustering; taking the cluster with the herringbone road feature in the result list as the first herringbone cluster.
[0009] According to the above technical means, in the embodiments of the present application, the first herringbone cluster is selected as the object to be processed in the result list of the clustering according to the feature of the herringbone road, and the method of identifying the cluster with the lane change feature of the road is used to determine whether the cluster has the herringbone road feature, which lays a foundation for the subsequent object screening, can effectively improve the accuracy of the subsequent processing, and reduce the processing time.
[0010] Optionally, in an embodiment of the present application, the obtaining the list of rectangular frames corresponding to the gaps in the first herringbone cluster and the list of perpendicular lines of the gaps, and screening the rectangular frames and perpendicular lines according to the list of rectangular frames and the list of perpendicular lines of the gaps to obtain the second herringbone cluster specifically includes: obtaining the gaps existing in the first herringbone cluster, and obtaining the list of rectangular frames corresponding to the gaps and the list of perpendicular lines of the gaps; obtaining all the first rectangular frames in the list of rectangular frames, and a set of perpendicular lines corresponding to each of the first rectangular frames in the list of perpendicular lines of the gaps, wherein each of the first rectangular frames corresponds to a different set of perpendicular lines in the list of perpendicular lines of the gaps, and each set of perpendicular lines includes several perpendicular lines; converting the coordinates of the perpendicular lines in the set of perpendicular lines corresponding to each of the first rectangular frames into UTM coordinates, and respectively calculating the average length between all the first rectangular frames and several perpendicular lines in the corresponding set of perpendicular lines; filtering out the first rectangular frames and the corresponding set of perpendicular lines with the average length less than the preset threshold from the list of rectangular frames and the list of perpendicular lines of the gaps to obtain the second herringbone cluster; wherein, the second herringbone cluster includes: the filtered list of rectangular frames and the filtered list of perpendicular lines of the gaps.
[0011] According to the above technical means, in the embodiment of the present application, the rectangular frame list and the gap perpendicular line list corresponding to the gap are obtained by acquiring the gaps existing in the first herringbone cluster, and the average length between all the first rectangular frames and several perpendicular lines in a corresponding set of perpendicular lines is calculated respectively; the rectangular frames and perpendicular lines in the rectangular frame list and the gap perpendicular line list are filtered according to the average length to obtain the second herringbone cluster, where the calculation and discrimination processes all involve the geometric features of the vehicle lane itself and are applicable to discrimination without prior conditions.
[0012] Optionally, in an embodiment of the present application, the splitting of the herringbone objects in the second herringbone cluster to obtain a herringbone object list and a remaining list specifically includes: acquiring all the second rectangular frames in the filtered rectangular frame list, respectively acquiring the set of vehicle lane objects within a second preset range for each of the second rectangular frames, and obtaining the vehicle lane objects that meet the preset requirements from the set of vehicle lane objects of each second rectangular frame as target vehicle lane objects, where the set of vehicle lane objects includes several vehicle lane objects, and the preset requirement is that the vehicle lane object is located in the second herringbone cluster and intersects with the corresponding second rectangular frame; judging the type of the target vehicle lane object, if the type of the target vehicle lane object is of the MultiPolygon type, then acquiring the vehicle lane object with the largest area in the set of vehicle lane objects where the target vehicle lane object is located, and calculating a target perpendicular line according to the vehicle lane object with the largest area through a preset target perpendicular line calculation method, if the type of the target vehicle lane object is of the Polygon type, then calculating a target perpendicular line according to the geometric information of the target vehicle lane object through a preset target perpendicular line calculation method; creating a first herringbone list and a second herringbone list for storing vehicle lane objects, acquiring the starting points and ending points of all the target perpendicular lines, and respectively calculating the distances between the starting points and ending points of each target perpendicular line and the corresponding target vehicle lane object to obtain the starting point distance and the ending point distance of the target perpendicular line; putting the target perpendicular lines with the starting point distance less than or equal to the ending point distance into the first herringbone list; putting the target perpendicular lines with the starting point distance greater than the ending point distance into the second herringbone list, and deleting the target vehicle lane object from the second herringbone cluster; taking the first herringbone list and the second herringbone list as the herringbone object list, and subtracting the herringbone object list from the second herringbone cluster to obtain the remaining list.
[0013] According to the above technical means, the embodiments of the present application obtain all the second rectangular frames in the filtered rectangular frame list, obtain the set of lane objects of each of the second rectangular frames within a second preset range to obtain the target lane objects, and calculate the target perpendicular line through a preset target perpendicular line calculation method based on the type of the target lane objects. Then, taking the target perpendicular line as the chevron object list, the obtained chevron object list does not require a complicated calculation process, and the splitting accuracy can also be guaranteed.
[0014] Optionally, in an embodiment of the present application, the combining the chevron object list and the remaining list to obtain a target list specifically includes: obtaining all the lane objects in the remaining list, obtaining all the first perpendicular lines according to the filtered gap perpendicular line list, respectively obtaining the point sequence list of each of the first perpendicular lines, and obtaining the starting point coordinates and ending point coordinates of each of the first perpendicular lines from the point sequence list; scaling the starting point coordinates and ending point coordinates of each of the first perpendicular lines according to a second preset ratio, and respectively calculating the distances between each lane object and the starting point coordinates and ending point coordinates of each scaled first perpendicular line. The lane object close to the starting point coordinates of the scaled first perpendicular line is used as the first cluster, and the lane object close to the ending point coordinates of the scaled first perpendicular line is used as the second cluster; combining the first cluster, the second cluster and the chevron object list to obtain a target list.
[0015] According to the above technical means, the embodiments of the present application classify all the lane objects in the remaining list into two categories according to the point sequence list of each of the first perpendicular lines in the filtered gap perpendicular line list. The classification basis is the distances between the lane objects and the starting point coordinates and ending point coordinates of each scaled first perpendicular line. By further classifying all the lane objects in the remaining list, it can facilitate the processing of subsequent modules.
[0016] Optionally, in an embodiment of the present application, before obtaining all the second rectangular frames in the filtered rectangular frame list, it further includes: obtaining the geometric information of all the lane objects in the second chevron cluster, storing the geometric information in a geometric information storage list, and constructing an object index tree for the geometric information storage list; obtaining the point sequence lists corresponding to all the gap perpendicular lines in the filtered gap perpendicular line list, storing the point sequence lists in a point sequence storage list, and constructing a point sequence index tree for the point sequence storage list.
[0017] According to the above technical means, in the embodiment of the present application, the geometric information of all lane objects in the second herringbone cluster and the list of point sequences corresponding to all gap perpendicular lines in the filtered list of gap perpendicular lines are obtained, and an object index tree and a point sequence index tree are respectively constructed for them. The object index tree and the point sequence index tree are used as the unique identifiers for storage. Through the object index tree and the point sequence index tree, the query speed during calculation can be greatly accelerated, facilitating subsequent searches.
[0018] Optionally, in an embodiment of the present application, the preset target perpendicular line calculation method specifically includes: obtaining the largest area lane object in the lane object set where the target lane object is located or the list of second perpendicular lines within a second preset range of the geometric information of the target lane object, obtaining the type of the intersecting lane object at the intersection of each second perpendicular line in the list of second perpendicular lines with the largest area lane object or with the geometric information of the target lane object, and obtaining the starting coordinate and ending coordinate of each second perpendicular line; if the type of the intersecting lane object is a line and the starting coordinate and ending coordinate of the second perpendicular line are within the geometric information of the largest area lane object or the target lane object, it indicates that the second perpendicular line is a perpendicular line that initially meets the requirements; the longitude coordinates and latitude coordinates of the perpendicular line that initially meets the requirements are respectively scaled according to a first preset ratio. If the scaled line intersects with the largest area lane object, the scaled line is the target perpendicular line.
[0019] According to the above technical means, in the embodiment of the present application, if the type of the target lane object is of the MultiPolygon type, the largest area lane object in the lane object set where the target lane object is located is obtained. If the type of the target lane object is of the Polygon type, different target perpendicular line calculation methods are formulated according to the geometric information of the target lane object, so that the process of obtaining the target perpendicular line is accurate and reasonable.
[0020] The second aspect embodiment of this application provides a splitting system for chevron roads. The splitting system for chevron roads includes: a chevron cluster acquisition module, configured to obtain a result list obtained after clustering processing of roads, and select a first chevron cluster from the result list according to chevron road features; a chevron cluster screening module, configured to obtain a list of rectangular frames corresponding to the gaps in the first chevron cluster and a list of gap perpendicular lines, and screen the rectangular frames and perpendicular lines according to the list of rectangular frames and the list of gap perpendicular lines to obtain a second chevron cluster; a target list generation module, configured to split the chevron objects in the second chevron cluster to obtain a chevron object list and a remaining list, and combine the chevron object list and the remaining list to obtain a classified target list; a target list application module, configured to use the classified chevron object list and the remaining list in the target list as element information for generating an in-vehicle map.
[0021] Optionally, in an embodiment of this application, the chevron cluster acquisition module includes: a result list acquisition unit, configured to cluster the lane objects in the road to obtain a clustered result list; a first chevron cluster generation unit, configured to cluster the lane objects in the road to obtain a clustered result list.
[0022] Optionally, in an embodiment of this application, the chevron cluster screening module includes: a gap acquisition unit, configured to obtain the gaps existing in the first chevron cluster, and obtain a list of rectangular frames corresponding to the gaps and a list of gap perpendicular lines; a perpendicular line acquisition unit, configured to obtain all the first rectangular frames in the list of rectangular frames, and a set of perpendicular lines corresponding to each of the first rectangular frames in the list of gap perpendicular lines, wherein each of the first rectangular frames corresponds to a different set of perpendicular lines in the list of gap perpendicular lines, and each set of perpendicular lines includes several perpendicular lines; an average length calculation unit, configured to convert the coordinates of the perpendicular lines in each set of perpendicular lines corresponding to each of the first rectangular frames into UTM coordinates, and calculate the average length between all the first rectangular frames and the several perpendicular lines in the corresponding set of perpendicular lines respectively; a filtering unit, configured to filter out the first rectangular frames and the corresponding set of perpendicular lines with an average length less than a preset threshold from the list of rectangular frames and the list of gap perpendicular lines to obtain the second chevron cluster, wherein the second chevron cluster includes: a filtered list of rectangular frames and a filtered list of gap perpendicular lines.
[0023] Optionally, in an embodiment of the present application, the target list generation module includes: a target lane object acquisition unit, configured to acquire all second rectangular frames in the filtered rectangular frame list, respectively acquire a set of lane objects within a second preset range for each second rectangular frame, and obtain a lane object that meets the preset requirements as the target lane object from the set of lane objects of each second rectangular frame, where the set of lane objects includes several lane objects, and the preset requirement is that the lane object is located in the second chevron cluster and intersects with the corresponding second rectangular frame; a target perpendicular line calculation unit, configured to determine the type of the target lane object, if the type of the target lane object is the MultiPolygon type, then acquire the lane object with the largest area in the set of lane objects where the target lane object is located, and calculate a target perpendicular line according to the lane object with the largest area through a preset target perpendicular line calculation method, if the type of the target lane object is the Polygon type, then calculate a target perpendicular line according to the geometric information of the target lane object through a preset target perpendicular line calculation method; a distance calculation unit, configured to create a first chevron list and a second chevron list for storing lane objects, acquire the starting points and ending points of all the target perpendicular lines, and calculate the distances between the starting points and ending points of each target perpendicular line and the corresponding target lane object respectively, to obtain the starting point distance and the ending point distance of the target perpendicular line; a target perpendicular line classification unit, configured to put the target perpendicular lines with the starting point distance less than or equal to the ending point distance into the first chevron list, put the target perpendicular lines with the starting point distance greater than the ending point distance into the second chevron list, and delete the target lane object from the second chevron cluster; a list generation unit, configured to use the first chevron list and the second chevron list as the chevron object list, and subtract the chevron object list from the second chevron cluster to obtain the remaining list.
[0024] Optionally, in an embodiment of the present application, the target list generation module further includes: a coordinate acquisition unit, configured to acquire all lane objects in the remaining list, obtain all first perpendicular lines according to the filtered gap perpendicular line list, respectively acquire the point sequence list of each first perpendicular line, and obtain the starting point coordinate and the ending point coordinate of each first perpendicular line from the point sequence list; a distance classification unit, configured to scale the starting point coordinate and the ending point coordinate of each first perpendicular line according to a second preset ratio, and calculate the distances between each lane object and the scaled starting point coordinate and ending point coordinate of each first perpendicular line respectively, and use the lane objects close to the scaled starting point coordinate of the first perpendicular line as the first cluster, and use the lane objects close to the scaled ending point coordinate of the first perpendicular line as the second cluster; a target list generation unit, configured to combine the first cluster, the second cluster and the chevron object list to obtain a target list.
[0025] Optionally, in an embodiment of the present application, the target list generation module further includes: an object index tree creation unit, configured to obtain geometric information of all lane objects in the second chevron cluster, store the geometric information in a geometric information storage list, and build an object index tree for the geometric information storage list; a point sequence index tree creation unit, configured to obtain a point sequence list corresponding to all gap perpendicular lines in the filtered gap perpendicular line list, store the point sequence list in a point sequence storage list, and build a point sequence index tree for the point sequence storage list.
[0026] Optionally, in an embodiment of the present application, the target perpendicular line calculation unit further includes: an intersecting lane type acquisition subunit, configured to obtain the largest area lane object in the lane object set where the target lane object is located or a second perpendicular line list within a second preset range of the geometric information of the target lane object, obtain the intersecting lane object type at the intersection of each second perpendicular line in the second perpendicular line list with the largest area lane object or with the geometric information of the target lane object, and obtain the starting coordinate and ending coordinate of each second perpendicular line; a preliminary determination subunit, configured to, if the intersecting lane object type is a line and the starting coordinate and ending coordinate of the second perpendicular line are within the geometric information of the largest area lane object or the target lane object, indicate that the second perpendicular line is a perpendicular line initially meeting the requirements; a final determination subunit, configured to scale the longitude coordinate and latitude coordinate of the initially meeting requirement line by a first preset ratio respectively, and if the scaled line intersects with the largest area lane object, the scaled line is the target perpendicular line.
[0027] An embodiment of the third aspect of the present application provides a terminal, where the terminal includes: a memory, a processor, and a chevron road splitting program stored on the memory and executable on the processor. When the chevron road splitting program is executed by the processor, the steps of the chevron road splitting method described in the above embodiment are implemented.
[0028] An embodiment of the fourth aspect of the present application provides a computer-readable storage medium, where the computer-readable storage medium stores a chevron road splitting program. When the chevron road splitting program is executed by a processor, the steps of the chevron road splitting method described in the above embodiment are implemented.
[0029] Advantages of the present application:
[0030] (1) In the embodiments of the present application, chevron-shaped feature roads are identified through the geometric features of lane changes, screened and segmented, and a chevron-shaped object list and a non-chevron-shaped object list are obtained, which can effectively segment the clusters with clustering errors correctly, provide correct shape features for the processing of subsequent modules, improve the accuracy of the clustering module, and the correctly segmented clusters are beneficial to improving the accuracy of the subsequent generated vehicle-mounted map.
[0031] (2) In the embodiments of the present application, the first chevron-shaped cluster is selected as the object to be processed from the result list of the clustering according to the features of the chevron-shaped road, and whether the cluster has chevron-shaped road features is discriminated by the method of identifying the cluster with lane change features, which serves as a basis for subsequent object screening, can effectively improve the accuracy of subsequent processing, and reduce the processing time.
[0032] (3) In the embodiments of the present application, the rectangular frame list and the list of perpendicular lines of the gaps corresponding to the gaps are obtained by acquiring the gaps existing in the first chevron-shaped cluster, and the average length between all the first rectangular frames and several perpendicular lines in a corresponding group of perpendicular lines is calculated respectively; the rectangular frames and perpendicular lines in the rectangular frame list and the list of perpendicular lines of the gaps are filtered according to the average length to obtain the second chevron-shaped cluster, and the calculation and discrimination processes involve the geometric features of the vehicle lanes themselves and are applicable to discrimination without prior conditions.
[0033] (4) In the embodiments of the present application, all the second rectangular frames in the filtered rectangular frame list are obtained, the set of vehicle lane objects within a second preset range of each second rectangular frame is obtained to obtain the target vehicle lane objects, and based on the type of the target vehicle lane objects, the target perpendicular lines are calculated by a preset target perpendicular line calculation method, and then the target perpendicular lines are used as the chevron-shaped object list. The chevron-shaped object list obtained by splitting in this way does not require a complicated calculation process, and the accuracy of the splitting can also be guaranteed.
[0034] (5) In the embodiments of the present application, if the type of the target vehicle lane object is the MultiPolygon type, the vehicle lane object with the largest area in the set of vehicle lane objects where the target vehicle lane object is located is obtained; if the type of the target vehicle lane object is the Polygon type, different target perpendicular line calculation methods are formulated according to the geometric information of the target vehicle lane object, so that the process of obtaining the target perpendicular lines is accurate and reasonable.
[0035] Additional aspects and advantages of the present application will be given in part in the following description, become apparent in part from the following description, or be learned through the practice of the present application. Brief Description of the Drawings
[0036] To more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the accompanying drawings required for use in the embodiments or the description of the prior art. Obviously, the accompanying drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other accompanying drawings can be obtained based on these drawings.
[0037] Figure 1 is a flowchart of a preferred embodiment of the method for splitting the V-shaped road of the present applicant;
[0038] Figure 2 is a schematic diagram of selecting the first V-shaped cluster in the result list according to the characteristics of the V-shaped road in the method for splitting the V-shaped road of the present applicant;
[0039] Figure 3 is a schematic diagram of obtaining the list of rectangular frames corresponding to the gaps and the list of perpendicular lines to the gaps in the method for splitting the V-shaped road of the present applicant;
[0040] Figure 4 The overall flowchart of another preferred embodiment of the method for splitting the V-shaped road of the present applicant;
[0041] Figure 5 The flowchart of further determining the V-shape according to the average length of the perpendicular lines at the gaps in another preferred embodiment of the method for splitting the V-shaped road of the present applicant;
[0042] Figure 6 The flowchart of splitting the obtained V-shaped clusters in another preferred embodiment of the method for splitting the V-shaped road of the present applicant;
[0043] Figure 7 The flowchart of grouping all the lane objects in the remaining list into left and right groups in another preferred embodiment of the method for splitting the V-shaped road of the present applicant;
[0044] Figure 8 is a schematic structural diagram of a preferred embodiment of the system for splitting the V-shaped road of the present applicant;
[0045] Figure 9 is a schematic structural diagram of a preferred embodiment of the terminal of the present application.
[0046] Among them, 10 - the system for splitting the V-shaped road; 100 - the V-shaped cluster acquisition module, 200 - the V-shaped cluster screening module, 300 - the target list generation module, and 400 - the target list application module; 501 - the memory, 502 - the processor, and 503 - the communication interface. Detailed implementation manners
[0047] Embodiments of the present application will be described in detail below. Examples of the embodiments are shown in the accompanying drawings, where the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below by referring to the accompanying drawings are exemplary and are intended to explain the present application, and should not be construed as limiting the present application.
[0048] The splitting method, system, terminal, and computer-readable storage medium of a chevron road according to an embodiment of the present application will be described below with reference to the accompanying drawings. In view of the problem in the related art mentioned in the above background art that for a lane-changing road including a chevron road, it is impossible to identify the chevron feature road in the clusters obtained through conventional clustering based on the geometric features of the lane change, and it is impossible to split the chevron road from the clusters, which affects the processing of subsequent modules and thus results in inaccurate accuracy of the in-vehicle map generated based on the clustering clusters. The present application provides a splitting method of a chevron road. In this method, a result list obtained after road clustering processing is acquired, and a first chevron cluster is selected from the result list according to the chevron road features; a list of rectangular frames and a list of vertical lines corresponding to the gaps in the first chevron cluster are acquired, and the rectangular frames and vertical lines are filtered according to the list of rectangular frames and the list of vertical lines to obtain a second chevron cluster; the chevron objects in the second chevron cluster are split to obtain a list of chevron objects and a remaining list, and the list of chevron objects and the remaining list are combined to obtain a target list with classification completed; the classified list of chevron objects and the remaining list in the target list are used as the element information for generating an in-vehicle map. Thus, the problem in the related art that for a lane-changing road including a chevron road, it is impossible to identify the chevron feature road in the clusters obtained through conventional clustering based on the geometric features of the lane change, and it is impossible to split the chevron road from the clusters, which affects the processing of subsequent modules and thus results in inaccurate accuracy of the in-vehicle map generated based on the clustering clusters is solved.
[0049] Specifically, Figure 1 is a schematic flowchart of a splitting method of a chevron road provided by an embodiment of the present application.
[0050] As Figure 1 shown, the splitting method of the chevron road includes the following steps:
[0051] In step S101, a result list obtained after road clustering processing is acquired, and a first chevron cluster is selected from the result list according to the chevron road features.
[0052] Specifically, the lane objects in the road are clustered to obtain a result list after clustering; the cluster having the chevron road features in the result list is used as the first chevron cluster.
[0053] It can be understood that the lane objects in the road are clustered, and a result list list_ret_datas is obtained after clustering; continuously loop to obtain the clusters in this list, and obtain one cluster list_cluster each time, as Figure 2 shown, by identifying the method of the cluster with the road lane-changing feature to determine whether the cluster has the herringbone road feature, and cutting out the cluster with the herringbone road feature as the first herringbone cluster.
[0054] It can be seen that in the embodiment of the present application, the first herringbone cluster is selected as the object to be processed according to the feature of the herringbone road in the clustering result list, and the method of identifying the cluster with the road lane-changing feature is used to determine whether the cluster has the herringbone road feature, which lays a foundation for subsequent object screening, can effectively improve the accuracy of subsequent processing, and reduce the processing time.
[0055] In step S102, a list of rectangular frames corresponding to the gaps in the first herringbone cluster and a list of gap perpendicular lines are obtained, and the rectangular frames and perpendicular lines are filtered according to the list of rectangular frames and the list of gap perpendicular lines to obtain the second herringbone cluster.
[0056] As Figure 3 shown, through the circumscribed rectangular frame returned by the recognition of the first herringbone cluster and the corresponding cutting line, the list of rectangular frames corresponding to the gap and the list of gap perpendicular lines can be obtained.
[0057] Specifically, obtain the gaps existing in the first herringbone cluster (the gaps are the herringbone features), and obtain the list of rectangular frames corresponding to the gaps and the list of gap perpendicular lines; obtain all the first rectangular frames in the list of rectangular frames, and a group of perpendicular lines corresponding to each of the first rectangular frames in the list of gap perpendicular lines, where each of the first rectangular frames corresponds to a different group of perpendicular lines in the list of gap perpendicular lines, and each group of perpendicular lines contains several perpendicular lines; convert the coordinates of the perpendicular lines in each group of perpendicular lines corresponding to each of the first rectangular frames into UTM coordinates, and calculate the average length between all the first rectangular frames and several perpendicular lines in the corresponding group of perpendicular lines respectively; filter out the first rectangular frames and the corresponding group of perpendicular lines with the average length less than the preset threshold from the list of rectangular frames and the list of gap perpendicular lines to obtain the second herringbone cluster; wherein, the second herringbone cluster includes: the filtered list of rectangular frames and the filtered list of gap perpendicular lines.
[0058] For example, loop through all the first rectangular boxes in the rectangular box list inter_poly_list. Taking one loop as an example, obtain one of the rectangular boxes and the corresponding perpendicular line list seam_line; convert the coordinates of several perpendicular lines (a group of perpendicular lines) in the perpendicular line list from WGS84 to UTM coordinates, and calculate the average length of the group of perpendicular lines corresponding to the current box. If the average value is less than a certain value of 1.5 meters, it means that the rectangular box has been misrecognized and will not be retained, and it will be put into the removal list remove_poly_count; on the contrary, if the average value is greater than a certain value of 1.5 meters, it will be retained, and the perpendicular line segments where the head and tail rectangular boxes in remove_poly_count are located will be deleted to prevent misclassification.
[0059] It can be seen that in the embodiment of the present application, the rectangular box list corresponding to the gap and the gap perpendicular line list are obtained by obtaining the gaps existing in the first chevron cluster, and the average lengths between all the first rectangular boxes and several perpendicular lines in the corresponding group of perpendicular lines are calculated respectively; according to the average length, the rectangular boxes and perpendicular lines in the rectangular box list and the gap perpendicular line list are filtered out to obtain the second chevron cluster, and the calculation and discrimination processes therein all involve the geometric features of the vehicle lane itself and are applicable to discrimination without prior conditions.
[0060] In step S103, the chevron objects in the second chevron cluster are split to obtain a chevron object list and a remaining list, and the chevron object list and the remaining list are combined to obtain a classified target list.
[0061] Splitting the chevron objects in the second chevron cluster to obtain a chevron object list and a remaining list specifically includes:
[0062] Obtain all the second rectangular boxes in the filtered rectangular box list, respectively obtain the set of vehicle lane objects within the second preset range for each of the second rectangular boxes, and obtain the vehicle lane objects that meet the preset requirements from the set of vehicle lane objects of each of the second rectangular boxes as the target vehicle lane objects, where the set of vehicle lane objects includes several vehicle lane objects, and the preset requirement is that the vehicle lane object is located in the second chevron cluster and intersects with the corresponding second rectangular box.
[0063] Determine the type of the target lane object. If the type of the target lane object is the MultiPolygon type, obtain the lane object with the largest area in the lane object set where the target lane object is located, and calculate a target perpendicular line according to the lane object with the largest area through a preset target perpendicular line calculation method. If the type of the target lane object is the Polygon type, calculate a target perpendicular line according to the geometric information of the target lane object through a preset target perpendicular line calculation method.
[0064] Create a first chevron list and a second chevron list for storing lane objects, obtain the starting points and ending points of all the target perpendicular lines, and calculate the distances between the starting points and ending points of each target perpendicular line and the corresponding target lane object respectively to obtain the starting point distance and the ending point distance of the target perpendicular line.
[0065] Put the target perpendicular lines with the starting point distance less than or equal to the ending point distance into the first chevron list, put the target perpendicular lines with the starting point distance greater than the ending point distance into the second chevron list, and delete the target lane object from the second chevron cluster.
[0066] Use the first chevron list and the second chevron list as the chevron object list, and subtract the second chevron cluster from the chevron object list to obtain the remaining list.
[0067] It can be seen that in the embodiment of the present application, all the second rectangular frames in the filtered rectangular frame list are obtained, the lane object set within a second preset range of each second rectangular frame is obtained to get the target lane object, and based on the type of the target lane object, a target perpendicular line is calculated through a preset target perpendicular line calculation method, and then the target perpendicular line is used as the chevron object list. The chevron object list obtained by splitting in this way does not require a complicated calculation process, and the splitting accuracy can also be guaranteed.
[0068] It can be understood that before obtaining all the second rectangular frames in the filtered rectangular frame list, it further includes:
[0069] Obtain the geometric information of all the lane objects in the second chevron cluster, store the geometric information in a geometric information storage list, and construct an object index tree for the geometric information storage list;
[0070] Obtain the point sequence list corresponding to all the gap perpendicular lines in the filtered gap perpendicular line list, store the point sequence list in a point sequence storage list, and construct a point sequence index tree for the point sequence storage list.
[0071] Specifically, the obtained second chevron clusters are split, the current cluster list_cluster is looped through, the geometric information of the object is obtained and stored in the geometric list geometry_list, and the object index tree semantic_tree is constructed therefrom. The filtered seam perpendicular lines seam_line are looped through, the point sequence list seam_lines corresponding to all the seam perpendicular lines in the filtered seam perpendicular line list is obtained, and a point sequence index tree seam_lines_tree is constructed for it to facilitate subsequent rapid retrieval.
[0072] Further, the preset target perpendicular line calculation method specifically includes:
[0073] Obtain the largest area lane object in the lane object set where the target lane object is located or the second perpendicular line list within a second preset range of the geometric information of the target lane object, obtain the intersection lane object type at the intersection of each second perpendicular line in the second perpendicular line list with the largest area lane object or with the geometric information of the target lane object, and obtain the starting coordinate and ending coordinate of each second perpendicular line;
[0074] If the intersection lane object type is a line and the starting coordinate and ending coordinate of the second perpendicular line are within the geometric information of the largest area lane object or the target lane object, it indicates that the second perpendicular line is a perpendicular line that initially meets the requirements;
[0075] Scale the longitude coordinates and latitude coordinates of the line that initially meets the requirements by a first preset ratio respectively. If the scaled line intersects with the largest area lane object, the scaled line is the target perpendicular line.
[0076] It can be understood that the preset target perpendicular line calculation method of the present application calculates for different types of target lane objects. If the type of the target lane object is the MultiPolygon (multiple polygons) type, obtain the largest area lane object in the lane object set where the target lane object is located, and calculate the target perpendicular line according to the largest area lane object through the preset target perpendicular line calculation method: obtain the second perpendicular line list within a second preset range (for example, within two meters, and the specific value can be set according to the actual situation) of the largest area lane object in the lane object set where the target lane object is located, obtain the intersection lane object type at the intersection of each second perpendicular line in the second perpendicular line list with the largest area lane object, and obtain the starting coordinate and ending coordinate of each second perpendicular line; if the intersection lane object type is a line and the starting coordinate and ending coordinate of the second perpendicular line are within the largest area lane object, it indicates that the second perpendicular line is a perpendicular line that initially meets the requirements.
[0077] If the type of the target lane object is of the Polygon type, there is no need to obtain the lane object with the maximum area max_area_poly in the list, and directly use the geometric information of the target lane object to replace max_area_poly for all judgments. Specifically, obtain the geometric information of the target lane object, and calculate the target perpendicular line according to the geometric information of the target lane object through a preset target perpendicular line calculation method: obtain the list of second perpendicular lines of the geometric information of the target lane object within a second preset range (for example, within two meters, and the specific value can be set according to the actual situation), obtain the type of the intersecting lane object at the intersection of each second perpendicular line in the list of second perpendicular lines and the geometric information of the target lane object, and obtain the starting point coordinates and ending point coordinates of each second perpendicular line; if the type of the intersecting lane object is a line and the starting point coordinates and ending point coordinates of the second perpendicular line are within the geometric information of the target lane object, it indicates that the second perpendicular line is a perpendicular line that initially meets the requirements.
[0078] It can be seen that in the embodiment of the present application, if the type of the target lane object is of the MultiPolygon type, the lane object with the maximum area in the lane object set where the target lane object is located is obtained; if the type of the target lane object is of the Polygon type, different target perpendicular line calculation methods are formulated according to the geometric information of the target lane object, so that the process of obtaining the target perpendicular line is accurate and reasonable.
[0079] Furthermore, combine the herringbone object list and the remaining list to obtain a classified target list, which specifically includes:
[0080] Obtain all lane objects in the remaining list, obtain all first perpendicular lines according to the filtered list of gap perpendicular lines, respectively obtain the point sequence list of each first perpendicular line, and obtain the starting point coordinates and ending point coordinates of each first perpendicular line from the point sequence list;
[0081] Scale the starting point coordinates and ending point coordinates of each first perpendicular line according to a second preset ratio, and calculate the distances between each lane object and the starting point coordinates and ending point coordinates of each scaled first perpendicular line respectively. The lane object close to the starting point coordinates of the scaled first perpendicular line is used as the first cluster, and the lane object close to the ending point coordinates of the scaled first perpendicular line is used as the second cluster;
[0082] Combine the first cluster, the second cluster and the herringbone object list to obtain a target list.
[0083] It can be understood that after obtaining the remaining list (which can also be understood as the objects not enclosed by the rectangular frame), the present application also needs to group the lane objects in the remaining list into left and right groups, obtain all the first perpendicular lines in the filtered gap perpendicular line list, obtain the point sequence list of each perpendicular line, obtain the starting point coordinates and ending point coordinates of each of the first perpendicular lines from the point sequence list, take the lane objects close to the starting point coordinates of the first perpendicular line after distance scaling as the first cluster, and take the lane objects close to the ending point coordinates of the first perpendicular line after distance scaling as the second cluster, so as to complete the left and right grouping of the remaining list.
[0084] Further, after combining the first cluster, the second cluster and the chevron object list to obtain the target list, it further includes:
[0085] Circularly determine whether there is still a cluster with chevron road features in the target list. If so, continue to split the target list and update the target list according to the splitting result until the preset number of loops is reached, and then output the target list.
[0086] It can be seen that the embodiments of the present application classify all the lane objects in the remaining list into two categories according to the point sequence list of each of the first perpendicular lines in the filtered gap perpendicular line list. The classification basis is the distance between the lane objects and the starting point coordinates and ending point coordinates of each of the scaled first perpendicular lines. By further classifying all the lane objects in the remaining list, it can facilitate the processing of subsequent modules.
[0087] In step S104, the classified chevron object list and the remaining list in the target list are used as the element information for generating the vehicle-mounted map.
[0088] It can be understood that the target list contains the classified chevron object list and the remaining list (i.e., the non-chevron object list). As the obtained new clustering result, the target list effectively splits the clusters with clustering errors correctly and is used for output to subsequent downstream aggregation. The downstream aggregation will fit multiple clustered objects into one object and then make a map. That is to say, after the present application correctly splits the clusters with clustering errors and identifies the chevron roads from the original clusters, it can provide correct shape features for the processing of subsequent modules, improve the accuracy of the clustering module, and as the essential elements for making the vehicle-mounted map, it further improves the accuracy of the made map.
[0089] Further, as Figure 4 shown, it is the overall flowchart of another preferred embodiment of the chevron road splitting method of the present applicant. In this embodiment, the chevron road splitting method includes the following steps:
[0090] S301. Input the result list list_ret_datas after clustering is completed.
[0091] S302. Loop through this list to obtain one cluster list_cluster.
[0092] S303. Determine whether this cluster has a chevron road feature by identifying the cluster with the road lane change feature. If it has a chevron feature, the corresponding rectangle frame list inter_poly_list at the gap and the gap perpendicular line list seam_line will be returned.
[0093] S304. Further judge the chevron based on the average length of the perpendicular lines at the gap.
[0094] S305. Split the obtained chevron cluster.
[0095] S306. Group the objects that are not framed according to the left and right sides of the frame.
[0096] S307. Perform multiple loop splitting and judgment. Loop through temporary_list, repeat S3 to perform chevron feature judgment again to see if this cluster still needs to be split.
[0097] S308. Perform multiple loop splitting and judgment. Loop through temporary_list, repeat S3 to perform chevron feature judgment again to see if this cluster still needs to be split.
[0098] Furthermore, as Figure 5 shown, further judging the chevron based on the average length of the perpendicular lines at the gap in step S304 specifically includes:
[0099] S401. Loop through inter_poly_list to obtain one rectangle frame list inter_poly_list and the corresponding perpendicular line list seam_line.
[0100] S402. Convert the coordinates of the line from WGS84 to UTM coordinates and calculate the average length of all lines corresponding to the current frame. If the average value is less than a certain threshold, there is a misrecognition situation for this rectangle frame and it will not be retained.
[0101] S403. On the contrary, if the average value is greater than a certain threshold, retain it, put it into remove_poly_count, and delete the perpendicular line segments where the head and tail rectangle frames in remove_poly_count are located to prevent misclassification.
[0102] It is understandable that after converting the coordinates of the line from WGS84 to UTM coordinates, the average length between the current rectangular box and several perpendicular lines in a set of perpendicular lines corresponding to it in the perpendicular line list seam_line is calculated. If the perpendicular line list seam_line is less than a preset threshold, it indicates that the rectangular box has a misidentification situation (that is, the rectangular box does not contain a chevron feature). At this time, the rectangular box with misidentification and the perpendicular lines corresponding to the rectangular box are put into remove_poly_count, and the rectangular boxes and perpendicular lines included in the removal list remove_poly_count are deleted from the rectangular box list inter_poly_list and the corresponding perpendicular line list seam_line to achieve the purpose of filtering and prevent classification errors.
[0103] Further, as Figure 6 shown, the splitting of the chevron clusters obtained in step S305 specifically includes:
[0104] S501. Loop through the current cluster list_cluster, obtain the geometric information of the object, store it in geometry_list, and construct an index tree semantic_tree for subsequent rapid retrieval.
[0105] S502. Loop through the perpendicular line list seam_line, obtain the point sequence coordinate list seam_lines corresponding to all lines, and construct an index tree seam_lines_tree for it.
[0106] S503. Re-loop through the rectangular box list inter_poly_list to obtain the hash value of the centroid coordinates of the current rectangular box. Define two lists to store the split objects cluster_1 and cluster_2. Obtain the semantic objects near the current rectangular box near_semantics.
[0107] S504. Loop through near_semantics, obtain the current object semantic. If it is located in the current cluster and intersects with the current rectangular box, retain the intersecting part of the semantic object semantics_inter_poly, otherwise continue to loop to the next semantic object.
[0108] S505. If the type of semantics_inter_poly is MultiPolygon type, obtain the object max_area_poly with the largest area in the list, and obtain the perpendicular line list line_s near a certain range of this object.
[0109] S506. Loop through line_s, obtain the intersecting part line_inter_semantic of the current line line and max_area_poly, and at the same time obtain the starting point and ending point coordinates line_start and line_end of line.
[0110] S507. If the obtained line_inter_semantic is not empty and is of the line type, and both the starting point line_start and the ending point line_end are not in the obtained max_area_poly, and it indicates that this line is not a usable line, then continue to loop through line_s to find the next line that meets the requirements.
[0111] S508. After finding the line that meets the requirements, scale its X and Y within a certain range respectively. If the scaled line extend_line intersects with max_area_poly, then the finally line that meets the requirements line has been found; otherwise, continue with line_s to find the next line that meets the requirements until the loop ends.
[0112] S509. Obtain the starting point and ending point of the line line, calculate the distances from the starting point and the ending point to semantics_inter_poly respectively. If the starting point distance is greater than the ending point distance, put it into the list cluster_2 and assign the herringbone attribute to this object. If the starting point distance is less than the ending point distance, put it into the list cluster_1 and assign the herringbone attribute to this object. Finally, delete this object from list_cluster.
[0113] S510. If the type of semantics_inter_poly is Polygon type, there is no need to obtain the object with the largest area max_area_poly in the list. Directly use the geometric information of the object to replace max_area_poly for all judgments, and repeat the other judgment logics in steps S505 - S509.
[0114] S511. Finally, add the obtained cluster_1 and cluster_2 into the list clusters_grouping to store the results after splitting. Until list_ret_datas finishes looping, perform the herringbone splitting judgment on all clusters.
[0115] S512. If the length of the final clusters_grouping list is equal to 0, it means that the cluster has not been split, and the original cluster result is directly returned; otherwise, the difference between list_cluster and clusters_grouping is calculated to obtain a new list ret_list, that is, the data that has not been split, which can also be understood as the objects not enclosed by the rectangular box.
[0116] Furthermore, as Figure 7 shown, in step S306, the objects not enclosed are grouped according to the left and right sides of the box, specifically including:
[0117] S601: Loop through seam_line to obtain the list of point sequences of the current line.
[0118] S602: Loop through ret_list to obtain the current object semantic.
[0119] S603: Scale the starting point and ending point of seam_line according to a certain ratio, and calculate the distances from them to semantic respectively, and divide them into two clusters according to the distances.
[0120] S604: Finally, put clusters_grouping and the newly obtained clusters into temporary_list.
[0121] It can be understood that taking one loop of the filtered list of vertical seam lines seam_line as an example, a vertical line is obtained from the filtered list of vertical seam lines seam_line, and the list of point sequences of the vertical line is obtained. The starting point coordinates and ending point coordinates of the vertical line are obtained from the list of point sequences; the starting point coordinates and ending point coordinates of the vertical line are scaled according to the second preset ratio, and the distances between each vehicle line object and the scaled starting point coordinates and ending point coordinates of the vertical line are calculated, and they are divided into two clusters according to the distances. The vehicle line objects closer to the scaled starting point coordinates of the vertical line are used as the first cluster, and the vehicle line objects closer to the scaled ending point coordinates of the vertical line are used as the second cluster; finally, the herringbone object list clusters_grouping and the first cluster and the second cluster (i.e., the newly obtained clusters) are put into the temporary list temporary_list (which can also be understood as the combined list in the above text).
[0122] It should be noted that the above embodiments are only examples for easy understanding and are not the only implementation manners. For those of ordinary skill in the art, some different forms of changes or modifications can be made based on the above description. It is not necessary and impossible to enumerate all the implementation manners here. And the obvious changes or modifications derived therefrom are still within the protection scope of the present invention.
[0123] Next, a splitting system for a chevron-shaped road according to an embodiment of the present application will be described with reference to the accompanying drawings.
[0124] Figure 8 It is a block diagram of a splitting system for a chevron-shaped road according to an embodiment of the present application.
[0125] As Figure 8 shown, the splitting system 10 of the chevron-shaped road includes: a chevron-shaped cluster acquisition module 100, a chevron-shaped cluster screening module 200, a target list generation module 300, and a target list application module 400.
[0126] Specifically, the chevron-shaped cluster acquisition module 100 is configured to obtain a result list obtained after road clustering processing, and select a first chevron-shaped cluster from the result list according to the chevron-shaped road characteristics;
[0127] The chevron-shaped cluster screening module 200 is configured to obtain a list of rectangular frames corresponding to the gaps in the first chevron-shaped cluster and a list of gap perpendicular lines, and screen the rectangular frames and perpendicular lines according to the list of rectangular frames and the list of gap perpendicular lines to obtain a second chevron-shaped cluster;
[0128] The target list generation module 300 is configured to split the chevron-shaped objects in the second chevron-shaped cluster to obtain a list of chevron-shaped objects and a remaining list, and combine the list of chevron-shaped objects and the remaining list to obtain a classified target list;
[0129] The target list application module 400 is configured to use the classified list of chevron-shaped objects and the remaining list in the target list as element information for generating a vehicle-mounted map.
[0130] Optionally, in an embodiment of the present application, the chevron-shaped cluster acquisition module 100 includes a result list acquisition unit and a first chevron-shaped cluster generation unit.
[0131] Among them, the result list acquisition unit is configured to cluster the lane objects in the road to obtain a clustered result list;
[0132] The first chevron-shaped cluster generation unit is configured to cluster the lane objects in the road to obtain a clustered result list
[0133] Optionally, in an embodiment of the present application, the chevron-shaped cluster screening module 200 includes a gap acquisition unit, a perpendicular line acquisition unit, an average length calculation unit, and a filtering unit.
[0134] Among them, the gap acquisition unit is configured to obtain the gaps existing in the first chevron-shaped cluster, and obtain a list of rectangular frames corresponding to the gaps and a list of gap perpendicular lines;
[0135] A perpendicular line acquisition unit, configured to acquire all the first rectangular frames in the rectangular frame list, and a set of perpendicular lines corresponding to each of the first rectangular frames in the gap perpendicular line list respectively, where each of the first rectangular frames corresponds to a different set of perpendicular lines in the gap perpendicular line list, and each set of perpendicular lines includes a plurality of perpendicular lines;
[0136] An average length calculation unit, configured to convert the coordinates of the perpendicular lines in a set of perpendicular lines corresponding to each of the first rectangular frames into UTM coordinates, and calculate the average length between all the first rectangular frames and the plurality of perpendicular lines in the corresponding set of perpendicular lines respectively;
[0137] A filtering unit, configured to filter out the first rectangular frames and the corresponding set of perpendicular lines with the average length less than a preset threshold from the rectangular frame list and the gap perpendicular line list, to obtain the second herringbone cluster, where the second herringbone cluster includes: the filtered rectangular frame list and the filtered gap perpendicular line list.
[0138] Optionally, in an embodiment of the present application, the target list generation module 300 includes a target lane object acquisition unit, a target perpendicular line calculation unit, a distance calculation unit, a target perpendicular line classification unit, and a list generation unit.
[0139] Among them, the target lane object acquisition unit is configured to acquire all the second rectangular frames in the filtered rectangular frame list, respectively acquire the set of lane objects within a second preset range for each of the second rectangular frames, and obtain the lane objects that meet the preset requirements as target lane objects from the set of lane objects of each of the second rectangular frames, where the set of lane objects includes a plurality of lane objects, and the preset requirement is that the lane object is located in the second herringbone cluster and intersects with the corresponding second rectangular frame;
[0140] The target perpendicular line calculation unit is configured to determine the type of the target lane object. If the type of the target lane object is the MultiPolygon type, acquire the lane object with the largest area in the set of lane objects where the target lane object is located, and calculate the target perpendicular line according to the lane object with the largest area through a preset target perpendicular line calculation method. If the type of the target lane object is the Polygon type, calculate the target perpendicular line according to the geometric information of the target lane object through a preset target perpendicular line calculation method;
[0141] The distance calculation unit is configured to create a first herringbone list and a second herringbone list for storing lane objects, acquire the starting points and ending points of all the target perpendicular lines, and calculate the distances between the starting points and ending points of each of the target perpendicular lines and the corresponding target lane object respectively, to obtain the starting point distance and the ending point distance of the target perpendicular line;
[0142] A target perpendicular line classification unit places the target perpendicular lines with the starting point distance less than or equal to the ending point distance into the first chevron list, places the target perpendicular lines with the starting point distance greater than the ending point distance into the second chevron list, and deletes the target lane object from the second chevron cluster;
[0143] A list generation unit is used to use the first chevron list and the second chevron list as the chevron object list, and subtract the second chevron cluster from the chevron object list to obtain the remaining list.
[0144] Optionally, in an embodiment of the present application, the target list generation module further includes a coordinate acquisition unit, a distance classification unit, and a target list generation unit.
[0145] Among them, the coordinate acquisition unit is used to obtain all lane objects in the remaining list, obtain all first perpendicular lines according to the filtered gap perpendicular line list, respectively obtain the point sequence list of each first perpendicular line, and obtain the starting point coordinates and ending point coordinates of each first perpendicular line from the point sequence list;
[0146] The distance classification unit is used to scale the starting point coordinates and ending point coordinates of each first perpendicular line according to a second preset ratio, and respectively calculate the distances between each lane object and the scaled starting point coordinates and ending point coordinates of each first perpendicular line, and use the lane object close to the starting point coordinates of the scaled first perpendicular line as the first cluster, and use the lane object close to the ending point coordinates of the scaled first perpendicular line as the second cluster;
[0147] The target list generation unit is used to combine the first cluster, the second cluster, and the chevron object list to obtain a target list.
[0148] Optionally, in an embodiment of the present application, the target list generation module further includes an object index tree creation unit and a point sequence index tree creation unit.
[0149] Among them, the object index tree creation unit is used to obtain the geometric information of all lane objects in the second chevron cluster, store the geometric information in the geometric information storage list, and construct an object index tree for the geometric information storage list;
[0150] The point sequence index tree creation unit is used to obtain the point sequence list corresponding to all gap perpendicular lines in the filtered gap perpendicular line list, store the point sequence list in the point sequence storage list, and construct a point sequence index tree for the point sequence storage list.
[0151] Optionally, in an embodiment of the present application, the target perpendicular line calculation unit further includes: an intersecting lane type acquisition subunit, a preliminary determination subunit, and a final determination subunit.
[0152] Among them, the intersecting lane type acquisition subunit is configured to acquire the largest area lane object in the lane object set where the target lane object is located or a list of second perpendicular lines within a second preset range of the geometric information of the target lane object, acquire the type of the intersecting lane object at the intersection of each second perpendicular line in the list of second perpendicular lines with the largest area lane object or with the geometric information of the target lane object, and acquire the starting coordinate and ending coordinate of each second perpendicular line;
[0153] The preliminary determination subunit is configured to, if the type of the intersecting lane object is a line and the starting coordinate and ending coordinate of the second perpendicular line are within the geometric information of the largest area lane object or the target lane object, it indicates that the second perpendicular line is a perpendicular line that initially meets the requirements;
[0154] The final determination subunit is configured to scale the longitude coordinates and latitude coordinates of the line that initially meets the requirements by a first preset ratio respectively. If the scaled line intersects with the largest area lane object, the scaled line is the target perpendicular line.
[0155] It should be noted that the foregoing explanation of the embodiment of the splitting method for chevron roads is also applicable to the chevron road splitting system of this embodiment, and will not be elaborated here.
[0156] According to the chevron road splitting system proposed in the embodiment of the present application, the chevron feature road is recognized through the geometric features of lane changes, and screened and segmented to obtain a chevron object list and a non-chevron object list. It can effectively segment the clusters with clustering errors correctly, provide correct shape features for the processing of subsequent modules, improve the accuracy of the clustering module, and the correctly segmented clusters are beneficial to improving the accuracy of the subsequent generated in-vehicle map. Moreover, the present application performs calculations and judgments based on the geometric features of the lane itself, without a complicated calculation process, and is applicable to discrimination without prior conditions.
[0157] Thereby, it solves the problem in the related art that for a lane change road including a chevron road, the chevron feature road cannot be recognized in the clusters after conventional clustering through the geometric features of lane changes, and the chevron road cannot be split from the clusters, which affects the processing of subsequent modules, resulting in inaccurate accuracy of the in-vehicle map generated based on the clustering clusters.
[0158] Figure 9 It is a schematic structural diagram of a terminal provided in an embodiment of the present application. The terminal may include:
[0159] A memory 501, a processor 502, and a computer program stored on the memory 501 and executable on the processor 502.
[0160] When the processor 502 executes the program, it implements the splitting method of the herringbone road provided in the above embodiments.
[0161] Furthermore, the terminal further includes:
[0162] A communication interface 503 for communication between the memory 501 and the processor 502.
[0163] The memory 501 is used to store a computer program executable on the processor 502.
[0164] The memory 501 may include a high-speed RAM memory and may also include non-volatile memory, such as at least one disk memory.
[0165] If the memory 501, the processor 502, and the communication interface 503 are implemented independently, the communication interface 503, the memory 501, and the processor 502 can be interconnected through a bus to complete communication with each other. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 9 only a thick line is used to represent it in the figure, but it does not mean that there is only one bus or one type of bus.
[0166] Optionally, in a specific implementation, if the memory 501, the processor 502, and the communication interface 503 are integrated on a chip, the memory 501, the processor 502, and the communication interface 503 can complete communication with each other through an internal interface.
[0167] The processor 502 may be a Central Processing Unit (CPU), or an Application Specific Integrated Circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present application.
[0168] This embodiment also provides a computer-readable storage medium, on which a computer program is stored. When the program is executed by a processor, the above-described splitting method for chevron roads is implemented.
[0169] In the description of this specification, the descriptions referring to terms such as "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. mean that the specific features, structures, materials, or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present application. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described can be combined in a suitable manner in any one or N embodiments or examples. In addition, without contradiction, those skilled in the art can combine and combine the different embodiments or examples described in this specification and the features of different embodiments or examples.
[0170] In addition, the terms "first" and "second" are only used for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly specifying the quantity of the indicated technical features. Thus, the features defined with "first" and "second" may explicitly or implicitly include at least one of such features. In the description of the present application, the meaning of "N" is at least two, such as two, three, etc., unless otherwise specifically and clearly defined.
[0171] Any process or method description in the flowchart or described in other ways herein can be understood as representing a module, segment, or part of code including one or N executable instructions for implementing a customized logic function or process. The scope of the preferred embodiments of the present application includes additional implementations, where the functions can be executed in a substantially simultaneous manner or in the reverse order according to the functions involved, rather than in the order shown or discussed, which should be understood by those skilled in the art of the embodiments of the present application.
[0172] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a definite sequence list of executable instructions for implementing logical functions, and can be specifically implemented in any computer-readable storage medium for use by an instruction execution system, apparatus, or device (such as a computer-based system, a system including a processor, or other systems that can fetch and execute instructions from the instruction execution system, apparatus, or device), or used in combination with these instruction execution systems, apparatus, or devices. For the purposes of this specification, a "computer-readable storage medium" can be any device that can contain, store, communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. More specific examples (non-exhaustive list) of computer-readable storage media include the following: an electrical connection part (electronic device) having one or N wirings, a portable computer diskette (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber device, and a portable compact disc read-only memory (CDROM). Additionally, the computer-readable storage medium can even be paper or other suitable media on which the program can be printed, because the program can be obtained electronically by optically scanning the paper or other media, followed by editing, interpretation, or other suitable processing as necessary, and then stored in a computer memory.
[0173] It should be understood that various parts of the present application can be implemented by hardware, software, firmware, or a combination thereof. In the above embodiments, the N steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, any one or a combination of the following techniques well known in the art can be used: discrete logic circuits having logic gate circuits for implementing logical functions on data signals, application specific integrated circuits having suitable combinational logic gate circuits, programmable gate arrays (PGAs), field programmable gate arrays (FPGAs), etc.
[0174] Those of ordinary skill in the art of this technology can understand that all or part of the steps carried by the method of implementing the above embodiments can be completed by a program instructing relevant hardware, and the program can be stored in a computer-readable storage medium. When the program is executed, it includes one or a combination of the steps of the method embodiments.
[0175] In addition, each functional unit in various embodiments of the present application may be integrated into a processing module, may exist separately physically for each unit, or two or more units may be integrated into one module. The above-mentioned integrated module may be implemented in the form of hardware or in the form of a software functional module. When the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may also be stored in a computer-readable storage medium.
[0176] The above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disc, etc. Although the embodiments of the present application have been shown and described above, it can be understood that the above embodiments are exemplary and should not be construed as limiting the present application. Those of ordinary skill in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present application.
[0177] It should be understood that the application of the present application is not limited to the above examples. For those of ordinary skill in the art, improvements or transformations can be made according to the above description. All such improvements and transformations should fall within the protection scope of the appended claims of the present application.
Claims
1. A method for splitting a chevron-shaped road, characterized in that, The herringbone road splitting method includes: Obtaining a result list obtained after clustering the roads, and selecting a first herringbone cluster from the result list according to the herringbone road characteristics; obtaining a list of rectangular frames and a list of gap perpendicular lines corresponding to the gaps in the first herringbone cluster, and screening the rectangular frames and perpendicular lines according to the list of rectangular frames and the list of gap perpendicular lines to obtain a second herringbone cluster; Splitting the herringbone objects in the second herringbone cluster to obtain a list of herringbone objects and a remaining list, and combining the list of herringbone objects and the remaining list to obtain a target list with classification completed; Using the classified list of herringbone objects and the remaining list in the target list as the element information for generating a vehicle-mounted map.
2. The method for splitting a chevron-shaped road according to claim 1, characterized in that, The step of obtaining a result list obtained after clustering the roads and selecting a first herringbone cluster from the result list according to the herringbone road characteristics specifically includes: Clustering the lane objects in the roads to obtain a result list after clustering; Regarding the clusters with herringbone road characteristics in the result list as the first herringbone cluster.
3. The method for splitting a chevron-shaped road according to claim 1, characterized in that, The step of obtaining a list of rectangular frames and a list of gap perpendicular lines corresponding to the gaps in the first herringbone cluster, and screening the rectangular frames and perpendicular lines according to the list of rectangular frames and the list of gap perpendicular lines to obtain a second herringbone cluster specifically includes: Obtaining the existing gaps in the first herringbone cluster, and obtaining a list of rectangular frames and a list of gap perpendicular lines corresponding to the gaps; Obtaining all the first rectangular frames in the list of rectangular frames, and a set of perpendicular lines corresponding to each of the first rectangular frames in the list of gap perpendicular lines, where each of the first rectangular frames corresponds to a different set of perpendicular lines in the list of gap perpendicular lines, and each set of perpendicular lines includes several perpendicular lines; Converting the coordinates of the perpendicular lines in each set of perpendicular lines corresponding to each of the first rectangular frames into UTM coordinates, and respectively calculating the average length between all the first rectangular frames and several perpendicular lines in the corresponding set of perpendicular lines; Filtering out the first rectangular frames and the corresponding set of perpendicular lines with the average length less than a preset threshold from the list of rectangular frames and the list of gap perpendicular lines to obtain the second herringbone cluster; Wherein, the second herringbone cluster includes: the filtered list of rectangular frames and the filtered list of gap perpendicular lines.
4. The method for splitting a chevron-shaped road according to claim 3, characterized in that, The step of splitting the herringbone objects in the second herringbone cluster to obtain a list of herringbone objects and a remaining list specifically includes: Obtaining all the second rectangular frames in the filtered list of rectangular frames, respectively obtaining a set of lane objects within a second preset range for each of the second rectangular frames, and obtaining the lane objects that meet the preset requirements from the set of lane objects of each of the second rectangular frames as target lane objects, where the set of lane objects includes several lane objects, and the preset requirement is that the lane objects are located in the second herringbone cluster and intersect with the corresponding second rectangular frame; Determine the type of the target lane object. If the type of the target lane object is the MultiPolygon type, obtain the lane object with the largest area in the set of lane objects where the target lane object is located, and calculate the target perpendicular line according to the lane object with the largest area through a preset target perpendicular line calculation method. If the type of the target lane object is the Polygon type, calculate the target perpendicular line according to the geometric information of the target lane object through a preset target perpendicular line calculation method; Create a first chevron list and a second chevron list for storing lane objects, obtain the starting points and ending points of all the target perpendicular lines, and calculate the distances between the starting points and ending points of each target perpendicular line and the corresponding target lane object respectively to obtain the starting point distance and the ending point distance of the target perpendicular line; Put the target perpendicular lines with the starting point distance less than or equal to the ending point distance into the first chevron list, put the target perpendicular lines with the starting point distance greater than the ending point distance into the second chevron list, and delete the target lane object from the second chevron cluster; Use the first chevron list and the second chevron list as the chevron object list, and subtract the second chevron cluster from the chevron object list to obtain the remaining list.
5. The method for splitting a chevron-shaped road according to claim 3, characterized in that, The combination of the chevron object list and the remaining list to obtain the classified target list specifically includes: Obtain all the lane objects in the remaining list, obtain all the first perpendicular lines according to the filtered list of gap perpendicular lines, respectively obtain the point sequence lists of each first perpendicular line, and obtain the starting point coordinates and ending point coordinates of each first perpendicular line from the point sequence lists; Scale the starting point coordinates and ending point coordinates of each first perpendicular line according to a second preset ratio, and calculate the distances between each lane object and the scaled starting point coordinates and ending point coordinates of each first perpendicular line respectively. The lane objects close to the scaled starting point coordinates of the first perpendicular line are used as the first cluster, and the lane objects close to the scaled ending point coordinates of the first perpendicular line are used as the second cluster; Combine the first cluster, the second cluster and the chevron object list to obtain the target list.
6. The method for splitting a chevron-shaped road according to claim 4, characterized in that, Before obtaining all the second rectangular frames in the filtered list of rectangular frames, it also includes: Obtain the geometric information of all the lane objects in the second chevron cluster, store the geometric information in a geometric information storage list, and construct an object index tree for the geometric information storage list; Obtain the point sequence lists corresponding to all the gap perpendicular lines in the filtered list of gap perpendicular lines, store the point sequence lists in a point sequence storage list, and construct a point sequence index tree for the point sequence storage list.
7. The method for splitting a chevron-shaped road according to claim 4, characterized in that, The preset target perpendicular line calculation method specifically includes: Obtain the lane object with the largest area in the set of lane objects where the target lane object is located or the list of second perpendicular lines whose geometric information of the target lane object is within a second preset range. Obtain the type of the intersecting lane object at the intersection of each second perpendicular line in the list of second perpendicular lines with the lane object with the largest area or with the geometric information of the target lane object, and obtain the starting coordinate and ending coordinate of each second perpendicular line; If the type of the intersecting lane object is a line and the starting coordinate and ending coordinate of the second perpendicular line are within the geometric information of the lane object with the largest area or the target lane object, it indicates that the second perpendicular line is a perpendicular line initially meeting the requirements; Scale the longitude coordinates and latitude coordinates of the line initially meeting the requirements by a first preset ratio respectively. If the scaled line intersects with the lane object with the largest area, the scaled line is the target perpendicular line.
8. A system for splitting a chevron-shaped road, characterized in that,The chevron road splitting system includes: A chevron cluster acquisition module, configured to obtain the result list obtained after road clustering processing, and select the first chevron cluster according to the chevron road characteristics in the result list; A chevron cluster screening module, configured to obtain the list of rectangular frames and the list of gap perpendicular lines corresponding to the gaps in the first chevron cluster, and screen the rectangular frames and perpendicular lines according to the list of rectangular frames and the list of gap perpendicular lines to obtain the second chevron cluster; A target list generation module, configured to split the chevron objects in the second chevron cluster to obtain a chevron object list and a remaining list, and combine the chevron object list and the remaining list to obtain a classified target list; A target list application module, configured to use the classified chevron object list and the remaining list in the target list as the element information for generating an in-vehicle map.
9. A terminal, characterized in that, The terminal includes: a memory, a processor, and a chevron road splitting program stored on the memory and executable on the processor. When the chevron road splitting program is executed by the processor, it implements the steps of the chevron road splitting method according to any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a chevron road splitting program. When the chevron road splitting program is executed by a processor, it implements the steps of the chevron road splitting method according to any one of claims 1-7.