İMGE İYİLEŞTİRME
(IMAGE ENHANCEMENT)
Murat Özalp
2/101
İmge İyileştirme: Giriş
Hedef: Belirli bir uygulama için, resmi orijinal halinden daha iyi duruma getirmek.
İmge iyileştirmenin (image enhancement), imge yenileme (image restoration) ile karıştırılmaması gerekir. İyileştirme özneldir yani kişiye (bakışa) göre değişir, yenileme ise nesneldir.
Her uygulamada farklı imge iyileştirme yöntemleri kullanılır!
3/101
İmge İyileştirme: Giriş
Görüntü kalitesinin artırılması için bilgisayar tekniklerinin kullanılması 1964’te ay fotoğrafları ile başladı. 1960’ların sonları 1970’lerin başlarında tıp alanında imge işleme teknikleri kullanılmaya başlanmıştır. 1970’lerde CAT (Bilgisayarlı Tomografi) geliştirildi.
Ayın ilk fotoğrafı (31 Temmuz 1964)
“Ranger 7” tarafından ay ile çarpışmadan
17 dakika önce çekilmiştir.
4/101
Örnek Görüntü İşleme Basamakları(Yüz tanıma uygulaması için)1. İmgenin Elde Edilmesi (Image Acquisition)2. İmge İyileştirme (Image Enhancement)3. Filtreleme ve Düzeltme (Filtering and
Restoration)4. Yüz Belirleme (Detection)5. Yüz Düzenleme (Alignment)6. Normalizasyon (Normalization)7. Gösterim (Representation)8. Eşleştirme (Matching)
5/101
Görüntü İşleme Uygulama Alanları
Tıp ve biyoloji (x-ışınları, biyomedikal görüntüler…) Coğrafi bilimler (hava ve uydu görüntülerinden hava tahmini) Eski, hasar görmüş fotoğrafların onarılması, GPR-mayın
tarama, arkeolojik kalıntıların tespiti Oyun Programlama ( bilgisayarda görü, 3-B modelleme) Fizik (spektrometreler, elektron mikroskobu görüntüleri) Uzay bilimleri (uydu, mikrodalga radar görüntüleri…) Savunma sanayi (gece görüş, akıllı roket sistemleri…) Endüstriyel uygulamalar (süreç, ürün denetimi…) Tüketici elektroniği (Video kayıt cihazları, cep telefonları…) Biyometrik tanıma ve güvenlik sistemleri (iris-parmak izi
tanıma, güvenlik-kamera uygulamaları) Uzaktan algılama
6/101
İmge İyileştirme Genel Gösterim
Girdi imgesi
Operatör (İşlem)
İşlenmiş imge
)],([),( yxfTyxg =
7/101
Niceleme ve Örnekleme
8/101
Renk Skalası
Renkli skala
Gri skala
9/101
Sayısal İmge Gösterimi
10/101
İmge İyileştirme Yöntemleri
Uzaysal Alan (Spatial Domain) : Resim düzleminin kendisidir. Pikseller üzerinde doğrudan işlem yapılır.
Frekans Alanı (Frequency Domain) : Resmin Fourier dönüşümü üzerinde değişiklik yapmaya dayanır.
11/101
Frekans Alanında İyileştirme
Önişleme
Fourier dönüşümü
Filtre fonksiyonu
H(u,v)Ters Fourier dönüşümü
Son işleme
f(x,y)giriş sinyali
g(x,y)iyileştirilmiş
sinyal
F(u,v) H(u,v)F(u,v)
12/101
Nokta İşlemleri(Point Operations)
13/101
Nokta İşlemleri (Point Operations)
Nokta işlemleri hafızasız işlemler olarak bilinir. Bunun sebebi, yeni oluşturulan resimdeki bir nokta hesaplanırken, orijinal resimdeki aynı koordinattaki tek bir piksel işleme girer. Bir pikselin diğer bir piksel üzerine etkisi yoktur. Kabaca, aşağıdaki gibi gösterilir:
)(ufv =
14/101
Parlaklık (brightness) değiştirme
Basitçe aşağıdaki gibi ifade edilir:
Bu ifadede x,y koordinatları ile belirtilen noktanın gri skala değerine doğrudan b kadar ekleme yapılıyor. b sayısı pozitif ise parlaklık artar, sayı negatif ise parlaklık azalır.
byxfyxg += ),(),(
15/101
Parlaklık değiştirme
16/101
Karşıtlık Esnetme (yayma)(contrast streching)
Karşıtlık (kontrast), imgedeki açık ve koyu renkler arasındaki farkların daha çok veya az olması şeklinde ifade edilebilir. Karşıtlık artırma basitçe aşağıdaki şekilde ifade edilir:
),(.),( yxfayxg =
17/101
Karşıtlık Esnetme (yayma)(contrast streching)
Hem karşıtlığı hem de parlaklığı değiştirmek için aşağıdaki fonksiyon kullanılır:
byxfayxg += ),(.),(
18/101
Karşıtlık değiştirme
19/101
Karşıtlık esnetme
Karşıtlık esnetmenin karşıtlık artırmadan farkı dinamik olmasıdır. Esnetme hesaplanırken; her noktanın değeri sabit bir sayı ile çarpmak yerine, her noktanın histogramdaki yerine göre farklı bir sayı ile çarpılarak hesaplanır. Bu işlem sonucunda, mevcut histogram fazla bozulmaz, sadece iki yana doğru esnetilmiş olur. Bu nedenle bu tekniğe karşıtlık esnetme adı verilir.
20/101
Karşıtlık esnetme
Karşıtlık esnetmenin grafiksel ifadesi aşağıdaki şekilde gösterilmiştir:
u
Vb
Va
a b L
V
γ
α
β
21/101
Karşıtlık esnetme
22/101
Kırpma ve Eşikleme(Clipping and Thresholding)
Kırpma; karşılık esnetmenin özel bir durumudur. Giriş sinyalindeki renk değerleri sadece a ve b arasında olduğu durumlarda, gürültü temizlemek için kullanılır. Veya başka bir deyişle, aralıktaki değerlerin dışındaki renk değerleri önemli değil ise, kırpma kullanılabilir. İşlem sırasında belirli bir fmin ve fmax aralığındaki renk değerleri tüm skalaya yayılır.
23/101
Kırpma
Örneğin 8 bit gri skalalı bir resimde; fmin=80 ve fmax=140 ise, buna kırpma uygulandığında, 80 ve altındaki renk değerleri tam siyaha çekilir, 140 ve üzerindeki değerler de tam beyaza çekilir. Böylece 80 ve 140 arasında bulunan 60 değer, 256 seviyelik skalaya yayılır.
24/101
Eşikleme
Kırpma işleminin bir değişik durumu da eşikleme olarak adlandırılır. Eşikleme yapıldığında imge iki bitlik gri skalaya dönüşür yani sadece “siyah” ve “beyaz” kalır. Başka bir deyişle, belirlenen eşik değerinin üstündeki değerlikli tüm pikseller beyaz yapılır; eşiğin altında kalanlar da siyah yapılır. Üçüncü bir alternatif olamaz. Şu şekilde de ifade edilebilir:
fmin=fmax=”eşik değeri”.
25/101
Kırpma ve EşiklemeDönüşüm Fonksiyonları
a b
v
u
v
u
26/101
Kırpma Örneği
orijinal kırpılmış
27/101
Eşikleme Örneği
orijinal Eşikleme yapılmış
28/101
Sayısal Negatif (tersleme)(Digital Negative)
Bir resmin negatifini bulmak için, her bir noktanın renginin tümleyeni alınır. Yani skala büyüklüğü L ise, rengin değeri L değerinden çıkarılarak her bir noktanın tersi bulunmuş olur.
29/101
Sayısal Negatifdönüşüm fonksiyonu
Aşağıda, sayısal negatif alma işleminin dönüşüm fonksiyon grafiği verilmiştir:
v
u
L
L0
30/101
Sayısal Negatif Örneği
orijinal negatif
31/101
Sayısal Negatif (MATLAB)
imge = imread('edebali.jpg');ters = imcomplement(imge);imshow(imge);figure,imshow(ters);
32/101
Bazı dönüşüm fonksiyonları
Piksel renk değeri
Gör
üntü
nün
parla
klığ
ı (%
)
33/101
Gri Seviyesi Dilimleme(Intensity Level Slicing )
Belirli bir gri seviyesi aralığının belirginleştirilmesi için kullanılır
Belirginleştirme için gri seviyesi 255 (8 bit için) yapılabilir veya olduğu gri seviyesinde bırakılabilir.
Uygulamada; uydu görüntülerinde su bölgelerinin, kemiklerdeki çatlakların belirginleştirilmesi gibi kullanım alanları vardır.
34/101
Gri Seviyesi Dilimleme Örneği
orijinal işlenmiş
A-B arasıharicinde0 yapılmış
A-B arasıharicindeaynen bırakılmış
35/101
Gri Seviyesi Dilimleme
Gri seviyesi dilimleme fonksiyonu basitçe aşağıdaki gibi ifade edilmektedir:
Arka planda imge yoksa:
Arka planda imge varsa:
≤≤
=haldeaksi
buaLuf
,0
,)(
≤≤
=haldeaksiu
buaLuf
,
,)(
36/101
Bit Çıkarma (Bit Extraction)
Her imge noktası, B sayıda bit ile nicelenmektedir (quantization). Bit çıkarma, bir noktanın ikili sayı sistemindeki ifadesinde, n. yüksek ağırlıklı biti (most significant bit, MSB) almak için kullanılır.
Fonksiyon şu şekilde yazılabilir:
=,0
,)(
Luf
haldeaksi
isekn 1=
37/101
Alan Sıkıştırma(Range Compression)
İnsan gözünün karşıtlık algılayabilme oranı 108:1 ‘e kadar çıkabilmektedir. Normal zamanlarda ise ortalama karşıtlık algılama oranımız, 3x104 civarındadır. Yani %100 siyah ile %100 beyaz arasında bu kadar seviyede renk görebilmektedir.
Gerçek dünyada her şey yüksek dinamik aralıklıdır. Oysa sayısal dünyada yüksek dinamik aralığı kullanmak kolay değildir.
Özelikle yüz tanıma sistemlerinde, yüzlerde koyu gölge olan kısımları görebilmek için “dinamik aralık sıkıştırma” ve “karşıtlık iyileştirme” çokça kullanılan yöntemlerdendir.
38/101
Alan Sıkıştırma
Bazen imgenin dinamik aralığı çok fazla olabilir. Bu tarz durumlarda mesela sadece birkaç pikselin görülebildiği dahi olabilir. Logaritmik bir dönüşüm ile dinamik aralık sıkıştırılabilir. Aşağıda bu dönüşüm verilmiştir:
Formüldeki c sayısı, istenen seviyede sıkıştırmayı sağlamak için kullanılan bir sabittir. Bu dönüşüm; yüksek genlikli noktalara nazaran, düşük genlikli noktaların iyileştirilmesini sağlamaktadır.
( )ucv += 1log10
39/101
İmge Çıkarma ve Değişiklik Tespit Etme(Image Subtraction and Change Detection)
Uygulamada sıklıkla iki farklı karmaşık imgenin karşılaştırılması gerekmektedir. Bunu sağlamak için basit ve güçlü bir yöntem iki imgeyi üst üste yerleştirmek ve birini diğerinden çıkarmaktır.
Örneğin, bir elektronik devre üzerinde eksik malzeme olup olmadığını anlamanın en kolay yolu, devrenin fotoğrafının orijinal sağlam devre fotoğrafından çıkarılmasıdır.
40/101
İmge Çıkarma ve Değişiklik Tespit Etme
(a) orijinal fotoğraf (b) bir para yer değiştirdikten sonra (c) nokta-nokta çıkarımdan sonraki fark.
41/101
İmge Çıkarma ve Değişiklik Tespit Etme
42/101
Histogram Modelleme(Histogram Modeling)
43/101
Histogram Modelleme(Histogram Modeling)
Histogram, bir imge içerisindeki çeşitli renk değerlerinin tekrarlanma sıklığını (frekansını) gösteren grafiktir.
Histogram modelleme teknikleri, bir imgenin histogramını istenen şekle getirmek için imge üzerinde yapılan düzenlemelerdir.
Bu teknikler, histogram üzerinde dar bir alanda yığılmaların olduğu (düşük karşıtlıklı) imgelerde kullanışlıdır
44/101
Histogram ModellemeHistogramlarda konum bilgisi bulunmaz!
45/101
Histogram Modelleme
Karanlık imge
Aydınlık İmge
46/101
Histogram Modelleme
Düşük karşıtlık
Yüksek karşıtlık
47/101
Histogram Modelleme (MATLAB)
imge=imread('tire.tif');h=imhist(imge);figure, imshow(imge);figure, imhist(imge);
0
200
400
600
800
0 50 100 150 200 250
48/101
Histogram Eşitleme(Histogram Equalization)
Histogram dağılımı dengesiz olan, belirli bölgelerde yığılma olan imgelerde kullanışlıdır. Bu tarz imgelerin karşıtlığı azdır ve histogram eşitleme sonrası daha iyi işlenebilir hale gelebilir.
Histogram eşitlemede amaç, renklerin frekanslarının histogram üzerinde bir yerde yığılmadan, düzgün dağılmasını sağlamaktır.
Histogram eşitleme işleminde, olasılık dağılımına bağlı olarak doğrusal olmayan dönüşüm gerçekleştirilir. Bu sayede bulunma olasılığı fazla olan piksellerin arası histogram üzerinde daha fazla açılır.
49/101
Histogram Eşitleme
50/101
Histogram Eşitleme (algoritma)
1. Yükseltme faktörünü şeklinde hesapla
2. İmgenin histogramını hesapla
3. İlk gri seviye eşleştirmesi için:c[0]=d x histogram[0] şeklinde hesapla
4. Diğer tüm gri seviyeleri için:c[i]=c[i-1] + d x histogram[i] şeklinde hesapla
5. İmgenin tüm pikselleri için:g(x,y)=c[f(x,y)] şeklinde hesapla.
sayisi nokta top.
255=d
51/101
Histogram Eşitleme (MATLAB)
imge = imread('tire.tif');esitenen = histeq(I);figure, imshow(imge), figure, imshow(esitlenen)
52/101
Histogram Değiştirme / Histogram Belirtme(Histogram Modification / Specification)
Önceki konuda anlatıldığı üzere, histogram eşitleme işlemi gerekli olan dönüşüm fonksiyonunu otomatik olarak belirliyordu.
Otomatik iyileştirme işe yarayacağı durumlarda bunu tercih etmek mantıklıdır. Çünkü eşitlemenin sonuçları öngörülebilir ve uygulaması kolaydır
Histogram belirtme, otomatik histogram dağılımının iyi sonuç veremeyeceği durumlar içindir. Bazen elde etmek istediğimiz imgenin sahip olması gereken histograma kendimiz karar vermek isteriz.
Histogram belirtme algoritmaları ile, belirlenmiş bir histogram elde etmek üzere kaynak imgede işlemler yapılır.
53/101
Histogram Değiştirme / Histogram Belirtme(Histogram Modification / Specification)
Önceki konuda anlatıldığı üzere, histogram eşitleme işlemi gerekli olan dönüşüm fonksiyonunu otomatik olarak belirliyordu.
Otomatik iyileştirme işe yarayacağı durumlarda bunu tercih etmek mantıklıdır. Çünkü eşitlemenin sonuçları öngörülebilir ve uygulaması kolaydır
Histogram belirtme, otomatik histogram dağılımının iyi sonuç veremeyeceği durumlar içindir. Bazen elde etmek istediğimiz imgenin sahip olması gereken histograma kendimiz karar vermek isteriz.
Histogram belirtme algoritmaları ile, belirlenmiş bir histogram elde etmek üzere kaynak imgede işlemler yapılır.
54/101
Uzaysal (Uzamsal) İşlemler(Spatial Operations)
55/101
Uzaysal İşlemler (Spatial Operations)
İmge, “uzaysal maske” adı verilen bir sonlu darbe cevabı ile konvolve edilir. Uzaysal maske yerine “konvolüsyon çekirdeği (convolution kernel)”, “konvolüsyon maskesi (convolution mask)”, “konvolüsyon penceresi (convolution window)” gibi isimler de kullanılmaktadır.
Bu işleme filtreleme de denir. İmgenin üzerinde sanki bir filtre varmış gibi düşünülüp her piksel yeniden hesaplanır. İlgili pikselin yeni değeri, komşu piksellerin değerleri de dikkate alınarak bulunur. Kullanılacak piksellerin ağırlıkları, yapılacak işleme bağlı olarak değişmektedir. Kenar bulma, gürültü giderme, imge keskinleştirme, yumuşatma gibi işlemlerde kullanılmaktadır.
56/101
Uzaysal Ortalama ve Uzaysal Alçak Geçiren Filtre(Spatial Averaging and Spatial Low-pass Filtering)
Ortalama veya ağırlıklı ortalamaya dayandığı için “Ortalama Filtreleri” olarak ta adlandırılır. Alçak geçiren filtre olarak adlandırılmasının sebebi de imgenin gri tonlarındaki keskin geçişleri azaltmasıdır.
57/101
Uzaysal Ortalama ve Uzaysal Alçak Geçiren Filtre
58/101
Uzaysal Ortalama ve Uzaysal Alçak Geçiren Filtre
59/101
Uzaysal Ortalama ve Uzaysal Alçak Geçiren Filtre
60/101
Uzaysal Ortalama ve Uzaysal Alçak Geçiren Filtre
MATLAB’ta Ortalama ve Gaussian filtresi: asil=imread('edebali.jpg'); asil=im2double(asil); %imgenin genlik değerlerini noktalıya çevir. % h1=fspecial('gaussian',10,2); %maske:10x10 ve sigma=2 gaussian=imfilter(asil,h1,'replicate'); % h2=fspecial('average',10); %maske:10x10 ortalama=imfilter(asil,h2,'replicate'); % figure,imshow(asil); figure,imshow(gaussian,[]); figure,imshow(ortalama,[]);
61/101
Uzaysal Ortalama ve Uzaysal Alçak Geçiren Filtre
62/101
Yönlü Yumuşatma(Directional Smoothing)
İmgeyi yumuşatırken kenarların aşırı bulanıklaşmaması için yönlü ortalama filtreleri kullanılabilir. Bu işlemde uzaysal ortalamalar her teta açısı için, birçok yönden hesaplanır.Matematiksel olarak şöyle ifade edilebilir:
∑ ∑∈
−−=θθ
θWlk
lnkmyN
nmv),(
),(1
):,(
63/101
Ortanca Filtresi(Median Filtering)
Komşu piksel değerleri önce sıraya konulur, sonra ortadaki değer alınır. Genellikle tek sayıda komşu seçilir. Eğer çift sayıda komşu kullanılırsa, ortada kalan iki pikselin aritmetik ortalaması kullanılır. Matematiksel ifadesi şu şekildedir:
{ }Wlklnkmynmv ∈−−= ),(),,(median),(
64/101
Ortanca Filtresi
65/101
Ortanca FiltresiÖRNEK
Aşağıdaki sayılar için ortanca filtresi uygulayalım (pencere genişliği 3 için):
g = [2,32,2,1,2,8,9] ç [0] = [2,2,32] = [2,2,32] => 2
ç [1] = [2,32,2] = [2,2,32] => 2ç [2] = [32,2,1] = [1,2,32] => 2ç [3] = [2,1,2] = [1,2,2] => 2ç [4] = [1,2,8] = [1,2,8] => 2ç [5] = [2,8,9] = [2,8,9] => 8ç [6] = [8,9,9] = [8,8,9] => 9
ç = [2,2,2,2,2,8,9] olarak bulunur.
66/101
Ortanca Filtresi
Matlab’ta ortanca filtresi I = imread('eight.tif'); J = imnoise(I,'salt & pepper',0.02); % tuz &
biber gürültüsü ekle K = medfilt2(J); imshow(J) figure, imshow(K)
67/101
Ortanca Filtresi
68/101
Keskinlik Maskelemesi ve kenar Koyulaştırma(Unsharp Masking and Crispening)
Resimdeki ayrıntıları, keskin geçişleri belirginleştirmek, bulanıklaştırılmış görüntülerdeki ayrıntıları yeniden ortaya çıkarmak için kullanılır. Endüstriyel ve askeri alanda, tıbbi çalışmalarda ve diğer birçok alanda yararlıdır. Keskinleştirme, sayısal farkların alınması ile gerçekleştirilir (diferansiyel, türev). Fark alma, resimdeki kenarları, süreksizlikleri (gürültü gibi) belirginleştirir (keskinleştirir) ve küçük gri düzeyi değişimleri olan resim bölgelerini solgunlaştırır.
69/101
Keskinlik Maskelemesi
Genelde endüstride baskı alırken kenarları keskin göstermek için kullanılır. Resimden bulanıklaştırılmış hali çıkarılınca keskinleştirme sağlanır. Aynı şekilde, dereceli veya yüksek geçiren bir işaret eklenerek te elde edilebilir. Matematiksel ifadesi şöyledir:
),(),(),( nmgnmunmv λ+=
70/101
Keskinlik Maskelemesi
Matlab’ta, Keskinlik Maskelemesi Örneği: kaynak = imread('moon.tif'); h = fspecial('unsharp'); I2 = imfilter(kaynak,h); imshow(kaynak), title('Orijinal imge') figure, imshow(I2), title('Filtrelenmiş imge')
71/101
Keskinlik Maskelemesi
72/101
Keskinlik Maskelemesi
Matlab’ta bulanıklık, hareket bulanıklığı ve keskinleştirme I = imread('moon.tif'); subplot(2,2,1);imshow(I);title('Orijinal İmge'); H = fspecial('motion',50,45); MotionBlur = imfilter(I,H); subplot(2,2,2);imshow(MotionBlur);title('Hareket Bulanığı
Yapılmış'); H = fspecial('disk',10); blurred = imfilter(I,H); subplot(2,2,3);imshow(blurred);title('Bulanıklaştırılmış'); H = fspecial('unsharp'); sharpened = imfilter(I,H); subplot(2,2,4);imshow(sharpened);title('Keskinleştirilmiş');
73/101
Uzaysal Alçak-Geçiren, Yüksek Geçiren ve Bant Geçiren Filtreleme
Alçak geçiren filtreler genellikle gürültü temizlemek ve enterpolasyon için kullanılırlar. Yüksek geçiren filtreler ise imgeyi keskinleştirmek ve kenarları bulmak için kullanılır. Bant geçiren filtreler de kenarların iyileştirilmesinde, imgedeki gürültülerde farklı ayarlarda yüksek geçiren gibi kullanılabilir.
74/101
Uzaysal Alçak-Geçiren, Yüksek Geçiren ve Bant Geçiren Filtreleme
75/101
İmge Büyütme(Magnification and Interpolation [Zooming] )
Görüntü işlemede sıklıkla bir imgenin bir bölümünün daha yakından görülmesi gerekmektedir. Bu işleme imge büyütme adı verilir. Aşağıda farklı imge büyütme teknikleri görülmektedir.
76/101
Replikasyon (Replication)
Bir imgede satırlarda her pikselin tekrarlanması ve sonra satırın da tekrarlanması şeklinde yapılır. Başka bir deyişle bu; MxN boyutunda bir imgede önce satır ve sütunların arasını açarak 2Mx2N boyutunda bir matris elde etmek ve sonra bu sonucu aşağıda verilen H dizisi ile konvolve etmek anlamına gelmektedir.
=
11
11H
77/101
Replikasyon
78/101
Replikasyon
79/101
Doğrusal Çoğullama(Linear Interpolation)
Doğrusal çoğullama yönteminde önce her satır ve sütun için iki piksel arasına bir 0 eklenerek önce imgenin piksel sayısı artırılır. Sonra her 0 olan piksel için önce satırda, sonra da sütunlarda iki yan komşusunun ortalaması alınarak bu 0 yerine yazılır.
80/101
Doğrusal Çoğullama
81/101
Dönüşüm İşlemleri(Transform Operations)
Dönüşüm işlemleri iyileştirme tekniklerinde, dönüştürülmüş imge üzerinde hafızasız işlemler uygulanır sonra ters dönüşüm yapılır.
82/101
Dönüşüm İşlemleri
83/101
Genelleştirilmiş Doğrusal Filtreleme(Generalized Linear Filtering)
Genelleştirilmiş doğrusal filtrelemede, hafızasız dönüşüm alan işlemi piksel piksel çarpılır:
Burada, g(k,l) bir “bölgesel maske” olarak adlandırılır.
),(),(),( lkvlkglkv =•
84/101
Genelleştirilmiş Doğrusal Filtreleme
85/101
Genelleştirilmiş Cepstrum ve Homomorfik Filtreleme(Generalized Cepstrum and Homomorphic Filtering)
Cepstrum sözcüğü Spectrum (tayf) sözcüğünün ilk hecesinin ters çevrilmesi ile elde edilmiştir. Bir spektrumun ters Fourier dönüşümüne karmaşık cepstrum denir.
Yüksek dinamik aralık bulunan bir imgede, mesela güneşte çekilen ve sert ışık ve sert gölge bulunan fotoğraflarda, homomorfik filtreler kullanışlıdır.
Başka bir deyişle ışık dağılımın dengeli olmadığı imgelerde kullanışlıdır.
86/101
Genelleştirilmiş Cepstrum ve Homomorfik Filtreleme
87/101
Çoğul Tayflı İmge İyileştirme(Multispectral Image Enhancement)
Çoğul tayflı imge (multispectral), birden fazla farklı renk tayfına sahip imgenin bir araya gelmiş halidir. Ana imgeyi oluşturan her alt imgenin frekans aralığı (bant) farklıdır. Tüm bu alt imgeler bir araya geldiğinde tek bir imge oluşturur. Genellikle 2–12 arasında alt imge kullanılır.
88/101
Çoğul Tayflı İmge İyileştirme
89/101
Çoğul Tayflı İmge İyileştirmeYoğunluk Oranları
Farklı bantlar arasında yoğunlukların oranlanması şeklinde uygulanır. Aşağıda örnek yoğunluk oranı uygulaması gösterilmiştir.
90/101
Çoğul Tayflı İmge İyileştirme
91/101
Çoğul Tayflı İmge İyileştirme
Logaritmik Oranlama Farklı bantlardaki imgelerin logaritmik
oranlanması şeklinde kullanılır. Yoğunluk oranı için verilmiş olan eşitliğin iki tarafının logaritması alınarak elde edilir. Aşağıda görülmektedir:
),(log),(loglog ,, nmunmuRL jijiji −==∆
92/101
Çoğul Tayflı İmge İyileştirme
Asıl Bileşenler Ana imgeyi oluşturan farklı bantlarda I adet alt imgede
bulunan her (m,n) noktasının Ix1 şeklinde vektör olduğunu varsayalım:
Bu noktaların genlik değerlerine göre sıralanması şeklinde dizi oluşturularak farklı bantlarda imgelere ayrıştırılabilir. Bu bantlardan ilk sırada gelenler ana imgeyi oluşturmada daha etkili iken sonrakilere doğru etki gittikçe azalır.
=
),(
),(
),(
),( 2
1
nmu
nmu
nmu
nmu
I
93/101
Çoğul Tayflı İmge İyileştirme
94/101
Sahte Renklendirme(Falsecolor and Pseudocolor)
Falsecolor, bir imgeyi oluşturan renk paletindeki her bir renk değerin farklı bir değere eşlenmesidir.
Uygulamada insanlara daha ilgi çekici (hatta çoğunlukla doğal görünmeyen) görünüm sunmak için kullanılır.
Örneğin bu yöntemle mavi gökyüzü kırmızı yapılabilir veya çimenler mavi yapılabilir. Benzeri bir uygulama alanı da bir fotoğraf içerisindeki özel bir nesnenin daha dikkat çekici hale getirilmesi için kullanılmasıdır.
95/101
Sahte Renklendirme(Falsecolor and Pseudocolor)
Pseudocolor, genellikle siyah-beyaz bir imgede dikkat çekilmek istenen kısmın görünürlüğünü artırmak amacıyla kullanılır.
Veya siyah beyaz bir imgeyi genel olarak renklendirmek için de kullanılır.
Bunu sağlamak için imge öncelikle farklı bantlarda bileşenlere ayrılır. Daha sonra her bir bileşen bir renk uzayından bir renge eşleştirilir. Örneğin imgeden elde edilen üç farklı bantta bileşen, RGB renk uzayından kırmızı, yeşil ve mavi renge eşleştirilebilir.
96/101
Sahte Renklendirme
97/101
Sahte Renklendirme
98/101
Renkli İmge İyileştirme(Color Image Enhancement)
Renkli imge iyileştirmede siyah beyaz olanlara ek olarak renk dengesi (color balance) iyileştirmesi ve renk karşıtlığı (color contrast) gibi uygulamalar da yapılmaktadır.
Renkli imge iyileştirmenin zor olmasının tek nedeni eklenen verilerin boyutu değil, aynı zamanda renk algısındaki karmaşıklıktır.
99/101
Renkli İmge İyileştirme
100/101
Özet (Summary)
İmge iyileştirmede en önemli nokta, kullanılacak tekniklerin objektif olmamasıdır. İmge iyileştirme kullanılacak olan her uygulamada, o uygulamaya özel teknikler planlanmalıdır. Bu nedenle, modern imge iyileştirme sistemlerinde işlem sırasında parametrelerin değiştirilmesine olanak sağlayan etkileşimli uygulamalar geliştirilmektedir.
İmge iyileştirmede her zaman için değişmeyen kural: “en iyi sonuç deneme yanılma yöntemiyle bulunur”.
101/101
Kaynaklar Anil K. Jain, “Fundamentals of Digital Image Processing” Li Tao, Ming-Jung Seow and Vijayan K. Asari. “Nonlinear Image Enhancement to Improve Face
Detection in Complex Lighting Environment” Sarp Ertürk, “Digital Image Processing” Rafael C. Gonzalez, “Digital Image Processing” T. Acharya, A.Ray – “Image Processing - Principles and Applications” John C. Russ – “The Image Processing Handbook” Jae S. Lim, “Two Dimensional Signal And Image Processing” William K. Pratt – “Digital Image Processing” Bernd Jähne – “Digital Image Processing” Mathworks – “Image Processing Toolbox User's Guide” Gérard Blanchet, Maurice Charbit – “Digital Signal and Image Processing Using MATLAB” Gonzalez & Woods & Eddins – “Digital Image Processing Using MATLAB” Hany Farid – “Fundamentals of Image Processing” Thomas Klinger - “Image Processing with LabVIEW and IMAQ Vision” S.G.Hoggar – “Mathematics Of Digital Images” http://yzgrafik.ege.edu.tr/~aybars/ip/ http://www.ehm.yildiz.edu.tr/dersweb/vedat/vedatnot.htm http://www.yildiz.edu.tr/~bayram/sgi/saygi.htm http://www.emrahustun.com http://www.bilgisayarkavramlari.com http://www.icaen.uiowa.edu/~dip/LECTURE/ http://eeweb.poly.edu/~onur/lectures/lectures.html Ergin Altıntaş - Örüntü Tanıma Dersleri Oya Örnek (Selçuk Üniversitesi)- Ders Notları
BİTMEZ…
Murat Özalp