Road Network Extraction from Low-Frequency Trajectories Based on a Road Structure-Aware Filter

: Many studies have utilized global navigation satellite system (such as global positioning system (GPS)) trajectories in order to successfully infer road networks because such data can reveal the geometry and development of a road network, can be obtained in a timely manner, and updated on a low budget. Unfortunately, existing studies for inferring road networks from vehicle traces su ﬀ er from low accuracy, especially in dense urban regions and locations with complex structures, such as roundabouts, overpasses, and complex intersections. This study presents a novel two-stage approach for inferring road networks from trajectory points and capturing road geometry with better accuracy. First, a lane structure-aware ﬁlter is proposed to cluster vehicle trajectories inﬂuenced by high noise and outliers in order to reveal the continuous structure points of lane curves from massive trajectory points. Second, a road tracing operator is utilized to segment the road network geometry by inserting new vertices and segments to a vigorous vertex in the heading of the structure points that are extracted in the ﬁrst step. Experimental results demonstrate the increased accuracy of the extracted roads and show that the proposed method exhibits strong robustness to noise and various sampling rates.


Introduction
Road networks are the foundation of location-based services (LBSs), such as autonomous driving, navigation, and real-time route planning [1]. As one of the principal parts of the intelligent transportation system (ITS), road maps are necessary for maintaining highly accurate and timely information [2]. Unfortunately, maintaining real-time information on road networks is challenging due to construction, closures, and accidents, etc. Clearly, manually creating and updating maps based on conventional ground-based survey techniques is costly and inefficient for meeting such a demand. Aerial imagery is considered the most common data source used for acquiring road networks rapidly and economically [3]. Unfortunately, frequent occlusions (clouds, trees and buildings), complicated pre-treatments and confusing classifications limit its application.
Currently, global positioning system (GPS) sensors are widely used on mobile platforms such as automobiles and smartphones to record the trajectory of their host [4]. Therefore, a large number of the latest real-time trajectories can be collected. In particular, the ubiquitous vehicle trajectory is a kind of geodynamic spatial data exhibiting the latest situation and high route coverage. These data contain rich information such as road geometry, driving behaviour, and commuting times [5]. Therefore,

Related Work
In recent years, automatic map inference based on vehicle trajectory data has received extensive attention. Comparative studies for inferring road geometry from vehicle trajectory data were undertaken by [11] and [6]. According to the inference type of the existing works used, these methods can be classified into three categories: point clustering based on the local similarity of trajectory points, sub-trajectory clustering based on the path distance, and image morphology based on the trajectory point (line) density.
The point clustering-based method assumes that the input trajectories consist of a group of points clustered in spatial and semantic relationships [12]. For example, the mean-shift algorithm utilized trajectory data to move the seed points until each seed converged on the road centre [13,14]. Analogously, the k-means algorithm was also employed to cluster the trajectory points first [15,16] and produced links among cluster centres by mapping original trajectories to the road graphs. Additionally, the density-based spatial clustering of applications with a noise (DBSCAN) algorithm was utilized to infer road networks by clustering characteristic points [17,18]. Yang et al. [19] presented a novel method for acquiring road boundaries from vehicle trajectory points via Delaunay triangulation. Deng et al. [20] extracted the intersection modes and traffic rules of road networks adaptively using an improved algorithm based on the hierarchical trajectory clustering. Mariescu-Istodour et al. [21] introduced a method by first probing and splitting the intersections (junctions) where trajectory points with multiple principal directions exist, and then producing the road graphs between them.
The trajectory merging-based method mainly considers the continuous points as the road sampling time series and cluster trajectories or sub-trajectories based on the similarity of travel paths [22][23][24]. Ahmed et al. [25] presented a partial trajectory incremental technique that employed the Frechet distance to match the trajectories to create road graphs. Bierlaire et al. [26] developed a statistical map matching method that estimated the conditional probability of a trajectory with the consideration of both point coordinates and temporal information. Tang et al. [27] employed Delaunay triangulation and a weighted skeleton for incremental road map construction from low-frequency vehicle trajectories. He et al. [28] presented a road map inference method that utilizes the long-term observation of vehicle trajectories to create accurate road networks in dense urban regional and intricate intersections.
In addition to the two categories of vector methods mentioned above, the third category is image morphology-based, which converts the original trajectories into a geometric image (e.g., raster image or vector image) and next produces road centrelines from the image based on morphological thinning or skeletonization techniques [29][30][31][32][33]. For example, Biagioni et al. [11] transformed the input points to a kernel density estimation (KDE)-based discretized image and then applied multiple density thresholds to compute the road skeleton. Ozertem et al. presented a machine learning tool that consists of KDE and Gaussian mixture models (GMMs) [34] to refine the principal curves.
The point clustering methods for extracting road networks from unstructured trajectories are effective and robust with respect to the sampling frequency. However, the lack of track point spatial association information leads to inaccurate connection structures in the output. The trajectory merging-based methods contribute local connectivity information into map inference; however, trajectory and sub-trajectory merging require high-frequency acquisition and few outliers to work properly because the low-trajectory sampling frequency produces trajectory segments that are too long. Vector-to-grid conversion based on image morphology suffers from a loss of precision; namely, the larger the grid size is, the greater the loss of precision. At the same time, the KDE methods ignore the connectivity between GPS observations and fail to create bidirectional road networks.
In this work, we propose a novel approach to infer road network feature points by using lane structure-aware filtering based on the improved mean-shift algorithm from trajectory points, and extracting the geometric representation of each road segment by tracking local linearly distributed feature points. The primary contributions of the proposed method are summarized as follows. First, the lane structure-aware filtering method combines a dynamic radius solution and linear distribution estimation for each iteration, sifts out the continuous structural feature points of the road lane from the scattered trajectory points. Then, the structure-aware filtering method, with applications in extracting the feature structure from vehicle trajectory points in this work, and also can be used for the applications in clustering and dimensionality reduction of vehicle trajectories. Next, the novel tracing criteria is based on the similarity of seed points that guide accurate road tracing where roads are ambiguous due to overlapping or adjacency with similar headings. Finally, the proposed method is mainly point-based and robust to the sampling frequency and outliers.

