Method for generating moving state track of terminal equipment

By combining the positioning measurement results provided by the terminal device and the data at surrounding time points, the server uses Kalman smoothing and other methods to generate the moving state trajectory of the terminal device, solving the problem of inaccurate position trajectory in the prior art and achieving higher trajectory accuracy.

CN119996923APending Publication Date: 2025-05-13U-BLOX
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411591681.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-11-09
Filing Date
2024-11-08
Publication Date
2025-05-13

AI Technical Summary

Technical Problem

When existing terminal devices acquire position tracks, due to poor GNSS signal reception and environmental interference, the position tracks are inaccurate, making it difficult to accurately reflect the actual moving state of the terminal device.

Method used

The server uses the positioning measurement results provided by the terminal device, and combines the positioning measurement results before and after the time point, and uses methods such as Kalman smoothing to determine the position of the terminal device, thereby generating a more accurate moving state trajectory.

Benefits of technology

Improve the accuracy of the terminal device's movement state trajectory, bring the generated trajectory closer to the actual trajectory, and more accurately determine other movement information, such as speed and time, under the same framework.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119996923A_ABST
    Figure CN119996923A_ABST
Patent Text Reader

Abstract

The invention discloses a method for generating a moving state track of terminal equipment. The invention provides a method for generating a moving state track of a terminal device moving between a first time point T0 and a second time point T. The moving state comprises the position of the terminal device. The method comprises the steps that the server obtains a positioning measurement result at a corresponding time point t (k) between T0 and T through the terminal equipment, k is an integer and a time point index, 0 < = k < = N, and N is an integer and Ngt; 0, t (0) = T0, and t (N) = T; the server determines the moving state of the terminal equipment at the time point t (k) according to each time point t (k), and when klt is greater than or equal to 0; when N is greater than or equal to 1, the server determines the position of the terminal device at t (k) by using a positioning measurement result between a corresponding third time point t (k-a) and a corresponding fourth time point t (k + b), a and b are integers, and a is greater than or equal to 0 and less than or equal to k and 0 lt; b < = (N-k); when k = N, the server determines the position of the terminal device at t (k) by using a positioning measurement result between a third time point t (k-a) and t (k); and the server generates a moving state track of the terminal equipment through the combined and determined positions.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a method for generating a movement state trajectory of a terminal device. The present disclosure also relates to a computing device, a system and a computer program product. Background Art

[0002] Various terminal devices such as mobile phones and wearable devices are widely used to provide location trajectories for users. For example, in many scenarios, users may be interested in location trajectories when doing outdoor sports such as running or skiing, or visiting a place during travel. The smart phone or wearable device carried by the user can obtain the location during the user's movement and provide the location trajectory to the user.

[0003] However, such terminal devices have limited capabilities, for example, relatively low hardware performance due to the limited size of the terminal device. If the terminal device relies on a global navigation satellite system (GNSS) signal to obtain the location of the terminal device, a relatively small GNSS antenna may result in poor GNSS signal reception and inaccurate location. In addition, the user may move in a variety of environments, such as in a city or in nature, where conditions may vary due to buildings, streets, woods, weather, etc. Such environments may further affect the reception of GNSS signals and introduce further uncertainty in the obtained position. In this case, the trajectory of the location may be very different from the actual trajectory of the terminal device location. It is desirable to provide an accurate trajectory of the terminal device location that is close to the actual trajectory.

[0004] In conventional applications, this situation cannot be well solved. Summary of the invention

[0005] The object to be achieved is to provide an improved processing concept for generating a trajectory of the movement state of a terminal device with a higher accuracy.

[0006] This object is achieved by the subject matter of the independent claims. Embodiments and developments result from the dependent claims.

[0007] According to the present disclosure, a terminal device is attached to a user or an object. The terminal device moves with the user or the object within a period of time. The server obtains the positioning measurement results within the period of time via the terminal device, and generates a position trajectory of the terminal device within the period of time. This position trajectory can be represented as a position sequence with a starting position and an ending position, which describes the movement trajectory of the terminal device from the starting position to the ending position.

