Challenges in Partially-Automated Roadway Feature Mapping Using Mobile Laser Scanning and Vehicle Trajectory Data
Mohammad Billah, Farzana Rahman, Arash Maskooki, Michael Todd, Matthew, Barth, Jay A. Farrell

TL;DR
This paper discusses the challenges and proposes a new method for converting mobile laser scanning data into digital maps of roadway features, aiding automated map creation for connected vehicle applications.
Contribution
It introduces a novel processing and feature extraction method for transforming MTLS data into SAE-J2735 map messages, demonstrating its application on multiple intersections.
Findings
Successful generation of SAE-J2735 map messages for eleven intersections
Identification of remaining challenges in automated EDM development
Discussion of future research directions in mobile laser scanning data processing
Abstract
Connected vehicle and driver's assistance applications are greatly facilitated by Enhanced Digital Maps (EDMs) that represent roadway features (e.g., lane edges or centerlines, stop bars). Due to the large number of signalized intersections and miles of roadway, manual development of EDMs on a global basis is not feasible. Mobile Terrestrial Laser Scanning (MTLS) is the preferred data acquisition method to provide data for automated EDM development. Such systems provide an MTLS trajectory and a point cloud for the roadway environment. The challenge is to automatically convert these data into an EDM. This article presents a new processing and feature extraction method, experimental demonstration providing SAE-J2735 map messages for eleven example intersections, and a discussion of the results that points out remaining challenges and suggests directions for future research.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsRemote Sensing and LiDAR Applications · Autonomous Vehicle Technology and Safety · Video Surveillance and Tracking Methods
Challenges in Partially-Automated Roadway Feature Mapping Using Mobile Laser Scanning and Vehicle Trajectory Data
Mohammad Billah*†, Farzana S. Rahman†*, Arash Maskooki, Michael Todd, Matthew Barth and Jay A. Farrell This work was supported by a grant from the Cooperative Transportation Systems Pooled Fund Study subaward number GS11191-147223.†*The first two authors should be considered as joint first authors.Billah and Rahman are with the department of Electrical and Computer Engineering, University of California, Riverside, 92521, U.S.A. {mbillah, frimi}@ece.ucr.eduTodd is with the Center for Environmental Research & Technology, University of California, Riverside, 92521, U.S.A. [email protected] and Farrell are faculty of Electrical and Computer Engineering, University of California, Riverside, 92521, U.S.A. {barth, farrell}@ece.ucr.edu
Abstract
Connected vehicle and driver’s assistance applications are greatly facilitated by Enhanced Digital Maps (EDMs) that represent roadway features (e.g., lane edges or centerlines, stop bars). Due to the large number of signalized intersections and miles of roadway, manual development of EDMs on a global basis is not feasible. Mobile Terrestrial Laser Scanning (MTLS) is the preferred data acquisition method to provide data for automated EDM development. Such systems provide an MTLS trajectory and a point cloud for the roadway environment. The challenge is to automatically convert these data into an EDM. This article presents a new processing and feature extraction method, experimental demonstration providing SAE-J2735 map messages for eleven example intersections, and a discussion of the results that points out remaining challenges and suggests directions for future research.
I Introduction
Recent technology advances have enabled consideration of cooperative applications between intelligent vehicles and the roadway infrastructure. Such cooperative applications are facilitated by roadway feature maps. An accurate map of the signalized roadway enables: guidance and instructions to the user, optimization of intersection signaling based on nearby vehicles and their intentions, warnings about specific road obstacles or hazards, and definitions of the territorial limits for traffic flows thus ensuring a safe and comfortable driving environment.
There are over 300,000 signalized intersections and six million miles of roadway in the USA alone [1]. For global commercialization, such maps would be required for all countries interested in participating; therefore automation of the roadway feature mapping is critically important. Various sensors (e.g., radar, camera, and LiDAR) have been considered for feature sensors. Each has strengths and weaknesses, for example: weather condition, time of the day and complex shadowing from different objects [2, 3]. Due to advances in LiDAR technology, there has been increasing interest in Mobile Terrestrial Laser Scanning (MTLS). MTLS has been adopted by both commercial and academic sectors as it captures highly precise and dense point clouds in relatively short periods of time [3, 4, 5, 6].
This paper presents a complete point cloud to roadway feature extraction and mapping method. The method is demonstrated using data from the California ITS testbed in Palo Alto which contains 11 intersections. As is specified for connected vehicle applications, the intersection maps are output in SAE-J2735 [7] map message format.
Section II reviews the related literature. Section III provides an overview of the process; describes the testbed, data, and data acquisition; and the georectification process. Section IV, which contians the novel ideas of the paper, states point cloud feature extraction problem and describes our approach. Section V discusses the experimental results. Section VI concludes the study and makes suggestions for future work.
II Related Literature
Several researchers have previously considered the use of LiDAR point cloud data for roadway feature mapping.
Guan et. al. [8] extracts road curbs using the principle point selection method based on height values in short road slice segments. All the points inside road curbs are considered as the road surface. Then, an Inverse Distance Weighted (IDW) method is employed to generate a georectified raster image. Finally, high intensity road markings are detected in the raster image using Otsu’s thresholding method. Kumar et. al. [9] generates a 2D image from the 3D point cloud using height, intensity and pulse width attributes and detects road edges by implementing a parametric active contour model on the image. Then, a range dependent thresholding function is employed to distinguish road markings from the image. Wang et. al. [10] detects road curb lines using a saliency map computed from the 3D point cloud. Saliency is quantified by projecting the distance from each point’s normal vector to the point cloud’s dominant normal vector. Li et. al. [11] uses statistical hypothesis testing on the altitude of each point cloud element to detect the boundary of the road. Yang et. al. [12] detects road curbs from a feature image computed from the point cloud. The feature image is generated by dividing the point cloud into small cells and interpolating each cell’s gray value using IDW method. Then, the largest inter-cluster variance is used as the threshold to extract road surface. Finally, a Hough transform [13] is performed to detect curbs from image line segments. Yuan et al. [14] extracts the road surface from MTLS LiDAR data using a fuzzy clustering method and fitting straight lines to the linearly clustered data using slope information. Lam et al. [15] extracts road points from MTLS LiDAR data by fitting RANdom SAmple Consensus (RANSAC) [16] planes to small sections and using a Kalman filtering to interconnect these fitted planes. Jaakkola et al. [17] detects the road surface by filtering the gradient image of the height attributes. Then the variance of the measured intensity value along each scan profile is reduced based on the fading of intensity. The points that are at a long distance from the laser scanner and large angle of incidence is removed. Then, road markings are detected by applying a threshold and morphological filtering method. Finally, the markings are classified according to area, area of the bounding box, and orientation. Smadja et al. [18] extracts roads from LiDAR data by using RANSAC along with slope information. Then road markings are extracted by simple thresholding. McElhinney et al. [19] presents an algorithm for extracting road edges from MTLS LiDAR data where a set of lines are fit to the road cross-sections based on the trajectory data and then LiDAR points within the vicinity of the lines are determined. Yu et al.[20] presents an algorithm for detecting and classifying road markings directly from 3D point cloud data. First, a multi-segment thresholding and spatial density filtering is used in the reduced road surface points. Then different types of road markings are categorized through an integration of Euclidean distance based clustering, normalized cut segmentation, classification using trajectory and curb-lines, deep learning, and principal component analysis.
III Process Overview
The MTLS process includes three major steps: data collection, trajectory estimation and georectification, and feature extraction and mapping. A rigid platform containing a suite of sensors (e.g. an inertial measurement unit (IMU), a global navigation satellite system receiver (GNSS), and a LiDAR) is moved through an environment for data collection. The IMU and GNSS data are combined to provide the position and attitude (i.e. the trajectory) of the sensor platform to centimeter-level accuracy, which is needed to georectify the LiDAR point cloud data. Feature extraction is performed on the georectified point cloud.
Data collection, trajectory estimation and georectification are briefly reviewed in this section. The main novel contributions of this paper are a feature extraction process and its experimental demonstrations. Each of these is presented subsequently in its own section.
III-A Data Collection
To facilitate reliable automated feature extraction, a goal is to ensure a high-density of LiDAR reflections from roadway relevant features. Therefore, the mapping vehicle should traverse each intersection entry and exit point several times. This results in feature reflections from various orientations and distances and decreases the likelihood that a feature is not detected due to occlusion by other vehicles on the roadway.
The point cloud dataset used in this paper was collected by the Advanced Highway Maintenance & Construction Technology Research Center (AHMCT) research center at UC Davis in collaboration with Caltrans. The data were collected at California ITS testbed in Palo Alto, which contains intersections along El Camino Real. The data collection process included occasional control points (known locations) marked by highly reflective materials that could be used both for instrument calibration and confirmation of the accuracy of mapped features.
III-B Trajectory Estimation and Georectification
The data acquisition process with the MTLS provides IMU, GNSS, and LiDAR point cloud data. The IMU and GNSS data are combined in an optimal Bayesian smoothing process [21] to estimate the sensor platform position and attitude trajectory at the high (i.e., 200 Hz) sampling rate of the IMU. This trajectory is required for the point cloud georectification process. The trajectory estimation accuracy determines to a large extent the accuracy of the resulting map.
A LiDAR provides the point cloud with positions measured in the time-varying LiDAR frame [22]. Each element of the point cloud is a 4-tuple , where contains the coordinates of the -th LiDAR reflection along the LiDAR local axes, and is the intensity of the -th reflected point. Each intensity depends on the angle-of-incidence, distance, roughness, and the reflectance of the point where the laser hit [23].
The georectification process converts each point from LiDAR frame to world frame . The result is referred to as the georectified point cloud, using the equation:
[TABLE]
The offset and rotation from LiDAR to body frame are constant calibration parameters determined when the platform is constructed. The rotation from body to world frame and the position of the body frame relative to world frame are the outputs of the platform trajectory estimation process.
IV Feature Extraction
After calibration and georectification of the point cloud, roadway features (e.g., stop bars, lane edges etc.) are extracted. The problem statement and our solution approach are described in the following sections.
IV-A Problem Statement
The problem is to find a set of features within a point cloud that was acquired along a vehicle trajectory . The point cloud contains the georectified position and intensity of LiDAR returns. Typically is very large, in the billions. The set of features includes such items as lane centerline nodes, lane widths, lane direction, and stop bar locations.
For our discussion, this process will be divided into the following subproblems for the -th intersection:
Extract the intersection point cloud and trajectory . 2. 2.
Extract a road surface point cloud . 3. 3.
Convert to an set of images. 4. 4.
Extract features using image processing. 5. 5.
Output a SAE J2735 map message.
IV-B Solution Approach
The solution to each subproblem is defined below. The data acquisition and geo-rectification processes provide the point cloud and trajectory . The point cloud contains large amounts of irrelevant points - from vehicles, sidewalks, vegetation, etc. - along with the desired road feature points. In addition, it is too large to work with in its entirety. The first few steps focus on finding portions of the point cloud that are relevant to the road surface near an intersection.
**1) Intersection Point Extraction. ** The first step is to subdivide and into subsets relevant to each intersection. For each intersection, the sets and are defined as subset of and that retain only the data that is within radius are from the center of the -th intersection. The intersection center is assumed to be given. Once and are defined for all intersections then, the original data sets and can be decomposed as
[TABLE]
where and contain point cloud and trajectory data not relevant to the intersections, which will be ignored in subsequent processing.
Fig. 1(a) shows the trajectory from the California ITS testbed. The eleven intersection centers are marked with red dots and green circles of radius . Fig. 1(b) shows a magnified portion of in the vicinity of the 6-th intersection.
2) Road Surface Extraction. The inputs for this processing step are the sets and . The goal of this step is to construct a reduced point cloud that only contains those points in that are on the roadway surface; thereby removing points reflected from extraneous objects (e.g., buildings, vehicles, signs). This step contains three sub-steps: Road partitioning, road edge detection and road surface point extraction.
*2a) Partition and into smaller road sections. * Initially, the only information about the location of the road is the trajectory and the center location . Using this information, the region near the intersection can be partitioned into possibly overlapping polygons, such that each polygon contains the region of one roadway approaching the intersection. A T-shaped intersection will yield rectangles and an X-shaped intersection will yield rectangles. The portion of within each polygon is denoted . Note that
[TABLE]
where the points in are not along any of the approaches and will be discarded. Fig. 2(a) shows the trajectory points for an intersection and the polygons defining the road sections.
2b) Process to extract the road and median edges. The idea of this step is that within a small enough region the road surface is a smooth 2D manifold.
Along the direction of motion of a one meter long rectangular swath of is extracted. This point cloud swath is much wider than the road. Points in may be reflected from the road surface or items off that surface. Fig. 2(b) shows an example portion of where the view is along the -axis, which points in the direction of motion. The -axis is vertical and the -axis is horizontal and perpendicular to the direction of motion.
Within , the road surface is assumed to be two-dimensional. Moving along the -axis in five centimeter wide bins, the mode of the values is computed. On the road surface, the mode of is a continuous function of . At the road and median edges this function changes abruptly. These abrupt changes are detected by monitoring both the derivative and inflection points of the function. After extracting the road and meridian edges for a given , the rectangle is moved one meter along the -axis and the processes is repeated. This repetition produces points along the road and meridian edges as a function of .
After the above process completes for intersection section , each set of road and median edge points is processed to remove outliers and insert estimates for missing data items. Then a piecewise line fitting approach is used to fit road and meridian edge curves. After the road edge extraction, points outside the road edges are discarded to define the reduced point cloud which along with the road and median curves are passed to the surface extraction process.
In Fig. 2(b) the red dots mark the detected road and meridian edges. Note that at this point, even after discarding the points outside the road edges, the point cloud still may contain points above the road surface.
*2c) Extract the road surface point cloud for each road segment. * The objective of this step is to extract from a subset containing only points on the road surface.
The platform trajectory points are first projected down onto the road surface using the known platform calibration parameters. For each rectangular point cloud swath defined in the previous step, some of these projected trajectory points will lie within it. These points are the initial seeds and are shown as green dots in Fig. 2(b). Additional road surface points are estimated between these projected points using the mode of the distribution as a function of . Finally the road and edge points are included. A 6-th order polynomial is fit to this set of points. Point cloud elements within of this curve-fit are extracted as the road surface points. This process repeats as is slid along the trajectory. The union of the road surface points over this sliding regions defines the road surface point cloud denoted by .
An example surface with the road edges is shown as a top-down view in Fig. 2(c).
**3) Map 3D points to 2D image. ** Many image processing tools are available to extract features from images. The purpose of this step is to convert each road surface point cloud into one or two raster images - one for each ingress or egress roadway section separated by a median.
First, for roadway segments where a median was detected, the median curve is used to divide into two separate branches for . If a road segment does not have a median, then the segment is treated as one branch with . Second, for each road surface segment branch , points with low reflectivity are removed from to generate a new point cloud subset
[TABLE]
where is a user defined intensity threshold. The union of the intensity thresholded road surface segments generates an intensity thresholded point cloud for the whole intersection. A segment after intensity thresholding is shown in Fig. 3(a).
A 2D raster image is generated from each point cloud . The pixel size of the raster image in meters is a trade-off between computational complexity and feature position estimation accuracy. For the feature extraction approach described herein, each raster pixel is . Therefore, each raster pixel maps to a square cell in the XY plane. The value of the pixel for each cell depends on the elements of that map to the cell. When no elements of map to a cell, the pixel value is zero. Otherwise, the pixel value is the average value of the intensities of the elements of that map to the cell. The raster image corresponding to Fig. 3(a) is shown in Fig. 3(b).
4) Image-based Roadway Feature Extraction. This section describes: image processing to improve feature detectability, detection of stop bars, detection of lane dividers, definition of lane centerlines and lane widths. The input images are for the various values of , , and .
Noise and unwanted artifacts degrade the performance of feature recognition; therefore, morphological filters (erosion and dilation) are first used to reduce the number of artifacts present. Lines are extracted using the Hough transform. Lines with sufficient length that are oriented approximately orthogonal to the trajectory direction are extracted as potential stop bars. More than one line may fit these criteria when a pedestrian crosswalk exists, then the line second farthest from the intersection is classified as stop-bar.
Lines parallel to the direction of traffic flow are candidates for lane dividers. The algorithm uses a decision tree to process the lines returned by the Hough transform and the meridian and road edges. First, depending on the width of , the algorithm labels the branch as single or multiple lanes. Then the algorithm first checks for solid lines, as used to demarcate turning lanes. After finding solid lines, the remaining road width is computed to determine the maximum number of remaining lanes. Given this estimate of the maximum number of remaining lanes, the algorithm begins searching through the remaining lines. The process concludes either when the remaining maximum number of remaining lanes is less than one or when there are no remaining suitable lines to serve as lane dividers. In some cases, for cross-streets, the branch is too narrow to support multiple lanes and does not have lane markings. In this case, the lane edges are defined to be the road and or median edges. In some other cases, such as cross-streets, the branch has two lanes with no detectable markings, yet has width sufficient for two lanes. In this case, the algorithm defines the branch to have two lanes.
Once the lane edges are determined, the lane centerline is computed by putting nodes midway between the two lane edges. Nodes are separated by a distance of approximately (200 pixels apart). The first node of the centerline is defined to be on the stop-bar. Fig. 4c shows the output of the feature extraction algorithm. The input image is the background. The input road edges are shown as green solid lines. The extracted stop bar is shown as a solid red line and extracted centerline nodes as magenta dots.
**5) SAE J2735 Intersection Feature Map Output. ** The SAE J2735 map message uses the lane centerline nodes, lane widths and stop bar locations. The previous step estimated these items in image coordinates. After image coordinates are converted to UTM coordinates using the metadata saved during raster generation, the J2735 map message is generated.
V Results
The MTLS used for data collection was a Trimble MX8, which includes two Riegl VQ450 laser scanners and an Applanix POS 520 platform positioning system. The MTLS platform was driven along each ingress and egress section of the main thoroughfare (El Camino Real) of the Palo Alto testbed multiple times and along each cross street at least once. The point cloud contained 2,560 million points, approximately 872 million are within the radius of at least one of the intersection centers. The remaining 1688 million points were discarded.
The process described in the previous sections has been applied to extract J2735 map message for eleven intersections. The J2735 map message includes coordinates for the intersection center, the number of lanes and a data structure for each lane including a lane identifier, a sequence of nodes defining the lane centerline, the lane width, a point indicating the start of the centerline at the stop bar and lane attributes such as whether the lane is for ingress or egress.
Fig. 5(a) shows the top-down view of the nodes in an extracted J2735 message superimposed on the intensity thresholded point cloud from which it was extracted. According to the specification of the J2735, the first node of each lane starts at the position of the stop bar. This figure demonstrates the accuracy of the extracted J2735 map relative to , which is accurate to the centimeter level. Fig. 5(b) shows the same nodes superimposed on a Google Earth image. These figures show that the extracted J2735 message describes the complete intersection. The J2735 overlaid on the Google Earth image gives a visually interpretable result.111The Google Earth imagery is accurate to 2-5 meters [24, 25, 26]. In some instances the entire J2735 overlay is offset relative to the Google Earth image while aligning with the point cloud . Such cases demonstrated that the alternative approach of extracting intersection maps from Google Earth images could yield maps offset by a few meters. ,The Google Earth overlay is useful for detecting relative errors between portions of the J2735, such as the one stop bar at the wrong location.
Standard T-shaped or X-shaped intersections process completely with correct outputs, when the road markings are not faded. In cases where the road markings are severely faded, the road has no markings, or the input image is very noisy the algorithm generates a warning and marks the segment for human processing. Another issue arises when only one stop bar is detected, in which case the algorithm proceeds with the detected stop bar and generates a warning for further human inspection. In case when no stop bar is detected the algorithm generates a warning so that the user can add a stop bar manually.
VI CONCLUSION
This paper has presented an automated feature extraction approach with figures demonstrating its application. The full set of detailed results for eleven intersections can be found at [27]. On the continuum between manual and fully automated, the current algorithm is somewhere in the middle, human-assisted. When the algorithm detects an anomalous situation, it stops to alert the operator, this is considered good practice because the generated maps have implications for human safety.
The analysis of the algorithm performance in [27] shows that it works very well for standard intersections and when roadway markings are not too faded. Additional work is required to achieve functionality for non-standard intersections. Also, the algorithm includes parameters such as global intensity thresholds that currently require human adjustment. Since the quality of the roadway markings and road surface vary locally, it would be beneficial to develop an automated method that adapts the intensity threshold locally, without human interaction. Finally, the conversion of the point cloud to an image (rasterization) is an information losing step: position accuracy is lost due to the finite pixel size; intensity information is lost as many point cloud points are combined into one pixel value. This information loss would be avoided if methods are developed that work with the point cloud directly.
ACKNOWLEDGMENT
The authors thank the personnel at the Advanced Highway Maintenance & Construction Technology Research Center (AHMCT) for providing the 3D point cloud.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] R. L. Gordon, Traffic signal retiming practices in the United States . Transp. Research Board, 2010, vol. 409.
- 2[2] J. C. Mc Call and M. M. Trivedi, “Video-based lane estimation and tracking for driver assistance: survey, system, and evaluation,” IEEE T. on Intelli. Transp. Syst. , vol. 7, no. 1, pp. 20–37, 2006.
- 3[3] N. Haala, M. Peter, A. Cefalu, and J. Kremer, “Mobile LIDAR mapping for urban data capture,” 14th Int. Conf. on Virtual Syst. and Multimedia , pp. 95–100, 2008.
- 4[4] C. V. Tao and J. Li, Advances in mobile mapping technology . CRC Press, 2007, vol. 4.
- 5[5] V. Ussyshkin, “Mobile laser scanning technology for surveying application: from data collection to end-products,” FIG Working Week , 2009.
- 6[6] C. Darnel, “Using LIDAR to solve industry challenges,” Geo: Geoconnexion Int. Mag. , vol. 11, no. 1, pp. 18–19, 2012.
- 7[7] Dedicated short range communications (DSRC) message set dictionary , SAE Int., Tech. Rep. J 2735_200911.
- 8[8] H. Guan, J. Li, Y. Yu, M. Chapman, and C. Wang, “Automated road information extraction from mobile laser scanning data,” IEEE T. on Intelli. Transp. Syst. , vol. 16, no. 1, pp. 194–205, 2015.
