--- license: mit tags: - object-detection - image-classification - waste-classification - hierarchical-classification - yolov12 - computer-vision - pytorch language: - id - en pipeline_tag: image-classification datasets: - afinnn/waste-detection-dataset --- # HSCN Waste Checkpoints - YOLOv12 + Hierarchical Sibling Classification Network (HSCN) Repository ini berisi kumpulan **checkpoint model** untuk sistem deteksi dan klasifikasi sampah hierarkis dua tahap: 1. **YOLOv12** - mendeteksi objek sampah dalam gambar (bounding box). 2. **HSCN (Hierarchical Sibling Classification Network)** - mengklasifikasikan setiap objek hasil crop deteksi ke dalam **3 level hierarki**: - **L1 - Waste Management**: kategori penanganan sampah (mis. daur ulang, organik, residu) - **L2 - Material**: jenis material (mis. plastik, kertas, logam, kaca) - **L3 - Specific Object**: kelas objek spesifik (mis. botol plastik, kaleng, kardus) Model ini dikembangkan sebagai bagian dari penelitian tugas akhir/skripsi mengenai klasifikasi sampah berbasis computer vision, dan telah melalui proses sidang serta submission paper konferensi (SENTRIN). ## Struktur Repository | Folder | Isi | |---|---| | `waste_detection_results` | Checkpoint & hasil training YOLOv12 (varian utama/default) | | `waste_detection_results_yolol` | Checkpoint YOLOv12-**Large** | | `waste_detection_results_yolom` | Checkpoint YOLOv12-**Medium** | | `waste_detection_results_yolos` | Checkpoint YOLOv12-**Small** | | `waste_hscn_results_convnext_small` | Checkpoint HSCN dengan backbone **ConvNeXt-Small** (backbone terbaik) | | `waste_hscn_results_efficientnet_b3` | Checkpoint HSCN dengan backbone **EfficientNet-B3** | | `waste_hscn_results_mobilenet_v3_large` | Checkpoint HSCN dengan backbone **MobileNetV3-Large** | | `waste_hscn_results_resnet18` | Checkpoint HSCN dengan backbone **ResNet-18** | | `waste_hscn_results_resnet50` | Checkpoint HSCN dengan backbone **ResNet-50** | | `waste_hscn_results_resnet101` | Checkpoint HSCN dengan backbone **ResNet-101** | ## Dataset - **6.357 objek crop** (hasil deteksi) digunakan untuk training klasifikasi HSCN - **2.085 gambar** sebelum augmentasi digunakan untuk training deteksi YOLOv12 - Sumber dataset gabungan dari 4 dataset publik: **TrashNet, TACO, RealWaste**, dan **Kaggle** (waste classification dataset) ## Hasil Evaluasi ### Deteksi Objek - YOLOv12 Model terbaik: **YOLOv12-Large** | Metrik | Skor | |---|---| | F1-Score | 0.844 | | mAP@0.5:0.95 | 0.7636 | ### Klasifikasi Hierarkis - HSCN 6 backbone dievaluasi untuk mencari kombinasi terbaik. **ConvNeXt-Small** terpilih sebagai backbone terbaik: | Backbone | mAP (mean, L1+L2+L3) | Akurasi L3 (kelas spesifik) | |---|---|---| | **ConvNeXt-Small** ⭐ | **0.967** | **0.5802** | | ResNet-18 | – | – | | ResNet-50 | – | – | | ResNet-101 | – | – | | EfficientNet-B3 | – | – | | MobileNetV3-Large | – | – | > Catatan: L3 (klasifikasi objek spesifik) merupakan level tersulit karena jumlah kelas yang lebih banyak dan granularitas visual yang tinggi antar sub-kategori material yang mirip. ## Cara Penggunaan Checkpoint di repository ini dalam format native (PyTorch `.pt`/state_dict sesuai arsitektur asli - bukan format `transformers`), sehingga perlu dimuat menggunakan kode arsitektur model asli (YOLOv12 & HSCN), bukan lewat `AutoModel` dari library `transformers`. Contoh unduh checkpoint dengan `huggingface_hub`: ```python from huggingface_hub import hf_hub_download # Contoh: unduh checkpoint YOLOv12-Large yolo_ckpt = hf_hub_download( repo_id="afinnn/hscn-waste-checkpoints", filename="waste_detection_results_yolol/" ) # Contoh: unduh checkpoint HSCN ConvNeXt-Small hscn_ckpt = hf_hub_download( repo_id="afinnn/hscn-waste-checkpoints", filename="waste_hscn_results_convnext_small/" ) ``` Lalu muat checkpoint sesuai kelas model masing-masing (YOLOv12 loader / HSCN `nn.Module` custom) pada kode training/inference. ## Arsitektur Pipeline Sistem bekerja dalam dua tahap yang berurutan: deteksi objek diikuti klasifikasi hierarkis pada tiap objek yang terdeteksi. ```mermaid flowchart TD A["Gambar Input"] --> B["Tahap 1: Deteksi Objek\nYOLOv12"] B --> C["Crop Objek Terdeteksi\n(per bounding box)"] C --> D["Tahap 2: Klasifikasi Hierarkis\nHSCN (ConvNeXt-Small)"] D --> E["L1: Waste Management"] D --> F["L2: Material"] D --> G["L3: Specific Object"] E --> H["Output Akhir:\nBounding Box + Label Hierarkis L1/L2/L3"] F --> H G --> H ``` | Tahap | Komponen | Input | Output | |---|---|---|---| | 1. Deteksi | YOLOv12 | Gambar mentah | Bounding box objek sampah | | 2. Cropping | - | Bounding box | Citra hasil crop per objek | | 3. Klasifikasi | HSCN (backbone ConvNeXt-Small) | Citra hasil crop | Label hierarkis L1, L2, L3 | | 4. Output | - | Bounding box + label | Deteksi lengkap dengan klasifikasi 3 level | ## Sitasi Jika menggunakan model ini, mohon sitasi paper terkait (SENTRIN) - detail sitasi akan diperbarui setelah publikasi resmi. ```bibtex @inproceedings{hscn-waste-2026, title={Two-Stage Waste Detection and Hierarchical Classification using YOLOv12 and HSCN}, author={Afin}, booktitle={SENTRIN}, year={2026} } ``` ## Lisensi MIT License - bebas digunakan untuk riset dan pengembangan lebih lanjut, dengan tetap mencantumkan atribusi. ## Kontak Untuk pertanyaan lebih lanjut mengenai model atau kolaborasi, silakan hubungi melalui profil Hugging Face [@afinnn](https://huggingface.co/afinnn).