Skip to content

shabir-mp/Damaged_Roads_Identification

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

🛣️ Road Damage Detection

Deteksi Kerusakan Jalan Menggunakan Object Detection Berbasis Deep Learning

Project Hackta Camp AI 2026


📌 Deskripsi Proyek

Road Damage Detection adalah proyek Computer Vision berbasis Object Detection yang bertujuan untuk mengidentifikasi kerusakan jalan seperti pothole dan pengelupasan lapisan permukaan menggunakan citra dari kamera kendaraan (dashboard camera).

Model dikembangkan menggunakan arsitektur YOLO (You Only Look Once) dari framework Ultralytics, yang terkenal akan kecepatan inferensi dan akurasi tinggi, sehingga cocok untuk kebutuhan real-time detection serta pengembangan lanjutan seperti Smart Transportation System atau Monitoring Infrastruktur Jalan.

Proyek ini dikembangkan dalam rangka ajang Hackta AI 2026.


👤 Informasi Proyek

  • Author: Shabir Mahfudz Prahono
  • School: SMA Negeri 2 Bandung
  • Event: Hackta Camp AI 2026
  • Bidang: Computer Vision, Object Detection
  • Framework: Ultralytics YOLO (PyTorch)

🧠 Model & Spesifikasi Teknis

  • Arsitektur Model: YOLOv8 (Small / Medium)
  • Task: Object Detection
  • Input Image Size: 640 x 640
  • Format Dataset: Pascal VOC (.xml) → YOLO (.txt)
  • Optimizer: SGD / AdamW (default Ultralytics)
  • Loss: YOLO Detection Loss
  • Training Environment: Google Colab (GPU)

✨ Fitur Utama

  • ✅ Deteksi kerusakan jalan secara otomatis
  • 🚗 Cocok untuk data kamera kendaraan (dashcam)
  • ⚡ Inferensi cepat (real-time capable)
  • 🔄 Konversi label otomatis (XML → YOLO)
  • 📊 Evaluasi mAP, Precision, Recall
  • 🔁 Export model ke format ONNX

📂 Struktur Dataset

jalan rusak/
├── train/
│   ├── images (.jpg)
│   └── labels (.txt)
├── valid/
│   ├── images (.jpg)
│   └── labels (.txt)
└── test/
    ├── images (.jpg)
    └── labels (.txt)

🚀 Cara Menjalankan Proyek (Google Colab)

1. Persiapan Awal

  1. Upload file jalan_rusak.zip ke Google Drive

  2. Pastikan path:

    MyDrive/jalan_rusak.zip
    
  3. Aktifkan GPU di Colab:

    Runtime → Change runtime type → GPU
    

2. Mount Google Drive & Extract Dataset

from google.colab import drive
drive.mount('/content/drive')

import zipfile, os

zip_path = "/content/drive/MyDrive/jalan_rusak.zip"
extract_path = "/content/dataset"

with zipfile.ZipFile(zip_path, 'r') as zip_ref:
    zip_ref.extractall(extract_path)

3. Konversi Label XML ke YOLO

Dataset awal menggunakan Pascal VOC (.xml) dan dikonversi otomatis ke format YOLO.

# XML → YOLO converter

Fungsi utama:

  • Membaca ukuran gambar
  • Normalisasi bounding box
  • Menyimpan label .txt
  • Menangani folder train, valid, dan test

4. Konfigurasi Dataset (data.yaml)

path: /content/dataset/jalan rusak
train: train/images
val: valid/images
test: test/images

names:
  0: pengelupasan lapisan permukaan

5. Training Model YOLO

from ultralytics import YOLO

model = YOLO("yolov8s.pt")

model.train(
    data="data.yaml",
    epochs=50,
    imgsz=640,
    batch=16,
    device=0,
    project="runs/detect",
    name="road_damage"
)

6. Evaluasi Model

model.val()

Metrik yang dihasilkan:

  • mAP@50
  • Precision
  • Recall
  • F1-Score

7. Inferensi (Uji Deteksi)

model.predict(
    source="/content/dataset/jalan rusak/test/images",
    conf=0.25,
    save=True
)

Hasil prediksi tersimpan di:

runs/detect/road_damage/

8. Export Model ke ONNX

model.export(format="onnx")

File hasil:

road_damage.onnx

📈 Hasil & Analisis

  • Model mampu mendeteksi kerusakan jalan dengan baik
  • Bounding box presisi pada area rusak
  • Cocok untuk pengembangan sistem monitoring jalan otomatis

📂 Struktur Repository

.
├── road_damage_detection.ipynb
├── data.yaml
├── road_damage.onnx
├── runs/
│   └── detect/
│       └── road_damage/
└── README.md

📌 Kesimpulan Teknis

  • Pipeline Object Detection end-to-end

  • Menggunakan framework modern dan efisien

  • Siap dikembangkan untuk:

    • Smart City
    • Transportasi Cerdas
    • Monitoring Infrastruktur

Important

DISCLAIMER: Dokumentasi ini dibuat dengan bantuan AI. Mohon maaf apabila terdapat kesalahan penulisan atau istilah teknis.


😊 Penutup

Terimakasih telah mengunjungi proyek saya, jangan sungkan untuk menghubungi saya di kontak yang tertera pada profil. BYE ! 🙏😄

✨ Happy Learning & Happy Coding!

About

Road Damage Detection adalah proyek Computer Vision berbasis Object Detection (YOLO) untuk mendeteksi kerusakan jalan seperti pengelupasan lapisan permukaan dari citra kamera kendaraan. Dikembangkan menggunakan Ultralytics YOLO dan dijalankan di Google Colab (GPU). Proyek ini dikembangkan untuk ajang Penyisihan Hackta AI 2026

Topics

Resources

Stars

Watchers

Forks

Contributors