Main Content

Overview of Lane Following System

An automated lane-following system, also known as an automated lane keeping system (ALKS), enables autonomous vehicles to travel within a marked lane and avoid collision with a lead vehicle traveling in the same lane. Automated Driving Toolbox™ provides various application examples to design, test, and validate a lane-following system and its components. This topic introduces the components of a lane-following system, presents an overview of various application examples, and helps you get started building a lane-following system.


A lane-following system receives input from camera and radar sensors and outputs steering angle and control commands to a vehicle dynamics system, which models the motion of the ego vehicle. A lane-following system consists of these components:

  • Lane Detector — Detects lane boundaries from camera frames to enable the ego vehicle to travel within a marked lane.

  • Vehicle Detector — Detects vehicles in camera frames to enable the ego vehicle to avoid collision with surrounding vehicles.

  • Sensor Fusion and Tracking — Improves the robustness of perception by fusing information from camera and radar sensors. This component also tracks the positions of detected vehicles across multiple frames so the ego vehicle can predict the trajectories of other vehicles and make intelligent decisions.

  • Decision Logic and Control — Makes decisions about the behavior and trajectory of the ego vehicle based on its perceived environment. Specifically, this component estimates the lane center using detected lane boundaries and detects the lead vehicle in the ego lane. This component also computes the required acceleration and steering angle to enable the ego vehicle to execute a planned motion.

Block diagram of lane-following system

Component-Based Development

Automated Driving Toolbox provides several examples for developing various components of a lane-following system. Using these examples, you can perform these tasks for components of a highway lane-following system:

Design, test, and deploy workflow for components of highway lane following system

  • Design — Design examples show you how to design and simulate a particular component of a lane-following system.

  • Generate Code — Code generation examples show you how to generate code of a component model, and verify the generated code by using software-in-the-loop (SIL) simulation.

  • Automate Testing — Automate testing examples show you how to automate the testing of a component model against multiple test scenarios, configured using system requirements.

  • Deploy — Deployment examples show you how to deploy a component model to a target machine and perform automated testing of the deployed application.

This table summarizes the component-level examples for highway lane-following system.

System-Level Design

Automated Driving Toolbox provides these examples that integrate different components to build a lane-following system. You can design and automate testing of a lane-following system. You can also cosimulate the lane-following system with RoadRunner Scenario.

TaskSensor InputSimulation EnvironmentExampleRemarks
DesignCamera and radarUnreal EngineHighway Lane Following
  • Base system-level example

  • Non-ego actors follow predefined trajectories

Automate TestingCamera and radarUnreal EngineAutomate Testing for Highway Lane Following
  • Automate testing of the base system-level example

DesignCamera and radarUnreal EngineHighway Lane Following with Intelligent Vehicles
  • Non-ego actors adapt their trajectories based on the behavior of neighboring vehicles

DesignCamera and radarRoadRunner Scenario and Unreal EngineHighway Lane Following with RoadRunner Scenario
  • Simulate highway lane-following application with RoadRunner Scenario

DesignCamera and radar detectionsRoadRunner ScenarioLane-Keeping System for Self-Driving Trucks
  • Design a lane-keeping system for self-driving trucks in Simulink® and simulate it with RoadRunner Scenario.

Related Topics