Trajectory point data processing and querying method, device, equipment, medium and product

CN122594352APending Publication Date: 2026-08-18JD DIGITS HAIYI INFORMATION TECHNOLOGY CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510174602.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-17
Publication Date
2026-08-18

AI Technical Summary

Technical Problem

其中,点存储明显需要占用更多的存储空间,但是数据查询效率较高;而线存储则可以减少一些重复字段的冗余存储,占用存储空间较少,但是数据查询检索的难度更大,查询效率低

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122594352A_ABST
    Figure CN122594352A_ABST
Patent Text Reader

Abstract

The present disclosure provides trajectory point data processing and query method, device, equipment, medium and product, relates to computer technology field, especially to data processing technical field. The specific implementation scheme is: according to the actual time information and actual position information of trajectory point data, the relative space-time information of trajectory point data in the target space-time range is determined;According to the source identifier of the trajectory point data in the target space-time range, the identifier queue in the target space-time range and the sorting position of the source identifier in the identifier queue are determined;According to the relative space-time information and the sorting position of the trajectory point data, the data set in the target space-time range is determined;The target space-time range, the identifier queue and the data set are stored in association, and the space-time database is obtained. The present scheme realizes data compression by using the relative space-time information and the identifier queue of the trajectory point data in the target space-time range, effectively reduces the space requirement of data storage, and saves the data storage cost;And the space-time range is stored in association with the identifier queue and the data content as index information, which can ensure the accuracy of subsequent data query and retrieval, and improve the query and retrieval efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of computer technology, and more particularly to the field of data processing technology, specifically to methods, apparatus, equipment, media, and products for processing and querying trajectory point data. Background Technology

[0002] The spatial location of a moving object at different times can be represented by trajectory points. The trajectory points generated by a moving object during its movement can be sorted in ascending order of timestamps to obtain its trajectory data, such as the trajectory data of vehicles and pedestrians.

[0003] There are two main types of trajectory data management technologies: one is point-based management, called point storage, and the other is line-based management, called line storage. The former treats each trajectory point as a record in the database, while the latter treats an entire trajectory as a record, with the number of trajectory points within the trajectory referred to as the trajectory length. Point storage obviously requires more storage space but offers higher data query efficiency; while line storage can reduce redundant storage of duplicate fields, requiring less storage space, but data retrieval is more difficult and inefficient. Summary of the Invention

[0004] This disclosure provides a method, apparatus, device, medium, and product for processing and querying trajectory point data.

[0005] According to a first aspect of this disclosure, a trajectory point data processing method is provided, comprising the following steps:

[0006] Based on the actual time and location information of the trajectory point data, determine the target spatiotemporal range to which the trajectory point data belongs and the relative spatiotemporal information of the trajectory point data within the target spatiotemporal range;

[0007] Based on the source identifier of the trajectory point data within the target spatiotemporal range, determine the identifier queue within the target spatiotemporal range and the sorting position of the source identifier within the identifier queue;

[0008] By replacing the actual time and actual location information of trajectory point data with relative spatiotemporal information, and by replacing the source identifier of trajectory point data with sorted position, a data set within the target spatiotemporal range is obtained.

[0009] The target spatiotemporal range is associated with and stored in a queue of identifiers and a collection of data to obtain a spatiotemporal database.

[0010] According to a second aspect of this disclosure, a method for querying trajectory point data is provided, comprising the following steps:

[0011] Determine the target spatiotemporal range corresponding to the received data query request;

[0012] Based on the target spatiotemporal range, the target data set and target identifier queue are obtained from the pre-stored spatiotemporal database, wherein the data set and identifier queue in the spatiotemporal database are stored in association with the spatiotemporal range;

[0013] Based on the target data set and the target identifier queue, the target trajectory point data within the target's spatiotemporal range is determined. The target trajectory point data includes actual time information, actual location information, and source identifier.

[0014] Output the target trajectory point data to the sender of the data query request.

[0015] According to a third aspect of this disclosure, a trajectory point data processing apparatus is provided, comprising: a spatiotemporal determination module, an identifier determination module, a data compression module, and a data storage module.

[0016] The spatiotemporal determination module is configured to determine the target spatiotemporal range to which the trajectory point data belongs and the relative spatiotemporal information of the trajectory point data within the target spatiotemporal range, based on the actual time information and actual location information of the trajectory point data.

[0017] The identifier determination module is configured to determine the identifier queue within the target spatiotemporal range and the sorting position of the source identifier in the identifier queue based on the source identifier of the trajectory point data within the target spatiotemporal range.

[0018] The data compression module is configured to replace the actual time and actual location information of the trajectory point data with relative spatiotemporal information, and replace the source identifier of the trajectory point data with sorting position, so as to obtain a data set within the target spatiotemporal range;

[0019] The data storage module is configured to associate and store the target spatiotemporal range with tables, similar lists, and data sets to obtain a spatiotemporal database.

[0020] According to a fourth aspect of this disclosure, a trajectory point data query device is provided, comprising: a range determination module, a data acquisition module, a data determination module, and a data output module. Wherein:

[0021] The range determination module is configured to determine the target spatiotemporal range corresponding to the received data query request;

[0022] The data acquisition module is configured to retrieve a target data set and a target identifier queue from a pre-stored spatiotemporal database based on the target spatiotemporal range, wherein the data set and identifier queue in the spatiotemporal database are stored in association with the corresponding spatiotemporal range;

[0023] The data determination module is configured to determine the target trajectory point data within the target spatiotemporal range based on the target data set and the target identifier queue. The target trajectory point data includes actual time information, actual location information, and source identifier.

[0024] The data output module is configured to output the target trajectory point data to the sender of the data query request.

[0025] According to a fifth aspect of this disclosure, an electronic device is provided, comprising:

[0026] At least one processor; and

[0027] A memory that is communicatively connected to at least one processor; wherein,

[0028] The memory stores instructions that can be executed by at least one processor to enable the at least one processor to perform the method provided by the first aspect or the second aspect.

[0029] According to a sixth aspect of this disclosure, a non-transitory computer-readable storage medium is provided storing computer instructions for causing a computer to perform the methods provided in the first or second aspect.

[0030] According to a seventh aspect of this disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements the method provided according to the first or second aspect.

[0031] The trajectory point data processing and querying method disclosed herein first determines the relative spatiotemporal information of the trajectory point data within its target spatiotemporal range based on the actual time and location information of the trajectory point data. Then, it determines the identifier queue within the target spatiotemporal range and the sorting position of each source identifier within that queue based on the source identifier of the trajectory point data within that target spatiotemporal range. Next, it combines the relative spatiotemporal information and the sorting position to obtain a data set within the target spatiotemporal range. Finally, it associates and stores this data set with the target spatiotemporal range and its identifier queue to obtain a spatiotemporal database. This disclosure divides the trajectory point data according to spatiotemporal range and uses the relative spatiotemporal information obtained to replace the actual time and location information, thus performing preliminary compression of the trajectory point data. It also compresses the source identifiers based on the identifier queue and the sorting position of each trajectory point data's source identifier within the identifier queue, thereby achieving compression of the trajectory point data in at least two aspects, effectively reducing the space requirements for data storage and saving data storage costs. Furthermore, using the spatiotemporal range as index information and associating it with the data content within that spatiotemporal range ensures the accuracy of subsequent data queries and retrievals, improving query and retrieval efficiency.

[0032] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0033] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein:

[0034] Figure 1 This is an exemplary system architecture diagram that can apply the trajectory point data processing and querying methods disclosed herein;

[0035] Figure 2 This is a schematic diagram of a first embodiment of the trajectory point data processing method according to the present disclosure;

[0036] Figure 3a This is a schematic diagram of an exemplary time interval division scheme in this disclosure;

[0037] Figure 3b This is a schematic diagram of an exemplary spatial partitioning scheme in this disclosure;

[0038] Figure 3c This is a schematic diagram of a partitioning scheme for trajectory point data within a spatiotemporal range, as disclosed in this publication.

[0039] Figure 3d This is an exemplary schematic diagram of relative time information in this disclosure;

[0040] Figure 3e This is an exemplary schematic diagram of relative position information in this disclosure;

[0041] Figure 4 This is a schematic diagram illustrating a scenario where latitude and longitude coordinates are converted into pixel coordinates.

[0042] Figure 5 This is a schematic diagram of a second embodiment of the trajectory point data processing method according to the present disclosure;

[0043] Figure 6a This is a schematic diagram of an exemplary partitioning scheme based on the trajectory line data of this disclosure;

[0044] Figure 6b This is an exemplary schematic diagram based on the incremental time information disclosed herein;

[0045] Figure 6c This is an exemplary schematic diagram based on incremental location information according to this disclosure;

[0046] Figure 7 This is a schematic diagram of a first embodiment of the trajectory point data query method according to the present disclosure;

[0047] Figure 8a This is an exemplary schematic diagram of a pyramid model in electronic maps;

[0048] Figure 8b It is a schematic diagram illustrating the correspondence between electronic maps of different levels;

[0049] Figure 9 This is a schematic diagram of a second embodiment of the trajectory point data query method according to the present disclosure;

[0050] Figure 10 This is a schematic diagram of the structure of one embodiment of the trajectory point data processing apparatus according to the present disclosure;

[0051] Figure 11 This is a schematic diagram of the structure of one embodiment of the trajectory point data query device according to the present disclosure;

[0052] Figure 12 This is a block diagram of an electronic device used to implement the trajectory point data processing and / or querying method of the embodiments of this disclosure. Detailed Implementation

[0053] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.

[0054] With the popularization of mobile internet devices and the development of satellite positioning technology, massive amounts of GPS (Global Positioning System)-based trajectory data have been generated, such as trajectory data of vehicles and pedestrians.

[0055] The sheer volume of trajectory data necessitates the high scalability of distributed databases for effective management. However, mainstream distributed databases do not adequately support trajectory data with strong spatiotemporal characteristics. To achieve efficient spatiotemporal queries while minimizing storage space requirements, additional design modifications are needed to extend the trajectory data management capabilities on top of the distributed database. These modifications could include compressing data storage space and utilizing spatiotemporal indexing techniques to improve query efficiency.

[0056] For a trajectory data of length n, point storage requires n records in the database, each containing information such as the source identifier of the trajectory data. Line storage, on the other hand, requires only one record in the database, and the source identifier only needs to be stored once. Each record's index field also requires separate storage space. Therefore, line storage requires less storage space for its index field than point storage, but its data query efficiency and accuracy are relatively lower. Point storage, with its finer data granularity, requires more storage space but offers greater advantages in data querying.

