[AD Fundamentals] An Overview of Baidu Apollo

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.


What is Self-Driving?

Why Self-Driving Cars?

Human Self-Driving Car
High Traffic Accident Rate More Reliable Driving
Learn to Drive From Scratch Learnable Driving Sys
Parking Trouble No Parking Trouble

Levels of AD

  • Level 1 (Driver Assistance)
    • Driver fully engaged
  • Level 2 (Partial Automation)
    • Auto cruise control
    • Auto lane keeping
  • Level 3 (Conditional Automation)
    • Human take over whenever necessary
  • Level 4 (No Human Interference)
    • Without sterring wheel, throttle or brake
    • Restricted in geofence (certain areas)
  • Level 5 (Full Automation)
    • Better than human in all scenarios

How Self-Driving Cars Work?

Key Components

  • Computer Vision
    • How the car sees the world
    • e.g. bounding boxes, contour, etc.
  • Sensor Fusion
    • How the car understands the around situtaions
    • e.g. distance, relative velocity, etc.
  • Localization
    • How the car learns where it is
  • Path Planning
    • How the car figures out where to go
  • Control
    • How the car follows the path or reacts to various situations

Apollo Structure

Apollo’s system centers around HD Maps and Localization. The other components of the system revolve around Perception, Prediction, Planning and Control.


Hardware

  • Controller Area Network (CAN)
    • Vehicle’s internal communication network
    • Signal transmission for acceleration, braking and steering, etc.
  • Global Positioning System (GPS)
    • Location
  • Inertial Measurement Unit (IMU)
    • Speed, acceleration and other factors
  • LiDAR is an array of pulse lasers,
    • The reflection of this laser beams builds the point cloud for enviroment understanding.
  • Camera
    • Visual data capturing
  • Radar
    • Obstacle detection
    • Low resolution but economical and robust to different wheather/lighting conditions
    • Speed measuring of other vehicles

Open Software Stack

  • Real-time Operating Sys (ROTS)
    • It can produce timely calculations, analysis and execute decisions in a short time.
  • Runtime Framework
    • A customized version of Robot Operating System (ROS)
    • Modules are independent.
    • Shared memory for decentralization and data comparability (Protobuf)
  • Application modules
    • MAP engine
    • Localization, Perception, Planning, Control,
    • End-to-end driving
    • Human-machine interface (HMI)

Cloud Service

  • Data Storage
  • Multiple Tools
    • HD map
    • Simulation
    • Data platform
    • Security
    • Over-the-air software updates (OTA)
    • Intelligent voice system (DuerOS)

MIT License
Last updated on Oct 30, 2022 17:48 EDT
Built with Hugo
Theme Stack designed by Jimmy