Görüntü İşlemeye Başlarken: Python ile Tanışma
Python, başlangıç seviyesindeki geliştiriciler için en uygun dillerden biridir. Basit söz dizimi ve güçlü kütüphaneleri sayesinde, karmaşık projelere bile hızlıca adım atabilirsiniz. Eğer görsel işleme dünyasına adım atmayı düşünüyorsanız, Python doğru seçim olabilir. Bu yazıda, Python ile görsel işleme konusunda başlangıç seviyesinde 10 pratik uygulama örneğiyle yol alacağız.
1. Resim Yükleme ve Gösterme
İlk adım olarak, görselleri yüklemek ve basitçe göstermek temel bir adımdır. Python’un `PIL` (Pillow) kütüphanesini kullanarak, bir resmin nasıl yüklendiğini ve gösterildiğini öğrenmek, tüm görüntü işleme sürecinin temeli olacaktır.
kopyalafrom PIL import Image img = Image.open('resim.jpg') img.show()
Bu basit kod, bir resmi yükler ve ekranda gösterir. Ne kadar basit değil mi?
2. Görüntü Boyutlandırma
Görüntü işleme, boyutlandırma gibi işlemleri içerebilir. `resize()` fonksiyonu ile görseli yeniden boyutlandırmak oldukça kolaydır.
kopyalaimg_resized = img.resize((800, 600)) img_resized.show()
Bu işlem, görselin boyutunu 800x600 piksele göre değiştirir.
3. Resmi Grayscale (Gri Tonlamaya) Dönüştürme
Görselleri gri tonlara dönüştürmek, genellikle analiz ve işleme adımlarında sıkça yapılan bir işlemdir. `convert()` fonksiyonu sayesinde bu dönüşümü kolayca gerçekleştirebilirsiniz.
kopyalaimg_gray = img.convert('L') img_gray.show()
Bu kod, resmi siyah-beyaz yapacak ve gri tonlamalı bir görsel elde edeceksiniz.
4. Görselleri Döndürme
Bir görseli döndürmek de sıkça ihtiyaç duyulan işlemlerden biridir. `rotate()` fonksiyonu ile resminizi istediğiniz açıyla döndürebilirsiniz.
kopyalaimg_rotated = img.rotate(45) img_rotated.show()
Bu örnekte, resminiz 45 derece dönecektir.
5. Görselle İşlem Uygulama: Kenar Tespiti
Görüntü işleme dünyasında en yaygın kullanılan tekniklerden biri kenar tespitidir. `Canny` algoritmasını kullanarak kenar tespiti yapabilirsiniz. Bunun için `OpenCV` kütüphanesini kullanmak iyi bir seçenek olacaktır.
kopyalaimport cv2 img_cv = cv2.imread('resim.jpg', 0) edges = cv2.Canny(img_cv, 100, 200) cv2.imshow('Edges', edges) cv2.waitKey(0) cv2.destroyAllWindows()
Bu işlem, görseldeki kenarları tespit eder ve görüntüyü gösterir.
6. Görsel Üzerine Metin Ekleme
Görseller üzerine metin eklemek, resminize anlam katmanın harika bir yoludur. `ImageDraw` sınıfını kullanarak istediğiniz metni görsele yerleştirebilirsiniz.
kopyalafrom PIL import ImageDraw, ImageFont draw = ImageDraw.Draw(img) font = ImageFont.load_default() draw.text((10, 10), "Merhaba Python!", font=font, fill="white") img.show()
Burada, "Merhaba Python!" yazısını görselin üst kısmına yerleştiriyoruz.
7. Görüntüde Renk Değiştirme
Görselin renklerini değiştirmek de oldukça popüler bir işlemdir. `ImageEnhance` sınıfı sayesinde renk yoğunluğunu artırabilir veya azaltabilirsiniz.
kopyalafrom PIL import ImageEnhance enhancer = ImageEnhance.Color(img) img_enhanced = enhancer.enhance(2) # Renk yoğunluğunu iki katına çıkar img_enhanced.show()
Bu işlem, görselin renk doygunluğunu artırır.
8. Görseli Yansıma Yapma
Görsel üzerinde yansıma efekti uygulamak oldukça ilginç bir işlemdir. Bunu, görselin altına bir yansıma ekleyerek sağlayabilirsiniz.
kopyalaimg_reflection = img.transpose(Image.FLIP_TOP_BOTTOM) img_reflection.show()
Bu basit işlem, görselin yansımasını ters çevirerek görüntülemenizi sağlar.
9. Görselle Filtre Uygulama
Görseller üzerinde çeşitli filtreler uygulamak, görselliği değiştirmek için kullanılır. `ImageFilter` sınıfı ile bulutlu, bulanık veya kenar yumuşatma filtreleri uygulayabilirsiniz.
kopyalafrom PIL import ImageFilter img_filtered = img.filter(ImageFilter.BLUR) img_filtered.show()
Bu kod, resminize bulanık bir filtre ekler.
10. Resimlerin Birleştirilmesi
Birden fazla resmi birleştirerek yeni görseller oluşturmak oldukça yaygın bir işlemdir. `paste()` fonksiyonu sayesinde bir resmi başka bir görselin üzerine yapıştırabilirsiniz.
kopyalaimg2 = Image.open('resim2.jpg') img.paste(img2, (100, 100)) # img2'yi img'ye 100,100 koordinatında yapıştır img.show()
Bu işlem, iki farklı görseli birleştirmenizi sağlar.
Sonuç
Python ile görüntü işleme oldukça eğlenceli ve öğretici bir yolculuktur. Bu yazıda, başlangıç seviyesinde 10 pratik uygulama ile Python'un gücünü keşfettik. Her bir adım, Python ile görsel işleme dünyasına adım atmak isteyenler için bir rehber niteliğinde. Eğer bu temel adımları öğrenirseniz, daha karmaşık projelere de adım atmak çok daha kolay olacaktır.