Authored by Tony Feng
Created on Oct 29th, 2022
Last Modified on Oct 30th, 2022
Intro
This sereis of posts contains notes from the course Self-Driving Fundamentals: Featuring Apollo published by Udacity & Baidu Apollo. This course aims to deliver key parts of self-driving cars, including HD Map, localization, perception, prediction, planning and control. I posted these “notes” (what I’ve learnt) for study and review only.
HD Maps
- Accurate 3D representation of the road network
- e.g. layout of intersections, locations of signposts
- Semantic info
- e.g. traffic light, speed limit, lane rules
- 3D model of the city
- e.g. roads, buildings, tunnels
Localization, Percpeption and Planning
Localization with HD Maps
- Comparisons between observed data and data in the HD map
- Preprocessing, coordinate transformation, data fusion
Perception with HD Maps
- HD maps help the car’s next decions.
- Sensors have limits in different situations
- Camera is affected by bad whether and dark environment.
- Other sensors may not detect what is behind the obstacle.
- HD maps can narrow the detection scope.
- Region of Interest (ROI) helps improve speed and accuracy.
- Region of Interest (ROI) helps to save the computation resources.
Planning with HD Maps
- HD Maps help to find suitable driving space.
- HD Maps help to identify different possible routing options and find best maneuver.
- HD Maps help to forecast future locations for other vehicles on the road.
Apollo HD Maps
Road Definitions
Standard vs. Apollo OpenDRIVE
Main Difference | Standard OpenDRIVE | Apollo OpenDRIVE |
---|---|---|
Application Scenario | Simulation scenarios | Real-world scenes |
Elemental Form Expression | Reference line | Absolute coordinate sequences |
Elemental Richness | Common elements | More expressions and attributes |
Adaptive Driverless Algorithm | N/A | Integrate Baidu’s driverless experience |
HD Maps Construction
- Data Sourcing
- Survey vehicle with GPS, IMU, Antenna, LiDAR, Camera
- Crowdsourcing with mobile devices, in-car devices, connected cars, etc.
- Data Processing
- Form an inital map template by data sorting, classfiying, cleansing
- Without semantic info and annotations
- Object Detection
- Detect and classify static objects
- Manual Verification
- Ensure the automated map creation correctly
- Map Products
- Top-down view localication maps
- 3D point cloud maps