[0057] In addition, the point and line storage methods for trajectory data manage the data in latitude and longitude coordinate format, which cannot be directly rendered into electronic maps that represent pixel coordinates. An additional conversion process is required, resulting in low efficiency in visualizing trajectory data on maps and a high risk of errors.

[0058] This disclosure provides a method for processing and querying trajectory point data, which combines the advantages of point storage and line storage, achieving both data compression rate and query efficiency. Furthermore, it stores the coordinates of trajectory point data in the form of pixel coordinates, effectively improving the visualization efficiency of trajectory point data.

[0059] It should be noted that in the technical solutions disclosed herein, the acquisition, storage, and application of user personal information (such as source user information and location of trajectory point data) are all carried out with the user's knowledge and explicit authorization, comply with relevant laws and regulations, and do not violate public order and good morals.

[0060] Figure 1 An exemplary system architecture 100 is shown, in which embodiments of the trajectory point data processing and querying methods or apparatus of this disclosure can be applied.

[0061] like Figure 1 As shown, the system architecture 100 may include a terminal device 101, a network 102, and a server 103. The network 102 is used to provide a communication link between the terminal device 101 and the server 103, and may include various connection types, such as wired communication links, wireless communication links, or fiber optic cables, etc.

[0062] Users can use terminal device 101 to interact with server 103 via network 102 to receive or send information, etc. Various client applications can be installed on terminal device 101, such as social applications, location or navigation applications, human-computer interaction applications, leisure or entertainment applications, etc.

[0063] Terminal device 101 can be either hardware or software. When terminal device 101 is hardware, it can be various electronic devices, including but not limited to smartphones, tablets, portable positioning devices, laptops, and desktop computers, as well as in-vehicle positioning devices, in-vehicle navigation devices, and other in-vehicle terminal devices. When terminal device 101 is software, it can be installed in the aforementioned electronic devices. It can be implemented as multiple software programs or software modules, or as a single software program or software module. No specific limitations are made here.

[0064] Server 103 can be either hardware or software. When server 103 is hardware, it can be implemented as a distributed server cluster consisting of multiple servers, or as a single server. When server 103 is software, it can be implemented as multiple software programs or software modules (e.g., used to provide distributed services), or as a single software program or software module. No specific limitations are made here.

[0065] The trajectory point data processing and querying method provided in this embodiment is generally executed by server 103, and correspondingly, the trajectory point data processing and querying device is generally set in server 103.

[0066] For example, a user can search for the corresponding trajectory point data from the server 103 through the terminal device 101, and then visualize the searched trajectory point data on the terminal device 101.

[0067] It should be noted that, Figure 1 The number of terminal devices 101, network 102, and server 103 shown is merely illustrative. Depending on implementation needs, there can be any number of terminal devices 101, network 102, and server 103.

[0068] Figure 2 A flowchart 200 is shown as an embodiment of the trajectory point data processing method according to the present disclosure, with reference to... Figure 2 As shown, the trajectory point data processing method includes the following steps:

[0069] Step S201: Based on the actual time information and actual location information of the trajectory point data, determine the relative spatiotemporal information of the trajectory point data within the target spatiotemporal range.

[0070] In this embodiment of the disclosure, the execution entity of the trajectory point data processing method is, for example, Figure 1 The server 103 shown determines the target spatiotemporal range to which the trajectory point data belongs and the relative spatiotemporal information of the trajectory point data within the target spatiotemporal range based on the actual time information and actual location information of the trajectory point data.

[0071] For each moving object, the trajectory point data recorded during its movement includes the source identifier of the source object, and at least two other features: time and space. For example, a trajectory point (GPS) data point includes an object identifier (oid), spatial latitude and longitude (lon, lat), and a timestamp (time), which can be formally represented as gps =<oid,lon,lat,time> , where -180.0≤lon≤180.0, -90.0≤lat≤90.0.

[0072] When storing trajectory point data, the time axis can be divided into multiple time intervals (time slices, bins) of a certain length along the time dimension. These time intervals serve as the smallest time unit for managing trajectory point data. Figure 3a As shown, bin0 to bin5 are six time partitions. For example, the length of a time interval can be selected based on at least one factor, such as the actual data volume or usage requirements. For instance, the length of a time interval can be set to 1 hour, 12 hours, 24 hours, 7 days, 30 days, etc.

[0073] The actual time information of each trajectory point data represents the time when the trajectory point data was generated. For example, this actual time information can be represented in the form of a timestamp.

[0074] In terms of spatial dimension, the entire spatial range can be divided into multiple spatial partitions according to preset spatial division rules, with each spatial partition serving as the smallest spatial unit for trajectory point data management. For example, a spatial partition can be represented by rows and columns.<row,col> ,like Figure 3b As shown.

[0075] For example, to further simplify data and reduce data storage requirements, spatial partitions can be numbered using a preset filling rule, simplifying each spatial partition from a row and column representation to a numbered representation. For example Figure 3b In this process, Z-space curves are used to fill each spatial partition of the electronic map sequentially according to a "Z" pattern, resulting in the corresponding index z for each spatial partition. That is, the spatial partition representation consists of rows and columns.<row,col> It can be simplified to the serial number z.

[0076] In this scheme, spatial partitioning can be obtained by dividing the spatial range of an electronic map, so as to facilitate the visualization of trajectory point data on the electronic map. The electronic map is a map with a side length of 2... n A square pixel range of 1 pixel. In practical applications, electronic maps can be divided into different map levels according to actual needs such as display precision (e.g., display precision on terminal devices). Furthermore, based on the different levels of electronic maps, the spatial range corresponding to the electronic map can be divided into spatial partitions of different specifications.

[0077] In the scheme disclosed herein, the actual time information of the trajectory point data can be represented as the timestamp (time) of the trajectory point data being generated; the actual location information of the trajectory point data can be represented as the spatial latitude and longitude coordinates of the trajectory point data, or as the location coordinates in other coordinate systems obtained by coordinate transformation of the spatial latitude and longitude coordinates of the trajectory point data (such as the xyz coordinates in the world coordinate system). Each trajectory point data, according to its timestamp and location coordinates at the time of its generation, has its own spatiotemporal range, such as its time slice and spatial partition.

[0078] The aforementioned execution entity determines the target spatiotemporal range to which the trajectory point data belongs based on the actual time and location information of the trajectory point data, combined with the preset time slice division length and preset spatial partitioning rules; and further determines the relative spatiotemporal information of the trajectory point data within the target spatiotemporal range to which it belongs.

[0079] The target spatiotemporal range can be a minimum spatiotemporal management unit for trajectory point data. For example, trajectory point data recorded in a spatial partition within a time interval, or trajectory point data recorded in a time interval within a spatial partition, can be considered as a trajectory point data unit.

[0080] Reference Figure 3c As shown, for trajectory point data within a spatial partition, dividing it into time intervals yields data packets within that spatial partition at different time intervals. In other words, a data packet consists of all trajectory point data within a spatiotemporal range, as shown below. Figure 3c The packets 0, 1, ..., 5 are shown. For example, the trajectory point data may be the same or different for different spatiotemporal ranges. For instance, the density of the generated trajectory point data differs under different vehicle speeds, different congestion conditions, or different traffic volumes; therefore, the number of trajectory point data points may differ across different spatiotemporal ranges.

[0081] In some implementations of the embodiments of this disclosure, the target spatiotemporal range includes a first time interval and a first spatial partition, the relative spatiotemporal information includes relative time information and relative position information, and, based on the actual time information and actual position information of the trajectory point data, determining the target spatiotemporal range to which the trajectory point data belongs and the relative spatiotemporal information of the trajectory point data within the target spatiotemporal range includes: determining the first time interval to which the trajectory point data belongs and the relative time information of the actual time information within the first time interval based on the actual time information of the trajectory point data; and determining the first spatial partition to which the trajectory point data belongs and the relative position information of the trajectory point data within the first spatial partition based on the actual position information of the trajectory point data.

[0082] For example, the aforementioned execution entity determines the time interval to which the actual time information belongs based on the actual time information of the trajectory point data, combined with a preset time interval division rule (e.g., the length of each time interval is 24 hours or 7 days), as the first time interval to which the trajectory point data belongs; and determines the relative time information of the actual time information within the first time interval, as the relative time information of the trajectory point data within the first time interval.

[0083] For example, if the length of each time interval is 24 hours, and the actual time information of a certain trajectory point data is 8:53:20 on May 27, 2024, then the first time interval to which the trajectory point data belongs is the time interval corresponding to May 27, 2024, and its relative time information within the first time interval is 8:53:20 within that time interval.

[0084] For example, the aforementioned execution entity, based on the actual location information of the trajectory point data and combined with preset spatial partitioning rules, determines the spatial partition to which the actual location information belongs as the first spatial partition to which the trajectory point data belongs, and further determines the relative position information of the actual location information within the first spatial partition as the relative position information of the trajectory point data within the first spatial partition. The relative position information can be expressed as the relative position coordinates of the actual location information of the trajectory point data relative to the origin of the first spatial partition.

[0085] If a trajectory point data is represented as GPS =<oid,lon,lat,time> Then, the trajectory point data within a spatiotemporal range can be represented as packet =<bin,row,col> Where bin represents the time interval number corresponding to the spatiotemporal range, row represents the spatial partition row number corresponding to the spatiotemporal range, and col represents the spatiotemporal partition column number corresponding to the spatiotemporal range.

[0086] Assuming each time interval spans in seconds, refer to... Figure 3d As shown, the actual time information of the trajectory point data can be represented as time = span × bin + offset. Therefore, the relative time information of the trajectory point data within its corresponding target spatiotemporal range can be represented as offset.

[0087] Assuming each spatial partition has a side length of extent pixels, refer to... Figure 3e As shown, the actual location information of trajectory point data can be represented as a map. x =col×extent+tile x map y = row × extent + tile yTherefore, the relative position information of this trajectory point data within its corresponding target spatiotemporal range can be represented as: <tile x , tile y >

[0088] In practical applications, the values ​​of span and extent are both very small positive integers, which can usually be represented by 2 bytes. Therefore, by using relative time information and relative position information to construct relative spatiotemporal information and replacing the actual time information and actual position information of trajectory point data, the storage space of the data can be greatly compressed.

[0089] In this implementation, the aforementioned execution entity determines the first time interval to which the trajectory point data belongs and the relative time information within the first time interval based on the actual time information of the trajectory point data. It also determines the first spatial partition to which the trajectory point data belongs and the relative position information within the first spatial partition based on the actual position information of the trajectory point data. This effectively ensures the accuracy of the obtained relative time information and relative position information. Furthermore, the relative time information and relative position information are used as the relative spatiotemporal information of the trajectory point data within the first spatial partition, and are used to replace the actual time information and actual position information. This enables effective compression of the trajectory point data, reduces the data storage space requirement, effectively reduces the amount of data storage while ensuring data accuracy, saves data storage costs, and improves the utilization rate of data storage space.

