Method for carrying out constraint search based on data association and corresponding device

By dynamically adjusting the search step size and forward and backward bidirectional collaborative search, combined with the kd-tree structure, the shortcomings of the constrained search scheme in the existing technology are solved, efficient constraints and data consistency in sensitive areas such as the edges of overlapping areas are achieved, and computational efficiency and accuracy are improved.

CN120723959AActive Publication Date: 2025-09-30NEOLITHIC HUITONG TECHNOLOGY CO LTD
View PDF 12 Cites 0 Cited by

Patent Information

Application Number
CN202511141327.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-15
Publication Date
2025-09-30
Estimated Expiration
2045-08-15

AI Technical Summary

Technical Problem

The existing constrained search scheme cannot balance the search positioning accuracy and the search constraint due to the fixed search step size, resulting in a lack of constraints or excessive calculation in sensitive areas such as the edges of overlapping areas.

Method used

A data association-based method is adopted to dynamically adjust the search step size and forward and backward bidirectional collaborative search. A dense search step size is used to perform precise search in sensitive areas, and a sparse search step size is used to perform efficient search in non-sensitive areas. The search path is optimized in combination with the kd-tree structure.

Benefits of technology

Provide sufficient constraints in sensitive areas such as the edges of overlapping areas to reduce invalid calculations, ensure data consistency and accuracy, avoid stratification and ambiguity problems, and improve computing efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120723959A_ABST
    Figure CN120723959A_ABST
Patent Text Reader

Abstract

The invention discloses a method and a corresponding device for carrying out constraint search based on data association. The method comprises the following steps: after a to-be-searched track and associated data are determined, initializing search parameters required by the search based on the track length of the to-be-searched track, and according to the initialized dense search step size and sparse search step size, dynamically adjusting the search step size in a sparse and dense manner and performing forward and backward bidirectional collaborative search, searching and positioning a forward search track point and a backward search track point which are in association constraint with the associated data from the track to be searched; and combining the forward search track point and the backward search track point to obtain a constraint search result of this time. According to the method, by combining front and back bidirectional collaborative search with dynamic step length adjustment, it can be ensured that sensitive areas such as the edge of an overlapping area have enough constraints, meanwhile, the situation that the number of constraints is multiplied due to the too small step length is avoided, therefore, the calculation amount is effectively controlled, meanwhile, reasonable constraints are considered, and the calculation efficiency is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the fields of computer vision and three-dimensional imaging technology, specifically to technical fields such as point cloud reconstruction and image processing, and more particularly to a method and corresponding device for constrained search based on data association. Background Art

[0002] In areas such as autonomous driving and mobile robotics, comprehensive and high-precision 3D point cloud reconstruction is a prerequisite for technical services such as 3D mapping, scene reconstruction, and surveying. For example, large-scale scene reconstruction often involves collecting data over hundreds or even thousands of kilometers. The entire journey encompasses complex environments such as open areas and obstructions, requiring collaborative or multiple collections from multiple vehicles or even fleets. Furthermore, multiple trips are often required to collect the same area, or the collection area can be expanded to supplement the data. Therefore, 3D point cloud reconstruction requires multiple and extensive data collection efforts to fully capture the important data in the scene.

[0003] However, multiple and extensive data collection inevitably leads to data duplication in overlapping areas. To ensure consistent accuracy in overlapping areas of data collected from multiple collections, without quality issues such as layering and ambiguity, and to ensure high consistency between data, it is necessary to jointly optimize multiple data passes, incremental data, and historical data. The key to joint optimization lies in fully and efficiently identifying constraints between data.

[0004] Currently, loop searches within data and constraint searches between data (for example, incremental data and historical data) mostly use equal-interval searches. However, equal-interval searches have the following problems: A large search step size can lead to a lack of constraints in sensitive areas such as overlapping edges, missing important constraints and making it difficult to accurately locate them; a small search step size can lead to an exponential increase in the number of constraints, increasing the amount of downstream computation. Summary of the Invention

[0005] The present application provides a method and corresponding device for constrained search based on data association to solve the problem that the constrained search scheme in the prior art cannot take into account both the search positioning accuracy and the appropriate amount of search constraints without affecting the downstream calculation amount due to the fixed search step size.

[0006] The technical solution is as follows: In a first aspect, a method for constrained search based on data association is provided, comprising: Determine a trajectory to be searched and associated data having an associated constraint relationship with the trajectory to be searched; wherein the associated constraint relationship includes at least one or more of: a position constraint, a distance constraint, and a scene constraint; Initializing search parameters required for this search based on the trajectory length of the trajectory to be searched, wherein the search parameters include: a dense search step length and a sparse search step length; According to the initialized dense search step size and sparse search step size, the forward search trajectory point and the backward search trajectory point that are associated with the associated data are searched and located from the to-be-searched trajectory by adopting a sparse-to-dense dynamic adjustment of the search step size and a forward-to-backward bidirectional collaborative search method; The forward search trajectory points and the backward search trajectory points are combined to obtain the current constrained search result.

[0007] In a possible implementation, based on the length of the trajectory to be searched, the search parameters required for this search are initialized, specifically including: The intensive search step is initialized to a first proportional range of the trajectory length of the trajectory to be searched, and the first proportional range is [1 / 100, 1 / 200]; The sparse search step size is initialized to a second proportional range of the trajectory length of the trajectory to be searched, and the second proportional range is [1 / 20, 1 / 50].

[0008] In one possible implementation, based on the initialized dense search step size and sparse search step size, a method of dynamically adjusting the search step size and a forward and backward bidirectional collaborative search is adopted to search and locate forward and backward search trajectory points associated with the associated data constraints from the trajectory to be searched, specifically including: Performing downsampling processing on the trajectory to be searched, and storing the associated data as a kd tree structure; From the head end to the tail end of the downsampled trajectory to be searched: based on the initialized dense search step size and sparse search step size, dynamically adjust the step size during the search process to search and locate the forward search trajectory point associated with the kd tree structure constraint; From the tail end to the head end of the downsampled trajectory to be searched: based on the initialized dense search step size and sparse search step size, the step size in the search process is dynamically adjusted to search and locate the backward search trajectory point associated with the constraints of the kd tree structure.

