Gulnaz-Aydemir/Nonlinear-Diffusion-Image-Smoothing
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
Doğrusal Olmayan Difüzyon Hazırlayan: Gülnaz Aydemir Okul: Ostim Teknik Üniversitesi Bölüm:Yapay Zeka Mühendisliği ------------------------------------------------------------------ 1. PROJE ÖZETİ ------------------------------------------------------------------ Bu proje, Perona-Malik (Tip 1 ve Tip 2) ve Charbonnier difüzyon modellerini kullanarak gri ve renkli görüntülerde kenar koruyarak yumuşatma işlemi yapar. ------------------------------------------------------------------ 2. KURULUM VE GEREKSİNİMLER ------------------------------------------------------------------ Proje Python 3 üzerinde geliştirilmiştir. Çalıştırmak için aşağıdaki kütüphanelerin yüklü olması gerekir: pip install numpy opencv-python matplotlib scipy ------------------------------------------------------------------ 3. NASIL ÇALIŞTIRILIR? ------------------------------------------------------------------ Ana kod dosyası 'code' klasörü içindedir. Terminalden şu adımları izleyerek çalıştırabilirsiniz: 1. 'code' klasörüne girin: cd code 2. Ana kodu çalıştırın: python main.py Program çalıştığında bir üst dizinde 'results' klasörü oluşturacak ve tüm analiz grafiklerini oraya kaydedecektir. Ayrıca otomatik olarak 'html/index.html' raporunu güncelleyecektir. ------------------------------------------------------------------ 4. TEKNİK NOTLAR ------------------------------------------------------------------ * Grafik Backend Ayarı: Kod çalıştırılırken bazı sistemlerde oluşabilen "Tcl/Tk pencere hatasını" önlemek amacıyla Matplotlib kütüphanesinde 'Agg' backend kullanılmıştır. Bu sayede grafikler ekrana pencere olarak açılmaz, doğrudan dosyaya kaydedilir. * Dosya Yapısı Notu: Proje yönergelerinde istenen 'utils.py' dosyasının işlevleri, proje bütünlüğünü sağlamak ve karmaşıklığı önlemek adına 'main.py' ve 'analysis.py' dosyalarına entegre edilmiştir. * Renkli Görüntü İşleme: Renkli görüntülerde kanalların bağımsız işlenmesi renk sapmalarına yol açtığı için, kodda 'Vektörel Gradyan' (Di Zenzo yaklaşımına benzer) kullanılmış ve tüm kanallar için ortak bir difüzyon katsayısı hesaplanmıştır.