Navigation method and device, electronic equipment and medium
By matching road-level and lane-level maps, combined with the hidden Markov model and trajectory point distribution characteristics, the road-level matching results are updated, solving the problem of insufficient accuracy of yaw confirmation in the navigation system and achieving higher yaw detection accuracy and user experience.
Patent Information
- Application Number
- CN202510788276.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-12
- Publication Date
- 2025-09-19
AI Technical Summary
Existing navigation systems lack accuracy in yaw confirmation, making it difficult to effectively judge the quality of trajectory point sequences and perform accurate yaw confirmation.
Through road-level and lane-level map matching, the hidden Markov model (HMM) is used to match the trajectory point sequence. The quality of the trajectory point sequence is judged based on the trajectory point distribution characteristics. The road-level matching results are updated to improve accuracy. The final yaw confirmation result is obtained by fusing multiple yaw recognition results.
The accuracy of yaw confirmation is improved, misidentification is reduced, and the accuracy of the navigation system in yaw detection and user experience are enhanced.
Smart Images

Figure CN120668105A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer technology, in particular to technical fields such as navigation and high-precision maps, and specifically to a navigation method, device, electronic device, computer-readable storage medium, and computer program product. Background Art
[0002] With the continuous advancement of technology, smart terminals have become indispensable devices in people's daily lives. Users can install a variety of different types of applications on smart terminals to meet their diverse needs. Travel applications, such as map navigation applications, are widely used. Typically, map navigation applications not only plan navigation routes from a starting point to a destination, but also guide the navigated subject along the navigation route based on the location of the navigated subject. At the same time, in order for the navigated subject to understand its location on the navigation route, the location of the navigated subject is generally marked on the navigation route.
[0003] The approaches described in this section are not necessarily approaches that have been previously conceived or employed. Unless otherwise indicated, it should not be assumed that any approach described in this section is prior art simply by virtue of its inclusion in this section. Similarly, unless otherwise indicated, the issues raised in this section should not be considered as having been recognized in any prior art. Summary of the Invention
[0004] The present disclosure provides a navigation method, apparatus, electronic device, computer-readable storage medium, and computer program product.
[0005] According to one aspect of the present disclosure, a navigation method is provided, including: in response to receiving a yaw confirmation request, performing road-level map matching and lane-level map matching based on a trajectory point sequence in the yaw confirmation request to correspondingly obtain a road-level matching result and a lane-level matching result, wherein the lane-level matching result includes a lane-level path matched by the trajectory point sequence; based on trajectory point distribution characteristics of the trajectory point sequence relative to the lane-level path, determining whether the trajectory point sequence meets a preset quality requirement; in response to determining that the trajectory point sequence meets the preset quality requirement and in response to determining that the lane-level matching result and the road-level matching result are inconsistent, updating the road-level matching result based on the lane-level matching result; and obtaining a yaw confirmation result based on the updated road-level matching result and the navigation route.
[0006] According to another aspect of the present disclosure, a navigation device is provided, including: an execution unit, configured to, in response to receiving a yaw confirmation request, perform road-level map matching and lane-level map matching based on a trajectory point sequence in the yaw confirmation request, so as to correspondingly obtain a road-level matching result and a lane-level matching result, wherein the lane-level matching result includes a lane-level path matched by the trajectory point sequence; a judgment unit, configured to judge whether the trajectory point sequence meets a preset quality requirement based on trajectory point distribution characteristics of the trajectory point sequence relative to the lane-level path; an updating unit, configured to, in response to judging that the trajectory point sequence meets the preset quality requirement and in response to determining that the lane-level matching result and the road-level matching result are inconsistent, update the road-level matching result based on the lane-level matching result; and a first acquisition unit, configured to acquire a yaw confirmation result based on the updated road-level matching result and the navigation route.
[0007] According to another aspect of the present disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the navigation method of the present disclosure.
[0008] According to another aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to cause a computer to execute the navigation method of the present disclosure.
[0009] According to another aspect of the present disclosure, a computer program product is provided, including a computer program, wherein the computer program implements the navigation method of the present disclosure when executed by a processor.
[0010] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The accompanying drawings illustrate exemplary embodiments and constitute a part of the specification. Together with the description of the specification, they serve to explain exemplary implementation of the embodiments. The illustrated embodiments are for illustrative purposes only and do not limit the scope of the claims. Throughout the drawings, the same reference numerals designate similar, but not necessarily identical, elements.
[0012] Figure 1 A schematic diagram illustrating an exemplary system in which the various methods described herein may be implemented according to an embodiment of the present disclosure;
[0013] Figure 2 A flowchart of a navigation method according to an embodiment of the present disclosure is shown;
[0014] Figure 3 A flow chart of obtaining a yaw confirmation result according to an embodiment of the present disclosure is shown;
[0015] Figure 4 shows an architectural diagram of a yaw confirmation system according to an exemplary embodiment of the present disclosure;
[0016] Figure 5 shows a structural block diagram of a navigation device according to an embodiment of the present disclosure;
[0017] Figure 6 A structural block diagram of an exemplary electronic device that can be used to implement the embodiments of the present disclosure is shown. DETAILED DESCRIPTION
[0018] The following description of exemplary embodiments of the present disclosure is made in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be appreciated by those skilled in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.
[0019] In this disclosure, unless otherwise specified, the use of terms such as "first" and "second" to describe various elements is not intended to limit the positional relationship, temporal relationship, or importance relationship of these elements. Such terms are only used to distinguish one element from another. In some examples, the first element and the second element may refer to the same instance of the element, while in some cases, based on the context of the description, they may also refer to different instances.
[0020] The terms used in the descriptions of the various examples described in this disclosure are for the purpose of describing specific examples only and are not intended to be limiting. Unless the context clearly indicates otherwise, if the number of elements is not specifically limited, the element may be one or more. In addition, the term "and / or" used in this disclosure encompasses any one and all possible combinations of the listed items.
[0021] The embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings.
[0022] Figure 1 FIG2 is a schematic diagram of an exemplary system 100 in which the various methods and apparatuses described herein may be implemented according to an embodiment of the present disclosure. Figure 1, the system 100 includes one or more client devices 101, 102, 103, 104, 105, and 106, a server 120, and one or more communication networks 110 coupling the one or more client devices to the server 120. The client devices 101, 102, 103, 104, 105, and 106 can be configured to execute one or more applications.
[0023] In an embodiment of the present disclosure, the server 120 may run one or more services or software applications that enable execution of the navigation method of the present disclosure.
[0024] In some embodiments, server 120 may also provide other services or software applications, which may include non-virtualized environments and virtualized environments. In some embodiments, these services may be provided as web-based services or cloud services, such as provided to users of client devices 101, 102, 103, 104, 105, and / or 106 under a software as a service (SaaS) model.
[0025] exist Figure 1 In the configuration shown, the server 120 may include one or more components that implement the functions performed by the server 120. These components may include software components, hardware components, or a combination thereof that can be executed by one or more processors. Users operating client devices 101, 102, 103, 104, 105, and / or 106 may, in turn, utilize one or more client applications to interact with the server 120 to utilize the services provided by these components. It should be understood that a variety of different system configurations are possible, which may differ from the system 100. Therefore, Figure 1 is one example of a system for implementing the various methods described herein and is not intended to be limiting.
[0026] The user may use client devices 101, 102, 103, 104, 105 and / or 106 to obtain a navigation route. The client device may provide an interface that enables the user of the client device to interact with the client device. The client device may also output information to the user via the interface. Figure 1 Only six client devices are depicted, but one skilled in the art will appreciate that the present disclosure can support any number of client devices.
[0027] Client devices 101, 102, 103, 104, 105, and / or 106 may include various types of computer devices, such as portable handheld devices, general-purpose computers (such as personal computers and laptops), workstation computers, wearable devices, smart screen devices, self-service terminal devices, service robots, gaming systems, thin clients, various messaging devices, sensors or other sensing devices, etc. These computer devices may run various types and versions of software applications and operating systems, such as Microsoft Windows, Apple iOS, UNIX-like operating systems, Linux, or Linux-like operating systems (such as Google Chrome OS); or include various mobile operating systems, such as Microsoft Windows Mobile OS, iOS, Windows Phone, and Android. Portable handheld devices may include cellular phones, smartphones, tablet computers, personal digital assistants (PDAs), etc. Wearable devices may include head-mounted displays (such as smart glasses) and other devices. Gaming systems may include various handheld gaming devices, internet-enabled gaming devices, etc. Client devices are capable of executing a variety of different applications, such as various internet-related applications, communication applications (such as email applications), and short message service (SMS) applications, and may use various communication protocols.
[0028] The network 110 may be any type of network known to those skilled in the art that can support data communications using any of a variety of available protocols, including but not limited to TCP / IP, SNA, IPX, etc. By way of example only, the one or more networks 110 may be a local area network (LAN), an Ethernet-based network, a token ring, a wide area network (WAN), the Internet, a virtual network, a virtual private network (VPN), an intranet, an extranet, a blockchain network, a public switched telephone network (PSTN), an infrared network, a wireless network (e.g., Bluetooth, WIFI), and / or any combination of these and / or other networks.
[0029] Server 120 may include one or more general-purpose computers, specialized server computers (e.g., PC (personal computer) servers, UNIX servers, mid-range servers), blade servers, mainframe computers, server clusters, or any other suitable arrangement and / or combination. Server 120 may include one or more virtual machines running virtual operating systems, or other computing architectures involving virtualization (e.g., one or more flexible pools of logical storage devices that may be virtualized to maintain a server's virtual storage device). In various embodiments, server 120 may run one or more services or software applications that provide the functionality described below.
[0030] The computing units in the server 120 may run one or more operating systems including any of the operating systems described above as well as any commercially available server operating systems. The server 120 may also run any of a variety of additional server applications and / or middle-tier applications, including HTTP servers, FTP servers, CGI servers, JAVA servers, database servers, and the like.
[0031] In some implementations, server 120 may include one or more applications to analyze and consolidate data feeds and / or event updates received from users of client devices 101, 102, 103, 104, 105, and / or 106. Server 120 may also include one or more applications to display the data feeds and / or real-time events via one or more display devices of client devices 101, 102, 103, 104, 105, and / or 106.
[0032] In some embodiments, server 120 may be a distributed system server or a server integrated with blockchain. Server 120 may also be a cloud server, or an intelligent cloud computing server or intelligent cloud host equipped with artificial intelligence technology. A cloud server is a host product within the cloud computing service system that addresses the management difficulties and poor scalability of traditional physical hosts and virtual private servers (VPS) services.
[0033] The system 100 may also include one or more databases 130. In some embodiments, these databases may be used to store data and other information. For example, one or more of the databases 130 may be used to store information such as audio files and video files. The databases 130 may reside in a variety of locations. For example, the database used by the server 120 may be local to the server 120, or may be remote from the server 120 and communicate with the server 120 via a network-based or dedicated connection. The databases 130 may be of different types. In some embodiments, the databases used by the server 120 may be, for example, relational databases. One or more of these databases may store, update, and retrieve data to and from the databases in response to commands.
[0034] In some embodiments, one or more of the databases 130 may also be used by applications to store application data. The databases used by the applications may be different types of databases, such as a key-value store, an object store, or a conventional store backed by a file system.
[0035] Figure 1The system 100 may be configured and operated in various ways to enable application of the various methods and apparatuses described in accordance with the present disclosure.
[0036] According to some embodiments, Figure 2 As shown, a navigation method is provided, including: step S201, in response to receiving a deviation confirmation request, performing road-level map matching and lane-level map matching based on a trajectory point sequence in the deviation confirmation request to correspondingly obtain a road-level matching result and a lane-level matching result, wherein the lane-level matching result includes a lane-level path matched by the trajectory point sequence; step S202, based on trajectory point distribution characteristics of the trajectory point sequence relative to the lane-level path, judging whether the trajectory point sequence meets a preset quality requirement; step S203, in response to judging that the trajectory point sequence meets the preset quality requirement and in response to determining that the lane-level matching result and the road-level matching result are inconsistent, updating the road-level matching result based on the lane-level matching result; and step S204, obtaining a deviation confirmation result based on the updated road-level matching result and the navigation route.
[0037] Therefore, after obtaining the road-level matching results and the lane-level matching results, the quality of the trajectory point sequence is first detected based on the trajectory point distribution characteristics of the trajectory point sequence relative to the matched lane-level path, so as to indirectly determine the accuracy of the current lane-level matching result. When the trajectory point sequence meets the preset quality requirements (i.e., the lane-level matching result is accurate), the road-level matching result is updated based on the lane-level matching result, and then the yaw confirmation is performed based on the updated road-level matching result, thereby improving the accuracy of the yaw confirmation.
[0038] In some embodiments, the requester of the above-mentioned deviation confirmation request may be a client that has installed a navigation application. When the client provides navigation services for the navigated object through the navigation application, it can perform preliminary deviation detection based on the real-time positioning information, and when it detects that the object may deviate, it automatically sends a deviation confirmation request to the cloud so that the cloud can perform further deviation confirmation. If it is confirmed that the navigated object has deviated, the route for the navigated object can be replanned based on the current position of the navigated object; if it is confirmed that the navigated object has not deviated, the deviation confirmation request can be returned (a message indicating that the navigated object has not deviated is sent to the client) to continue navigating the navigated object based on the current navigation route.
[0039] In some embodiments, the deviation confirmation request may also include a sequence of track points closest to the navigated object, which may include multiple track points. After receiving the deviation confirmation request, road-level map matching and lane-level map matching may be performed based on the track point sequence in the request to obtain road-level matching results and lane-level matching results, respectively, corresponding to the track point sequence.
[0040] Road-level map matching can be performed by applying road-level road network data to a trajectory point sequence for map matching. The obtained road-level matching result can include the road-level path matched by the trajectory point sequence. Lane-level map matching can be performed by applying lane-level road network data to a trajectory point sequence for map matching. The obtained lane-level matching result can include the lane-level path matched by the trajectory point sequence.
[0041] The above map matching can be implemented based on a Hidden Markov Model (HMM).
[0042] In road-level map matching, multiple trajectory points in a trajectory point sequence and road-level network data can be input into a trained HMM model, causing the model to output at least one candidate road matched to each trajectory point and the matching confidence level (i.e., emission probability) of each candidate road. Based on this information, the road-level path corresponding to the trajectory point sequence is obtained. Similarly, in lane-level map matching, multiple trajectory points in a trajectory point sequence and lane-level network data can be input into a trained HMM model, causing the model to output at least one candidate lane matched to each trajectory point and the matching confidence level (i.e., emission probability) of each candidate lane. Based on this information, the lane-level path corresponding to the trajectory point sequence is obtained.
[0043] In some embodiments, a lane-level path may be obtained by connecting the centerlines of lane segments to which multiple trajectory points are matched. Similarly, a road-level path may be obtained by connecting the centerlines of road segments to which multiple trajectory points are matched.
[0044] After obtaining the road-level matching results and lane-level matching results, the trajectory point distribution characteristics of the trajectory point sequence relative to the lane-level path (such as the degree of discreteness of the trajectory point distribution relative to the lane-level path, etc.) can be obtained, and then based on the trajectory point distribution characteristics, it can be judged whether the trajectory point sequence meets the preset quality requirements.
[0045] In some embodiments, the trajectory point distribution feature may include a first feature corresponding to each trajectory point in the trajectory point sequence, and the first feature may include at least one of the following: the distance between the trajectory point and the lane-level path and the angle between the trajectory line formed by the trajectory point sequence at the trajectory point and the lane-level path.
[0046] Therefore, by quality checking the first feature of each trajectory point in the trajectory point sequence one by one, the accuracy of the lane-level matching result can be further improved, and the accuracy of the deviation confirmation can be further improved.
[0047] In some embodiments, the preset quality requirement may include that the first feature corresponding to each track point in the track point sequence meets the first quality requirement. The first feature corresponding to a track point is considered to meet the first quality requirement if at least one of the following conditions is met: the distance between the track point and the lane-level path is less than a first preset distance; and the angle between the track line corresponding to the track point (e.g., the line connecting the track point and an adjacent track point) and the lane-level path is less than a preset angle.
[0048] In some exemplary embodiments, in response to the distance between each trajectory point and the lane-level path being less than a first preset distance, and the angle between the trajectory line corresponding to each trajectory point and the lane-level path being less than a preset angle, it can be considered that the first feature corresponding to each trajectory point meets the first quality requirement, and further it can be determined that the trajectory point sequence meets the preset quality requirement and the accuracy of the lane-level matching result meets the requirement.
[0049] It is understandable that the setting of the first quality requirement can be determined according to actual needs and is not limited here.
[0050] In some embodiments, judging whether the trajectory point sequence meets the preset quality requirements based on the trajectory point distribution characteristics of the trajectory point sequence relative to the lane-level path may include: judging whether the trajectory point sequence meets the preset quality requirements based on the trajectory point distribution characteristics and a second feature of the last trajectory point in the trajectory point sequence, wherein the second feature includes at least one of a matching confidence between the last trajectory point and the lane matching the last trajectory point in the lane-level path, a lane attribute of the lane, and connectivity between the last trajectory point and a preceding trajectory point.
[0051] Therefore, by further performing quality inspection on the second feature of the last trajectory point in the trajectory point sequence, the accuracy of the lane-level matching result can be further improved, thereby further improving the accuracy of the deviation confirmation.
[0052] The last trajectory point may be the last trajectory point in the above-mentioned trajectory point sequence. The above-mentioned matching confidence may be the matching confidence between the last trajectory point and the lane output by the HMM model during the lane-level map matching process. Lane attributes may include, for example, whether the lane is a left-turn lane, a right-turn lane, or a straight-through lane, whether U-turns are prohibited in the lane, whether the lane is a main road or a secondary road, whether the lane is an internal road in an area such as a parking lot, etc. The connectivity between the last trajectory point and the previous trajectory point can be determined by checking the time difference and spatial distance with the previous trajectory point. For example, when the time difference is greater than a preset time length or the spatial distance is greater than a preset distance, it is considered that there is an abnormality in the connectivity.
[0053] In some exemplary embodiments, based on the trajectory point distribution characteristics and the second characteristic of the last trajectory point in the trajectory point sequence, determining whether the trajectory point sequence meets the preset quality requirement may include: determining whether the first characteristic corresponding to each trajectory point in the trajectory point sequence meets the first quality requirement; and simultaneously determining whether the second characteristic of the last trajectory point meets the second quality requirement. If both characteristics meet, the trajectory point sequence is considered to meet the preset quality requirement, and the lane-level matching result is considered to meet the accuracy requirement.
[0054] In some embodiments, the second feature of the last trajectory point may be considered to meet the second quality requirement if at least one of the following conditions is met: the matching confidence between the last trajectory point and the lane is greater than a preset threshold, the lane attribute indicates that the lane is not an interior road, and the last trajectory point is connected to the previous trajectory point.
[0055] In some exemplary embodiments, in response to a matching confidence between the last trajectory point and the lane being greater than a preset threshold, a lane attribute indicating that the lane at the last trajectory point is not an inner road, and the last trajectory point is connected to a preceding trajectory point, then the second feature of the last trajectory point may be considered to meet the second quality requirement.
[0056] It is understandable that the setting of the second quality requirement can be determined according to actual needs and is not limited here.
[0057] After determining that the trajectory point sequence meets the preset quality requirements, if it is further determined that the lane-level matching result and the road-level matching result are inconsistent, the road-level matching result can be updated based on the lane-level matching result.
[0058] In some embodiments, whether the lane-level matching result and the road-level matching result are consistent can be determined by determining whether the lane-level path and the road-level path correspond to the same path.
[0059] In some embodiments, determining whether the lane-level matching result and the road-level matching result are consistent may include: determining whether, at the last trajectory point in the trajectory point sequence, the lane matched by the last trajectory point is located on the road matched by the last trajectory point, so as to determine whether the lane-level matching result and the road-level matching result are consistent.
[0060] Therefore, by only judging the consistency of the matching results of the last trajectory point, the judgment logic for the consistency of the overall lane-level matching results and road-level matching results can be simplified, which can save computing resources while ensuring the accuracy of the judgment.
[0061] In some embodiments, updating the road-level matching result based on the lane-level matching result may be mapping the data of each lane dimension in the lane-level matching result to the road-level network, thereby obtaining an updated road-level matching result.
[0062] Subsequently, the deviation confirmation result can be obtained based on the updated road-level matching result and the current navigation route.
[0063] In some embodiments, the lane-level path may be mapped to a road-level path, and whether the navigated object has deviated may be determined by determining whether the road-level path is consistent with the navigation route.
[0064] In some embodiments, all lane-level matching result data (including the lane matched to each trajectory point and the matching confidence level) can be mapped to an updated road-level matching result, and the data contained in the updated road-level matching result and the current navigation route can be input into a pre-trained yaw confirmation model to output a yaw confirmation result based on the yaw confirmation model. The yaw confirmation model can be trained using sample data including the road-level matching results of sample trajectories, sample navigation routes, and labels indicating whether the yaw is present.
[0065] In some embodiments, as Figure 3 As shown, obtaining a yaw confirmation result based on the updated road-level matching result and the navigation route may include: step S301, inputting the updated road-level matching result and the navigation route into a yaw detection model to obtain a first yaw identification result output by the yaw detection model; step S302, determining whether a road-level path corresponding to the initial road-level matching result is located on the navigation route to obtain a second yaw identification result; step S303, determining whether a lane-level path is located on the navigation route to obtain a third yaw identification result; and step S304, determining a yaw confirmation result based on the first yaw identification result, the second yaw identification result, and the third yaw identification result.
[0066] Thus, three yaw identification results are obtained through three paths respectively, and a final yaw confirmation result is obtained based on the three yaw identification results, thereby further improving the accuracy of the yaw confirmation result.
[0067] In some embodiments, based on the first yaw identification result, the second yaw identification result and the third yaw identification result, determining the yaw confirmation result can be that if at least two of the first yaw identification result, the second yaw identification result and the third yaw identification result indicate no yaw, then it is considered that the navigated object has not yawed, and it is confirmed as the yaw confirmation result.
[0068] In some embodiments, determining the yaw confirmation result based on the first yaw identification result, the second yaw identification result, and the third yaw identification result may include: in response to any one of the first yaw identification result, the second yaw identification result, and the third yaw identification result indicating that the navigated object has not deviated from the navigation route, determining the yaw confirmation result as the navigated object has not deviated; otherwise, determining the yaw confirmation result as the navigated object has deviated.
[0069] In this way, misidentification of yaw can be avoided to the greatest extent, and the accuracy of yaw confirmation results can be improved.
[0070] In some embodiments, the navigation method may further include: in response to determining that the trajectory point sequence does not meet a preset quality requirement, obtaining a deviation confirmation result based on the initial road-level matching result and the navigation route.
[0071] Therefore, if the trajectory point sequence fails the quality test, it means that the accuracy of the corresponding lane-level matching result is not high. In this case, directly applying the initial road-level matching result for yaw confirmation can maximize the accuracy of yaw confirmation.
[0072] In some embodiments, based on the initial road-level matching result and the navigation route, obtaining the deviation confirmation result may include determining whether the road-level path corresponding to the initial road-level matching result is located on the navigation route to obtain the deviation confirmation result.
[0073] In some embodiments, obtaining a deviation confirmation result based on the initial road-level matching result and the navigation route may include inputting the initial road-level matching result and the navigation route into a pre-trained deviation recognition model, and causing the deviation recognition model to output a deviation confirmation result.
[0074] In some embodiments, based on the initial road-level matching result and the navigation route, obtaining the yaw confirmation result may include determining whether the road-level path corresponding to the initial road-level matching result is located on the navigation route to obtain a fourth yaw identification result; inputting the initial road-level matching result and the navigation route into a pre-trained yaw identification model, and causing the yaw identification model to output a fifth yaw identification result; and in response to any yaw identification result of the fourth yaw identification result and the fifth yaw identification result indicating that the navigated object has not deviated from the navigation route, determining the yaw confirmation result as that the navigated object has not deviated; otherwise, determining the yaw confirmation result as that the navigated object has deviated.
[0075] In some embodiments, the navigation method may further include: in response to the deviation confirmation result indicating that the navigated object has not deviated from the navigation route, sending the deviation confirmation result to the deviation confirmation request.
[0076] Therefore, when it is confirmed that the navigated object has not deviated, the result is returned to the requester, thereby preventing the requester (client) from giving a deviation prompt and allowing it to continue navigating according to the current navigation route, avoiding affecting the user experience.
[0077] Figure 4 1 shows an architectural diagram of a yaw confirmation system 400 according to an exemplary embodiment of the present disclosure.
[0078] In some exemplary embodiments, Figure 4 As shown, the yaw confirmation system may include a yaw confirmation initiation module 410, a distribution module 420, a lane-level map matching module 430, a road-level map matching module 440, and a yaw judgment module 450. After receiving a yaw confirmation request, the yaw confirmation system 400 may perform the following operations: Step 401, the yaw confirmation initiation module 410 sends a yaw confirmation request carrying track point sequence information to the distribution module 420; Step 402, the distribution module 420 sends the track point sequence to the lane-level map matching module 430; Step 403, at the same time, the distribution module 420 sends the track point sequence to the road-level map matching module 440; Step 404, the lane-level map matching module 430 sends the lane-level matching result to the distribution module 420; Step 405, the road-level map matching module 440 Send the road-level matching result to the distribution module 420; Step 406: After determining whether the trajectory point sequence meets the preset quality requirements and determining whether to update the road-level matching result, the distribution module 420 sends the final road-level matching result and lane-level matching result to the yaw judgment module 450; Step 407: The yaw judgment module 450 confirms the yaw based on any of the above methods and sends the yaw confirmation result to the distribution module 420; Step 408: The distribution module 420 sends the yaw confirmation result to the yaw confirmation initiation module 410, so that it sends the yaw confirmation result to the client.
[0079] In some embodiments, the above-mentioned navigation method may further include: in response to the deviation confirmation result indicating that the navigated object has deviated from the navigation route, and in response to judging that the trajectory point sequence meets the preset quality requirements, determining the fusion matching result based on the lane-level matching result and the road-level matching result, wherein the fusion matching result is used to indicate the road on which the navigated object is currently located, and the fusion matching result is used for replanning the navigation route.
[0080] Therefore, after confirming that the vehicle has deviated, if the trajectory point sequence has passed the quality inspection, a fusion matching result is generated by applying the lane-level matching result and the road-level matching result as a basis for replanning the navigation route, thereby improving the accuracy of the starting point of the replanned navigation route.
[0081] In some embodiments, based on the lane-level matching results and the road-level matching results, determining the fusion matching result can be that in response to the lane matched by the last trajectory point in the lane-level matching results and the road-level matching results being inconsistent with the road (i.e., the lane is not in the road), the lane matched by the last trajectory point is mapped to the road-level road network, so that the road corresponding to the lane is used as the fusion matching result, which is used as a basis for re-planning the route.
[0082] In some embodiments, as Figure 5As shown, determining a fused matching result based on the lane-level matching result and the road-level matching result may include: step S501, obtaining, in the road-level matching result, a first preset number of first candidate results with the highest matching confidence for the last trajectory point in the trajectory point sequence; step S502, obtaining, in the lane-level matching result, a second candidate result with the highest matching confidence for each trajectory point in the last second preset number of trajectory points in the trajectory point sequence; step S503, sequentially performing a first operation on each trajectory point in the second preset number of trajectory points, starting from the last trajectory point, until a fused matching result is obtained or the first operation is completed for each trajectory point in the second preset number of trajectory points, wherein the first operation may include: in response to determining that the first preset number of first candidate results includes a third candidate result, determining the third candidate result as the fused matching result, wherein the third candidate result is consistent with the second candidate result corresponding to the trajectory point; and step S504, in response to not obtaining a fused matching result after completing the first operation for each trajectory point in the second preset number of trajectory points, determining the candidate result with the highest matching confidence among the first preset number of first candidate results as the fused matching result.
[0083] In this way, the matching results can be integrated based on the existing parameters in the matching results, thereby saving computing resources while improving the accuracy of the starting point of the re-planned navigation route.
[0084] In some exemplary embodiments, the five (i.e., the first preset number) first candidate results with the highest matching confidence of the last trajectory point in the road-level matching results can be obtained, wherein the above-mentioned first candidate results and the corresponding matching confidence can be output by the road-level HMM model; at the same time, the candidate results (second candidate results) with the highest matching confidence of the last three (i.e., the second preset number) trajectory points in the lane-level matching results can be obtained, wherein the above-mentioned second candidate results and the corresponding matching confidence can be output by the lane-level HMM model.
[0085] First, the second candidate result of the last trajectory point is used for judgment. If the second candidate result is included in the above five first candidate results, the second candidate result is determined as the fusion matching result. That is, the lane corresponding to the lane-level matching result with the highest matching confidence of the last trajectory point is used as the fusion matching result; if the second candidate result is not included in the above five first candidate results, the above judgment is repeated based on the second candidate result of the second-to-last trajectory point; if none of the three second candidate results are included in the above five first candidate results, the road-level matching result of the initial last trajectory point is still used as the fusion matching result.
[0086] It is understandable that the first preset number and the second preset number can be determined according to actual needs and are not limited here.
[0087] In some embodiments, the operation of obtaining the fusion matching result can be performed by the distribution module 420 in the above-mentioned yaw confirmation system 400, and at the same time as the yaw confirmation result is sent to the yaw initiation module 410, the fusion matching result can also be sent to the yaw initiation module 410, so that the yaw confirmation result together with the fusion matching result is sent to the client to replan the route.
[0088] In some embodiments, as Figure 5 As shown, a navigation device 500 is provided, including: an execution unit 510, configured to, in response to receiving a deviation confirmation request, perform road-level map matching and lane-level map matching based on a trajectory point sequence in the deviation confirmation request, so as to obtain a road-level matching result and a lane-level matching result respectively, wherein the lane-level matching result includes a lane-level path matched by the trajectory point sequence; a judgment unit 520, configured to judge whether the trajectory point sequence meets a preset quality requirement based on a trajectory point distribution feature of the trajectory point sequence relative to the lane-level path; an updating unit 530, configured to, in response to judging that the trajectory point sequence meets the preset quality requirement and in response to determining that the lane-level matching result and the road-level matching result are inconsistent, update the road-level matching result based on the lane-level matching result; and a first acquisition unit 540, configured to obtain a deviation confirmation result based on the updated road-level matching result and the navigation route.
[0089] The operations performed by units 510 to 540 in the navigation device 500 and the technical effects that can be achieved are similar to steps S201 to S204 in the navigation method, and are not described in detail here.
[0090] In some embodiments, the trajectory point distribution feature may include a first feature corresponding to each trajectory point in the trajectory point sequence, and the first feature includes at least one of the following: the distance between the trajectory point and the lane-level path and the angle between the trajectory line formed by the trajectory point sequence at the trajectory point and the lane-level path.
[0091] In some embodiments, the judgment unit can be further configured to: judge whether the trajectory point sequence meets the preset quality requirements based on the trajectory point distribution characteristics and the second feature of the last trajectory point in the trajectory point sequence, wherein the second feature includes at least one of the matching confidence of the last trajectory point and the lane matching the last trajectory point in the lane-level path, the lane attributes of the lane, and the connectivity between the last trajectory point and the previous trajectory point.
[0092] In some embodiments, determining whether the lane-level matching result and the road-level matching result are consistent may include: determining whether, at the last trajectory point in the trajectory point sequence, the lane matched by the last trajectory point is located on the road matched by the last trajectory point, so as to determine whether the lane-level matching result and the road-level matching result are consistent.
[0093] In some embodiments, the first acquisition unit may include: an input subunit, configured to input the updated road-level matching result and the navigation route into the yaw detection model to obtain a first yaw identification result output by the yaw detection model; a first judgment subunit, configured to judge whether the road-level path corresponding to the initial road-level matching result is located on the navigation route to obtain a second yaw identification result; a second judgment subunit, configured to judge whether the lane-level path is located on the navigation route to obtain a third yaw identification result; and a first determination subunit, configured to determine a yaw confirmation result based on the first yaw identification result, the second yaw identification result, and the third yaw identification result.
[0094] In some embodiments, the first determination subunit may be further configured to: in response to any one of the first yaw identification result, the second yaw identification result, and the third yaw identification result indicating that the navigated object has not deviated from the navigation route, determine the yaw confirmation result as that the navigated object has not deviated; otherwise, determine the yaw confirmation result as that the navigated object has deviated.
[0095] In some embodiments, the navigation device may further include: a second acquisition unit configured to acquire a deviation confirmation result based on an initial road-level matching result and a navigation route in response to determining that the trajectory point sequence does not meet a preset quality requirement.
[0096] In some embodiments, the above-mentioned navigation device may further include: a determination unit, configured to determine a fusion matching result based on the lane-level matching result and the road-level matching result in response to a deviation confirmation result indicating that the navigated object has deviated from the navigation route, and in response to a judgment that the trajectory point sequence meets the preset quality requirements, wherein the fusion matching result is used to indicate the road on which the navigated object is currently located, and the fusion matching result is used for replanning the navigation route.
[0097] In some embodiments, the determination unit can be configured to: obtain a first preset number of first candidate results with the highest matching confidence for the last trajectory point in the trajectory point sequence in the road-level matching results; obtain a second candidate result with the highest matching confidence for each trajectory point in the last second preset number of trajectory points in the trajectory point sequence in the lane-level matching results; perform the first operation on each trajectory point in the second preset number of trajectory points, starting from the last trajectory point, in sequence until a fusion matching result is obtained or the first operation is completed for each trajectory point in the second preset number of trajectory points, wherein the first operation includes: in response to determining that the first preset number of first candidate results contains a third candidate result, determining the third candidate result as the fusion matching result, wherein the third candidate result is consistent with the second candidate result corresponding to the trajectory point; and in response to not obtaining a fusion matching result after completing the first operation for each trajectory point in the second preset number of trajectory points, determining the candidate result with the highest matching confidence among the first preset number of first candidate results as the fusion matching result.
[0098] In some embodiments, the navigation device may further include: a sending unit configured to send a deviation confirmation result to a requester of a deviation confirmation request in response to the deviation confirmation result indicating that the navigated object has not deviated from the navigation route.
[0099] In the technical solutions disclosed herein, 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.
[0100] According to an embodiment of the present disclosure, an electronic device, a readable storage medium, and a computer program product are also provided.
[0101] refer to Figure 6 , a block diagram of an electronic device 600 that can serve as a server or client of the present disclosure will now be described, which is an example of a hardware device that can be applied to various aspects of the present disclosure. The electronic device is intended to represent various forms of digital electronic computer devices, 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 processing, cellular phones, smart phones, 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 disclosure described and / or required herein.
[0102] like Figure 6As shown, the electronic device 600 includes a computing unit 601, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 602 or a computer program loaded from a storage unit 608 into a random access memory (RAM) 603. Various programs and data required for the operation of the electronic device 600 can also be stored in the RAM 603. The computing unit 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.
[0103] Multiple components within electronic device 600 are connected to I / O interface 605, including an input unit 606, an output unit 607, a storage unit 608, and a communication unit 609. Input unit 606 can be any type of device capable of inputting information into electronic device 600. Input unit 606 can receive input numeric or character information and generate key signal input related to user settings and / or function control of the electronic device. It may include, but is not limited to, a mouse, keyboard, touch screen, trackpad, trackball, joystick, microphone, and / or remote control. Output unit 607 can be any type of device capable of presenting information, and may include, but is not limited to, a display, a speaker, a video / audio output terminal, a vibrator, and / or a printer. Storage unit 608 may include, but is not limited to, a magnetic disk or an optical disk. Communication unit 609 allows electronic device 600 to exchange information / data with other devices via computer networks such as the Internet and / or various telecommunication networks. It may include, but is not limited to, a modem, a network card, an infrared communication device, a wireless communication transceiver, and / or a chipset, such as a Bluetooth device, an 802.11 device, a WiFi device, a WiMax device, a cellular communication device, and / or the like.
[0104] The computing unit 601 can be a variety of general-purpose and / or specialized processing components with processing and computing capabilities. Some examples of the computing unit 601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units that run machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 601 performs the various methods and processes described above, such as the navigation method described above. For example, in some embodiments, the navigation method described above can be implemented as a computer software program that is tangibly contained in a machine-readable medium, such as the storage unit 608. In some embodiments, part or all of the computer program can be loaded and / or installed on the electronic device 600 via the ROM 602 and / or the communication unit 609. When the computer program is loaded into the RAM 603 and executed by the computing unit 601, one or more steps of the navigation method described above can be performed. Alternatively, in other embodiments, the computing unit 601 can be configured to perform the navigation method described above by any other appropriate means (e.g., by means of firmware).
[0105] 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-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, the at least one input device, and the at least one output device.
[0106] The program code for implementing the method of the present disclosure can be written in any combination of one or more programming languages. These program codes 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 chart and / or block diagram 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.
[0107] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in conjunction with an instruction execution system, device or equipment. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium can include an electrical connection based on one or more lines, 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), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0108] 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).
[0109] 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 having 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.
[0110] 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.
[0111] 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 disclosure can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved. This is not limited herein.
[0112] Although the embodiments or examples of the present disclosure have been described with reference to the accompanying drawings, it should be understood that the above-mentioned methods, systems and devices are merely exemplary embodiments or examples, and the scope of the present invention is not limited by these embodiments or examples, but is only limited by the claims after authorization and their equivalents. Various elements in the embodiments or examples may be omitted or replaced by their equivalents. In addition, the steps may be performed in an order different from that described in this disclosure. Further, the various elements in the embodiments or examples may be combined in various ways. It is important that as technology evolves, many of the elements described herein may be replaced by equivalent elements that appear after this disclosure.
Claims
1. A navigation method, comprising: In response to receiving the yaw confirmation request, performing road-level map matching and lane-level map matching based on the trajectory point sequence in the yaw confirmation request to obtain a road-level matching result and a lane-level matching result respectively, wherein the lane-level matching result includes a lane-level path matched to the trajectory point sequence; determining whether the trajectory point sequence meets a preset quality requirement based on a trajectory point distribution feature of the trajectory point sequence relative to the lane-level path; In response to determining that the trajectory point sequence meets the preset quality requirement, and in response to determining that the lane-level matching result and the road-level matching result are inconsistent, updating the road-level matching result based on the lane-level matching result; and A deviation confirmation result is obtained based on the updated road-level matching result and the navigation route.
2. The method according to claim 1, wherein The trajectory point distribution feature includes a first feature corresponding to each trajectory point in the trajectory point sequence, and the first feature includes at least one of the following: the distance between the trajectory point and the lane-level path and the angle between the trajectory line formed by the trajectory point sequence at the trajectory point and the lane-level path.
3. The method according to claim 1 or 2, wherein: The determining, based on the trajectory point distribution characteristics of the trajectory point sequence relative to the lane-level path, whether the trajectory point sequence meets the preset quality requirements includes: Based on the trajectory point distribution characteristics and a second feature of the last trajectory point in the trajectory point sequence, whether the trajectory point sequence meets the preset quality requirements is determined, wherein the second feature includes at least one of a matching confidence between the last trajectory point and the lane with which the last trajectory point in the lane-level path matches, a lane attribute of the lane, and connectivity between the last trajectory point and previous trajectory points.
4. The method according to any one of claims 1 to 3, wherein Determining whether the lane-level matching result and the road-level matching result are consistent includes: Determine, at a last trajectory point in the trajectory point sequence, whether a lane matched by the last trajectory point is located on a road matched by the last trajectory point, so as to determine whether the lane-level matching result and the road-level matching result are consistent.
5. The method according to any one of claims 1 to 4, wherein The obtaining of the deviation confirmation result based on the updated road-level matching result and the navigation route includes: Inputting the updated road-level matching result and the navigation route into a yaw detection model to obtain a first yaw recognition result output by the yaw detection model; determining whether a road-level path corresponding to the initial road-level matching result is located on the navigation route to obtain a second deviation recognition result; determining whether the lane-level path is located on the navigation route to obtain a third yaw recognition result; and The yaw confirmation result is determined based on the first yaw identification result, the second yaw identification result, and the third yaw identification result.
6. The method according to claim 5, wherein: The determining the yaw confirmation result based on the first yaw identification result, the second yaw identification result, and the third yaw identification result includes: In response to any one of the first deviation identification result, the second deviation identification result, and the third deviation identification result indicating that the navigated object has not deviated from the navigation route, the deviation confirmation result is determined as the navigated object has not deviated; otherwise, the deviation confirmation result is determined as the navigated object has deviated.
7. The method according to any one of claims 1 to 4, further comprising: In response to determining that the trajectory point sequence does not meet the preset quality requirement, a deviation confirmation result is obtained based on the initial road-level matching result and the navigation route.
8. The method according to any one of claims 1 to 7, further comprising: In response to the deviation confirmation result indicating that the navigated object has deviated from the navigation route, and in response to determining that the trajectory point sequence meets the preset quality requirements, a fusion matching result is determined based on the lane-level matching result and the road-level matching result, wherein the fusion matching result is used to indicate the road on which the navigated object is currently located, and the fusion matching result is used for replanning the navigation route.
9. The method according to claim 8, wherein Determining a fusion matching result based on the lane-level matching result and the road-level matching result includes: Obtaining, from the road-level matching results, a first preset number of first candidate results having the highest matching confidence of the last trajectory point in the trajectory point sequence; In the lane-level matching results, obtaining a second candidate result with the highest matching confidence for each trajectory point in the last second preset number of trajectory points in the trajectory point sequence; For each trajectory point in the second preset number of trajectory points, starting from the last trajectory point, the first operation is performed in sequence until the fusion matching result is obtained or the first operation is completed for each trajectory point in the second preset number of trajectory points, wherein the first operation includes: In response to determining that the first preset number of first candidate results includes a third candidate result, determining the third candidate result as a fusion matching result, wherein the third candidate result is consistent with the second candidate result corresponding to the trajectory point; and In response to the fact that the fusion matching result is not obtained after the first operation is completed for each trajectory point in the second preset number of trajectory points, the candidate result with the highest matching confidence among the first preset number of first candidate results is determined as the fusion matching result.
10. The method according to any one of claims 1 to 7, further comprising: In response to the deviation confirmation result indicating that the guided object has not deviated from the navigation route, the deviation confirmation result is sent to the deviation confirmation request.
11. A navigation device comprising: an execution unit configured to, in response to receiving a deviation confirmation request, perform road-level map matching and lane-level map matching based on a trajectory point sequence in the deviation confirmation request, so as to obtain a road-level matching result and a lane-level matching result respectively, wherein the lane-level matching result includes a lane-level path matched by the trajectory point sequence; a judging unit configured to judge whether the trajectory point sequence meets a preset quality requirement based on a trajectory point distribution feature of the trajectory point sequence relative to the lane-level path; an updating unit configured to, in response to determining that the trajectory point sequence meets the preset quality requirement and in response to determining that the lane-level matching result and the road-level matching result are inconsistent, update the road-level matching result based on the lane-level matching result; and The first acquiring unit is configured to acquire a deviation confirmation result based on the updated road-level matching result and the navigation route.
12. An electronic device comprising: at least one processor; as well as a memory communicatively coupled to the at least one processor; in The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 10.
13. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to make a computer execute the method according to any one of claims 1-10.
14. A computer program product comprising a computer program, wherein When the computer program is executed by a processor, the method according to any one of claims 1 to 10 is implemented.