Vehicle navigation method, device, equipment, storage medium and program product
By preparing navigation module resources in advance and ensuring they are ready when the vehicle enters a high-precision map area, the problems of lane-level navigation delay and failure are solved, achieving fast and stable navigation startup and improved user experience.
Patent Information
- Application Number
- CN202610148453.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-02-02
- Publication Date
- 2026-04-10
AI Technical Summary
The existing lane-level navigation method has problems with delay and failure to start up. This is mainly due to the decoupling of the control logic between the external system and the internal system, which causes the navigation-related module resource data to be loaded before entering the lane-level navigation mode.
By obtaining vehicle location information, it determines whether to enter a high-precision map area, generates module preparation information to control navigation-related modules to perform preparation work, and ensures that lane-level navigation is started only after the module is ready, including preloading resource data to improve preparation efficiency.
It improves the startup efficiency and stability of lane-level navigation, reduces latency, enhances user experience and navigation success rate, and achieves loose coupling and reliability of the navigation system.
Smart Images

Figure CN121829577A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of vehicle technology, and in particular to a vehicle navigation method, device, equipment, storage medium, and program product. Background Technology
[0002] In intelligent driving assistance systems, lane-level navigation is the core function for achieving high-precision path planning and lane keeping.
[0003] The existing method of launching lane-level navigation mainly involves launching lane-level navigation directly after the external system triggers it. At this time, the internal system starts to control the various navigation-related modules that support lane-level navigation to start loading resource data and enter lane-level navigation mode.
[0004] This implementation method has two problems. First, after lane-level navigation is initiated, each navigation-related module begins loading the required resource data, resulting in a significant delay in the initiation of lane-level navigation, which in turn affects the user's navigation experience. Second, because the control logic of the external system driver and the internal system management is decoupled during the initiation of lane-level navigation, it is easy for the resource data of each navigation-related module to be entered into lane-level navigation mode before it is fully loaded, which in turn leads to the failure of lane-level navigation to be initiated. Summary of the Invention
[0005] This application provides vehicle navigation methods, devices, equipment, storage media, and program products, which can reduce the delay of lane-level navigation activation and improve the stability and reliability of lane-level navigation activation.
[0006] In a first aspect, embodiments of this application provide a vehicle navigation method, including:
[0007] Obtain vehicle location information and determine whether the vehicle has entered the high-precision map area based on the vehicle location information;
[0008] If it is determined that the area has entered the high-precision map area, module preparation information is generated, and navigation-related modules are controlled to perform module preparation work based on the module preparation information.
[0009] Obtain the module readiness status of the navigation-related modules, and determine whether the module preparation work of the navigation-related modules has been completed based on the module readiness status;
[0010] If the execution is confirmed to be complete, navigation preparation information is generated, and it is determined whether the vehicle meets the lane-level navigation requirements based on the navigation preparation information.
[0011] If the lane-level navigation requirements are met, then lane-level navigation is activated.
[0012] In one possible implementation, the module readiness state is the module preparation progress; the number of navigation-related modules is multiple; determining whether the module preparation work of the navigation-related modules has been completed based on the module readiness state includes:
[0013] If the module preparation progress of each navigation-related module is determined to be a target value, then the module preparation work of the navigation-related module is determined to be completed.
[0014] If the module preparation progress of any of the navigation-related modules is determined to be different from the target value, then within a preset waiting time, a new module preparation progress is obtained at a preset time interval. If the new module preparation progress is determined to be the target value, then the module preparation work of the navigation-related module is determined to be completed.
[0015] In one possible implementation, the method further includes:
[0016] If the module preparation progress of any of the navigation-related modules is determined to be different from the target value, then the module weight of each of the navigation-related modules is determined.
[0017] The module progress score is determined based on the module weight and the module preparation progress.
[0018] If the module progress score is greater than the preset score threshold, then wait for the navigation-related modules to perform module preparation work until the module preparation progress reaches the target value.
[0019] In one possible implementation, after obtaining the vehicle location information, the method further includes:
[0020] Based on the vehicle location information, determine the distance information between the vehicle and the boundary of the high-precision area;
[0021] Based on the distance information and the preset distance threshold, determine whether the vehicle meets the preloading conditions;
[0022] If the vehicle is determined to meet the preloading conditions, preloading information is generated, and the navigation-related modules are controlled to pre-download resource data based on the preloading information.
[0023] In one possible implementation, the preloading information includes loading time; the number of navigation-related modules is multiple; the method further includes:
[0024] Obtain the first driving state of the vehicle;
[0025] The total resource loading time is determined based on the first driving state and the preset distance threshold.
[0026] The resource loading time for each navigation-related module is determined based on the amount of data required for each navigation-related module and the total resource loading time.
[0027] According to the control, the navigation-related modules pre-download resource data.
[0028] In one possible implementation, the method further includes:
[0029] Obtain the second driving state and vehicle loading state of the vehicle;
[0030] The preset distance threshold is determined based on the second driving state and the vehicle loading state.
[0031] In one possible implementation, the method further includes:
[0032] If it is determined that the high-precision map area has not been entered, then continue with the standard navigation mode; or,
[0033] If it is determined that the process has not been completed, then continue with the standard navigation mode; or,
[0034] If it is determined that the lane-level navigation requirements are not met, the standard navigation mode will continue to be executed.
[0035] Secondly, embodiments of this application provide a vehicle navigation device, comprising:
[0036] The acquisition unit is used to acquire vehicle location information and determine whether the vehicle has entered the high-precision map area based on the vehicle location information.
[0037] The preparation unit is used to generate module preparation information if it is determined that the area to be entered is the high-precision map area, and to control the navigation-related modules to perform module preparation work according to the module preparation information.
[0038] The first determining unit is used to obtain the module readiness status of the navigation-related module and determine whether the module preparation work of the navigation-related module has been completed based on the module readiness status.
[0039] The second determining unit is used to generate navigation preparation information if it is determined that the execution is completed, and to determine whether the vehicle meets the lane-level navigation requirements based on the navigation preparation information.
[0040] The navigation unit is used to activate lane-level navigation if it is determined that the lane-level navigation requirements are met.
[0041] In one possible implementation, the module readiness state is the module preparation progress; the number of navigation-related modules is multiple; at this time, the first determining unit is used to:
[0042] If the module preparation progress of each navigation-related module is determined to be a target value, then the module preparation work of the navigation-related module is determined to be completed.
[0043] If the module preparation progress of any of the navigation-related modules is determined to be different from the target value, then within a preset waiting time, a new module preparation progress is obtained at a preset time interval. If the new module preparation progress is determined to be the target value, then the module preparation work of the navigation-related module is determined to be completed.
[0044] In one possible implementation, the device is also used for:
[0045] If the module preparation progress of any of the navigation-related modules is determined to be different from the target value, then the module weight of each of the navigation-related modules is determined.
[0046] The module progress score is determined based on the module weight and the module preparation progress.
[0047] If the module progress score is greater than the preset score threshold, then wait for the navigation-related modules to perform module preparation work until the module preparation progress reaches the target value.
[0048] In one possible implementation, after acquiring the vehicle location information, the device is further used to:
[0049] Based on the vehicle location information, determine the distance information between the vehicle and the boundary of the high-precision area;
[0050] Based on the distance information and the preset distance threshold, determine whether the vehicle meets the preloading conditions;
[0051] If the vehicle is determined to meet the preloading conditions, preloading information is generated, and the navigation-related modules are controlled to pre-download resource data based on the preloading information.
[0052] In one possible implementation, the preloading information includes a loading time; the number of navigation-related modules is multiple; in this case, the device is also used for:
[0053] Obtain the first driving state of the vehicle;
[0054] The total resource loading time is determined based on the first driving state and the preset distance threshold.
[0055] The resource loading time for each navigation-related module is determined based on the amount of data required for each navigation-related module and the total resource loading time.
[0056] According to the control, the navigation-related modules pre-download resource data.
[0057] In one possible implementation, the device is also used for:
[0058] Obtain the second driving state and vehicle loading state of the vehicle;
[0059] The preset distance threshold is determined based on the second driving state and the vehicle loading state.
[0060] In one possible implementation, the device is also used for:
[0061] If it is determined that the high-precision map area has not been entered, then continue with the standard navigation mode; or,
[0062] If it is determined that the process has not been completed, then continue with the standard navigation mode; or,
[0063] If it is determined that the lane-level navigation requirements are not met, the standard navigation mode will continue to be executed.
[0064] Thirdly, embodiments of this application provide a computer device, including: a memory and a processor;
[0065] The memory stores computer-executed instructions;
[0066] The processor executes computer execution instructions stored in the memory, causing the processor to perform the first aspect and / or various possible implementations of the first aspect as described above.
[0067] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the first aspect and / or various possible implementations of the first aspect.
[0068] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the first aspect and / or various possible implementations of the first aspect.
[0069] The vehicle navigation method, apparatus, device, storage medium, and program product provided in this application embodiment can first obtain vehicle location information and determine whether the vehicle has entered a high-precision map area based on the vehicle location information. If it is determined that the vehicle has entered a high-precision map area, module preparation information is generated, and navigation-related modules are controlled to perform module preparation work based on this information. This implementation allows module preparation work to begin immediately after the vehicle enters the high-precision map area without external system triggering, thereby improving the efficiency of lane-level navigation startup, reducing latency, and improving the smoothness of lane-level navigation startup, ultimately enhancing the user's navigation experience. Subsequently, the module readiness status of navigation-related modules can be obtained, and the completion of module preparation work can be determined based on this status. By obtaining the module readiness status, it can be ensured that module preparation work is completed, allowing lane-level navigation to be started only after module preparation work is complete. This avoids lane-level navigation startup anomalies caused by navigation-related modules not being ready, thereby improving the success rate of lane-level navigation startup. Specifically, if execution is confirmed to be complete, navigation preparation information is generated, and based on this information, it is determined whether the vehicle meets the lane-level navigation requirements. If the requirements are met, lane-level navigation is initiated. This implementation method, on the one hand, enables rapid and stable initiation of lane-level navigation through the module preparation phase and the navigation decision phase; on the other hand, it achieves loose coupling between the internal preparation system and the external decision-making system of lane-level navigation through the module ready state, further improving the stability and reliability of lane-level navigation initiation. Attached Figure Description
[0070] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0071] Figure 1 A schematic flowchart illustrating a vehicle navigation method provided in an embodiment of this application;
[0072] Figure 2 A flowchart illustrating another vehicle navigation method provided in an embodiment of this application;
[0073] Figure 3 A schematic diagram of a preloading process provided for an embodiment of this application;
[0074] Figure 4 A schematic diagram illustrating the implementation process of a vehicle navigation method provided in this application embodiment;
[0075] Figure 5 This is a schematic diagram of the structure of a vehicle navigation device provided in an embodiment of this application;
[0076] Figure 6 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application.
[0077] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0078] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0079] The term "and / or" in this article merely describes a relationship, indicating that three relationships can exist. For example, A and / or B can represent three cases: A exists alone, A and B exist simultaneously, and B exists alone.
[0080] In addition, the term "at least one" in this document means any combination of at least two of any one or more of a plurality of elements, such as including at least one of A, B, and C, and may mean including any one or more elements selected from the set consisting of A, B, and C.
[0081] First, the terms used in the embodiments of this application will be explained.
[0082] HD: High Definition, high precision.
[0083] SD: Standard Definition.
[0084] GPU: Graphics Processing Unit.
[0085] In intelligent driving assistance systems, lane-level navigation is a core function for achieving high-precision path planning and lane keeping. Its core application scenarios include, but are not limited to: high-precision map lane-level navigation systems, multi-module (i.e., navigation-related modules) collaborative navigation systems, and autonomous driving and driver assistance systems. Here, these systems are collectively referred to as vehicle navigation systems.
[0086] For example, when a vehicle is driving on a highway, it needs to navigate accurately based on lane-level information (such as lane boundaries, lane topology, road signs, etc.) provided by a high-definition map (HD Map); in complex intersections or toll station scenarios, autonomous driving systems need to rely on lane-level navigation to perform operations such as lane selection and lane change decisions; and in scenarios such as lane centering or automatic lane changing, driver assistance systems need to rely on lane-level navigation to provide decision-making basis.
[0087] The existing method of launching lane-level navigation mainly involves launching lane-level navigation directly after the external system triggers it. At this time, the internal system starts to control the various navigation-related modules that support lane-level navigation to start loading resource data and enter lane-level navigation mode.
[0088] This implementation method has two problems. First, after lane-level navigation is initiated, each navigation-related module begins loading the required resource data, resulting in a significant delay in the initiation of lane-level navigation, which in turn affects the user's navigation experience. Second, because the control logic of the external system driver and the internal system management is decoupled during the initiation of lane-level navigation, it is easy for the resource data of each navigation-related module to be entered into lane-level navigation mode before it is fully loaded, which in turn leads to the failure of lane-level navigation to be initiated.
[0089] Furthermore, in the case of decoupling between the internal and external systems, the loading and releasing of resources in the lane-level navigation module within the internal system operates independently without linkage with the external system. Therefore, if the external system triggers lane-level navigation but requires a delay in its activation, the vehicle navigation mode may not be entered until the resource data loaded by the internal system controlling the various navigation-related modules has been released. This could lead to a failure to enter the vehicle navigation mode, which in turn could cause the lane-level navigation to fail to activate.
[0090] The vehicle navigation method provided in this application, based on the acquired vehicle location information and upon determining that the vehicle has entered a high-precision map area, first performs resource loading work for navigation-related modules (i.e., module preparation work), and uses a module readiness status to ensure that the navigation-related modules are ready. Once the navigation-related modules are ready, a callback mechanism delegates the decision-making power for initiating lane-level navigation to an external system. At this point, the navigation-related modules can perform their preparation work in advance, thereby improving the efficiency and reliability of lane-level navigation initiation after the initiation decision is triggered by the external system, and also enhancing the user's navigation experience.
[0091] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.
[0092] Figure 1 This is a flowchart illustrating a vehicle navigation method provided in an embodiment of this application, as shown below. Figure 1 As shown, the method includes:
[0093] S101. Obtain vehicle location information and determine whether the vehicle has entered the high-precision map area based on the vehicle location information.
[0094] In one example, vehicle location information can be understood as vehicle positioning information. For example, vehicle location information can be the positioning pulse signal generated by the CCP (Capture / Compare / PWM) module, that is, the CCP positioning pulse signal; or, for another example, vehicle location information can also be high-precision positioning fusion data, etc. Here, the data type corresponding to vehicle location information is not limited, as long as it can be implemented.
[0095] In one example, a high-precision map area can be understood as an area based on a predefined vehicle-mounted high-precision map (HD Map) that has complete lane-level spatial topology and semantic attribute data and meets the requirements for high-precision positioning accuracy.
[0096] Based on this, after obtaining vehicle location information, the vehicle navigation system can, on the one hand, determine whether the vehicle's location belongs to a high-precision map area (e.g., determine whether the CCP positioning pulse signal has been successfully mapped to HD Link); on the other hand, it can determine whether lane-level navigation is supported (e.g., determine whether lane-level feature information is included, where lane-level feature information may include, but is not limited to, branch point data, waypoint data, and toll station scene data).
[0097] Furthermore, in this embodiment, the vehicle navigation system can also add other high-precision map area judgment conditions to improve the accuracy and effectiveness of the determined high-precision map areas. For example, it can also perform road break detection on high-precision roads to avoid situations where the vehicle is not in the high-precision map area due to road interruptions.
[0098] S102. If it is determined that the area to be entered is a high-precision map area, module preparation information is generated, and navigation-related modules are controlled to perform module preparation work based on the module preparation information.
[0099] In one example, module preparation information can be understood as module preparation events.
[0100] In one example, after generating a module readiness event, the module readiness event can be broadcast to all registered listeners, thereby enabling navigation-related modules to perform module readiness work.
[0101] In one example, the number of navigation-related modules can be at least one. For example, navigation-related modules may include, but are not limited to, a positioning module, a rendering module, and a routing module.
[0102] Optionally, the module preparation work of the positioning module may include, but is not limited to: initializing the HD positioning algorithm, loading positioning configuration parameters, warming up the positioning engine, and initializing the Kalman filter.
[0103] Optionally, the module preparation work of the rendering module may include, but is not limited to: loading HD map tile data, initializing the 3D rendering engine, preparing GPU resources, and loading lane geometry models and texture resources.
[0104] Optionally, the preparation work for the route calculation module may include, but is not limited to: loading HD route data (including path geometry information), constructing lane-level path structure and topology, and predicting decision information for divergence points.
[0105] In one example, after the preparation work of the navigation-related modules is completed, the module readiness status of the navigation-related modules can be updated. For example, the module readiness status can be updated to true, indicating that the module preparation work has been completed.
[0106] S103. Obtain the module readiness status of navigation-related modules, and determine whether the module preparation work of navigation-related modules has been completed based on the module readiness status.
[0107] In one example, the module readiness status can be used to indicate the execution status of the module preparation work of navigation-related modules, thereby enabling the determination of whether the module preparation work of navigation-related modules has been completed based on the module readiness status.
[0108] Optionally, when obtaining the module readiness status of navigation-related modules, it can be obtained in at least one of the following ways.
[0109] Method 1: Monitor the module readiness status of each navigation-related module based on the module state machine.
[0110] Method 2: Obtain the module readiness status of each navigation-related module through a callback function.
[0111] Method 3: Obtain the module readiness status of each navigation-related module based on the preset notification module. For example, the observer pattern or publish-subscribe pattern can be used to obtain the module readiness status of each navigation-related module.
[0112] S104. If the execution is confirmed to be complete, navigation preparation information is generated, and the vehicle is determined to meet the lane-level navigation requirements based on the navigation preparation information.
[0113] In one example, navigation readiness information can be understood as the execution results of the module readiness work of navigation-related modules, based on the callback function and the module readiness status feedback.
[0114] In one example, lane-level navigation requirements can be understood as the decision logic executed by the vehicle navigation system. For example, lane-level navigation requirements may include, but are not limited to: user interaction judgment logic (e.g., confirming whether user confirmation is required to activate lane-level navigation), business condition check logic (e.g., checking whether road type and time constraints meet lane-level navigation requirements, or whether they conform to user behavior habits), and final decision logic (if both the judgment logic and the check logic meet lane-level navigation requirements, then confirm the activation of lane-level navigation).
[0115] At this point, after the preparation work of navigation-related modules is completed, user interaction judgment logic can be used to improve the flexibility of lane-level navigation launch. For example, it can be launched immediately or with a delay, without being limited by the execution time of module preparation work. This avoids launching lane-level navigation before module preparation work is completed, and avoids the problem of resource data loaded by navigation-related modules being released in scenarios requiring delayed launch, thus improving the reliability and stability of lane-level navigation launch. Furthermore, business condition checking logic can be used to customize the conditions for lane-level navigation launch based on actual scenario requirements, offering strong extensibility and further enhancing the flexibility and versatility of lane-level navigation launch.
[0116] S105. If it is determined that the lane-level navigation requirements are met, then activate the lane-level navigation.
[0117] As described above, in this embodiment, vehicle location information can be obtained first, and it can be determined whether the vehicle has entered a high-precision map area based on the vehicle location information. If it is determined that the vehicle has entered a high-precision map area, module preparation information is generated, and navigation-related modules are controlled to perform module preparation work based on this information. This implementation allows module preparation work to begin immediately after the vehicle enters the high-precision map area without external system triggering, thereby improving the efficiency of lane-level navigation startup, reducing latency, and improving the smoothness of lane-level navigation startup, ultimately enhancing the user's navigation experience. Subsequently, the module readiness status of navigation-related modules can be obtained, and it can be determined whether the module preparation work of navigation-related modules has been completed based on the module readiness status. At this point, by obtaining the module readiness status, it can be ensured that the module preparation work has been completed, allowing lane-level navigation to be started only after the module preparation work is completed. This avoids lane-level navigation startup anomalies caused by navigation-related modules not being ready, thereby improving the success rate of lane-level navigation startup. Specifically, if execution is confirmed to be complete, navigation preparation information is generated, and based on this information, it is determined whether the vehicle meets the lane-level navigation requirements. If the requirements are met, lane-level navigation is initiated. This implementation method, on the one hand, enables rapid and stable initiation of lane-level navigation through the module preparation phase and the navigation decision phase; on the other hand, it achieves loose coupling between the internal preparation system and the external decision-making system of lane-level navigation through the module ready state, further improving the stability and reliability of lane-level navigation initiation.
[0118] Figure 2 A flowchart illustrating another vehicle navigation method provided in this application embodiment is shown below. Figure 2 As shown, in this embodiment... Figure 1 Based on the embodiments, the vehicle navigation method is described in detail, which includes:
[0119] S201. Obtain vehicle location information.
[0120] In this embodiment, to further improve the launch efficiency of lane-level navigation and reduce latency, resource data can be downloaded in advance before the navigation-related modules perform their preparation work. This allows for rapid launch of lane-level navigation after the vehicle enters a high-precision map area and meets the lane-level navigation requirements. Furthermore, downloading resource data in advance avoids loading all resource data simultaneously, thus preventing performance bottlenecks. For specific implementation details, please refer to the process described below.
[0121] S202. Based on the vehicle location information, determine the distance information between the vehicle and the boundary of the high-precision area.
[0122] In one example, the high-precision area boundary can be understood as the boundary of the high-precision map area.
[0123] In one example, the vehicle navigation system can acquire vehicle location information in real time and monitor the distance between the vehicle and the boundary of a high-precision area in real time.
[0124] S203. Based on the distance information and the preset distance threshold, determine whether the vehicle meets the preloading conditions.
[0125] In one example, the preset distance threshold can be understood as the distance at which resource data is downloaded in advance. For example, the preset distance threshold can be 5000 meters or 3000 meters, etc. There is no limitation on the value of the preset distance threshold here.
[0126] In one example, the preloading condition can be understood as: the distance information is less than or equal to a preset distance threshold.
[0127] S204. If it is determined that the vehicle meets the preloading conditions, preloading information is generated, and the navigation-related modules are controlled to pre-download resource data based on the preloading information.
[0128] Optionally, preloading information can be understood as preloading events. In this case, after generating a preloading event, the preloading event can be broadcast to all registered listeners to control the navigation-related modules to perform preloading responses, that is, to control the navigation-related modules to download resource data in advance. For example, for the aforementioned rendering module, the required map tiles can be predicted based on the vehicle's driving route and the tile data can be downloaded asynchronously in batches.
[0129] Optionally, after determining that the vehicle meets the preloading conditions, the preloading flag can be set to true to prevent repeated triggering.
[0130] Optionally, logging can be started after the preload event is generated to facilitate subsequent analysis and debugging.
[0131] Optionally, if there are multiple navigation-related modules and sufficient hardware resources, the navigation-related modules can be controlled to download resource data in parallel based on pre-loaded information.
[0132] Optionally, when there are multiple navigation-related modules, to save hardware resources, the preloading information can be controlled to allow the navigation-related modules to download resource data in batches. In this case, the preloading information may include the loading time. The steps for controlling the navigation-related modules to pre-download resource data can be as follows.
[0133] First, obtain the vehicle's initial driving status.
[0134] In one example, the first driving state may include, but is not limited to, vehicle speed and vehicle acceleration.
[0135] Then, based on the first driving state and the preset distance threshold, the total resource loading time is determined.
[0136] In one example, the total resource loading time can be understood as the total time required for the vehicle to travel the aforementioned distance information in its current first driving state.
[0137] Next, based on the amount of data required for each navigation-related module and the total resource loading time, the resource loading time for each navigation-related module is determined.
[0138] Optionally, the loading percentage for each navigation-related module can be determined based on the ratio between the data loading amount required by each navigation-related module and the total data loading amount. Then, the resource loading time required for each navigation-related module can be determined based on the loading percentage and the total resource loading time, thereby determining the resource loading time for each navigation-related module.
[0139] Optionally, if the amount of data required by each navigation-related module is large, the loading priority of the navigation-related modules can be prioritized so that the navigation-related modules with higher loading priority download resource data first.
[0140] Finally, resource data is pre-downloaded according to the control and navigation modules.
[0141] Optionally, when navigation-related modules download resource data in advance, they can be executed asynchronously in a background thread to avoid affecting the current navigation.
[0142] In the above embodiments, the preloading process of navigation-related modules can be distributed within a preset distance threshold, thereby avoiding resource congestion and performance bottlenecks by preloading in batches and at different times.
[0143] In one possible implementation, in order to improve the flexibility and versatility of the above-mentioned preloading process and meet the actual needs in different scenarios, the embodiments of this application can dynamically adjust the triggering timing of the preloading process by dynamically adjusting the preset distance threshold, thereby improving the preloading success rate.
[0144] Optionally, the preset distance threshold can be determined according to the process described below.
[0145] First, obtain the vehicle's second driving state and vehicle loading state.
[0146] In one example, the second driving state may include, but is not limited to, vehicle speed.
[0147] In one example, vehicle load status can indicate the vehicle's network quality; for instance, vehicle load status can indicate network bandwidth and / or network signal strength.
[0148] Then, based on the second driving state and the vehicle loading state, a preset distance threshold is determined.
[0149] In practice, the initial distance threshold can be determined based on the second driving state, and the threshold adjustment coefficient can be determined based on the vehicle loading state; then, the preset distance threshold can be determined based on the initial distance threshold and the threshold adjustment coefficient.
[0150] For example, when the vehicle speed is greater than or equal to 80 km / h, the initial distance threshold is determined to be 5000 meters; when the vehicle speed is greater than or equal to 40 km / h and less than 80 km / h, the initial distance threshold is determined to be 3000 meters; and when the vehicle speed is less than 40 km / h, the initial distance threshold is determined to be 1000 meters.
[0151] For example, when the vehicle speed is greater than or equal to 60 km / h, the initial distance threshold is set to 5000 meters; when the vehicle speed is less than 60 km / h, the initial distance threshold is set to 2000 meters, etc. Here, the correspondence between the vehicle speed and the initial distance threshold is not limited, but is based on meeting actual needs.
[0152] In one example, network quality can be determined based on network bandwidth and / or network signal strength. For instance, if the network bandwidth is less than or equal to 1 Mbps and / or the network signal strength is 3 G, the network quality is poor. In this case, the threshold adjustment factor can be set to 1.2. The initial distance threshold can then be increased based on the threshold adjustment factor to trigger the preloading process earlier. If the network bandwidth is greater than or equal to 1 Mbps and / or the network signal strength is 4 G / 5 G, the network quality is good. In this case, the threshold adjustment factor can be set to 1. The preloading process can then be triggered based on the initial distance threshold.
[0153] Optionally, in offline map scenarios, since real-time download of resource data is not required, the preset distance threshold can be shortened. For example, the preset distance threshold can be set to 500 meters.
[0154] Figure 3 This application provides a schematic diagram of a preloading process, as shown in the embodiment. Figure 3 As shown, the distance between the vehicle and the boundary of the high-precision area can be determined based on the vehicle's location information. Then, based on the distance information and a preset distance threshold, it can be determined whether the vehicle meets the preloading conditions.
[0155] If the conditions are not met, continue to determine the distance information.
[0156] If the conditions are met, preloading events (i.e., preloading information) can be distributed, enabling the vehicle navigation system to control navigation-related modules to download resource data in parallel.
[0157] At this point, the resource data can be downloaded after the vehicle enters the high-precision map area, thereby improving the execution speed of module preparation and further reducing the delay of lane-level navigation activation.
[0158] In one example, after the preloading process described above is triggered, the process described below can continue to be executed.
[0159] S205. Determine whether the vehicle has entered the high-precision map area based on the vehicle location information.
[0160] In one example, this step can be referred to the content described in S101 above, and will not be repeated in detail here.
[0161] S206. If it is determined that the area to be entered is a high-precision map area, module preparation information is generated, and navigation-related modules are controlled to perform module preparation work based on the module preparation information.
[0162] In one example, this step can be referred to the content described in S102 above, and will not be repeated in detail here.
[0163] Verification has shown that performing module preparation work after the above preloading process can improve the efficiency of module preparation work. For example, the execution time of the rendering module preparation work can be reduced from 2-3 seconds to 0.5 seconds, the execution time of the positioning module preparation work can be reduced from 1-2 seconds to 0.3 seconds, and the execution time of the path calculation module preparation work can be reduced from 1-2 seconds to 0.2 seconds, etc.
[0164] S207. Obtain the module readiness status of navigation-related modules, and determine whether the module preparation work of navigation-related modules has been completed based on the module readiness status.
[0165] In one example, the module readiness state can be obtained in any of the ways described in S103 above.
[0166] In one example, if the module readiness status is "module preparation progress" and there are multiple navigation-related modules, then the process for determining whether the module preparation work of the navigation-related modules has been completed based on the module readiness status can be as follows.
[0167] If the preparation progress of each navigation-related module is determined to be the target value, then the preparation work of the navigation-related modules is considered complete.
[0168] In one example, the target value can be 100%.
[0169] In one example, if the module preparation progress of any navigation-related module is determined to be less than the target value, then within a preset waiting time, a new module preparation progress is obtained at a preset time interval. If the new module preparation progress is determined to be the target value, then the module preparation work of the navigation-related module is determined to be completed.
[0170] For example, the preset waiting time can be 500ms or 300ms, etc. There is no limitation on the value of the preset waiting time.
[0171] For example, the preset time interval can be 100ms or 50ms, etc., and the value of the preset time interval is not limited here.
[0172] In the above embodiments, a preset waiting time can be used to wait for the navigation-related modules to complete their preparation work. This allows for a certain delay in the preparation work of the navigation-related modules, thereby ensuring the success rate of lane-level navigation activation. Simultaneously, the progress of new module preparations can be queried at preset time intervals to obtain the execution status of the preparation work of new navigation-related modules in a timely manner, facilitating the timely activation of lane-level navigation.
[0173] In another example, if the module preparation progress of any navigation-related module is determined to be less than the target value, then the module weight of each navigation-related module is determined; then, based on the module weight and the module preparation progress, the module progress score is determined; if the module progress score is greater than the preset score threshold, then the navigation-related modules are waited to perform module preparation work until the module preparation progress reaches the target value.
[0174] Optionally, the module weights can be determined based on the importance of the navigation-related modules upon which lane-level navigation depends. For example, if the navigation-related modules include the aforementioned positioning module, rendering module, and route calculation module, then the module weights of the positioning module, rendering module, and route calculation module can be determined to be 1 / 3; or, the module weights of the positioning module, rendering module, and route calculation module can be determined to be 50%, 30%, and 20%, etc.
[0175] At this point, the preparation progress of each navigation-related module can be weighted and summed according to its module weight to obtain a module progress score. The module preparation progress score ranges from 0 to 100%.
[0176] Optionally, the preset scoring threshold can be 0.95 or 0.9, etc. There is no limitation on the value of the preset scoring threshold, which shall be determined according to the actual needs.
[0177] In the above implementation, the module progress score can be determined according to the weight, the overall readiness status of navigation-related modules can be dynamically judged, and if the module progress score is greater than the preset score threshold, the module preparation work can be waited for to be completed, thereby improving the fault tolerance of the vehicle navigation system and increasing the success rate of lane-level navigation launch.
[0178] S208. If the execution is confirmed to be complete, navigation preparation information is generated, and the vehicle is determined to meet the lane-level navigation requirements based on the navigation preparation information.
[0179] In one example, this step can be referred to the content described in S104 above, and will not be repeated in detail here.
[0180] S209. If it is determined that the lane-level navigation requirements are met, then activate lane-level navigation.
[0181] Verification has shown that the process described above improves the efficiency of lane-level navigation activation. For example, the activation delay of lane-level navigation is reduced from 5-10 seconds to 1-2 seconds, thus enabling users to activate lane-level navigation seamlessly and improving the user's navigation experience.
[0182] In one possible implementation, if it is determined that the high-precision map area has not been entered, the standard navigation mode continues to be executed; or, if it is determined that the process has not been completed, the standard navigation mode continues to be executed; or, if it is determined that the lane-level navigation requirements are not met, the standard navigation mode continues to be executed.
[0183] Figure 4 This is a schematic diagram illustrating the implementation process of a vehicle navigation method provided in an embodiment of this application, such as... Figure 4 As shown, it can include the area judgment stage, the internal preparation stage, the external preparation stage, and the final pull-up stage.
[0184] In the area determination stage, the vehicle's location information can be used to determine whether the vehicle has entered a high-precision map area. Specifically, for example... Figure 4 As shown, the following conditions can be used to determine whether a vehicle has entered the high-precision map area: 1. CCP data mapping (that is, whether the aforementioned CCP positioning pulse signal has been successfully mapped to HD Link); 2. Branch point ready; 3. Waypoint ready; 4. Toll station ready; 5. Road break detection passed.
[0185] If all five conditions are met, the vehicle is confirmed to have entered the high-precision map area, and the internal preparation phase can then begin. If any condition is not met, the standard navigation mode will continue.
[0186] After entering the internal preparation phase, the first state transition can be performed, switching the internal state from SD_NAVI_RUNNING to HD_NAVI_PREPARE. At this point, the lane-level navigation initiation process officially begins. Module preparation information, i.e., module preparation events, can be generated and distributed. At this time, each navigation-related module begins to execute its preparation work in parallel. Next, the module readiness status can be obtained through the module state machine. If all navigation-related modules are determined to be ready, the external preparation phase begins. If a navigation-related module is not ready, it waits and checks for timeout (i.e., whether it is within a preset waiting time). If it does not time out, a new module readiness status is obtained at a preset time interval, and the readiness status of the navigation-related modules is re-evaluated. If a timeout occurs, the standard navigation mode continues.
[0187] After entering the external preparation phase, a second state transition can be performed, switching the internal state from HD_NAVI_PREPARE to HD_CTRL_PREPARE, and awaiting external system decisions. Specifically, navigation preparation information can be generated and notified to the external system via a callback interface to make external decisions, thereby determining whether the vehicle meets the high-precision navigation requirements. These external decisions may include: 1. User confirmation; 2. Road type check; 3. Time limit check, etc. If the external decision is successful, the final pull-up phase can proceed; if the external decision fails, the standard navigation mode continues.
[0188] After entering the final launch phase, external systems can trigger the final launch process by calling the `activate` interface. At this point, a third state transition can occur, switching the internal state from `HD_CTRL_PREPARE` to `HD_NAVI_RUNNING`. This signifies that lane-level navigation is officially running. A lane-level navigation activation event can be generated and distributed. The system's HD navigation mode can then be set to `ODD_HD_NAVI_LLN_MODE`, officially activating the lane-level navigation function. Simultaneously, the external system can be notified via the callback interface `updateHDNaviMod(ODD_EXPORT_HD_NAVI_LLN_MODE)` to update the displayed content. At this point, lane-level navigation is successfully launched and enters lane-level navigation mode.
[0189] Figure 5 This is a schematic diagram of the structure of a vehicle navigation device provided in an embodiment of this application, as shown below. Figure 5 As shown, the vehicle navigation device 50 provided in this embodiment includes:
[0190] The acquisition unit 501 is used to acquire vehicle location information and determine whether the vehicle has entered the high-precision map area based on the vehicle location information.
[0191] The preparation unit 502 is used to generate module preparation information if it is determined that the area to be entered is a high-precision map area, and to control the navigation-related modules to perform module preparation work according to the module preparation information.
[0192] The first determining unit 503 is used to obtain the module readiness status of the navigation-related modules and determine whether the module preparation work of the navigation-related modules has been completed based on the module readiness status.
[0193] The second determining unit 504 is used to generate navigation preparation information if it is determined that the execution is completed, and to determine whether the vehicle meets the lane-level navigation requirements based on the navigation preparation information.
[0194] The navigation unit 505 is used to activate lane-level navigation if it is determined that the lane-level navigation requirements are met.
[0195] In one possible implementation, the module ready state is the module preparation progress; the number of navigation-related modules is multiple; at this time, the first determining unit 503 is used for:
[0196] If the preparation progress of each navigation-related module is determined to be the target value, then the preparation work of the navigation-related modules is considered to be completed.
[0197] If the module preparation progress of any navigation-related module is determined to be less than the target value, then within a preset waiting time, a new module preparation progress is obtained at a preset time interval. If the new module preparation progress is determined to be the target value, then the module preparation work of the navigation-related module is determined to be completed.
[0198] In one possible implementation, the device is also used for:
[0199] If the module preparation progress of any navigation-related module is determined and is not the target value, then the module weight of each navigation-related module is determined.
[0200] The module progress score is determined based on the module weight and the module preparation progress.
[0201] If the module progress score is greater than the preset score threshold, wait for the navigation-related modules to perform module preparation work until the module preparation progress reaches the target value.
[0202] In one possible implementation, after acquiring the vehicle location information, the device is further used to:
[0203] Based on the vehicle location information, determine the distance between the vehicle and the boundary of the high-precision area;
[0204] Based on distance information and preset distance thresholds, determine whether the vehicle meets the preloading conditions;
[0205] If the vehicle is determined to meet the preloading conditions, preloading information is generated, and the navigation-related modules are controlled to pre-download resource data based on the preloading information.
[0206] In one possible implementation, the preloading information includes loading time; the number of navigation-related modules is multiple; in this case, the device is also used for:
[0207] Obtain the vehicle's initial driving status;
[0208] The total resource loading time is determined based on the first driving state and the preset distance threshold;
[0209] Based on the amount of data required for each navigation-related module and the total resource loading time, determine the resource loading time for each navigation-related module.
[0210] Resource data is pre-downloaded according to the control and navigation modules.
[0211] In one possible implementation, the device is also used for:
[0212] Obtain the vehicle's second driving state and vehicle loading state;
[0213] A preset distance threshold is determined based on the second driving state and the vehicle loading state.
[0214] In one possible implementation, the device is also used for:
[0215] If it is determined that the area has not entered a high-precision map area, continue with the standard navigation mode; or,
[0216] If it is determined that the process has not been completed, then continue with the standard navigation mode; or,
[0217] If it is determined that the lane-level navigation requirements are not met, the standard navigation mode will continue to be executed.
[0218] The vehicle navigation device provided in this embodiment can execute the method provided in the above method embodiment. Its implementation principle and technical effect are similar, and will not be described in detail here.
[0219] Figure 6 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application. Figure 6 As shown, the computer device 60 provided in this embodiment includes at least one processor 601 and a memory 602. Optionally, the computer device 60 further includes a communication component 603. The processor 601, memory 602, and communication component 603 are connected via a bus 604.
[0220] In a specific implementation, at least one processor 601 executes computer execution instructions stored in memory 602, causing at least one processor 601 to perform the above-described method.
[0221] The specific implementation process of processor 601 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.
[0222] In the above embodiments, it should be understood that the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this invention can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.
[0223] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage device.
[0224] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, the buses shown in the accompanying drawings are not limited to a single bus or a single type of bus.
[0225] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method.
[0226] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-described method.
[0227] The aforementioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.
[0228] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the device.
[0229] The division of units is merely a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0230] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment, depending on actual needs.
[0231] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0232] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0233] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0234] Finally, it should be noted that other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein, and is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of the invention is limited only by the appended claims.
Claims
1. A vehicle navigation method, characterized in that, include: Obtain vehicle location information and determine whether the vehicle has entered the high-precision map area based on the vehicle location information; If it is determined that the area has entered the high-precision map area, module preparation information is generated, and navigation-related modules are controlled to perform module preparation work based on the module preparation information. Obtain the module readiness status of the navigation-related modules, and determine whether the module preparation work of the navigation-related modules has been completed based on the module readiness status; If the execution is confirmed to be complete, navigation preparation information is generated, and it is determined whether the vehicle meets the lane-level navigation requirements based on the navigation preparation information. If the lane-level navigation requirements are met, then lane-level navigation is activated.
2. The method according to claim 1, characterized in that, The module readiness status refers to the module preparation progress; the number of navigation-related modules is multiple; determining whether the module preparation work of the navigation-related modules has been completed based on the module readiness status includes: If the module preparation progress of each navigation-related module is determined to be a target value, then the module preparation work of the navigation-related module is determined to be completed. If the module preparation progress of any of the navigation-related modules is determined to be different from the target value, then within a preset waiting time, a new module preparation progress is obtained at a preset time interval. If the new module preparation progress is determined to be the target value, then the module preparation work of the navigation-related module is determined to be completed.
3. The method according to claim 2, characterized in that, The method further includes: If the module preparation progress of any of the navigation-related modules is determined to be different from the target value, then the module weight of each of the navigation-related modules is determined. The module progress score is determined based on the module weight and the module preparation progress. If the module progress score is greater than the preset score threshold, then wait for the navigation-related modules to perform module preparation work until the module preparation progress reaches the target value.
4. The method according to claim 1, characterized in that, After obtaining the vehicle location information, the method further includes: Based on the vehicle location information, determine the distance information between the vehicle and the boundary of the high-precision area; Based on the distance information and the preset distance threshold, determine whether the vehicle meets the preloading conditions; If the vehicle is determined to meet the preloading conditions, preloading information is generated, and the navigation-related modules are controlled to pre-download resource data based on the preloading information.
5. The method according to claim 4, characterized in that, The preloading information includes the loading time; The number of navigation-related modules is multiple; the method further includes: Obtain the first driving state of the vehicle; The total resource loading time is determined based on the first driving state and the preset distance threshold. The resource loading time for each navigation-related module is determined based on the amount of data required for each navigation-related module and the total resource loading time. According to the control, the navigation-related modules pre-download resource data.
6. The method according to claim 4, characterized in that, The method further includes: Obtain the second driving state and vehicle loading state of the vehicle; The preset distance threshold is determined based on the second driving state and the vehicle loading state.
7. The method according to any one of claims 1-6, characterized in that, The method further includes: If it is determined that the high-precision map area has not been entered, then continue with the standard navigation mode; or, If it is determined that the process has not been completed, then continue with the standard navigation mode; or, If it is determined that the lane-level navigation requirements are not met, the standard navigation mode will continue to be executed.
8. A vehicle navigation device, characterized in that, include: The acquisition unit is used to acquire vehicle location information and determine whether the vehicle has entered the high-precision map area based on the vehicle location information. The preparation unit is used to generate module preparation information if it is determined that the area to be entered is the high-precision map area, and to control the navigation-related modules to perform module preparation work according to the module preparation information. The first determining unit is used to obtain the module readiness status of the navigation-related module and determine whether the module preparation work of the navigation-related module has been completed based on the module readiness status. The second determining unit is used to generate navigation preparation information if it is determined that the execution is completed, and to determine whether the vehicle meets the lane-level navigation requirements based on the navigation preparation information. The navigation unit is used to activate lane-level navigation if it is determined that the lane-level navigation requirements are met.
9. A computer device, characterized in that, include: Memory, processor; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory, causing the processor to perform the method as described in any one of claims 1-7.
10. A computer-readable storage medium / computer program product, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the method as described in any one of claims 1-7; The computer program product includes a computer program that, when executed by a processor, implements the method of any one of claims 1-7.