[0008] The improved processing concept is based on the idea that the server not only uses the positioning measurement results at a certain point in time to determine the position of the terminal device at that point in time, but also uses the positioning measurement results before and after that point in time. In this way, when determining the position at that point in time, the positioning measurement results from the past and future of that point in time are taken into account. By considering the potential correlation between the actual positions in the past and future, the accuracy of the determined position can be improved. The position trajectory is generated by combining the determined positions, so the generated trajectory is closer to the actual trajectory of the position and the accuracy of the generated trajectory is improved.

[0009] In addition, based on the improved processing concept, not only can the position be determined more accurately, but other movement information, such as the speed corresponding to the position or the time corresponding to the position, can also be determined more accurately within the same framework. The trajectories of all these movement information can be generated more accurately.

[0010] According to the present disclosure, a method for generating a trajectory of the movement state of a terminal device moving between a first time point T0 and a second time point T is provided, wherein the movement state includes the position of the terminal device, and T0 < T. The method includes the following steps: the server obtains the positioning measurement results at the corresponding time points t(k) between T0 and T via the terminal device, where k is an integer and is the index of the time point, 0 ≤ k ≤ N, N is an integer and N > 0, t(0) = T0 and t(N) = T; the server determines the movement state of the terminal device at each time point t(k), where when 0 ≤ k < N, the server uses the positioning measurement results between the corresponding third time point t(k - a) and the corresponding fourth time point t(k + b) to determine the position of the terminal device at t(k), where a and b are integers, 0 ≤ a ≤ k and 0 < b ≤ (N - k); and when k = N, the server uses the positioning measurement results between the third time point t(k - a) and t(k) to determine the position of the terminal device at t(k); and the server generates a trajectory of the movement state of the terminal device by combining the determined positions (especially those of all time points t(k)) into a sequence of determined positions in the order according to k, where the determined position at t(0) is the starting position of the sequence and the position at t(N) is the ending position of the sequence. In this way, the server can use the positioning measurement results at t(k) and the positioning measurement results available before and after t(k) to determine the position at t(k), so that the generated trajectory is more accurate and closer to the real trajectory.

[0011] In an example implementation of this method, when 0 ≤ k < N, the server determines the position of the terminal device at t(k) based on Kalman smoothing, including formulating a state vector at each t(k), where the state vector includes the rough position of the terminal device, and the rough position is based on the positioning measurement results at t(k); and calculating the position at t(k) using Kalman smoothing based on the state vectors between t(k - a) and t(k + b). By using Kalman smoothing, the positioning measurement results in the past and future are filtered, so that the determined position is the result smoothed from the past and future, and the potential correlation between the real positions in the past and future in the real trajectory is effectively considered in the result. Therefore, the determined position and the generated trajectory are more accurate.

[0012] In some implementations of this method, the movement state further includes the speed of the terminal device and / or the time corresponding to the position of the terminal device. For example, the positioning measurement results include not only the measurement results for determining the position of the terminal device, but also the measurement results for determining the speed corresponding to the position or the time corresponding to the position. In this way, when determining the movement state, in addition to determining the position, the speed or time can also be determined, and the trajectory of the movement state is the trajectory of the position with the corresponding speed or the corresponding time. In such an implementation, the trajectory of the movement state provides more types of movement information of the terminal device and has a higher accuracy.

[0013] In some implementations of this method, the positioning measurement results may include at least one of the following items: GNSS measurement results, or sensor measurement results, such as WiFi ranging measurement results or Bluetooth ranging measurement results, measurement results of the angle of arrival or the angle of departure, and so on. The GNSS measurement results may include Doppler measurement results, ranging measurement results, or carrier phase measurement results, etc. In such an implementation, more types of measurement results can be used to generate a trajectory under the same framework, and the accuracy of the trajectory can be further improved.

[0014] In some implementations of this method, the server can use various auxiliary information to determine the position of the terminal device, such as the position of GNSS satellites, the orbits of GNSS satellites, ionospheric data, tropospheric models, inertial sensor data, or GNSS correction data. Such auxiliary information can be used to correct the positioning measurement results, or evaluate the quality or reliability of the positioning measurement results, so that the positioning measurement results can be used with different confidence levels or different weights when determining the position. Therefore, in such an implementation, the accuracy of the trajectory can be further improved.