[0090] In some implementations of the embodiments of this disclosure, the actual location information includes latitude and longitude coordinates, and determining the first spatial partition to which the trajectory point data belongs based on the actual location information of the trajectory point data includes: determining the pixel coordinates of the trajectory point data in the electronic map based on the latitude and longitude coordinates of the trajectory point data; and determining the spatial partition to which the pixel coordinates belong in the electronic map as the first spatial partition to which the trajectory point data belongs.

[0091] The latitude and longitude coordinates include the actual longitude and latitude coordinates of the trajectory point in the spherical geographic coordinate system. The first spatial partition is a spatial partition for the electronic map. Therefore, in the process of determining the first spatial partition to which a point belongs based on its latitude and longitude coordinates, a coordinate transformation is required to convert the latitude and longitude coordinates into pixel coordinates in the electronic map in order to facilitate the visualization of the trajectory point data.

[0092] In some implementations, the aforementioned execution entity can directly convert latitude and longitude coordinates in the geographic coordinate system into pixel coordinates in the electronic map according to a preset algorithm or mapping relationship.

[0093] In some implementations, the aforementioned execution entity can also utilize other coordinate systems for auxiliary transformations. For example, Figure 4This diagram illustrates one implementation of converting latitude and longitude coordinates to pixel coordinates, specifically scenario 400. (Refer to...) Figure 4 As shown, latitude and longitude coordinates are coordinate values ​​in a spherical geographic coordinate system, which can be represented as (lon, lat); coordinate values ​​in the pixel coordinate system of an electronic map can be represented as (map). x map y The electronic map has a side length of 2. n That is, 0≤map x map y ≤2 n The executing entity uses the planar Web Mercator projection coordinate system as an intermediate transformation coordinate system, first converting latitude and longitude coordinates (lon, lat) into planar Web Mercator projection coordinates (x, y); then, using the transformation relationship between the Web Mercator projection coordinate system and the pixel coordinate system of the electronic map, it converts the Web Mercator projection coordinates (x, y) into pixel coordinates on the electronic map (map). x map y ).

[0094] For example, latitude and longitude coordinates (lon, lat) can be represented using floating-point data types, while pixel coordinates (map) x map y Latitude and longitude coordinates can be represented using integer data. Therefore, converting latitude and longitude coordinates to pixel coordinates is a discretization process, which will result in some loss of accuracy. The larger the side length of the electronic map, the smaller the loss of accuracy. For example, when the side length of the electronic map is 2... n =2 28 At that time, the distance of a pixel in the electronic map on the map is approximately 0.3 meters, meaning the accuracy loss during coordinate transformation is less than or equal to 0.3 meters. This slight loss of accuracy will not affect the management of most trajectory point data scenarios. Therefore, in this solution, the side length of the electronic map is 2... n In this case, n can take a minimum value of 28, or it can take an integer value greater than 28.

[0095] Taking n=28 as an example, the side length can be 2 28 The electronic map is divided into 2 pixels. 19 Each side has a length of 2 9 The system involves spatial partitioning of pixels and using these partitions as the smallest spatial unit to store and manage trajectory point data.

[0096] After obtaining the pixel coordinates of the trajectory point data in the electronic map by converting the latitude and longitude coordinates of the trajectory point data according to the preset conversion relationship, the aforementioned executing entity can determine the spatial partition to which the pixel coordinates belong in the electronic map according to the division rules of the electronic map, and determine it as the first spatial partition to which the trajectory point data belongs.

[0097] In this implementation, the executing entity first converts the latitude and longitude coordinates of the trajectory point data into pixel coordinates in the electronic map, and then determines the first spatial partition to which the trajectory point data belongs. This can effectively ensure the accuracy of the first spatial partition, thereby ensuring the accuracy of the relative position information of the trajectory point data in the first spatial partition and improving the accuracy of trajectory point data management.

[0098] Step S202: Based on the source identifier of the trajectory point data within the target spatiotemporal range, determine the identifier queue within the target spatiotemporal range and the sorting position of the source identifier in the identifier queue.

[0099] In this embodiment of the disclosure, the execution entity of the trajectory point data processing method is, for example, Figure 1 The server 103 shown determines the identifier queue within the target spatiotemporal range and the sorting position of the source identifier of each trajectory point data within the identifier queue based on the source identifier of all trajectory point data within the target spatiotemporal range.

[0100] The source identifier of trajectory point data represents the identifier of the source object of the trajectory point data. For example, the source identifier of the trajectory point data includes object information of the source object (oid), such as object category (motor vehicle, pedestrian, etc.), object identity information, etc.

[0101] In related technologies, the source identifier needs to be recorded for each trajectory point data. Since each source identifier contains a certain amount of information, and the source identifier is repeatedly stored for trajectory point data generated by the same object, a lot of duplicate information is stored, resulting in excessive storage space being occupied.

[0102] In this disclosure, the aforementioned execution entity processes the source identifiers of all trajectory point data within a spatiotemporal range to obtain an identifier queue for each source identifier within that spatiotemporal range. It then records the corresponding sorting position of the source identifier of each trajectory point data within the identifier queue to replace the complete source identifier, thereby achieving compression of trajectory point data within a spatiotemporal range and saving storage space.

[0103] In some implementations of the embodiments of this disclosure, determining the identifier queue within the target spatiotemporal range based on the source identifier of the trajectory point data within the target spatiotemporal range includes: deduplicating the source identifiers of the trajectory point data within the target spatiotemporal range and storing them to obtain the identifier queue within the target spatiotemporal range.

[0104] In this scheme, the aforementioned execution entity performs deduplication on the source identifiers of each trajectory point data within the target spatiotemporal range, and sorts and stores the deduplicated source identifiers in a table according to preset rules to obtain the identifier queue within the target spatiotemporal range.

[0105] For example, its preset sorting rule may be to sort by at least one of the following: the length of the source identifier, the type of the source object, or the name of the source identifier.

[0106] In this implementation, the executing entity effectively reduces the amount of data in the identifier queue within the target spatiotemporal range by deduplicating the source identifiers of the trajectory point data within the target spatiotemporal range, thereby achieving effective compression of the trajectory point data within the target spatiotemporal range and saving storage space.

[0107] Step S203: Determine the data set within the target spatiotemporal range based on the relative spatiotemporal information and sorting position.

[0108] In this embodiment of the disclosure, the execution entity of the trajectory point data processing method is, for example, Figure 1 The server 103 shown determines the data set within the target spatiotemporal range based on the relative spatiotemporal information of each trajectory point data within the target spatiotemporal range, and the sorting position of the source identifier of the trajectory point data in the identifier queue within the target spatiotemporal range.

[0109] For example, the execution entity replaces the actual time information and actual location information of each trajectory point data within the target spatiotemporal range with the relative spatiotemporal location information of the trajectory point data within the target spatiotemporal range, and replaces the source identifier of the trajectory point data with the sorting position of its source identifier in the identifier queue, thereby obtaining a data set within the target spatiotemporal range.

[0110] In this scheme, the relative spatiotemporal information of trajectory point data is used to compress the actual time and actual location information, and the source identifier is compressed by the sorting position of the source identifier in the identifier queue. This can effectively compress the trajectory point data within the target spatiotemporal range, thereby reducing the storage space occupied by the trajectory point data and saving storage costs.

[0111] Step S204: Associate and store the target spatiotemporal range with the identifier queue and data set to obtain the spatiotemporal database.

[0112] In this embodiment of the disclosure, the execution entity of the trajectory point data processing method is, for example, Figure 1 The server 103 shown associates and stores the target spatiotemporal range with the identifier queue and data set within that target spatiotemporal range to obtain a spatiotemporal database.

[0113] Return to reference Figure 3d and Figure 3e As shown, if the relative time information of a trajectory point data within its target spatiotemporal range is represented as offset and the relative position information as... <tile x , tile yAssuming the identifier queue within the target's spatiotemporal range is represented as OID_LIST, and the source identifier (oid) of a trajectory point within that spatiotemporal range is represented as index, then a trajectory point within that spatiotemporal range can be represented as gps = <index,tile x , tile y , offset>. Therefore, the data set consisting of all trajectory point data (GPS) within the spatiotemporal range of the target is the data set within the spatiotemporal range of the target, which can be represented as GPS_SET.

[0114] The target's spatiotemporal range can be represented as:<bin,row,col> You can also refer to Figure 3b The example is simplified to<bin,z(row,col)> .

[0115] In this scheme, the executing entity associates and stores the target spatiotemporal range, the identifier queue of the trajectory point data within the target spatiotemporal range, and the data set within the target spatiotemporal range to obtain a spatiotemporal database.

[0116] In some implementations, the associated storage method may include: using the target spatiotemporal range as index information to serve as the condition and basis for subsequent data query or retrieval; using the identifier queue and dataset within the target spatiotemporal range as data content and storing the index information in association with the data content; storing trajectory point data within at least one spatiotemporal range in this manner to obtain a spatiotemporal database.

[0117] In some implementations, the spatiotemporal database also includes the count of trajectory points within the spatiotemporal range of each target. As shown in Table 1, this count of trajectory points can be stored as part of the data content.

[0118] Table 1 Storage structure of the spatiotemporal database

[0119]

[0120] As can be seen from the exemplary storage structure shown in Table 1, the spatiotemporal database obtained by this solution can significantly compress the amount of stored data compared to related technologies that store all information for each trajectory point. Furthermore, by using the spatiotemporal range as index information, it can effectively ensure data retrieval efficiency and accuracy.

[0121] According to the trajectory point data processing method provided in this disclosure, the relative spatiotemporal information of the trajectory point data within its target spatiotemporal range is determined based on the actual time and actual location information of the trajectory point data. The identifier queue within the target spatiotemporal range and the sorting position of each source identifier within the identifier queue are determined based on the source identifier of the trajectory point data within the target spatiotemporal range. Then, the relative spatiotemporal information and the sorting position are combined to obtain a data set within the target spatiotemporal range. This data set is then associated and stored with the target spatiotemporal range and its identifier queue to obtain a spatiotemporal database. This disclosure divides the trajectory point data according to spatiotemporal range and uses the relative spatiotemporal information obtained to replace the actual time and actual location information, thus performing preliminary compression of the trajectory point data. Based on the identifier queue and the sorting position of the source identifier of each trajectory point data within the identifier queue, the source identifier is compressed, thereby achieving compression of the trajectory point data in at least two aspects, effectively reducing the space requirements for data storage and saving data storage costs. Furthermore, using the spatiotemporal range as index information and associating it with the data content within the spatiotemporal range ensures the accuracy of subsequent data queries and retrievals, improving query and retrieval efficiency.

