Trajectory screening method and device in high-definition map production, electronic equipment and medium

By filtering and smoothing trajectory data, the problem of insufficient trajectory data selection in high-precision maps is solved, and high-precision and efficient high-precision map construction is achieved, especially with a significant improvement in data representation in intersection areas.

CN122448239APending Publication Date: 2026-07-24BEIJING BAIDU NETCOM SCI & TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610465518.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2022-12-06
Publication Date
2026-07-24

Smart Images

  • Figure CN122448239A_ABST
    Figure CN122448239A_ABST
Patent Text Reader

Abstract

The present disclosure provides a trajectory screening method and device in high-definition map production, an electronic device and a medium, relates to the technical field of computers, and particularly relates to the field of high-definition maps and autonomous driving. The specific implementation scheme is as follows: a plurality of driving trajectories from a first location to a second location are acquired; for each driving trajectory, the driving trajectory is truncated according to a turning position, and at least one lap trajectory corresponding to the driving trajectory is obtained; the smoothness of each lap trajectory corresponding to the driving trajectory is determined according to the smoothness of the lap trajectory, and the smoothness of the driving trajectory is determined; driving trajectories with smoothness meeting requirements are screened, and an intersection area is determined according to the position of a trajectory point in the driving trajectory; if there is a driving trajectory passing through the intersection area, the driving trajectory that straightly passes through the intersection area is screened as a target driving trajectory.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the invention patent filed on December 6, 2022, with application number 202211559010.X and titled "Track Filtering Method and Device, Electronic Equipment and Medium in High-Precision Map Production". Technical Field

[0002] This disclosure relates to the field of computer technology, and in particular to the fields of high-precision maps and autonomous driving. Background Technology

[0003] High-precision maps, also known as high-definition maps, are simply electronic maps with higher accuracy and more data dimensions. They include not only road information but also surrounding static information related to traffic, such as lane information, traffic signs, and road location information, which can provide comprehensive assistance for autonomous driving applications.

[0004] In the production of high-precision maps, it is necessary to use a data collection vehicle to travel along the road and use the sensor equipment on it to collect information about the road and its surrounding environment. For example, the lidar on the data collection vehicle can be used to collect point cloud data, and the positioning equipment on the data collection vehicle can be used to obtain the trajectory data of the data collection vehicle during its travel. Based on the trajectory data, point cloud data and other data, high-precision maps can be produced. Summary of the Invention

[0005] This disclosure provides a trajectory filtering method, apparatus, electronic device, and medium for high-precision map production.

[0006] According to one aspect of this disclosure, a trajectory filtering method for high-precision map production is provided, comprising: acquiring multiple driving trajectories from a first location to a second location; for each driving trajectory, truncating the driving trajectory according to the turning position to obtain at least one pass trajectory corresponding to the driving trajectory; determining the smoothness of the driving trajectory based on the smoothness of each pass trajectory corresponding to the driving trajectory; filtering driving trajectories with a smoothness that meets the requirements, and determining an intersection area based on the position of the trajectory points in the driving trajectory; if there is a driving trajectory passing through the intersection area, then filtering the driving trajectory that goes straight through the intersection area as the target driving trajectory.

[0007] According to another aspect of this disclosure, a trajectory filtering device for high-precision map production is provided, comprising: a first trajectory acquisition module for acquiring multiple driving trajectories from a first location to a second location; a first area determination module for determining an intersection area based on the position of trajectory points in the driving trajectories; and a first trajectory filtering module for filtering driving trajectories that travel straight through the intersection area as target driving trajectories when there are driving trajectories that pass through the intersection area.

[0008] According to another aspect of this disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the trajectory screening method described above.

[0009] According to another aspect of this disclosure, a non-transitory computer-readable storage medium is provided storing computer instructions, wherein the computer instructions are used to cause the computer to perform the trajectory filtering method described above.

[0010] According to another aspect of this disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements the trajectory filtering method described above.

[0011] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0012] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein:

[0013] Figure 1 This is a schematic diagram of a trajectory filtering method in high-precision map production according to an embodiment of the present disclosure;

[0014] Figure 2 This is a schematic diagram of step S102 according to an embodiment of the present disclosure;

