Skip to content
/ Qcar Public

C++-based implementation of a Q-learning agent for autonomous racing in the TORCS simulator. It features real-time decision-making, reward shaping, and performance tracking for reinforcement learning in simulated driving environments.

Notifications You must be signed in to change notification settings

ajsanna/Qcar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚗 Qcar - Autonomous Vehicle Control System

Python License

Qcar is a comprehensive autonomous vehicle control system that integrates various components including LiDAR processing, computer vision, and control systems for autonomous navigation.

📋 Table of Contents

🎯 Project Overview

This project implements an autonomous vehicle control system with the following key components:

  • 🔍 LiDAR data processing and visualization
  • 👁️ Computer vision and deep learning models for object detection
  • 🛣️ Autonomous lane following and navigation
  • 🎮 Hardware integration with Logitech steering wheels and keyboards
  • 🔄 Real-time sensor fusion and processing

📁 Directory Structure

Qcar/
├── Demos/
│   ├── lidarThread.py
│   ├── testingGPU.py
│   ├── TestFusion.py
│   ├── LidarAndModel.py
│   ├── AutonomousLaneLoop.py
│   └── Models/
├── LogitechWheelPrograms/
├── KeyboardPrograms/
└── LidarStuff/

Demos/

  • lidarThread.py: LiDAR data processing and visualization
  • testingGPU.py: GPU acceleration testing
  • TestFusion.py: Sensor fusion testing
  • LidarAndModel.py: Integration of LiDAR with deep learning models
  • AutonomousLaneLoop.py: Autonomous lane following implementation
  • Models/: Contains trained deep learning models

Other Directories

  • LogitechWheelPrograms/: Programs for Logitech steering wheel integration
  • KeyboardPrograms/: Keyboard control programs
  • LidarStuff/: LiDAR-related processing and utilities

✨ Key Features

  • ⚡ Real-time LiDAR data processing and visualization
  • 🚀 GPU-accelerated computer vision processing
  • 🤖 Autonomous lane following capabilities
  • 🎮 Integration with Logitech steering wheels for manual control
  • 🔄 Sensor fusion for robust perception
  • 🧠 Deep learning model integration for object detection

📦 Requirements

  • Python 3.x
  • PyTorch
  • OpenCV
  • NumPy
  • Matplotlib
  • Logitech SDK (for wheel integration)
  • LiDAR drivers and SDK

🛠️ Installation

  1. Clone the repository:
git clone https://github.com/yourusername/Qcar.git
cd Qcar
  1. Install required dependencies:
pip install -r requirements.txt
  1. Install Logitech SDK (if using wheel control)
  2. Install LiDAR drivers and SDK

🚀 Usage

Running Demos

  1. LiDAR Visualization:
python Demos/lidarThread.py
  1. Autonomous Lane Following:
python Demos/AutonomousLaneLoop.py
  1. Testing GPU Acceleration:
python Demos/testingGPU.py

Control Options

  • 🎮 Use Logitech steering wheel for manual control
  • ⌨️ Keyboard control options available
  • 🤖 Autonomous mode with lane following

🤝 Contributing

Contributions are not supported. This repository serves as an archive for our work in 2023-2025.

📞 Contact

With any questions or concerns regarding this project, to be placed in contact with the current project lead please reach out to Professor Wang at CPP: [email protected]

About

C++-based implementation of a Q-learning agent for autonomous racing in the TORCS simulator. It features real-time decision-making, reward shaping, and performance tracking for reinforcement learning in simulated driving environments.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages