# π Project Klasifikasi Gambar
Project ini adalah implementasi model klasifikasi menggunakan **TensorFlow** dan berbagai tools pendukung lainnya, termasuk konversi model ke **TensorFlow.js** dan **TensorFlow Lite (TFLite)** untuk keperluan deployment di web dan mobile.
## π Teknologi dan Library yang Digunakan
- **TensorFlow** β untuk membangun dan melatih model klasifikasi.
- **TensorFlow.js** β untuk mengkonversi model ke format yang bisa dijalankan di browser.
- **Splitfolders** β untuk membagi dataset menjadi data training, validation, dan testing.
- **Matplotlib** β untuk visualisasi data dan hasil pelatihan.
- **Numpy** β untuk pengolahan data numerik.
- **Seaborn** β untuk membuat visualisasi statistik seperti confusion matrix.
- **Scikit-learn** β untuk evaluasi model (classification report, confusion matrix, dll).
- **TFLite** β untuk mengkonversi model ke format ringan untuk perangkat mobile.
## π Struktur Proyek
```plaintext
.
βββ dataset/
β βββ train/
β βββ val/
β βββ test/
βββ saved_model/
β βββ assets/
β βββ variables/
| βββ fingerprint.pb
β βββ saved_model.pb
βββ tfjs_model/
β βββ group1-shard1of7.bin
β βββ group1-shard2of7.bin
β βββ group1-shard3of7.bin
β βββ group1-shard4of7.bin
β βββ group1-shard5of7.bin
β βββ group1-shard6of7.bin
β βββ group1-shard7of7.bin
β βββ model.json
βββ tflite/
β βββ label.txt
β βββ model.tflite
βββ submission_klasifikasi_gambar.ipynb
βββ README.md
βββ requirements.txt
```
## π§ͺ Langkah-langkah Penggunaan
### 1. Persiapkan Dataset
- Dataset dibagi menjadi train/validation/test menggunakan `splitfolders`.
### 2. Training Model
- Model dikembangkan menggunakan **TensorFlow**.
- Visualisasi akurasi dan loss dilakukan menggunakan **Matplotlib** dan **Seaborn**.
### 3. Evaluasi Model
- Evaluasi dilakukan menggunakan **Scikit-learn** untuk menghasilkan metrics seperti:
- Accuracy
- Precision
- Recall
- Confusion Matrix
### 4. Konve β¦