[0015] Figure 3 This is a scene diagram that can implement the trajectory filtering method in the production of high-precision maps according to the embodiments of this disclosure;

[0016] Figure 4 This is a structural block diagram of a trajectory filtering device in high-precision map production according to an embodiment of the present disclosure;

[0017] Figure 5 This is a schematic diagram of a trajectory filtering method in high-precision map production according to another embodiment of the present disclosure;

[0018] Figure 6 This is a structural block diagram of a trajectory filtering device in high-precision map production according to another embodiment of the present disclosure;

[0019] Figure 7 This is a block diagram of an electronic device used to implement the trajectory filtering method in high-precision map production according to embodiments of the present disclosure. Detailed Implementation

[0020] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.

[0021] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this disclosure are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this disclosure described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0022] According to an embodiment of this disclosure, an embodiment of a trajectory filtering method in high-precision map production is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.

[0023] Figure 1 This is a flowchart of a trajectory filtering method in high-precision map production according to an embodiment of the present disclosure, such as... Figure 1 As shown, the method includes the following steps S101 to S103:

[0024] Step S101: Obtain multiple driving trajectories from the first location to the second location.

[0025] Here, the first location and the second location are different locations. In specific implementation, for all driving trajectories from the first location to the second location, the most recent driving trajectory can be obtained based on the timestamp of the driving trajectory. The high-precision map constructed using the most recent driving trajectory can ensure its high freshness.

[0026] Step S102: Determine the intersection area based on the position of the trajectory points in the driving trajectory.

[0027] Each driving trajectory includes several trajectory points, and the intersection area is determined based on the positions of these trajectory points within different driving trajectories. In specific implementations, the intersection area can be a crossroads, a T-junction, or a multi-way intersection, such as a three-way intersection.

[0028] Step S103: If there is a driving trajectory that passes through the intersection area, then the driving trajectory that goes straight through the intersection area is selected as the target driving trajectory.

[0029] It should be noted that the area outside the intersection area is the non-intersection area. The driving trajectory through the non-intersection area is usually a straight driving trajectory, so there is no need to filter the straight driving trajectory.

[0030] In this embodiment, for driving trajectories passing through intersection areas, straight driving trajectories are prioritized. Point cloud stitching using straight driving trajectories can yield a high-precision map with higher accuracy.

[0031] In one alternative embodiment, such as Figure 2 As shown, step S102 specifically includes:

[0032] Step S1021: Determine the intersection location based on the position of the trajectory points in the driving trajectory.

[0033] Step S1022: Cluster all intersection locations according to a preset distance to obtain at least one group of intersection locations. The preset distance can be set according to the size of the intersection; for example, if the intersection size is 40m, the preset distance can be set to 50m. Intersection locations with spacing within the preset distance are clustered into a group corresponding to the same intersection.

[0034] Step S1023: For each group of intersection locations, determine the corresponding mutually perpendicular driving trajectories. The mutually perpendicular driving trajectories differ between different groups of intersection locations. For example, for group A intersection location corresponding to intersection A, the corresponding mutually perpendicular driving trajectories are LA1 and LA2; for group B intersection location corresponding to intersection B, the corresponding mutually perpendicular driving trajectories are LB1 and LB2.

[0035] Step S1024: Determine the corresponding intersection area based on the intersection positions in the group of intersection locations and the mutually perpendicular driving trajectories. Different groups of intersection positions correspond to different intersection areas, and the direction of the mutually perpendicular driving trajectories is used to represent the direction of the two perpendicular roads within the corresponding intersection area.

[0036] In this embodiment, the intersection location is first determined based on the location of the trajectory points, then the mutually perpendicular driving trajectories corresponding to the same set of intersection locations are determined, and finally the intersection area is determined based on these two driving trajectories and the corresponding intersection locations.

[0037] In an optional embodiment, step S1021 specifically includes: determining a first target trajectory point and a second target trajectory point in the driving trajectory; wherein the distance between the first target trajectory point and the second target trajectory point is greater than a first threshold, and the difference in timestamps between the first target trajectory point and the second target trajectory point is greater than a second threshold; if the curvature of the driving trajectory between the first target trajectory point and the second target trajectory point is greater than a third threshold, then the positions of all trajectory points between the first target trajectory point and the second target trajectory point on the driving trajectory are determined as intersection positions.

