Final working, with good req.txt and readme

This commit is contained in:
KeshavAnandCode
2026-03-20 13:25:47 -05:00
parent f28aa1d53b
commit 0c56b9285a
3 changed files with 98 additions and 71 deletions

View File

@@ -1,6 +1,92 @@
# vehicle-classification # Vehicle Classification — UTD Deep Learning Assessment
UTD Vehicle Classification Assessment Code A Convolutional Neural Network (CNN) trained to classify 8 vehicle types:
**Bicycle, Bus, Car, Motorcycle, NonVehicles, Taxi, Truck, Van**
Download Zip and move to data/raw/ ---
Extract zip into data/raw/vehicle_classification
## Requirements
- Python 3.11 (see `.python-version`)
- pip
---
## Setup
### 1. Clone the repository
```bash
git clone https://git.keshavanand.net/KeshavAnandCode/vehicle-classification.git
cd utd-vehicle-classification
```
### 2. Create and activate a virtual environment
```bash
python3.11 -m venv .venv
```
**Mac/Linux:**
```bash
source .venv/bin/activate
```
**Windows:**
```bash
.venv\Scripts\activate
```
### 3. Install dependencies
```bash
pip install -r requirements.txt
```
### 4. Download the dataset
- Download `vehicle_classification.zip`
- Place and extract it so the structure looks exactly like this:
```
data/
└── raw/
└── vehicle_classification/
├── Bicycle/
├── Bus/
├── Car/
├── Motorcycle/
├── NonVehicles/
├── Taxi/
├── Truck/
└── Van/
```
### 5. Run the notebook
```bash
jupyter notebook notebooks/submission.ipynb
```
Once open: **Kernel → Restart & Run All**
---
## Project Structure
```
utd-vehicle-classification/
├── notebooks/
│ ├── submission.ipynb ← main submission, run this
│ └── experiments/ ← exploratory notebooks (ignore)
├── data/
│ └── raw/
│ └── vehicle_classification/ ← dataset goes here
├── models/ ← saved model weights (auto-created on run)
├── results/ ← training curves (auto-created on run)
├── requirements.txt
└── README.md
```
---
## Expected Output
```
Final Train Accuracy : ~88%
Final Test Accuracy : ~82%
```
---
## Notes
- Device is detected automatically — runs on NVIDIA GPU, Apple Silicon (MPS), or CPU with no code changes required
- `models/` and `results/` directories are created automatically when the notebook runs

View File

View File

@@ -1,67 +1,8 @@
asttokens==3.0.1 torch>=2.0.0
comm==0.2.3 torchvision>=0.15.0
contourpy==1.3.3 numpy>=1.24.0
cuda-bindings==12.9.4 matplotlib>=3.7.0
cuda-pathfinder==1.2.2 Pillow>=9.0.0
cuda-toolkit==12.8.1 scikit-learn>=1.0.0
cycler==0.12.1 jupyter>=1.0.0
debugpy==1.8.20 ipykernel>=6.0.0
decorator==5.2.1
executing==2.2.1
filelock==3.25.2
fonttools==4.62.1
fsspec==2026.2.0
ipykernel==7.2.0
ipython==9.10.0
ipython_pygments_lexers==1.1.1
jedi==0.19.2
Jinja2==3.1.6
jupyter_client==8.8.0
jupyter_core==5.9.1
kiwisolver==1.5.0
MarkupSafe==3.0.2
matplotlib==3.10.8
matplotlib-inline==0.2.1
mpmath==1.3.0
nest-asyncio==1.6.0
networkx==3.6.1
numpy==2.4.3
nvidia-cublas-cu12==12.8.4.1
nvidia-cuda-cupti-cu12==12.8.90
nvidia-cuda-nvrtc-cu12==12.8.93
nvidia-cuda-runtime-cu12==12.8.90
nvidia-cudnn-cu12==9.20.0.48
nvidia-cufft-cu12==11.3.3.83
nvidia-cufile-cu12==1.13.1.3
nvidia-curand-cu12==10.3.9.90
nvidia-cusolver-cu12==11.7.3.90
nvidia-cusparse-cu12==12.5.8.93
nvidia-cusparselt-cu12==0.7.1
nvidia-nccl-cu12==2.29.7
nvidia-nvjitlink-cu12==12.8.93
nvidia-nvshmem-cu12==3.4.5
nvidia-nvtx-cu12==12.8.90
packaging==26.0
parso==0.8.6
pexpect==4.9.0
pillow==12.1.1
platformdirs==4.9.4
prompt_toolkit==3.0.52
psutil==7.2.2
ptyprocess==0.7.0
pure_eval==0.2.3
Pygments==2.19.2
pyparsing==3.3.2
python-dateutil==2.9.0.post0
pyzmq==27.1.0
six==1.17.0
stack-data==0.6.3
sympy==1.14.0
torch==2.12.0.dev20260318+cu128
torchaudio==2.11.0.dev20260318+cu128
torchvision==0.26.0.dev20260318+cu128
tornado==6.5.5
traitlets==5.14.3
triton==3.6.0+git9844da95
typing_extensions==4.15.0
wcwidth==0.6.0