Proposed Method
The basic observation is that even if each a trajectory exhibits sparse sampling, a map inference approach for trajectory data should also consider that a road can be traversed by a certain number of vehicles over a period of time; hence, vehicle trajectories should usually be dense. The trajectory points on different lanes often overlap each other as a result of low positioning accuracy, but the density centres are still in their lanes. In this work, filtering trajectories based on the road structure-aware method from multiple trajectory points in a local neighbourhood can not only remove the effects of extreme noise and outliers, which are unrelated to the road of interest because of low positioning accuracy, but also sift the structural feature points of road lanes by urging the trajectory points to move along the direction of the local high density of their lanes. The road lane segmentation method selects an initial vertex from the candidate queue and expands the current road segment from the initial vertex by implementing two key procedures-inserting new vertices in the direction of the active vertex to extend the road network (tracing) and connecting the current active vertex with an existing segment vertex that has already been explored when two road lanes join with same heading (connecting).

Lane Structure-Aware Filtering
The point clustering method has been widely applied to map inference because it is less susceptible to factors derived from sampling frequency. A high density of trajectory points indicates a high possibility that a road centreline exists, whereas a low density suggests that vehicles separate from the road centreline. In addition, driving heading is one of the most important movement characteristics for vehicle trajectory data and one of the principal bases for analysing the characteristics of traffic driving behaviour. Therefore, the direction-based density clustering method not only helps to reveal the clustering characteristics of the distribution of trajectory data but also helps to extract the behavioural characteristics of urban traffic flow from the vehicle traces. Therefore, a clustering approach based on lane structure-aware filtering is proposed in this work, where both the spatial distance and direction characteristics are considered in the calculation of the neighbourhood trajectory data.

Mean-Shift
The mean-shift algorithm, originally created by Fukunaga and Hostetler [35], is a non-parametric feature-space analysis technique for locating the maxima of a density function, and mainly applied in domains that include pattern recognition, point cloud denoising and image processing. In our previous work, the mean shift with a penalty was utilized to extract the centreline of the road network [36].
where the first item of formula (1) represents the original mean-shift algorithm and the second item penalizes the point distributed in a local centre; λ balances constants between the two items; x k i is the initial coordinate (composed of x and y coordinates) for each iteration, and x k+1 i is the shifted coordinate after each iteration with a set neighbourhood radius R. q k j and x k i are the original trajectory points and seed points around the centre of x k i for each iteration. 2 /R 2 used as a smooth kernel weight for rapidly decaying with a support cell radius R, where . represents the Euclidean distance between two points.
However, because the direction the vehicle is driving is not considered during neighbourhood construction, as shown in Figure 1, the mean-shift procedure fails to extract roads in detail. In this work, the heading directions are considered in the neighbourhood calculation process, and a fairly liberal heading threshold is adopted, e.g., 45 • . Hence, a point is regarded as motion direction compatible if its heading follows the heading threshold of the centre point.

Implementation Details of Lane Structure-Aware Filtering
Using only the mean-shift algorithm constraint by the track point heading direction will fail to distinguish the structure points of the road lane from the noisy trajectory points. The largest difference compared to our previous work is that we combine a dynamic radius and linearity estimation at each iteration. The following four implementation details in the process of lane structure-aware filtering were emphasized.

•
First, the distribution of the track points in different regions is not uniform. To infer roads in the sparse density region, we select all the input trajectory points as initial seeds, which is different from the existing clustering methods that use fixed equal-length sampling [15,16] or fixed gridded sampling [14]. • Second, we also need to update the heading direction of each seed while updating its location during each iteration. Instead of using the mean of the nearby original trajectory point directions, we estimate a new direction for each centre seed using the heading direction median for the original points.

•
Then, since each road graph in the real world has a different width attribute, we filter the trajectory points based on a radius representing the width of the road lane. Instead of using a fixed radius for each iteration, we initiate with a small radius and enlarge the radius during the iteration process. After each iteration, we also estimate a linear distribution characteristics of each seed (detailed in Section 3.2). When a seed is linearly distributed on the lane, the next iteration will not update its location and heading. Thus, the initial radius of all seed points is set to a fixed initial value, e.g., four metres, and the radius of each iteration is increased by 0.5 metres. This dynamic radius solution, combined with linear distribution estimation, allows the lane structure-aware filter to remain effective in exploring more specialized lanes, such as ramps.

•
Finally, to accelerate the contraction of the seed points to road centrelines, and to abstract the structure of roads using as few feature points as possible, the two points are substituted for one point with a mean of their positions as soon as their distance is less than one metre. Therefore, the number of seeds decreases gradually with the iteration calculation, and only a few seeds remain that are eventually located in the local intermediate position of the road lanes. These remaining points are called geometric structural points, which represent the geometric structure of the centreline of the road lanes.
In Figure 2, we partially visualize an example of how the lane structure-aware filtering works at various iterations. The filtering operation utilizes the trajectory points to gradually sift the seed points, including shifting points towards high-density areas and merging where two points are close together. As the iterations progress, the sampling points gradually approach and fix to the lane centreline, and the number of points decreases accordingly. As illustrated in Figure 2f, the structure-aware filtering method can effectively sift out the geometric structure points of the road lane from the scattered trajectory points because the structure-aware filtering method fixes the structure points that are linearly arranged on the road segments at each iteration.

Linearity Estimation and Removing Outliers
Instead of designing an arbitrary curve, roads are usually designed to be as gradual as possible to avoid sharp turns. Even if the road is smoothly curved, it can still be considered a straight line in a local range. Recall the implementation details of the lane structure-aware filter in Section 3.1.2. We update the position and heading of seeds based on a linear distribution attribute. Principal component analysis (PCA) considers that the orientations with the largest variances are the most "important" (i.e., the most principal) [37]. Therefore, the basic concept is to evaluate the principal component of the local road lane at vertex x i from the seeds and utilize that as the linear distribution attribute. Thus, we adopt the classic weighted PCA to detect the lane geometric feature points that form a linear distribution with the near multipoint seed points.
At each seed point x i (a row vector composed of x and y coordinates) and the nearby seeds x i within its neighbourhood, compute a 2 × 2 weighted covariance matrix: The eigenvalues λ 0 i , λ 1 i and the corresponding eigenvectors e 0 i , e 1 i of the covariance matrix C i are computed and define the value: as the linear distribution attribute of x i with its local neighbourhood points x i . In Figure 3, the e 0 axis (red) is the first most principal direction along which the samples show the largest variation. The e 1 axis (green) is the second important direction and is orthogonal to the e 0 axis. As illustrated in Figure 3a,b, the smaller the difference between the values of λ 0 and λ 1 , the closer the value of κ is to 0.5, indicating that there is redundancy in the data. In contrast, the greater the difference of the two eigenvalues, the more the points that are distributed in the direction of the first principal component (red), as illustrated in Figure 3c,d, accordingly, the closer κ is to 1. Therefore, in the iterative calculation of Section 3.1.2, even if the iteration has not ended, the position and heading will not be updated when the linear distribution value of a point is greater than 0.95 because there are no redundant trajectory points around it. The lane structure-aware filter can capture complex geometric structural seeds of the road network with high accuracy. However, some of the identified structural seeds may be pseudo-features that should be detected and abandoned in regions that are distanced from their lanes or covered by extremely sparse trajectory points, as shown in Figure 4a, because the lane structure-aware filter aggressively filters trajectory points that do not relate to the geometry of the currently probed road during the iterative computation. This approach achieves very high precision, but unqualified trajectories become isolated points. We solve this problem by reusing the linear distribution attribute estimated at the end of the lane structure-aware filter. We select from all the structural points only the points where κ i > 0.95 as candidate points for road tracing, as shown in Figure 4b.