[0038] The first, second, and third thresholds can be set according to the actual situation of the intersection. In a specific example, the first threshold is 20m, the second threshold is 5s, the distance between trajectory point P1 and trajectory point P8 in the driving trajectory L1 is 22m, and the difference in timestamps between trajectory point P1 and trajectory point P8 is 5.5s. Since the distance between trajectory point P1 and trajectory point P8 is greater than the first threshold, and the difference in timestamps between trajectory point P1 and trajectory point P8 is greater than the second threshold, trajectory point P1 and trajectory point P8 can be determined as the first target trajectory point and the second target trajectory point, respectively.

[0039] The greater the curvature of the driving trajectory between the first target trajectory point and the second target trajectory point, the greater the degree of curvature of the driving trajectory between the first target trajectory point and the second target trajectory point. If the degree of curvature reaches a certain value, i.e., the curvature is greater than a third threshold, then the driving trajectory between the first target trajectory point and the second target trajectory point is considered to be within the intersection area. At this time, the positions of all trajectory points between the first target trajectory point and the second target trajectory point that meet the distance and timestamp requirements on the same driving trajectory can be determined as the intersection location. In this embodiment, determining the intersection location based on the first target trajectory point and the second target trajectory point that meet the distance and timestamp requirements on the same driving trajectory can ensure the accuracy of the intersection location.

[0040] In one optional embodiment, step S1021 specifically includes: projecting the driving trajectory onto the target image; determining the trajectory point corresponding to the upper corner position of the target image; and determining the position of the trajectory point as the intersection position.

[0041] When the driving trajectory is projected onto the target image, the grayscale values ​​of the locations with and without the driving trajectory are different, allowing the driving trajectory to be distinguished in the target image. In a specific example, the grayscale value of the locations with the driving trajectory is 1, and the grayscale value of the locations without the driving trajectory is 0.

[0042] In this embodiment, different driving trajectories are projected onto a target image. The intersection points of the driving trajectories on the target image can be determined by the corner points on the target image. The intersection locations are then determined based on the intersection locations of the driving trajectories, ensuring the accuracy of the intersection locations. Typically, multiple driving trajectories correspond to multiple intersection points; this embodiment can determine multiple intersection locations.

[0043] It should be noted that, to further ensure the accuracy of the determined intersection location, before projecting the driving trajectory onto the target image, different driving trajectories need to be grouped according to their corresponding heights. Then, the driving trajectories in different groups are projected onto different target images. For example, driving trajectories within a first height range are grouped together and projected onto one target image. Driving trajectories within a second height range are grouped together and projected onto another target image. The second height range is larger than the first height range. Driving trajectories within the second height range can correspond to driving trajectories in scenarios such as overpasses or viaducts, while driving trajectories within the first height range can correspond to driving trajectories in scenarios such as ground level or under bridges.

[0044] In an optional embodiment, step S1023 specifically includes: for each set of intersection locations, searching for driving trajectories around each intersection location; and determining corresponding mutually perpendicular driving trajectories based on the orientation of the searched driving trajectories.

[0045] In a specific example, if the angle between the orientations of two driving trajectories is close to 90°, then the two driving trajectories are determined to be perpendicular to each other.

[0046] To improve mapping efficiency, all driving trajectories can be divided into blocks, and mapping can be performed according to these blocks. The size of a block can be set according to actual needs, typically a one-kilometer square. In practice, an array structure can be constructed using the current block and driving trajectories within a certain outward expansion range. For example, a kd-tree can be built to search for driving trajectories within this array structure. The expansion range can be set according to the size of the intersection; for example, if the intersection is 30 meters in size, the current block can be expanded outwards by 40 meters.

[0047] In an optional embodiment, step S1024 specifically includes: projecting all intersection positions in the group of intersection positions onto the directions of the mutually perpendicular driving trajectories; determining the two farthest projection positions in each direction of the mutually perpendicular driving trajectories; and determining the intersection area corresponding to the group of intersection positions based on the area enclosed by the four determined projection positions.

