Astra Perception
ADAS for unstructured road environments, split into a vision engine and a control ECU
- Status
- Research
- Version
- 1.0
- Platform
- Desktop app
- License
- Not specified
Lane-marking-based ADAS struggles on roads with faded markings, potholes and varied paving; Astra models the physical drivable surface instead of relying only on lines.
How it is put together.
Astra Perception is a PyQt6 ADAS application for unstructured roads that combines YOLOv8 Small detection with drivable-surface modelling and threat analysis. It is split into a Vision Engine that runs inference and a standalone Control ECU dashboard that receives perception packets over UDP and runs simulated Level 1 control with PID controllers. Native C++ extensions built with pybind11 provide controller and vision routines.
- 1
Application entry
PyQt6 app with launch modes
main.py - 2
Vision Engine
YOLOv8 inference and perception
inference.py - 3
Control ECU
Vehicle logic, trajectory planning and simulated actuators
vehicle_control.py - 4
Controllers
PID controllers (Python and C++ astra_core extension)
controllers.py - 5
Native extensions
pybind11 modules astra_core (controllers) and astra_vision (vision core)
src/
Specification.
- Object detection
- Ultralytics YOLOv8 Small on CUDA FP16, with CPU fallback
- Road surface
- Multi-scale drivable-surface modelling; pothole and speed-bump detection via adaptive Gaussian filtering against the drivable mask
- Tracking
- Kalman-filtered centroid tracking; objects persist up to 3 frames when detection drops out
- Threat logic
- Cut-in detection and single most-critical-threat selection
- Control simulation
- Level 1 control simulation with PID steering and acceleration/braking
- Architecture
- Vision Engine and Control ECU as separate processes linked by UDP
- Launch modes
- Vision Engine, Control ECU, or Integrated Stack
- Runs on
- PyQt6 desktop application; README lists an NVIDIA CUDA 12 GPU as a prerequisite with CPU fallback
More systems.
Real-time, on-device driver assistance for any Android phone.
Perception and ADAS · LiveDashLabTrain object detectors and visual models on dashcam footage without labelling any of it
Next systemZyra ADASReal-time object detection and lane tracking on Android with on-device NCNN inference