Image-Kernel-Processing

Image Kernel, bizim bazı efektleri (keskinleştirme, bulanıklaştırma vb.) uygulamak için kullandığımız bir matrisi temsil eder. Resimde aldığımız bir matris alanını parametrede verdiğimiz array ile işleme sokarak yeni bir pixel değeri elde etmemizi sağlıyor. Bu sayede verdiğimiz array değerine göre yeni pixel değerleri üretiyor ve efekt uygulanmış oluyor. Aşşağıdaki görsele bakarak daha iyi anlayabilirsiniz: movie1-1-5

Code

ImageKernel adındaki Class'ına verdiğimiz ilk parametre bizim efekt uygulamak istediğimiz resim. İkinci parametre ise bizim matris aralığımız. Örnek olarak 3x3 uygulanacağı için 3 verilmiştir. [[1, 2, 1], [0, 0, 0], [-1, -2, -1]] değeri ise bizim array aralığımız. Bu array listesine ulaşmak için kodun altına bunun ile ilgili resim yüklüyorum. Bu değerleri değiştirerek resim üzerinde nasıl bir değişiklik olduğunu görebilirsiniz.

object = ImageKernel(
    "image.jpg",
    3,
    [[1, 2, 1], [0, 0, 0], [-1, -2, -1]])

Array örnekleri: Typesofkernels Mesela Sharpen Kernel array'i resim üzerinde keskinleştirme yapmak için oluşturulmuş değerlerdir.

Example 1

Bu örnekte "sobel operator" denilen bir array değeri kullanılmıştır. Bu array, resim üzerinde kenarları algılamak için kullanılan bir algoritmadır. Ekran Resmi 2021-12-22 19 07 25

Example 2

Bu örnekte ise "emboss" denilen kabartma algoritması kullanılmıştır. Ekran Resmi 2021-12-22 19 10 22

Kaynaklar