[0015] In an exemplary implementation of the method, the terminal device obtains and records positioning measurement results at each t(k); the terminal device provides the recorded positioning measurement results to the server, so that the server obtains the positioning measurement results for generating a trajectory.

[0016] In an exemplary implementation of the method, the server provides the terminal device with a trajectory of the movement state of the terminal device; the terminal device displays the trajectory on a display of the terminal device so that a user can view the trajectory from the display.

[0017] The present disclosure also provides a computing device for generating a trajectory of the movement state of a terminal device according to an improved processing concept.

[0018] The computing device is configured to: obtain positioning measurement results of the terminal device at corresponding time points t(k) between a first time point T0 and a second time point T, where k is an integer and is an index of the time points, 0≤k≤N, N is an integer, t(0)=T0 and t(N)=T. The computing device is further configured to: determine the movement state of the terminal device for each time point t(k), where the movement state includes the position of the terminal device, and when 0≤k<N, the computing device is configured to: use the positioning measurement results between a corresponding third time point t(k-a) and a corresponding fourth time point t(k+b) to determine the position of the terminal device at t(k), where a and b are integers, 0≤a≤k and 0<b≤(N-k); when k=N, the computing device is configured to: use the positioning measurement results between a third time point t(k-a) and t(k) to determine the position of the terminal device at t(k). The computing device is further configured to: generate a trajectory of the movement state of the terminal device by combining the determined positions (especially those of all time points t(k)) into a sequence of determined positions in the order according to k, where the determined position at t(0) is the starting position of the sequence and the position at t(N) is the ending position of the sequence.

[0019] In some implementations of the computing device, when 0≤k<N, the computing device may further be configured to: construct a state vector at each t(k), where the state vector includes a rough position of the terminal device, and the rough position is based on the positioning measurement results at t(k); and calculate the position at t(k) using Kalman smoothing based on the state vectors between t(k-a) and t(k+b).

[0020] In some implementations of the computing device, the movement state further includes the speed of the terminal device and / or the time corresponding to the position of the terminal device.

[0021] In some implementations of the computing device, the positioning measurements include at least one of: Global Navigation Satellite System (GNSS) measurements or sensor measurements, wherein the GNSS measurements include Doppler measurements and ranging measurements.

[0022] Further implementations of the computing device can be easily seen from the various implementations described above in conjunction with the method.

[0023] The system according to the improved processing concept may include a computing device and a terminal device configured according to one of the above implementations. The terminal device may be configured to: obtain positioning measurement results at each t(k); record the positioning measurement results of each t(k); and provide the recorded positioning measurement results of each t(k) to the computing device.

[0024] In an example implementation of the system, the computing device may be further configured to provide the terminal device with a trajectory of the movement state of the terminal device. The terminal device may be further configured to display the trajectory on a display of the terminal device.

[0025] In an example implementation of the system, the system may also be configured to include a mobile phone. The terminal device may be a wearable device and is further configured to provide the recorded positioning measurement results of each t(k) to the computing device via the mobile phone.

[0026] For a skilled reader, further implementations and developments of the system will become apparent from the various implementations described above in conjunction with the method.

[0027] According to one implementation of the improved processing concept, a computer program includes instructions, which, when executed on one or more processors of at least one computing device, cause the one or more processors to perform the operations of a server according to one of the above-mentioned implementations.

[0028] Furthermore, a computer system may have one or more processors and a storage medium storing computer program instructions, so that the one or more processors can execute the method according to one of the above implementations. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] The improved processing concept will be explained in more detail below with the aid of the accompanying drawings. Elements and functional blocks with the same or similar functions have the same reference numerals throughout the accompanying drawings. Therefore, their description does not need to be repeated in the following drawings.

[0030] In the attached picture:

[0031] Figure 1 An example movement state trajectory of a terminal device is shown;

[0032] Figure 2 A flow chart showing a method for generating a moving state trajectory of a terminal device;

[0033] Figure 3 An example system is shown; and

[0034] Figure 4 Another example system is shown.

[0035] Reference numerals list

[0036] 10, 20 Mobile status trajectory of terminal devices

