- Buffer-Growing algorithm modified from Zhang and Meng
- input:
- collapsed lanelet2 map after preprocessing step
- road network (linestrings) from OpenStreetMap
- image below shows the process of the matching algorithm
- concatenation of single segments of collapsed centerlines from preprocessing step
- polyline extended as long as:
- angle between current and potential new segment < pline_angle
- degree of node < 3 (no intersection)
- e.g. in image below, the polyline A-B is created
- creation of buffers around segments of reference polyline
- buffer size determined by vertical and longitudinal size (
$buf_v$ and$buf_p$ )
- find match candidates out of OpenStreetMap road network that entirely fall inside buffers in image above
- concatenate single segments of OpenStreetMap based on topological properties e.g. in image above: F-G, C-D, C-E, D-E are candidates
- set of candidates contains wrong suggestions
- remove wrong candidates based on geometric similarity to reference polyline
- implemented thresholds:
-
$\beta$ : angle between a line connecting end points of polyline and x-axis -
$l$ : length of polyline -
$d$ : chord of polyline defined as the distance between its end points -
$S$ : area polygon enclosed by two polygons - thresholds
$lim_{\beta}$ ,$lim_{l}$ ,$lim_{d}$ , and$lim_{\bar{S}}$ to be set in config file
- case: no candidate passed exclusion step 4 due to too small buffers in step 2
- enlargement of buffer parameters to find additional candidates and jump to step 2 again
- process may be repeated 3 times
- case: multiple candidates passed exclusion step 4
- selection of best candidate based on weighted sum of geometric similarity properties:
- parameters
$w_{\beta}$ ,$w_{l}$ ,$w_{d}$ , and$w_{\bar{S}}$ to be set in config file