Navigation method and related device
By identifying and constructing 3D landmark maps, navigation routes are planned based on landmark type and location, solving the problem of finding vehicles in complex environments, achieving fast and accurate navigation guidance, and improving the vehicle finding experience.
Patent Information
- Application Number
- CN202411092612.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-07
- Publication Date
- 2026-02-10
AI Technical Summary
Users often struggle to quickly and accurately locate their vehicles in complex environments such as parking lots, as existing navigation software cannot effectively utilize GPS signals or internal building routes for navigation.
By identifying landmarks that users pass through, a 3D landmark map is created, and navigation routes are planned based on landmark type and location. The system uses sensor data and wireless signals to identify landmarks, construct a 3D landmark map, and plan navigation routes without relying on building interior maps or crowdsourced data.
It enables users to quickly and accurately find their vehicles in complex environments, improving the vehicle-finding experience and enhancing the accuracy and efficiency of navigation routes.
Smart Images

Figure CN121498677A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of electronic technology, and in particular to navigation methods and related devices. Background Technology
[0002] With economic development and automotive technology advancements, more and more users are driving. However, some parking lots are large and have complex routes, and users' movement trajectories after parking are also complex, such as changing floors (e.g., going up and down stairs, taking elevators), changing buildings, or switching between indoor and outdoor environments. Therefore, when users try to find their cars in reverse, they need to remember their original movement trajectory. Consequently, it is difficult for users to find their vehicles quickly and accurately when trying to find them in reverse.
[0003] Because indoor GPS signals are often weak, and navigation software typically cannot navigate the internal routes of buildings such as parking lots, shopping malls, and residential buildings, it is impossible to quickly locate a vehicle using navigation software. Currently, how to plan reverse navigation routes for users to find their vehicles accurately and quickly requires further research. Summary of the Invention
[0004] This application provides a navigation method and related apparatus that can identify landmarks passed by the user, establish a three-dimensional landmark map, and then plan a navigation route based on the landmarks in the three-dimensional landmark map. This effectively guides the user to quickly find the vehicle based on the landmarks in the three-dimensional landmark map, improving the user's vehicle search experience.
[0005] In a first aspect, this application provides a navigation method applied to a terminal device, the method comprising: determining the parking location of a vehicle when a user leaves the vehicle; determining the real-time location of the user after leaving the vehicle based on first sensor data from at least one sensor; identifying the landmark type and location of a landmark passed by the user based on second sensor data from at least one sensor and / or a received first wireless signal, wherein the location of the landmark indicates the floor on which the landmark is located; constructing a three-dimensional landmark map based on the identified landmark type and location, wherein the three-dimensional landmark map indicates at least one floor of the building passed by the user and landmark information of the landmarks on each floor; receiving a first input operation; and, in response to the first input operation, planning a first navigation route based on the three-dimensional landmark map; wherein the starting point of the first navigation route is the user's current location and the ending point is the parking location, and the first navigation route sequentially passes through one or more landmarks in the three-dimensional landmark map.
[0006] Implementing the embodiments of this application allows for recording the vehicle's parking location, identifying the landmark types and locations passed by the user, and thus establishing a 3D landmark map. The navigation route planned based on the 3D landmark map passes through some or all of the landmarks in the map, ending at the aforementioned parking location. This navigation route indicates the landmarks that need to be passed to find the vehicle, thus more effectively guiding the user to locate their vehicle and improving the user's car-finding experience. The navigation method provided in this application plans navigation routes without relying on internal maps of buildings or crowdsourced data from fingerprint positioning; it uses a 3D landmark map to determine one or more sequentially arranged landmarks that allow the user to reach the parking location from their current location. It is understood that the planned navigation route may not be the same as the trajectory corresponding to the user's historical 3D path.
[0007] In one implementation, the method further includes: receiving a second input operation; and responding to the second input operation by performing navigation based on a first navigation route. Implementing embodiments of this application allows navigation along a first navigation route, guiding the user to find the vehicle along landmarks within that route.
[0008] In one implementation, the method further includes: generating a three-dimensional historical trajectory of the user using the user's real-time location acquired based on data from a first sensor; the starting point of the three-dimensional historical trajectory is the parking location, and the ending point is the user's current location. The user's position at a specific moment in the three-dimensional historical trajectory indicates the user's two-dimensional position on a horizontal plane and the floor the user is on at that specific moment. Implementing this embodiment allows for the detection of the user's real-time location and the acquisition of the user's three-dimensional historical trajectory. The above-mentioned response to the first input operation, planning a first navigation route based on the three-dimensional landmark map, includes: responding to the first input operation, planning a first navigation route based on the three-dimensional historical trajectory and the three-dimensional landmark map. Implementing this embodiment allows for the real-time detection of the user's three-dimensional historical trajectory after leaving the parking location. The terminal device can combine the three-dimensional historical trajectory with the vehicle-finding navigation route. For example, combining the three-dimensional historical trajectory allows for the planning of a return route or a simplified return route. For example, combining the three-dimensional historical trajectory allows for the determination of the route between the parking location and the starting landmark in the navigation route; combining the three-dimensional historical trajectory allows for the determination of the route between adjacent landmarks in the navigation route; combining the three-dimensional historical trajectory allows for the determination of the route between the user's current location and the ending landmark in the navigation route.
[0009] In one implementation, the method further includes: inferring the landmark type and location of landmarks in the building that the user has not visited, based on the identified landmarks passed by the user; the 3D landmark map also indicates the landmark information of the landmarks inferred by the terminal device that the user has not visited. Implementing the embodiments of this application allows for the inference of landmarks that the current building may have that the user has not visited, based on the already identified landmarks; the inferred landmarks can further improve the 3D landmark map, thereby facilitating the provision of faster navigation routes to users based on the 3D landmark map.
[0010] In one implementation, identifying the landmark type and location of a landmark traversed by a user based on second sensor data from at least one sensor and / or the received first wireless signal includes: when identifying the landmark type of a first landmark traversed by the user based on the second sensor data from at least one sensor and / or the received first wireless signal, using the user's current location obtained based on the first sensor data as the location of the first landmark. Implementing embodiments of this application allows for the detection of a user's real-time location after leaving the vehicle, and when a landmark traversed by the user is identified, using the user's current location as the location of the landmark.
[0011] In one implementation, when a user passes through different landmarks, the data characteristics of the second sensor data and / or the signal characteristics of the first wireless signal detected by the terminal device are different. The terminal device stores identification conditions corresponding to different landmark types. The identification conditions corresponding to the first landmark type indicate the data characteristics of the second sensor data and / or the signal characteristics of the first wireless signal detected at the landmark of the first landmark type. The above-mentioned identification of the landmark type of the landmark passed by the user based on the second sensor data of at least one sensor and / or the received first wireless signal includes: when the identification conditions of the first landmark type are met, identifying the landmark of the first landmark type currently passed. Implementing the embodiments of this application, the landmarks passed by the user can be accurately identified without relying on pre-collected crowdsourced data and related internal maps of buildings, which facilitates the subsequent planning of car-finding navigation routes based on the landmarks.
[0012] In one implementation, identifying the landmark type and location of a landmark traversed by a user based on second sensor data from at least one sensor and / or the received first wireless signal includes: identifying the landmark type and location of a first landmark traversed by the user based on second sensor data from at least one sensor and / or the received first wireless signal. The method further includes: when the current location is obtained as a first positioning point using fingerprint positioning crowdsourced data, correcting the position of the first landmark based on the displacement between the first positioning point and the user's current position determined based on the first sensor data, and recording the corrected position of the first landmark; when the corrected positions of the first landmark multiple times meet the convergence condition, the latest corrected position is taken as the position of the first landmark. Implementing this embodiment, fingerprint positioning crowdsourced data can be used to correct the position of a landmark, providing accuracy and facilitating effective navigation guidance for users based on the landmark. Furthermore, the fingerprint positioning crowdsourced data is only used to correct the location of the landmark; therefore, only the location fingerprint of the landmark's location is required. The crowdsourced data does not need to cover a larger location range, avoiding the waste of manpower and resources in collecting large amounts of crowdsourced data.
[0013] In one implementation, the landmark types include some or all of the following: landmarks for cross-floor use, landmarks for cross-building use, and landmarks for special building structures; landmarks for cross-floor use include some or all of the following: elevators, escalators, stairs, and cross-floor ramps; landmarks for cross-building use include some or all of the following: cross-building sky bridges, outdoor ground-level cross-building areas, indoor cross-building areas, and parking lot entrances / exits between different buildings; landmarks for special building structures include some or all of the following: atrium areas within buildings, building parking lot entrances, and mezzanine parking lot entrances. The vehicle search scenario in this application can involve cross-building, cross-floor, and special building structures.
[0014] In one implementation, the method further includes: responding to a first input operation, planning at least one navigation route, wherein the at least one navigation route includes a first navigation route, and the at least one navigation route includes some or all of the following: the shortest time navigation route, the shortest distance navigation route, the original route return navigation route, and a simplified original route return navigation route; the original route return navigation route and the three-dimensional historical trajectory have the same route but indicate opposite movement directions; obtaining the simplified original route return navigation route includes: replacing the redundant routes in the original route return navigation route with routes with shorter distances / shorter time, and deleting redundant routes in the original route return navigation route. Implementing the embodiments of this application, based on a three-dimensional landmark map, not only can the original route return navigation route be planned, but also simplified original route return navigation routes, the shortest time navigation route, and the shortest distance navigation route can be planned.
[0015] In one implementation, the above-mentioned response to the first input operation to plan a first navigation route includes: obtaining one or more navigation routes from the user's current location to the parking location based on a 3D landmark map, and selecting a first navigation route from the one or more navigation routes; the first navigation route is the shortest distance navigation route or the navigation route with the shortest travel time. Implementing the embodiments of this application, based on a 3D landmark map, a navigation route with the shortest travel time or the shortest distance can be planned.
[0016] In one implementation, obtaining one or more navigation routes from the user's current location to the parking location based on a 3D landmark map includes: obtaining one or more landmark routes from a starting landmark to a destination landmark based on the 3D landmark map; a landmark route is a route generated by sequentially connecting multiple landmarks in the 3D landmark map; the starting landmark is the landmark on the floor where the user is currently located; and the destination landmark is the landmark on the parking floor where the parking location is located; obtaining the navigation routes corresponding to each of the one or more landmark routes; when the starting landmark and destination landmark of one of the one or more landmark routes are different, the corresponding navigation routes include: the route from the user's current location to the starting landmark, the landmark route, and the route from the destination landmark to the parking location; when the starting landmark and destination landmark of one of the one or more landmark routes are the same, the corresponding navigation routes include: the route from the user's current location to the starting landmark, and the route from the destination landmark to the parking location. By implementing the embodiments of this application, the navigation routes corresponding to multiple landmark routes that allow the user to reach the parking location from the current location can be determined using a 3D landmark map, and then the navigation route with the shortest travel time or the shortest distance can be selected.
[0017] In one implementation, the starting landmark is the landmark closest to the user on the current floor of the 3D landmark map, and the ending landmark is the landmark closest to the parking location on the parking floor of the 3D landmark map; or, the starting landmark is the landmark the user last passed on the current floor in the 3D historical trajectory, and the ending landmark is the first landmark the user passed on the parking floor in the 3D historical trajectory; or, the starting landmark is any landmark on the current floor of the 3D landmark map, and the ending landmark is any landmark on the parking floor of the 3D landmark map; or, the starting landmark is any landmark on the current floor of the 3D landmark map, and the ending landmark is the first landmark passed on the parking floor in the 3D historical trajectory; or, the starting landmark is the first landmark passed on the parking floor in the 3D historical trajectory, and the ending landmark is the first landmark used by the user when switching from the parking floor to other floors in the 3D historical trajectory.
[0018] In one implementation, obtaining one or more landmark routes from a starting landmark to an ending landmark includes: determining one or more landmark sequences from the starting landmark to the ending landmark based on a landmark topology map corresponding to a 3D landmark map; the landmark topology map indicates all landmarks in the 3D landmark map, and the next landmark that each landmark can reach; a landmark sequence indicates the landmarks sequentially traversed from the starting landmark to the ending landmark, wherein the one or more landmark sequences include a first landmark sequence; and sequentially connecting the routes between adjacent landmarks in the first landmark sequence to obtain the landmark route corresponding to the first landmark sequence. Implementing the embodiments of this application, a 3D landmark map is used to determine multiple landmark sequences that allow a user to reach a parking location from their current location.
[0019] In one implementation, for two adjacent preset points in the first navigation route, if the three-dimensional historical trajectory includes the trajectory between the two preset points, then the trajectory between the two preset points in the three-dimensional historical trajectory is used as the route between the two preset points in the first navigation route; if the three-dimensional historical trajectory does not include the trajectory between the two preset points, then the straight line route between the two preset points is used as the route between the two preset points in the first navigation route. The straight line route is used to indicate the orientation and straight-line distance of the next landmark. The preset points in the first navigation route sequentially include: the user's current location, the landmarks arranged in sequence, and the parking location. By implementing the embodiments of this application, the route between adjacent preset points in the navigation route can be obtained based on the three-dimensional historical trajectory; if the route between adjacent preset points cannot be obtained based on the three-dimensional historical trajectory, the straight line route between adjacent preset points can be used as part of the navigation route.
[0020] In one implementation, the terminal device stores an interior map of a building corresponding to a 3D landmark map; the route between two adjacent preset points in the first navigation route is the shortest route between the two preset points determined based on the path in the building interior map; the preset points in the first navigation route sequentially include: the user's current location, sequentially arranged landmarks, and parking locations. By implementing the embodiments of this application, the shortest route between adjacent preset points in the navigation route can be obtained by combining the building interior map, thus providing users with more convenient navigation guidance.
[0021] In one implementation, the second sensor data of the at least one sensor includes sensor data from some or all of the following sensors: barometric pressure sensor, accelerometer, gyroscope sensor, magnetometer, IMU; the first wireless signal includes some or all of the following: WiFi signal, GPS signal, cellular signal, Bluetooth signal, and signal from a beacon device corresponding to a landmark.
[0022] In one implementation, identifying the landmark type of a landmark traversed by a user based on second sensor data from at least one sensor and / or the received first wireless signal includes: using an XGBoost classifier to identify the landmark type of the landmark traversed by the user, wherein the output of the XGBoost classifier is the identified landmark type, and the input is the second sensor data from at least one sensor and / or the received first wireless signal.
[0023] In one implementation, identifying the landmark type and location of a landmark traversed by a user based on second sensor data from at least one sensor and / or received first wireless signals includes: detecting a signal from a first beacon device via a first near-field communication technology, wherein the signal from the first beacon device indicates the landmark type of the first landmark, and the first beacon device is deployed on the first landmark; and identifying the landmark type of the first landmark based on the signal from the first beacon device. Implementing embodiments of this application allows beacon devices to be pre-deployed at various landmarks to facilitate accurate identification and location of landmarks by the terminal device.
[0024] In one implementation, identifying the landmark type and location of a landmark traversed by a user based on second sensor data from at least one sensor and / or the received first wireless signal includes: when a first trigger condition is detected, identifying a landmark type for crossing floors based on second sensor data from at least one sensor and / or the received first wireless signal; the first trigger condition is used to indicate a change in the user's floor; when a second trigger condition is detected, identifying a landmark type for crossing buildings based on second sensor data from at least one sensor and / or the received first wireless signal; the second trigger condition is used to indicate a change in the user's building.
[0025] The first triggering condition includes one or more of the following: the air pressure change detected by the air pressure sensor is greater than the air pressure threshold; the altitude change of the terminal device is greater than the altitude threshold; the air pressure change process detected by the air pressure sensor follows the pattern of "from stabilizing to a large change and then back to stabilizing". The second triggering condition includes one or more of the following: the first wireless signal of the current building continuously weakens, while the first wireless signal of another building continuously strengthens.
[0026] In one implementation, the floor where the user is located is determined based on one or more of the following: fourth sensor data from at least one sensor, a received second wireless signal, and relevant information about the building being entered; the fourth sensor data from at least one sensor includes one or more of the following: air pressure data detected by a barometer, acceleration detected by an accelerometer, and angular velocity detected by a gyroscope sensor; the relevant information about the building being entered includes one or more of the following: the number of floors in the building and the height of each floor.
[0027] In one implementation, before detecting that the user has left the vehicle, the method further includes: the terminal device activating satellite positioning to obtain the user's real-time location; when the satellite signal is too weak to perform satellite positioning, using the most recently obtained user location as the starting point, and employing a second positioning algorithm based on third sensor data from at least one sensor to obtain the user's real-time location; determining the vehicle's parking location when detecting that the user has left the vehicle includes: determining the vehicle's parking location based on the user's real-time location obtained from the third sensor data. Implementing this embodiment allows for the location of the vehicle's actual parking location by combining the last satellite positioning location with sensor data indicating vehicle-related movement information. The second positioning algorithm may include an inertial navigation algorithm.
[0028] In one implementation, determining the vehicle's parking location upon detecting a user leaving the vehicle includes: using an initial virtual coordinate as a starting point, and employing a first positioning algorithm based on first sensor data from at least one sensor, calculating the virtual coordinates of the user's real-time location after leaving the vehicle; acquiring a first historical trajectory traversed by the user based on the virtual coordinates, where the starting point of the first historical trajectory is the initial virtual coordinates and the ending point is the virtual coordinates of the user's real-time location; collecting a signal fingerprint, performing fingerprint positioning based on the collected signal fingerprint and crowdsourced fingerprint positioning data, and determining whether the user is at the fingerprint positioning location point; determining the first location point reached by the user after leaving the vehicle based on the collected first signal fingerprint and the crowdsourced fingerprint positioning data; and correcting the virtual coordinates in the first historical trajectory to actual coordinates based on the first location point; the starting point of the corrected first historical trajectory is the parking location, and the ending point is the first location point. Implementing this embodiment, in scenarios without satellite positioning, the vehicle's movement trajectory is obtained starting from the virtual coordinates of the parking location; then, based on the actual location point of the fingerprint positioning, the virtual coordinates of the parking location in the movement trajectory are corrected to actual coordinates.
[0029] In one implementation, a first time error exists between the detected moment when the user leaves the vehicle and the actual moment the user leaves the vehicle. When the user leaves the vehicle at the first moment, the terminal device records a second historical trajectory of the user, which includes the user's movement trajectory after leaving the vehicle and before the user's departure is detected. After detecting that the user has left the vehicle, the method further includes: determining a second moment when the user actually left the vehicle based on the first moment when the user left the vehicle and the time error; obtaining the position corresponding to the second moment in the second historical trajectory, and correcting the vehicle's parking position to the position corresponding to the second moment. By implementing the embodiments of this application, the parking position can be corrected based on the time error of detecting the user leaving the vehicle, thereby improving the accuracy of the parking position.
[0030] In one implementation, the method further includes: acquiring a signal fingerprint; performing fingerprint positioning based on the acquired signal fingerprint and crowdsourced fingerprint positioning data to determine whether the user is at the fingerprint positioning location; after determining the user's real-time location after leaving the vehicle, the method further includes: at a third moment, determining that the user has arrived at a second positioning point based on the acquired first signal fingerprint and the crowdsourced fingerprint positioning data; and correcting the user's real-time location at the second moment in the three-dimensional historical trajectory to the second positioning point. By implementing the embodiments of this application, when using sensor data to detect the user's real-time location, the detected user's location can be corrected based on fingerprint positioning, improving the accuracy of the recorded user's location, and thus facilitating the subsequent provision of accurate navigation guidance to the user.
[0031] In one implementation, the method further includes: performing translational correction on a third historical trajectory in the three-dimensional historical trajectory based on a second positioning point and the displacement of the user at the second time moment obtained from first sensor data; the third historical trajectory is the trajectory within the most recent first time period, the trajectory within the most recent first movement distance, or the trajectory between the position at the second time moment and a previous fixed point in the three-dimensional historical trajectory; wherein, the position of the user at the second time moment in the three-dimensional historical trajectory is corrected to the second positioning point. By implementing the embodiments of this application, when detecting the user's real-time position using sensor data, the detected three-dimensional historical trajectory of the user can be corrected based on fingerprint positioning, improving the accuracy of the recorded three-dimensional historical trajectory of the user, thereby facilitating the provision of accurate navigation guidance to the user subsequently.
[0032] In one implementation, the method further includes: after determining the user's real-time location after leaving the vehicle, the method further includes: at a third moment, obtaining the user's first location using satellite positioning; and correcting the user's real-time location in the three-dimensional historical trajectory at the third moment to the first location. By implementing the embodiments of this application, when detecting the user's real-time location using sensor data, satellite positioning can be used to correct the detected user's location, improving the accuracy of the recorded user's location, and thus facilitating the provision of accurate navigation guidance to the user subsequently.
[0033] Secondly, embodiments of this application provide a terminal device, the electronic device including: a processor and a memory, the memory being coupled to the processor, the memory being used to store computer program code, the computer program code including computer instructions, and when the processor reads the computer instructions from the memory, causing the terminal device to execute the navigation method described in the second aspect.
[0034] Thirdly, embodiments of this application provide a computer storage medium including computer instructions, which, when executed on a terminal device, cause a communication device to perform the navigation method in any of the possible implementations of any of the above aspects.
[0035] Fourthly, embodiments of this application provide a computer program product that, when run on a computer, causes the computer to execute the navigation method in any of the possible implementations of any of the above aspects. Attached Figure Description
[0036] Figure 1A and Figure 1B This application provides a schematic diagram of the system architecture of a communication system.
[0037] Figure 2 This is a schematic diagram of the structure of a terminal device provided in an embodiment of this application;
[0038] Figure 3 A flowchart of a navigation method provided in an embodiment of this application;
[0039] Figures 4A to 4H The relevant user interface for the navigation method provided in the embodiments of this application;
[0040] Figure 5 A flowchart of a navigation method provided in an embodiment of this application;
[0041] Figure 6A A three-dimensional landmark map and a three-dimensional historical trajectory are provided for embodiments of this application;
[0042] Figure 6BA flowchart illustrating a method for identifying landmarks provided in this application embodiment;
[0043] Figure 6C A flowchart illustrating the correction of landmark locations is provided for an embodiment of this application.
[0044] Figures 7A to 7F A schematic diagram illustrating a method for correcting the location of a landmark, as provided in an embodiment of this application.
[0045] Figures 8A to 8F This is a schematic diagram illustrating the construction of a three-dimensional landmark map, provided as an embodiment of this application.
[0046] Figure 9 A landmark topology map provided for embodiments of this application;
[0047] Figure 10 This is a flowchart illustrating a vehicle navigation route planning method provided in an embodiment of this application. Detailed Implementation
[0048] The technical solutions in the embodiments of this application will be clearly and thoroughly described below with reference to the accompanying drawings. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B; the word "and / or" in the text is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Furthermore, in the description of the embodiments of this application, "multiple" refers to two or more than two.
[0049] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as implying or suggesting relative importance or implicitly indicating the number of indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature, and in the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more.
[0050] The term "user interface (UI)" used in the following embodiments of this application refers to the medium interface through which an application or operating system interacts and exchanges information with the user. It realizes the conversion between the internal form of information and the form that the user can accept. The user interface is source code written in a specific computer language such as Java or Extensible Markup Language (XML). The interface source code is parsed and rendered on the electronic device, ultimately presenting content that the user can recognize. A common form of user interface is the graphical user interface (GUI), which refers to a user interface related to computer operation displayed graphically. It can be visible interface elements such as text, icons, buttons, menus, tabs, text boxes, dialog boxes, status bars, navigation bars, and widgets displayed on the screen of an electronic device.
[0051] The technical concepts involved in this application are introduced below. Crowdsourced fingerprint positioning data involves collecting signal fingerprints of specific signals at different locations in an indoor environment, and correlating these signal fingerprints with their corresponding locations. A set of data consisting of the signal fingerprint and its corresponding location is called a location fingerprint. Crowdsourced fingerprint positioning data for a specific building includes location fingerprints of multiple locations within that building. This crowdsourced fingerprint positioning data can be stored in a positioning server. The specific signals include some or all of the following: wireless signals (e.g., cellular signals, Wi-Fi signals, Bluetooth signals), geomagnetic signals, etc. The signal fingerprint can specifically include some or all of the following: signal strength, a unique identifier of the signal source (e.g., a media access control address), and the floor where the signal source is located. In one implementation, the signal fingerprint is only the signal fingerprint of a Wi-Fi signal, and the crowdsourced data is crowdsourced data for Wi-Fi fingerprint positioning. This application does not specifically limit how the crowdsourced data is obtained.
[0052] Based on the specified location of crowdsourced data, electronic devices submit a signal fingerprint collected at their current location to a location server. The location server matches this fingerprint with the location fingerprints in the crowdsourced data, and uses the location corresponding to the successfully matched fingerprint as the user's current location. In one implementation, a successful match is determined if the similarity between the signal fingerprint collected at the current location and the signal fingerprint in location fingerprint 1 is greater than a preset value. When using crowdsourced data for location, electronic devices can also submit the collected location fingerprints to the aforementioned location server to update the crowdsourced data.
[0053] Cross-building refers to moving from one building to another. Cross-building can be achieved through specific cross-building areas, such as sky bridges, indoor building transition areas, and outdoor building transition areas.
[0054] Crossing floors refers to a user switching floors, such as going down to a lower floor or going up to a higher floor.
[0055] Motion state: A user's motion state can include walking, running, walking up / down stairs, etc. In different motion states, the user's motion characteristics (e.g., gait, stride length, direction of movement) are different, therefore the data characteristics of the sensor data detected by the user's portable terminal device 100 are different. In this embodiment, a specific motion state recognition algorithm can be used to determine whether the user is walking, walking on the same floor, walking upstairs, or walking downstairs based on the detected sensor data. The motion state recognition algorithm described above is not specifically limited here.
[0056] Pedestrian dead reckoning (PDR) is a method for inferring the distance and direction of a pedestrian's movement based on the characteristics of human walking dynamics. It typically calculates the user's walking trajectory and real-time location based on stride detection, stride length estimation, and heading estimation. PDR is usually implemented using sensors such as accelerometers, magnetometers, and gyroscopes. This application does not limit the specific implementation of PDR.
[0057] The communication system 10 involved in the navigation method provided in the embodiments of this application will be described below.
[0058] Figure 1A and Figure 1B The system architecture of the communication system 10 provided in an embodiment of this application is illustrated by way of example. Figure 1A and Figure 1B As shown, the communication system 10 includes a target object (e.g., a vehicle 200) that the user wants to navigate to, and a terminal device 100 carried by the user for navigating to find the target object.
[0059] The terminal device 100 can be a mobile phone, tablet computer, handheld computer, laptop computer, ultra-mobile personal computer (UMPC), netbook, or a mobile device such as a cellular phone, personal digital assistant (PDA), augmented reality (AR) device, virtual reality (VR) device, artificial intelligence (AI) device, or wearable device (e.g., smart bracelet). This application embodiment does not impose any special restrictions on the specific type of the terminal device 100.
[0060] The navigation method provided in this application can be applied to reverse vehicle search scenarios. In this scenario, the terminal device 100 can be equipped with a vehicle APP, and users can use the reverse vehicle search navigation function provided by the vehicle APP by performing operations on the terminal device 100 (such as click operation, touch operation, button operation, voice operation, gesture operation, etc.).
[0061] refer to Figure 1A and Figure 1B In the reverse vehicle search scenario, the user, carrying a terminal device 100 (e.g., a mobile phone), drives vehicle 200 into a sheltered area (e.g., a parking lot, shopping mall, residential building, office building, etc.) and parks vehicle 200 in a designated location. Then, the user, carrying terminal device 100, enters the building within the sheltered area and moves around. During this movement, the user can move horizontally on a floor, use designated tools (e.g., stairs, escalators, elevators) to change floors, and leave the current building for another building. When the user returns to search for the vehicle, they can control the vehicle's app to plan a navigation route, which will guide the user to find vehicle 200.
[0062] In this embodiment, the user carries a terminal device 100. The location of the terminal device 100 detected by the terminal device 100 is then considered the user's location, and the movement trajectory of the terminal device 100 is considered the user's movement trajectory. Before the user leaves the vehicle 200, the location of the terminal device 100 detected by the terminal device 100 can be considered both the location of the vehicle 200 and the user's location.
[0063] In a navigation method provided in this application, after a user leaves vehicle 200 and enters a covered area, terminal device 100 (e.g., a mobile phone) can locate the user using only crowdsourced data from Wi-Fi fingerprint positioning, obtain the user's historical trajectory, and then reverse-track the vehicle 200 based on the aforementioned historical trajectory. This method has the following problems: in areas not covered by the crowdsourced data from Wi-Fi fingerprint positioning, the user's location cannot be obtained; therefore, relying solely on crowdsourced data from Wi-Fi fingerprint positioning may not be able to obtain a complete historical trajectory; being able to reverse-track the vehicle 200 along the user's historical trajectory may result in long search times and a poor user experience; users may change floors during their movement, and there are various ways to change floors, such as stairs, escalators, and elevators; the historical trajectory obtained based on crowdsourced data cannot guide users on how to change floors to improve the user experience; collecting crowdsourced data from Wi-Fi fingerprint positioning over a large coverage area requires significant manpower and resources for fingerprint collection.
[0064] In another navigation method provided in this application, after the user leaves the vehicle 200 and enters a covered area, the terminal device 100 (e.g., a mobile phone) can obtain the user's direction of movement and speed using only sensor data, thereby obtaining the user's current location and historical trajectory. The user device then searches for the vehicle 200 in reverse along the aforementioned historical trajectory. This method has the following problems: There are errors in obtaining the user's location using sensor data. As the user's movement distance increases, the location error accumulates, causing the historical trajectory obtained by the user device to gradually deviate from the user's actual movement trajectory, making it difficult for the user to accurately find the vehicle based on the aforementioned historical trajectory; being able to only search for the vehicle 200 in reverse along the user's historical trajectory may result in long search times and a poor user experience.
[0065] This application also provides a navigation method that, based on solving the above-mentioned problems, plans a reverse navigation route for the user to find the vehicle 200, guiding the user to accurately and quickly locate the vehicle 200. In the above navigation method, after the terminal device 100 detects that the user has parked and left the vehicle 200, it can calculate and record the parking position of the vehicle 200. During the user's movement, the terminal device 100 can also use a positioning algorithm 1 (e.g., PDR) to calculate the user's current position in real time based on sensor data, and use sensors to detect changes in the user's height, thereby determining and recording the three-dimensional historical trajectory traversed by the user. While determining the three-dimensional historical trajectory traversed by the user, the terminal device 100 can also detect landmarks traversed by the user, mark the landmarks on the above-mentioned three-dimensional historical trajectory, and construct a three-dimensional landmark map. After the user triggers the reverse vehicle search on the terminal device 100, the terminal device 100 can determine one or more vehicle search navigation routes in the three-dimensional landmark map based on the above-mentioned three-dimensional historical trajectory and three-dimensional landmark map. The vehicle search navigation route may include some or all of the landmarks passed by the above-mentioned three-dimensional historical trajectory. The above-mentioned one or more vehicle search routes may include some or all of the following: the shortest distance navigation route, the shortest time navigation route, the original route return navigation route, and the simplified original route return navigation route. After the user triggers the vehicle search navigation, the terminal device 100 can guide the user to find the vehicle 200 according to the navigation route selected by the user.
[0066] In one embodiment, such as Figure 1A and Figure 1BAs shown, the communication system 10 also includes a satellite 300, which is used for positioning and navigation. Before / after the vehicle 200 enters the building, when the signal strength of the detected satellite signal from the satellite 300 is greater than or equal to a strength threshold of 1, the vehicle 200 and / or the terminal device 100 can use the satellite 300 to obtain its own positioning. The positioning technology used by the satellite 300 is not specifically limited here. For example, the satellite 300 can be a Global Navigation Satellite System (GNSS), which can include the Global Positioning System (GPS), Global Navigation Satellite System (GLONASS), BeiDou Navigation Satellite System (BDS), Galileo Navigation Satellite System (GALILEO), Quasi-Zenith Satellite System (QZSS), and / or Satellite Based Augmentation Systems (SBAS), etc. Subsequent embodiments will use GPS as an example for illustrative purposes.
[0067] In one implementation, after the vehicle 200 enters the building, the vehicle's movement trajectory after entering the sheltered area can be obtained by combining the last positioning of the satellite 300 and the sensor data (such as acceleration) of the vehicle 200 / terminal device 100; this movement trajectory can be used to determine the parking position of the vehicle 200.
[0068] In one implementation, after the user leaves the vehicle 200, at a specific location during the movement (e.g., an outdoor area between buildings or an open area within a building), the terminal device 100 can detect the positioning signal from the satellite 300 to the terminal device 100. Using the positioning signal, the terminal device 100 can calibrate the user's position and historical trajectory determined using sensor data, thereby improving the accuracy of the historical trajectory.
[0069] In one embodiment, such as Figure 1A and Figure 1BAs shown, the communication system 10 also includes at least one fingerprint positioning device 400. The signal emitted by the fingerprint positioning device 400 can be used for fingerprint positioning. The terminal device 100 can acquire crowdsourced fingerprint positioning data, which indicates the correspondence between signal fingerprints of different device clusters and different locations. After the user leaves the vehicle 200, during movement, the wireless signal (e.g., WiFi signal, Bluetooth signal, cellular signal) of the fingerprint positioning device 400 can be detected. The signal fingerprints corresponding to the signals of the multiple fingerprint positioning devices 400 are matched with the location fingerprints in the crowdsourced data. If the match is successful, the coordinates of the location point corresponding to the successfully matched location fingerprint are determined as the current location of the terminal device 100. The crowdsourced data indicates the location coordinates corresponding to the signal fingerprints of the device cluster composed of the multiple fingerprint positioning devices 400. Using the fingerprint positioning location, the terminal device 100 can calibrate the user's current location and historical trajectory.
[0070] The fingerprint positioning device 400 is a device capable of transmitting short-range communication signals or cellular signals for fingerprint positioning, such as a router, Bluetooth device, or base station. For example, the fingerprint positioning device 400 can employ short-range communication technology 1, which can be WiFi, Bluetooth, Ultra Wide Band (UWB), Near Field Communication (NFC), or ZigBee, etc. This application embodiment does not specifically limit the short-range communication technology 1. Subsequent embodiments will exemplify this by using WiFi as the short-range communication technology 1 and crowdsourced data for WiFi fingerprint positioning as the example.
[0071] In some embodiments, such as Figure 1A and Figure 1B As shown, the communication system 10 also includes at least one beacon device 500 for identifying landmarks. For example, when the terminal device 100 approaches the beacon device 500 identifying landmark 1, it can scan the signal of the beacon device 500 and obtain the location of landmark 1 based on the signal. The beacon device 500 can be deployed at a fixed location on the landmark (e.g., an elevator) or in a specific device (e.g., a router) near the landmark. The beacon device 500 uses short-range communication technology 2, which can be Bluetooth communication (e.g., Classic Bluetooth (Basic Rate / Enhanced Data Rate, BR / EDR) or Bluetooth Low Energy (BLE)). This application embodiment does not specifically limit the short-range communication technology 2.
[0072] In practical applications of this application, the type, deployment method, and short-range communication technology of the fingerprint positioning device 400 and the beacon device 500 can be determined according to application needs and application scenarios.
[0073] It should be understood that Figure 1A and Figure 1B The schematic diagram of the communication system provided in this application is merely a system structure diagram of the communication system and does not constitute a specific limitation on the communication system 10. The communication system 10 may include more or fewer devices than shown in the figure. For example, it may also include wireless relay devices and wireless backhaul devices (not shown in the figure), which are not limited here.
[0074] It should be noted that the navigation method and related devices in this application are not limited to the reverse vehicle search scenario. They can also be applied to other scenarios for finding target objects, such as in large shopping malls, office buildings, stations, parking lots, amusement parks, schools and other buildings and facilities. When users are searching for the storage location of a target device or item, the navigation route is planned and the user is guided back to the storage location according to the navigation route. For the specific implementation of other use scenarios, please refer to the relevant embodiments of the reverse vehicle search scenario, which will not be elaborated further.
[0075] The following section uses terminal device 100 as an example to introduce the structure of electronic equipment in communication system 10.
[0076] Figure 2 An exemplary schematic diagram of a terminal device 100 provided in an embodiment of this application is shown.
[0077] Terminal device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone jack 170D, a sensor module 180, buttons 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0078] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the terminal device 100. In other embodiments of this application, the terminal device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0079] Processor 110 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). These different processing units may be independent devices or integrated into one or more processors.
[0080] The controller can generate operation control signals based on the instruction opcode and timing signals to complete the control of instruction fetching and execution.
[0081] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or that are used repeatedly. If the processor 110 needs to use the instruction or data again, it can retrieve it directly from the memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.
[0082] In some embodiments, the processor 110 may include one or more interfaces. Interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.
[0083] The I2C interface is a bidirectional synchronous serial bus, including a serial data line (SDA) and a serial clock line (SCL). In some embodiments, the processor 110 may include multiple I2C buses. The processor 110 can couple to the touch sensor 180K, charger, flash, camera 193, etc., through different I2C bus interfaces. For example, the processor 110 can couple to the touch sensor 180K through the I2C interface, enabling the processor 110 and the touch sensor 180K to communicate through the I2C bus interface, thereby realizing the touch function of the terminal device 100.
[0084] The I2S interface can be used for audio communication. In some embodiments, the processor 110 may include multiple I2S buses. The processor 110 can be coupled to the audio module 170 via the I2S bus to enable communication between the processor 110 and the audio module 170. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 via the I2S interface to enable the function of answering phone calls through a Bluetooth headset.
[0085] The PCM interface can also be used for audio communication, sampling, quantizing, and encoding analog signals. In some embodiments, the audio module 170 and the wireless communication module 160 can be coupled via the PCM bus interface. In some embodiments, the audio module 170 can also transmit audio signals to the wireless communication module 160 via the PCM interface, enabling the function of answering phone calls through a Bluetooth headset. Both the I2S interface and the PCM interface can be used for audio communication.
[0086] The UART interface is a universal serial data bus used for asynchronous communication. This bus can be a bidirectional communication bus. It converts the data to be transmitted between serial and parallel communication. In some embodiments, the UART interface is typically used to connect the processor 110 and the wireless communication module 160. For example, the processor 110 communicates with the Bluetooth module in the wireless communication module 160 via the UART interface to implement Bluetooth functionality. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 via the UART interface to enable music playback through Bluetooth headphones.
[0087] The MIPI interface can be used to connect the processor 110 to peripheral devices such as the display screen 194 and the camera 193. The MIPI interface includes a camera serial interface (CSI) and a display serial interface (DSI). In some embodiments, the processor 110 and the camera 193 communicate via the CSI interface to enable the shooting function of the terminal device 100. The processor 110 and the display screen 194 communicate via the DSI interface to enable the display function of the terminal device 100.
[0088] The GPIO interface can be configured via software. It can be configured as a control signal or a data signal. In some embodiments, the GPIO interface can be used to connect the processor 110 to a camera 193, a display screen 194, a wireless communication module 160, an audio module 170, a sensor module 180, etc. The GPIO interface can also be configured as an I2C interface, an I2S interface, a UART interface, a MIPI interface, etc.
[0089] USB port 130 is a USB standard compliant interface, specifically a Mini USB port, Micro USB port, or USB Type-C port. USB port 130 can be used to connect a charger to charge terminal device 100, and can also be used for data transfer between terminal device 100 and peripheral devices. It can also be used to connect headphones for audio playback. This interface can also be used to connect other electronic devices, such as AR devices.
[0090] It is understood that the interface connection relationships between the modules illustrated in the embodiments of this application are merely illustrative and do not constitute a structural limitation on the terminal device 100. In other embodiments of this application, the terminal device 100 may also adopt different interface connection methods or a combination of multiple interface connection methods as described in the above embodiments.
[0091] The charging management module 140 receives charging input from a charger. The charger can be a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 receives charging input from the wired charger via the USB interface 130. In some wireless charging embodiments, the charging management module 140 receives wireless charging input via the wireless charging coil of the terminal device 100. While charging the battery 142, the charging management module 140 can also supply power to the electronic device via the power management module 141.
[0092] The power management module 141 connects the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140, providing power to the processor 110, internal memory 121, display screen 194, camera 193, and wireless communication module 160, etc. The power management module 141 can also monitor parameters such as battery capacity, battery cycle count, and battery health status (leakage current, impedance). In some other embodiments, the power management module 141 may also be located within the processor 110. In other embodiments, the power management module 141 and the charging management module 140 may be located in the same device.
[0093] The wireless communication function of the terminal device 100 can be implemented through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor and baseband processor, etc.
[0094] Antennas 1 and 2 are used to transmit and receive electromagnetic wave signals. Each antenna in terminal device 100 can be used to cover one or more communication frequency bands. Different antennas can also be multiplexed to improve antenna utilization. For example, antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in conjunction with a tuning switch.
[0095] The mobile communication module 150 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, applied to the terminal device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1. In some embodiments, at least some functional modules of the mobile communication module 150 may be housed in the processor 110. In some embodiments, at least some functional modules of the mobile communication module 150 and at least some modules of the processor 110 may be housed in the same device.
[0096] The modem processor may include a modulator and a demodulator. The modulator modulates the low-frequency baseband signal to be transmitted into a mid-to-high frequency signal. The demodulator demodulates the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After processing by the baseband processor, the low-frequency baseband signal is transmitted to the application processor. The application processor outputs sound signals through an audio device (not limited to speaker 170A, receiver 170B, etc.) or displays images or videos through the display screen 194. In some embodiments, the modem processor may be a separate device. In other embodiments, the modem processor may be independent of the processor 110 and may be housed in the same device as the mobile communication module 150 or other functional modules.
[0097] The wireless communication module 160 can provide solutions for wireless communication applications on the terminal device 100, including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), GNSS, frequency modulation (FM), near-field communication (NFC), and infrared (IR) technologies. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via antenna 2, demodulates and filters the electromagnetic wave signals, and sends the processed signal to processor 110. The wireless communication module 160 can also receive signals to be transmitted from processor 110, frequency modulate and amplify them, and then convert them into electromagnetic waves for radiation via antenna 2.
[0098] In some embodiments, antenna 1 of terminal device 100 is coupled to mobile communication module 150, and antenna 2 is coupled to wireless communication module 160, enabling terminal device 100 to communicate with networks and other devices via wireless communication technology. The wireless communication technology may include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time-Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technology, etc. The GNSS may include GPS, Global Navigation Satellite System (GLONASS), BeiDou Navigation Satellite System (BDS), Quasi-Zenith Satellite System (QZSS), and / or Satellite Based Augmentation Systems (SBAS).
[0099] Terminal device 100 implements display functions through a GPU, display screen 194, and application processor. The GPU is a microprocessor for image processing, connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations and for graphics rendering. Processor 110 may include one or more GPUs, which execute program instructions to generate or modify display information.
[0100] Display screen 194 is used to display images, videos, etc. Display screen 194 includes a display panel. The display panel may be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a miniature LED, a microLED, a quantum dot light-emitting diode (QLED), etc. In some embodiments, terminal device 100 may include one or N displays 194, where N is a positive integer greater than 1.
[0101] Terminal device 100 can perform shooting functions through ISP, camera 193, video codec, GPU, display 194 and application processor.
[0102] The ISP (Image Signal Processor) is used to process data fed back from the camera 193. For example, when taking a picture, the shutter is opened, and light is transmitted through the lens to the camera's photosensitive element. The light signal is converted into an electrical signal, and the camera's photosensitive element transmits the electrical signal to the ISP for processing, converting it into an image visible to the naked eye. The ISP can also perform algorithmic optimization on image noise and brightness. The ISP can also optimize parameters such as exposure and color temperature of the shooting scene. In some embodiments, the ISP can be set in the camera 193.
[0103] Camera 193 is used to capture still images or videos. An object is projected onto a photosensitive element by generating an optical image through the lens. The photosensitive element can be a charge-coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, which is then passed to an ISP for conversion into a digital image signal. The ISP outputs the digital image signal to a DSP for processing. The DSP converts the digital image signal into image signals in standard RGB, YUV, or other formats. In some embodiments, the terminal device 100 may include one or N cameras 193, where N is a positive integer greater than 1.
[0104] A digital signal processor (DSP) is used to process digital signals. Besides digital image signals, it can also process other digital signals. For example, when terminal device 100 selects a frequency, the DSP can perform Fourier transforms on the frequency energy.
[0105] Video codecs are used to compress or decompress digital video. Terminal device 100 may support one or more video codecs. Thus, terminal device 100 can play or record videos in various encoding formats, such as Moving Picture Experts Group (MPEG) 1, MPEG 2, MPEG 3, MPEG 4, etc.
[0106] NPU stands for Neural Network (NN) Computing Processor. By borrowing the structure of biological neural networks, such as the transmission patterns between neurons in the human brain, it can rapidly process input information and continuously learn on its own. NPUs enable intelligent cognitive applications in terminal devices, such as image recognition, facial recognition, speech recognition, and text understanding.
[0107] Internal memory 121 may include one or more random access memory (RAM) and one or more non-volatile memory (NVM).
[0108] Random access memory can include static random-access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), and double data rate synchronous dynamic random access memory (DDR SDRAM, such as fifth-generation DDR SDRAM, which is generally called DDR5 SDRAM). Non-volatile memory can include disk storage devices and flash memory.
[0109] Flash memory can be classified according to its operating principle, including NOR FLASH, NAND FLASH, 3D NAND FLASH, etc.; according to the level of the storage cell, including single-level cell (SLC), multi-level cell (MLC), triple-level cell (TLC), quad-level cell (QLC), etc.; and according to the storage specification, including universal flash storage (UFS) and embedded multimedia card (eMMC), etc.
[0110] The random access memory can be directly read and written by the processor 110. It can be used to store executable programs (such as machine instructions) of the operating system or other running programs, as well as user and application data.
[0111] Non-volatile memory can also store executable programs and user and application data, and can be pre-loaded into random access memory for direct reading and writing by the processor 110.
[0112] The external memory interface 120 can be used to connect to external non-volatile memory, thereby expanding the storage capacity of the terminal device 100. The external non-volatile memory communicates with the processor 110 through the external memory interface 120 to perform data storage functions. For example, music, video, and other files can be stored in the external non-volatile memory.
[0113] Terminal device 100 can implement audio functions, such as music playback and recording, through audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, and application processor.
[0114] The audio module 170 is used to convert digital audio information into analog audio signals for output, and also to convert analog audio input into digital audio signals. The audio module 170 can also be used for encoding and decoding audio signals. In some embodiments, the audio module 170 may be located in the processor 110, or some functional modules of the audio module 170 may be located in the processor 110.
[0115] The speaker 170A, also known as a "loudspeaker," is used to convert audio electrical signals into sound signals. The terminal device 100 can listen to music or make hands-free calls through the speaker 170A.
[0116] The receiver 170B, also known as the "earpiece," is used to convert audio electrical signals into sound signals. When the terminal device 100 answers a phone call or voice message, the receiver 170B can be brought close to the listener's ear to hear the voice.
[0117] Microphone 170C, also known as a "microphone" or "voice transducer," is used to convert sound signals into electrical signals. When making a phone call or sending a voice message, the user can speak by bringing their mouth close to microphone 170C, inputting the sound signal into microphone 170C. Terminal device 100 may be equipped with at least one microphone 170C. In some embodiments, terminal device 100 may be equipped with two microphones 170C, which, in addition to collecting sound signals, can also perform noise reduction. In other embodiments, terminal device 100 may be equipped with three, four, or more microphones 170C, which can collect sound signals, reduce noise, identify the sound source, and perform directional recording, etc.
[0118] The 170D headphone jack is used to connect wired headphones. The 170D headphone jack can be a USB 130 interface or a 3.5mm Open Mobile Terminal Platform (OMTP) standard interface, a CTIA (Cellular Telecommunications Industry Association of the USA) standard interface.
[0119] The pressure sensor 180A is used to sense pressure signals and can convert the pressure signals into electrical signals. In some embodiments, the pressure sensor 180A can be disposed on the display screen 194. There are many types of pressure sensors 180A, such as resistive pressure sensors, inductive pressure sensors, capacitive pressure sensors, etc.
[0120] The gyroscope sensor 180B can be used to determine the motion attitude of the terminal device 100. In some embodiments, the gyroscope sensor 180B can determine the angular velocity of the terminal device 100 around three axes (i.e., the x, y, and z axes). The gyroscope sensor 180B can be used for image stabilization. For example, when the shutter is pressed, the gyroscope sensor 180B detects the angle of the terminal device 100's shake, calculates the distance that the lens module needs to compensate based on the angle, and allows the lens to counteract the shake of the terminal device 100 through reverse movement, thus achieving image stabilization. The gyroscope sensor 180B can also be used in navigation and motion-sensing game scenarios.
[0121] The barometric pressure sensor 180C is used to measure air pressure. In some embodiments, the terminal device 100 calculates altitude using the air pressure value measured by the barometric pressure sensor 180C to assist in positioning and navigation.
[0122] The magnetic sensor 180D includes a Hall sensor. The terminal device 100 can use the magnetic sensor 180D to detect the opening and closing of the flip cover.
[0123] The 180E accelerometer can detect the magnitude of acceleration in various directions (typically three axes) of the terminal device 100. When the terminal device 100 is stationary, it can detect the magnitude and direction of gravity. It can also be used to identify the posture of electronic devices and applied to applications such as screen orientation switching and pedometers.
[0124] Distance sensor 180F is used to measure distance. Terminal device 100 can measure distance via infrared or laser.
[0125] The proximity light sensor 180G may include, for example, a light-emitting diode (LED) and a light detector, such as a photodiode. The LED may be an infrared LED.
[0126] An ambient light sensor 180L is used to sense the ambient light intensity. The terminal device 100 can adaptively adjust the brightness of the display screen 194 according to the sensed ambient light intensity.
[0127] The fingerprint sensor 180H is used to collect fingerprints. The terminal device 100 can use the collected fingerprint characteristics to achieve fingerprint unlocking, accessing application locks, taking photos with fingerprints, answering calls with fingerprints, etc.
[0128] Temperature sensor 180J is used to detect temperature. In some embodiments, terminal device 100 uses the temperature detected by temperature sensor 180J to execute a temperature processing strategy.
[0129] Touch sensor 180K, also known as a "touch device," can be located on display screen 194. The touch sensor 180K and display screen 194 together form a touchscreen, also known as a "touchscreen." Touch sensor 180K detects touch operations applied to or near it. The touch sensor can transmit the detected touch operation to the application processor to determine the type of touch event. Visual output related to the touch operation can be provided through display screen 194. In other embodiments, touch sensor 180K may also be located on the surface of terminal device 100, in a different position than display screen 194.
[0130] The bone conduction sensor 180M can acquire vibration signals. In some embodiments, the bone conduction sensor 180M can acquire vibration signals from the vibrating bone segments of the human vocal cords.
[0131] Buttons 190 include a power button, volume buttons, etc. Buttons 190 can be mechanical buttons or touch-sensitive buttons. Terminal device 100 can receive button input and generate key signal inputs related to user settings and function control of terminal device 100.
[0132] Motor 191 can generate vibration alerts. Motor 191 can be used for incoming call vibration alerts or for touch vibration feedback.
[0133] Indicator 192 can be an indicator light, used to indicate charging status, power changes, or to indicate messages, missed calls, notifications, etc.
[0134] The SIM card interface 195 is used to connect the SIM card.
[0135] For example, Figure 3 The present application illustrates a method flow for a navigation method, which includes stages 1 to 4.
[0136] Phase 1: Determine and record the parking location of vehicle 200.
[0137] In this embodiment of the application, after the user parks the vehicle, the terminal device 100 can calculate and record the parking position of the vehicle 200.
[0138] Phase 2: Determine and record the three-dimensional historical trajectory and landmarks that the user passed through 200 meters after leaving the vehicle, and then construct a three-dimensional landmark map.
[0139] In this embodiment, after the user leaves the vehicle 200, the terminal device 100 can also detect the user's location and floor changes in real time during the user's movement, thereby determining and recording the three-dimensional historical trajectory traversed by the user. While determining the three-dimensional historical trajectory traversed by the user, the terminal device 100 can detect the landmarks passed by the user, mark the landmarks on the aforementioned three-dimensional historical trajectory, and construct a three-dimensional landmark map based on the detected landmarks.
[0140] Phase 3: Based on 3D historical trajectories and 3D landmark maps, plan vehicle navigation routes.
[0141] In this embodiment, after detecting that the user triggers the terminal device 100 to search for the vehicle 200, the terminal device 100 can plan one or more vehicle-finding navigation routes in the three-dimensional landmark map based on the three-dimensional historical trajectory and the three-dimensional landmark map. The vehicle-finding navigation route may include all the landmarks traversed by the aforementioned three-dimensional historical trajectory.
[0142] Phase 4: Navigate based on the vehicle location navigation route to guide the user to find the vehicle.
[0143] In this embodiment of the application, after detecting that the user has determined to perform car-finding navigation, the terminal device 100 can guide the user to find the vehicle 200 according to the car-finding navigation route selected by the user.
[0144] The following is an exemplary description of the reverse vehicle search scenario of the navigation method provided in the embodiments of this application.
[0145] In a reverse vehicle locator scenario, after a user leaves vehicle 200, the user can open the vehicle's app on a terminal device 100 (e.g., a mobile phone), use the vehicle's app to view the 3D historical trajectory and 3D landmark map, trigger the vehicle's app to plan a vehicle locator navigation route, and follow the vehicle locator navigation route to guide the user to find vehicle 200.
[0146] For example, Figures 4A to 4H The user interface of the terminal device 100 for reverse vehicle location using the vehicle APP is shown.
[0147] For example, Figure 4A A user interface 11 for displaying installed applications is shown. The user interface 11 may include: a status bar 101, a tray 102 with icons for frequently used applications, other application icons, and a page indicator 104. Wherein:
[0148] The status bar 101 may include: a signal indicator 101A for mobile communication signals (also known as cellular signals), a battery status indicator, and a time indicator. Optionally, after the user enters a building, the signal indicator 101A indicates whether the cellular signal of the terminal device 100 is weak or non-existent.
[0149] Other application icons include icon 103 for the smart vehicle app. These other application icons can be distributed across multiple pages, and page indicators 104 can be used to indicate which page the user is currently viewing.
[0150] like Figure 4A and Figure 4B As shown, after detecting an input operation (e.g., a touch operation) on the icon 103A of the smart vehicle APP, the terminal device 100 can display the user interface 12. The user interface 12 may include one or more controls for controlling the vehicle and viewing vehicle status parameters, such as a vehicle location control 201, an unlock control, a window control, an air conditioning control, a dashboard control, a vehicle condition detection control, and smart controls.
[0151] like Figure 4B and Figure 4C As shown, after detecting an input operation (e.g., a touch operation) applied to the vehicle search control 201, the terminal device 100 can display the vehicle search interface 13. The vehicle search interface 13 includes a 3D landmark map 301 of the building the user enters, which is constructed by the terminal device 100 based on the landmarks the user has passed through. The 3D landmark map 301 displays the 3D historical trajectory 302 traversed by the user after leaving the vehicle 200, as well as the user's current location. It can be understood that as the user moves, the terminal device 100 can update the 3D landmark map 301 and the 3D historical trajectory 302.
[0152] In some embodiments, such as Figure 4C As shown, after leaving vehicle 200, the user enters multiple buildings, such as Building A and Building B in succession. The vehicle search interface 13 can include a 3D landmark map 301 of the aforementioned buildings. The 3D historical trajectory 302 displayed in the 3D landmark map 301 includes the user's movement trajectory within the aforementioned buildings. Specifically, in one example, after leaving vehicle 200, the user walks to elevator 1 on floor -1 (f) of Building A, and uses elevator 1 to reach 2f; on 2f, the user moves to escalator 1 and uses escalator 1 to reach 3f; on 3f, the user moves to the skybridge connecting Building A and Building B, uses the skybridge to reach 3f of Building B, and continues moving on 3f.
[0153] In some embodiments, such as Figure 4D As shown, after leaving the vehicle 200, the user enters multiple buildings, such as Building A and Building B. The vehicle search interface 13 only includes a 3D landmark map 301 of the user's current building (e.g., Building B). The 3D historical trajectory 302 displayed in the 3D landmark map 301 mainly includes the user's movement trajectory in Building B. Figure 4E As shown, when a user returns to Building A from Building B, the car-finding interface 13 only displays a 3D landmark map 301 of Building A. Specifically, in one example, the user returns from the 3rd floor of Building B to the skybridge connecting Building A, crosses the skybridge back to the 3rd floor of Building A, moves to elevator 2 in Building A, and descends to the 1st floor of Building A via elevator 2.
[0154] like Figures 4C to 4E As shown, as the user moves, the 3D landmark map 301 can display the landmarks the user passes through (for example). For instance, the landmarks the user passes through include elevator 1 on -1F of Building A, elevator 1 on 2F, escalator 1 from 2F to 3F, the sky bridge connecting Building A and Building B, and escalator 2 from 2F to 3F of Building B. Figures 4C to 4E As shown, as the user moves, the 3D landmark map 301 can also display landmarks inferred from the landmarks the user passes through. For example, if the user takes elevator 1 from -1f to 2f in building A, the terminal device 100 infers that elevator 1 is located at the same position in building A on 1f; elevator 1 on -1f, elevator 1f, and elevator 2f are on the same vertical line and have the same position on the horizontal plane.
[0155] In some embodiments, with Figure 4E Taking the car-finding interface 13 as an example, the terminal device 100 can obtain the internal map of the building that the user enters. The car-finding interface 13 also includes the internal map 304 of the floor where the user is located (e.g., 1F of Building A), and displays the user's historical trajectory 302A on the current floor in the internal map of the building. The three-dimensional historical trajectory 302 includes the historical trajectory 302A.
[0156] In some embodiments, with Figure 4E Taking the car-finding interface 13 as an example, the car-finding interface 13 also includes a car-finding navigation control 303. Figure 4F As shown, after detecting an input operation (e.g., a touch operation) applied to the car-finding navigation control 303, the terminal device 100 can plan one or more car-finding navigation routes based on the 3D landmark map and the user's 3D historical trajectory. These routes, such as car-finding navigation route 305 and car-finding navigation route 306, are displayed on the 3D landmark map 301, along with a start navigation control 307. Different car-finding navigation routes may have partial overlap, and the landmarks they pass through may also partially overlap.
[0157] In some embodiments, after the terminal device 100 plans the car-finding navigation route, it can also display the car-finding navigation route of the user's floor on the building's internal map 304. For example, car-finding navigation route 305 is car-finding navigation route 305A on the 1st floor of Building A, and car-finding navigation route 306 is car-finding navigation route 306A on the 1st floor of Building A.
[0158] In some embodiments, among the one or more car-finding navigation routes mentioned above, the route recommended by the terminal device 100 (e.g., car-finding navigation route 305) is selected, while other routes (e.g., car-finding navigation route 306) are unselected. The terminal device 100 can navigate to the selected car-finding navigation route. The user can switch other routes to the selected state through input operations (e.g., touch operations) applied to other routes (e.g., car-finding navigation route 306).
[0159] In some embodiments, such as Figure 4F and Figure 4G As shown, when the car-finding navigation route 305 is selected, an input operation (e.g., a touch operation) is detected acting on the start navigation control 307. In response to the input operation, the terminal device 100 navigates based on the car-finding navigation route 305 in the 3D landmark map 301 and / or the building interior map 304, and updates the car-finding navigation route 305 according to the user's real-time location. The starting point of the car-finding navigation route 305 is the user's current location, and the ending point is the parking location of the vehicle 200. The terminal device 100 can also display a directional marker 308 at the user's current location. The directional marker is used to indicate the user's current location and the direction of the vertical axis of the terminal device 100 on the horizontal plane (i.e., the user's orientation).
[0160] In some embodiments, such as Figure 4G and Figure 4HAs shown, when the terminal device 100 navigates based on the car-finding navigation route 305, it can also deform (e.g., zoom in) and rotate the building interior map 304 and the car-finding navigation route in the building interior map 304 according to the user's movement direction and location. The movement direction and route length of the car-finding navigation route 305A displayed by the terminal device 100 will also change accordingly, allowing the user to more clearly observe the area near the user's location in the building interior map 304 and the car-finding navigation route 305A, and thus more effectively follow the car-finding navigation route 305 forward. In addition, the car-finding navigation route displayed by the terminal device 100 in the 3D landmark map 301 can also be deformed and rotated based on the 3D landmark map.
[0161] In some embodiments, when the terminal device 100 navigates based on the vehicle-finding navigation route 305, it may also display instruction information 309 to guide the user to find their vehicle along the vehicle-finding navigation route 305. Optionally, such as Figure 4G As shown, the instruction information 309 may include some or all of the following: the current floor (e.g., 1F), the recommended direction of movement based on the vehicle navigation route 305 (e.g., right front), the nearest landmark on the vehicle navigation route 305 (e.g., elevator 1 on 1F), and the destination based on that landmark (e.g., elevator 1 on -1F), the distance to the nearest landmark, the navigation distance to the vehicle 200, and the estimated navigation time. Figure 4G and Figure 4H As shown, during navigation, the terminal device 100 can update the instruction information 309 as the user moves.
[0162] In some embodiments, when the terminal device 100 navigates based on the vehicle-finding navigation route 305, it also displays a stop navigation control 310. Upon detecting an input operation (e.g., a touch operation) applied to the stop navigation control 310, the terminal device 100 stops navigation; then, the terminal device 100 displays one or more vehicle-finding navigation routes from the user's current location to the vehicle 200. The user can reselect a vehicle-finding navigation route, or the terminal device 100 can display the user's three-dimensional historical trajectory from leaving the vehicle 200 to the current location. (See details for further information.) Figure 4E and Figure 4F This will not be elaborated upon here.
[0163] In some embodiments, the input operation is not limited to the vehicle navigation control 303, but can also be triggered by other operations (such as voice commands, gesture commands, etc.) to plan the vehicle navigation route. No specific limitation is made here.
[0164] In some embodiments, the input operation is not limited to the start navigation control 307, but can also be triggered by other operations (such as voice commands, gesture commands, etc.) to start navigation according to the car-finding navigation route. No specific limitation is made here.
[0165] In some embodiments, after detecting that a user clicks on the car-finding control 201, the terminal device 100 can also directly plan a navigation route and display it. Figure 4F The navigation routes shown are not specifically limited here.
[0166] The above Figures 4A to 4H This is an exemplary reverse vehicle search user interface provided in the embodiments of this application, and should not be construed as limiting this application.
[0167] The aforementioned vehicle app can be a system application or a third-party application; it can be a standalone application or a mini-program or application function embedded in other apps, etc., without specific limitations. This application embodiment also does not specifically limit the entry point settings for the aforementioned vehicle app; for example, the vehicle app can also be accessed through the negative one screen.
[0168] The specific implementation of the navigation method provided in the embodiments of this application will be described in detail below. For example, Figure 5 A method flow of a navigation method is shown, which includes, but is not limited to, steps S101 to S107.
[0169] S101. After detecting that the user has left vehicle 200, determine and record the parking position of vehicle 200.
[0170] In some embodiments, after detecting that a user has left vehicle 200, terminal device 100 calculates the parking location of vehicle 200. The scheme for calculating the parking location of vehicle 200 may include implementation scheme one and implementation scheme two.
[0171] In Scheme 1, the user's terminal device 100 enables GPS positioning. Before entering the building, outdoors, the terminal device 100 can use the positioning information of satellite 300 to determine the location of vehicle 200, i.e., the user's location. After vehicle 200 enters the building (e.g., a shopping mall parking lot), the satellite signal weakens and is insufficient for GPS positioning. The terminal device 100 uses the nearest GPS location as the starting point and uses positioning algorithm 2 based on sensor data to estimate the real-time location of vehicle 200, i.e., the user's real-time location. When the user leaves vehicle 200, the estimated real-time location of vehicle 200 is used as the parking location.
[0172] In some embodiments, when the satellite signal weakens and is insufficient for GPS positioning during the movement of the vehicle 200, the movement information (e.g., speed, acceleration, direction of movement, distance of movement, etc.) of the vehicle 200 can be obtained by using sensor data from at least one sensor (e.g., accelerometer, gyroscope) of the terminal device 100; using the aforementioned movement information as the starting point of the nearest GPS location, the real-time position of the vehicle 200 can be calculated.
[0173] In some embodiments, when the satellite signal weakens to the point where GPS positioning is insufficient, the terminal device 100 uses an inertial navigation algorithm to calculate the real-time position of the vehicle 200 based on sensor data. During the movement of the vehicle 200, the aforementioned inertial navigation algorithm uses the nearest GPS-positioned location as its starting point and combines it with sensor data collected by the inertial measurement unit (IMU) of the terminal device 100 to determine the real-time position of the terminal device 100, i.e., the real-time position of the vehicle 200. In one implementation, the inertial measurement unit includes an accelerometer and a gyroscope; the acceleration collected by the accelerometer can be used to calculate the displacement relative to the initial position, and the angular velocity collected by the gyroscope can be used to calculate the attitude change relative to the initial attitude; based on the attitude change, displacement, initial position (e.g., the aforementioned starting point), and initial attitude, the current position of the terminal device 100 can be determined.
[0174] The IMU (Inertial Measurement Unit) has measurement errors such as zero bias and random walk, and these errors accumulate over time, causing the user's real-time position and movement trajectory calculated by the inertial navigation algorithm to also carry errors accumulated over time. In some embodiments, to improve positioning accuracy, the terminal device 100 anticipates the IMU's measurement errors in advance and uses these errors to correct the sensor data collected by the IMU. The inertial navigation algorithm then uses the corrected sensor data to calculate the real-time position of the vehicle 200. In one implementation, before disconnecting from the satellite 300, the terminal device 100 anticipates the IMU's measurement errors. The measurement error of the accelerometer in the IMU is equal to the difference between the acceleration measured by the accelerometer and the actual acceleration, and the measurement error of the gyroscope sensor is equal to the difference between the angular velocity measured by the gyroscope sensor and the actual angular velocity; wherein, the actual acceleration can be determined based on the position change of GPS positioning.
[0175] In this embodiment of the application, the parking position of the vehicle 200 obtained by the terminal device 100 using an inertial navigation algorithm can be a three-dimensional parking position.
[0176] In one implementation, GPS positions the vehicle 200 in a two-dimensional coordinate system (e.g., a two-dimensional coordinate system composed of the x and y axes) on a horizontal plane. Starting from the nearest GPS-positioned location (e.g., (x2, y2)), the terminal device 100 uses an inertial navigation algorithm to calculate the vehicle 200's real-time two-dimensional position on the horizontal plane. When the user leaves the vehicle 200, based on the vehicle 200's real-time two-dimensional position (e.g., (x1, y1)), the three-dimensional parking position of the vehicle 200 in a three-dimensional coordinate system (e.g., a three-dimensional coordinate system composed of the x, y, and z axes) is obtained (e.g., (x1, y1, z1)). Here, z1 is a preset initial height (e.g., z1 equals 0) / initial floor (e.g., -1f) on the z-axis.
[0177] In one implementation, the nearest three-dimensional position (e.g., (x2, y2)) is determined based on the nearest two-dimensional position obtained from GPS positioning (e.g., (x2, y2)), where z2 is a preset initial height (e.g., z2 equals 0) / initial floor (e.g., 1f) on the z-axis. Starting from the aforementioned nearest three-dimensional position, the terminal device 100 uses an inertial navigation algorithm to calculate the real-time three-dimensional position of the vehicle 200 in a three-dimensional coordinate system (e.g., a three-dimensional coordinate system composed of the x-axis, y-axis, and z-axis). When the user is detected leaving the vehicle 200, the three-dimensional parking position of the vehicle 200 (e.g., (x1, y1, z1)) is obtained.
[0178] In some embodiments, the x-axis of the three-dimensional coordinate system indicates the longitude of the location, the y-axis indicates the latitude of the location, and the z-axis indicates the altitude of the location or the floor level of the location.
[0179] In this embodiment, before the user leaves the vehicle 200, the vehicle 200 can determine its parking location by combining the nearest location of the satellite 300 and the sensor data of the vehicle 200, and then send the parking location to the terminal device 100. This embodiment does not impose specific limitations on this.
[0180] In some embodiments, the terminal device 100 can acquire an internal map (e.g., a 3D backbone road network) of the building into which the vehicle 200 enters. When the terminal device 100 uses an inertial navigation algorithm to estimate the position of the vehicle 200, it can combine the internal map to improve the accuracy of the vehicle 200's position. In one implementation, after the terminal device 100 estimates the current position (e.g., position 1) of the vehicle 200 using an inertial navigation algorithm, if the current position is not located on the path of the internal map, the current position is corrected from position 1 to position 2, which is the closest position to position 1 on the path of the internal map.
[0181] In the second implementation scheme, when the user leaves the vehicle 200, the initial virtual coordinates of the parking location are determined (e.g., (0,0,0)), and WiFi scanning is started. After the user leaves vehicle 200, starting from the initial virtual coordinates, terminal device 100 uses positioning algorithm 1 based on sensor data to calculate the virtual coordinates of the user's real-time location and obtain the user's movement trajectory. At the same time, terminal device 100 continuously collects the signal fingerprint of WiFi signal. When the user moves to the first positioning point of WiFi fingerprint positioning (i.e., positioning point 1), the movement trajectory traversed by the user is movement trajectory 1, with the starting point of movement trajectory 1 being the parking position of vehicle 200 and the ending point being positioning point 1. At positioning point 1, terminal device 100 detects WiFi signals from multiple fingerprint positioning devices. Based on the WiFi signals from the aforementioned multiple fingerprint positioning devices and the crowdsourced data of WiFi fingerprint positioning, the actual coordinates of positioning point 1 can be determined (e.g., the three-dimensional coordinates (x4, y4, z4) in the aforementioned three-dimensional coordinate system). Based on the displacement 1 between the actual coordinates of positioning point 1 and the virtual coordinates (e.g., (x3, y3, z3)), the movement trajectory 1 is translated by a displacement 1, that is, the virtual coordinates of each point in the user's movement trajectory 1 are corrected to the actual coordinates, and the corrected parking position is obtained. For example, the virtual coordinates (x3, y3, z3) of positioning point 1 are corrected to the actual coordinates (x4, y4, z4), and the virtual coordinates (0, 0, 0) of the starting point (i.e. the parking position) of movement trajectory 1 are corrected to (x4-x3, y4-y3, z4-z3).
[0182] In some embodiments, after the user leaves the vehicle 200, the positioning algorithm 1 can obtain the user's movement information (e.g., speed, acceleration, direction of movement, distance of movement, etc.) based on sensor data from at least one sensor (e.g., accelerometer, gyroscope) of the terminal device 100. Starting from the initial virtual coordinates, the virtual coordinates of the user's current position can be calculated using the above movement information, and the user's movement trajectory 1 can be obtained.
[0183] In some embodiments, positioning algorithm 1 is PDR; after the user leaves the vehicle 200, starting from the aforementioned initial virtual coordinates, the terminal device 100 uses PDR to determine the user's real-time location and obtain the user's movement trajectory 1. In one implementation, the aforementioned PDR utilizes sensor data from at least one sensor of the terminal device 100 to measure and count the number of steps, step length, and direction of the user's movements; starting from the aforementioned initial virtual coordinates, the user's real-time location is calculated using the number of steps, step length, and direction of the user's movements, thereby obtaining the user's movement trajectory 1. The aforementioned at least one sensor includes some or all of the following: an accelerometer, a gyroscope, and a magnetometer. It can be understood that in this scheme, after obtaining the virtual movement trajectory 1 of the user leaving the vehicle 200 using PDR, the parking position of the vehicle 200 is then deduced using the real location of WiFi fingerprint positioning.
[0184] In one implementation, namely in Scheme 2, the aforementioned at least one sensor further includes a barometric pressure sensor (i.e., a barometer), which uses the barometric pressure sensor to collect changes in air pressure to determine changes in the user's height and floor level.
[0185] The following describes how to detect whether a user has left the vehicle.
[0186] In some embodiments, when the terminal device 100 detects that the vehicle departure condition 1 is met, it determines that the user has left the vehicle 200. The vehicle departure condition 1 may include one or more of the following: the vehicle stops moving, a door closing sound is detected, the user is detected walking, the Bluetooth connection between the terminal device 100 and the vehicle 200 is lost, the Bluetooth signal strength of the vehicle 200 is detected to be less than a preset value, the WiFi connection between the terminal device 100 and the vehicle 200 is lost, and the WiFi signal strength of the vehicle 200 is detected to be less than a preset value, etc. This application embodiment does not specifically limit the implementation method of detecting the user leaving the vehicle 200.
[0187] In one implementation, a motion state recognition algorithm can be used to detect whether a user is walking based on sensor data from at least one sensor (e.g., an accelerometer) of the terminal device 100. It is understood that if walking is detected, it indicates that the user has left the vehicle 200.
[0188] In one implementation, the sound of a vehicle door closing can be detected based on data collected by the microphone of the terminal device 100.
[0189] In one implementation, when the user is inside the vehicle 200, the terminal device 100 and the vehicle 200 can establish a communication connection based on near-field communication technology (such as Bluetooth communication technology or WiFi communication technology); when the user leaves the vehicle 200 and moves away from the vehicle 200, the detected near-field communication signal of the vehicle 200 weakens until the aforementioned communication connection is disconnected.
[0190] In some embodiments, when vehicle 200 detects departure condition 2, it determines that the user has left vehicle 200 and notifies terminal device 100. Departure condition 2 may include one or more of the following: vehicle stops moving, driver leaves seat, driver closes door, vehicle 200 turns off, etc.
[0191] In one implementation, the in-vehicle camera of vehicle 200 can detect whether the driver has left the seat through image analysis. In another implementation, the driver's seat is equipped with a pressure sensor, which can be used to detect whether the driver has left the seat.
[0192] In one implementation, the in-vehicle camera of vehicle 200 can detect whether the driver has closed the door through image analysis. In another implementation, the driver can detect the closing sound of the driver's side door based on data collected by the microphone of vehicle 200, thereby determining whether the driver has closed the door. In yet another implementation, at least one sensor (e.g., a Hall sensor) is installed on the door to detect the opening and closing state of the door. When the driver's side door is detected to have switched from an open state to a closed state based on the aforementioned at least one sensor, it is determined that the driver has closed the door.
[0193] In some embodiments, in the partial implementation of detecting user leaving vehicle 200, if there is a time error between the time the user leaves vehicle 200 is detected and the time the user actually leaves vehicle, the parking positions obtained in the aforementioned implementation schemes one and two are considered as initial parking positions. The terminal device 100 corrects the initial parking position based on the aforementioned time error to obtain the corrected parking position. This improves the accuracy of the parking position. The time error can be different under different implementations of detecting user leaving vehicle 200; the terminal device 100 stores the time error under a specific implementation and can correct the parking position based on the time error.
[0194] For example, when a user is detected to be walking, it is determined that the user has left the vehicle 200; in this implementation, the time error is related to the duration of the user being detected to be walking, and the terminal device 100 presets the time error of this implementation to be 5s.
[0195] For example, when the Bluetooth connection between the terminal device 100 and the vehicle 200 is detected to be disconnected, it is determined that the user has left the vehicle 200; in this implementation, the aforementioned time error is related to the communication distance of the Bluetooth connection, and the terminal device 100 presets the time error of this implementation to be 10s.
[0196] In some embodiments, in the first implementation described above, the terminal device 100 acquires the movement trajectory 2 of the vehicle 200 before detecting the user leaving the vehicle 200; the movement trajectory 2 includes the movement trajectory of the vehicle 200 before the user leaves the vehicle 200, and the movement trajectory of the user before the user leaves the vehicle 200 detected by the terminal device 100 after the user leaves the vehicle 200, with the endpoint of the movement trajectory 2 being the aforementioned initial parking position. The terminal device 100 determines the actual time of leaving the vehicle 200 based on the time error and the time of acquiring the initial parking position, and then uses the position corresponding to that time in the movement trajectory 2 as the parking position.
[0197] In some embodiments, in the second implementation scheme described above, before the terminal device 100 detects that the user has left the vehicle 200, the terminal device 100 can also continuously acquire the user's movement trajectory 3. The movement trajectory 3 can be a movement trajectory collected with virtual coordinates as the starting point, and the ending position of the movement trajectory 3 is the aforementioned initial parking position. After acquiring the initial parking position, the virtual coordinates of each point in the movement trajectory 3 can be corrected to actual coordinates based on the initial parking position. The terminal device 100 determines the actual time of leaving the vehicle 200 based on the time error and the time of acquiring the initial parking position, and then uses the position corresponding to that time in the corrected movement trajectory 3 as the parking position.
[0198] S102, Terminal device 100 uses positioning algorithm 1 to obtain the three-dimensional historical trajectory of the user after leaving the parking position based on sensor data from at least one sensor.
[0199] It is understood that in step S101, after the terminal device 100 detects that the user has left the vehicle 200, during the user's movement, the terminal device 100 calculates the parking position of the vehicle 200 and obtains the user's movement trajectory starting from that parking position. In step S102, the terminal device 100 continues to use positioning algorithm 1 (e.g., PDR) based on sensor data from at least one sensor to calculate the user's real-time position, and then obtains the user's movement trajectory; the user's movement trajectory from the parking position to the current position is used as the user's three-dimensional historical trajectory. Subsequent embodiments mainly use positioning algorithm 1 as PDR as an example for illustrative purposes.
[0200] In some embodiments, positioning algorithm 1 is used to obtain the user's two-dimensional position (e.g., (x, y)) in a two-dimensional coordinate system (e.g., a two-dimensional coordinate system composed of the x-axis and y-axis) on the aforementioned horizontal plane, and the floor the user is on is identified. Based on the user's two-dimensional position and the floor the user is on, the user's three-dimensional position (e.g., (x, y, z)) can be obtained, where the value of z indicates the floor the user is on. Based on the detected three-dimensional position of the user, the three-dimensional historical trajectory traversed by the user can be obtained. It can be understood that the three-dimensional historical trajectory includes the user's two-dimensional movement trajectory on the horizontal plane of each floor, as well as the user's floor change trajectory.
[0201] In some embodiments, positioning algorithm 1 is used to directly obtain the user's three-dimensional position (e.g., (x, y, z)) in the aforementioned three-dimensional coordinate system (e.g., a three-dimensional coordinate system composed of the x-axis, y-axis, and z-axis); where the value of the z-axis indicates the user's height. Based on the detected three-dimensional position of the user, the three-dimensional historical trajectory traversed by the user can be obtained. The terminal device 100 can determine the user's floor change and current floor based on the user's height changes.
[0202] The following section explains how to identify floor changes and the floor a user is currently on.
[0203] In this embodiment of the application, the terminal device 100 identifies the floor changes and the user's current floor based on some or all of the sensor data from at least one sensor (e.g., a barometric pressure sensor, an accelerometer), the received wireless signal (e.g., a WiFi signal), and relevant information about the building it has entered.
[0204] In some embodiments, the terminal device 100 identifies the user's floor based on the air pressure detected by a barometric pressure sensor; in the same environment, the greater the altitude, the lower the air pressure; and during the process of moving between floors (e.g., taking an elevator), the detected air pressure changes rapidly from relatively stable to relatively stable and then tends to stabilize again. For example, see... Figure 4C As shown in the 3D landmark map 301, when a user moves to elevator 1 on floor -1 of building A, the air pressure detected by the terminal device 100 is relatively stable (i.e., changes are minimal or nonexistent). During the journey from floor -1 to floor 2 via elevator 1, the air pressure rapidly decreases, then stabilizes again after reaching floor 2. In one implementation, different heights correspond to different air pressures. The terminal device 100 stores the correspondence between different air pressure ranges and floors. Based on the detected air pressure, it determines the air pressure range and then identifies the floor corresponding to that range as the user's current floor. In another implementation, the terminal device 100 stores the air pressure change value when descending / ascending one floor. The terminal device 100 can detect the air pressure change value, determine the number of floors ascended / descended based on the air pressure change value, and then determine the user's current floor based on the user's initial floor before the air pressure change and that floor number. This application embodiment does not specifically limit the method by which the terminal device 100 obtains the above correspondence.
[0205] In some embodiments, the terminal device 100 determines the user's height change based on the user's vertical acceleration detected by the inertial detection unit. Combining this height change value with the user's initial floor, the user's current floor can be determined; for example, for every 3-meter increase in height, the user ascends one floor, and for every 3-meter decrease in height, the user descends one floor. Alternatively, the terminal device 100 stores a correspondence between different height ranges and floors. Combining this height change value with the user's initial height, the user's height can be determined; and based on the correspondence between the height range and floors, the user's current floor can be obtained.
[0206] In some embodiments, the terminal device 100 determines the user's location based on fingerprint positioning. The fingerprint in the crowdsourced fingerprint positioning data indicates the floor level or altitude of the location, and the user's floor can be determined based on this altitude. Since the coverage of the crowdsourced fingerprint positioning data is not comprehensive, fingerprint positioning alone may not be sufficient to determine the user's floor. Therefore, it can be combined with an accelerometer or barometer to comprehensively assess changes in floor level and the user's current floor.
[0207] In one implementation, before the vehicle 200 enters the building, the terminal device 100 continuously detects the user's height / floor and sets the floor corresponding to the vehicle 200's height before entering the building as the initial floor (e.g., 1f). For example, see reference... Figure 4C The 3D landmark map 301 shown indicates that the floor before the vehicle 200 enters the building is the default initial floor (i.e., 1f). When the vehicle 200 enters the -1f parking lot, the terminal device 100 detects that the user has descended to -1f according to the aforementioned floor identification method. In one implementation, when the user leaves the vehicle 200, the floor corresponding to the user's current position is set as the initial floor (e.g., -1f), and the height corresponding to the current position is set as the initial height (e.g., 0). In this embodiment, the values of the initial floor and initial height are not specifically limited.
[0208] In one implementation, the terminal device 100 can obtain relevant information about the building, which may include some or all of the following: the height of each floor, the floor where the parking lot is located, and the floor number (e.g., -1f, 1f). The terminal device 100 can combine this information with the relevant building information to determine the user's current floor. For example, before the vehicle 200 enters the building, the initial floor is 1f, and the terminal device 100 continuously monitors the user's height changes; when the user enters the underground parking lot, based on the detected decrease in height and the floor height of each parking level, it determines that the user has descended to -1f.
[0209] In some embodiments, the terminal device 100 uses a trained neural network model 1 to identify the floor it is on. The output of the neural network model 1 is the floor, and the input includes some or all of the following: air pressure, acceleration, initial height, initial floor, relevant information about the building, etc.
[0210] This application does not specifically limit the implementation method of identifying the floor.
[0211] In some embodiments, fingerprint positioning can also be used to correct the user's location and movement trajectory detected by positioning algorithm 1.
[0212] In one implementation, while using PDR to acquire the user's real-time location and movement trajectory based on sensor data from at least one sensor, the terminal device 100 also collects the signal fingerprint of the WiFi signal and performs positioning based on the crowdsourced data of WiFi fingerprint positioning. When the crowdsourced data of WiFi fingerprint positioning determines that the user's current location is the WiFi fingerprint positioning location point 2, and the distance between the location point 2 and the current location (e.g., location 3) obtained by PDR1 is greater than a preset value (e.g., 0, 10cm or 20cm), then the user's current location is corrected to the location point 2.
[0213] In one implementation, when the distance between positioning point 2 and position 3 is greater than a preset value, the movement trajectory 4 within the shortest duration 1 or movement distance 1 of the user's movement trajectory is translated and corrected based on the displacement 2 between positioning point 2 and position 3. After translation correction, the endpoint of movement trajectory 4 (i.e., position 3) is corrected to positioning point 2. In another implementation, when the distance between positioning point 2 and position 3 is greater than a preset value, if positioning point 2 is the first fingerprint positioning point after the user leaves vehicle 200, then the movement trajectory from the parking position to position 3 is translated and corrected based on the displacement 2 between positioning point 2 and position 3. After translation correction, position 3 in the aforementioned movement trajectory is corrected to positioning point 2. If positioning point 2 is the nth fingerprint positioning point after the user leaves vehicle 200, where n is a positive integer greater than 1, then the movement trajectory from position 3 to the previous positioning point in the user's movement trajectory is translated and corrected based on the displacement 2 between positioning point 2 and position 3. After translation correction, position 3 in the aforementioned movement trajectory is corrected to positioning point 2.
[0214] In this embodiment, the crowdsourced data from fingerprint positioning is primarily used to correct the user's location and movement trajectory. Therefore, it is not necessary for the crowdsourced data from fingerprint positioning to cover the entire area; only a small amount of location-based crowdsourced data is needed to correct the user's location and movement trajectory. This reduces reliance on crowdsourced data and avoids the significant manpower and resources required to collect large amounts of crowdsourced data.
[0215] In some embodiments, GPS positioning can also be used to correct the user's location and movement trajectory detected by positioning algorithm 1.
[0216] In one implementation, during the user's movement after leaving vehicle 200, when terminal device 100 uses PDR to acquire the user's location and movement trajectory, terminal device 100 can detect GPS signals at specific locations (e.g., an overpass, an atrium within a building) and acquire the satellite positioning location (i.e., GPS location). If the distance between this GPS location and the user's current location (e.g., location 3) acquired using PDR is greater than a preset value (e.g., 0, 10cm, or 20cm), then location 3 can be corrected to the aforementioned GPS location. Optionally, based on the displacement between the aforementioned GPS location and location 3, the movement trajectory 5 within the most recent time period 1 or movement distance 1 in the user's movement trajectory can be translated and corrected. After translation and correction, the endpoint of the aforementioned movement trajectory 5 (i.e., location 3) is corrected to the aforementioned GPS location.
[0217] S103, Terminal device 100 detects landmarks passed by the user based on sensor data from at least one sensor and / or received wireless signals, and then constructs a three-dimensional landmark map.
[0218] In some embodiments, during user movement, based on sensor data from at least one detected sensor and / or received wireless signals, the terminal device 100 further identifies landmarks traversed by the user, establishes a three-dimensional landmark map based on the landmark information of the identified landmarks, marks each landmark in the three-dimensional historical trajectory, and then displays the three-dimensional historical trajectory in the three-dimensional landmark map. The landmark information includes the landmark type, the landmark location, and whether the landmark is bidirectionally accessible; the landmark location indicates its two-dimensional position on the horizontal plane and the floor it is located on. The at least one sensor includes some or all of the following: a barometric pressure sensor, an accelerometer, a gyroscope sensor, a magnetometer, an IMU, etc.; the wireless signals include some or all of the following: WiFi signals, GPS signals, cellular signals, Bluetooth signals, and signals from beacon devices corresponding to the landmarks.
[0219] In some embodiments, when landmark 1 is identified, the user's current location obtained based on positioning algorithm 1 is recorded as the location of landmark 1.
[0220] For example, Table 1 shows some landmark types involved in the embodiments of this application.
[0221]
[0222]
[0223] Referring to Table 1, landmarks are divided into three main categories: multi-floor landmarks, multi-building landmarks, and landmarks with special architectural structures. It can be understood that the landmark type indicates whether the landmark is used across floors or across buildings. This application embodiment may also involve other landmark types, not limited to the examples in Table 1, and no specific limitations are made here.
[0224] For example, Figure 6A A 3D landmark map and a 3D historical trajectory are shown. See also Figure 6A After leaving vehicle 200, the user walks to elevator 1 on -1F of Building A and takes elevator 1 to 2F of Building A. On 2F of Building A, the user takes escalator 1 to 3F of Building A. On 3F of Building A, the user moves to the skybridge connecting Building B and takes the skybridge to 3F of Building B. On 3F of Building B, the user takes escalator 2 to 4F of Building B and continues moving. Then, the user takes escalator 2 back to 3F of Building B and then takes the skybridge back to 3F of Building A. The user moves to elevator 2 on 3F of Building A and takes elevator 2 down to 1F of Building A.
[0225] In this embodiment, some landmark types (such as elevators, sky bridges, staircases, ramps, etc.) are by default bidirectionally accessible. For example, if a user is detected taking elevator 1 from -1f to 2f in Building A, it is assumed that the user can also take elevator 1 from 2f to 1f. For some landmark types, bidirectional accessibility needs to be determined based on the user's historical trajectory. For example, if a user is detected taking escalator 2 in Building B from 3f to 4f, it can only be confirmed that escalator 2 is unidirectional; only when the user is subsequently detected taking escalator 2 back from 4f to 3f in Building B is it confirmed that escalator 2 is bidirectionally accessible.
[0226] In some embodiments, the crowdsourced data for fingerprint positioning includes the location fingerprint of the location of landmark 1, which also indicates the landmark type of landmark 1; when a user passes by landmark 1, the terminal device 100 matches the collected signal fingerprint with the location fingerprint in the crowdsourced data. If the match is successful, it is determined that landmark 1 has been identified, and the landmark type and location of landmark 1 are recorded.
[0227] In some embodiments, the terminal device 100 uses a trained neural network model 2 to identify landmarks passed by the user. The output of the neural network model 2 is the type of landmark identified, and the input is sensor data from at least one of the aforementioned sensors and / or received wireless signals.
[0228] In this embodiment, a classification model (e.g., an XGBoost classifier) can be constructed using machine learning, classification algorithms, etc. This model can output a specific landmark type based on the detected sensor data and / or wireless signals. In some embodiments, the terminal device 100 uses an XGBoost classifier to identify landmarks passed by the user. The output of the XGBoost classifier is the identified landmark type, and the input is the sensor data from at least one of the sensors and / or the received wireless signals.
[0229] In some embodiments, to facilitate vehicle location for users, building managers install beacon devices at various landmarks within the building, such as beacon device 500 at landmark 1. When terminal device 100 approaches beacon device 500, it can detect the signal from the beacon device, which indicates the landmark type of landmark 1 and its location. In one implementation, the signal from beacon device 500 is detected, and if the distance to beacon device 500 is less than a distance threshold 1 based on the signal, the landmark type of landmark 2 is determined based on the signal.
[0230] It is understandable that when a user passes through different landmarks, one or more of the data characteristics of the sensor data detected by the terminal device 100, the signal characteristics of the received wireless signal, and the data characteristics of the crowdsourced data of the historical trajectory are different, that is, the characteristics of the relevant information used to identify the landmark are different.
[0231] In some embodiments, different landmark type identification conditions can be set based on the different data characteristics of the sensor data and / or the different signal characteristics of the wireless signal. When the identification conditions of a specific landmark type are met, the landmark type and location of the currently passed landmark are determined, and the landmark is marked at that location on the user's movement trajectory. In this embodiment, the identification conditions for each landmark type are not specifically limited.
[0232] The following provides an illustrative example of the data characteristics of the sensor data detected and the signal characteristics of the received wireless signals when a user passes through different landmarks.
[0233] For example, the process of crossing floors via elevators, escalators, stairs, or ramps has the following characteristics: WiFi signals from multiple floors before and after the crossing can be detected; the average rate of change of height of the terminal device 100 typically decreases from elevator to escalator to stairs, with ramps being close to stairs; the faster the rate of change of height, the faster the change in air pressure; when using elevators and escalators, the rate of change of height of the terminal device 100 usually follows a pattern of "first increasing, then remaining constant, then decreasing," while stairs and ramps do not exhibit this pattern; the angle between the acceleration direction of the terminal device 100 and the horizontal plane typically decreases from elevator to escalator to stairs to ramps; WiFi signals detected inside enclosed elevators are usually weaker than those from other crossing methods; compared to other crossing methods, crossing floors in a closed elevator results in greater changes in the Earth's magnetic field; compared to other crossing landmarks, users typically turn around after entering the elevator on the same floor, and this turn can be detected using sensor data such as acceleration direction and compass pointing. For example, the process of crossing floors using different types of elevators has the following characteristics: Regarding the signal strength of detected outdoor wireless signals (e.g., cellular signals, GPS signals), the order from strongest to weakest is typically: outdoor transparent sightseeing elevator, indoor transparent sightseeing elevator, and traditional elevator car; regarding the detected indoor wireless signals (e.g., WiFi signals, Bluetooth signals), the indoor transparent sightseeing elevator detects stronger indoor wireless signals compared to the outdoor transparent sightseeing elevator and the traditional elevator car; regarding the detected ambient brightness, the order from strongest to weakest is typically: outdoor transparent sightseeing elevator, indoor transparent sightseeing elevator, and traditional elevator car.
[0234] For example, the process of crossing from Building A to Building B using different methods has the following characteristics: WiFi signals from Building A are detected before crossing, and WiFi signals from Building B are detected after crossing; during the crossing process, the WiFi signal from Building A gradually weakens, while the WiFi signal from Building B gradually strengthens; compared to other crossing methods in Table 1, GPS and cellular signals are stronger and WiFi signals are weaker in outdoor ground-level crossing areas, cross-building sky bridges, and cross-building escalators; the height of cross-building sky bridges and cross-building escalators is higher than that of outdoor ground-level crossing areas; compared to other crossing methods in Table 1, GPS signals are weaker or not detected in parking lot entrance / exit areas and indoor crossing areas, while WiFi signals are stronger; compared to parking lot entrance / exit areas, indoor crossing areas detect more and stronger WiFi signals.
[0235] For example, stronger GPS and cellular signals can be detected in the atrium area inside the building, and this does not involve cross-buildings. Terminal device 100 can record the three-dimensional historical trajectory of vehicles entering the building and upload the three-dimensional historical trajectory to the crowdsourced data of historical trajectories; the crowdsourced data of historical trajectories can indicate that different vehicles have repeatedly passed through a specific area 1 to enter the parking floor of the building from outside the building, and the specific area 1 is the same-floor entrance of the building's parking lot; the crowdsourced data of historical trajectories can also indicate that different vehicles have repeatedly passed through a specific area 2 to enter from one parking floor to another, and the specific area 2 is the entrance of the mezzanine parking lot.
[0236] In some embodiments, reference Figure 6B Based on the three major categories of landmarks shown in Table 1 (i.e., landmarks spanning multiple floors, landmarks spanning multiple buildings, and landmarks with special building structures), the process of identifying landmarks may specifically include part or all of A1 to A3.
[0237] A1. When trigger condition 1 is detected, the landmark type for cross-floor use is identified based on sensor data and / or wireless signals from at least one of the aforementioned sensors; trigger condition 1 is used to indicate that the user's floor has changed.
[0238] In one implementation, trigger condition 1 includes one or more of the following: the air pressure change detected by the barometric pressure sensor is greater than the air pressure threshold; the height change of the terminal device 100 is greater than the height threshold (e.g., 2 meters); the air pressure change process follows a pattern of "from stabilizing to a large change and then stabilizing again". How to detect the height of the terminal device 100 can be referred to the aforementioned embodiments, and will not be repeated here. In this embodiment, trigger condition 1 is set based on the common characteristics of the sensor data and wireless signals detected during different cross-layer methods; specific limitations are not imposed on trigger condition 1 here.
[0239] In some embodiments, the terminal device 100 utilizes an XGBoost classifier to identify landmark types for cross-layer use. The output of the XGBoost classifier is the landmark type for the cross-layer use, and the input is sensor data and / or wireless signals from at least one of the aforementioned sensors.
[0240] In some embodiments, the terminal device 100 uses a trained neural network model 3 to identify the landmark type for cross-layer use. The output of the neural network model 3 is the landmark type for cross-layer use, and the input is sensor data and / or wireless signals from at least one of the aforementioned sensors.
[0241] In some embodiments, if the detected change in air pressure follows the pattern of "the average air pressure per unit time first changes at an accelerated rate, then changes at a constant rate, and then changes at an accelerated rate again", then the landmark type is determined to be an elevator or escalator. During the above-mentioned change process, the angle between the acceleration direction of the terminal device 100 and the horizontal plane or the change value of the magnetic field strength is determined. If the angle is within a preset range of the escalator tilt angle (e.g., 40 to 60 degrees) or the change value of the magnetic field strength is less than the preset value, then the landmark across floors is identified as an escalator. If the angle is within a preset range of the elevator tilt angle (e.g., 89 to 91 degrees) or the change value of the magnetic field strength is less than the preset value, then the landmark across floors is identified as an elevator. When the above-mentioned pattern is not detected, the terminal device 100 uses a motion state recognition algorithm to detect the user's motion state based on sensor data from at least one of the above-mentioned sensors; if the user's motion state is detected as walking up / down stairs, the cross-floor landmark is identified as stairs; if the user's motion state is detected as walking, and the angle between the acceleration direction of the terminal device 100 and the horizontal plane is within a preset range of the ramp inclination angle (e.g., 10 to 45 degrees), the cross-floor landmark is identified as a ramp.
[0242] A2. When trigger condition 2 is detected, the landmark type for cross-building is identified based on sensor data and / or wireless signals from at least one of the above sensors; trigger condition 2 is used to indicate that the user's building has changed.
[0243] In some embodiments, trigger condition 2 includes one or more of the following: detecting that the wireless signal (e.g., WiFi signal, Bluetooth signal) of the current building is continuously weakening, while the wireless signal of another building is continuously strengthening, wherein the wireless signal can indicate the building where the signal source of the wireless signal is located. In this embodiment, trigger condition 2 is set according to the common characteristics of the sensor data and wireless signals detected when crossing buildings in different cross-building methods, and trigger condition 2 is not specifically limited here.
[0244] In some embodiments, the terminal device 100 utilizes an XGBoost classifier to identify the landmark type for cross-building use. The output of the XGBoost classifier is the landmark type for cross-building use, and the input is sensor data and / or wireless signals from at least one of the aforementioned sensors.
[0245] In some embodiments, the terminal device 100 uses a trained neural network model 4 to identify the landmark type for cross-building use. The output of the neural network model 4 is the landmark type for cross-building use, and the input is sensor data and / or wireless signals from at least one of the aforementioned sensors.
[0246] In some embodiments, when the signal strength of the satellite signal detected by satellite 300 is greater than the signal threshold 1, if the angle between the acceleration direction of terminal device 100 and the horizontal plane is less than the angle threshold (i.e., the user is moving on the same floor), for example, the angle threshold is equal to 10 degrees, and the current height of terminal device 100 is less than a preset height (e.g., 2m), then the cross-floor landmark is identified as an outdoor ground-level cross-building area; if the angle is less than the angle threshold (i.e., the user is moving on the same floor), and the height is greater than or equal to the preset height, then the cross-building landmark is identified as a cross-building sky bridge; if the angle is within a preset range of the escalator's inclination angle (e.g., 40 to 60 degrees), then the cross-building landmark is identified as a cross-building escalator. When the signal strength of the satellite signal detected by satellite 300 is less than or equal to the signal threshold 1, or when no satellite signal is detected, if it is determined that the air pressure is within the indoor air pressure range corresponding to the current height, then the landmark is identified as an indoor cross-building area, where the indoor air pressure and outdoor air pressure at the same height are different.
[0247] A3. When trigger condition 3 is detected, the landmark type for a special building structure is identified based on sensor data and / or wireless signals from at least one of the above sensors; trigger condition 3 is used to indicate that a special building structure may be passed through.
[0248] In some embodiments, trigger condition 3 includes: trigger condition 1 and / or trigger condition 2 not being met. In one implementation, trigger condition 3 includes: trigger condition 2 not being met. In this embodiment, trigger condition 3 can also be set based on the common characteristics of sensor data and wireless signals detected when passing through different special building structures; trigger condition 3 is not specifically limited here.
[0249] In some embodiments, the terminal device 100 utilizes an XGBoost classifier to identify landmark types of special building structures. The output of the XGBoost classifier is the landmark type of the special building structure, and the input is sensor data and / or wireless signals from at least one of the aforementioned sensors.
[0250] In some embodiments, the terminal device 100 uses a trained neural network model 5 to identify the landmark type of a special building structure. The output of the neural network model 5 is the landmark type of the special building structure, and the input is sensor data and / or wireless signals from at least one of the aforementioned sensors.
[0251] In some embodiments, the special building structure includes an internal hollow area. When the signal strength of the detected GPS satellite signal is greater than a signal threshold of 1, and it is determined that the user is inside the building (i.e., not near a landmark across buildings), the landmark the user is currently passing through is determined to be within the internal hollow area of the building. In one implementation, whether the user is inside the building is determined based on changes in the magnetic field; it is understood that the Earth's magnetic field changes more significantly when the user moves inside the building compared to when moving outdoors. The specific method for determining whether the user is inside the building is not limited here.
[0252] In some embodiments, if crowdsourced data of historical trajectories determines that different vehicles have repeatedly passed through a specific area 1 to enter the parking floor of the building from outside the building, then it is inferred that the specific area 1 is the same-floor entrance of the building's parking lot; if crowdsourced data of historical trajectories determines that different vehicles have repeatedly passed through a specific area 2 to enter from one parking floor to another, then it is inferred that the specific area 2 is the entrance of the mezzanine parking lot.
[0253] In some embodiments, the above-described landmark identification process may further include: when the signal strength of the GPS satellite signal is detected to be greater than the signal threshold 1, based on the sensor data and / or wireless signal of at least one of the above-described sensors, identifying the landmark type used for cross-building as one of the following landmark types: cross-building escalator, cross-building sky bridge, interior atrium area of a building, and outdoor ground cross-building area.
[0254] In some embodiments, if the signal strength of the satellite signal of satellite 300 is greater than the signal threshold 1, and if the user's current height is less than a preset height (e.g., 2m), and the angle between the acceleration direction of terminal device 100 and the horizontal plane is less than an angle threshold (i.e., the user is moving on the same floor), for example, the angle threshold is equal to 15 degrees, then the landmark is identified as an outdoor ground-level cross-building area; if the height is greater than or equal to the preset height, and the angle is less than the angle threshold, then the landmark is identified as a cross-building sky bridge; if the height is greater than or equal to the preset height, and the angle is within a preset range of the escalator's inclination angle (e.g., 40 to 60 degrees), then the landmark is identified as a cross-building escalator; if it is determined that the user is inside the building, then the landmark the user is currently passing through is determined to be an internal atrium area of the building.
[0255] In some embodiments, for landmarks with a relatively large area, the location of the landmark that the terminal device 100 can record may include the locations where the user passes through the two endpoints of the landmark. In one implementation, as the user moves from location 5 to location 6, the aforementioned landmark recognition method is used to continuously identify landmark 1 and record the two endpoints of the landmark as location 5 and location 6, respectively.
[0256] In one implementation, as the user moves from position 5 to position 6, landmark 1 is continuously identified using the aforementioned landmark recognition method, and its position is recorded as the average position (i.e., the middle position) of positions 5 and 6. In another implementation, as the user moves from position 5 to position 6, landmark 1 is continuously identified using the aforementioned landmark recognition method, and its position is recorded as the most recently detected position 6.
[0257] In some embodiments, for a landmark connecting different floors, such as escalator 1 connecting the 2nd and 3rd floors of Building A, the location of the landmark can be recorded by the two-dimensional location and floor of the two endpoints of the landmark; or by recording the average location of the landmark and the floor of the two endpoints.
[0258] In some embodiments, for a landmark connecting Building A and floor b, such as an aerial bridge connecting Building A and Building B, the location of the landmark can be recorded as the location of the two endpoints of the landmark, or the average location of the detected landmark.
[0259] In some embodiments, when the terminal device 100 passes a landmark, it continuously identifies the landmark type using the aforementioned landmark recognition method and smooths the recognition results to eliminate abnormal recognition results. In one implementation, the user periodically obtains the landmark recognition results according to a preset period 1, and smooths multiple recognition results within the preset period 1 according to a preset period 2 to eliminate abnormal recognition results. The preset period 1 is greater than the preset period 2 and is an integer multiple of the preset period 2. For example, if the recognition result is escalator M (e.g., 5) consecutive times within the preset period 2, and then there are N (e.g., 1) recognition results as stairs, then the above N recognition results are determined to be incorrect, and the above N recognition results are corrected to escalator or deleted. For example, if there are N (e.g., 2) recognition results out of M (e.g., 20) recognition results within the preset period 2, and the M / N ratio is greater than a preset ratio, then the above N recognition results are determined to be incorrect, and the above N recognition results are corrected to escalator or deleted.
[0260] Because the identified landmark's location may deviate from its actual location, this application utilizes a correction module 1 to correct the established landmark's location during user movement, ensuring the landmark is more instructive and reducing location errors. This correction process continues as the user moves after the landmark's initial identification until its location is converged to a more precise position, providing more effective guidance when the user is looking for their vehicle. For example, landmark 1... Figure 6C A correction process for landmark locations is shown, which includes some or all of B1 to B4.
[0261] B1. Identify the landmark type of landmark 1, obtain the location 7 of landmark 1, and then use positioning algorithm 1 (e.g., PDR) to continuously obtain the user's movement trajectory based on sensor data and / or wireless signals.
[0262] B2. Use crowdsourced data of fingerprint positioning to obtain the fingerprint positioning location point. When a new fingerprint positioning location point 3 is obtained, use the location point 3 and the user's current location 8 to correct the location 7 of landmark 1 to location 7-1, and record the corrected location 7-1.
[0263] In some embodiments, each time a new fingerprint location point (e.g., location point 3) is acquired, the historical trajectory between position 7 and position 8 in the user's three-dimensional historical trajectory is corrected based on the displacement between location point 3 and the user's current position 8, including correcting position 8 to location point 3 and correcting position 7 to position 7-1.
[0264] B3. Determine whether the corrected position meets the convergence condition; if not, return to execute B2; if yes, execute B4.
[0265] In this embodiment of the application, the terminal device 100 uses the positioning point of fingerprint positioning to continuously back-calculate the corrected position of the landmark 1 until the corrected position meets the convergence condition.
[0266] In one implementation, the convergence condition includes: the most recent F corrected positions falling within a preset error range; or, the corrected positions no longer changing; or, the most recent F corrected positions following a Gaussian distribution. The statement that the most recent F corrected positions falling within the preset error range means: the average distance between any two adjacent positions among the F corrected positions is less than a threshold of 1; or, obtaining the average position of the F corrected positions, where the average distance between the F corrected positions and the average position is less than a threshold of 1.
[0267] In one implementation, in step B2, the terminal device 100 stores a landmark location record table, which records the landmark type and corrected position of each landmark passed. In step B3, the terminal device 100 can determine whether the corrected position of the specified landmark satisfies the convergence condition based on F consecutive corrected positions of the specified landmark recorded in the landmark location record table.
[0268] For example, with Figure 6A Taking elevator 2 as an example, Table 2 shows a landmark location record table. Table 2 shows the landmark type, landmark number, initial location of the landmark detected using sensor data, and the corrected location obtained using fingerprint positioning.
[0269] For example, referring to the landmark locations shown in Table 2, Figures 7A to 7F A schematic diagram of the position correction for elevator 2 is shown. (For example...) Figure 7A As shown, at time T0, after the terminal device 100 detects the initial position L0 of the elevator 2 using sensor data, it continues to detect the user's real-time position using sensor data, starting from the initial position L0. Figure 7A The diagram shows the user's movement trajectory 1 recorded by terminal device 100 from time T0 to time T1. At time T1, fingerprint positioning detects that the user is currently at location point D1, which is different from the user's location detected by sensor data. Terminal device 100 uses D1 to correct the movement trajectory 1 from time T0 to time T1, obtaining... Figure 7B The corrected movement trajectory 1' is shown, where the position of elevator 2 is corrected to L1. Terminal device 100 continues to detect the user's real-time position using sensor data, starting from position L1. Figure 7C The diagram shows the user's movement trajectory 2 recorded by terminal device 100 from time T0 to time T2. At time T2, fingerprint positioning detects that the user is currently at location point D2, which is different from the user's location detected by sensor data. Terminal device 100 uses D2 to correct the movement trajectory 2 from time T0 to time T2, obtaining... Figure 7D The corrected movement trajectory 2' is shown, where the position of elevator 2 is corrected to L2. Figure 7E The diagram shows the user's movement trajectory 2 recorded by terminal device 100 from time T0 to time T2. At time T2, fingerprint positioning detects that the user is currently at location point D2, which is different from the user's location detected by sensor data. Terminal device 100 uses D2 to correct the movement trajectory 2 from time T0 to time T2, obtaining... Figure 7FThe corrected movement trajectory 2' is shown, where the position of elevator 2 is corrected to L2. If the corrected L1, L2, and L3 meet the convergence condition, the position of elevator 2 will no longer be corrected using fingerprint positioning; otherwise, the position of elevator 2 will continue to be corrected based on the positioning points of fingerprint positioning.
[0270] B4. Record the latest corrected position of landmark 1 as the position of landmark 1.
[0271] In this embodiment of the application, a 3D landmark map can be constructed and updated based on the identified landmarks visited by the user. See also Figure 6A The 3D landmark map indicates the number of floors in a building and the landmark information that users pass through on each floor.
[0272] In some embodiments, the terminal device 100 can also infer the landmark type and location of landmarks that the user has not yet visited based on the landmarks the user has passed through. The terminal device 100 can also update the 3D landmark map based on the aforementioned unvisited landmarks, and the 3D landmark map further indicates the landmark information of the unvisited landmarks. This improves the 3D landmark map, facilitating the provision of faster navigation routes for users. For example, see... Figure 6A A user takes elevator 1 from -1f in Building A to 2f. Terminal device 100 uses sensor data and / or wireless signals to determine the floor change trend of elevator 1 (i.e., from -1f to 2f). Therefore, it can determine that the intermediate floor between -1f and 2f is a floor where elevator 1 can stop, meaning that elevator 1 also exists at the same location on that intermediate floor. It can be understood that if a user can take elevator 1 from -1f to 2f, they can also most likely take elevator 1 from 1f to 2f or down to -1f.
[0273] In some embodiments, the landmark information may include some or all of the following: landmark type, landmark location, whether the landmark indicates a switch between different areas, and whether the landmark belongs to a specific architectural structure of the building. The different areas mentioned above may refer to different buildings, different floors, or different activity spaces; activity spaces may refer to spaces for a specific purpose, such as parking lots or shopping malls. For example, when the landmark type is an elevator, escalator, staircase, staircase, or ramp, the landmark type may indicate a switch between floors; when the landmark type is a sky bridge across buildings, an atrium within a building, an escalator across buildings, or an outdoor ground-level area across buildings, the landmark type may indicate a switch between buildings; when the landmark type is an entrance / exit to a specific activity space (e.g., a parking lot entrance / exit), the landmark type may indicate a switch between activity spaces; when the landmark type is an atrium within a building, the landmark type may indicate a specific architectural structure.
[0274] In some embodiments, as the user moves, the 3D landmark map is updated based on each newly identified landmark; when the user triggers the vehicle search, the terminal device 100 has already constructed a 3D landmark map based on all identified landmarks. See, for an example. Figure 8A , Figure 8B , Figure 8C , Figure 8D , Figure 8E and Figure 8F Each time a new landmark is identified, the terminal device 100 updates the 3D landmark map based on the landmark information of the new landmark. For example, such as... Figure 8A As shown, after the terminal device 100 takes the elevator from the 2D location 6 of -1f in Building A to the 2D location 6, the terminal device 100 recognizes that there is an elevator 1 on the 2D location 6 of -1f, 2f and 3f, displays the floors of 2f and 3f on the 3D landmark map, and marks the elevator 1 on the 2D location 6 of -1f, 2f and 3f.
[0275] In some embodiments, a 3D landmark map is constructed based on all identified landmarks only when the user triggers a reverse vehicle search.
[0276] S104, The user's input operation to find a car was detected.
[0277] S105. In response to the above input operation 1, plan at least one vehicle-finding navigation route based on the three-dimensional landmark map and the three-dimensional historical trajectory. The starting point of the vehicle-finding navigation route is the user's current location, and the ending point is the parking location of vehicle 200. The vehicle-finding navigation route passes through some or all of the landmarks indicated by the three-dimensional landmark map.
[0278] For example, see Figure 4E and Figure 4F Input operation 1 can be an input operation applied to the vehicle navigation control 303. This application embodiment does not specifically limit input operation 1.
[0279] See Figure 4F The terminal device 100 can display at least one of the above-mentioned vehicle-finding navigation routes on a 3D landmark map for the user to choose from. The above-mentioned at least one vehicle-finding navigation route includes some or all of the following: the navigation route with the shortest travel time, the navigation route with the shortest distance, the navigation route returning along the original route, and a simplified navigation route returning along the original route.
[0280] The above-mentioned return navigation route is the same as the route of the above-mentioned three-dimensional historical trajectory, but the indicated direction of movement is opposite; the return navigation route includes all the landmarks that the user passes through.
[0281] In one implementation, the simplified original route return navigation route mentioned above includes the historical trajectory after removing redundant routes from the 3D historical trajectory, and the movement direction is opposite to that of the historical trajectory. It should be noted that if the user passes a specific landmark, then returns to that landmark via trajectory 1, then trajectory 1 in the 3D historical trajectory is a redundant trajectory. For an example, see [link to example]. Figure 6A Users can travel from Building A to Building B via the inter-building skybridge, and then return to Building A from Building B via the same skybridge. Figure 6A The movement trajectory of the user in Building B can be considered as a redundant route.
[0282] In one implementation, the simplified return-to-origin navigation route includes a trajectory that replaces the lengthy route in the 3D historical trajectory with a faster route, and the movement direction is opposite to that of the historical trajectory. The simplified return-to-origin navigation route includes at least one landmark traversed by the 3D historical trajectory. It should be noted that if a user travels from a specific landmark 1 to a specific landmark 2 via trajectory 2, and if the 3D landmark map indicates that a specific landmark 2 can be reached from the specific landmark 1 via trajectory 3, and trajectory 3 satisfies one or more of the following conditions compared to trajectory 2: trajectory 3 traverses fewer landmarks, the estimated distance of trajectory 3 is shorter, and the estimated walking time of trajectory 3 is shorter, then trajectory 2 in the 3D historical trajectory is a lengthy route and is replaced by trajectory 3 to generate the simplified return-to-origin navigation route. For example, see [link to example]. Figure 6A The three-dimensional historical trajectory and three-dimensional landmark map shown indicate that the user travels from elevator 1 on the -1st floor of Building A to elevator 2 on the 1st floor of Building A via a series of landmarks. According to the three-dimensional landmark map, the trajectory that passes through the above series of landmarks is a long route. Compared with the above trajectory, the route from elevator 1 on the -1st floor of Building A to elevator 1 on the 1st floor, and then walking to elevator 2 on the 1st floor of Building A, passes through fewer landmarks, is shorter, and takes less time to walk.
[0283] In some embodiments, see Figures 4F to 4G According to the relevant description, when terminal device 100 displays multiple car-finding navigation routes, it can present the default recommended navigation route as selected, while other navigation routes are presented as unselected. The default recommended navigation route can be either the navigation route with the shortest travel time or the navigation route with the shortest distance. At most, only one of the multiple car-finding navigation routes can be selected at any given time. The user can switch the selected navigation route, and terminal device 100 can navigate according to the user's selected route.
[0284] In some embodiments, the terminal device 100 only plans and displays the above-mentioned default recommended navigation route.
[0285] In some embodiments, the terminal device 100 obtains multiple navigation routes from the user's current location to the parking location based on the user's current location, the parking location of the vehicle 200, a 3D landmark map, a 3D historical trajectory, and part or all of the internal map of the building where the user is currently located; estimates the walking time and / or distance of each navigation route, and then selects the navigation route with the shortest time and / or the shortest distance from the multiple navigation routes.
[0286] In some embodiments, based on the aforementioned 3D historical trajectory and 3D landmark map, the starting and ending landmarks of the car-finding navigation route are determined, and one or more landmark routes from the starting landmark to the ending landmark are obtained. A landmark route can be considered as a route where multiple landmarks are sequentially connected. One of the aforementioned multiple car-finding navigation routes includes: "the route from the user's current location on the current floor to the starting landmark, and a landmark route from the user's ending landmark to the parking location." In one implementation, the starting landmark is the last landmark the user passes on the current floor in the 3D historical trajectory, and the ending landmark is the first landmark the user passes on the parking floor in the 3D historical trajectory. In another implementation, the starting landmark is the landmark closest to the user on the current floor of the 3D landmark map, and the ending landmark is the landmark closest to the parking location on the parking floor of the 3D landmark map.
[0287] In some embodiments, each landmark on the user's current floor is used as a starting landmark, and each landmark on the parking floor where the vehicle 200 is located is used as an ending landmark; for each starting landmark and ending landmark, one or more landmark routes from the starting landmark to the ending landmark are obtained; one of the above multiple car-finding navigation routes includes: the route from the user's current location on the current floor to the starting landmark, a landmark route, and the route from the user's ending landmark to the parking location.
[0288] In some embodiments, each landmark on the user's current floor is taken as a starting landmark, and the first landmark the user passes through on the parking floor in the three-dimensional historical trajectory is taken as the ending landmark; one or more landmark routes from the starting landmark to the ending landmark are obtained; one of the above multiple car-finding navigation routes includes: the route from the user's current location on the current floor to the starting landmark, a landmark route from the user's ending landmark to the parking location.
[0289] In some embodiments, obtaining one or more landmark routes from a starting landmark to an ending landmark includes: a terminal device 100 traversing landmarks in a 3D landmark map, determining all landmark sequences that can be reached from the starting landmark to the ending landmark, a landmark sequence indicating the landmarks sequentially traversed from the starting landmark to the ending landmark, and sequentially connecting the routes between adjacent landmarks in the aforementioned landmark sequence to obtain the landmark route corresponding to the landmark sequence. For example, Figure 9 It shows Figure 6A The 3D landmark map shown corresponds to a landmark topology map, which indicates all landmarks on the 3D landmark map and the next landmark reachable from each landmark. Based on this landmark topology map, a landmark sequence from any starting landmark to an ending landmark can be obtained. For example, if a user is currently located on the 2nd floor of Building A, with elevator 2 on the 2nd floor of Building A as the starting landmark (i.e., point h) and elevator 1 on the -1st floor of Building A as the ending landmark (i.e., point a), the obtainable landmark sequences include (hiba) and (hcba). Similarly, if a user is currently located on the 1st floor of Building A, with elevator 1 on the 2nd floor of Building A as the starting landmark (i.e., point b) and elevator 1 on the -1st floor of Building A as the ending landmark (i.e., point a), the obtainable landmark sequence includes (ba).
[0290] In some embodiments, the terminal device 100 traverses the landmarks in the 3D landmark map to determine all landmark sequences that can reach the destination landmark from the starting landmark. If the parking floor is lower than the current floor, and the 3D historical trajectory route includes floors higher than the current floor, and the 3D landmark map indicates that at least one landmark can be reached from the starting landmark on the lower floor, the next landmark (i.e., the second landmark) of all the aforementioned landmark sequences is excluded if it is a landmark on a higher floor. Similarly, if the lower floor of the second landmark indicates that at least one landmark can be reached from the second landmark, the next landmark (i.e., the second landmark) of all the aforementioned landmark sequences is excluded if it is a landmark on a higher floor than the second landmark. This process continues until the next landmark is the destination landmark. The remaining at least one landmark sequence after the above exclusion strategy is obtained. The landmark routes corresponding to each of the above at least one landmark sequence are obtained. One of the multiple car-finding navigation routes includes: a route from the user's current location on the current floor to the starting landmark, and a landmark route from the user's destination landmark to the parking location.
[0291] In some embodiments, for a route between two adjacent preset points in a car-finding navigation route (e.g., the route between the user's current location and the starting landmark, the route between adjacent landmarks, and the route between the ending landmark and the parking location), if the user's three-dimensional historical trajectory includes the trajectory between the two preset points, then the route of that segment in the three-dimensional historical trajectory is directly used as the navigation route between the two preset points; if the user's three-dimensional historical trajectory does not include the route between the two preset points, then the straight line route between the two preset points can be used as the navigation route, and the straight line route can be used to indicate the type, orientation, and straight-line distance of the next landmark.
[0292] In one implementation, the terminal device 100 can obtain the internal building map of the building corresponding to the three-dimensional landmark map; for two adjacent preset points in the above-mentioned car-finding navigation route, the terminal device 100 can determine the shortest route between the two preset points based on the path in the internal building map, and use it as the navigation route between the two preset points.
[0293] In some embodiments, the established 3D landmark map can be used as crowdsourced data for the 3D landmark map of the building the user enters and uploaded to the application server of the vehicle APP. This allows other terminal devices 100 to combine the crowdsourced data of the 3D landmark map to create a more complete 3D landmark map, thereby enabling the terminal devices 100 to plan more convenient vehicle-finding navigation routes and provide more effective guidance for users to find their vehicles.
[0294] It is understood that after obtaining the aforementioned multiple vehicle-finding navigation routes, the terminal device 100 estimates the distance between any two adjacent preset points along the route, thereby obtaining the distance of the entire vehicle-finding navigation route. The terminal device 100 can then select the navigation route with the shortest distance from the multiple vehicle-finding navigation routes. Similarly, after obtaining the aforementioned multiple navigation routes, the terminal device 100 estimates the walking time between any two adjacent preset points along the route, thereby obtaining the walking time of the entire vehicle-finding navigation route. The terminal device 100 can then select the navigation route with the shortest walking time from the multiple vehicle-finding navigation routes.
[0295] In some embodiments, before planning a car-finding navigation route, the terminal device 100 may receive user input indicating a specified landmark type (e.g., escalator) / specific landmark (e.g., escalator 1) to be avoided. In this way, when planning a car-finding navigation route, the terminal device 100 prioritizes routes that do not pass through the specified landmark type / specific landmark, thereby improving the user's car-finding navigation experience. In some embodiments, before planning a car-finding navigation route, the terminal device 100 may receive user input indicating a specified landmark type (e.g., elevator) / specific landmark (e.g., elevator 1) to be passed through. In this way, when planning a car-finding navigation route, the terminal device 100 prioritizes routes that pass through the specified landmark type / specific landmark, thereby improving the user's car-finding navigation experience.
[0296] Understandably, when a user passes through too few landmarks to plan more alternative navigation routes, the terminal device 100 plans and displays a return navigation route, guiding the user to return along the same path. As the user moves and passes through more landmarks, the constructed 3D landmark map becomes more complete; the terminal device 100 can plan more navigation routes for the user to choose from, recommending shorter or faster routes to guide the user to find the vehicle 200 more quickly.
[0297] Implementing the embodiments of this application does not require relying on building interior maps. During the user's movement process, the terminal device 100 identifies and marks the landmarks passed by the user, automatically constructs a three-dimensional landmark map, and then plans a vehicle-finding navigation route based on the three-dimensional landmark map. The aforementioned three-dimensional landmark map can be applied to user scenarios involving multiple floors or buildings. Using the aforementioned three-dimensional landmark map, other navigation routes besides the original return navigation route can be planned to shorten the vehicle-finding distance or time. By using the aforementioned three-dimensional landmark map to plan multiple navigation routes for the user to choose from, and providing the user with the right to filter out or avoid specific routes, the user's vehicle-finding navigation experience can be effectively improved.
[0298] S106. Input operation 2 for starting navigation was detected.
[0299] S107. In response to the above input operation 2, navigate according to the currently selected car-finding navigation route 1 among the above at least one car-finding navigation routes, and guide the user to find the vehicle 200.
[0300] For example, see Figure 4F and Figure 4G Input operation 2 can be an input operation performed on the start navigation control 307; however, no specific limitations are imposed on input operation 2 here. See also Figures 4G to 4H According to the relevant description, after the user triggers the start of navigation, the terminal device 100 can navigate using the currently selected car-finding navigation route 1 to guide the user to find the vehicle 200. During the user's movement, the positioning algorithm 1 (e.g., PDR) is used to update the user's current location in real time; when the user's current location deviates from the car-finding navigation route 1, at least one new car-finding navigation route is replanned and displayed based on the user's current location for the user to choose from again; if the user selects the newly planned navigation route, navigation can be performed according to the new route to guide the user to continue searching for the vehicle 200.
[0301] In some embodiments, when updating the user's current location in real time using PDR during user movement, fingerprint positioning or GPS positioning can be used to correct the user's current location in real time to avoid positioning errors of positioning algorithm 1. The correction methods can be referred to the relevant descriptions in the foregoing embodiments, and will not be elaborated upon here.
[0302] In some embodiments, during the user's reverse vehicle search movement, while the PDR is used to update the user's current location in real time, the landmarks that the user passes through can also be detected; when landmark type 1 is detected, and the next landmark indicated by the navigation route (e.g., landmark 2) is landmark type 1, the user's current location is updated to the location of landmark 2 marked in the 3D landmark map.
[0303] In some embodiments, when a user is detected changing floors, the user's current location on the car-finding navigation route 1 (i.e., the real-time starting point of the car-finding navigation route) is moved to the nearest cross-floor landmark (e.g., elevator or escalator entrance) marked on the 3D landmark map; when a user is detected changing buildings, the user's current location is moved to the nearest cross-building landmark (e.g., cross-building sky bridge or indoor building switching point) marked on the 3D landmark map; when a user is detected entering a specific building structure (e.g., an atrium within a building), the user's current location is moved to the nearest atrium marked on the 3D landmark map. For example, when a floor-changing behavior occurs, the starting point of the car-finding navigation route (i.e., the user's current location) is moved to the nearest elevator or escalator.
[0304] In some embodiments, during the user's reverse movement to find their car, while the positioning algorithm 1 (e.g., PDR) updates the user's current location in real time, the user's behavior can also be detected. When trigger condition 1 is detected, indicating that the user is performing cross-level behavior, and the distance between the current location detected by PDR and the location of the nearest cross-level landmark 2 (e.g., elevator, escalator, staircase, etc.) marked in the 3D landmark map is less than a preset distance, it is considered that the user has reached landmark 2, and the user's current location is corrected to the location of landmark 2. If the aforementioned landmark 2 is the next landmark indicated by the car-finding navigation route 1, navigation continues according to the car-finding navigation route 1; otherwise, landmark 2 is used as the starting landmark, a new car-finding navigation route is replanned and displayed, prompting the user to navigate according to the new car-finding navigation route. When trigger condition 1 is met, but the distance between the current location detected by PDR and the location of landmark 2 marked in the 3D landmark map is less than the preset distance, it is considered that a new landmark has been detected. The type of the new landmark is further determined based on sensor data and / or wireless signals. The 3D landmark map is updated based on the new landmark. The new landmark is used as the starting point to replan and display a new car-finding navigation route, prompting the user to navigate according to the new car-finding navigation route.
[0305] When trigger condition 2 is met, indicating that the user is crossing buildings, and the distance between the current location detected by the PDR and the nearest landmark 3 (e.g., an inter-building sky bridge, inter-building escalator, etc.) marked on the 3D landmark map is less than a preset distance, it is considered that the user has reached landmark 3, and the user's current location is corrected to the location of landmark 3. If the aforementioned landmark 3 is the next landmark indicated by the car-finding navigation route 1, navigation continues according to the car-finding navigation route 1; otherwise, landmark 3 is used as the starting landmark, a new car-finding navigation route is replanned and displayed, and the user is prompted to follow the new car-finding navigation route. When trigger condition 1 is met, but the distance between the current location detected by the PDR and the location of landmark 3 marked on the 3D landmark map is not less than a preset distance, it is considered that a new landmark has been detected. The type of the new landmark is further determined based on sensor data and / or wireless signals, the 3D landmark map is updated according to the new landmark, a new car-finding navigation route is replanned and displayed with the new landmark as the starting landmark, and the user is prompted to follow the new car-finding navigation route.
[0306] For example, Figure 10 This illustrates another process for planning a car-finding navigation route provided in this application. In step S104, after detecting the user's input operation to find a car, the terminal device 100 executes... Figure 10 The process shown includes, but is not limited to, steps C1 to C3.
[0307] C1. Based on the user's three-dimensional historical trajectory, determine whether the user has entered other floors via the elevator of the parking floor.
[0308] For example, determining whether a user enters the upstairs shopping mall via the elevator in the parking lot on floor -1.
[0309] C2. If the user enters other floors via elevator 1, then based on the 3D landmark map, determine the car-finding navigation route 1, including the navigation route 1 for the user to reach the nearest floor t via elevator 1, the navigation route 2 for the user to reach the parking floor via elevator 1 on floor t, and the navigation route 3 for the user to reach the parking location via elevator 1 on the parking floor.
[0310] Among them, the starting point of navigation route 1 is the user's current location, and the ending point is elevator 1 on floor t; the starting point of navigation route 2 is elevator 1 on floor t, and the ending point is elevator 1 on the parking floor; the starting point of navigation route 3 is elevator 1 on the parking floor, and the ending point is the parking location.
[0311] In this embodiment of the application, if a user enters the shopping mall upstairs via elevator 1 in the parking lot at -1f, the terminal device 100 can guide the user to the nearest elevator 1 (i.e., elevator 1 on floor t), reach -1f via elevator 1, and then guide the user to the parking location via the elevator at -1f.
[0312] In some embodiments, obtaining navigation route 1 includes: taking each landmark on the user's current floor as the starting landmark and the elevator 1 on a non-parking floor as the ending landmark, determining multiple landmark sequences based on the landmark topology map corresponding to the three-dimensional landmark map; determining the landmark sequence 1 with the shortest estimated distance / shortest estimated time among the multiple landmark sequences, the ending landmark of landmark sequence 1 being the elevator 1 on floor t; and connecting adjacent landmarks in landmark sequence 1 to obtain navigation route 1.
[0313] In some embodiments, the historical trajectory of the elevator 1 from the parking floor to the parking location is obtained as the navigation route 3. In some embodiments, if the parking floor includes multiple landmarks, the elevator 1 of the parking floor is taken as the starting landmark, and the landmark closest to the parking location in the parking floor is taken as the ending landmark. Based on the landmark topology map corresponding to each landmark in the parking floor of the 3D landmark map, multiple landmark sequences are determined; the landmark sequence 2 with the shortest estimated distance / shortest estimated time is determined among the above multiple landmark sequences; the navigation route 3 includes the landmark route generated by concatenating the landmark sequence 2, and the route from the ending landmark to the parking location.
[0314] C3. If the user does not enter other floors via elevator, determine the landmark closest to the user's current location, using that landmark as the starting landmark and the first landmark the user enters from the parking floor as the ending landmark; determine the car-finding navigation route 1, including the navigation route 4 from the user's current location to the starting landmark, the navigation route 5 corresponding to the landmark sequence from the starting landmark to the ending landmark, and the navigation route 6 from the first landmark mentioned above to the parking location.
[0315] For example, see Figure 6A The first landmark for users to enter other floors from the parking floor is elevator 1, which is -1f.
[0316] The methods for obtaining the navigation route 4 from the user's current location to the starting point landmark and the navigation route 5 between the starting point landmark and the ending point landmark can refer to the relevant descriptions in the foregoing embodiments. The methods for obtaining the navigation route 6 can refer to the relevant descriptions of the navigation route 3, and will not be repeated here.
[0317] In this embodiment of the application, if the user does not enter the shopping mall on the upper floor through the elevator of the parking lot on -1f, but enters the shopping mall on the upper floor through other landmarks (such as the escalator 3 of the parking floor), the terminal device 100 can guide the user to the nearest landmark on the current floor, guide the user from the nearest landmark to the escalator 3 of the parking floor, and then guide the user from the escalator 3 to the parking position.
[0318] The various embodiments of this application can be combined arbitrarily to achieve different technical effects.
[0319] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state disk (SSD)).
[0320] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. This program can be stored in a computer-readable storage medium, and when executed, it can include the processes described in the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM or random access memory (RAM), magnetic disks, or optical disks.
[0321] In summary, the above description is merely an embodiment of the technical solution of this application and is not intended to limit the scope of protection of this application. Any modifications, equivalent substitutions, improvements, etc., made based on the disclosure of this application should be included within the scope of protection of this application.
Claims
1. A navigation method applied to a terminal device, characterized in that, The method includes: When the user leaves the vehicle, determine the vehicle's parking location; Based on first sensor data from at least one sensor, determine the user's real-time location after leaving the vehicle; Based on second sensor data from at least one sensor and / or a received first wireless signal, the landmark type and location of the landmark passed by the user are identified, and the location of the landmark indicates the floor where the landmark is located; Based on the identified landmark types and locations, a three-dimensional landmark map is constructed, which indicates at least one floor of the building the user passes through and the landmark information of the landmarks on each floor. Receive the first input operation; In response to the first input operation, a first navigation route is planned based on the three-dimensional landmark map; the starting point of the first navigation route is the user's current location, the ending point is the parking location, and the first navigation route passes through one or more landmarks in the three-dimensional landmark map in sequence.
2. The method according to claim 1, characterized in that, The method further includes: Using the user's real-time location obtained based on the data from the first sensor, a three-dimensional historical trajectory of the user is generated; the starting point of the three-dimensional historical trajectory is the parking location, and the ending point is the user's current location. The user's position at a specific moment in the three-dimensional historical trajectory indicates the user's two-dimensional position on the horizontal plane and the floor where the user is located at that specific moment.
3. The method according to claim 1, characterized in that, The method further includes: Based on the identified landmarks passed by the user, the landmark type and location of landmarks in the building that the user has not visited are inferred; the three-dimensional landmark map also indicates the landmark information of the landmarks that the user has not visited, inferred by the terminal device.
4. The method according to claim 1, characterized in that, The identification of the landmark type and location of the landmarks traversed by the user, based on second sensor data from at least one sensor and / or received first wireless signals, includes: When identifying the landmark type of the first landmark passed by the user based on the second sensor data of the at least one sensor and / or the received first wireless signal, the current location of the user obtained based on the first sensor data is taken as the location of the first landmark.
5. The method according to claim 1, characterized in that, When the user passes through different landmarks, the data characteristics of the second sensor data and / or the signal characteristics of the first wireless signal detected by the terminal device are different. The terminal device stores identification conditions corresponding to different landmark types. The identification conditions corresponding to the first landmark type indicate the data characteristics of the second sensor data and / or the signal characteristics of the first wireless signal detected at the landmark of the first landmark type. The identification of the landmark type of the landmark traversed by the user, based on second sensor data from at least one sensor and / or received first wireless signals, includes: When the identification conditions of the first landmark type are met, the landmark currently passing through the first landmark type is identified.
6. The method according to claim 1, characterized in that, The identification of the landmark type and location of the landmarks traversed by the user, based on second sensor data from at least one sensor and / or received first wireless signals, includes: Based on second sensor data from at least one sensor and / or received first wireless signals, the type and location of the landmark through which the user passed a first landmark are identified. The method further includes: When the current location is obtained as the first positioning point of fingerprint positioning using crowdsourced data of fingerprint positioning, the position of the first landmark is corrected according to the displacement between the first positioning point and the current position of the user determined based on the first sensor data, and the corrected position of the first landmark is recorded. When the position of the first landmark after multiple corrections meets the convergence condition, the latest corrected position is taken as the position of the first landmark.
7. The method according to claim 1, characterized in that, The landmark types include some or all of the following: landmarks for multiple floors, landmarks for multiple buildings, and landmarks for special building structures; The landmarks used for cross-floor access include some or all of the following: elevators, escalators, stairs, and cross-floor ramps; The landmarks used for cross-building include some or all of the following: cross-building sky bridges, outdoor ground-level cross-building areas, indoor cross-building areas, and entrances / exits of parking lots between different buildings; The landmark used for special building structures includes or includes the following parts: the hollow area inside the building, the entrance to the building parking lot, and the entrance to the mezzanine parking lot.
8. The method according to claim 2, characterized in that, The step of planning a first navigation route in response to a first input operation includes: In response to a first input operation, at least one navigation route is planned, the at least one navigation route including a first navigation route, the at least one navigation route including some or all of the following: the shortest time navigation route, the shortest distance navigation route, the original route return navigation route, and the simplified original route return navigation route; the original route return navigation route is the same as the route of the three-dimensional historical trajectory, but the indicated movement direction is opposite; Obtaining the simplified original route return navigation route includes: replacing the long routes in the original route return navigation route with routes that are shorter in distance / time, and deleting redundant routes in the original route return navigation route.
9. The method according to claim 8, characterized in that, The step of planning a first navigation route in response to a first input operation includes: Based on the three-dimensional landmark map, obtain one or more navigation routes from the user's current location to the parking location, and select the first navigation route from the one or more navigation routes; the first navigation route is the navigation route with the shortest distance or the navigation route with the shortest travel time.
10. The method according to claim 9, characterized in that, The step of obtaining one or more navigation routes from the user's current location to the parking location based on the three-dimensional landmark map includes: Based on the three-dimensional landmark map, one or more landmark routes from the starting landmark to the ending landmark are obtained. A landmark route is a route generated by sequentially connecting multiple landmarks in the three-dimensional landmark map. The starting landmark among the multiple landmarks is the landmark on the floor where the user is currently located, and the ending landmark among the multiple landmarks is the landmark on the parking floor where the parking location is located. Obtain the navigation routes corresponding to the one or more landmark routes; When the starting landmark and the ending landmark of one or more landmark routes are different, the corresponding navigation routes include: the route from the user's current location to the starting landmark, the landmark route, and the route from the ending landmark to the parking location. When the starting landmark and the ending landmark are the same in one of the one or more landmark routes, the corresponding navigation route includes: the route from the user's current location to the starting landmark, and the route from the ending landmark to the parking location.
11. The method according to claim 10, characterized in that, The starting landmark is the landmark closest to the user in the current floor of the 3D landmark map, and the ending landmark is the landmark closest to the parking location in the parking floor of the 3D landmark map; Alternatively, the starting landmark is the last landmark the user passed on the current floor in the three-dimensional historical trajectory, and the ending landmark is the first landmark the user passed on the parking floor in the three-dimensional historical trajectory. Alternatively, the starting point landmark can be any one of the landmarks on the current floor of the 3D landmark map, and the ending point landmark can be any one of the landmarks on the parking floor of the 3D landmark map. Alternatively, the starting landmark is any landmark in the current floor of the three-dimensional landmark map, and the ending landmark is the first landmark that the three-dimensional historical trajectory passes through in the parking floor; Alternatively, the starting landmark is the first landmark that the three-dimensional historical trajectory passes through in the parking floor; The endpoint landmark is the first landmark used by the user when switching from the parking floor to other floors in the three-dimensional historical trajectory.
12. The method according to claim 10, characterized in that, The acquisition of one or more landmark routes from the starting landmark to the ending landmark includes: Based on the landmark topology map corresponding to the 3D landmark map, one or more landmark sequences from the starting landmark to the ending landmark are determined; the landmark topology map indicates all landmarks in the 3D landmark map, as well as the next landmark that each landmark can reach; a landmark sequence indicates the landmarks passed sequentially from the starting landmark to the ending landmark, and the one or more landmark sequences include a first landmark sequence; By sequentially connecting the routes between adjacent landmarks in the first landmark sequence, the landmark routes corresponding to the first landmark sequence are obtained.
13. The method according to any one of claims 2 to 12, characterized in that, For two adjacent preset points in the first navigation route, if the three-dimensional historical trajectory includes the trajectory between the two preset points, then the trajectory between the two preset points in the three-dimensional historical trajectory shall be taken as the route between the two preset points in the first navigation route. If the three-dimensional historical trajectory does not include the trajectory between the two preset points, then the straight line between the two preset points is taken as the route between the two preset points in the first navigation route, and the straight line is used to indicate the location and straight-line distance of the next landmark. The preset points in the first navigation route include, in sequence: the user's current location, landmarks arranged in sequence, and parking locations.
14. The method according to any one of claims 1 to 12, characterized in that, The terminal device stores the interior map of the building corresponding to the three-dimensional landmark map; the route between two adjacent preset points in the first navigation route is the shortest route between the two preset points determined according to the path in the interior map of the building. The preset points in the first navigation route include, in sequence: the user's current location, landmarks arranged in sequence, and parking locations.
15. The method according to any one of claims 1 to 12, characterized in that, The identification of the landmark type and location of the landmarks traversed by the user, based on second sensor data from at least one sensor and / or received first wireless signals, includes: The signal of the first beacon device was detected by a first short-range communication technology. The signal of the first beacon device indicated the landmark type of the first landmark. The first beacon device was deployed on the first landmark. Based on the signal from the first beacon device, the landmark type of the first landmark is identified.
16. The method according to any one of claims 1 to 12, characterized in that, The check before the user leaves the vehicle also includes: The terminal device has satellite positioning enabled and uses satellite positioning to obtain the user's real-time location; When the satellite signal is too weak to perform satellite positioning, the user's real-time location is obtained from the most recently acquired satellite positioning location as the starting point, and the second positioning algorithm is used to obtain the user's real-time location based on the third sensor data from at least one sensor. When the system detects that a user has left the vehicle, determining the vehicle's parking location includes: When the user is detected leaving the vehicle, the parking position of the vehicle is determined based on the user's real-time location obtained from the data of the third sensor.
17. The method according to any one of claims 1 to 12, characterized in that, When the system detects that a user has left the vehicle, determining the vehicle's parking location includes: When the user is detected to have left the vehicle, the system uses an initial virtual coordinate as the starting point and a first positioning algorithm to calculate the virtual coordinates of the user's real-time location after leaving the vehicle based on the first sensor data from the at least one sensor. The first historical trajectory traversed by the user is obtained based on the virtual coordinates. The starting point of the first historical trajectory is the initial virtual coordinates, and the ending point is the virtual coordinates of the user's real-time location. Collect signal fingerprints, and perform fingerprint positioning based on the collected signal fingerprints and crowdsourced fingerprint positioning data to determine whether the user is at the fingerprint positioning point. Based on the collected first signal fingerprint and the crowdsourced data of the fingerprint positioning, the first location point of the user after leaving the vehicle is determined. Based on the first positioning point, the virtual coordinates in the first historical trajectory are corrected to actual coordinates; the starting point of the corrected first historical trajectory is the parking position, and the ending point is the first positioning point.
18. The method according to any one of claims 1 to 12, characterized in that, There is a first-time error between the detected moment when the user leaves the vehicle and the actual moment when the user leaves the vehicle; When the terminal device detects that the user has left the vehicle at the first moment, it records the user's second historical trajectory, which includes the user's movement trajectory after leaving the vehicle and before the user's departure from the vehicle was detected. After detecting that the user has left the vehicle, the method further includes: Based on the first moment when the user was detected leaving the vehicle and the time error, the second moment when the user actually left the vehicle is determined. Obtain the position corresponding to the second moment in the second historical trajectory, and correct the parking position of the vehicle to the position corresponding to the second moment.
19. The method according to claim 2, characterized in that, The method further includes: Collect signal fingerprints, and perform fingerprint positioning based on the collected signal fingerprints and crowdsourced fingerprint positioning data to determine whether the user is at the fingerprint positioning point. After determining the user's real-time location after leaving the vehicle, the method further includes: At the third moment, based on the collected first signal fingerprint and the crowdsourced data of the fingerprint positioning, it is determined that the user has arrived at the second positioning point; The user's real-time position in the three-dimensional historical trajectory at the second moment is corrected to the second positioning point.
20. The method according to claim 2, characterized in that, The method further includes: After determining the user's real-time location after leaving the vehicle, the method further includes: In the third moment, satellite positioning is used to obtain the user's initial location; The user's real-time position in the three-dimensional historical trajectory at the third moment is corrected to the first position.
21. The method according to claim 2, characterized in that, The method further includes: Receive the second input operation; In response to the second input operation, navigation is performed based on the first navigation route.
22. A terminal device, characterized in that, include: A processor and a memory, the memory being coupled to the processor, the memory being used to store computer program code, the computer program code including computer instructions, which, when the processor reads from the memory, cause the terminal device to perform the navigation method as described in claims 1 to 21.
23. A computer-readable storage medium, characterized in that, Includes computer instructions that, when executed on a terminal device, cause the server to perform the navigation method as described in claims 1 to 21.