[0009] In a possible implementation, the search parameters further include: a dense segment continuity threshold, wherein the dense segment continuity threshold is positively correlated with the degree of the current constraint requirement; Based on the initialized dense search step size and sparse search step size, dynamically adjust the step size during the search process to search and locate the forward search trajectory point associated with the constraints of the kd tree structure, specifically including: Traversing each trajectory point in the downsampled trajectory to be searched with the sparse search step size; Determine whether a trajectory point associated with the kd tree structure constraint is found during the sparse traversal process; If yes, the trajectory point found this time is recorded as the starting point of the dense segment, and the search step size is adjusted from the sparse search step size to the dense search step size, and the subsequent unsearched trajectory points are traversed; otherwise, the operation of determining whether the trajectory point associated with the kd tree structure is found during the sparse traversal process; Determine whether a trajectory point constrained by the kd-tree structure is found during the dense traversal process, and the number of trajectory points recorded in the dense segment does not reach a dense segment continuity threshold; If yes, the track points found this time are recorded in the dense segment; otherwise, the search step size is adjusted from the dense search step size to the sparse search step size, and the subsequent unsearched track points are continued to be traversed; Repeat the above operation until every track point in the track to be searched is traversed, and the track points recorded in all dense segments are counted as forward search track points.

[0010] In a possible implementation, when no trajectory point associated with the kd-tree structure constraint is found during the dense traversal process, and the number of trajectory points recorded in the dense segment does not reach a dense segment continuity threshold, the method further includes: Starting from the trajectory point corresponding to the starting point of this dense segment, the search step size is adjusted from the dense search step size to the temporary search step size, and the subsequent unsearched trajectory points are continued to be traversed; wherein the temporary search step size is smaller than the dense search step size; Determine whether a trajectory point associated with the kd-tree structure is found during this traversal, and whether the number of trajectory points recorded in the dense segment does not reach the dense segment continuity threshold; If yes, the track points found this time are recorded in the dense segment; otherwise, the search step size is adjusted from the temporary search step size to the sparse search step size, and the subsequent unsearched track points are continued to be traversed.

[0011] In a possible implementation, the associated constraint relationship is a position constraint, and searching for a trajectory point associated with the kd tree structure constraint means that: the position coordinates of the trajectory point in the searched trajectory and the trajectory point in the kd tree structure are the same or meet a set similarity; The association constraint relationship is a distance constraint, and the search for a trajectory point associated with the kd tree structure constraint means that the distance between the trajectory point in the searched trajectory and the trajectory point in the kd tree structure is less than a set threshold; The associated constraint relationship is a scene constraint, and searching for a trajectory point associated with the kd tree structure means that: the scene of the trajectory point in the to-be-searched trajectory is the same as that of the trajectory point in the kd tree structure or satisfies the set similarity; or, the scene feature of the trajectory point in the to-be-searched trajectory is the same as that of the trajectory point in the kd tree structure or satisfies the set similarity.

[0012] In a possible implementation, merging the forward search trajectory points and the backward search trajectory points to obtain the current constrained search result specifically includes: Eliminate any trajectory point whose distance between the forward search trajectory point and the backward search trajectory point is less than the intensive search step size, and merge the remaining trajectory points to obtain the current constrained search result; or For any trajectory point in the forward search trajectory point and the backward search trajectory point that is in a dense segment, determine whether the distance between the current trajectory point and the nearest trajectory point is greater than the dense search step size. If so, no processing is performed; otherwise, the trajectory point is eliminated. For any trajectory point in the forward search trajectory point and the backward search trajectory point that is not in a dense segment, determine whether the distance between the current trajectory point and the nearest trajectory point is greater than the sparse search step size. If so, no processing is performed; otherwise, the trajectory point is eliminated. The remaining trajectory points are merged to obtain the current constrained search result.

[0013] In a second aspect, a device for performing constrained search based on data association is provided, comprising: A determination module, configured to determine a trajectory to be searched and associated data having an associated constraint relationship with the trajectory to be searched; wherein the associated constraint relationship includes at least one or more of a position constraint, a distance constraint, and a scene constraint; An initialization module, configured to initialize search parameters required for this search based on the trajectory length of the trajectory to be searched, wherein the search parameters include: a dense search step length and a sparse search step length; A search module is configured to search for and locate forward search trajectory points and backward search trajectory points associated with the associated data in the trajectory to be searched, using a method of dynamically adjusting the search step size and performing a forward and backward bidirectional collaborative search based on an initialized dense search step size and a sparse search step size; The merging module is used to merge the forward search trajectory points and the backward search trajectory points to obtain the current constrained search result.

[0014] According to a third aspect, an electronic device is provided, including: at least one processor; and 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. The instructions are executed by the at least one processor to enable the at least one processor to perform the method of any possible implementation manner and the aspects described above.

[0015] In a fourth aspect, a computer-readable storage medium is provided, wherein the storage medium stores at least one instruction, and the at least one instruction is loaded and executed by a processor to implement the method of the above-mentioned aspect and any possible implementation manner.

[0016] In a fifth aspect, a computer program product is provided, comprising a computer program, which, when executed by a processor, implements the above-mentioned aspects and any possible implementation method.

[0017] The beneficial effects of the technical solution provided by this application include at least: As can be seen from the above technical solution, after determining the trajectory to be searched and the associated data, the embodiment of the present application, based on forward and backward bidirectional collaborative search, can search sensitive areas such as the edges of the overlapping area with a dense search step (i.e., short step length), while searching non-sensitive areas outside the overlapping area with a sparse search step (i.e., long step length). By combining forward and backward bidirectional collaborative search with dynamic step size adjustment, it is possible to ensure sufficient constraints in sensitive areas such as the edges of the overlapping area, while avoiding the exponential increase in the number of constraints due to an excessively small step size. This effectively controls the amount of computation while taking into account reasonable constraints, ensuring computational efficiency, ensuring high consistency between data, and avoiding quality issues such as stratification and ambiguity.

[0018] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present application, nor is it intended to limit the scope of the present application. Other features of the present application will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0020] Figure 1 This is a schematic diagram of the steps of a method for performing constrained search based on data association provided in an embodiment of the present application.

[0021] Figure 2 1 is a flow chart of a constrained search of a trajectory C to be searched based on associated data ref provided by an embodiment of the present application.

