Method, device and equipment for matching perception data in multi-pass data
By constructing segment data sets in multiple data and adjusting segment data offsets, the problems of difficulty in matching multiple data and low credibility are solved, and the accurate production of high-precision maps is achieved.
Patent Information
- Application Number
- CN202311276884.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-28
- Publication Date
- 2025-03-28
AI Technical Summary
When making high-precision maps, the data characteristics of the middle section of the group data constructed by multiple data are not obvious, resulting in difficulty or errors in matching, and the absolute position of semantic objects identified on the same road surface is scattered, resulting in low reliability of data matching.
By determining the associated group data by the degree of discreteness of segmented endpoint positions in group data constructed based on multi-pass data, a segment data set is constructed, and the segment data is adjusted by offset to improve the matching rate, the matching relationship of the segment data where the perceived data is located in multiple-pass data is determined.
The matching credibility and accuracy of multiple collections of perceived data is improved, excessive clustering and incorrect matching are avoided, and the production quality of high-precision maps is ensured.
Smart Images

Figure CN119719240A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of geographic information technology, mainly to the field of high-precision map technology based on multi-source crowdsourcing data. The present invention particularly relates to a method, device and equipment for matching perception data in multiple passes of data. Background Art
[0002] High-precision maps can be used for autonomous driving, and the recognition and production of road signs are important components of generating high-precision maps. Road signs (semantic objects) are generally identified and extracted through road image information collected by cameras mounted on vehicles.
[0003] In the process of making high-precision maps, in order to solve the drawback of large resource investment in single-trip closed-loop collection (closed-loop single-trip collection) and optimize application scenarios, the inventor previously proposed a solution for making high-precision maps based on multi-source crowdsourcing data, that is, by using private cars as collection equipment, data collection is performed without interfering with the stable and fast driving of the vehicle. In the process of using private cars to collect data, since it is impossible to stipulate that a certain vehicle strictly follows a closed-loop trajectory, most vehicle trajectories are only one-way trajectories from the starting point to the destination, so multiple single-track data is used in the later production of high-precision maps, that is, multiple / multiple image collections are required for the same location, and then the road sign information in each collected image is extracted separately, and finally the same road sign collected in multiple trips is fused, and then a high-precision map is produced based on multi-source crowdsourcing data. Summary of the invention
[0004] In order to improve the matching credibility and matching accuracy of perception data collected in multiple passes, enrich technical routes and increase selection space, an embodiment of the present invention provides a method, device and equipment for matching perception data in multiple passes of data.
[0005] In a first aspect, an embodiment of the present invention provides a method for matching perception data in multiple passes of data, which may include:
[0006] Determining associated group data based on the discreteness of segment endpoint positions in group data constructed from multiple passes of data, so as to construct a segment data set based on the segment data included in the associated group data;
[0007] Determine the offset of the current segment data to be matched in the segment data set;
[0008] Based on the offset, any segment of the data to be matched is moved and a matching rate of the data to be matched is determined, so as to determine a matching relationship of the segment of the data where the perception data in the multiple passes of data is located based on the matching rate.
[0009] Optionally, determining the offset of the current segment data to be matched in the segment data set may include:
[0010] Determine whether there is a matching relationship between adjacent segment data of the current segment data to be matched in the segment data set;
[0011] If there is no matching relationship, determining the first offset based on the boundary attribute information in the current segment data to be matched;
[0012] If there is a matching relationship, a first offset is determined based on the boundary attribute information in the current segment data to be matched, and / or a second offset is determined based on the vehicle lane information in the adjacent segment data;
[0013] Correspondingly, any segment of the data to be matched is moved based on the first offset and / or the second offset.
[0014] Optionally, before determining whether there is a matching relationship between adjacent segment data of the current segment data to be matched in the segment data set, the following step may also be included:
[0015] Based on the boundary attribute information in each of the segment data, determining a segment data matching order in the segment data set, so as to perform pairwise matching on the segment data included in the segment data set until all the segment data are matched;
[0016] The boundary attribute information includes: the distance between the lane boundary and the trajectory line, and the lane boundary length.
[0017] Optionally, performing pairwise matching on the segment data included in the segment data set until all the segment data are matched may include:
[0018] The segment data that has not been successfully matched in the segment data set is recorded, and after all other segment data in the segment data set are matched, the recorded segment data is re-matched.
[0019] Optionally, determining the matching rate of the current segment data to be matched may include:
[0020] Determining the matching rate based on the matching dimensions of the iconic semantic objects included in the current segment data to be matched and the weights corresponding to the matching dimensions;
[0021] The matching dimension includes at least one of the following: distance between objects, area difference between objects, length difference between objects, consistency of object types, height difference between objects, and similarity of object shapes.
[0022] Optionally, before determining the offset of the current segment data to be matched in the segment data set, the method may further include:
[0023] Determine whether the current segment data to be matched belongs to different groups of data, and the directions of the group data are opposite;
[0024] If yes, determine whether there is an isolation element in the current segment data to be matched;
[0025] If it exists, the current segment data to be matched will no longer be matched;
[0026] If it does not exist, any segment of the current segment data to be matched is reversed, and the offset is determined by the reversed segment data.
[0027] Optionally, after constructing the segment data set, the method may further include: extracting matching elements of each segment data in the segment data set;
[0028] The matching elements include at least one of the following: boundary attribute information, landmark semantic objects, number of lanes in segment data, and vehicle lane information.
[0029] Optionally, after extracting the matching elements of each segment data in the segment data set, the method may further include: filtering the segment data without matching elements in the segment data set.
[0030] Optionally, determining the associated group data based on the discreteness of the segment endpoint positions in the group data constructed from the multiple passes of data may include:
[0031] The discrete degrees of the segment endpoint positions are sorted from small to large, so as to determine the segment endpoint association group data with the smallest discrete degree among the segment endpoint positions as the association group data.
[0032] Optionally, before determining the association group data, the following may also be included:
[0033] Based on the vehicle line tracking ID in the single-trip data, the segment data divided by the single-trip data are matched and transferred to determine the matching relationship of the segment data in the group data constructed by multiple-trip data and the matching relationship of the segment data in adjacent group data;
[0034] If the matching relationship of the segment data cannot be determined based on the vehicle lane tracking ID, the associated group data is determined based on the discrete degree of the segment endpoint positions in the group data constructed from multiple trips of data.
[0035] Optionally, after determining the matching relationship of the segment data, the method further includes: verifying the matching relationship based on the boundary attribute information and / or the vehicle lane information in the segment data;
[0036] The vehicle lane information includes: vehicle lane type and vehicle lane tracking ID.
[0037] Optionally, after determining the matching relationship between the perception data in the multiple passes of data, the method may further include: aligning the perception data in the multiple passes of data.
[0038] In a second aspect, an embodiment of the present invention further provides a device for matching perception data in multiple passes of data, which may include:
[0039] A construction module, configured to determine associated group data based on the discreteness of the segment endpoint positions in the group data constructed from the multiple passes of data, so as to construct a segment data set based on the segment data included in the associated group data;
[0040] An offset determination module, used to determine the offset of the current segment data to be matched in the segment data set;
[0041] The matching module is used to move any segment of the current segment data to be matched based on the offset and determine the matching rate of the current segment data to be matched, so as to determine the matching relationship of the segment data where the perception data in the multiple passes of data is located based on the matching rate.
[0042] In a third aspect, an embodiment of the present invention further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method for matching perception data in multiple passes of data as described in the first aspect.
[0043] In a fourth aspect, an embodiment of the present invention further provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the method for matching perception data in multiple passes of data as described in the first aspect is implemented.
[0044] The beneficial effects of the above technical solution provided by the embodiment of the present invention include at least:
[0045] The embodiments of the present invention provide a method, device and equipment for matching perception data in multiple passes of data. The matching method solves the technical problem that the characteristics of segment data in the group data constructed by multiple passes of data are not obvious and cannot be matched normally or are matched incorrectly. By matching the segment data in the group data, it lays the foundation for aligning semantic objects in subsequent segment data, thereby enabling more accurate production of high-precision maps.
[0046] Furthermore, this method solves the technical problems of inconsistent errors in multiple trips of data, scattered absolute positions of semantic objects of the same road sign, and the need for large-scale over-clustering in the later clustering process, resulting in low data matching credibility.
[0047] Other features and advantages of the present invention will be described in the following description, and partly become apparent from the description, or understood by practicing the present invention. The purpose and other advantages of the present invention can be realized and obtained by the structures particularly pointed out in the written description and the accompanying drawings.
[0048] The technical solution of the present invention is further described in detail below through the accompanying drawings and embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] The accompanying drawings are used to provide a further understanding of the present invention and constitute a part of the specification. Together with the embodiments of the present invention, they are used to explain the present invention and do not constitute a limitation of the present invention. In the accompanying drawings:
[0050] Figure 1 A schematic diagram of segment data provided in an embodiment of the present invention;
[0051] Figure 2 A schematic diagram of line production provided in an embodiment of the present invention;
[0052] Figure 3 A schematic diagram of multiple data packets provided in an embodiment of the present invention;
[0053] Figure 4 A simplified diagram of a method for matching perception data in multiple passes of data provided in an embodiment of the present invention;
[0054] Figure 5 A flow chart of a method for matching perception data in multiple passes of data provided in an embodiment of the present invention;
[0055] Figure 6 A flowchart of a specific process for determining the offset of the current segment data to be matched in the segment data set provided in an embodiment of the present invention;
[0056] Figure 7 A schematic diagram of a projection of a first offset for determining a boundary attribute provided in an embodiment of the present invention;
[0057] Figure 8 A flowchart of processing segment data in different groups of data provided in an embodiment of the present invention;
[0058] Fig. 9 This is one of the schematic diagrams for verifying a matching relationship provided in an embodiment of the present invention;
[0059] Fig.10 The second schematic diagram of verifying the matching relationship provided in the embodiment of the present invention;
[0060] Fig.11 The third schematic diagram of verifying the matching relationship provided in the embodiment of the present invention;
[0061] Fig.12 A flowchart of a detailed method for matching perception data in multiple passes of data provided in an embodiment of the present invention;
[0062] Fig.13 A simplified diagram of the matching logic provided in an embodiment of the present invention;
[0063] Fig.14 A schematic diagram of the structure of a device for matching perception data in multiple passes of data provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0064] The exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although the exemplary embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided to enable a more thorough understanding of the present disclosure and to fully convey the scope of the present disclosure to those skilled in the art.
[0065] In the prior art, when making high-precision maps, accurate high-precision electronic maps are used as the basis, and the perception data (vehicle line objects and semantic objects) are matched within a preset spatial range on the high-precision electronic map, or trajectory data is used for matching in a larger range, which results in low requirements for credibility and accuracy during matching. However, as multi-source crowdsourcing data, multi-trip data itself has no basis for high-precision electronic maps, and is a high-precision map made based on multi-source fusion. Therefore, the perception data in the multi-trip data needs to be matched before the high-precision map can be made. Based on this, the present invention is proposed.
[0066] After acquiring the multi-pass data, the topological relationship of the single-pass data must be established first, and then the single-pass data must be segmented separately, and the segment data of the multi-pass data at the same location must be grouped to obtain group data, and then the group data divided by the multi-pass data is used as the smallest unit for data processing (matching, sampling, alignment, clustering and aggregation) to obtain the semantic objects and lane objects required for the high-precision map. In order to make it clearer in the embodiment of the present invention that the multi-pass data is processed with the group data as the smallest processing unit, the group data divided by the multi-pass data is explained here through the following content. Figure 1 As shown, a single trip of data consists of several connected segments, each of which contains a semantic object and a lane object. Multiple trips of segment data at the same position can be combined into a bunch of data, that is, each single trip of data is segmented based on the same processing mechanism, and the segment data at the same position are combined into a bunch of data.
[0067] Before segmentation, preprocess the single-trip data separately, and establish the position relationship in the horizontal and vertical directions based on the line information, that is, the vehicle lane object information. In the specific implementation, the vehicle lane object in the vertical direction is made into a line (i.e., the vertical relationship), and the vehicle lane object (solid line, dotted line, etc.) in the single-trip data is mounted on the line. The absolute position relationship between the semantic object (identification semantic object, such as arrow, zebra crossing, etc.) in a segment data and the vehicle lane object is known, and the semantic objects in multiple trips of trajectory data can be aligned in turn as a reference. Figure 2 As shown in the figure, the vertical thin line is the produced line. In the same frame of data, the absolute relationship between the above-mentioned lane object and the semantic object is known, so the position relationship of the semantic object in a single trip data can be calibrated. After the calibration is completed, due to the large amount of data and the different starting and ending points between each single trip route, it is not possible to use one trip route as a whole for sampling and alignment. At this time, the single trip data needs to be segmented. In the specific implementation, the single trip data is divided into several segments according to the positions of preset signs such as intersections, zebra crossings, stop lines, etc.
[0068] After the multi-trip data is segmented, it is grouped, that is, the multi-trip data establishes a group relationship, and multiple single-trip data representing the same section of road are divided into one group. A topological relationship is established between adjacent groups, and each group can be written with an ID based on the longitudinal extension characteristics of the line. Figure 3 As shown in the figure, the segments at the same position will form a group data. The endpoints of the group data are crosses. The cross represents the position point of the end of the bunch. The relationship of the cross can be used to determine which bunch it belongs to, and the relationship between adjacent bunches can also be determined.
[0069] When matching the perception data in multiple passes, refer to Figure 4As shown in the figure, the conventional means are as follows: first, a road network is established according to the topological relationship of the bunch, and the starting group data bunch on each road network is found; then, the matching relationship of the lines between the segments in the starting group data bunch is transferred to the forward and backward associated segments through the tracking ID of the line. The purpose of this is to transfer the matching relationship of the position with good signal to the position with poor signal, because the semantic object of the position with poor signal may be severely deformed and cannot be matched conventionally. The starting group data bunch defined above refers to the overlapping matching of the segments in all the bunches on a single road network, and then a data group bunch is selected as the starting group data bunch. The segment signals in this group bunch (here refers to the signal information on the trajectory, which can be directly obtained) are all good, the matching relationship is the most complete and the score is the highest. The matching of segments will have a score, and the score here refers to the average score of all matching relationships on the bunch). When the tracking ID of the line cannot be found in the previous and next segments, the transmission is stopped, and then the matching scheme provided in the embodiment of the present invention is used until the segment data in all the group data are matched, that is, the matching of multiple trips of data (multiple vehicles and multiple perception data) is completed.
[0070] In an embodiment of the present invention, a method for matching perception data in multiple passes of data is provided. The matching method is executed at least once during execution. In order to ensure the accuracy of data matching, the matching can be repeated multiple times, for example, three times or more. Multiple repeated matching can rematch the segment data that has no matching relationship for the first time according to the matching relationship between the previous and next segments, so as to achieve the best matching effect. Figure 4 and Figure 5 As shown, the method may include:
[0071] Step S51: Determine associated group data based on the discreteness of segment endpoint positions in group data constructed from multiple passes of data, so as to construct a segment data set based on the segment data included in the associated group data.
[0072] This step is to sort the crosses obtained by clustering in the group data to determine the degree of discreteness of the endpoint positions in the single-pass data. In the specific implementation, the discreteness of the segment endpoint positions is sorted from small to large, so as to associate the segment endpoint group data with the smallest discreteness in the segment endpoint positions and determine it as the associated group data. The purpose of sorting is to ensure the stability of the matching result output; secondly, to process the bunch with small error first, and then process the bunch with large error, so that the matching results of the previous and next segments can be better used. This step needs to traverse the cross (each cross is mounted with bunch information, such as the bunch starting point, bunch end point, etc.) to obtain the associated bunch. It should be noted that in this embodiment, the associated group data can be one or more, and then the segment data set is constructed based on the associated group data.
[0073] Step S52: Determine the offset of the current segment data to be matched in the segment data set.
[0074] In this step, the offset of the segment data is determined based on the positional relationship between the two segments of data. It can be based on boundary information, special semantic object information, vehicle line semantic object information, or matching relationship information between the front and rear connected segment data. The embodiments of the present invention will be described in detail later.
[0075] Step S53: Move any segment of the current segment data to be matched based on the offset and determine the matching rate of the current segment data to be matched, so as to determine the matching relationship of the segment data where the perception data in the multiple passes of data is located based on the matching rate.
[0076] This step calculates the matching rate of the matching segment data after moving based on the offset. For example, it determines whether the match is successful in different dimensions such as the distance, area difference (length difference), type, height, shape, etc. of the semantic objects included in the segment data, so as to finally determine the matching relationship of the segment data where the perception data is located in the multiple passes of data.
[0077] The matching method of perception data in the above-mentioned multiple passes of data provided in an embodiment of the present invention is used to solve the problem of inconsistent errors in multiple passes of data when high-precision maps are produced using multi-source crowdsourcing data, avoiding the problem of excessive clustering caused by the dispersion of absolute positions of objects (perception data) representing the same ground element, and further avoiding the inability to form a single object normally after excessive clustering. This matching method lays the foundation for the subsequent adjustment (alignment) of object positions in multiple passes of data for producing high-precision maps.
[0078] In an optional embodiment, when constructing a segment data set based on the segment data included in the associated group data in step S51, it is necessary to determine whether the associated bunch is a forward and reverse bunch (up and down roads) at the same location; if it is a forward and reverse bunch, the segments on the two bunches are taken out for matching to obtain segment set 1; if it is not a forward and reverse bunch, the associated bunches are traversed to match the segments within a single bunch to obtain segment set 2. This avoids constructing the same segment data set from data collected in different places, which will result in a low matching success rate.
[0079] In another optional embodiment, before determining the associated group data, the following operation needs to be performed: based on the vehicle line tracking ID in the single-trip data, the segment data divided by the single-trip data are matched and transferred to determine the matching relationship of the segment data within the group data constructed by multiple trips of data and the matching relationship of the segment data in adjacent groups of data; if the matching relationship of the segment data cannot be determined based on the vehicle line tracking ID, the associated group data is determined based on the discrete degree of the segment endpoint positions in the group data constructed by multiple trips of data.
[0080] That is, before the implementation of the embodiment of the present invention, there is a judgment process of whether to perform conventional matching based on the vehicle line tracking ID or to use the unconventional matching in the embodiment of the present invention. If the vehicle line tracking ID signal is good, the vehicle line tracking ID is directly used to match the segment data within and between groups, which is less time-consuming and improves the matching efficiency.
[0081] In another optional embodiment, after constructing the segment data set, it is also necessary to extract matching elements of each segment data in the segment data set; wherein the matching elements include at least one of the following: boundary attribute information, landmark semantic objects, the number of lanes in the segment data, and vehicle line information.
[0082] In this embodiment, after constructing the segment data set, the subsequent steps need to match the segment data, and some matching elements are required for matching, such as extracting internal features such as boundary information, semantic object information, line information, etc. in each segment as matching elements.
[0083] When the embodiment of the present invention is implemented, the features are collected and the accuracy of the features is screened. For example, for lines, shorter line data will be filtered. For semantic objects, semantic objects that are conducive to matching, such as arrows and guide strips, will be collected, while semantic objects with fewer common features will no longer be collected. For boundary information, because the boundary information in the perception data may be misidentified or discontinuous, on the one hand, it is necessary to find the outermost line with boundary information, and connect the shape of the line as the boundary shape according to the tracking ID and timestamp; on the other hand, it is necessary to make a rough assessment of the number of lanes of all segments in the same bunch, and judge how many lanes there are in the current bunch position (take the mode of the number of lane lines of the segments on the bunch), and only retain one side of the boundary of the segment that is less than the number of lanes in the current bunch (there is a situation in the data where there is one less lane but there are boundaries on both sides. Retaining one side can reduce matching conflicts. At the same time, because the boundary information is less credible at this time, it can also be combined with the matching results of the previous and next segments for more accurate matching).
[0084] In another optional embodiment, since the segment data in the embodiment of the present invention are matched in pairs, if a segment data does not extract a matching element with matching significance, the segment data cannot perform the subsequent matching process. Therefore, after extracting the matching element of each segment data in the segment data set, the segment data without matching elements in the segment data set needs to be filtered. The purpose of filtering in this embodiment is to directly skip the subsequent matching steps for the segment data without matching significance, thus saving the subsequent matching operation amount and saving the operation space to improve the matching operation efficiency.
[0085] In another optional embodiment, the specific process of determining the offset of the current segment data to be matched in the segment data set in the above step S52 is as follows: Figure 6 As shown, the following steps may be included:
[0086] Step S60: based on the boundary attribute information in each segment data, determine the segment data matching order in the segment data set, so as to perform pairwise matching on the segment data included in the segment data set until all the segment data are matched; wherein the boundary attribute information may include: the distance between the lane boundary and the trajectory line, and the lane boundary length.
[0087] This step sorts the segment data matching priority according to the lane boundary length and / or the distance between the lane boundary and the trajectory corresponding to the segment data in the segment data set, and then loops through the segment data for pairwise matching. Since different segments in the segment data set correspond to different lane boundary lengths, and the distance between the starting point, middle point, and end point of each line and the trajectory is calculated when making a line, and recorded in the lane information, this step prioritizes matching of segment data with long lane boundaries and close to the trajectory.
[0088] Step S61, determine whether there is a matching relationship between the adjacent segment data of the current segment data to be matched in the segment data set; if there is no matching relationship, execute step S62; if there is a matching relationship, execute step S62 and / or step S63.
[0089] Step S62: Determine a first offset based on the boundary attribute information in the current segment data to be matched.
[0090] In this step, the first offset may be an offset determined by the right boundaries of the two segments of data, may include an offset determined by the left boundaries, or may be an offset determined by both the left and right boundaries. Figure 7 As shown, the offset is calculated by projecting two lines. The line shape in segment2 is line2_geo, and the line shape in segment1 is line1_geo. First, determine whether the point closest to line2_geo can be projected onto line1_geo; if not, continue to determine whether the first point of line2_geo can be projected onto line1_geo, if so, determine the projection point; if not, continue to determine whether the last point of line2_geo can be projected onto line1_geo, if so, determine the projection point; if not, continue to determine whether the point at 1 / 2 of line2_geo can be projected onto line1_geo, if so, determine the projection point; if not, use the first point of line2_geo to project onto the trajectory line of segment2, connect the first point of line2_geo and its projection point on the trajectory line of segment2 to form line2_location_line, select the point of line1_geo closest to line2_location_line to project onto line2_location_line, and move line1_geo to the projection position. Select the point on line2_geo that is closest to the moved line1_geo, project it to the moved line1_geo, and determine whether it can be projected onto the line. If so, determine the projection point, and then use the projection point and the selected projected point to calculate the first offset. If not, there is no lateral offset, and the offset cannot be calculated at this time, so no matching is performed.
[0091] Step S63: determining a second offset based on the vehicle lane information in the connecting segment data.
[0092] It should be noted that in this step, since there is a matching relationship between adjacent segment data, there may be multiple closest matching relationships in the adjacent segment data, such as boundary matching, semantic object matching, etc., so it is necessary to jointly calculate the average offset based on multiple matching relationships.
[0093] It should be noted here that when it is determined that a matching relationship exists in step S61, the first offset can be obtained based on the current segment data's own information, or the second offset can be obtained based on the connected segment data. In the subsequent moving step, the movement can be based on the average of the first offset and the second offset. This embodiment does not specifically limit this.
[0094] It should also be noted that in the embodiment of the present invention, after the pairwise matching is completed, the following steps need to be performed, namely: the segment data that has not been successfully matched in the segment data set is recorded, and after all other segment data in the segment data set are matched, the recorded segment data is re-matched. When performing pairwise segment matching, the matching order will affect the final matching success rate. To shield this problem, the following operation is performed: the segments that have failed to match will be recorded first, and after all segments in the segment set are matched, re-matching will be performed.
[0095] For example, if there are five segments in the segment set, which are sorted as [1, 2, 3, 4, 5], first take 2 out of the matched set a, a = [2].
[0096] The to-be-matched set b = [1,3,4,5], and the unmatched set c = []; traverse b and match it with the last element of the a set. If successful, put it in a, otherwise put it in c.
[0097] 1 and 2 match successfully, a=[2,1], c=[];
[0098] 3 matches 1 successfully, a=[2,1,3], c=[];
[0099] 4 and 3 do not match successfully, a=[2,1,3], c=[4]
[0100] 5 does not match 3, a=[2,1,3], c=[4,5]
[0101] Then assign the unmatched set c to the to-be-matched set b, clear the unmatched set, b=[4,5], c=[]
[0102] Then match the to-be-matched set b with all the segments of the matched set a until the match is successful. If it is not successful yet, determine whether the length of the matched set a has changed (to determine whether new data has been added to the matched set a). If there is a change, match again. If there is no change, end the matching of the current segment set.
[0103] Case 1: Matching is successful
[0104] 4 does not match 2 successfully, a=[2,1,3], c=[]
[0105] 4 matches 1 successfully, a=[2,1,3,4], c=[]
[0106] 5 does not match 2 successfully, a=[2,1,3,4], c=[]
[0107] 5 does not match 1 successfully, a=[2,1,3,4], c=[]
[0108] 5 does not match 3 successfully, a=[2,1,3,4], c=[]
[0109] 5 matches 4 successfully, a=[2,1,3,4,5], c=[]
[0110] Case 2: 4 is not matched successfully
[0111] 4 does not match 2 successfully, a=[2,1,3], c=[]
[0112] 4 does not match 1 successfully, a=[2,1,3], c=[]
[0113] 4 and 3 do not match successfully, a=[2,1,3], c=[4]
[0114] 5 does not match 2 successfully, a=[2,1,3], c=[4]
[0115] 5 matches 1 successfully, a=[2,1,3,5], c=[4]
[0116] It is found that the length of set a has changed, so the matching continues, and the unmatched set c is assigned to the to-be-matched set b, and the unmatched set is cleared, b=[4], c=[]
[0117] 4 does not match 2 successfully, a=[2,1,3,5], c=[]
[0118] 4 does not match 1 successfully, a=[2,1,3,5], c=[]
[0119] 4 does not match 3 successfully, a=[2,1,3,5], c=[]
[0120] 4 and 5 match successfully, a=[2,1,3,5,4], c=[]
[0121] Case 3: The length of a does not change, and the match ends.
[0122] 4 does not match 2 successfully, a=[2,1,3], c=[]
[0123] 4 does not match 1 successfully, a=[2,1,3], c=[]
[0124] 4 and 3 do not match successfully, a=[2,1,3], c=[4]
[0125] 5 does not match 2 successfully, a=[2,1,3], c=[4]
[0126] 5 does not match 1 successfully, a=[2,1,3], c=[4]
[0127] 5 does not match 3, a=[2,1,3], c=[4,5]
[0128] There is a matching relationship between 2, 1, and 3, but there is no matching relationship between 4 and 5.
[0129] After determining the offset of the current segment data to be matched, the above steps S62 and S63 move any segment data in the current segment data to be matched based on the first offset and / or the second offset. The specific process of the offset of the current segment data to be matched provided in the embodiment of the present invention can accurately calculate the offset between the matching segment data and provide data support for subsequent movement.
[0130] In another optional embodiment, the segment data in different groups of data are processed before determining the offset of the current segment data to be matched in the segment data set. Figure 8 As shown, the following steps may be specifically included:
[0131] Step S81, determine whether the current to-be-matched segment data belongs to different groups of data, and the directions of the group data are opposite; if so, execute step S82; otherwise, execute step S83.
[0132] Step S82: determine whether there is an isolation element in the current segment data to be matched; if so, execute step S83; if not, execute step S84.
[0133] Step S83: The current segment of data to be matched is no longer matched.
[0134] Step S84: rotate any segment of the current segment data to be matched, and determine the offset with the rotated segment data. In specific implementation, the left and right boundaries of any segment data are rotated 180 degrees, or the center point of the segment data is rotated, which is not specifically limited in this embodiment.
[0135] The embodiment of the present invention processes segment data with hard isolation elements and belonging to different bunches, wherein the isolation elements include guardrails, curbs, etc. This is to more conveniently match different single-trip data to improve matching efficiency.
[0136] In another optional embodiment, determining the matching rate of the current segment data to be matched includes: determining the matching rate based on the matching dimensions of the landmark semantic objects included in the current segment data to be matched, and the weights corresponding to the matching dimensions; wherein the matching dimensions include at least one of the following: distance between objects, area difference between objects, length difference between objects, consistency of object types, height difference between objects, and similarity of object shapes.
[0137] In specific implementation, the matching rate can be determined by weighted scoring, with corresponding weights of (0.25, 0.1, 0.3, 0.15, 0.2), and the score threshold for successful matching is 0.6. For semantic object groups whose scores meet the preset threshold conditions, they are recorded as successfully matched element groups. For example, if there are six semantic objects on a segment, then in the most perfect case, six successfully matched element groups can be obtained, and the matching rate is 100%. The above-mentioned first offset and / or second offset movement will respectively obtain the overall matching rate of the semantic object and the score value of each group of semantic objects. The group with the highest matching rate is preferentially selected for output, and when the difference in matching rates meets the preset threshold range, the group with the highest score will be output.
[0138] In another optional embodiment, after determining the matching relationship of the segment data, it may also include: verifying the matching relationship based on the boundary attribute information and / or vehicle lane information in the segment data; wherein the vehicle lane information includes: vehicle lane type and vehicle lane tracking ID.
[0139] This step is to check and verify a set of output matching relationships. The purpose is to check the matching results. For example, if the matching results of segment1 and segment2 are incorrect, it is found that there may be a wrong match, and a matching failure will be returned without recording the matching results of the current two segments. It should be noted that the following methods can use a preset threshold method to determine whether there is a matching error, and the embodiment of the present invention does not specifically limit the size of the threshold.
[0140] Reference Fig. 9As shown in , it is determined whether there is a phenomenon of matching lanes, that is, the two segments each have an outermost lane line on different sides that is not matched, such as Fig. 9 As shown in the figure, the lane line on the left side of segment1 and the lane line on the right side of segment2 are not matched, which is a case of matching lanes. To check whether a lane is matched, each of the two segments has an extra lane. First, collect the tracking IDs (trace_id) of the leftmost line and the rightmost line in each frame; then, determine whether there is a matching relationship between the collected tracking IDs of the leftmost line and the rightmost line; third, if there is no matching relationship on the left side of segment1 and no matching relationship on the right side of segment2, and there is a matching relationship on the right side of segment1 and there is a matching relationship on the left side of segment2, it is judged as a wrong match; if there is no matching relationship on the right side of segment1 and no matching relationship on the left side of segment2, and there is a matching relationship on the left side of segment1 and there is a matching relationship on the right side of segment2, it is judged as a wrong match.
[0141] Reference Fig.10 As shown, check whether there are a large number of matches between the solid line and the dotted line. Fig.10 As can be seen, the solid line in segment 1 matches the dashed line in segment 2, and there may be a matching error. In the specific implementation, check whether the solid lines and dashed lines match a large number of line_type: Lane lines contain object types (1: solid line, 2: dashed line, 3: solid line and dashed line). First, check the matching relationship of Line and record the number of matching groups of solid lines and dashed lines; then, if the ratio of the number of matching groups of solid lines and dashed lines to the total number of matching groups exceeds 0.3, it is judged as a wrong match.
[0142] Reference Fig.11 As shown, it is determined whether there is a matching conflict (different lane lines in a single segment match each other). If a line in segment1 matches two lines in segment2, there is a matching conflict. If the check passes, the matching relationship is recorded and the match is successful; if the check fails, the matching relationship is cleared and the two segments fail to match. In specific implementation, the line matching relationship on a single segment is first collected; then, it is determined whether the lines with matching relationships have the same frame and different tracking IDs. If so, it is determined to be a wrong match.
[0143] In another optional embodiment, after determining the matching relationship of the perception data in the multiple passes of data, the method further includes: aligning the perception data in the multiple passes of data. This step lays the foundation for the subsequent production of high-precision maps.
[0144] In a detailed embodiment, referring to Fig.12 As shown, the method for matching the perception data in the above-mentioned multiple passes of data may include the following steps:
[0145] Step S1201: Based on the vehicle lane tracking ID in the single-trip data, the segment data divided by the single-trip data are matched and transferred to determine the segment data matching relationship within the group data constructed by multiple-trip data and the segment data matching relationship in adjacent group data.
[0146] Step S1202: If the matching relationship of the segment data cannot be determined based on the vehicle line tracking ID, the associated group data is determined based on the discrete degree of the segment endpoint positions in the group data constructed by multiple trips of data.
[0147] Step S1203: Determine the associated group data based on the discreteness of the segment endpoint positions in the group data constructed from the multiple passes of data.
[0148] When this step is implemented, the discrete degrees of the segment endpoint positions are sorted from small to large, so that the segment endpoint association group data with the smallest discrete degree among the segment endpoint positions is determined as the association group data.
[0149] Step S1204: construct a segment data set based on the segment data included in the associated group data.
[0150] Step S1205, extracting matching elements of each segment data in the segment data set; wherein the matching elements include at least one of the following: boundary attribute information, landmark semantic objects, the number of lanes in the segment data, and vehicle lane information.
[0151] Step S1206: Filter the segment data without matching elements in the segment data set.
[0152] Step S1207: based on the boundary attribute information in each segment data, determine the segment data matching order in the segment data set, so as to perform pairwise matching on the segment data included in the segment data set until all the segment data are matched; wherein the boundary attribute information may include: the distance between the lane boundary and the trajectory line, and the lane boundary length.
[0153] Step S1208: Determine whether there is a matching relationship between the adjacent segment data of the current segment data to be matched in the segment data set, so as to determine the offset of the current segment data to be matched in the segment data set.
[0154] Step S1209: If there is no matching relationship, determine the first offset based on the boundary attribute information in the current segment data to be matched.
[0155] Step S1210: If there is a matching relationship, a first offset is determined based on the boundary attribute information in the current segment data to be matched, and / or a second offset is determined based on the vehicle lane information in the adjacent segment data.
[0156] Step S1211: Move any segment of the current segment data to be matched based on the offset and determine the matching rate of the current segment data to be matched, so as to determine the matching relationship of the segment data where the perception data in the multiple passes of data is located based on the matching rate.
[0157] The above matching rate is determined based on the matching dimensions of the landmark semantic objects included in the current segment data to be matched, and the weights corresponding to the matching dimensions; wherein the matching dimensions include at least one of the following: distance between objects, area difference between objects, length difference between objects, consistency of object types, height difference between objects, and similarity of object shapes.
[0158] Step S1212: Record the segment data that have not been successfully matched in the segment data set, and after all other segment data in the segment data set have been matched, re-match the recorded segment data.
[0159] The execution logic of the above steps S1208 to S1212 can refer to Fig.13 As shown, the embodiments of the present invention are not described in detail here.
[0160] Step S1213: determine whether the current to-be-matched segment data belongs to different groups of data, and the directions of the group data are opposite; if so, execute step S1214.
[0161] Step S1214: determine whether there is an isolation element in the current segment data to be matched; if so, execute step S1215; if not, execute step S1216.
[0162] Step S1215: The current segment of data to be matched is no longer matched.
[0163] Step S1216: Reverse any segment of the current to-be-matched segment data, and determine the offset using the reversed segment data.
[0164] Step S1217: verify the matching relationship based on the boundary attribute information and / or the vehicle lane information in the segment data; wherein the vehicle lane information includes: vehicle lane type and vehicle lane tracking ID.
[0165] Step S1218: align the perception data in multiple passes of data.
[0166] The beneficial effects and description of the above-mentioned detailed matching method in the embodiment of the present invention can be referred to the description of the above-mentioned specific embodiment, and the present invention will not be repeated here.
[0167] Based on the same inventive concept, an embodiment of the present invention further provides a device for matching perception data in multiple passes of data, referring to Fig.14 As shown, the device may include: a construction module 141, an offset determination module 142 and a matching module 143, and its working principle is as follows:
[0168] The construction module 141 is used to determine the associated group data based on the discrete degree of the segment endpoint positions in the group data constructed by the multiple passes of data, so as to construct a segment data set based on the segment data included in the associated group data;
[0169] The offset determination module 142 is used to determine the offset of the current segment data to be matched in the segment data set;
[0170] The matching module 143 is used to move any segment of the current segment data to be matched based on the offset and determine the matching rate of the current segment data to be matched, so as to determine the matching relationship of the segment data where the perception data in the multiple passes of data is located based on the matching rate.
[0171] In an optional embodiment, the offset determination module 142 is specifically configured to:
[0172] Determine whether there is a matching relationship between the adjacent segment data of the current segment data to be matched in the segment data set;
[0173] If there is no matching relationship, determining the first offset based on the boundary attribute information in the current segment data to be matched;
[0174] If there is a matching relationship, a first offset is determined based on the boundary attribute information in the current segment data to be matched, and / or a second offset is determined based on the vehicle lane information in the adjacent segment data;
[0175] Correspondingly, any segment of the data to be matched is moved based on the first offset and / or the second offset.
[0176] In an optional embodiment, the matching module 143 is specifically used to: determine the segment data matching order in the segment data set based on the boundary attribute information in each segment data, so as to perform pairwise matching on the segment data included in the segment data set based on the segment data matching order until all the segment data are matched; wherein the boundary attribute information includes: the distance between the lane boundary and the trajectory line, and the lane boundary length.
[0177] In an optional embodiment, the matching module 143 is specifically used to: record the segment data that has not been successfully matched in the segment data set, and after all other segment data in the segment data set are matched, re-match the recorded segment data.
[0178] In an optional embodiment, the matching module 143 is specifically used to determine the matching rate based on the matching dimensions of the landmark semantic objects included in the current segment data to be matched, and the weights corresponding to the matching dimensions; wherein the matching dimensions include at least one of the following: distance between objects, area difference between objects, length difference between objects, consistency of object types, height difference between objects, and similarity of object shapes.
[0179] In an optional embodiment, the matching module 143 is specifically used to: determine whether the current to-be-matched segment data respectively belong to different groups of data, and the directions of the group data are opposite;
[0180] If so, determine whether there is an isolation element in the current segment data to be matched;
[0181] If it exists, the current segment data to be matched will no longer be matched;
[0182] If it does not exist, any segment of the current segment data to be matched is reversed, and the offset is determined by the reversed segment data.
[0183] In an alternative embodiment, referring to Fig.14 As shown, it may also include: an extraction module 144, which is used to extract matching elements of each segment data in the segment data set; wherein the matching elements include at least one of the following: boundary attribute information, landmark semantic objects, the number of lanes in the segment data, and vehicle line information.
[0184] In an alternative embodiment, referring to Fig.14 As shown, it may also include: a filtering module 145, and the filtering module 145 is used to filter the segment data without matching elements in the segment data set.
[0185] In an optional embodiment, the construction module 141 is used to sort the discreteness of the segment endpoint positions from small to large, so as to determine the segment endpoint association group data with the smallest discreteness among the segment endpoint positions as the association group data.
[0186] In another optional embodiment, it may also include: a matching relationship transfer module 146, which is used to transfer the matching relationship of the segment data divided by the single-trip data based on the vehicle line tracking ID in the single-trip data, so as to determine the matching relationship of the segment data within the group data constructed by multiple trips of data and the matching relationship of the segment data in adjacent groups of data; if the matching relationship of the segment data cannot be determined based on the vehicle line tracking ID, the associated group data is determined based on the discrete degree of the segment endpoint positions in the group data constructed by multiple trips of data.
[0187] In another alternative embodiment, referring to Fig.14As shown, it may also include: a verification module 147, which is used to verify the matching relationship based on the boundary attribute information and / or the vehicle lane information in the segment data.
[0188] In another alternative embodiment, referring to Fig.14 As shown, it may also include: an alignment module 148, and the alignment module 148 is used to align the perception data in multiple passes of data.
[0189] Based on the same inventive concept, an embodiment of the present invention further provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the method for matching the perception data in the above-mentioned multiple passes of data is implemented.
[0190] Based on the same inventive concept, a computer device is also provided in an embodiment of the present invention, including a memory, a processor, and a computer program stored in the memory and executable on the processor, and when the processor executes the program, a method for matching perception data in the above-mentioned multiple passes of data is implemented.
[0191] The principles of the problems solved by the above-mentioned devices, media, and related equipment in the embodiments of the present invention are similar to those of the above-mentioned methods, so their implementation can refer to the implementation of the above-mentioned methods, and the repeated parts will not be repeated.
[0192] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) containing computer-usable program code.
[0193] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0194] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0195] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0196] Obviously, those skilled in the art can make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include these modifications and variations.
Claims
1. A method for matching perception data in multiple passes of data, characterized in that: include: Determining associated group data based on the discreteness of segment endpoint positions in group data constructed from multiple passes of data, so as to construct a segment data set based on the segment data included in the associated group data; Determine the offset of the current segment data to be matched in the segment data set; Based on the offset, any segment of the data to be matched is moved and a matching rate of the data to be matched is determined, so as to determine a matching relationship of the segment of the data where the perception data in the multiple passes of data is located based on the matching rate.
2. The method according to claim 1, characterized in that Determining the offset of the current segment data to be matched in the segment data set includes: Determine whether there is a matching relationship between adjacent segment data of the current segment data to be matched in the segment data set; If there is no matching relationship, determining the first offset based on the boundary attribute information in the current segment data to be matched; If there is a matching relationship, a first offset is determined based on the boundary attribute information in the current segment data to be matched, and / or a second offset is determined based on the vehicle lane information in the adjacent segment data; Correspondingly, any segment of the data to be matched is moved based on the first offset and / or the second offset.
3. The method according to claim 2, characterized in that Before determining whether there is a matching relationship between the adjacent segment data of the current segment data to be matched in the segment data set, the method further includes: Based on the boundary attribute information in each of the segment data, determining a segment data matching order in the segment data set, so as to perform pairwise matching on the segment data included in the segment data set until all the segment data are matched; The boundary attribute information includes: the distance between the lane boundary and the trajectory line, and the lane boundary length.
4. The method according to claim 3, characterized in that The segment data included in the segment data set are matched in pairs until all the segment data are matched, including: The segment data that has not been successfully matched in the segment data set is recorded, and after all other segment data in the segment data set are matched, the recorded segment data is re-matched.
5. The method according to claim 1, characterized in that Determining the matching rate of the current segment data to be matched includes: Determining the matching rate based on the matching dimensions of the iconic semantic objects included in the current segment data to be matched and the weights corresponding to the matching dimensions; The matching dimension includes at least one of the following: distance between objects, area difference between objects, length difference between objects, consistency of object types, height difference between objects, and similarity of object shapes.
6. The method according to claim 1, characterized in that Before determining the offset of the current segment data to be matched in the segment data set, the method further includes: Determine whether the current segment data to be matched belongs to different groups of data, and the directions of the group data are opposite; If yes, determine whether there is an isolation element in the current segment data to be matched; If it exists, the current segment data to be matched will no longer be matched; If it does not exist, any segment of the current segment data to be matched is reversed, and the offset is determined by the reversed segment data.
7. The method according to claim 1, characterized in that After the segment data set is constructed, the method further includes: extracting matching elements of each segment data in the segment data set; The matching elements include at least one of the following: boundary attribute information, landmark semantic objects, number of lanes in segment data, and vehicle lane information.
8. The method according to claim 7, characterized in that After extracting the matching elements of each segment data in the segment data set, the method further includes filtering the segment data without matching elements in the segment data set.
9. The method according to claim 1, characterized in that: The determining of the associated group data based on the discreteness of the segment endpoint positions in the group data constructed from the multiple passes of data includes: The discrete degrees of the segment endpoint positions are sorted from small to large, so as to determine the segment endpoint association group data with the smallest discrete degree among the segment endpoint positions as the association group data.
10. The method according to any one of claims 1 to 9, characterized in that: Before determining the association group data, the method further includes: Based on the vehicle line tracking ID in the single-trip data, the segment data divided by the single-trip data are matched and transferred to determine the matching relationship of the segment data in the group data constructed by multiple-trip data and the matching relationship of the segment data in adjacent group data; If the matching relationship of the segment data cannot be determined based on the vehicle lane tracking ID, the associated group data is determined based on the discrete degree of the segment endpoint positions in the group data constructed from multiple trips of data.
11. The method according to any one of claims 1 to 9, characterized in that: After determining the matching relationship of the segment data, the method further includes: verifying the matching relationship based on the boundary attribute information and / or the vehicle lane information in the segment data.
12. The method according to any one of claims 1 to 9, characterized in that: After determining the matching relationship between the perception data in the multiple passes of data, the method further includes: aligning the perception data in the multiple passes of data.
13. A device for matching perception data in multiple passes of data, characterized in that: include: A construction module, configured to determine associated group data based on the discreteness of the segment endpoint positions in the group data constructed from the multiple passes of data, so as to construct a segment data set based on the segment data included in the associated group data; An offset determination module, used to determine the offset of the current segment data to be matched in the segment data set; The matching module is used to move any segment of the current segment data to be matched based on the offset and determine the matching rate of the current segment data to be matched, so as to determine the matching relationship of the segment data where the perception data in the multiple passes of data is located based on the matching rate.
14. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method for matching perception data in multiple passes of data as described in any one of claims 1 to 12 is implemented.
15. A computer device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the method for matching perception data in multiple passes of data according to any one of claims 1 to 12 is implemented.