Road Lane Segmentation
The road lane segmentation method gradually segments the road graph from an initial seed point by following its heading direction. The segmentation procedure uses a set of candidate points to iteratively extend the graph by inserting new vertices and segments in the direction of the active vertex and connecting when two roads with a similar heading come together. The strategy stops tracing a road lane when it arrives at a dead end, deviates from the region of interest, or connects with other roads with the same traffic direction.

Iterative road Lanes Tracing
The principal curve [38] technique includes an ordered set of oriented points based on local principal orientation curves [39]. In this work, the orientation explicitly derives from the seed heading. Roads are often designed to be as smooth as possible to avoid sharp turns, and major roads are straighter than minor ramps. With this prior knowledge, and the principle of the principal curve, the tracing steps iteratively along roads initialized from a seed location p 0 with the largest k value from the candidate point queue, which is guided by a decision function that takes full advantage of the distance, heading and number of original trajectory points of a candidate point. Because this strategy can be guaranteed, the main roads are tracked first and then attached to the subsequently tracked ramps. Additionally, given that the road orientation may exhibit a slight discrepancy at a new vertex, the next vertex x i is determined from the neighbours of the active vertex p 0 based on the following conditions:

•
Ensuring that the searched next vertex x i is close to the p 0 , the search distance (∆dis(p 0 , x i ) , i = 0, 1, 2 . . .) should be less than a set threshold.

•
Ensuring that there is no sudden turn on a road lane, the orientation change (∆heading(p 0 , x i ), i = 0, 1, 2 . . ..) between the two vertices of a lane should be less than the set threshold.
When the next vertex x i is obtained, replace x i with p 0 as the active vertex by tracing in the same way. This algorithm stops tracing a road lane when it arrives at a dead end, deviates from the region of interest, or connects with other road segments with a similar heading that have already been explored. In this way, tracing the road graph in an iterative pattern ensures exploiting the long-term connectivity between vehicle trajectories to accurately capture road geometry and topology as it adds each segment to the road network.
Usually, however, more than one candidate from x i is acquired around p 0 according to the above conditions. We found that using only the distance and heading features to determine the next vertex is not sufficient. Figure 5a shows the two ambiguous regions (highlighted rectangle) during road tracking where the road overlaps another road with a similar heading. The region in the upper left corner of Figure 5a, using only the distance and heading thresholds for extending the road, may cause the curve to track to another road. To overcome this challenge, a novel tracing criterion expressed as a scoring function is used that also considers the number of original trajectory points at the location of a structure point x i because the traffic flow may be slightly different at the local area of the same lane but show great differences on different lanes.
where ∆dis (p 0 , x i ), ∆heading (p 0 , x i ) and ∆original (p 0 , x i ) represent the normalized features of V p 0 ,x i = ∆dis p 0 , x i , ∆heading p 0 , x i , ∆original p 0 , x i , respectively, and are calculated based on the distance, heading and density difference features of the active vertex p 0 and a candidate point x i . Since the range of values of each feature for V p 0 ,x i varies widely, the objective function will not work well due to lack of normalization [40]. Therefore, the range of each feature should be normalized (vary between 0 and 1) on the basis of the minimum and maximum value of each feature so that it contributes approximately proportionately to the final Euclidean distance D i (p 0 , x i ) and picks the next vertex x i with the minimum distance. The number of original trajectory points is estimated during the lane structure-aware filter process.