[0022] Figure 3a It is a schematic diagram of the result of medium step search in the prior art.

[0023] Figure 3b This is a schematic diagram of the results of the dynamic step forward search used in this application.

[0024] Figure 3c This is a schematic diagram of the results of the dynamic step size backward search used in this application.

[0025] Figure 3d This is a schematic diagram of the result after the forward search trajectory points and the backward search trajectory points are merged and processed in this application.

[0026] Figure 4 This is a structural block diagram of an apparatus for performing constrained search based on data association provided in yet another embodiment of the present application.

[0027] Figure 5 This is a block diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0028] The following description of exemplary embodiments of the present application is provided in conjunction with the accompanying drawings, which include various details of the embodiments of the present application to facilitate understanding. These details should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present application. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.

[0029] Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0030] It should be noted that the terminal devices involved in the embodiments of the present application may include but are not limited to mobile phones, personal digital assistants (PDAs), wireless handheld devices, tablet computers and other smart devices; display devices may include but are not limited to personal computers, televisions and other devices with display functions.

[0031] In this document, the term "and / or" simply describes a relationship between related objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A exists alone, A and B exist simultaneously, or B exists alone. Furthermore, the character " / " in this document generally indicates that the related objects are in an "or" relationship.

[0032] In view of the fact that the constrained search scheme in the prior art cannot take into account both the accuracy of search positioning and the appropriate amount of search constraints without affecting the amount of downstream calculations due to the fixed search step size, the present application proposes a constrained search scheme that dynamically adjusts the search step size, thereby improving the calculation speed and ensuring that sensitive areas such as the edges of overlapping areas have the necessary conditions for sufficient constraints. The main inventive concept of the present application is that after determining the trajectory to be searched and the associated data, based on the forward and backward two-way collaborative search, it is possible to search in sensitive areas such as the edges of overlapping areas with a dense search step size (i.e., a short step size), while searching in non-sensitive areas outside the overlapping areas with a sparse search step size (i.e., a long step size). By combining the forward and backward two-way collaborative search with the dynamic adjustment of the step size, it is possible to ensure that there are sufficient constraints in sensitive areas such as the edges of overlapping areas, while avoiding the exponential increase in the number of constraints due to an excessively small step size, thereby effectively controlling the amount of calculation while taking into account reasonable constraints, ensuring calculation efficiency, ensuring high consistency between data, and avoiding quality problems such as stratification and fuzziness.

[0033] The scenarios applicable to this application solution may include: 1. Autonomous driving: Through high-precision 3D point cloud reconstruction, it provides more accurate environmental information for the autonomous driving system, helping the vehicle to better plan the driving path, avoid collisions, and improve driving safety.

[0034] 2. 3D mapping for mobile robots: Efficient 3D mapping in complex environments ensures that robots can accurately understand their surroundings, enabling them to make safer and more effective navigation decisions.

[0035] 3. Surveying and mapping: In large-scale scene reconstruction, by jointly optimizing multi-pass data, incremental data, and historical data, we can ensure high consistency between data and avoid quality issues such as stratification and ambiguity.

[0036] Reference Figure 1 The figure shows a schematic diagram of the steps of a method for performing a constrained search based on data association according to an embodiment of the present application. The method can be performed by a device for performing a constrained search based on data association. The device can be an electronic device such as a computer, tablet computer, smart terminal, smart wearable device, etc. that has data calculation, processing, and storage functions, or a software module or component integrated into such electronic devices.

[0037] like Figure 1 As shown, the method for performing constraint search based on data association may include the following steps: Step 102: Determine a trajectory to be searched and associated data having an associated constraint relationship with the trajectory to be searched; wherein the associated constraint relationship includes at least one or more of a position constraint, a distance constraint, and a scene constraint.

[0038] In this application, the trajectory to be searched can be a relatively complete set of scene data collected during 3D point cloud reconstruction, for example, multi-circle scene data collected at one time for a park. The associated data can be the trajectory to be searched itself, or it can be historical scene data or incremental scene data collected at other times. For example, historical scene data collected at historical times for the aforementioned park.

[0039] In this application, association constraints are the key to the search. Only data that has an association constraint relationship with the trajectory to be searched can be considered as associated data. This association constraint relationship can be a position association, such as having the same or similar location, a distance association, such as being very close, or a scene association, such as being in the same or similar scene. In short, as long as there is data with similar association constraints, it can be used as associated data for the trajectory to be searched.

[0040] Step 104: Initialize search parameters required for this search based on the trajectory length of the trajectory to be searched, wherein the search parameters include: a dense search step length and a sparse search step length.

[0041] In the present application, the intensive search step size is initialized to a first proportional range of the trajectory length of the trajectory to be searched, where the first proportional range is [1 / 100, 1 / 200]. This intensive search step size is used to control the fine granularity of the trajectory search process. A shorter step size can improve search accuracy but increase the computational complexity. Therefore, the intensive search step size can be set to 1 / 100 to 1 / 200 of the total trajectory length, and the minimum step size must be no less than 1 meter to ensure the effectiveness and computational feasibility of the search.

[0042] The sparse search step size is initialized to a second ratio range of the trajectory length of the trajectory to be searched, where the second ratio range is [1 / 20, 1 / 50]. This sparse search step size is used to accelerate the search process for long-distance trajectory segments in non-sensitive areas, avoiding the time and energy (computational power) of performing short-step searches in non-sensitive areas. Therefore, the sparse search step size is typically set to 1 / 20 to 1 / 50 of the total trajectory length to achieve a balance between search efficiency and coverage.

[0043] Step 106: Based on the initialized dense search step size and sparse search step size, a method of dynamically adjusting the search step size and forward and backward bidirectional collaborative search is adopted to search and locate forward search trajectory points and backward search trajectory points associated with the associated data constraints from the trajectory to be searched.

[0044] In the present application, the method of dynamically adjusting the search step size by density and the method of forward and backward coordinated search can be used to search for and locate trajectory points. For example, first, a forward search is performed by dynamically adjusting the search step size by density to obtain the forward search trajectory points, and then a backward search is performed by dynamically adjusting the search step size by density to obtain the backward search trajectory points. For another example, in a search process, a search is performed by dynamically adjusting the search step size by density. Each time a trajectory point is found during the forward search, a forward and backward search is performed based on the trajectory point, and the trajectory points are recorded. The search is generally terminated after a set number of searches, and the forward search is continued until the search is completed. The forward search trajectory points and the backward search trajectory points during the search process are counted.

