Phase 1 - Autonomy Perception

ADAS perception stack in Python: object detection, lane tracking and driver monitoring

Status
Research
Version
No tagged release
Platform
Desktop app
License
Not specified
01 · Problem

Provides a desktop perception prototype for unstructured traffic environments such as Indian roads, where many features can be switched on or off to fit the available hardware.

02 · Architecture

How it is put together.

Phase 1 - Autonomy Perception is a Python ADAS perception stack with a wxPython GUI that runs on a webcam or video file. It combines YOLOv8 object detection, Kalman-filter multi-object tracking, lane detection and forward collision warning with add-on modules such as traffic sign and light recognition, pothole detection, driver attention monitoring and MediaPipe pose estimation. Several launch scripts trade feature count against speed, and one offers a pre-launch dialog to pick features and save profiles. The README states it is aimed at unstructured traffic on Indian roads.

Main app with feature s…adas_complete_ultra.pyStandard and fast versi…adas-perception.pyDetection featuresultra_features.pyAI featuresultra_ai_features.pyVisualizationultra_visualization.pyAnalytics modulesadvanced_modules.pyMain app with feature s…adas_complete_ultra.pyStandard and fast versi…adas-perception.pyDetection featuresultra_features.pyAI featuresultra_ai_features.pyVisualizationultra_visualization.pyAnalytics modulesadvanced_modules.py
FIG. 01Modules and data flows, from the repository layout and documentation.
  1. 1

    Main app with feature selection

    Launch dialog and main application

    adas_complete_ultra.py
  2. 2

    Standard and fast versions

    Standard version and speed-optimized version

    adas-perception.py
  3. 3

    Detection features

    Advanced detection features

    ultra_features.py
  4. 4

    AI features

    Scene, weather, attention and related AI features

    ultra_ai_features.py
  5. 5

    Visualization

    Graphs, dashboards and overlays

    ultra_visualization.py
  6. 6

    Analytics modules

    Analytics modules

    advanced_modules.py
03 · Capabilities

Specification.

Detection and tracking
YOLOv8 detection (people, vehicles, bikes); Kalman-filter multi-object tracking with IDs
Driving safety
Lane detection, forward collision warning, safe-distance (tailgating) monitoring
Road analysis
Traffic sign and light state, road debris, potholes, parking spaces
Driver and scene
Driver attention monitoring, scene and weather classification, night enhancement
Analytics
Optical flow, motion prediction, driving behaviour scoring, 33-point pose, object density heatmap
Cameras
1 to 4 cameras; 640x480, 1280x720 or 1920x1080
Feature selection
Pre-launch dialog with presets (All, Balanced, Speed, None) and saved profiles
Runs on
wxPython desktop GUI reading a webcam or video file
Stack
  • Python 3.8+
  • wxPython
  • OpenCV
  • Ultralytics YOLOv8
  • MediaPipe
  • NumPy
  • filterpy
  • PyTorch
  • psutil