[0048] Among them, the area enclosed by the four projection positions at the farthest points in two mutually perpendicular directions can be close to a rectangular area, close to a square area, or other irregular areas.

[0049] In practice, the area enclosed by these four projection positions can be directly defined as the intersection area. To improve the accuracy of the intersection area, the enclosed area can be extended outwards by a certain distance, and the extended area can be defined as the intersection area.

[0050] In an optional embodiment, the trajectory filtering method further includes: if the curvature of the target sub-trajectory is less than a fourth threshold, then determining that the target sub-trajectory's trajectory passes straight through the intersection area; wherein, the target sub-trajectory is the trajectory within the intersection area. In a specific example, if the curvature of the target sub-trajectory is close to 0, then determining that the target sub-trajectory's trajectory passes straight through the intersection area. In this embodiment, the curvature of the target sub-trajectory determines whether the trajectory passes straight through the intersection area. The smaller the curvature of the target sub-trajectory, the less curved it is, thus determining whether the target sub-trajectory is straight, and further determining whether the trajectory passes straight through the intersection area.

[0051] In an optional embodiment, the above trajectory filtering method further includes step S104: for each driving trajectory, the driving trajectory is truncated according to the turning position to obtain at least one pass trajectory corresponding to the driving trajectory; the smoothness of the driving trajectory is determined according to the smoothness of each pass trajectory corresponding to the driving trajectory. In this embodiment, step S102 specifically includes: filtering driving trajectories that meet the smoothness requirements, and determining the intersection area according to the position of the trajectory points in the driving trajectory.

[0052] The turning positions include U-turn positions. The travel trajectory is a travel trajectory obtained by truncating the original travel trajectory. In a specific example, a travel trajectory can be truncated according to three turning positions, resulting in five travel trajectories.

[0053] Specifically, the smoothness of the driving trajectory can be determined based on the average smoothness of all passes corresponding to the driving trajectory. In a specific implementation, the smoothness of the pass can be determined based on the angle between the orientations of two adjacent frames in the pass. For ease of calculation, the angle can be normalized, for example, by dividing the angle by 180° to obtain a smoothness score characterizing the smoothness. The smoothness score is between 0 and 1; the smaller the smoothness score, the better the smoothness.

[0054] The smoothness requirement can be defined as a driving trajectory that achieves a certain level of smoothness. Alternatively, driving trajectories can be sorted from best to worst smoothness, and a preset number of trajectories at the top of the sorted list can be selected as those meeting the smoothness requirement. The preset number can be set according to actual needs, for example, it can be set to 3 trajectories.

[0055] In this embodiment, driving trajectories with better smoothness are selected first, followed by driving trajectories that proceed straight through intersection areas. Using driving trajectories with better smoothness for point cloud stitching can further improve the accuracy of the constructed high-precision map.

[0056] In an optional embodiment, the trajectory filtering method further includes: among all trajectories with the same orientation corresponding to the target driving trajectory, if the number of trajectories with a spacing less than a fifth threshold exceeds the target number, then retaining the target number of trajectories with a spacing less than the fifth threshold. The fifth threshold and the target number can be set according to actual conditions; for example, the fifth threshold can be set to 10m, and the target number can be set to 2.

[0057] In a specific example, for such Figure 3 (a) shows the trajectories. Specifically, for trajectories with the same orientation, only two trajectories with a spacing of less than 10m are retained, resulting in the following: Figure 3 (b) shows the lap trajectory. Wherein, Figure 3 In (a) and (b), 2 represents the intersection area, while 1, 3, 4 and 5 all represent non-intersection areas.

[0058] In this embodiment, for trajectories with the same orientation, trajectories with a target number of intervals less than the fifth threshold are retained. The driving trajectories after filtering are used to stitch point clouds together to construct a high-precision map. This not only ensures the accuracy of the high-precision map but also improves the construction efficiency of the high-precision map.