[0045] Optionally, when searching for and locating forward search trajectory points and backward search trajectory points associated with the associated data from the trajectory to be searched by dynamically adjusting the search step size in a dense and sparse manner and by a forward and backward bidirectional collaborative search based on the initialized dense search step size and sparse search step size, the trajectory to be searched can be downsampled and the associated data can be stored as a kd tree structure; from the head end to the tail end of the downsampled trajectory to be searched: based on the initialized dense search step size and sparse search step size, the step size in the search process is dynamically adjusted to search and locate the forward search trajectory points associated with the kd tree structure; from the tail end to the head end of the downsampled trajectory to be searched: based on the initialized dense search step size and sparse search step size, the step size in the search process is dynamically adjusted to search and locate the backward search trajectory points associated with the kd tree structure.

[0046] Among them, downsampling the search trajectory can reduce the number of trajectory points, reduce the number of searches, and improve search efficiency. The associated data is stored as a kd tree structure, specifically the associated data can be placed in the kd tree structure for easy search traversal. By performing forward and backward searches on the search trajectory separately, it is possible to maximize the coverage of the search trajectory points, avoid the error accumulation that may be caused by a single-directional search, that is, avoid missing the search trajectory points with associated constraints, and improve the search hit rate and efficiency.

[0047] Furthermore, the search parameters also include a dense segment continuity threshold, which is positively correlated with the degree of constraint requirements. For example, if the constraint requirements are higher in sensitive areas, the dense segment continuity threshold can be adjusted to a higher value, and vice versa. The dense segment continuity threshold is a condition used to control the search mode switching. When the number of consecutive dense search steps reaches this threshold, the search mode can be switched to a sparse search mode to improve efficiency. The dense segment continuity threshold can be set to a fixed value (such as 4 or 8) or adjusted according to actual application requirements.

[0048] Optionally, when dynamically adjusting the step size during the search process based on the initialized dense search step size and sparse search step size to search and locate the forward search trajectory point or the backward search trajectory point with the constraints associated with the kd tree structure, you can refer to: traversing each trajectory point in the downsampled trajectory to be searched with the sparse search step size; judging whether the trajectory point with the constraints associated with the kd tree structure is searched during the sparse traversal process; if so, recording the trajectory point searched this time as the starting point of the dense segment, and adjusting the search step size from the sparse search step size to the dense search step size, and traversing the subsequent unsearched trajectory points; otherwise , returning to the operation of determining whether a trajectory point associated with the kd-tree structure's constraints was found during the sparse traversal; determining whether a trajectory point associated with the kd-tree structure's constraints was found during the dense traversal, and whether the number of trajectory points recorded in the dense segment did not reach the dense segment continuity threshold; if so, recording the trajectory point found in this search into the dense segment; otherwise, adjusting the search step from the dense search step to the sparse search step, and continuing to traverse the subsequent unsearched trajectory points; repeating the above operation until every trajectory point in the to-be-searched trajectory has been traversed, and counting the trajectory points recorded in all dense segments as the forward search trajectory points. Thus, by dynamically adjusting the search step, long and short step sizes are adaptively switched based on the distribution characteristics of the trajectory overlap area, maintaining high accuracy in sensitive areas (such as the overlap area and the boundary) and improving search efficiency in non-sensitive areas (outside the overlap area).

[0049] If no trajectory points associated with the kd-tree structure are found during the dense traversal process, and the number of trajectory points recorded in the dense segment does not reach the dense segment continuity threshold, the search step size can be adjusted from the dense search step size to the temporary search step size starting from the trajectory point corresponding to the starting point of the current dense segment, and the traversal of subsequent unsearched trajectory points can be continued; wherein the temporary search step size is smaller than the dense search step size; it is determined whether a trajectory point associated with the kd-tree structure is found during the current traversal process, and the number of trajectory points recorded in the dense segment does not reach the dense segment continuity threshold; if so, the trajectory points found during the current traversal are recorded in the dense segment; otherwise, the search step size is adjusted from the temporary search step size to the sparse search step size, and the traversal of subsequent unsearched trajectory points can be continued. This step can further reduce the search step size within the dense segment to supplement the trajectory points with associated constraints within the dense segment, thereby improving the search accuracy within the dense segment.

[0050] Optionally, the associated constraint relationship is a position constraint, and searching for a trajectory point associated with the kd tree structure means that: the position coordinates of the trajectory point in the trajectory to be searched are the same as those of the trajectory point in the kd tree structure or meet the set similarity; for example, the position coordinates of trajectory point 1 in the trajectory to be searched are the same as the position coordinates of trajectory point I in the kd tree structure, or the horizontal coordinates are the same.

[0051] If the association constraint is a distance constraint, then a trajectory point associated with the kd-tree structure is found when the distance between the trajectory point in the searched trajectory and the trajectory point in the kd-tree structure is less than a set threshold. For example, the distance between trajectory point 1 in the searched trajectory and trajectory point 1 in the kd-tree structure is 0, close to 0, or less than 10 cm. The set threshold here is for illustration only and is not intended to be limiting.

[0052] If the associated constraint relationship is a scene constraint, then searching for a trajectory point associated with the kd tree structure constraint means that: the scene of the trajectory point in the trajectory to be searched is the same as that of the trajectory point in the kd tree structure or satisfies the set similarity; or, the scene features of the trajectory point in the trajectory to be searched are the same as those of the trajectory point in the kd tree structure or meet the set similarity. For example, the scene image of trajectory point 1 in the trajectory to be searched is the same as or similar to the scene image of trajectory point I in the kd tree structure. Or, the scene features extracted from the scene image of trajectory point 1 in the trajectory to be searched are the same as or similar to the scene features extracted from the scene image of trajectory point I in the kd tree structure. The threshold set here is only for illustration and is not intended to be limiting.

[0053] Step 108: Merge the forward search trajectory points and the backward search trajectory points to obtain the current constrained search results.

