Multidimensional trajectory analysis and visualization method and device based on spatiotemporal data
By filtering and sorting spatiotemporal data to generate a multidimensional data matrix, and combining map and Web visualization technology, the problems of multi-dimensional display and insufficient interactivity in spatiotemporal trajectory data analysis and visualization in existing technologies are solved, and diversified visualization and customized analysis capabilities are achieved.
Patent Information
- Application Number
- CN202211239528.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-10-11
- Publication Date
- 2025-09-05
- Estimated Expiration
- 2042-10-11
AI Technical Summary
Existing technologies in spatiotemporal trajectory data analysis and visualization have problems such as the inability to process unstructured data, single visualization form, lack of multi-dimensional display and insufficient interactivity.
By acquiring spatiotemporal data sources, filtering and sorting them, constructing ordered series, and performing trajectory analysis based on time, data category, and multi-object dimensions, a multidimensional data matrix is generated. Maps and web visualization technologies are then combined for point display, trajectory editing, and interaction.
It realizes multi-dimensional trajectory analysis and visualization of any data with spatiotemporal attributes, improves the diversity and interactivity of visualization forms, can analyze target trajectories in custom time periods, predict target behaviors, and solves the spatial confusion problem of large data display.
Smart Images

Figure CN115617933B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of trajectory analysis, and in particular to a multidimensional trajectory analysis and visualization method and device based on spatiotemporal data. Background Art
[0002] In the era of big data intelligence, with the widespread use of wireless sensor positioning devices and advances in movement acquisition technology, the spatiotemporal trajectory data of mobile objects has exploded. Trajectory big data, including human activity trajectories, traffic vehicle trajectories, and natural phenomenon trajectories, is characterized by rich data types, diverse dimensions, large sample sizes, fine resolution, and rapid growth. It holds immense research and application value across various industries. In information systems, data mining, data analysis, and data visualization techniques can be used to analyze target behavior patterns from massive amounts of spatiotemporal trajectory data, enabling intelligent perception of situational information.
[0003] Currently, the existing analysis and visualization interaction technologies for spatiotemporal trajectory data are as follows:
[0004] (1) Single-item structured information collision analysis technology collides with single-item information of known target objects to generate information of other dimensions. However, this technology relies on the input of structured data and cannot be applied to spatiotemporal data that has not been structured. In addition, visualization technology mostly uses presentation forms for structured information types and lacks multi-dimensional presentation that combines time and space attributes.
[0005] (2) Spatiotemporal eigenvalue correlation analysis technology and correlation trajectory visualization divide the target trajectory and each correlation trajectory into various trajectory segments and count the correlation trajectory. However, this type of method uses a single object as the benchmark to find the correlation trajectory. The dimension and visualization form are not diverse enough. It can only improve the efficiency of correlation analysis and has a relatively single application scenario.
[0006] (3) Trajectory data clustering technology and visualization of analysis results. It uses relevant algorithms to perform computational analysis on the directional characteristics, similarity and other characteristics of the target trajectory, extract similarity and abnormal characteristics, and explore practical application value. It is highly targeted. This type of analysis method does not have a specific visualization method, but only deeply quantifies the data characteristics of a certain dimension of the data. It is suitable for visual display of a certain type of data attributes or data statistical results, and cannot express the complete attributes of spatiotemporal data. Summary of the Invention
[0007] In response to the above-mentioned technical problems, the embodiment of the present application aims to propose a multi-dimensional trajectory analysis and visualization method and device based on spatiotemporal data to solve the technical problems mentioned in the above background technology section.
[0008] In a first aspect, the present invention provides a multidimensional trajectory analysis and visualization method based on spatiotemporal data, comprising the following steps:
[0009] S1, obtaining a spatiotemporal data source of historical time periods and spatial locations, and in response to determining that the spatiotemporal data source includes at least one target feature value, the target feature value including feature values of different objects having corresponding temporal attributes and spatial attributes, filtering and sorting the spatiotemporal data source to obtain an ordered sequence, the ordered sequence being at least one piece of trajectory data, the trajectory data including temporal attributes, spatial attributes, and corresponding target feature values thereof;
[0010] S2, processing the ordered sequence according to different trajectory analysis dimensions to obtain a first data matrix of different dimensions, where the first data matrix includes at least one trajectory sequence, and the trajectory sequence includes at least one piece of trajectory data;
[0011] S3, filtering the first data matrix based on the target time period to obtain a second data matrix;
[0012] S4, combining the second data matrix with the map and web visualization data to perform point display, track display, track editing, track playback and / or linkage interaction.
[0013] Preferably, in step S1, filtering and sorting the spatiotemporal data source to obtain an ordered sequence specifically includes:
[0014] Filter the data with empty spatial attributes in the spatiotemporal data source to obtain a filtered spatiotemporal data source;
[0015] The filtered spatiotemporal data sources are sorted in chronological order to obtain an ordered sequence.
[0016] Preferably, the trajectory analysis dimensions in step S2 include a time dimension, a data category dimension, and a multi-object dimension.
[0017] Preferably, in the time dimension, step S2 specifically includes:
[0018] S21, the first data matrix is initially an empty matrix;
[0019] S22, obtaining the time attribute of the nth trajectory data in the ordered sequence and converting it into a timestamp;
[0020] S23, determining whether the difference between the timestamp of the nth track data and the time mark is greater than the time period value, wherein the initial value of the time mark is 0, and the remaining values are the time values of the n-1th track data, n ≥ 1;
[0021] S24, in response to determining that the difference between the timestamp and the time marker is greater than the time period value, create a new trajectory sequence in the first data matrix, and insert the nth trajectory data at the end of the new trajectory sequence;
[0022] S25, in response to determining that the difference between the timestamp and the time marker is less than or equal to the time period value, insert the nth trajectory data at the beginning of the last trajectory sequence in the first data matrix;
[0023] S26, repeat steps S22 - S25 until n is equal to the total number of trajectory data in the ordered sequence, and construct the first data matrix.
[0024] Preferably, in the data category dimension, step S2 specifically includes:
[0025] Identify the data category of each trajectory data in the ordered sequence;
[0026] Group according to different data categories, and in each group, the trajectory data of the same data category form a trajectory sequence, and constitute the first data matrix.
[0027] Preferably, in the multi - object dimension, step S2 specifically includes:
[0028] Structurize all objects in the ordered sequence, and each object has a corresponding unique identifier;
[0029] Group according to different unique identifiers, and in each group, the trajectory data with the same unique identifier form a trajectory sequence, and constitute the first data matrix.
[0030] Preferably, step S3 specifically includes:
[0031] Input the first data matrix into a filtering function with the target time period as the condition to obtain the second data matrix, and the formula is as follows:
[0032] D2 = F(D1, t1 < t < t2);
[0033] Where, the first data matrix is D1, the second data matrix is D2, t is the time of each trajectory data in each trajectory sequence in the first data matrix, t1 is the start time of the target time period, t2 is the end time of the target time period, and F is a filtering function with D1 as the input and t1 < t < t2 as the condition.
[0034] Preferably, step S4 specifically includes:
[0035] Initialize the tile data, center point and level of the map;
[0036] Adjust the visualization window size and level of the map according to the spatial attributes of the trajectory data in the second data matrix;
[0037] Display points and / or trajectories according to the spatial attributes of the trajectory data in the second data matrix, or edit trajectories, play trajectories, and interact with the map.
[0038] In a second aspect, the present invention provides a multi-dimensional trajectory analysis and visualization device based on spatiotemporal data, comprising:
[0039] a data acquisition module configured to acquire a spatiotemporal data source of a historical time period and spatial location, and in response to determining that the spatiotemporal data source includes at least one target feature value, the target feature value including feature values of different objects having corresponding temporal attributes and spatial attributes, filter and sort the spatiotemporal data source to obtain an ordered sequence, the ordered sequence being at least one piece of trajectory data, the trajectory data including the temporal attribute, the spatial attribute, and the corresponding target feature value;
[0040] an analysis module configured to process the ordered sequence according to different trajectory analysis dimensions to obtain a first data matrix under different dimensions, wherein the first data matrix includes at least one trajectory sequence, and the trajectory sequence includes at least one piece of trajectory data;
[0041] a filtering module configured to filter the first data matrix based on a target time period to obtain a second data matrix;
[0042] The visualization module is configured to combine the second data matrix with the map and web visualization data to perform point display, track display, track editing, track playback and / or linkage interaction.
[0043] In a third aspect, the present invention provides an electronic device comprising one or more processors; a storage device for storing one or more programs, wherein when the one or more programs are executed by one or more processors, the one or more processors implement the method described in any implementation manner in the first aspect.
[0044] In a fourth aspect, the present invention provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described in any implementation manner in the first aspect.
[0045] Compared with the prior art, the present invention has the following beneficial effects:
[0046] (1) The present invention can target different objects and perform trajectory analysis and interactive optimization for spatiotemporal data. However, it does not limit the data category. Any data with spatiotemporal attributes can be used as input. Trajectory analysis is performed using multiple dimensions such as time, data category, and multiple objects to obtain trajectory data of different groups, making the visualization more diverse and scalable.
[0047] (2) The present invention combines the result data obtained from trajectory analysis with Web map data visualization technology, which can conveniently integrate the time attributes and spatial attributes of the displayed data. By automatically adjusting the map level according to the result data, it ensures that all trajectory data and point data are displayed in the visual window. To a certain extent, it solves the spatial confusion phenomenon in the display of large amounts of trajectory data, improves operability, and has a good visual effect.
[0048] (3) The present invention uses a customized target time period to calculate the trajectory data of each dimension, which greatly improves the practical application value of the trajectory data in the time dimension and meets the personalized needs of users. It enables users to customize the target tracking time period, customize the time period for analyzing the target trajectory, quickly find the activity patterns of mobile targets such as people or vehicles, or reversely lock the target object based on the regular characteristics of a specific time period, or predict the target's next behavior based on the regular characteristics of a specific time period, and grasp the target's future trends. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0050] Figure 1 is a diagram of an exemplary device architecture to which an embodiment of the present application may be applied;
[0051] Figure 2 A flowchart of a multi-dimensional trajectory analysis and visualization method based on spatiotemporal data according to an embodiment of the present application;
[0052] Figure 3 A flowchart of a multi-dimensional trajectory analysis and visualization method based on spatiotemporal data according to an embodiment of the present application;
[0053] Figure 4 This is a flowchart of the trajectory analysis process in the time dimension of the multi-dimensional trajectory analysis and visualization method based on spatiotemporal data according to an embodiment of the present application;
[0054] Figure 5 Schematic diagram of a multi-dimensional trajectory analysis and visualization device based on spatiotemporal data according to an embodiment of the present application;
[0055] Figure 6 It is a structural diagram of a computer device suitable for implementing the electronic device of the embodiment of the present application. DETAILED DESCRIPTION
[0056] To make the objectives, technical solutions, and advantages of the present invention more apparent, the present invention will be further described in detail below with reference to the accompanying drawings. It is apparent that the embodiments described are only some, not all, of the present invention. All other embodiments derived by persons of ordinary skill in the art based on the embodiments of the present invention without creative effort are intended to fall within the scope of protection of the present invention.
[0057] Figure 1 An exemplary device architecture 100 is shown to which the method for multi-dimensional trajectory analysis and visualization based on spatiotemporal data or the device for multi-dimensional trajectory analysis and visualization based on spatiotemporal data according to an embodiment of the present application can be applied.
[0058] like Figure 1 As shown, the device architecture 100 may include terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 is used to provide a medium for communication links between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired or wireless communication links or fiber optic cables.
[0059] Users can use terminal devices 101, 102, 103 to interact with server 105 via network 104 to receive or send messages, etc. Various applications, such as data processing applications and file processing applications, can be installed on terminal devices 101, 102, 103.
[0060] Terminal devices 101, 102, and 103 can be hardware or software. When terminal devices 101, 102, and 103 are hardware, they can be various electronic devices, including but not limited to smartphones, tablet computers, laptop computers, and desktop computers. When terminal devices 101, 102, and 103 are software, they can be installed in the electronic devices listed above. They can be implemented as multiple software or software modules (for example, software or software modules used to provide distributed services), or they can be implemented as a single software or software module. No specific limitations are given here.
[0061] The server 105 may be a server that provides various services, such as a background data processing server that processes files or data uploaded by the terminal devices 101, 102, and 103. The background data processing server may process the acquired files or data and generate processing results.
[0062] It should be noted that the multidimensional trajectory analysis and visualization method based on spatiotemporal data provided in the embodiment of the present application can be executed by the server 105 or by the terminal devices 101, 102, and 103. Accordingly, the multidimensional trajectory analysis and visualization device based on spatiotemporal data can be set in the server 105 or in the terminal devices 101, 102, and 103.
[0063] It should be understood that Figure 1 The number of terminal devices, networks, and servers in the above description is merely illustrative. Any number of terminal devices, networks, and servers may be provided as needed. If the processed data does not need to be acquired remotely, the above-described apparatus architecture may not include a network, but only require servers or terminal devices.
[0064] Figure 2 The embodiment of the present application provides a multi-dimensional trajectory analysis and visualization method based on spatiotemporal data, including the following steps:
[0065] S1, obtaining a spatiotemporal data source of a historical time period and spatial location, in response to determining that the spatiotemporal data source includes at least one target feature value, the target feature value includes feature values of different objects with corresponding time attributes and spatial attributes, filtering and sorting the spatiotemporal data source to obtain an ordered sequence, the ordered sequence being at least one trajectory data, the trajectory data including the time attribute, the spatial attribute and the corresponding target feature value.
[0066] In a specific embodiment, step S1 filters and sorts the spatiotemporal data source to obtain an ordered sequence, specifically including:
[0067] Filter the data with empty spatial attributes in the spatiotemporal data source to obtain a filtered spatiotemporal data source;
[0068] The filtered spatiotemporal data sources are sorted in chronological order to obtain an ordered sequence.
[0069] Specifically, refer to Figure 3 First, you need to select the historical time period, spatial location, and target feature value of interest to subsequently form a trajectory data consisting of time, space, and target feature values. Specifically, you can initiate a request to the server to obtain the spatiotemporal data source corresponding to the historical time period and spatial location.
[0070] Furthermore, the spatiotemporal data source is determined to be empty. If so, the process ends immediately. If at least one target feature value exists in the spatiotemporal data source, i.e., the spatiotemporal data source is not empty, the spatiotemporal data source can be filtered to filter data with empty spatial attributes and sorted into an ordered sequence in chronological order. Preferably, the spatial attributes can be set to longitude and latitude.
[0071] When the target is a car, the target feature values include license plate number, license plate color, vehicle type, vehicle brand, vehicle color, etc. When the target is a person, the target feature values include face photo, body photo, etc. Based on different targets, different categories of feature values can be obtained to form the target feature value.
[0072] S2, processing the ordered sequence according to different trajectory analysis dimensions to obtain a first data matrix under different dimensions, wherein the first data matrix includes at least one trajectory sequence, and the trajectory sequence includes at least one trajectory data.
[0073] In a specific embodiment, the trajectory analysis dimensions in step S2 include time, data category, and multi-object dimensions. Specifically, in the time dimension, time period operations are used to analyze activity temporal patterns, and trajectory data within each time period is grouped into a trajectory sequence. In the data category dimension, trajectory analysis is performed by categorizing data categories. In the multi-object dimension, grouping operations are performed by unique object identifiers.
[0074] In a specific embodiment, in the time dimension, step S2 specifically includes:
[0075] S21, the first data matrix is initially an empty matrix;
[0076] S22, obtaining the time attribute of the nth trajectory data in the ordered sequence and converting it into a timestamp;
[0077] S23, determining whether the difference between the timestamp of the nth track data and the time mark is greater than the time period value, wherein the initial value of the time mark is 0, and the remaining values are the time values of the n-1th track data, n ≥ 1;
[0078] S24, in response to determining that the difference between the timestamp and the time mark is greater than the time period value, creating a new trajectory sequence in the first data matrix, and inserting the nth trajectory data at the end of the new trajectory sequence;
[0079] S25 , in response to determining that the difference between the timestamp and the time mark is less than or equal to the time period value, inserting the nth track data at the first position in the last track sequence of the first data matrix;
[0080] S26, repeating steps S22-S25 until n is equal to the total number of trajectory data in the ordered sequence, thereby constructing a first data matrix.
[0081] Specifically, refer to Figure 4For spatiotemporal data, the time attribute t of each trajectory data in the ordered sequence may be the time when the camera captured the data, the time when the server recorded the data, or the time when the data was stored in the database. The timestamp c is the value after the time attribute t is converted to a timestamp, which is convenient for calculation. The initial value of the time marker I is equal to 0. In subsequent calculations, it is equal to the timestamp of the previous trajectory data. If the difference between the time marker I and the timestamp c is greater than the time period value, it means that the difference between the two trajectory data is greater than the time period value, and the trajectory data needs to be inserted into the trajectory sequence of the next period. Preferably, the time period can be set to 7 hours.
[0082] The following is an example to illustrate the above steps:
[0083] Assume that there are five trajectory data of a certain target, namely trajectory data 1, trajectory data 2, trajectory data 3, trajectory data 4, and trajectory data 5, which are arranged in chronological order. Their corresponding time attributes are converted into timestamps as 1663052643664, 1663052743664, 1663052843664, 1663053343664, and 1663053443664, respectively. Assume that the time period value is 200000.
[0084] The initial state of the first data matrix D1 is empty;
[0085] Calculate the difference between trajectory data 1 and the time stamp: 1663052643664-0=1663052643664. This value is greater than the time period value (i.e., 200000). Create a new trajectory sequence l0 at the end of the first data matrix and insert trajectory data 1 at the end of trajectory sequence l0, i.e., D1=[l0], l0=[trajectory data 1]. Change the time stamp to the timestamp of trajectory data 1, i.e., 1663052643664.
[0086] Calculate the difference between trajectory data 2 and the time stamp: 1663053343664 - 1663052643664 = 100000, which is less than the time period value (i.e., 200000). Insert trajectory data 2 into the first position of the last column of the first data matrix (i.e., trajectory column l0), i.e., D1 = [l0], l0 = [trajectory data 1, trajectory data 2]. Change the time stamp to the timestamp of trajectory data 2, i.e., 1663052743664.
[0087] Calculate the difference between trajectory data 3 and the time stamp: 1663052843664 - 1663052743664 = 100000, which is less than the time period value (i.e., 200000). Insert trajectory data 3 into the first position of the last column of the first data matrix (i.e., trajectory column l0), i.e., D1 = [l0], l0 = [trajectory data 3, trajectory data 2, trajectory data 1]. Change the time stamp to the timestamp of trajectory data 3, i.e., 1663052843664.
[0088] Calculate the difference between trajectory data 4 and the time stamp: 1663052843664-1663052843664=500000, which is greater than the time period value (i.e., 200000). Create a new trajectory sequence l1 at the end of the first data matrix and insert trajectory data 4 at the end of trajectory sequence l1, i.e., D1=[l0,l1], l0=[trajectory data 3, trajectory data 2, trajectory data 1], l1=[trajectory data 4]; change the time stamp to the timestamp of trajectory data 4, i.e., 1663053343664.
[0089] Calculate the difference between trajectory data 5 and the time stamp: 1663053443664 - 1663053343664 = 100,000. This value is less than the time period value (i.e., 200,000). Insert trajectory data 5 at the first position of the last column of the first data matrix (i.e., trajectory column l1), i.e., D1 = [l0, l1], l0 = [trajectory data 3, trajectory data 2, trajectory data 1], and l1 = [trajectory data 5, trajectory data 4]. l0 and l1 are two trajectory columns that meet the time period value.
[0090] In a specific embodiment, under the data category dimension, step S2 specifically includes:
[0091] Identify the data category of each trajectory data in the ordered sequence;
[0092] The data are grouped according to different data categories, and the trajectory data of the same data category in each group form a trajectory sequence, and constitute a first data matrix.
[0093] Specifically, since the trajectory data in the ordered sequence has different data categories, including faces, bodies, mobile phone numbers, motor vehicles, etc., trajectory analysis can be performed based on different data categories. The following is an example to illustrate the above steps:
[0094] Assume that the data categories in the spatiotemporal data source are classified into five categories: face, body, motor vehicle, non-motor vehicle, and mobile phone number. Assume that there are trajectory data 1, trajectory data 2, trajectory data 3, trajectory data 4, trajectory data 5, trajectory data 6, trajectory data 7, and trajectory data 8, which are 8 trajectory data arranged in chronological order with data category attributes. Their corresponding data categories are face, body, mobile phone number, face, motor vehicle, non-motor vehicle, mobile phone number, and motor vehicle, respectively.
[0095] The initial state of the first data matrix D1 is empty;
[0096] A new trajectory sequence l0 is created at the end of the first data matrix, and trajectory data 1 is inserted at the end of trajectory sequence l0, that is, D1 = [l0], l0 = [trajectory data 1].
[0097] Traverse these 8 trajectory data in sequence. If the data category of the traversed trajectory data is consistent with the data category of the trajectory data in the last column of the first data matrix, insert the trajectory data at the first position in the last column of the first data matrix. If the data category of the traversed trajectory data is inconsistent with the data category of the trajectory data in the last column of the first data matrix, create a new trajectory column at the end of the first data matrix and insert the trajectory data at the end of the new trajectory column.
[0098] We get D1 = [l0, l1, l2, l3, l4], l0 = [trajectory data 4, trajectory data 1], l1 = [trajectory data 2], l2 = [trajectory data 7, trajectory data 3], l3 = [trajectory data 8, trajectory data 5], and l4 = [trajectory data 6]. l0, l1, l2, l3, and l4 are the five trajectory sequences that meet the data category grouping requirements.
[0099] In a specific embodiment, in the multi-object dimension, step S2 specifically includes:
[0100] All objects in the ordered sequence are structured so that each object has a corresponding unique identifier;
[0101] The data are grouped according to different unique identifiers, and the trajectory data with the same unique identifier in each group form a trajectory sequence, and constitute a first data matrix.
[0102] Specifically, since the trajectory data in the ordered sequence corresponds to different objects, it is necessary to obtain the object and its unique identification ID corresponding to each trajectory data after data structuring. Therefore, trajectory analysis can be performed based on multiple objects and their corresponding unique identifications. The following example illustrates the above steps:
[0103] Suppose there are eight trajectory data, namely trajectory data 1, trajectory data 2, trajectory data 3, trajectory data 4, trajectory data 5, trajectory data 6, trajectory data 7, and trajectory data 8, which are arranged in chronological order with unique identifiers after data structuring. Their corresponding unique identifiers after structuring are id1, id2, id3, id1, id4, id5, id3, and id4 respectively.
[0104] The initial state of the first data matrix D1 is empty;
[0105] Create a new trajectory sequence l0 at the end of the first data matrix, and insert trajectory data 1 at the end of the trajectory sequence l0, that is, D1 = [l0], l0 = [trajectory data 1].
[0106] Traverse these eight trajectory data in sequence. If the unique identifier of the trajectory data in the traversal is the same as the unique identifier of the trajectory data in the last sequence of the first data matrix, then insert this trajectory data at the beginning of the last sequence of the first data matrix. If the unique identifier of the trajectory data in the traversal is different from the unique identifier of the trajectory data in the last sequence of the first data matrix, then create a new trajectory sequence at the end of the first data matrix and insert this trajectory data at the end of the new trajectory sequence.
[0107] We get D1 = [l0, l1, l2, l3, l4], l0 = [trajectory data 4, trajectory data 1], l1 = [trajectory data 2], l2 = [trajectory data 7, trajectory data 3], l3 = [trajectory data 8, trajectory data 5], l4 = [trajectory data 6]. l0, l1, l2, l3, l4 are five trajectory sequences that satisfy multi-object grouping respectively.
[0108] S3. Filter the first data matrix based on the target time period to obtain the second data matrix.
[0109] In a specific embodiment, step S3 specifically includes:
[0110] Input the first data matrix into a filtering function with the target time period as the condition to obtain the second data matrix. The formula is as follows:
[0111] D2 = F(D1, t1 < t < t2);
[0112] Among them, the first data matrix is D1, the second data matrix is D2, t is the time of each trajectory data in each trajectory sequence of the first data matrix, t1 is the start time of the target time period, t2 is the end time of the target time period, and F is a filtering function with D1 as the input and t1 < t < t2 as the condition.
[0113] Specifically, the target time period can be set to weekends, weekdays, holidays, morning, afternoon, and night.
[0114] Taking the first data matrix D1 obtained in the example of the time dimension in S2 as an example, assuming that the target time period is night, t1 is 20:00, and t2 is 6:00, the first data matrix D1 = [l0, l1] is filtered, l0 = [trajectory data 3, trajectory data 2, trajectory data 1], l1 = [trajectory data 5, trajectory data 4], and the second data matrix D2 = [] is obtained, because the time t of each trajectory data of each trajectory sequence in D1 does not meet t1 <t<t2。
[0115] S4, combining the second data matrix with the map and web visualization data to perform point display, track display, track editing, track playback and / or linkage interaction.
[0116] In a specific embodiment, step S4 specifically includes:
[0117] Initialize the map's tile data, center point, and levels;
[0118] Adjusting the visualization window size and level of the map according to the spatial attributes of the trajectory data in the second data matrix;
[0119] Display points and / or trajectories according to the spatial attributes of the trajectory data in the second data matrix, or edit trajectories, play trajectories, and interact with the map.
[0120] Specifically, by combining web map data visualization technology with trajectory analysis results from different trajectory analysis dimensions, combined with the spatial dimension, point display, trajectory display, trajectory editing, trajectory playback, and map-list interaction are implemented. This clearly displays the spatial location and temporal sequence of multiple objects, allowing for rapid identification of activity patterns among multiple objects, such as people, vehicles, and objects. This includes analyzing people and vehicles active at night and hiding during the day, their whereabouts, frequent vehicle traffic within a specific area, individuals wandering around a target area, and repeated vehicle violations. This provides a foundational platform for multiple object analysis and behavior prediction scenarios, facilitating a wide range of use cases.
[0121] The following example illustrates the specific visualization process:
[0122] The web page is divided into a left and right structure in a 7:3 ratio. The left side displays the web map, with "Play" and "Edit" buttons placed on it. The right side displays the trajectory sequence, with a "Show / Hide" button. For example, consider the first data matrix D1 obtained from the time dimension in S2: D1 = [l0, l1], where l0 = [trajectory data 3, trajectory data 2, trajectory data 1], and l1 = [trajectory data 5, trajectory data 4]. The right side of the page displays two trajectory sequences, l0 and l1. For example, l0 specifically represents the spatial location name and time of trajectory data 1, the spatial location name and time of trajectory data 2, the spatial location name and time of trajectory data 3, and the total number of trajectory data. Clicking l0 will draw a trajectory and three points on the left map based on the latitude and longitude of trajectory data 3, trajectory data 2, and trajectory data 1. Clicking the "Edit" button on the map allows you to add, delete, or modify trajectory points. Clicking the "Play" button on the map plays the trajectory path from the starting point to the end point. Clicking any point on the map will highlight the corresponding track data on the right. Similarly, clicking any track data on the right will highlight the corresponding point on the map. If there are multiple tracks on the map, they will be displayed in different colors.
[0123] The embodiments of the present application perform trajectory analysis on a variety of trajectory data, providing a more flexible analysis method. For specific application scenarios, clear and organized visualization results can be obtained without restrictions on the data category and object of the trajectory data. This greatly enhances the practical application value of trajectory data in the time dimension and meets the personalized needs of users. Users can customize the time period for tracking targets and the time period for analyzing target trajectories, quickly identify the activity patterns of mobile targets such as people or vehicles, reversely lock onto target objects based on the regular characteristics of a specific time period, or predict the target's subsequent behavior based on the regular characteristics of a specific time period to understand the target's future movements.
[0124] Further references Figure 5 As an implementation of the methods shown in the above figures, this application provides an embodiment of a multi-dimensional trajectory analysis and visualization device based on spatiotemporal data. Figure 2 Corresponding to the method embodiment shown, the device can be specifically applied to various electronic devices.
[0125] The present invention provides a multi-dimensional trajectory analysis and visualization device based on spatiotemporal data, including:
[0126] The data acquisition module 1 is configured to acquire a spatiotemporal data source of a historical time period and spatial location, and in response to determining that the spatiotemporal data source includes at least one target feature value, the target feature value including feature values of different objects having corresponding temporal attributes and spatial attributes, filter and sort the spatiotemporal data source to obtain an ordered sequence, the ordered sequence being at least one piece of trajectory data, the trajectory data including the temporal attribute, the spatial attribute, and the corresponding target feature value;
[0127] Analysis module 2 is configured to process the ordered sequence according to different trajectory analysis dimensions to obtain a first data matrix under different dimensions, wherein the first data matrix includes at least one trajectory sequence, and the trajectory sequence includes at least one trajectory data;
[0128] A filtering module 3 is configured to filter the first data matrix based on a target time period to obtain a second data matrix;
[0129] The visualization module 4 is configured to combine the second data matrix with the map and web visualization data to perform point display, track display, track editing, track playback and / or linkage interaction.
[0130] Reference below Figure 6 , which shows an electronic device (eg Figure 1 A schematic structural diagram of a computer device 600 (a server or terminal device as shown). Figure 6 The electronic device shown is merely an example and should not limit the functions and scope of use of the embodiments of the present application.
[0131] like Figure 6 As shown, the computer device 600 includes a central processing unit (CPU) 601 and a graphics processing unit (GPU) 602, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 603 or the program loaded from the storage part 609 to the random access memory (RAM) 604. Various programs and data required for the operation of the device 600 are also stored in the RAM 604. The CPU 601, GPU 602, ROM 603 and RAM 604 are connected to each other via a bus 605. An input / output (I / O) interface 606 is also connected to the bus 605.
[0132] The following components are connected to the I / O interface 606: an input section 607 including a keyboard, a mouse, and the like; an output section 608 including a display such as a liquid crystal display (LCD), a speaker, and the like; a storage section 609 including a hard disk and the like; and a communication section 610 including a network interface card such as a LAN card or a modem. The communication section 610 performs communication processing via a network such as the Internet. A drive 611 may also be connected to the I / O interface 606 as needed. A removable medium 612, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, and the like, is installed in the drive 611 as needed, so that a computer program read therefrom can be installed into the storage section 609 as needed.
[0133] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through the communication part 610, and / or installed from a removable medium 612. When the computer program is executed by the central processing unit (CPU) 601 and the graphics processing unit (GPU) 602, the above-mentioned functions defined in the method of the present application are executed.
[0134] It should be noted that the computer-readable medium described in this application may be a computer-readable signal medium or a computer-readable medium, or any combination thereof. Computer-readable media may be, for example, but not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor devices, apparatuses, or components, or any combination thereof. More specific examples of computer-readable media may include, but are not limited to, an electrical connection having one or more conductors, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In this application, a computer-readable medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution device, apparatus, or component. In this application, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, which carries computer-readable program code. This propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable medium that can transmit, propagate, or transport a program for use by or in conjunction with an instruction execution apparatus, device, or device. Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including but not limited to wireless, wireline, optical cable, RF, or any suitable combination thereof.
[0135] Computer program code for performing the operations of the present application can be written in one or more programming languages, or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on the remote computer or server. In cases involving a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (e.g., through the Internet using an Internet service provider).
[0136] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions and operations of the devices, methods and computer program products according to various embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, program segment or part of code, and the module, program segment or part of code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart and the combination of boxes in the block diagram and / or flowchart can be implemented with a dedicated hardware-based device that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0137] The modules involved in the embodiments described in this application may be implemented in software or hardware, and may also be set in a processor.
[0138] As another aspect, the present application also provides a computer-readable medium, which may be included in the electronic device described in the above embodiment; or may exist independently and not be assembled into the electronic device. The computer-readable medium carries one or more programs, and when the one or more programs are executed by the electronic device, the electronic device: obtains a spatiotemporal data source of historical time periods and spatial locations, in response to determining that the spatiotemporal data source includes at least one target feature value, the target feature value includes feature values of different objects with corresponding time attributes and spatial attributes, filters and sorts the spatiotemporal data source to obtain an ordered sequence, the ordered sequence being at least one trajectory data, the trajectory data including time attributes, spatial attributes and corresponding target feature values; processes the ordered sequence according to different trajectory analysis dimensions to obtain first data matrices under different dimensions, the first data matrix including at least one trajectory sequence, the trajectory sequence including at least one trajectory data; filters the first data matrix based on the target time period to obtain a second data matrix; and combines the second data matrix with map and web visualization data for point display, trajectory display, trajectory editing, trajectory playback and / or linkage interaction.
[0139] The above description is merely a preferred embodiment of the present application and an illustration of the technical principles employed. Those skilled in the art should understand that the scope of the invention involved in this application is not limited to the technical solutions formed by the specific combination of the above-mentioned technical features, but also encompasses other technical solutions formed by any combination of the above-mentioned technical features or their equivalents without departing from the above-mentioned inventive concept. For example, a technical solution formed by replacing the above-mentioned features with (but not limited to) technical features with similar functions disclosed in this application.
Claims
1. A multidimensional trajectory analysis and visualization method based on spatiotemporal data, characterized in that: The following steps are involved: S1, obtaining a spatiotemporal data source of historical time periods and spatial locations, and in response to determining that the spatiotemporal data source includes at least one target feature value, wherein the target feature value includes feature values of different objects having corresponding temporal attributes and spatial attributes, filtering and sorting the spatiotemporal data source to obtain an ordered sequence, wherein the ordered sequence is at least one piece of trajectory data, wherein the trajectory data includes a temporal attribute, a spatial attribute, and the corresponding target feature value; S2, processing the ordered sequence according to different trajectory analysis dimensions to obtain a first data matrix of different dimensions, wherein the first data matrix includes at least one trajectory sequence, the trajectory sequence includes at least one piece of trajectory data, and the trajectory analysis dimensions include a time dimension, a data category dimension, and a multi-object dimension; specifically, including: S21, the first data matrix is initially an empty matrix; S22, obtaining the time attribute of the nth track data in the ordered sequence and converting it into a timestamp; S23, determining whether the difference between the timestamp of the nth track data and the time mark is greater than the time period value, wherein the initial value of the time mark is 0, and the remaining values are the time values of the n-1th track data, n≥1; S24, in response to determining that the difference between the timestamp and the time mark is greater than the time period value, creating a new trajectory sequence in the first data matrix, and inserting the nth trajectory data at the end of the new trajectory sequence; S25, in response to determining that the difference between the timestamp and the time mark is less than or equal to the time period value, inserting the nth track data at the first position in the last track sequence of the first data matrix; S26, repeating steps S22-S25 until n is equal to the total number of trajectory data in the ordered sequence, thereby constructing the first data matrix; S3, filtering the first data matrix based on a target time period to obtain a second data matrix; S4, combining the second data matrix with the map and web visualization data to perform point display, track display, track editing, track playback and / or linkage interaction.
2. The multidimensional trajectory analysis and visualization method based on spatiotemporal data according to claim 1 is characterized in that: The step S1 filters and sorts the spatiotemporal data source to obtain an ordered sequence, specifically including: Filtering data with empty spatial attributes in the spatiotemporal data source to obtain a filtered spatiotemporal data source; The filtered spatiotemporal data sources are sorted in chronological order to obtain the ordered sequence.
3. The multidimensional trajectory analysis and visualization method based on spatiotemporal data according to claim 1, characterized in that: Under the data category dimension, step S2 specifically includes: Identifying the data category of each piece of trajectory data in the ordered sequence; The data are grouped according to different data categories, and the trajectory data of the same data category in each group form a trajectory sequence, and constitute the first data matrix.
4. The multidimensional trajectory analysis and visualization method based on spatiotemporal data according to claim 1, characterized in that: In the multi-object dimension, step S2 specifically includes: Structuring all objects in the ordered sequence, each object having a corresponding unique identifier; The data are grouped according to different unique identifiers, and the trajectory data with the same unique identifier in each group form a trajectory sequence, and constitute the first data matrix.
5. The multidimensional trajectory analysis and visualization method based on spatiotemporal data according to claim 1, characterized in that: The step S3 specifically includes: Input the first data matrix into a filtering function conditioned on the target time period to obtain the second data matrix. The formula is as follows: D2 = F(D1, t1 < t < t2); where the first data matrix is D1, the second data matrix is D2, t is the time of each trajectory data in each trajectory sequence in the first data matrix, t1 is the start time of the target time period, t2 is the end time of the target time period, and F is a filtering function that takes D1 as the input and t1 < t < t2 as the condition.
6. The multidimensional trajectory analysis and visualization method based on spatiotemporal data according to claim 1, characterized in that: The specific steps of step S4 include: Initialize the tile data, center point, and level of the map; Adjust the visualization window size and level of the map according to the spatial attributes of the trajectory data in the second data matrix; Display points and / or trajectories according to the spatial attributes of the trajectory data in the second data matrix, or edit trajectories, play trajectories, and perform linkage interactions with the map.
7. A device for multi-dimensional trajectory analysis and visualization based on spatiotemporal data, using the multi-dimensional trajectory analysis and visualization method based on spatiotemporal data according to any one of claims 1 to 6, characterized in that: Including: A data acquisition module configured to acquire a spatio-temporal data source of a historical time period and a spatial location. In response to determining that the spatio-temporal data source includes at least one target feature value, where the target feature value includes feature values of different objects with corresponding time attributes and spatial attributes, filter and sort the spatio-temporal data source to obtain an ordered sequence, and the ordered sequence is at least one trajectory data, and the trajectory data includes time attributes, spatial attributes, and their corresponding target feature values; An analysis module configured to process the ordered sequence according to different trajectory analysis dimensions to obtain a first data matrix in different dimensions, and the first data matrix includes at least one trajectory sequence, and the trajectory sequence includes at least one trajectory data; A filtering module configured to filter the first data matrix based on the target time period to obtain a second data matrix; A visualization module configured to combine the second data matrix with a map and web visualization data for point display, trajectory display, trajectory editing, trajectory playback, and / or linkage interaction.
8. An electronic device, comprising: One or more processors; A storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1-6.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by the processor, it implements the method according to any one of claims 1-6.
Citation Information
Patent Citations
Data processing method, device, equipment and system
CN114428979A
Travel mode detection method based on sequence subspace clustering on manifold
CN114637931A