Her pixel R,G,B renk kanallarından oluşur.
Tüm resim bir matristir.
Pixeller tek tek ele alınır. Komşuları ile karşılaştırılır. Bu iki pixel P1 ve P2 olsun.
P1=(R1,G1,B1) P2=(R2,G2,B2)
iki pixel arasındaki fark, dif=|R1-R2|+|G1-G2|+|B1-B2|
Bir eşik belirlersiniz. dif > eşik ise; burada bir kontrast vardır kabul edersiniz.
Filtreniz konsrast artırmak için ise, eşik değerinden yüksek olduğu pixellere uygulanacak işlemlerden biri;
R1 < R2 ise R1x0,9 ve R2x1,1
G1 < G2 ise G1x0,9 ve G2x1,1
B1 < B2 ise B1x0,9 ve B2x1,1
... (Tersi de uygulanır) Bu iki pixelin arasındaki kontrast(fark, zıtlık) artırılmış olur.
Filtreniz blur (matlaştırma) efekti ise
R1=R2= (R1+R2)/2
G1=G2=(G1+G2)/2
B1=B2=(B1+B2)/2 Her pixelin renk kanallarının değerlerinin, komşu pixelinki ile ortalaması alınır.
Bu matlaştırmayı kenarlarda uygulayıp, ortayı net göstermek isterseniz, Her değerlendirdiğiniz pixelin, resmin orta noktasına uzaklığını basitçe pisagor teoreminden hesaplayıp, pixelleri karıştırma oranını pivota (merkez) uzaklık değeri ile orantılayabilirsiniz.
Bu işlemler, resimdeki pixeller tek tek için uygulanır.
Her filtrenin algoritması farklıdır.
Bu algoritma yeterli değildir. Fikir oluşması için oldukça sadeleştirerek anlattım..