[0054] In the solution of the present application, the forward search trajectory points and the backward search trajectory points may be combined in the following manner to obtain the current constrained search results.

[0055] Method 1: Eliminate any trajectory point whose distance between the forward search trajectory point and the backward search trajectory point is less than the intensive search step size, and merge the remaining trajectory points to obtain the current constrained search result.

[0056] Method 2: For any trajectory point in the forward search trajectory point and the backward search trajectory point that is in a dense segment, determine whether the distance between the current trajectory point and the nearest trajectory point is greater than the dense search step size. If so, do not process it; otherwise, remove the trajectory point; for any trajectory point in the forward search trajectory point and the backward search trajectory point that is outside the dense segment, determine whether the distance between the current trajectory point and the nearest trajectory point is greater than the sparse search step size. If so, do not process it; otherwise, remove the trajectory point; merge the remaining trajectory points to obtain the current constrained search result.

[0057] Both Methods 1 and 2 can avoid overcrowding of the merged trajectory points. Method 1 is superior to Method 2. In Method 1, both trajectory points found within dense segments and those found outside dense segments can avoid the problem of too small intervals between trajectory points, which can lead to overcrowding and even increase the computational complexity of a particular segment. This effectively ensures a reasonable distribution of the searched trajectory points. In Method 2, the interval between trajectory points found within dense segments is no less than the dense search step size, and the interval between trajectory points found outside dense segments is no less than the sparse search step size. This prevents dense trajectory points within dense segments from being too dense, and sparse trajectory points outside dense segments from being too dense.

[0058] Reference Figure 2 , which is a flow chart of a constrained search for a trajectory C to be searched based on associated data ref provided by an embodiment of the present application.

[0059] Step 202: Input the trajectory C to be searched and the associated data ref.

[0060] Step 204: downsample the trajectory C to be searched, and store the associated data ref in the kd-tree.

[0061] Step 206: Determine the correlation function between the downsampled trajectory C to be searched and the correlation factor in the kd tree.

[0062] The correlation factor here can be understood as the correlation constraint relationship, and the correlation function can be a specific relationship type. For example, the correlation factor can be a distance relationship, and the correlation function can be a distance less than a set threshold.

[0063] Step 208: Based on the forward search, each trajectory point in the downsampled trajectory to be searched C is traversed with a large step size to perform a correlation factor search of the kd tree.

[0064] Step 210: Determine whether the correlation factor is found.

[0065] If yes, then execute step 212, otherwise, jump back to step 208. Meanwhile, step 210 has a branch, that is, when the track point of this search is the last track point, the search needs to be terminated regardless of whether the correlation factor is found.

[0066] Step 212: Using the current trajectory point found as the starting point of the dense segment, the search step size is switched to a small step size.

[0067] Step 214: Continue the subsequent traversal with a small step size to search the relevance factor of the kd tree.

[0068] Step 216: Determine whether the correlation factor is found and the number of trajectories in the dense segment does not reach the dense segment continuity threshold.

[0069] If yes, the searched trajectory point is recorded in the dense segment and the process jumps to step 214. Otherwise, the process jumps to step 208. Step 216 has a branch, that is, when the trajectory point searched this time is the last trajectory point, the forward search needs to be terminated regardless of whether the correlation factor is found and whether the number of trajectories in the dense segment reaches the dense segment continuity threshold.

[0070] Step 218: End the forward search and obtain the forward search trajectory point.

[0071] Step 220: Based on backward search, traverse each trajectory point in the downsampled trajectory to be searched C with a large step size to perform a correlation factor search of the kd tree.

[0072] Step 222: Determine whether the correlation factor is found.

[0073] If yes, then execute step 224, otherwise, jump back to step 220. Meanwhile, step 222 has a branch, that is, when the track point of this search is the last track point, the backward search needs to be ended regardless of whether the correlation factor is found.

[0074] Step 224: Use the current trajectory point found by the search as the starting point of the dense segment and switch the search step size to a small step size.

[0075] Step 226: Continue the subsequent traversal with a small step size to search the relevance factor of the kd tree.

[0076] Step 228: Determine whether the correlation factor is found and the number of trajectories in the dense segment does not reach the dense segment continuity threshold.

[0077] If yes, the searched trajectory point is recorded in the dense segment and the process jumps to step 226; otherwise, the process jumps to step 220. Step 228 has a branch, that is, when the trajectory point searched this time is the last trajectory point, the backward search needs to be terminated regardless of whether the correlation factor is found and the number of trajectories in the dense segment reaches the dense segment continuity threshold.

[0078] Step 230: End the current backward search and obtain the backward search trajectory point.

[0079] Step 232: Eliminate any trajectory points whose distance is less than the intensive search step, and merge the remaining trajectory points to obtain the current constrained search result.

[0080] Combine Figure 3a As shown, it is a schematic diagram of the result of medium step length search in the prior art. Figure 3b This is a schematic diagram of the results of the dynamic step forward search used in this application. Figure 3c This is a schematic diagram of the result of the dynamic step size backward search used in this application. Figure 3dThis is a schematic diagram of the result after the forward search trajectory point and the backward search trajectory point are merged in this application. Among them, the straight line is the trajectory C to be searched, the blank diamond is the trajectory point that has not been searched, the black diamond is the trajectory point that has been searched, and the circle area is the associated data. The trajectory to be searched and the associated data used are the same. By comparison, it can be seen that after Figure 3b and Figure 3c The forward and backward bidirectional collaborative dynamic step processing can obtain different search results. After that, the two search results are combined and processed to obtain Figure 3d The final search results shown, compared to Figure 3a For search results, there are at least the following performance advantages: - Reduce the total amount of invalid constraints: Through a bidirectional search method with long and short steps, a short step length is used to search in sensitive areas such as the edge of the overlap area, while a long step length is used to search in non-sensitive areas such as outside the overlap area. This effectively reduces the total amount of invalid constraints, thereby significantly reducing the amount of computation. - Adaptive step size adjustment: The search step size can be adaptively adjusted based on the characteristics of the current search area. In dense areas, a small step size is used to ensure sufficient constraints; in sparse areas, a large step size is switched to reduce unnecessary calculations. This adaptive adjustment mechanism makes the search process more efficient and avoids the limitations of fixed step size search; Improved data consistency and accuracy: Constraints are ensured along the edges of overlapping regions. These sensitive areas are crucial for data consistency and accuracy. Traditional methods, due to their fixed search steps, often fail to provide sufficient constraints in these areas, leading to data quality issues such as stratification and blurring. This invention uses a short search step to ensure sufficient constraints along these sensitive areas, significantly improving data consistency and accuracy.