[0122] In addition, for the index information of spatiotemporal range, this scheme compresses the spatial partition information by filling the spatial partition with serial numbers, thereby further reducing the space requirements for data storage and saving storage costs.

[0123] It should be noted that in the technical solutions disclosed herein, the acquisition, storage, and application of user personal information (such as source user information and location of trajectory point data) are all carried out with the user's knowledge and explicit authorization, comply with relevant laws and regulations, and do not violate public order and good morals.

[0124] Figure 5 A flowchart 500 of a second embodiment of the trajectory point data processing method according to the present disclosure is shown, with reference to... Figure 5 As shown, the trajectory point data processing method includes the following steps:

[0125] Step S501: Based on the actual time information and actual location information of the trajectory point data, determine the relative spatiotemporal information of the trajectory point data within the target spatiotemporal range.

[0126] Step S501 and Figure 2 The steps S201 in the illustrated embodiment are basically the same. For the specific implementation method, please refer to the above description of step S201, which will not be repeated here.

[0127] Step S502: Based on the source identifier of the trajectory point data within the target spatiotemporal range, determine the identifier queue within the target spatiotemporal range and the sorting position of the source identifier in the identifier queue.

[0128] Step S502 and Figure 2 The steps S202 in the illustrated embodiment are basically the same. For the specific implementation method, please refer to the above description of step S202, which will not be repeated here.

[0129] Step S503: Determine the data set within the target spatiotemporal range based on the relative spatiotemporal information and sorting position.

[0130] Step S503 and Figure 2 The steps of S203 in the illustrated embodiment are basically the same. For the specific implementation method, please refer to the above description of step S203, which will not be repeated here.

[0131] Step S504: Associate and store the target spatiotemporal range with the identifier queue and data set to obtain the spatiotemporal database.

[0132] Step S504 and Figure 2 The steps of S204 in the illustrated embodiment are basically the same. For the specific implementation method, please refer to the above description of step S204, which will not be repeated here.

[0133] Step S505: Determine the second time interval to which the trajectory point data belongs based on the actual time information of the trajectory point data with the same source identifier.

[0134] In this embodiment of the disclosure, the execution entity of the trajectory point data processing method is, for example, Figure 1 The server 103 shown determines the second time interval to which the trajectory point data belongs based on its actual time information and the preset time interval division rules for trajectory point data with the same source identifier.

[0135] By sorting the trajectory point data generated during the movement of a source object belonging to the same source identifier in ascending order of timestamps, the trajectory line of that source object can be obtained. For example, after dividing the trajectory line according to the actual time information of each trajectory point data and the length of the second time interval, multiple trajectory segments corresponding to the length of the second time interval can be obtained. Based on this, the target trajectory segment to which a trajectory point data belongs can be determined, thus determining the second time interval to which the trajectory point data belongs.

[0136] Reference Figure 6a As shown, for a trajectory line generated by a source object belonging to a source identifier, according to the actual time information of each trajectory point data and the preset time interval division rules, a trajectory segment (e.g., one of the trajectory segments from segment0 to segment5) corresponding to a source identifier can be obtained. Then, the trajectory segment to which any trajectory point data belongs can be determined, and the time interval corresponding to the trajectory segment (e.g., one of the time intervals from bin0 to bin5) can be determined as the second time interval to which the trajectory point data belongs.

[0137] In some implementations, the second time interval has the same time span as the first time interval corresponding to the target spatiotemporal range in the aforementioned spatiotemporal database, so as to facilitate the query of related trajectory point data according to the relationship of source identifier, time interval, spatial partition, etc., thereby improving the correlation between data and query efficiency.

[0138] Step S506: Determine the reference spatiotemporal information and incremental spatiotemporal information of the trajectory point data within the second time interval.

[0139] In this embodiment of the disclosure, the execution entity of the trajectory point data processing method is, for example, Figure 1 The server 103 shown sorts the trajectory point data in the second time interval according to the actual time information of each trajectory point data, and then determines the reference spatiotemporal information and incremental spatiotemporal information of the trajectory point data in the second time interval in turn.

[0140] For example, the executing entity can use the first trajectory point data in the second time interval as the reference trajectory point data, and determine the actual spatiotemporal information of the first trajectory point data or the relative spatiotemporal information of the first trajectory point data in the second time interval as the reference spatiotemporal information in the second time interval. Then, it can sequentially determine the incremental spatiotemporal information of other trajectory point data in the second time interval relative to the reference spatiotemporal information, or the incremental spatiotemporal information relative to the actual spatiotemporal information of the previous trajectory point data.

[0141] In some implementations of the embodiments of this disclosure, the reference spatiotemporal information includes reference time information and reference location information, the incremental spatiotemporal information includes incremental time information and incremental location information, and determining the reference spatiotemporal information and incremental spatiotemporal information of trajectory point data within the second time interval includes: determining the actual time information and actual location information of the first trajectory point data within the second time interval as reference time information and reference location information respectively, according to the time order; and sequentially determining the incremental time information and incremental location information of other trajectory point data within the second time interval relative to the previous trajectory point data.

[0142] In this implementation, the execution entity sorts the trajectory point data within the second time interval by timestamp, uses the actual time information of the first trajectory point data as the reference time information within the second time interval, and uses the actual position information of the first trajectory point data as the reference position information within the second time interval. Then, based on the reference time information, it determines the incremental time information of the second trajectory point data relative to the first trajectory point data, the incremental time information of the third trajectory point data relative to the second trajectory point data, and so on, determining the incremental time information of each subsequent trajectory point data relative to its preceding trajectory point data. Furthermore, based on the reference position information, it determines the incremental position information of the second trajectory point data relative to the first trajectory point data, the incremental position information of the third trajectory point data relative to the second trajectory point data, and so on, determining the incremental position information of each subsequent trajectory point data relative to its preceding trajectory point data.

[0143] For example, within the same second time interval, the data of the previous trajectory point, sorted by time, is represented as GPS. i The data of its adjacent next trajectory point is represented as GPS. i+1 . Reference Figure 6b As shown, if the time span of the time interval is span seconds (i.e., the length of time partitions bin0 and bin1 is both span seconds), then the GPS data of the subsequent trajectory point... i+1 GPS relative to the previous trajectory point data i The incremental time information can be represented as interval t =gps i+1 .span-gps i .span. Reference Figure 6c As shown, if the side length of a spatial partition is extent pixels, then the GPS data of the last trajectory point within it... i+1 GPS relative to the previous trajectory point data i Incremental location information <interval x interval y > can be represented as interval x =gps i+1 .extent-gps i .extent, interval y =gps i+1 .extent-gps i .extent. The next trajectory point data (GPS). i+1 GPS relative to the previous trajectory point data i The incremental spatiotemporal information can be represented as <interval xinterval y interval t >

[0144] In practical applications, the time and space span of two adjacent trajectory point data is usually very small. Therefore, by replacing the actual time and actual location information of the latter trajectory point data with its incremental time and incremental location information relative to the former trajectory point data, the amount of data can be greatly compressed, thereby reducing the storage space requirement and saving storage space.

[0145] In this scheme, the executing entity determines the actual time information and actual location information of the first trajectory point data in the second time interval as reference time information and reference location information respectively according to the time sequence, and then determines the incremental time information and incremental location information of other trajectory point data in the second time interval relative to the previous trajectory point data accordingly. This effectively reduces the amount of incremental time information and incremental location information, achieves significant data compression, reduces the required storage space, and saves storage costs.

[0146] Step S507: Associate and store the source identifier and second time interval of the trajectory point data with the reference spatiotemporal information and incremental spatiotemporal information to obtain the trajectory database.

[0147] In this embodiment of the disclosure, the execution entity of the trajectory point data processing method is, for example, Figure 1 The server 103 shown associates and stores the source identifiers corresponding to the trajectory point data in the second time interval, the second time interval, the reference spatiotemporal information, and the incremental spatiotemporal information to obtain a trajectory database divided by the source identifier.

[0148] In this scheme, the basis for dividing trajectory point data into second time intervals is that their source identifiers are the same. All trajectory point data within the second time interval are identified by the same source identifier. Therefore, the execution entity only needs to store the source identifier once, without storing it for each trajectory point data. This avoids redundant storage of the source identifier, effectively compresses the stored data, reduces the amount of data stored, and thus reduces the need for storage space and saves storage costs.

[0149] In some implementations, the aforementioned execution entity can use the source identifier and second time interval of the trajectory point data as index information to serve as the conditions and basis for subsequent data queries or retrievals. The reference spatiotemporal information and incremental spatiotemporal information within the second time interval are used as data content, and the index information is stored in association with the data content. In this way, the trajectory point data on a trajectory line generated by a moving object corresponding to a source identifier are stored to obtain a trajectory database.

[0150] For example, if the reference spatiotemporal information within a second time interval is represented as head_gps and the incremental spatiotemporal information is represented as subsequent_gps, Table 2 shows a schematic diagram of an exemplary storage structure of the trajectory database of this disclosure.

[0151] Table 2 Storage structure of the trajectory database

[0152]

[0153] As can be seen from the exemplary storage structure shown in Table 2, the trajectory database obtained by this solution, compared with the related technologies that store data for each trajectory point or all information for the entire trajectory line, can significantly compress the amount of stored data by merging source identifiers and replacing actual spatiotemporal information with incremental spatiotemporal information. Furthermore, by using the source identifier (oid) and the second time interval (bin) as index information, the data retrieval efficiency and retrieval accuracy can be effectively guaranteed.

[0154] According to the trajectory point data processing method provided in this disclosure, trajectory point data can be divided according to a target spatiotemporal range, and data compression and associated storage can be achieved using relative spatiotemporal information and queue identifiers within the target spatiotemporal range to obtain a spatiotemporal database. This facilitates subsequent rapid retrieval and querying of trajectory point data using the spatiotemporal range as an index. Furthermore, trajectory point data with the same source identifier can be divided according to a second time interval. Incremental spatiotemporal information is determined sequentially by referring to the reference spatiotemporal information of the first trajectory point data within the second time interval, achieving significant compression of the trajectory point data. By storing the source identifier only once, the data to be stored is further compressed, significantly reducing data storage volume and saving storage space. Moreover, using the source identifier and time interval as index information, rapid retrieval and querying of trajectory data corresponding to the source identifier can be performed, meeting diverse data retrieval and querying needs, improving the database's applicability, and ensuring the efficiency and accuracy of trajectory point data retrieval and querying.

