Görüntü işlemede görüntüdeki objelerin kenarlarındaki kenarları yok etmek istiyorum. Bunun için linear shading correction adlı bir algoritma var ancak algoritmanın mantığını anlayamıyorum. Algoritma içerisinde şöyle bir açıklama var:
"Bu teknikte iki görüntü alırız. Birincisi r1,ince bir levha ve ikincisi r2,kalın bir levha.i1 ve i2’yi sırasıyla birinci ve ikinci görüntü için ideal gri değerler olarak tanımlarız.r1,r2,i1 ve i2’den offset ve gain ,düzeltme matrisleri a ve b, orijinal X-ışını görüntüsü x ile düzeltilmiş X-ışını görüntüsü y arasında doğrusal bir dönüşüm varsayılarak hesaplanır:
Offset ve gain matrisleri aşağıdaki gibi hesaplanır:
Bu durumda biri alüminyum parça için diğeri plakanın delikleri için sadece iki gri değer (gürültü) elde ederiz."
Bana bu algoritma hakkında bir kaynak önerebilecek ya da bir açıklama yapacak biri cevap yazabilirse çok sevinirim.
Bu arada koyduğunuz formüllere baktığımda ilk formül y = ax + b şeklinde bir doğru formülü. Offset (a) ile Gain (b) matrisleri için eklediğiniz 2. formülü incelediğimde şunu anlıyorum;
r1: ince levhadan alınan görüntüydü
r2: kalın levhadan alınan görüntüydü
i1: ince levhadan alınması arzu edilen ideal görüntü
i2: kalın levhadan alınması arzu edilen ideal görüntü
Offset (a) hesabında, kalın levha ideal görüntüsünden ince levha ideal görüntüsü farkı alınarak, kalın levhanın gerçek görüntüsü ile ince levhanın gerçek görüntüsünün farkına bölünüyor. Yani ideal görüntülerinin farkının gerçek görüntülerin farkına oranını buluyor (ideal değerlerin gerçek değerlere oranı gibi düşünebiliriz).
Gain (b) ise ince levhanın ideal görüntüsünden, ince levhanın gerçek görüntüsü ile az önce hesaplanan Offset değerinin çarpımını çıkarıyor. sanırım burası ince levhanın ideal değerlerden ne kadar uzak olduğunu bulmak için hesaplanmış.
Kitaptaki resimler ve örnek kodları yukarıya ekledim. Fig. 4.8.'de sanırım ince ve kalın levhayı göstermiş. Real X-Ray görüntülerinde kaynaktan çıkan X ışınları levhada dairesel bir açılma izi bırakıyor. Bahsettiğiniz algoritma bu renk açılımını düzelterek tekdüze bir görünüm oluşturuyor.
Örnek koda bakıldığında shading() fonksiyonu işi yapıyor gibi. Zaten formül de y = ax + b şeklinde bir doğru formülüydü. Dolayısıyla Linear Shading oluyor. x’in karesi ve üzeri olursa linear olmaktan çıkar. Zorladık bu kadar oldu