This repository provides a modular, deep learning-based perception system for autonomous vehicles. It includes solutions for lane detection, road segmentation, person and car detection, traffic sign recognition, and traffic light detection. Each module is self-contained and can be used independently or as part of the integrated pipeline.
- Project Overview
- Folder Structure
- Installation
- Usage
- Modules
- Model and Video Files
- Dataset
- Results and Metrics
- Project Report
- Contributing
- License
This project aims to provide a comprehensive perception stack for autonomous driving, leveraging state-of-the-art deep learning models for:
- Lane Detection
- Road Segmentation
- Person and Car Detection
- Traffic Sign Recognition
- Traffic Light Detection
The system is designed for both real-time and offline (video-based) analysis. Each module can be trained, evaluated, and used independently, or combined using the main execution script.
Autonom-Car-Dev/
│
├── execute models/
│ ├── main.py
│ ├── lane_segmentation.pt
│ ├── person_and_car_detection.pt
│ ├── road_segmentation.pt
│ ├── traffic_sign.pt
│ ├── traffic_light.pt
│ ├── output_processed.mp4
│ └── utils/
│
├── Lane Det/
│ ├── Lane Segmentation.ipynb
│ ├── train_batches.png
│ ├── F1_Confidence_Curve.png
│ ├── confusion_matrix_normalized.png
│ └── result.png
│
├── Person and Car Detection/
│ ├── detect.py
│ └── coco_classes.txt
│
├── Road Segmentation/
│ ├── Road Segmentation.ipynb
│ ├── train_batches.png
│ ├── PR_Curve.png
│ ├── conf_matrix_norm.png
│ └── results.png
│
├── Traffic Sign/
│ ├── Traffic Sign Detection.ipynb
│ ├── train_batches.png
│ ├── PR_and_F1_Curve.png
│ ├── conf_matrix_norm.png
│ └── results.png
│
├── Traffic Light/
│ ├── Traffic Light Detection.ipynb
│ ├── train_batches.png
│ ├── PR_and_F1_Curve.png
│ ├── conf_matrix_norm.png
│ └── results.png
│
├── Representation.pdf
└── README.md
-
Python
- Requires Python 3.7 or higher.
-
Dependencies
- Install required libraries:
pip install -r requirements.txt
- If
requirements.txtis not available, main dependencies include:- torch
- torchvision
- opencv-python
- numpy
- matplotlib
- (and others as used in the notebooks)
- Install required libraries:
Model files (.pt) are not included in this repository due to their size. Download them from below and place them in the execute models/ directory:
- lane_segmentation.pt
- person_and_car_detection.pt
- road_segmentation.pt
- traffic_sign.pt
- traffic_light.pt
The processed output video (output_processed.mp4) is also not included due to GitHub's file size limits. Download it from [VIDEO_LINK] and place it in the execute models/ directory.
To run the integrated perception pipeline:
python "execute models/main.py"Each module has its own Jupyter notebook for training, evaluation, and visualization:
- Lane Detection:
Lane Det/Lane Segmentation.ipynb - Road Segmentation:
Road Segmentation/Road Segmentation.ipynb - Traffic Sign Recognition:
Traffic Sign/Traffic Sign Detection.ipynb - Traffic Light Detection:
Traffic Light/Traffic Light Detection.ipynb - Person and Car Detection:
Person and Car Detection/detect.py
- Deep learning-based lane segmentation.
- Training and evaluation in the notebook.
Results:
Normalized confusion matrix for lane segmentation model.
- Semantic segmentation of drivable road area.
- Training, evaluation, and metrics in the notebook.
Results:
Normalized confusion matrix for road segmentation model.
Precision-Recall curve for road segmentation.
- Object detection using pre-trained models (e.g., YOLO).
detect.pyfor inference;coco_classes.txtfor class labels.
- Detection and classification of traffic signs.
- Notebook includes training, evaluation, and visualization.
Results:
output of traffic sign detection.
Normalized confusion matrix for traffic sign detection.
Precision-Recall and F1 Score curves for traffic sign detection.
- Detection and state classification (red/yellow/green) of traffic lights.
- Notebook includes all steps and result images.
Results:
output of traffic light detection.
Normalized confusion matrix for traffic light detection.
Precision-Recall and F1 Score curves for traffic light detection.
- Model Files (.pt): Not included in the repository. Download from [https://drive.google.com/drive/folders/1WnN1khMFUZvGs2huXPGwB-RgITNsT6x8?usp=sharing].
- Output Video: Not included due to size. Download from [https://drive.google.com/file/d/1kjLw8CYi9w-BCvs8nGK25XrdhimGQwLF/view?usp=sharing].
- Note: The dataset used in this project could not be uploaded to GitHub due to its large size. However, it was previously shared via email.
Each module directory contains:
- Result Images: Visualizations of predictions and outputs.
- Metric Plots: Curves and matrices (e.g., F1, PR, confusion matrix) for model evaluation.
- Representation.pdf: Contains a detailed project report, methodology, and results summary. Recommended for an in-depth understanding of the project.
- Fork the repository and create a new branch.
- Make your changes.
- Submit a pull request.
MIT License
- Ömer Panay
- Zeynep Hanife Çelikoğlu
- Ramazan Ediz