[0155] This disclosure not only provides the above-mentioned trajectory point data processing method for reasonably dividing, compressing and storing trajectory point data to obtain a corresponding database, but also provides a trajectory point data query method based on the database stored by the above-mentioned trajectory point data processing method. The method can quickly and accurately query the corresponding trajectory point data from the above-mentioned spatiotemporal database and / or trajectory database, and can also output the query results to a terminal device for visualization.

[0156] Figure 7 The flowchart 700 of a first embodiment of the trajectory point data query method according to the present disclosure is shown, with reference to Figure 7 As shown, the method for querying trajectory point data includes the following steps:

[0157] Step S701: Determine the target spatiotemporal range corresponding to the received data query request.

[0158] In this embodiment of the disclosure, the execution subject of the trajectory point data query method is, for example, Figure 1 The server 103 shown parses the data query request after receiving it to obtain the corresponding target spatiotemporal range.

[0159] For example, the data query request received by the executing entity can be sent by the user through a terminal device. For instance, the user can enter the target spatiotemporal range to be queried in the map display interface of the terminal device and click query or search. The terminal device will then generate a corresponding data query request based on the target spatiotemporal range entered by the user and send it to the server (executing entity).

[0160] In this scheme, the target spatiotemporal range can include the target time range and the target spatial range to which the trajectory point data to be queried belongs.

[0161] The target time range may include at least one time interval obtained by dividing the time according to a preset time division rule. For the division of time partitions, please refer to... Figure 3a The descriptions and related information are shown below and will not be repeated here. For example, the smallest unit of the time interval is 1 day, and the target time range can be 1 day, 2 days, 5 days, 7 days, etc. Users can set the target time range for querying trajectory point data on their terminal devices by selecting or inputting information.

[0162] In some implementations, the target spatial range may include at least one spatial partition obtained by dividing the space according to a preset spatial partitioning rule. For the division of spatial partitions, please refer to... Figure 3b The descriptions shown and related information will not be repeated here.

[0163] Electronic maps can serve as an entry point for trajectory point data management, and can intuitively display trajectory point data on terminal devices. For example, they can display all trajectory point data within the target spatiotemporal range, or they can display trajectory point data within the target time interval corresponding to a specific source identifier.

[0164] The core of map visualization technology is the pyramid model of electronic maps. In order to display electronic maps at different scales and levels to meet the different viewing needs of users, the pyramid model defines a variety of electronic maps of different sizes and specifications.

[0165] For large-format electronic maps, displaying them entirely on a terminal device, especially with large amounts of data, might affect the accuracy of displaying specific or individual data points. Therefore, users can request and render a portion of the electronic map based on their browsing needs, essentially zooming in on that specific area. In the pyramid model, each map level is divided into regions with sides of length *extent* pixels, resulting in individual pixel ranges of length *extent* pixels, called map tiles. An electronic map at the zoomLevel is divided into 4 map tiles. zoomLevel open.

[0166] refer to Figure 8a As shown, the zoom levels of the pyramid model are numbered starting from 0, 1, 2, ..., maxLevel, corresponding to map sizes of the side length extent (i.e., 2). 0 ×extent), 2×extent, 4×extent (i.e., 2 ×extent) 2 ×extent), ..., 2 maxLevel ×extent, which refers to the side length of the map size corresponding to the zoom level (zoomLevel), can be expressed as 2. zoomLevel ×extent.

[0167] In some implementations, the terminal device can determine the map level to be displayed and which map tiles to show based on the user's mouse dragging or zooming operations. Using this as the target spatial range, the device sends a data query request to the server to obtain trajectory point data for each map tile within that target spatial range. After receiving the server's response, the device renders and presents the data. For example, the user can select the target spatial range by using a selection box on the terminal device's display interface, or directly zoom to the target display level according to the display interface's scaling.

[0168] For example, the position of a map tile in a pyramid model is called tile coordinates, denoted as tile=<zoomLevel,col,row> Terminal devices can send a query request to the server for trajectory point data in map tiles based on tile coordinates as parameters.