[0081] Therefore, this application uses an innovative forward and backward bidirectional density adaptive step-size search method to significantly reduce the total number of constraints while ensuring sufficient constraints in sensitive areas such as the edges of overlapping regions, thereby improving computational efficiency and ensuring data consistency and accuracy. This method is particularly suitable for large-scale scene reconstruction in fields such as autonomous driving, mobile robotics, and surveying and mapping, and can significantly improve performance and application effectiveness in these fields.

[0082] It should be noted that for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that this application is not limited by the order of the actions described, because according to this application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by this application.

[0083] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0084] Figure 4 FIG. 1 shows a structural block diagram of a device for performing constrained search based on data association provided by an embodiment of the present application. Figure 4 As shown. The device 400 for constrained search based on data association in this embodiment may include a determination module 401, an initialization module 402, a search module 403 and a merging module 404. The determination module 401 is used to determine the trajectory to be searched and the associated data that has an associated constraint relationship with the trajectory to be searched; wherein the associated constraint relationship includes at least one or more of: position constraint, distance constraint and scene constraint. The initialization module 402 is used to initialize the search parameters required for this search based on the trajectory length of the trajectory to be searched, wherein the search parameters include: dense search step size and sparse search step size. The search module 403 is used to search for forward search trajectory points and backward search trajectory points that are associated with the associated data in the trajectory to be searched based on the initialized dense search step size and sparse search step size, adopting a sparse and dynamic adjustment of the search step size and a forward and backward bidirectional collaborative search method. The merging module 404 is used to merge the forward search trajectory points and the backward search trajectory points to obtain the current constrained search result.

[0085] It should be noted that part or all of the device for performing constraint search based on data association in this embodiment can be an application located in the local terminal, or it can also be a functional unit such as a plug-in or software development kit (SDK) set in the application located in the local terminal, or it can also be a processing engine located in the network side server, or it can also be a distributed system located on the network side. This embodiment does not specifically limit this.

[0086] It is understandable that the application may be a native program (nativeApp) installed on the local terminal, or may be a webpage program (webApp) of a browser on the local terminal, which is not limited in this embodiment.

[0087] Optionally, in a possible implementation of this embodiment, when the initialization module 402 initializes the search parameters required for this search based on the trajectory length of the trajectory to be searched, it is specifically used to initialize the dense search step length to a first proportional range of the trajectory length of the trajectory to be searched, and the first proportional range is [1 / 100, 1 / 200]; and initialize the sparse search step length to a second proportional range of the trajectory length of the trajectory to be searched, and the second proportional range is [1 / 20, 1 / 50].

[0088] Optionally, in a possible implementation of this embodiment, the search module 403 is specifically used to downsample the trajectory to be searched and store the associated data as a kd tree structure when searching for and locating forward search trajectory points and backward search trajectory points associated with the associated data from the trajectory to be searched based on the initialized dense search step size and sparse search step size, using a sparse and sparse search step size dynamic adjustment of the search step size and a forward and backward bidirectional collaborative search method; from the head end to the tail end of the trajectory to be searched after downsampling: based on the initialized dense search step size and sparse search step size, dynamically adjust the step size in the search process to search and locate the forward search trajectory points associated with the kd tree structure; from the tail end to the head end of the trajectory to be searched after downsampling: based on the initialized dense search step size and sparse search step size, dynamically adjust the step size in the search process to search and locate the backward search trajectory points associated with the kd tree structure.

[0089] Optionally, in a possible implementation of this embodiment, the search parameters further include: a dense segment continuity threshold, the dense segment continuity threshold is positively correlated with the degree of constraint requirement this time; the search module 403 dynamically adjusts the step size in the search process based on the initialized dense search step size and the sparse search step size to search and locate the forward search trajectory point with the constraint associated with the kd tree structure, specifically for traversing each trajectory point in the downsampled trajectory to be searched with the sparse search step size; judging whether the trajectory point with the constraint associated with the kd tree structure is searched during the sparse traversal process; if so, the trajectory point searched this time is recorded as the starting point of the dense segment, and the search step size is increased from sparse to The sparse search step size is adjusted to the dense search step size, and the subsequent unsearched trajectory points are traversed; otherwise, the operation of judging whether the trajectory points associated with the kd tree structure are searched during the sparse traversal is returned; judging whether the trajectory points associated with the kd tree structure are searched during the dense traversal, and the number of trajectory points recorded in the dense segment does not reach the dense segment continuity threshold; if so, the trajectory points searched this time are recorded in the dense segment; otherwise, the search step size is adjusted from the dense search step size to the sparse search step size, and the subsequent unsearched trajectory points are continued to be traversed; the above operation is repeated until every trajectory point in the trajectory to be searched is traversed, and the trajectory points recorded in all dense segments are counted as the forward search trajectory points.

[0090] Optionally, in a possible implementation of this embodiment, when the search module 403 fails to search for a trajectory point associated with the kd tree structure during dense traversal, and the number of trajectory points recorded in the dense segment does not reach the dense segment continuity threshold, it is also used to start from the trajectory point corresponding to the starting point of this dense segment, adjust the search step from the dense search step to the temporary search step, and continue to traverse subsequent trajectory points that have not been searched; wherein, the temporary search step is smaller than the dense search step; determine whether a trajectory point associated with the kd tree structure is searched during this traversal, and the number of trajectory points recorded in the dense segment does not reach the dense segment continuity threshold; if so, record the trajectory point searched this time to the dense segment; otherwise, adjust the search step from the temporary search step to the sparse search step, and continue to traverse subsequent trajectory points that have not been searched.

