Selamat datang di Klasifikasi Tumor Otak Berbasis AI, aplikasi berbasis web yang menggunakan model deep learning untuk mendeteksi jenis tumor otak dari citra MRI. Aplikasi ini dirancang untuk memberikan hasil klasifikasi yang cepat, akurat, dan informatif, dengan antarmuka yang elegan dan interaktif.
Aplikasi ini memungkinkan pengguna untuk mengunggah citra MRI (format JPEG/PNG) dan mendapatkan prediksi jenis tumor otak, seperti Glioma, Meningioma, Pituitary Tumor, atau No Tumor, beserta tingkat kepercayaan (confidence score). Hasil ditampilkan dalam kartu modern dengan progress bar visual dan informasi tambahan tentang jenis tumor yang terdeteksi.
Fitur Utama:
- Antarmuka Dua Kolom: Kolom kiri untuk unggah citra dan pemrosesan, kolom kanan untuk hasil dan informasi tambahan.
- Progress Bar: Visualisasi tingkat kepercayaan prediksi.
- Informasi Tumor: Deskripsi singkat tentang jenis tumor yang terdeteksi.
- Desain Elegan: Menggunakan gradien, bayangan kartu, dan efek hover untuk pengalaman pengguna yang menarik.
- Error Handling: Penanganan kesalahan untuk memastikan aplikasi berjalan lancar.
Disclaimer: Aplikasi ini adalah alat bantu diagnosis dan tidak menggantikan penilaian medis profesional. Selalu konsultasikan hasil dengan dokter spesialis.
- Unggah Citra MRI: Pilih file citra (JPEG/PNG) melalui area unggah di kolom kiri.
- Proses Citra: Klik tombol "Proses Citra" untuk memulai klasifikasi.
- Lihat Hasil: Hasil klasifikasi, tingkat kepercayaan, dan informasi tumor akan ditampilkan di kolom kanan.
your_project_folder/
├── app.py # File utama aplikasi Streamlit
├── brain_tumor_model.keras # Model deep learning untuk klasifikasi
├── requirements.txt # Daftar dependensi Python
├── README.md # Dokumentasi proyek (file ini)
- Python 3.11
- Git (untuk mengelola repository)
- Akun GitHub dan Streamlit Cloud untuk deployment
Dependensi aplikasi tercantum dalam requirements.txt:
streamlit
tensorflow
pillow
numpy
Untuk menginstall dependensi secara lokal:
pip install -r requirements.txt- Clone repository:
git clone <URL_REPOSITORY_ANDA> cd your_project_folder
- Install dependensi:
pip install -r requirements.txt
- Jalankan aplikasi:
streamlit run app.py
- Buka browser di
http://localhost:8501untuk melihat aplikasi.
-
Siapkan Repository GitHub:
- Pastikan file
app.py,brain_tumor_model.keras, danrequirements.txtada di direktori proyek. - Buat repository GitHub baru dan push file:
git init git add . git commit -m "Initial commit" git remote add origin <URL_REPOSITORY_ANDA> git push -u origin main
- Catatan: Jika
brain_tumor_model.keras>100 MB, gunakan Git LFS atau host model di cloud (lihat bagian di bawah).
- Pastikan file
-
Deploy ke Streamlit Cloud:
- Login ke Streamlit Cloud.
- Klik "New app", pilih repository GitHub Anda, dan set
app.pysebagai file utama. - Klik "Deploy" dan tunggu hingga proses selesai.
-
Verifikasi Model:
- Pastikan
brain_tumor_model.kerasada di repository dan dapat diakses oleh aplikasi. - Jika model tidak ditemukan, periksa nama file (case-sensitive) dan
.gitignore.
- Pastikan
Jika brain_tumor_model.keras terlalu besar untuk GitHub:
- Gunakan Git LFS:
git lfs install git lfs track "*.keras" git add .gitattributes git add brain_tumor_model.keras git commit -m "Add model with LFS" git push origin main
- Host di Cloud: Unggah model ke Google Drive/Dropbox dengan link publik, lalu ubah kode untuk mengunduh model:
import urllib.request model_url = "https://your_storage_link/brain_tumor_model.keras" model_path = "brain_tumor_model.keras" if not os.path.exists(model_path): urllib.request.urlretrieve(model_url, model_path)
- Nama File Model: Pastikan nama file di kode (
brain_tumor_model.keras) sesuai dengan file di repository (case-sensitive). - Kompatibilitas TensorFlow: Gunakan versi TensorFlow yang kompatibel dengan model Anda (disarankan TensorFlow 2.13.0).
- Ukuran Citra: Aplikasi hanya menerima citra JPEG/PNG. Pastikan citra yang diunggah valid.
- Performa: Untuk model besar, pertimbangkan konversi ke format TFLite untuk deployment yang lebih ringan.
Kami menyambut kontribusi untuk meningkatkan aplikasi ini! Silakan buat pull request atau laporkan issue di repository GitHub.
- Streamlit: Framework untuk antarmuka web interaktif.
- TensorFlow: Untuk pelatihan dan inferensi model deep learning.
- Pillow & NumPy: Untuk pemrosesan citra dan manipulasi data.
Untuk pertanyaan atau dukungan, hubungi melalui [GitHub Issues](https://github.com/rel1vee/tumor-brain-classification/issues) atau email muhzakierbaisyas@gmail.com.
⭐ Jika Anda menyukai proyek ini, beri bintang di GitHub!