[0059] According to embodiments of this disclosure, an embodiment of a trajectory filtering device for high-precision map production is also provided, wherein... Figure 4 This is a schematic diagram of a trajectory filtering device for high-precision map production according to an embodiment of the present disclosure. The device includes a first trajectory acquisition module 401, a first region determination module 402, and a first trajectory filtering module 403. The first trajectory acquisition module 401 is used to acquire multiple driving trajectories from a first location to a second location; the first region determination module 402 is used to determine intersection regions based on the positions of trajectory points in the driving trajectories; and the first trajectory filtering module 403 is used to filter driving trajectories that travel straight through the intersection regions as target driving trajectories when there are driving trajectories that pass through the intersection regions.

[0060] It should be noted that the first trajectory acquisition module 401, the first region determination module 402, and the first trajectory filtering module 403 mentioned above correspond to steps S101 to S103 in the above embodiments. These three modules are the same as the examples and application scenarios implemented by the corresponding steps, but are not limited to the content disclosed in the above embodiments.

[0061] In an optional embodiment, the first region determination module includes: a location determination unit, configured to determine the intersection location based on the location of trajectory points in the driving trajectory; a clustering unit, configured to cluster all intersection locations according to a preset distance to obtain at least one set of intersection locations; a trajectory determination unit, configured to determine a corresponding mutually perpendicular driving trajectory for each set of intersection locations; and a first determination unit, configured to determine a corresponding intersection region based on the intersection locations in the set of intersection locations and the mutually perpendicular driving trajectories.

[0062] In an optional embodiment, the location determination unit is specifically used to determine a first target trajectory point and a second target trajectory point in the driving trajectory; wherein the distance between the first target trajectory point and the second target trajectory point is greater than a first threshold, and the difference in timestamps between the first target trajectory point and the second target trajectory point is greater than a second threshold; and when the curvature of the driving trajectory between the first target trajectory point and the second target trajectory point is greater than a third threshold, the positions of all trajectory points between the first target trajectory point and the second target trajectory point on the driving trajectory are determined as intersection positions.

[0063] In one optional embodiment, the position determination unit is specifically used to project the driving trajectory onto the target image; determine the trajectory point corresponding to the upper corner position of the target image; and determine the position of the trajectory point as the intersection position.

[0064] In one optional embodiment, the trajectory determination unit is specifically used to search for driving trajectories around each intersection location for each group of intersection locations, and to determine corresponding mutually perpendicular driving trajectories based on the orientation of the searched driving trajectories.

[0065] In one optional embodiment, the first determining unit is specifically configured to project all intersection positions in the group of intersection positions onto the directions of the mutually perpendicular driving trajectories; determine the two farthest projection positions in each direction of the mutually perpendicular driving trajectories; and determine the intersection area corresponding to the group of intersection positions based on the area enclosed by the four determined projection positions.

[0066] In an optional embodiment, the device further includes a second region determination module, configured to determine that the target sub-trajectory passes through the intersection region if the curvature of the target sub-trajectory is less than a fourth threshold; wherein the target sub-trajectory is a travel trajectory within the intersection region.

[0067] In an optional embodiment, the device further includes a first trajectory truncation module, used to truncate each driving trajectory according to the turning position to obtain at least one pass trajectory corresponding to the driving trajectory; and a first smoothness determination module, used to determine the smoothness of the driving trajectory based on the smoothness of each pass trajectory corresponding to the driving trajectory. In this embodiment, the first region determination module is specifically used to filter driving trajectories that meet the smoothness requirements, and to determine the intersection region based on the position of the trajectory points in the driving trajectory.

[0068] In an optional embodiment, the device further includes a first retention module, configured to retain the target number of trajectories with a spacing less than the fifth threshold if the number of trajectories with a spacing less than the fifth threshold exceeds the target number, for all trajectories with the same orientation corresponding to the target driving trajectory.

[0069] The device embodiments described above are merely illustrative. The modules or units described as separate components may or may not be physically separate, and may be located in one place or distributed across multiple network units. Some or all of the modules or units can be selected to achieve the purpose of this disclosure according to actual needs.

[0070] According to an embodiment of this disclosure, another embodiment of a trajectory filtering method in high-precision map production is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.

[0071] Figure 5 This is a flowchart of a trajectory filtering method in high-precision map production according to an embodiment of the present disclosure, such as... Figure 5 As shown, the method includes the following steps S501 to S504:

