Derin Öğrenme (Deep Learning) - Önemli Keras Ön İşlemeleri (Preprocessing)

Resim Büyütme İşlemleri (ImageDataGenerator)

Yayın tarihi :11-Mar-22

Resim Büyütme İşlemleri (ImageDataGenerator), veri kümesinde bulunan resim verilerinin orijinal halini ele alarak bu resimlerin bazı özeliklerini değiştirerek (yakınlaştırabilir, döndürebilir, kaydırabilir vb. ) yeni resimler elde etme işlemidir. Bu işlem sonucunda model eğitmek için kullanılacak az sayıdaki resim sayısı artırılmış olacağından oluşturulan model başarısı da artacaktır. Özetle; orijinal resimlerden yapay olarak yeni resimler oluşturma olayıdır.

Kullanılabilmek için "ImageDataGenerator" kütüphanesinin içe aktarılması gerekmektedir.

from tensorflow.keras.preprocessing.image import ImageDataGenerator

Söz dizimi: ImageDataGenerator(featurewise_center=False, samplewise_center=False, featurewise_std_normalization=False, samplewise_std_normalization=False, zca_whitening=False, zca_epsilon=1e-06, rotation_range=0, width_shift_range=0.0, height_shift_range=0.0, brightness_range=None, shear_range=0.0, zoom_range=0.0, channel_shift_range=0.0, fill_mode='nearest', cval=0.0, horizontal_flip=False, vertical_flip=False, rescale=None, preprocessing_function=None, data_format=None, validation_split=0.0, dtype=None)

  • rotation_range, görüntünün rasgele olarak dönme açısını temsil etmektedir.
  • width_shift_range, görüntünün yatay olarak kayması değerini temsil etmektedir. 
  • height_shift_range, görüntünün dikey olarak kayması değerini temsil etmektedir.
  • brightness_range, görüntünün parlaklık değerlerini temsil etmektedir. Tuple veya dizi içinde iki float değer alabilir. (Örn:(0.4,1.3) veya [0.4,1.3]) İkinci değerin 1'den büyük olması parlaklığı artırırken 1'den küçük olması parlaklığı azaltacaktır.
  • zoom_range, görüntüyü yakınlaştırmak için kullanılır.
  • fill_mode, görüntünün dışındaki noktalar verilen moda göre doldurulur. "constant", "nearest", "reflect" "wrap" değerlerini alabilir, varsayılan olarak "nearest" dir.
  • horizontal_flip, görüntüyü yatayda döndürmek için kullanılır.
  • vertical_flip, görüntüyü dikeyde döndürmek için kullanılır.
  • rescale, yeniden ölçeklendirme faktörünü temsil eder. Eğer "None" değerinde ise, yeniden ölçeklendirme uygulanmaz.
  • validation_split, eğitim(training) ve değerlendirme(validation) oranlarını temsil etmektedir.

Resim Büyütme İşlemlerini veri setinde bulunan fotoğraflara uygulamak için 3 farklı yöntem kullanılabilir. Bunlar;

  1. .flow()
  2. .flow_from_directory()
  3. .flow_from_dataframe()

Yukardıda sayılan bu yöntemleri diğer anlatımlarda ayrı ayrı olarak ele alalım.

Paylaş:

Yorum Yap (*Yorumunuza kod eklemek isterseniz Kod Parçacığı Ekle butonuna tıklayarak ekleyebilirsiniz.)

Yorumlar

Henüz hiç yorum yapılmamış, ilk yorum yapan sen ol.