OpenTwinMap – Open-Source 3D Urban Map Generator for the Masses

Posted by:

|

On:

|

https://github.com/jmscslgroup/OpenTwinMap

In my work on simulating I24 for my lab, an immediate interest of mine is fully validating our CAN(Controller Area Network)/ROS-based Adaptive Cruise Control solutions in simulation before real world deployments and tests. Currently we test using telemetric files from real-world data collection, and testing our Libpanda/ROS solutions in a Dockerized form against those files in an open-loop simulation. This allows for various sanity checks – observing our ACC solution’s direct response to real-world scenarios and the like. However, this leaves us with a few gaps:

  1. No closed-loop simulation of other vehicles – how will they respond to us? For Bird’s Eye View 2D simulation, this can be solved for traffic optimization by using IDM and plotting in matplotlib, but often this means specific code designed to simulate each scenario.
  2. No modeling of vehicular physics – different driving surfaces and vehicle types have different kinematic restrictions that we should account for!
  3. No modeling of vehicular sensor suites – sensor suites that we use as input data for our ACC solutions.
  4. No modeling of the potential impact of meteorological conditions on traffic behavior – clouds, rain, fog, snow, time of day, all can be crucial for our work.

From my point of view, there was a simple solution – we will create a map of I24 and deploy it in CARLA, the leading Open-Source Autonomous Vehicle simulator. This produces several benefits:

  1. Direct CARLA to ROS bridge. This would allow us to directly connect our dockerized ACC solutions to the vehicles!
  2. Closed-loop simulation of other vehicles and agents that can be readily extended.
  3. Modeling of vehicular kinematics.
  4. Rich sensor suites – RGB cameras, semantic/instance segmentation cameras, LiDAR sensors – all could be simulated right away!
  5. Meteorological conditions such as rain, fog, time of day are all ready to go.

Naively, I assumed that a combination of open-source tools would allow me to conjure a simple MVP of the I24 map in 3D in a couple months time. Long story short, that is not the case. Even the best digital twin creators out there – such as CARLA’s own – don’t create bridges and overpasses, which are integral to I24. They’re fully meant for simple settings. Up until a couple months ago, they didn’t even try modeling elevation. CARLA’s map creator is also written almost exclusively in C++, which is really tough to do prototyping in. I didn’t have the time to learn how to tweak that to make it work for me. I created for myself a real lemon!

In response, here is my lemonade: I’m creating an open-source 3D urban map generator that ingests OSM (OpenStreetMap) data, LiDAR/elevation scans to create terrain and roads that make more sense than what’s out there. Currently it just produces basic road meshes and terrain – but I have big plans for her! I believe the entire open research community in Autonomous Vehicles/Traffic Engineering deserves basic 3D maps of the cities they research and serve.

She’s under GPLv3, by the way.