[0072] Step S501: Obtain multiple driving trajectories from the first location to the second location. Step S501 corresponds to step S101 in the above embodiments, and the examples and application scenarios implemented are the same as those in step S101 in the above embodiments, but are not limited to the content disclosed in the above embodiments.

[0073] Step S502: For each driving trajectory, the driving trajectory is truncated according to the turning position to obtain at least one trip trajectory corresponding to the driving trajectory.

[0074] Step S503: Determine the smoothness of the driving trajectory based on the smoothness of each trip corresponding to the driving trajectory.

[0075] Wherein, the above steps S502~S503 correspond to step S104 in the above embodiments, and the examples and application scenarios implemented are the same as those in step S104 in the above embodiments, but are not limited to the content disclosed in the above embodiments.

[0076] Step S504: Filter the target driving trajectory based on the smoothness of the driving trajectory. In specific implementation, driving trajectories that meet the smoothness requirements can be filtered as target driving trajectories. Specifically, driving trajectories that meet the smoothness requirements can be driving trajectories with a certain level of smoothness. Alternatively, driving trajectories can be sorted from best to worst smoothness, and a preset number of driving trajectories at the top of the sorted list can be filtered as driving trajectories that meet the smoothness requirements. The preset number can be set according to actual conditions, for example, it can be set to 3.

[0077] In this embodiment, the driving trajectory is filtered according to its smoothness, and the point cloud is stitched using the driving trajectory with better smoothness, which can improve the accuracy of the constructed high-precision map.

[0078] In an optional embodiment, the method further includes: among all the same-orientation trajectories corresponding to the target driving trajectory, if the number of trajectories with a spacing less than a fifth threshold exceeds the target number, then retaining the target number of trajectories with a spacing less than the fifth threshold. The fifth threshold and the target number can be set according to actual conditions; for example, the fifth threshold can be set to 10m, and the target number can be set to 2.

[0079] In this embodiment, driving trajectories with good smoothness are selected first. Then, for trajectories with the same direction, the target number of trajectories with a spacing of less than the fifth threshold are retained. The driving trajectories after selection are used to stitch point clouds together to construct a high-precision map. While ensuring the accuracy of the high-precision map, the construction efficiency of the high-precision map can also be improved.

[0080] According to embodiments of this disclosure, another embodiment of a trajectory filtering device for high-precision map production is also provided, wherein... Figure 6This is a schematic diagram of a trajectory filtering device for high-precision map production according to an embodiment of the present disclosure. The device includes a second trajectory acquisition module 601, a second trajectory truncation module 602, a second smoothness determination module 603, and a second trajectory filtering module 604. The second trajectory acquisition module 601 is used to acquire multiple driving trajectories from a first location to a second location; the second trajectory truncation module 602 is used to truncate each driving trajectory according to the turning position to obtain at least one pass trajectory corresponding to the driving trajectory; the second smoothness determination module 603 is used to determine the smoothness of the driving trajectory based on the smoothness of each pass trajectory corresponding to the driving trajectory; and the second trajectory filtering module 604 is used to filter target driving trajectories based on the smoothness of the driving trajectories.

[0081] It should be noted that the second trajectory acquisition module 601, the second trajectory truncation module 602, the second smoothness determination module 603, and the second trajectory filtering module 604 mentioned above correspond to steps S501 to S504 in the above embodiments. These four modules are the same as the examples and application scenarios implemented by the corresponding steps, but are not limited to the content disclosed in the above embodiments.

[0082] In an optional embodiment, the device further includes a second retention module, which is used to retain the target number of trajectories with a spacing less than the fifth threshold when the number of trajectories with a spacing less than the fifth threshold exceeds the target number, for all trajectories with the same orientation corresponding to the target driving trajectory.

[0083] The device embodiments described above are merely illustrative. The modules or units described as separate components may or may not be physically separate, and may be located in one place or distributed across multiple network units. Some or all of the modules or units can be selected to achieve the purpose of this disclosure according to actual needs.

[0084] The collection, storage, use, processing, transmission, provision, and disclosure of user personal information involved in the technical solution disclosed herein comply with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0085] According to embodiments of this disclosure, this disclosure also provides an electronic device, a readable storage medium, and a computer program product.

