DRIVING SIMULATIONS FOR AUTONOMOUS …...•Autonomous cars use many sensor types that generate TBs...
Transcript of DRIVING SIMULATIONS FOR AUTONOMOUS …...•Autonomous cars use many sensor types that generate TBs...
DRIVING SIMULATIONS FOR
AUTONOMOUS VEHICLES WITH
3D TILES AND CESIUM
Tom Fili
Cesium
@CesiumFili
What is Cesium?
• CesiumJS• Open-source JavaScript library for rendering 3D globes and 2D maps
• Apache 2.0 License
• Runs in a browser and on mobile
• Cesium ion• Online service for processing and efficiently streaming data
• Accepts point clouds, terrain, imagery, photogrammetry, BIM/CAD models, CityGML
• Free for non-commercial use/paid enterprise accounts
• https://cesium.com/ion to sign up
What is Cesium?
• Specification for streaming massive heterogeneous 3D geospatial datasets.
• Open Specification and Open Source implementation in Cesium.
• Allows custom tiling schemes.
• Declarative Styling.
• Adopted by OGC as a Community Standard in February 2019.
https://github.com/AnalyticalGraphicsInc/3d-tiles
Demo
• Autonomous cars use many sensor types that generate TBs of heterogeneous geospatial data• Telemetry
• GPS
• Gyroscope
• Accelerometer
• Point clouds• LIDAR
• Photogrammetry• Camera
Data…a whole lot of it
• What gets collected• Position
• Orientation
• Velocity
• Acceleration
• How can we stream it• CZML
• JSON schema for time-varying values
• Distribute simulation across multiple CZML files…like streaming video
• Can be real-time or playback
Telemetry data
Telemetry data
• What is collected• Position• Color• Intensity
• How can we stream it• Streamed as a single 3D Tiles point cloud tile• No level of detail• Can handle 500k points before we need to LOD tiling
• How can we make it fast• Draco compression
• 4x smaller than uncompressed 3D Tiles
• 2x faster in CesiumJS
Dynamic Point Clouds
Next Generation
• GPU-accelerated sensor visibility
• Multiple geometry type including cones, rectangles, and domes
• Custom sensor geometries
View Sheds
• Can be billion or even trillions of points
• How can we stream it• Points
• Meshes
• How can we make it fast• Intermediate LODs
• Progressively load in more points
• We provide tilers as part of Cesium ion
• Draco compression
Tiled Point clouds
• How can we make it fast (cont.)• Adaptive spatial subdivision
Tiled Point Clouds
• Hardware• 4 core i7 with 16GB of RAM
• 185.3 million points in 109 seconds
• 6.4 billion points in 24 minutes
Point Cloud Tiling Performance
• Can be tens of thousand of photos
• Output models can very large
• How can we make it fast• Intermediate LODs
• Draco compression• Slightly better than point clouds (~5x compression)
• Adaptive spatial subdivision
• Skipping levels of detail• Children replace the parents, so we can skip unneeded higher level tiles
Photogrammetry
Photogrammetry
• Hardware• 4 cores with 16 GB of RAM
• 0.3 square km and 1.4 million triangles
• 4.5 minutes
• Hardware• 16 cores with 128 GB of RAM
• 12cm with heavy textures
• 5 minutes per square km.
Photogrammetry Performance
• The intersection of the geometry, e.g., bounding boxes, classifies the environment
• Geometry tilesets can be generated in a variety of ways (eg. open datasets, machine learningalgorithms, etc.)
Classification
Classification
• Dynamic data• CZML
• Time Dynamic point clouds
• Large data collections• 3D Tiles
• Cesium ion
Summary