OpenCV ve Python ile Temel Görüntü İşleme

Merhaba, bugün OpenCV kütüphanesinin yüklenmesine ve temel görüntü işleme komutlarına yakından bakıyoruz. Öncelikle eğer sisteminizde Python yüklü değilse https://www.python.org/ adresinden güncel python versiyonu yükleyin. Python yüklendikten sonra veya yüklü ise OpenCV kurulumuna geçelim.

Aşağıdaki kodu kopyalayıp komut satırında çalıştıtırsanız OpenCV kütüphanesinin güncel versiyonu yüklenecektir.

pip install opencv-python

Kütüphanenin yüklenmesi tamamlandıktan sonra .py uzantılı bir python dosyası oluşturun ve herhabgi bir editör ile açın. Kod tamamlama ve formatlama için Visual Studio Code kullanabilirsiniz.

Bu programda OpenCV kütühanesini kullanacağımız için import etmemiz gerekiyor. Bunun için aşağıdaki kodu programın en başına yapıştırın.

import cv2

Şimdi temel fonksiyonlardan birkaç tanesini yazalım ve bunları açıklayalım:

Fotoğrafı Okuma

img = "işlenecek fotoğrafın konumu"
image = cv2.imread(img)

Aşağıdaki kodlar yardmıyıla tam konumu verilen resmi diskten okuyabiliriz. Aşağıdaki iki kod satırı çalıştırıldığında image adlı değişkende diskten okunan fotoğraf bulunacaktır.

Orijinal

Gri Tonlama

gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

Okuduğumuz fotoğrafı gri tonlamalı hâle getirelim.

OpenCV, resmi BGR modunda okuduğu için bunu BGR2GRAY bayrağı ile dönüştürüyoruz. Tüm bayrak tiplerini görmek için aşağıdaki kodları bir python dosyasında çalıştırabilirsiniz.

Gri Tonlamalı
import cv2
flags = [i for i in dir(cv2) if i.startswith('COLOR_')]
print(flags)

Gauss Bulanıklığı

blurred = cv2.GaussianBlur(gray, (5, 5), 0)

Gauss bulanıklığı, keskinliği azaltmak için kullanılan bir filtredir. Bu sayede görüntünün işlenmesi sırasında gürültülerden daha az etkileniriz.

Gauss Bulanıklığı

Eşik Değerinin Uygulanması

thresh = cv2.threshold(img, 50, 255, cv2.THRESH_BINARY)

Eşik değeri uygulanığında, pikselin değeri eğer eşik değerin altında ise piksel değeri 0 yapılır, üstünde ise maximum değer yapılır. Yukarıdaki kodda eşik değeri 50, maksimum değer 255’tir.

Eşik Değeri

Canny Kenar Algılama

edged = cv2.Canny(threshed, 75, 200)

Eşik değeri uygulanmış fotoğrafta kenar tanıma işlemi yapıyoruz. Sağlıklı bir şekilde kenar algılama için yukarıdaki işlemleri sırasıyla uygulamak önemlidir.

Canny Kenar Algılama

Bugün temel fotoğraf işleme ile ilgili bazı fonksiyonlarının kullanımını öğrendik. Sonraki yazıda görüşmek üzere.


Yayımlandı

kategorisi

yazarı:

Yorumlar

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir