Projek website untuk mengklasifikasi citra dalam skripsi penulis tentang Klasifikasi Jenis Lahan Menggunakan CNN Berbasiskan Citra Satelit
.
-
Demo (hanya UI tanpa implementasi backend)
- Python
- Flask
- Tensorflow
-
Install semua tools yang dibutuhkan pada tech stacks
-
Clone repository
git clone https://github.com/fuadmln/landsat-classifier.git
-
Download dan pindahkan model ke folder
/model
.
Model berupa file.h5
download disini (171 MB) -
Jalankan perintah di terminal
python app.py
-
Kunjungi url yang dihasilkan pada browser
Penjelasan fungsi folder dan file dalam proyek web ini.
Berisi script python notebook:
- split_dataset.py - membagi dataset ke data training dan testing.
- trainig cnn.ipynb - melatih model dengan data training.
- testing cnn.ipynb - menguji model dengan data testing.
Folder untuk lokasi penyimpan file model
File statis untuk komponen website seperti css dan js
Folder untuk menyimpan file HTML
Folder untuk menyimpan file gambar yang akan diuji
File utama untuk menjalankan website
File berupa class untuk proses klasifikasi
[GET] /
Mengakses halaman beranda
[POST] /classify
Melakukan klasifikasi pada sebuah gambar
Request Payload (form):
- img: (file)
Response (json):
{
"data": {
"class": "Forest", // hasil prediksi kelas
"fileName": "Forest_1002.jpg", // nama file
},
"error": false
}
[POST] /evaluate
Melakukan evaluasi pada sekumpulan gambar
Request Payload (form):
- folder: (string)
Response (json):
{
"data": {
"accuracy": 0.9, // overall accuracy
"confusion_matrix": [[]], //2D array 10x10
"metrics": [[]], // 2D array 10x3 (precision, recall, f1-score)
},
"error": false
}