[0086] Figure 7A schematic block diagram of an example electronic device 700 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0087] like Figure 7 As shown, device 700 includes a computing unit 701, which can perform various appropriate actions and processes based on a computer program stored in read-only memory (ROM) 702 or a computer program loaded into random access memory (RAM) 703 from storage unit 708. The RAM 703 may also store various programs and data required for the operation of device 700. The computing unit 701, ROM 702, and RAM 703 are interconnected via bus 704. Input / output (I / O) interface 705 is also connected to bus 704.

[0088] Multiple components in device 700 are connected to I / O interface 705, including: input unit 706, such as keyboard, mouse, etc.; output unit 707, such as various types of monitors, speakers, etc.; storage unit 708, such as disk, optical disk, etc.; and communication unit 709, such as network card, modem, wireless transceiver, etc. Communication unit 709 allows device 700 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0089] The computing unit 701 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 701 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 701 performs the various methods and processes described above, such as the trajectory filtering method. For example, in some embodiments, the trajectory filtering method may be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 708. In some embodiments, part or all of the computer program may be loaded and / or installed on device 700 via ROM 702 and / or communication unit 709. When the computer program is loaded into RAM 703 and executed by the computing unit 701, one or more steps of the trajectory filtering method described above may be performed. Alternatively, in other embodiments, the computing unit 701 may be configured to perform the trajectory filtering method by any other suitable means (e.g., by means of firmware).

[0090] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0091] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0092] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0093] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0094] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.

[0095] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other. Servers can be cloud servers, servers in distributed systems, or servers incorporating blockchain technology.

[0096] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this disclosure can be achieved, and this is not limited herein.

[0097] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.

Claims

1. A trajectory selection method for high-precision map production, comprising: Obtain multiple driving trajectories from the first location to the second location; For each driving trajectory, the driving trajectory is truncated according to the turning position to obtain at least one trip trajectory corresponding to the driving trajectory; The smoothness of the driving trajectory is determined based on the smoothness of each pass corresponding to the driving trajectory; The smoothness of the driving trajectory is selected and the intersection area is determined based on the position of the trajectory points in the driving trajectory. If a driving trajectory exists that passes through the intersection area, then the driving trajectory that goes straight through the intersection area will be selected as the target driving trajectory.

2. The trajectory filtering method according to claim 1, wherein, Determining the intersection area based on the position of trajectory points in the driving trajectory includes: The location of the intersection is determined based on the position of the trajectory points in the driving trajectory. Cluster all intersection locations according to a preset distance to obtain at least one set of intersection locations; For each set of intersections, determine the corresponding mutually perpendicular driving trajectories; The corresponding intersection area is determined based on the intersection location in this group of intersection locations and the mutually perpendicular driving trajectories.

3. The trajectory filtering method according to claim 2, wherein, Determining the intersection location based on the position of trajectory points in the driving trajectory includes: Determine a first target trajectory point and a second target trajectory point in the driving trajectory; wherein the distance between the first target trajectory point and the second target trajectory point is greater than a first threshold, and the difference between the timestamps of the first target trajectory point and the second target trajectory point is greater than a second threshold; If the curvature of the driving trajectory between the first target trajectory point and the second target trajectory point is greater than the third threshold, then the positions of all trajectory points between the first target trajectory point and the second target trajectory point on the driving trajectory are determined as intersection positions.

4. The trajectory filtering method according to claim 2, wherein, Determining the intersection location based on the position of trajectory points in the driving trajectory includes: Project the driving trajectory onto the target image; Determine the trajectory point corresponding to the upper corner position of the target image; The location of the trajectory point is determined as the intersection location.

5. The trajectory filtering method according to claim 2, wherein, The process of determining the corresponding mutually perpendicular driving trajectories for each set of intersection locations includes: For each set of intersection locations, search the driving trajectories around each intersection location; Determine the corresponding mutually perpendicular driving trajectories based on the orientation of the driving trajectory obtained from the search.

6. The trajectory filtering method according to claim 2, wherein, The step of determining the corresponding intersection area based on the intersection location in the group of intersection locations and the mutually perpendicular driving trajectories includes: Project all the intersection positions in this group onto the directions of the mutually perpendicular driving trajectories; For the directions of the mutually perpendicular driving trajectories, determine the two farthest projection positions in each direction; The intersection area corresponding to the intersection location is determined based on the area enclosed by the four determined projection positions.