Connecting Road Lanes
The tracing algorithm may fail to connect (trace) all road segments when the heading between two lanes is very small, as shown in Figure 6a. This often occurs on highway on-ramps and off-ramps, where the great traffic volume discrepancy between the highway and the on/off-ramp along with the small angle of the branch cause seed points on the ramp (low density) to move towards the highway (high density) during structure-aware filtering, causing the absence of one or more feature points at the confluence of the ramp, as shown in the highlighted regions in Figure 6a. Thus, we develop a connecting procedure to correct the topological structure of the road network. First, the starting vertex or tail vertex of the dead road is chosen as the candidate vertex Q, and its extending direction vector is N. As shown in Figure 7a, we search the nearest lane vertex p 0 and the following vertex p i on an existing road lane with the same orientation within a certain distance. For any vertex p i and Q consisting of a direction vector V i , we find the best point where the V i and N vectors have the smallest angle as the connected vertex. For the case where the lane is disconnected at the starting vertex, as shown in Figure 7b, after finding the nearest vertex p 0 , the subsequent vertex p i is found along the opposite direction of the lane. These disconnected road segments can repair the connection in this way, as shown in Figure 6b.

Experiments and Discussion
To verify the effectiveness and robustness of the proposed approach, two kinds of trajectory (high-frequency sampling and low-frequency sampling) are selected to test the proposed method in this work. The basic statistics of the two trajectories are reported in Table 1, and the trajectory characteristics are summarized as follows: • Chicago Campus Bus Dataset. This dataset consists of 118,364 track points and 889 trajectories with an area of 3.8 km × 2.4 km [7], as shown in Figure 8a. The campus bus travels on regular lines; hence, the trajectories are located at regular roads. • Dongguan Taxi dataset: The Dongguan dataset was acquired by taxis from Dongguan, China [41]. The dataset covered an area of 6.04 km × 3.46 km, with approximately 2000 trajectories and 280,253 track points. This region contains complex road intersections, from diverse overpasses to small residential roads, as shown in Figure 8b.

Evaluation Method
A road network is an indispensable geographic entity and is designed as a complex network that requires higher position precision and accurate topology relationships. Three indicators introduced by Biagioni and Eriksson [11], namely, "precision", "recall", and "F-measure", are utilized to quantitatively evaluate the accuracy of the result of the map inference. This approach adopted a graph-sampling-based distance measure to simultaneously evaluate the geometric and topological similarities between the explored map and ground truth map. The main idea of the method is as follows.
Sampling points are sampled on each road segment equidistant from the extracted map (extracted) and the truth map (truth). The two point groups are compared utilizing a one-to-one match by a given distance threshold and counting points in each group of the matched sampling points. The accuracy of the construction map related to the truth map was quantified based on the ratio of matched sampling points, where the matched points sampling from the extracted map are represented by Matched_extracted and the matched points sampling from the truth map are represented by Matched_truth. The precision represents the similarity of the extracted map compared with the truth map and recall represents the integrity of the extracted map compared with the truth map, where precision = Matched_extracted extracted and recall = Matched_truth truth . Based on the precision and recall, the F-measure is computed as follows: The F − measure value ranges from 0 to 1, with a score closer to 1 indicating that almost all the extracted roads and truth map are matched; in contrast, a score closer to 0 demonstrates very few extracted roads and ground truth are matched. Therefore, this quantitative method was utilized to measure the geometric and topologic accuracy of the extracted road network.

Quality Comparison and Discussion
According to experimental results, the neighbourhood radius for the lane structure-aware filter sets an initial fixed value of three metres and increases the radius of each iteration by 0.5 metres. The thresholds for the segment trace process are the heading of 35 • and the distance of 30 metres, and the road connecting step is set at 60 metres. For comparison and evaluation, the existing road extraction methods were compared by Ahmed [6] and Kharita [42]. In previous work, we also extracted the centreline of the road network, similar to Davies [29] and Ahmed [25]. In this work, the proposed method was compared with the methods of Kharita on the same two datasets. To quantize the accuracy of the road networks inferred from the two trajectory datasets, an OpenStreetMap [43] representation of the same region was utilized as the ground truth map.