[0169] Electronic maps at different zoom levels all correspond to the entire spatial range; therefore, map tiles of different zoom levels directly have a spatial containment relationship, such as... Figure 8b The shaded area is shown in the diagram. Different levels of electronic maps are filled sequentially with Z-space curves according to a "Z" pattern to obtain the corresponding tile number z (0 ≤ z ≤ 4). zoomLevelThis can be used to replace the row and column numbers in the tile coordinates of the map tile, thus simplifying the tile coordinates to...<zoomLevel,z> Based on this combination Figure 8b The inclusion relationship shown in the shaded area can be described as follows: map tile z in an electronic map with zoomLevel=1 spatially contains the set of map tiles z' (z×4) in an electronic map with zoomLevel'=2. step ≤z'≤(z+1)×4 step In this context, `step` represents the difference between two electronic map levels, which can be expressed as `step = zoomLevel' - zoomLevel`. Therefore, the inclusion relationship between electronic maps of different levels can be described as: map tiles in a zoomLevel electronic map...<zoomLevel,z> Spatially contains a set of map tiles in a zoomLevel electronic map.<zoomLevel’,z’> |z×4 step ≤z'≤(z+1)×4 step}, where zoomLevel≤zoomLevel'.

[0170] Based on the aforementioned inclusion relationship, a query request for trajectory point data within a map tile of any level of electronic map can be transformed into a query request for trajectory point data within the highest-level (maxLevel) map tile contained in that map tile. In other words, a query request for trajectory point data within a certain spatial range in an electronic map of any level can be transformed into a query request for trajectory point data within the corresponding spatial range in the highest-level electronic map, meaning that a first target spatial range on any level of electronic map can correspond to a second target spatial range on the highest-level electronic map.

[0171] For example, the aforementioned executing entity, based on the received data query request, combines... Figure 8b The Z-space encoding pattern shown can be used to parse the map tile corresponding to the zoomLevel in the data query request as z = zCurveEncode(col, row). Combining this with the aforementioned inclusion relationship, the range of map tiles in the highest-level (maxLevel) electronic map corresponding to this map tile z can be calculated to be z × 4. step’ ≤z'≤(z+1)×4 step’ , where step' = maxLevel - zoomLevel.

[0172] In some implementations, the target spatial range determined by the aforementioned executing entity based on the received data query request can be the spatial range in the map level to be rendered, or it can be the spatial range converted to the highest level electronic map based on the map level to be rendered, without any limitation here.

[0173] It should be noted that for electronic maps of different map levels, the spatial range formed by different numbers of map tiles varies, but the time range remains unchanged regardless of the map level. Therefore, if the target time range is [minBin, maxBin], then each time interval bin within the target time range is [minBin, maxBin].

[0174] By combining the target time range and the aforementioned target spatial range, a target spatiotemporal unit within the target spatiotemporal space can be obtained, which can be represented as:<bin,z’> Then, the executing entity can use the target spatiotemporal unit as index information to retrieve the data content associated with the target spatiotemporal unit from the pre-stored spatiotemporal database, and obtain the trajectory point data corresponding to the target spatiotemporal unit, thereby obtaining the target trajectory point data within the target spatiotemporal range.

[0175] Step S702: Based on the target spatiotemporal range, obtain the target data set and target identifier queue from the pre-stored spatiotemporal database.

[0176] In this embodiment of the disclosure, the execution subject of the trajectory point data query method is, for example, Figure 1 The server 103 shown retrieves the target data set and target identifier queue from the pre-stored spatiotemporal database based on the target spatiotemporal range obtained in step S701, using the target spatiotemporal range as index information.

[0177] For example, the pre-stored spatiotemporal database can be obtained based on the trajectory point data processing method provided above in this disclosure, such as... Figure 2 The spatiotemporal database obtained in the illustrated embodiment. The data sets and identifier queues in the spatiotemporal database are stored in association with their corresponding spatiotemporal ranges. The storage structure of this spatiotemporal database can be referenced from the storage structure shown in Table 1.

[0178] The aforementioned execution entity uses the target spatiotemporal range as index information, that is, the target time interval (bin) and the target spatiotemporal partition (z) as index information, and can obtain the target data set (GPS_LIST) and target identifier queue (OID_LIST) within the target spatiotemporal range from the spatiotemporal database.

[0179] In some implementations, the target identifier queue includes the source identifiers of all trajectory point data within the target spatiotemporal range. For example, this target identifier queue is generated by deduplicating and sorting the source identifiers of the trajectory point data within the target spatiotemporal range.

[0180] In some implementations, the target dataset includes the spatiotemporal information of each trajectory point within the target spatiotemporal range and the sorting position of its source identifier in the target identifier queue. For example, the spatiotemporal information in the target dataset can be the actual spatiotemporal information of the trajectory point data, such as actual time and actual location information, or it can be the relative spatiotemporal information of the trajectory point data within the target spatiotemporal range, such as relative time and relative location information.

[0181] Among them, relative time information represents the time difference between the actual time information of the trajectory point data and the starting point of the target time interval to which the trajectory point data belongs; relative position information represents the position difference between the actual position information of the trajectory point data and the origin of the target spatial partition to which the trajectory point data belongs.

[0182] For example, the actual location information of the trajectory point data can be latitude and longitude coordinates in a geographic coordinate system, or pixel coordinates in the pixel coordinate system of an electronic map. Correspondingly, its relative location information can be latitude and longitude coordinates in a geographic coordinate system, or pixel coordinates in the pixel coordinate system of an electronic map.

[0183] Step S703: Determine the target trajectory point data within the target's spatiotemporal range based on the target data set and the target identifier queue.

[0184] In this embodiment of the disclosure, the execution subject of the trajectory point data query method is, for example, Figure 1 The server 103 shown determines the target trajectory point data within the spatiotemporal range of the target based on the target data set and target identifier queue obtained in step S702. The target trajectory point data includes the actual time information, actual location information, and source identifier of the target trajectory points.

[0185] Among them, target trajectory point data can refer to any trajectory point data within the spatiotemporal range of the target, or it can refer to the data set of all trajectory points within the spatiotemporal range of the target.

[0186] In some implementations, the target dataset includes the actual time and location information of each trajectory point within the target spatiotemporal range. Then, the source identifier is searched from the target identifier queue according to the sorting position of the source identifier, thereby obtaining the target trajectory data.

[0187] In some implementations, the target dataset includes the relative time information, relative position information, and sorting position of the source identifier of each trajectory point within the target spatiotemporal range relative to its own spatiotemporal range, as well as the order of its source identifier in the target identifier queue. The executing entity can determine the actual spatiotemporal information of the trajectory point based on the relative time and relative position information, and find the source identifier of the trajectory point based on the sorting position, thereby obtaining the target trajectory point data.

[0188] In some implementations of the embodiments of this disclosure, the target data set includes relative spatiotemporal information and the sorting position of the source identifier; the target trajectory point data includes the actual location information, actual time information, and target source identifier of the target trajectory point; and, determining the target trajectory point data within the target spatiotemporal range based on the target data set and the target identifier queue includes: determining the actual location information and actual time information of the target trajectory point based on the relative spatiotemporal information and the target spatiotemporal range in the target data set; and determining the source identifier of the target trajectory point based on the sorting position of the target identifier queue and the source identifier.

[0189] For example, the relative spatiotemporal information includes relative time information and relative position information. The relative time information is the actual time information of a trajectory point within the target spatiotemporal range relative to the starting point of its respective time interval; the relative position information is the actual position information of a trajectory point within the target spatiotemporal range relative to the origin of its respective spatial partition.

[0190] The executing entity can obtain the actual time information of the trajectory points within the target's spatiotemporal range based on the relative time information in the relative spatiotemporal information, and obtain the actual position information of the trajectory points within the target's spatiotemporal range based on their relative position information.

[0191] For example, for any trajectory point in the target dataset, the relative time information offset can be restored to the actual time information time of that trajectory point based on the length span of the unit time interval, expressed as time = bin × span + offset.

[0192] For example, the tile coordinates of a map tile corresponding to any spatial partition within the target spatial range can be represented as (tile' x ,tile' y ),use Figure 8bThe Z-space encoding pattern shown is used to decode the map tile, obtaining its column and row numbers in the highest-level (maxLevel) electronic map set, represented as (col', row') = zCurveDecode(z'). This serves as the target spatial partition, thus determining the origin position information of this target spatial partition in the electronic map. Then, based on the origin position information of this target spatial partition and the relative position information obtained from the target data set, the executing entity obtains the actual position information of the trajectory points within the target spatial partition, and further obtains the actual position information of each target trajectory point within the target space. For example, the actual position information of a trajectory point is the sum of its relative position information and the origin position information of its target spatial partition.

[0193] The executing entity can find the source identifier of the trajectory point data from the target queue identifier based on the sorting position of the source identifier in the target data set.

[0194] In this implementation, the executing entity obtains the actual location and actual time information of each trajectory point within the target spatiotemporal range based on the relative spatiotemporal information in the acquired target data set and the target spatiotemporal range. This results in the actual location and actual time information of the target trajectory point. Furthermore, the entity searches for the source identifier of each trajectory point in the target identifier queue based on the sorting position of the source identifier. This allows for the rapid and accurate acquisition of the target trajectory point data, balancing data query efficiency and accuracy.

[0195] Step S704: Output the target trajectory point data to the sender of the data query request.

[0196] In this embodiment of the disclosure, the execution subject of the trajectory point data query method is, for example, Figure 1 The server 103 shown outputs the target trajectory point data obtained in step S703 to the sender of the data query request.

[0197] For example, the sender of the data query request is a terminal device (e.g., Figure 1 The terminal device 101 shown above is used by the execution entity to send the determined target trajectory point data to the terminal device, which then renders and displays the target trajectory data according to preset presentation rules. For example, it may display the data with a prominent color (such as red) or by flashing.

[0198] According to the trajectory point data query method provided in this embodiment, the executing entity first determines the corresponding target spatiotemporal range based on the received data query request. Then, it retrieves the target data set and target identifier queue from a pre-stored spatiotemporal database. Next, it determines the target trajectory point data within the target spatiotemporal range based on the target data set and target identifier queue, and outputs it to the sender of the data query request. Based on the pre-stored spatiotemporal database, the executing entity can quickly obtain the target data set and target identifier queue according to the target spatiotemporal range, thereby obtaining the target trajectory point data, which can effectively improve data query efficiency and accuracy.

[0199] It should be noted that in the technical solutions disclosed herein, the acquisition, storage, and application of user personal information (such as source user information and location of trajectory point data) are all carried out with the user's knowledge and explicit authorization, comply with relevant laws and regulations, and do not violate public order and good morals.

[0200] Figure 9 The flowchart 900 of a first embodiment of the trajectory point data query method according to this disclosure is shown. In this embodiment, after the executing entity queries the trajectory point data within the target spatiotemporal range, it can further query the entire or partial trajectory data corresponding to the source identifier based on the operation on the source identifier of the trajectory point data, and output it to the terminal device for rendering and presentation. (Refer to...) Figure 9 As shown, the method for querying trajectory point data includes the following steps:

[0201] Step S901: Determine the target spatiotemporal range corresponding to the received data query request.

[0202] Step S901 and Figure 7 The steps S701 in the illustrated embodiment are basically the same. For the specific implementation method, please refer to the foregoing description of step S701, which will not be repeated here.

[0203] Step S902: Based on the target spatiotemporal range, retrieve the target data set and target identifier queue from the pre-stored spatiotemporal database. The data set and identifier queue in the spatiotemporal database are stored in association with the corresponding spatiotemporal range.

[0204] Step S902 and Figure 7 The steps S702 in the illustrated embodiment are basically the same. For the specific implementation method, please refer to the above description of step S702, which will not be repeated here.

[0205] Step S903: Based on the target data set and the target identifier queue, determine the target trajectory point data within the target's spatiotemporal range. The target trajectory point data includes the actual time information, actual location information, and source identifier of the target trajectory points.

[0206] Step S903 and Figure 7 The steps S703 in the illustrated embodiment are basically the same. For the specific implementation method, please refer to the above description of step S703, which will not be repeated here.

[0207] Step S904: Output the target trajectory point data to the sender of the data query request.

[0208] Step S904 and Figure 7 The steps S704 in the illustrated embodiment are basically the same. For the specific implementation method, please refer to the above description of step S704, which will not be repeated here.

[0209] Step S905: Determine the target source identifier and target time interval corresponding to the received trajectory query request.

[0210] In this embodiment of the disclosure, the execution subject of the trajectory point data query method is, for example, Figure 1 The server 103 shown responds to the received trajectory query request by parsing the trajectory query request to obtain the target source identifier and target time interval corresponding to the trajectory query request.

[0211] The target source identifier corresponding to the trajectory query request can be at least one source identifier entered by the user on the terminal device, or at least one source identifier selected by the user from the identifier sequence presented on the terminal device.

[0212] For example, the target time interval corresponding to the trajectory query request may be the same as or different from the time interval in the target spatiotemporal range corresponding to the aforementioned data query request; this is not limited here. It should be noted that the target time interval includes at least one minimum time interval that serves as the smallest time unit for data management.

[0213] In some implementations of the embodiments of this disclosure, the trajectory query request received by the execution entity includes a query request for at least one source identifier in the target identifier queue obtained in step S902.

[0214] In this scheme, the trajectory query request received by the executing entity is a request to query relevant trajectory data based on the target trajectory data output in step S904, and at least one source identifier in the target identifier queue corresponding to the target trajectory data.

[0215] Step S906: Based on the target source identifier and target time interval, obtain the corresponding reference spatiotemporal information and incremental spatiotemporal information from the pre-stored trajectory database.

[0216] In this embodiment of the disclosure, the execution subject of the trajectory point data query method is, for example, Figure 1The server 103 shown retrieves the corresponding reference spatiotemporal information and incremental spatiotemporal information from the pre-stored trajectory database based on the target source identifier and target time interval determined in step S905.

[0217] For example, the pre-stored trajectory database can be obtained by processing the trajectory point data processing method of this disclosure, such as... Figure 5 The trajectory database obtained in the illustrated embodiment.

[0218] In this trajectory database, the source identifier and time interval are stored in association with the corresponding reference spatiotemporal information and incremental spatiotemporal information. For example, referring to the storage structure shown in Table 2, the source identifier (oid) and time interval (bin) in the trajectory database serve as index information, while the reference spatiotemporal information (head_gps) and incremental spatiotemporal information (subsequent_gps) serve as data content, with the index information stored in association with the data content. Therefore, given a determined target source identifier and target time interval, the executing entity can query and retrieve the corresponding reference spatiotemporal information and incremental spatiotemporal information from the trajectory database.

[0219] In some implementations, the reference spatiotemporal information can be the actual spatiotemporal information of the first trajectory point data within the target time interval, or the relative spatiotemporal information of that first trajectory point data within the target time interval. The incremental spatiotemporal information is the incremental spatiotemporal information of the subsequent trajectory point data within the target time interval relative to its adjacent preceding trajectory point data. Here, "subsequent" and "preceding" refer to the relative sorting positions of two adjacent trajectory point data arranged in chronological order within the target time interval.

[0220] Step S907: Determine the target trajectory data based on the reference spatiotemporal information and the reference incremental spatiotemporal information.

[0221] In this embodiment of the disclosure, the execution subject of the trajectory point data query method is, for example, Figure 1 The server 103 shown determines the actual spatiotemporal information of each trajectory point data within the target time interval based on the reference spatiotemporal information and incremental spatiotemporal information obtained in step S906, and then determines the target source identifier in the corresponding target trajectory data accordingly.

[0222] The time interval to which the target trajectory data belongs can be the same as or greater than the time interval in the target spatiotemporal range determined in step S901.

[0223] In some implementations, after obtaining the actual spatiotemporal information of each trajectory point within the target time interval, the executing entity sorts the actual spatiotemporal information by timestamp to obtain the trajectory line data, which is the target trajectory data corresponding to the target time interval and the target source identifier.

[0224] In some implementations, after obtaining the trajectory line data corresponding to the target time interval, the executing entity can further acquire or determine the associated trajectory point data belonging to the same trajectory line based on the actual spatiotemporal information of the trajectory point data at both ends, and integrate it with the aforementioned trajectory line data into the target trajectory data.

[0225] In some implementations of the embodiments of this disclosure, determining target trajectory data based on reference spatiotemporal information and incremental spatiotemporal information includes: determining the actual spatiotemporal information of trajectory points within a target time interval based on reference spatiotemporal information and incremental spatiotemporal information; determining adjacent trajectory points and their actual spatiotemporal information based on the actual spatiotemporal information of the trajectory points within the target time interval and the target source identifier; and determining target trajectory data based on the actual spatiotemporal information of the trajectory points within the target time interval and their actual spatiotemporal information.

[0226] For example, the aforementioned executing entity determines the actual spatiotemporal information of each trajectory point within the target time interval based on the obtained reference spatiotemporal information and incremental spatiotemporal information within the target time interval. Then, based on the target source identifier and the target time interval, it searches the trajectory database for candidate time intervals that are identical to the target source identifier and adjacent to the target time interval. The trajectory points within the candidate time interval are taken as adjacent trajectory points of the trajectory points within the target time interval. The reference spatiotemporal information and incremental spatiotemporal information of the adjacent trajectory points within the candidate time interval are obtained to determine the actual spatiotemporal information of each adjacent trajectory point. The actual spatiotemporal information of each trajectory point within the target time interval and the actual spatiotemporal information of each adjacent trajectory point are then sorted in chronological order. The resulting data sequence is taken as the target trajectory data corresponding to the target source identifier.

[0227] In some implementations, if the duration of a time interval is less than or equal to a preset duration threshold (e.g., span ≤ 2 hours), the execution entity can determine adjacent time intervals of the target time interval based on reference spatiotemporal information from two adjacent time intervals. For example, if the difference in reference spatiotemporal information of trajectory points in two adjacent time intervals is less than a preset information difference threshold, then these two adjacent time intervals are determined to be adjacent time intervals corresponding to the target source identifier; that is, the last trajectory point in the preceding time interval and the first trajectory point in the following time interval are adjacent trajectory points. Then, based on the reference spatiotemporal information and incremental spatiotemporal information of the trajectory points within these adjacent time intervals, the actual spatiotemporal information of each adjacent trajectory point is determined.

[0228] In this implementation scheme, the aforementioned execution entity first determines the actual spatiotemporal information of the trajectory points within the target time interval based on the reference spatiotemporal information and incremental spatiotemporal information obtained from the trajectory database. Then, based on this and in conjunction with the target source identifier, it determines the adjacent trajectory points corresponding to the target source identifier and adjacent to the trajectory points within the target time interval from the trajectory database, and determines the actual spatiotemporal information of each adjacent trajectory point. This information is then integrated and spliced ​​with the actual spatiotemporal information of the trajectory points within the target time interval to form the target trajectory data. This effectively ensures the accuracy and completeness of the target trajectory data and avoids incomplete trajectories caused by the omission of trajectory point data.

[0229] Step S908: Output the target trajectory data to the sender of the trajectory query request.

[0230] In this embodiment of the disclosure, the execution subject of the trajectory point data query method is, for example, Figure 1 The server 103 shown outputs the target trajectory data determined in step S907 to the sender of the trajectory query request.

[0231] In some implementations, the target trajectory data determined by the executing entity in step S907 is trajectory line data obtained by splicing and integrating the actual spatiotemporal information of the aforementioned determined trajectory point data. This trajectory line data is then directly output to the sender of the trajectory query request. For example... Figure 1 The terminal device 101 shown can directly perform storage, rendering, and presentation processing after receiving target trajectory data.

[0232] In some implementations, the target trajectory data determined by the executing entity in step S907 is a data sequence consisting of a series of target trajectory point data, and this data sequence is output to the sender of the trajectory query request, for example... Figure 1 The terminal device 101 shown then, after receiving the data sequence, splices and integrates the data of each target trajectory point to form a complete trajectory line, and then renders and presents it.

[0233] For example, after rendering the target trajectory point data output in step S904 on the terminal device, the source identifiers of each target trajectory point are also presented. Users can select or input at least one target source identifier to query the complete trajectory line corresponding to that target source identifier. Users can also input or select a target time interval [minBin, maxBin] to help the server quickly query the complete trajectory line corresponding to the target source identifier within that target time interval. The terminal device generates a corresponding trajectory query request based on the target source identifier and target time interval and sends it to the server. The server receives the trajectory query request, finds the corresponding target trajectory data, and returns it to the terminal device. Specifically, after receiving the trajectory query request, the server parses the target source identifier (oid) and the target time interval [minBin, maxBin], generates a data search range of oid+minBin to oid+maxBin, and then uses this range to search for the actual spatiotemporal information of each trajectory point in the corresponding trajectory segment from the pre-stored trajectory database. This information is then pieced together to form a complete trajectory line and returned to the terminal device as target trajectory data. The terminal device then renders and presents the target trajectory data.

[0234] According to the trajectory point data query method provided in this embodiment, the target data set and target identifier queue are first obtained from a pre-stored spatiotemporal database based on the target spatiotemporal range corresponding to the data query request. After determining the target trajectory point data, the data is output. This method can query all trajectory point data within a specific spatiotemporal range and effectively ensures the efficiency and accuracy of the data query. Then, after receiving the trajectory query request, the corresponding reference spatiotemporal information and incremental spatiotemporal information are searched from the pre-stored trajectory database based on the target source identifier and the target time interval. The actual spatiotemporal information of the target trajectory point is determined accordingly, thereby determining the target trajectory data corresponding to the target source identifier. This method enables a complete trajectory line query for the target source identifier and ensures the accuracy and efficiency of the queried target trajectory data.

[0235] In this disclosure, the executing entity can query all target trajectory point data within a certain time and space range according to different data query requests, and can also query the complete trajectory line data corresponding to the target source identifier, thus meeting the diverse needs of trajectory point data query, while taking into account the data query efficiency and the accuracy and completeness of the queried data.

[0236] It should be noted that in the technical solutions disclosed herein, the acquisition, storage, and application of user personal information (such as source user information and location of trajectory point data) are all carried out with the user's knowledge and explicit authorization, comply with relevant laws and regulations, and do not violate public order and good morals.

[0237] As an implementation of the methods shown in the above figures, Figure 10 An embodiment of the trajectory point data processing apparatus according to the present disclosure is shown, which is similar to... Figure 2 Corresponding to the method embodiments shown, this device can be specifically applied to various electronic devices.

[0238] Reference Figure 10 As shown, the trajectory point data processing device 1000 of this embodiment includes a spatiotemporal determination module 1001, an identifier determination module 1002, a data compression module 1003, and a data storage module 1004. The spatiotemporal determination module 1001 is configured to determine the relative spatiotemporal information of the trajectory point data within its target spatiotemporal range based on the actual time and location information of the trajectory point data. The identifier determination module 1002 is configured to determine the identifier queue within the target spatiotemporal range and the sorting position of the source identifier in the identifier queue based on the source identifier of the trajectory point data within the target spatiotemporal range. The data compression module 1003 is configured to determine the data set within the target spatiotemporal range based on the relative spatiotemporal information and the sorting position. The data storage module 1004 is configured to associate and store the target spatiotemporal range with the identifier queue and the data set to obtain a spatiotemporal database.

[0239] In the trajectory point data processing apparatus 1000 of this disclosure, the specific processing of the spatiotemporal determination module 1001, the identifier determination module 1002, the data compression module 1003, and the data storage module 1004, and the resulting technical effects, can be found in the respective references. Figure 2 The relevant descriptions of steps S201-S204 in the corresponding embodiments will not be repeated here.

[0240] In some implementations of the embodiments of this disclosure, the target spatiotemporal range includes a first time interval and a first spatial partition, the relative spatiotemporal information includes relative time information and relative position information, and the spatiotemporal determination module is configured to: determine the first time interval to which the trajectory point data belongs and the relative time information of the actual time information within the first time interval based on the actual time information of the trajectory point data; and determine the first spatial partition to which the trajectory point data belongs and the relative position information of the trajectory point data within the first spatial partition based on the actual position information of the trajectory point data.

[0241] In some implementations of the embodiments of this disclosure, the actual location information includes latitude and longitude coordinates, and determining the first spatial partition to which the trajectory point data belongs based on the actual location information of the trajectory point data includes: determining the pixel coordinates of the trajectory point data in the electronic map based on the latitude and longitude coordinates of the trajectory point data; and determining the spatial partition to which the pixel coordinates belong in the electronic map as the first spatial partition to which the trajectory point data belongs.

[0242] In some implementations of the embodiments of this disclosure, the identifier determination module is configured to: deduplicate the source identifiers of trajectory point data within the target spatiotemporal range and store them to obtain an identifier queue within the target spatiotemporal range.

[0243] In some implementations of the embodiments of this disclosure, the trajectory point data processing device further includes a time interval determination module, a spatiotemporal information determination module, and a trajectory storage module. The time interval determination module is configured to determine a second time interval to which the trajectory point data belongs based on the actual time information of the trajectory point data with the same source identifier. The spatiotemporal information determination module is configured to determine reference spatiotemporal information and incremental spatiotemporal information of the trajectory point data within the second time interval. The trajectory storage module is configured to associate and store the source identifier and second time interval of the trajectory point data with the reference spatiotemporal information and incremental spatiotemporal information to obtain a trajectory database.

[0244] In the trajectory point data processing apparatus of this disclosure, the specific processing of the time interval determination module, the spatiotemporal information determination module, and the trajectory storage module, and the resulting technical effects, can be found in [reference needed]. Figure 5 The relevant descriptions of steps S505-S507 in the corresponding embodiments will not be repeated here.

[0245] In some implementations of the embodiments of this disclosure, the reference spatiotemporal information includes reference time information and reference location information, the incremental spatiotemporal information includes incremental time information and incremental location information, and the spatiotemporal information determination module is configured to: determine the actual time information and actual location information of the first trajectory point data in the second time interval as reference time information and reference location information respectively, according to the time order; and sequentially determine the incremental time information and incremental location information of other trajectory point data in the second time interval relative to the previous trajectory point data.

[0246] As an implementation of the methods shown in the above figures, Figure 11 An embodiment of a trajectory point data query device according to the present disclosure is shown, which embodiment is similar to... Figure 5 Corresponding to the method embodiments shown, this device can be specifically applied to various electronic devices.

[0247] Reference Figure 11As shown, the trajectory point data query device 1100 of this embodiment includes a range determination module 1101, a data acquisition module 1102, a data determination module 1103, and a data output module 1104. The range determination module 1101 is configured to determine the target spatiotemporal range corresponding to the received data query request; the data acquisition module 1102 is configured to retrieve a target data set and a target identifier queue from a pre-stored spatiotemporal database based on the target spatiotemporal range, wherein the data set and identifier queue in the spatiotemporal database are stored in association with the corresponding spatiotemporal range; the data determination module 1103 is configured to determine the target trajectory point data within the target spatiotemporal range based on the target data set and the target identifier queue, wherein the target trajectory point data includes the actual time information, actual location information, and source identifier of the target trajectory point; and the data output module 1104 is configured to output the target trajectory point data to the sender of the data query request.

[0248] In the trajectory point data query device 1100 of this disclosure embodiment, the specific queries of the range determination module 1101, data acquisition module 1102, data determination module 1103, and data output module 1104, and the resulting technical effects, can be found in the respective references. Figure 7 The relevant descriptions of steps S701-S704 in the corresponding embodiments will not be repeated here.

[0249] In some implementations of the embodiments of this disclosure, the target data set includes relative spatiotemporal information and the sorting position of the source identifier, and the data determination module is configured to: determine the actual location information and actual time information of the target trajectory point based on the relative spatiotemporal information and the target spatiotemporal range in the target data set; and determine the source identifier of the target trajectory point based on the sorting position of the target identifier queue and the source identifier.

[0250] In some implementations of this disclosure, the trajectory point data query device further includes: a trajectory information determination module, a spatiotemporal information determination module, a trajectory data determination module, and a trajectory output module. The trajectory information determination module is configured to determine the target source identifier and target time interval corresponding to the received trajectory query request; the spatiotemporal information determination module is configured to retrieve corresponding reference spatiotemporal information and incremental spatiotemporal information from a pre-stored trajectory database based on the target source identifier and target time interval, wherein the source identifier and time interval in the trajectory database are stored in association with the corresponding reference spatiotemporal information and incremental spatiotemporal information; the trajectory data determination module is configured to determine target trajectory data based on the reference spatiotemporal information and incremental spatiotemporal information; and the trajectory output module is configured to output the target trajectory data to the sender of the trajectory query request.

[0251] In the trajectory point data processing apparatus of this disclosure, the specific processing of the trajectory information determination module, the spatiotemporal information determination module, the trajectory data determination module, and the trajectory output module, and the resulting technical effects, can be found in [reference needed]. Figure 9 The relevant descriptions of steps S905-S908 in the corresponding embodiments will not be repeated here.

[0252] In some implementations of the embodiments of this disclosure, the trajectory data determination module is configured to: determine the actual spatiotemporal information of trajectory points within a target time interval based on reference spatiotemporal information and incremental spatiotemporal information; determine adjacent trajectory points and their actual spatiotemporal information based on the actual spatiotemporal information of the trajectory points within the target time interval and the target source identifier; and determine target trajectory data based on the actual spatiotemporal information of the trajectory points within the target time interval and their actual spatiotemporal information.

[0253] In some implementations of embodiments of this disclosure, the trajectory query request includes a query request for at least one source identifier in the target identifier queue.

[0254] According to embodiments of this disclosure, this disclosure also provides an electronic device, a readable storage medium, and a computer program product.

[0255] Figure 12 A schematic block diagram of an example electronic device 1200 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0256] like Figure 12 As shown, device 1200 includes a computing unit 1201, which can perform various appropriate actions and processes according to a computer program stored in read-only memory (ROM) 1202 or a computer program loaded from storage unit 1208 into random access memory (RAM) 1203. The RAM 1203 may also store various programs and data required for the operation of device 1200. The computing unit 1201, ROM 1202, and RAM 1203 are interconnected via bus 1204. Input / output (I / O) interface 1205 is also connected to bus 1204.

[0257] Multiple components in device 1200 are connected to I / O interface 1205, including: input unit 1206, such as keyboard, mouse, etc.; output unit 1207, such as various types of monitors, speakers, etc.; storage unit 1208, such as disk, optical disk, etc.; and communication unit 1209, such as network card, modem, wireless transceiver, etc. Communication unit 1209 allows device 1200 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0258] The computing unit 1201 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 1201 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 1201 performs the various methods and processes described above, such as trajectory point data processing and / or querying methods. For example, in some embodiments, the trajectory point data processing and / or querying methods may be implemented as computer software programs tangibly contained in a machine-readable medium, such as storage unit 1208. In some embodiments, part or all of the computer program may be loaded and / or installed on device 1200 via ROM 1202 and / or communication unit 1209. When the computer program is loaded into RAM 1203 and executed by the computing unit 1201, one or more steps of the trajectory point data processing and / or querying methods described above may be performed. Alternatively, in other embodiments, the computing unit 1201 may be configured to perform trajectory point data processing and / or query methods by any other suitable means (e.g., by means of firmware).

[0259] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0260] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

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

[0262] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0263] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with embodiments of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.

[0264] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other. Servers can be cloud servers, servers in distributed systems, or servers incorporating blockchain technology.

[0265] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.

[0266] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.

Claims

1. A method for processing trajectory point data, comprising: Based on the actual time and actual location information of the trajectory point data, the relative spatiotemporal information of the trajectory point data within the target spatiotemporal range is determined; Based on the source identifier of the trajectory point data within the target spatiotemporal range, determine the identifier queue within the target spatiotemporal range and the sorting position of the source identifier within the identifier queue; Based on the relative spatiotemporal information and the sorting position, determine the data set within the target spatiotemporal range; The target spatiotemporal range is associated and stored with the identifier queue and the data set to obtain a spatiotemporal database.

2. The method according to claim 1, wherein, The target spatiotemporal range includes a first time interval and a first spatial partition, and the relative spatiotemporal information includes relative time information and relative location information. The step of determining the relative spatiotemporal information of the trajectory point data within its target spatiotemporal range based on the actual time and actual location information of the trajectory point data includes: Based on the actual time information of the trajectory point data, determine the first time interval to which the trajectory point data belongs and the relative time information of the actual time information within the first time interval; Based on the actual location information of the trajectory point data, determine the first spatial partition to which the trajectory point data belongs and the relative position information of the trajectory point data in the first spatial partition.

3. The method according to claim 2, wherein, The actual location information includes latitude and longitude coordinates, and The step of determining the first spatial partition to which the trajectory point data belongs based on the actual location information of the trajectory point data includes: Based on the latitude and longitude coordinates of the trajectory point data, determine the pixel coordinates of the trajectory point data in the electronic map; The spatial partition to which the pixel coordinates belong in the electronic map is determined as the first spatial partition to which the trajectory point data belongs.

4. The method according to claim 1, wherein, The step of determining the identifier queue within the target spatiotemporal range based on the source identifier of the trajectory point data within the target spatiotemporal range includes: After deduplicating the source identifiers of the trajectory point data within the target spatiotemporal range, the identifier queue within the target spatiotemporal range is obtained.

5. The method according to any one of claims 1-4, further comprising: Based on the actual time information of the trajectory point data with the same source identifier, determine the second time interval to which the trajectory point data belongs; Determine the reference spatiotemporal information and incremental spatiotemporal information of the trajectory point data within the second time interval; The source identifier of the trajectory point data and the second time interval are associated and stored with the reference spatiotemporal information and the incremental spatiotemporal information to obtain the trajectory database.

6. The method according to claim 5, wherein, The reference spatiotemporal information includes reference time information and reference location information, and the incremental spatiotemporal information includes incremental time information and incremental location information. The determination of the reference spatiotemporal information and incremental spatiotemporal information of the trajectory point data within the second time interval includes: According to the time sequence, the actual time information and actual location information of the first trajectory point data in the second time interval are respectively determined as reference time information and reference location information; The incremental time information and incremental position information of other trajectory point data relative to the previous trajectory point data are determined sequentially within the second time interval.

7. A method for querying trajectory point data, comprising: Determine the target spatiotemporal range corresponding to the received data query request; Based on the target spatiotemporal range, a target data set and a target identifier queue are obtained from a pre-stored spatiotemporal database, wherein the data set and identifier queue in the spatiotemporal database are stored in association with the corresponding spatiotemporal range; Based on the target data set and the target identifier queue, target trajectory point data within the target spatiotemporal range is determined, wherein the target trajectory point data includes the actual time information, actual location information, and source identifier of the target trajectory point; The target trajectory point data is output to the sender of the data query request.

8. The method according to claim 7, wherein, The target data set includes relative spatiotemporal information and the sorting position of the source identifier; as well as The step of determining the target trajectory point data within the target spatiotemporal range based on the target data set and the target identifier queue includes: Based on the relative spatiotemporal information in the target data set and the target spatiotemporal range, determine the actual location information and actual time information of the target trajectory point; The source identifier of the target trajectory point is determined based on the sorting position of the target identifier queue and the source identifier.

9. The method according to claim 7 or 8, further comprising: Determine the target source identifier and target time interval corresponding to the received trajectory query request; Based on the target source identifier and the target time interval, the corresponding reference spatiotemporal information and incremental spatiotemporal information are obtained from the pre-stored trajectory database. The source identifier and time interval in the trajectory database are stored in association with the corresponding reference spatiotemporal information and incremental spatiotemporal information. The target trajectory data is determined based on the reference spatiotemporal information and the incremental spatiotemporal information; The target trajectory data is output to the sender of the trajectory query request.

10. The method according to claim 9, wherein, The step of determining the target trajectory data based on the reference spatiotemporal information and the incremental spatiotemporal information includes: Based on the reference spatiotemporal information and the incremental spatiotemporal information, the actual spatiotemporal information of the trajectory points within the target time interval is determined; Based on the actual spatiotemporal information of the trajectory points within the target time interval and the target source identifier, determine the adjacent trajectory points and their actual spatiotemporal information; The target trajectory data is determined based on the actual spatiotemporal information of the trajectory points within the target time interval and the actual spatiotemporal information of the adjacent trajectory points.

11. The method according to claim 9, wherein, The trajectory query request includes a query request for at least one source identifier in the target identifier queue.

12. A trajectory point data processing device, comprising: The spatiotemporal determination module is configured to determine the target spatiotemporal range to which the trajectory point data belongs and the relative spatiotemporal information of the trajectory point data within the target spatiotemporal range based on the actual time information and actual location information of the trajectory point data. The identifier determination module is configured to determine the identifier queue within the target spatiotemporal range and the sorting position of the source identifier in the identifier queue based on the source identifier of the trajectory point data within the target spatiotemporal range; The data compression module is configured to replace the actual time information and actual location information of the trajectory point data with the relative spatiotemporal information, and replace the source identifier of the trajectory point data with the sorting position, to obtain a data set within the target spatiotemporal range; The data storage module is configured to associate and store the target spatiotemporal range with the identifier queue and the data set to obtain a spatiotemporal database.

13. A trajectory point data query device, comprising: The range determination module is configured to determine the target spatiotemporal range corresponding to the received data query request; The data acquisition module is configured to acquire a target data set and a target identifier queue from a pre-stored spatiotemporal data packet according to the target spatiotemporal range, wherein the data set and identifier queue in the spatiotemporal database are stored in association with the corresponding spatiotemporal range; The data determination module is configured to determine target trajectory point data within the target spatiotemporal range based on the target data set and the target identifier queue, wherein the target trajectory point data includes actual time information, actual location information, and source identifier; The data output module is configured to output the target trajectory point data to the sender of the data query request.

14. An electronic device comprising: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-11.

15. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-11.

16. A computer program product comprising a computer program that, when executed by a processor, implements the method according to any one of claims 1-11.