[0091] Optionally, in a possible implementation of this embodiment, the associated constraint relationship is a position constraint, then searching for a trajectory point associated with the kd tree structure means: the position coordinates of the trajectory point in the trajectory to be searched are the same as those of the trajectory point in the kd tree structure or meet the set similarity; the associated constraint relationship is a distance constraint, then searching for a trajectory point associated with the kd tree structure means: the distance between the trajectory point in the trajectory to be searched and the trajectory point in the kd tree structure is less than a set threshold; the associated constraint relationship is a scene constraint, then searching for a trajectory point associated with the kd tree structure means: the scene of the trajectory point in the trajectory to be searched is the same as that of the trajectory point in the kd tree structure or meets the set similarity; or, the scene features of the trajectory point in the trajectory to be searched and the trajectory point in the kd tree structure are the same as or meet the set similarity.

[0092] Optionally, in a possible implementation of this embodiment, when merging the forward search trajectory point and the backward search trajectory point to obtain the current constrained search result, the merging module 404 is specifically used to eliminate any trajectory point in the forward search trajectory point and the backward search trajectory point whose distance is less than the dense search step, and merge the remaining trajectory points to obtain the current constrained search result; or, for any trajectory point in the forward search trajectory point and the backward search trajectory point that is in a dense segment, determine whether the distance between the current trajectory point and the nearest trajectory point is greater than the dense search step, if so, do not process it, otherwise, eliminate the trajectory point; for any trajectory point in the forward search trajectory point and the backward search trajectory point that is outside the dense segment, determine whether the distance between the current trajectory point and the nearest trajectory point is greater than the sparse search step, if so, do not process it, otherwise, eliminate the trajectory point; and merge the remaining trajectory points to obtain the current constrained search result.

[0093] In this embodiment, after determining the trajectory to be searched and the associated data, the search parameters required for this search can be initialized based on the trajectory length of the trajectory to be searched. According to the initialized dense search step size and sparse search step size, the forward search trajectory point and the backward search trajectory point that are associated with the associated data are searched and located from the trajectory to be searched by dynamically adjusting the search step size and the forward and backward two-way collaborative search method; the forward search trajectory point and the backward search trajectory point are merged to obtain the current constrained search result. This application can ensure that there are sufficient constraints in sensitive areas such as the edges of overlapping areas by combining forward and backward two-way collaborative search with dynamic step size adjustment, while avoiding the exponential increase in the number of constraints due to an excessively small step size, thereby effectively controlling the amount of calculation while taking into account reasonable constraints and ensuring computational efficiency.

[0094] One embodiment of the present application provides a computer-readable storage medium, wherein the storage medium stores at least one instruction, and the at least one instruction is loaded and executed by a processor to implement the method for performing constraint search based on data association as described above.

[0095] An embodiment of the present application provides an electronic device, which includes a processor and a memory, wherein the memory stores at least one instruction, and the instruction is loaded and executed by the processor to implement the method for constrained search based on data association as described above.

[0096] In the technical solution of this application, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved comply with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0097] Figure 5 A schematic block diagram of an example electronic device 500 that can be used to implement embodiments of the present application 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 can also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present application described and / or claimed herein.

[0098] like Figure 5As shown, electronic device 500 includes a computing unit 501, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 502 or a computer program loaded from a storage unit 508 into a random access memory (RAM) 503. RAM 503 may also store various programs and data required for the operation of electronic device 500. Computing unit 501, ROM 502, and RAM 503 are interconnected via a bus 504. An input / output (I / O) interface 505 is also connected to bus 504.

[0099] Multiple components in the electronic device 500 are connected to the I / O interface 505, including: an input unit 506, such as a keyboard, a mouse, etc.; an output unit 507, such as various types of displays, speakers, etc.; a storage unit 508, such as a magnetic disk, an optical disk, etc.; and a communication unit 509, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 509 allows the electronic device 500 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0100] The computing unit 501 can be any general-purpose and / or specialized processing component with processing and computing capabilities. Some examples of the computing unit 501 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various specialized 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 501 performs the various methods and processes described above, such as the method for performing a constrained search based on data association. For example, in some embodiments, the method for performing a constrained search based on data association can be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 508. In some embodiments, part or all of the computer program can be loaded and / or installed on the electronic device 500 via the ROM 502 and / or the communication unit 509. When the computer program is loaded into the RAM 503 and executed by the computing unit 501, one or more steps of the method for performing a constrained search based on data association described above can be performed. Alternatively, in other embodiments, the computing unit 501 may be configured in any other appropriate manner (eg, by means of firmware) to execute the method for performing constrained search based on data association.

[0101] Various embodiments of the systems and techniques described above 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), system-on-a-chip systems (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, at least one input device, and at least one output device.

[0102] The program code for implementing the methods of the present application can be written in any combination of one or more programming languages. Such program code can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the program code is executed by the processor or controller, the functions / operations specified in the flow charts and / or block diagrams are implemented. The program code can be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

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

[0104] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the 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 acoustic input, voice input, or tactile input).

[0105] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), and the Internet.

[0106] A computer system may include a client and a server. The client and server are generally remote from each other and typically interact through a communication network. The client-server relationship arises through computer programs running on the respective computers and having a client-server relationship with each other. The server may be a cloud server, a server in a distributed system, or a server integrated with a blockchain.

[0107] It should be understood that the various forms of the processes shown above can be used to reorder, add, or delete steps. For example, the steps described in this application can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solutions disclosed in this application can be achieved. This is not a limitation herein.

[0108] The above specific embodiments do not constitute a limitation on the scope of protection of this application. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this application shall be included within the scope of protection of this application.

Claims

1. A method for constrained search based on data association, characterized in that: include: Determine a trajectory to be searched and associated data having an associated constraint relationship with the trajectory to be searched; wherein the associated constraint relationship includes at least one or more of: a position constraint, a distance constraint, and a scene constraint; Initializing search parameters required for this search based on the trajectory length of the trajectory to be searched, wherein the search parameters include: a dense search step length and a sparse search step length; According to the initialized dense search step size and sparse search step size, the forward search trajectory point and the backward search trajectory point that are associated with the associated data are searched and located from the to-be-searched trajectory by adopting a sparse-to-dense dynamic adjustment of the search step size and a forward-to-backward bidirectional collaborative search method; The forward search trajectory points and the backward search trajectory points are combined to obtain the current constrained search result.