Visual Inspection
Figures 9 and 10 illustrate two road network (red line) generated by the proposed method and the method by Kharita, respectively, as well as the corresponding ground truth map (grey line). One can see that that the proposed method extracted more road segments that are considered consistent with the benchmark map. Despite that Kharita's method can also obtain a relatively complete road network from dataset 1 (high sampling frequency), it produces a few redundant edges and offset intersections from the Chicago dataset, caused by a low trajectory sampling frequency yielding trajectory segments that are too long for this technique to work properly.   Table 2 provides the detailed results for the length of the generated road for the two methods in different experimental regions and shows that both methods can obtain relatively complete road segments. Since Kharita's method produces redundant segments, the total lengths of the roads extracted from the Dongguan dataset are longer. Based on the criteria proposed by Biagioni and Eriksson, the plots of the accuracies of the roads extracted from the two validation datasets are presented in Figures 11 and 12. In general, the scores are greater on the Chicago dataset compared with the Dongguan dataset because the Chicago data are mostly collected by buses following regular routes; hence, the network geometry is relatively ordinary, with more trajectories covering most extracted road edges. In contrast, the Dongguan dataset is much more complex with respect to routes and intersection types and it poses a great challenge for accurate extraction.  We noted that, for the high-frequency sampled Chicago dataset, the difference between the two methods' extraction results is not obvious; however, the results differ greatly for the Dongguan dataset with low-frequency sampling trajectories. Therefore, from the perspective of the visual and quantitative evaluation, the road network extracted by the proposed method has higher effectiveness and better accuracy than the road network generated by Kharita's method.

Discussion
Although the process presented in this work may not have achieved state-of-the-art, the results show the great capability and potential of extracting road information that is present in vehicle trajectories. First, the map inference provides a possible solution for map updates because all the missing roads form a sub-map of the complete road network, and map inference can be used to find the road skeleton of the sub-map by mining the trajectory data. Second, we focus on the road network extraction at the lane level, which is essential for high-precision, real-time maps for autonomous driving. Third, the structure-aware filtering method, with applications in dimensionality reduction and clustering of vehicle trajectory points, greatly facilitates existing dimensionality reduction and clustering techniques. Moreover, the potential information contained in the vehicle trajectory can be used to provide useful guidance and support for other emergency response purposes, such as traffic forecasting, traffic grooming, and crowd flow analysis.
As our evaluation results indicate, the proposed method was validated as an effective approach for taking low-frequency trajectory points as input to extract the road lanes, as shown in Figure 13b. However, determining how many trajectory points (lines) on a road are adequate for road network extraction is an uncertain problem. Moreover, trajectory density was influenced by self-factors, such as road grade and road structure, as well as being correlated closely with the distributed location, traffic flow, and pedestrian movement. Although this work uses the dynamic structure-aware technology to solve some problems, low-quality seeds (long distances or a heading that varies greatly) are still produced in regions of sparse trajectories that cause failures in road tracing, as shown in Figure 13a. To further deal with this limitation, additional techniques, such as trajectory interpolation, are potentially useful solutions.

Conclusions
The present work has demonstrated a novel two-stage approach for creating a detailed road network from vehicle trajectories that clearly advances the state-of-the art by being able to handle noisy and sparse sampling trajectories. Separating track points according to road lanes has been the greatest challenge because low-precision vehicle trajectories are scattered on the road surface. To identify potential lane branches, the structure-aware filtering method effectively sifts out the geometric structure points of the road lane from the scattered trajectory points by combining the dynamic radius and linearity estimation at each iteration. The method was validated and evaluated using two kinds of data that are sampled by high frequency and low frequency, and experimental results demonstrate better performance is achieved in geometric accuracy and topologic accuracy of the extracted road network compared with other methods. It was verified to be effective for quality improvement in low-sampling rate situations when handling the vehicle trajectory of different road structures in a feasible way.
However, the proposed method sometimes fails to infer road segments when there are not enough trajectories because the road segmentation relies on a certain density of trajectory points. Therefore, future studies will concentrate on extending the technique to work with sparse track points and improving the methodology to generate highly detailed road networks. In addition, the current approach is designed for map inference from trajectory data within given time bounds, and consequently, we plan to improve the methodology to work with map updates in streaming trajectory data.