An advanced driving assistance system based on NVIDIA Jetson Nano embedded computer with comprehensive capabilities for lane detection, traffic sign recognition, and object detection on roadways.
- Lane Detection: Real-time lane boundary detection and tracking
- Traffic Sign Recognition: Detection and classification of traffic signs
- Object Detection: Vehicle and pedestrian detection
- Lane Departure Warning: Vehicle position monitoring relative to lane markings
- Performance Optimized: TensorRT acceleration for real-time processing
- CMake >= 3.10
- OpenCV with CUDA >= 4.0.1
- C++ 17 Compiler
- CUDA 10.1
- TensorRT 5
- NVIDIA Jetson Nano (recommended)
Download the pre-trained neural network models from Google Drive and place them in the models/
folder.
Download test images and videos from Google Drive and place them in the root folder of this project.
Update the GPU_ARCHS
parameter in CMakeLists.txt
to match your GPU architecture:
- Jetson Nano:
GPU_ARCHS = 53
- Other GPUs: Check your GPU's compute capability at NVIDIA GPU Compute Capabilities
For detailed information on GPU architectures:
- How to get NVIDIA graphics card GPU_ARCHS for Linux
- Matching CUDA arch and CUDA gencode for various NVIDIA architectures
cd <project_directory>
mkdir build
cd build
cmake ../
make
./ADAS
If you encounter issues with the standard installation procedures, refer to these helpful resources:
Installing CUDA 10.1 on Ubuntu 20.04
How to install OpenCV 4.2.0 with CUDA 10.0 in Ubuntu distro 18.04
ADAS/
├── main.cpp # Main application entry point
├── CMakeLists.txt # Build configuration
├── README.md # This file
├── LICENSE # Apache 2.0 license
├── configs/ # Configuration files
├── common/ # Common utilities and models
├── lane_detection/ # Lane detection implementation
├── lane_detection_NN/ # Neural network training scripts
├── models/ # Pre-trained model files
└── input_folder/ # Test images and videos
This project is licensed under the Apache License 2.0. See the LICENSE file for details.