[0037] A, B path endpoints

[0038] d Moving direction

[0039] 100 Methods

[0040] 101-103 Method Steps DETAILED DESCRIPTION

[0041] Figure 1 An example trajectory of the movement state of a terminal device is shown. The terminal device can be any type of portable device, such as a mobile phone, or any type of wearable device, such as a sports watch or a smart watch. The terminal device can be attached to a user or an object, such as a bicycle or a car, so that the terminal device moves with the user or the object.

[0042] exist Figure 1 In the example shown, the terminal device follows Figure 1 The path shown in white in the middle moves from path endpoint A to path endpoint B in direction d. Figure 1 The trajectory 10 shown by the solid line is the real trajectory of the terminal device actually moving within a period of time (for example, from time point T0 to time point T). Figure 1 The track 20 shown by the dashed line is a possible track generated based on the positioning measurement results in this time period. Ideally, it is expected that the generated track is as close to the real track as possible.

[0043] In particular, the generated trajectory is a trajectory of the position of the terminal device. The generated trajectory can be represented as a sequence of positions with a starting position and an ending position, which describes the movement trajectory of the terminal device from the starting position to the ending position. In some implementations, the generated trajectory may contain more information about the movement of the terminal device. For example, the movement state of the terminal device may include a position, a speed at this position, or the exact time when the terminal device arrives at this position. Therefore, the generated movement state trajectory may contain a trajectory of positions and the corresponding speeds or corresponding times of these positions. For example, a sequence of such movement states representing the generated trajectory contains a sequence of positions, which is associated with the corresponding speeds or corresponding times of these positions.

[0044] Figure 2 A flow chart of a method 100 for generating a mobile state trajectory of a terminal device is shown. For example, the method 100 may generate Figure 1 The trajectory in 20.

[0045] In step 101 , the server obtains positioning measurement results during a time period from T0 to T via a terminal device.

[0046] The server may be a remote server, a cloud server, or a service provider. The server may receive the positioning measurement result from the terminal device. In an example implementation, the positioning measurement result may be available at the terminal device to be provided to the server. In another example implementation, the positioning measurement result or a portion of the positioning measurement result may be available at another sensor associated with the terminal device, or may be available at another wearable device associated with the terminal device. The positioning measurement result or a portion of the positioning measurement result is collected at the terminal device to be further provided to the server.