7. The trajectory filtering method according to claim 1 further includes: If the curvature of the target sub-trajectory is less than the fourth threshold, then the target sub-trajectory is determined to be a straight-through travel path through the intersection area; wherein, the target sub-trajectory is a travel path within the intersection area.

8. The trajectory filtering method according to any one of claims 1-7, further comprising: If the number of trajectories with a spacing less than the fifth threshold exceeds the target number among all trajectories corresponding to the target driving trajectory, then the target number of trajectories with a spacing less than the fifth threshold are retained.

9. A trajectory filtering device for high-precision map production, comprising: The first trajectory acquisition module is used to acquire multiple driving trajectories from the first location to the second location; The first trajectory truncation module is used to truncate each driving trajectory according to the turning position to obtain at least one trip trajectory corresponding to the driving trajectory. The first smoothness determination module is used to determine the smoothness of the driving trajectory based on the smoothness of each trip corresponding to the driving trajectory; The first region determination module is used to filter out driving trajectories that meet the smoothness requirements, and determine the intersection region based on the position of the trajectory points in the driving trajectory. The first trajectory filtering module is used to filter the driving trajectory that goes straight through the intersection area as the target driving trajectory when there is a driving trajectory that passes through the intersection area.

10. The trajectory screening device according to claim 9, wherein, The first region determination module includes: A location determination unit is used to determine the intersection location based on the position of trajectory points in the driving trajectory; Clustering unit, used to cluster all intersection locations according to a preset distance to obtain at least one set of intersection locations; The trajectory determination unit is used to determine the corresponding mutually perpendicular driving trajectories for each set of intersection locations; The first determining unit is used to determine the corresponding intersection area based on the intersection position in the group of intersection positions and the mutually perpendicular driving trajectories.

11. The trajectory screening device according to claim 10, wherein, The location determination unit is specifically used to determine a first target trajectory point and a second target trajectory point in the driving trajectory; wherein the distance between the first target trajectory point and the second target trajectory point is greater than a first threshold, and the difference in timestamps between the first target trajectory point and the second target trajectory point is greater than a second threshold; and when the curvature of the driving trajectory between the first target trajectory point and the second target trajectory point is greater than a third threshold, the positions of all trajectory points between the first target trajectory point and the second target trajectory point on the driving trajectory are determined as intersection positions.

12. The trajectory screening device according to claim 10, wherein, The location determination unit is specifically used to project the driving trajectory onto the target image; determine the trajectory point corresponding to the upper corner of the target image; and determine the position of the trajectory point as the intersection position.

13. The trajectory screening device according to claim 10, wherein, The trajectory determination unit is specifically used to search for driving trajectories around each intersection location for each group of intersection locations, and to determine corresponding mutually perpendicular driving trajectories based on the orientation of the searched driving trajectories.

14. The trajectory screening device according to claim 10, wherein, The first determining unit is specifically used to project all the intersection positions in the group of intersection positions onto the directions of the mutually perpendicular driving trajectories; determine the two farthest projection positions in each direction of the mutually perpendicular driving trajectories; and determine the intersection area corresponding to the group of intersection positions based on the area enclosed by the four determined projection positions.

15. The trajectory filtering device according to claim 9, further comprising a second region determination module, configured to determine, when the curvature of the target sub-trajectory is less than a fourth threshold, that the travel trajectory of the target sub-trajectory passes straight through the intersection region; wherein, The target sub-trajectory is the travel trajectory within the intersection area.

16. The trajectory filtering device according to any one of claims 9-15, further comprising a first retention module, configured to retain, for all trajectories of the same orientation corresponding to the target driving trajectory, if the number of trajectories with a spacing less than a fifth threshold exceeds the target number, the target number of trajectories with a spacing less than the fifth threshold.

17. An electronic device comprising: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the trajectory screening method according to any one of claims 1-8.

18. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause the computer to execute the trajectory filtering method according to any one of claims 1-8.

19. A computer program product comprising a computer program that, when executed by a processor, implements the trajectory filtering method according to any one of claims 1-8.