Aplikasi web untuk meningkatkan kualitas gambar menggunakan Filter Bilateral Adaptif (ABF) dan Unsharp Mask yang dikembangkan dengan Flask.
- Implementasi dua jenis filter peningkatan kualitas gambar:
- Filter Bilateral Adaptif (ABF) - untuk peningkatan detail dengan preservasi tepi
- Unsharp Mask - untuk penajaman gambar dengan algoritma standar industri
- Deteksi otomatis parameter optimal berdasarkan karakteristik gambar (noise, tepi, tekstur)
- Pengurangan noise (denoising) dengan algoritma Non-Local Means
- Visualisasi histogram RGB untuk analisis distribusi warna
- Antarmuka pengguna yang intuitif dan responsif
Filter Bilateral Adaptif menggabungkan kemampuan filter bilateral konvensional dengan adaptasi parameter berdasarkan konten gambar. Filter ini:
- Menganalisis karakteristik gambar (level noise, tepi, tekstur)
- Menyesuaikan parameter filter secara otomatis untuk setiap gambar
- Menerapkan denoising jika terdeteksi noise tinggi
- Mempertahankan tepi sambil menghaluskan area homogen
- Meningkatkan kontras lokal untuk hasil yang lebih tajam
Teknik Unsharp Mask berfungsi dengan:
- Membuat versi blur dari gambar asli menggunakan Gaussian Blur
- Menghitung "mask" dengan mengurangkan versi blur dari gambar asli
- Menambahkan mask ke gambar asli dengan faktor penguat tertentu
- Secara selektif meningkatkan detail pada kanal luminansi untuk meminimalkan artefak warna
- Python 3.8 atau lebih baru
- pip (package manager Python)
-
Clone repositori ini:
git clone https://github.com/yourusername/image-enhancement-app.git cd image-enhancement-app
-
Buat virtual environment Python (opsional tapi direkomendasikan):
python -m venv venv
-
Aktifkan virtual environment:
- Windows:
venv\Scripts\activate
- macOS/Linux:
source venv/bin/activate
- Windows:
-
Install dependensi:
pip install -r requirements.txt
-
Jalankan aplikasi:
python run.py
-
Buka browser dan akses
http://localhost:5000
- Pada halaman utama, klik tombol "Pilih Gambar" untuk mengunggah gambar
- Tunggu sistem memproses gambar dengan kedua filter
- Pada halaman hasil, anda dapat:
- Melihat perbandingan gambar asli dan hasil pemrosesan
- Mengamati histogram RGB untuk analisis warna
- Mengunduh gambar hasil
image-enhancement-app/
├── app/ # Folder utama aplikasi Flask
│ ├── static/ # Aset statis (CSS, JS, gambar)
│ │ ├── uploads/ # Menyimpan gambar yang diunggah
│ │ ├── results/ # Menyimpan gambar hasil pemrosesan
│ │ ├── css/ # File stylesheet
│ │ ├── js/ # File JavaScript
│ ├── templates/ # Template HTML Flask
│ │ ├── index.html # Halaman utama untuk unggah gambar
│ │ ├── result.html # Halaman hasil dengan perbandingan gambar
│ ├── utils/ # Modul utilitas
│ │ ├── image_processor.py # Implementasi filter gambar
│ ├── __init__.py # Inisialisasi aplikasi Flask
│ ├── routes.py # Definisi rute dan handlers permintaan HTTP
├── requirements.txt # Dependensi proyek
├── run.py # File entri untuk menjalankan aplikasi
├── README.md # Dokumentasi proyek
- Flask - Web framework Python yang ringan
- OpenCV - Library computer vision dan pemrosesan gambar
- NumPy - Library komputasi numerik untuk Python
- Pillow - Library pemrosesan gambar Python yang mudah digunakan
- Werkzeug - Utilitas WSGI untuk Python web development
- Bootstrap - Framework CSS untuk antarmuka responsif
Beberapa ide untuk pengembangan lebih lanjut:
- Menambahkan lebih banyak filter dan algoritma pemrosesan gambar
- Implementasi fitur editing gambar secara manual
- Implementasi API untuk pemrosesan batch
- Penyimpanan dan manajemen histori gambar
- Optimasi kinerja untuk gambar resolusi tinggi
MIT License