[0047] In an example implementation, the server may be after T (i.e., the terminal device is at Figure 1 The terminal device may obtain the positioning measurement result after the time period of moving on the trajectory 10 in the example. In this implementation, the terminal device may obtain the positioning measurement result locally or from another sensor and record the positioning measurement result at the terminal device. Afterwards, the terminal device may provide the recorded positioning measurement result to the server. In another example implementation, the server may obtain the positioning measurement result in real time or intermittently during the movement of the terminal device.

[0048] The positioning measurement results include positioning measurement results at discrete time points between T0 and T, for example, the positioning measurement results include positioning measurement results at corresponding time points t(k) between T0 and T, where k is an integer and is the index of the time point, 0≤k≤N, N is an integer and N>0, t(0)=T0, t(N)=T.

[0049] In an example implementation, the positioning measurement results may include GNSS measurement results. For example, the GNSS measurement results may include Doppler measurement results, ranging measurement results, or carrier phase measurement results, etc. Alternatively or additionally, the positioning measurement results may include other sensor measurement results. For example, the positioning measurement results may include ranging measurement results or angle of arrival or angle of departure measurement results using WiFi or Bluetooth technology.

[0050] In an example implementation, the positioning measurement results may be associated with various auxiliary information available to the server, such as the positions of GNSS satellites, the orbits of GNSS satellites, ionospheric data, tropospheric models, inertial sensor data, or GNSS correction data. This auxiliary information can be used to correct the positioning measurement results, or to evaluate the quality or reliability of the positioning measurement results, so that the positioning measurement results can be used with different confidence levels or different weights when determining the position.

[0051] In step 102, the server determines the movement states at all discrete time points from T0 to T. In particular, the server determines the movement state of the terminal device at the time point t(k). The movement state at least includes the position of the terminal device at the time point t(k). In this implementation manner, determining the movement state at t(k) includes determining the position at t(k).

[0052] When determining the position at t(k), a past time window and a future time window with respect to t(k) can be determined. The past time window can be set as the time window between t(k - a) and t(k), where 0 ≤ a ≤ k, and the future time window can be set as the time window between t(k) and t(k + b), where 0 < b ≤ (N - k). When determining the position at t(k), not only the positioning measurement results at t(k), but also the positioning measurement results at the time points in the past time window and the future time window (as long as these positioning measurement results are available) are used to determine the position at t(k). In such an implementation, when determining the position at t(k) in the case of 0 ≤ k < N, the determination of the position at t(k) takes into account the future positions after t(k).

[0053] In such an implementation, a may be considered as the size of a past time window, and b may be considered as the size of a future time window. The window sizes a and b may be predetermined or set when determining the position at t(k). The window sizes a and b may have the same or different values. For example, for a time point t(k), a and b may have the same or different values, depending on how many positioning measurements are available in the past time window and the future time window. If the positioning measurements before t(k) are not considered when determining the position at t(k), the size a may be set to 0; if all available positioning measurements before t(k) are considered, the size a may be set to k. If only the future positioning measurements closest to t(k) are considered, the size b may be set to 1; if all future available positioning measurements after t(k) are considered, the size b may be set to (Nk). As a further example, the size a for different time points t(k) may be the same or different, and the size b for different time points t(k) may be the same or different, depending on how many positioning measurements are available in the past time window and the future time window.

[0054] When there are no positioning measurements available in the future window, such as when determining the position at t(k) when k=N, the position at t(k) and positioning measurements at time points in the past time window are used to determine the position at t(k).

[0055] In an example implementation, when the positioning measurements include GNSS measurements, the server may use GNSS measurements at t(k) and at time points in the past time window and the future time window to determine the position at t(k). In another example implementation, the server may use the above-mentioned other types of positioning measurements at t(k) and at time points in the past time window and the future time window to determine the position at t(k).

[0056] In some implementations, when assistance information is available, the server can use the assistance information when determining the position at t(k). For example, the server can use the assistance information to correct the positioning measurement results, or to evaluate the quality or reliability of the positioning measurement results. The server can use the positioning measurement results with different confidence levels or different weights to determine the position at t(k).

[0057] In some implementations, the mobile state may also include the speed at the location and / or the time at the location. In such an implementation, determining the mobile state at t(k) also includes determining the speed of the terminal device associated with the location at t(k) and / or the precise time associated with the location at t(k). In such an implementation, the server uses the positioning measurement results at t(k) and at time points within the past time window and the future time window to determine the mobile state including the location, speed or time.

[0058] The corresponding methods for determining position, speed or time using the aforementioned positioning measurement results are known to those skilled in the art and are therefore not described in detail here.

[0059] In an example implementation, determining the mobile state at t(k) using the positioning measurement results at t(k) and the positioning measurement results at time points in the past time window and the future time window is based on smoothing filtering, such as Kalman smoothing. For example, the above-mentioned various positioning measurement results or (additionally) the above-mentioned various auxiliary information are used to model the state vector of position or (additionally) velocity or time; the state vector can be put into a smoother, such as the Rauch-Tung-Striebel (RTS) smoothing algorithm; the smoother smoothes the state vector at a time point by using the past and future state vectors. The output state vector contains the smoothed position, velocity or time.

[0060] When only positioning measurements at t(k) and at time points within a past time window are available, determining the movement state at t(k) may be based on Kalman filtering, and filtering the determined movement state using past positioning measurements.

[0061] The corresponding methods for performing Kalman smoothing and filtering are known to those skilled in the art and are therefore not described in detail here.

[0062] In step 103, the server generates a trajectory of the mobile state of the terminal device. When the mobile state includes a position, the trajectory of the mobile state is generated by combining the positions at all time points t(k) determined in step 102. Specifically, the positions determined at all time points t(k) are combined into a sequence according to the order of k, wherein the position determined at t(0) is the starting position of the sequence, and the position at t(N) is the ending position of the sequence. The sequence represents the trajectory of the mobile state from the starting position to the ending position. In such an implementation, the trajectory of the mobile state is the trajectory of the determined position of the terminal device from the position determined at t(0) to the position determined at t(N). When the mobile state includes a position and (additionally) includes a speed or time, the trajectory of the mobile state is generated by combining the position determined in step 102 with the corresponding speed or the corresponding time. For example, each position determined at t(k) can be associated with the speed determined at the position and / or associated with the precise time determined at the position, as performed in step 102. The determined positions associated with the corresponding speeds and / or times at all time points t(k) are combined into a sequence in an order according to k, which represents the trajectory of the movement state from the starting position to the end position. In such an implementation, the trajectory of the movement state contains not only the position trajectory of the terminal device, but also the speed and / or time associated with these positions.

[0063] After step 103, the generated trajectory of the movement state of the terminal device is available at the server. In an example implementation, any type of third-party entity can access the generated trajectory directly from the server. In another example implementation, the server can provide the generated trajectory to the terminal device. The terminal device can display the generated trajectory on a display of the terminal device for the user to view. In a further example implementation, a wearable device such as a smart watch can be associated with the terminal device, and the generated trajectory can be displayed on the display of the wearable device alternatively or additionally.

[0064] Figure 3 An example system including a server and a terminal device is shown, which is used to perform various implementations of the method 100 for generating a movement state trajectory of a terminal device.

[0065] The terminal device may obtain various positioning measurement results, record the positioning measurement results and provide the recorded positioning measurement results to the server. The server may generate a trajectory of the moving state according to various implementations of method 100, and provide the generated trajectory to the terminal device, and the terminal device may display the trajectory on a display of the terminal device.

[0066] Further implementations of the system can be easily seen from the various implementations described above in conjunction with the method 100 .

[0067] Figure 4 An example system including a server, a mobile phone, and a wearable device is shown, and various implementations of the method 100 for generating a trajectory of a location movement state of a terminal device are performed.

[0068] The wearable device may obtain various positioning measurements. The wearable device may record the positioning measurements. The wearable device may provide the recorded positioning measurements to the server via the mobile phone. The server may generate a trajectory of the movement state according to various implementations of method 100, and provide the generated trajectory to the wearable device via the mobile phone. The wearable device may display the generated trajectory on a display of the wearable device. Alternatively, or additionally, the mobile phone may display the generated trajectory on a display of the mobile phone.

[0069] Further implementations of the system can be easily seen from the various implementations described above in conjunction with the method 100 .

[0070] Thus, through the various implementations of the improved processing concept described above, past and future positioning measurements are taken into account to determine the mobile state of the terminal device; various positioning measurements and auxiliary information can be used to generate additional mobile information in addition to the position in the same framework. The generated trajectory has a higher accuracy compared to the real trajectory of the terminal device.

[0071] Various embodiments of the improved processing concept may be implemented in the form of logic in software or hardware or a combination of both. The logic may be stored in a computer-readable or machine-readable storage medium as a set of instructions suitable for directing one or more processors of a (distributed) computer system to perform a set of steps disclosed in an embodiment of the improved processing concept. The logic may form part of a computer program product suitable for directing an information processing device to automatically perform a set of steps disclosed in an embodiment of the improved processing concept.

[0072] Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense. It will, however, be evident that various modifications and changes may be made thereto without departing from the scope of the invention as set forth in the claims.

Claims

1. A method for generating a trajectory of a movement state of a terminal device between a first time point T0 and a second time point T, executed by a server, wherein: The moving state includes the position of the terminal device, and T0 < T. The method includes the following steps: - Obtaining positioning measurement results at corresponding time points t(k) between T0 and T via the terminal device, where k is an integer and is the index of the time point, 0 ≤ k ≤ N, N is an integer and N > 0, t(0) = T0 and t(N) = T; - Determining the moving state of the terminal device at each time point t(k), where - When 0 ≤ k < N, using the positioning measurement results between the corresponding third time point t(k - a) and the corresponding fourth time point t(k + b) to determine the position of the terminal device at t(k), where a and b are integers, 0 ≤ a ≤ k and 0 < b ≤ (N - k); and - When k = N, using the positioning measurement results between the third time point t(k - a) and t(k) to determine the position of the terminal device at t(k); and - Generating a trajectory of the moving state of the terminal device by combining the determined positions.

2. The method according to claim 1, wherein: When 0 ≤ k < N, the step of determining the position of the terminal device at t(k) is based on Kalman smoothing and includes the following steps: - Constructing a state vector at each t(k), where the state vector includes the rough position of the terminal device, and the rough position is based on the positioning measurement results at t(k); and - Using Kalman smoothing to calculate the position at t(k) based on the state vectors between t(k - a) and t(k + b).

3. The method according to claim 1 or 2, wherein: The moving state further includes the speed of the terminal device and / or the time corresponding to the position of the terminal device.

4. The method according to any one of claims 1 to 3, wherein: The positioning measurement results include at least one of the following: Global Navigation Satellite System (GNSS) measurement results and sensor measurement results, where the GNSS measurement results include Doppler measurement results and ranging measurement results.

5. The method according to any one of claims 1 to 4, wherein: The step of determining the position of the terminal device at t(k) further includes using auxiliary information, where the auxiliary information includes at least one of the following: the position of GNSS satellites, the orbits of GNSS satellites, ionospheric data, tropospheric models, inertial sensor data, and GNSS correction data.

6. The method according to any one of claims 1 to 5, the method further includes the following steps: - Obtaining positioning measurement results at each t(k) by the terminal device; - Recording the positioning measurement results of each t(k) by the terminal device; And - Providing the recorded positioning measurement results from the terminal device to the server.

7. The method according to any one of claims 1 to 6, the method further includes the following steps: - Providing the trajectory of the moving state of the terminal device from the server to the terminal device; And - Displaying the trajectory on the display of the terminal device by the terminal device.

8. A computing device, the computing device is configured to: - obtain the positioning measurement result of the terminal device at the corresponding time point t(k) between the first time point T0 and the second time point T, wherein, k is an integer and is the index of the time point, 0 ≤ k ≤ N, N is an integer, t(0) = T0 and t(N) = T; - Determine the movement state of the terminal device for each time point t(k), where the movement state includes the position of the terminal device, where - When 0 ≤ k < N, use the positioning measurement results between the corresponding third time point t(k - a) and the corresponding fourth time point t(k + b) to determine the position of the terminal device at t(k), where a and b are integers, 0 ≤ a ≤ k and 0 < b ≤ (N - k); and - When k = N, use the positioning measurement results between the third time point t(k - a) and t(k) to determine the position of the terminal device at t(k); and - Generate a trajectory of the movement state of the terminal device by combining the determined positions.

9. The computing device according to claim 8, when 0 ≤ k < N, the computing device is further configured to: -Construct a state vector at each t(k), where The state vector includes the rough position of the terminal device, and the rough position is based on the positioning measurement results at t(k); And - Based on the state vector between t(k - a) and t(k + b), use Kalman smoothing to calculate the position at t(k).

10. The computing device according to claim 8 or 9, wherein: The movement state further includes the speed of the terminal device and / or the time corresponding to the position of the terminal device.

11. The computing device according to any one of claims 8 to 10, wherein: The positioning measurement results include at least one of the following: Global Navigation Satellite System (GNSS) measurement results and sensor measurement results, where the GNSS measurement results include Doppler measurement results and ranging measurement results.

12. A system, comprising a computing device and a terminal device according to any one of claims 8 to 11, wherein: The terminal device is configured to: - Obtain positioning measurement results using the received GNSS signals at each t(k); - Record the positioning measurement results of each t(k); and - Provide the recorded positioning measurement results of each t(k) to the computing device.

13. The system according to claim 12, wherein - The computing device is further configured to provide the trajectory of the movement state of the terminal device to the terminal device; and - The terminal device is further configured to display the trajectory on the display of the terminal device.

14. The system according to claim 12 or 13, further comprising a mobile phone, wherein: The terminal device is a wearable device and is further configured to provide the recorded positioning measurement results of each t(k) to the computing device via the mobile phone.

15. A computer program, the computer program includes instructions that, when executed on one or more processors of at least one computing device, cause the one or more processors to perform the operations of the server according to any one of claims 1 to 7.