2. The method according to claim 1, wherein Based on the length of the trajectory to be searched, the search parameters required for this search are initialized, specifically including: The intensive search step is initialized to a first proportional range of the trajectory length of the trajectory to be searched, and the first proportional range is [1 / 100, 1 / 200]; The sparse search step size is initialized to a second proportional range of the trajectory length of the trajectory to be searched, and the second proportional range is [1 / 20, 1 / 50].

3. The method according to claim 1, wherein According to the initialized dense search step size and sparse search step size, the forward search trajectory point and the backward search trajectory point that are associated with the associated data constraint are searched and located from the to-be-searched trajectory by adopting a sparse-to-dense dynamic adjustment of the search step size and a forward-to-backward bidirectional collaborative search method, specifically including: Performing downsampling processing on the trajectory to be searched, and storing the associated data as a kd tree structure; From the head end to the tail end of the downsampled trajectory to be searched: based on the initialized dense search step size and sparse search step size, dynamically adjust the step size during the search process to search and locate the forward search trajectory point associated with the kd tree structure constraint; From the tail end to the head end of the downsampled trajectory to be searched: based on the initialized dense search step size and sparse search step size, the step size in the search process is dynamically adjusted to search and locate the backward search trajectory point associated with the constraints of the kd tree structure.

4. The method according to claim 3, wherein The search parameters also include: a dense segment continuity threshold, the dense segment continuity threshold is positively correlated with the degree of the current constraint requirement; Based on the initialized dense search step size and sparse search step size, dynamically adjust the step size during the search process to search and locate the forward search trajectory point associated with the constraints of the kd tree structure, specifically including: Traversing each trajectory point in the downsampled trajectory to be searched with the sparse search step size; Determine whether a trajectory point associated with the kd tree structure constraint is found during the sparse traversal process; If yes, the trajectory point found this time is recorded as the starting point of the dense segment, and the search step size is adjusted from the sparse search step size to the dense search step size, and the subsequent unsearched trajectory points are traversed; otherwise, the operation of determining whether the trajectory point associated with the kd tree structure is found during the sparse traversal process; Determine whether a trajectory point constrained by the kd-tree structure is found during the dense traversal process, and the number of trajectory points recorded in the dense segment does not reach a dense segment continuity threshold; If yes, the track points found this time are recorded in the dense segment; otherwise, the search step size is adjusted from the dense search step size to the sparse search step size, and the subsequent unsearched track points are continued to be traversed; Repeat the above operation until every track point in the track to be searched is traversed, and the track points recorded in all dense segments are counted as forward search track points.

5. The method according to claim 4, wherein When no trajectory point associated with the kd-tree structure constraint is found during the dense traversal process, and the number of trajectory points recorded in the dense segment does not reach a dense segment continuity threshold, the method further includes: Starting from the trajectory point corresponding to the starting point of this dense segment, the search step size is adjusted from the dense search step size to the temporary search step size, and the subsequent unsearched trajectory points are continued to be traversed; wherein the temporary search step size is smaller than the dense search step size; Determine whether a trajectory point associated with the kd-tree structure is found during this traversal, and whether the number of trajectory points recorded in the dense segment does not reach a dense segment continuity threshold; If yes, the track points found in this search are recorded in the dense segment; otherwise, the search step size is adjusted from the temporary search step size to the sparse search step size, and the subsequent unsearched track points are continued to be traversed.

6. The method according to claim 4, wherein The associated constraint relationship is a position constraint, and the trajectory point associated with the kd tree structure is searched for when: the position coordinates of the trajectory point in the searched trajectory and the trajectory point in the kd tree structure are the same or meet the set similarity; The association constraint relationship is a distance constraint, and the search for a trajectory point associated with the kd tree structure constraint means that the distance between the trajectory point in the searched trajectory and the trajectory point in the kd tree structure is less than a set threshold; The associated constraint relationship is a scene constraint, and searching for a trajectory point associated with the kd tree structure means that: the scene of the trajectory point in the to-be-searched trajectory is the same as that of the trajectory point in the kd tree structure or satisfies the set similarity; or, the scene feature of the trajectory point in the to-be-searched trajectory is the same as that of the trajectory point in the kd tree structure or satisfies the set similarity.

7. The method according to any one of claims 1 to 4 and 6, characterized in that: The forward search trajectory points and the backward search trajectory points are combined to obtain the current constrained search result, specifically including: Eliminate any trajectory point whose distance between the forward search trajectory point and the backward search trajectory point is less than the intensive search step length, and merge the remaining trajectory points to obtain the current constrained search result; or For any trajectory point in the forward search trajectory point and the backward search trajectory point that is in a dense segment, determine whether the distance between the current trajectory point and the nearest trajectory point is greater than the dense search step size. If so, no processing is performed; otherwise, the trajectory point is eliminated. For any trajectory point in the forward search trajectory point and the backward search trajectory point that is not in a dense segment, determine whether the distance between the current trajectory point and the nearest trajectory point is greater than the sparse search step size. If so, no processing is performed; otherwise, the trajectory point is eliminated. The remaining trajectory points are merged to obtain the current constrained search result.

8. A device for constrained search based on data association, characterized in that: include: A determination module, configured to determine a trajectory to be searched and associated data having an associated constraint relationship with the trajectory to be searched; wherein the associated constraint relationship includes at least one or more of a position constraint, a distance constraint, and a scene constraint; An initialization module, configured to initialize search parameters required for this search based on the trajectory length of the trajectory to be searched, wherein the search parameters include: a dense search step length and a sparse search step length; A search module is configured to search for and locate forward search trajectory points and backward search trajectory points associated with the associated data in the trajectory to be searched, using a method of dynamically adjusting the search step size and performing a forward and backward bidirectional collaborative search based on an initialized dense search step size and a sparse search step size; The merging module is used to merge the forward search trajectory points and the backward search trajectory points to obtain the current constrained search result.

9. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to cause the computer to execute the method according to any one of claims 1 to 7.

10. A computer program product comprising a computer program, which, when executed by a processor, implements the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Cell searching method and device

    CN104052523A

  • Ground multi-target-point imaging rapid judgment and task parameter calculation method

    CN113093246A

  • Agile remote sensing satellite task solution space searching method based on step length self-adaption

    CN115186178A

  • Track association method and device, electronic equipment and machine readable storage medium

    CN115422479A

  • Track matching degree verification method and device, computer equipment and storage medium

    CN116701492A