목차
1. Overpass turbo
OSM 지도에 쿼리를 적용하여 원하는 level의 지도를 생성할 수 있다.
OSM으로 그대로 가져와 SUMO에서 작업하려니, 지도가 너무 자세히 생성되어 차가 다닐 수 없는 edges까지 포함하는 문제가 발생하였다. 따라서 특정 조건을 만족하는 지도를 생성하기 위한 방법을 찾아야했다.
추출할 highway level 선정
쿼리 작성시에는 Wizard 기능을 활용하였다.
원하는 수준의 highway를 적으니 자동으로 쿼리가 작성되었다.
다음 링크 참고하여 highway type을 확인: https://wiki.openstreetmap.org/wiki/Key:highway
[wizard 입력]
highway = motorway or highway=trunk or highway =primary or highway =secondary or highway = tertiary or highway = unclassified or highway = residential or highway =motorway_link or highway = trunk_link or highway =primary_lilnk or highway =secondary_link or highway =tertiary_link
highway == service, living_street, pedestrian, track 등은 차량 통행에 적절치 않아 배제하였다.
Export 방법
이후, 쿼리 내의 out format을 [out:json] -> [out:osm]으로 바꿔준 뒤 export하니까,
sumo.tools.netconvet 기능을 활용할 수 있었다.
Query 적용 결과
[Before Query] [After Query]
2. sumo.tools.netconvert
다음으론, overpass-turbo에서 export된 osm 지도(.osm)가 sumo에서 사용될 수 있도록 netconvert를 사용하여 .net파일로 전환하였다. netconvert --osm-files export.osm -o export.net.xml
1
2
3
4
|
(base) PS C:\Program Files (x86)\Eclipse\Sumo\tools> netconvert --osm-files export.osm -o export.net.xml
Warning: Intersecting left turns at junction '2476266144' from lane '467066854#0_0' and lane '-467066854#1_0' (increase junction radius to avoid this).
Warning: Speed of straight connection '937254712#0_0->937254712#1_0' reduced by 5.53 due to turning radius of 50.63 (length=14.27, angle=31.41).
Success.
|
cs |
이를 통해, 거제 일부 지역의 161개 nodes, 395edges로 구성된 지도가 완성되었다 :)
'Traffic Simulation > SUMO' 카테고리의 다른 글
SUMO permission denied (0) | 2023.02.20 |
---|---|
[Routing] SUMO + TraCI + DQN Routing (1) | 2022.02.15 |
[Routing] SUMO + TraCI + Qlearning Routing (0) | 2022.02.14 |
[Routing] SUMO + TraCI + Random Routing (0) | 2022.02.08 |
[Tutorial] TraCI4Traffic Lights (0) | 2022.02.05 |