24.09.2014
İLERİ GÖRÜNTÜ
İŞLEME
Ders-1
Elektromanyetik Spektrum
Görünür Bölge
700 nm
400 nm
Temel Kavramlar
(Prof. Dr. Sarp ERTÜRK)
9/24/2014
2
Hazırlayan: M. Kemal GÜLLÜ
Sayısal İmge Gösterimi

Sayısal İmge Gösterimi
f  x, y  imgesi örneklendiğinde M satır ve N sütunluk bir sayısal imge oluşur.

Bazen sayısal imge gösterimi:
ai , j  f  x  i, y  j   f  i, j 


Resim elemanı
Sayısallaştırmda genellikle uzamsal boyutlar önemli değildir.
Donanımsan açıdan asıl önemli olan, gri ton seviyesinin 2’nin kuvveti olmasıdır.
(piksel)
L  2k
0, L  1 : imgenin dinamik aralığı (dynamic range).
9/24/2014
3
Sayısal İmge Gösterimi

9/24/2014
4
Sayısal İmge
Sayısal imgeyi saklamak için gerekli olan bit sayısı:

Uzamsal çözünürlük:
64x64
b  M  N k
128x128
256x256
M N:
512x512
1024x1024
9/24/2014
5
9/24/2014
6
1
24.09.2014
Sayısal İmge

Bit derinliği:
devirme
B  A
B  j , i   A(i, j )
 i  0,..., N  1 , j  0,..., M  1
9/24/2014
L=8
L=7
L=6
L=5
L=4
L=3
L=2
L=1
7
düşeyde çevirme
24 Eylül 2014
8
döndürme
• 90°, 180 °, 270 ° gibi açılarda döndürme işlemlerini kolayca
gerçekleştirebiliriz.
• Bu açıların dışındaki değerlerde ise açısal döndürme işlemlerinin (Sin x,
Cos x değerlerini kullanarak) yapılması gerekmektedir.
B  i, M  j  1  A(i, j )
 i  0,..., N  1 , j  0,..., M  1
• Bunun yerine, Matlab hazır işlevlerinden “imrotate” kullanılabilir.
Ir=imrotate(I,açı,yöntem);
açı:
saat yönünün tersi dönülecek açı değeri.
yöntem: döndürme işlemi sonrasında yeni piksel değerlerinin
hesaplanacağı aradeğerleme yöntemi.
‘nearest’, ‘bilinear’, ‘bicubic’,
Örn;
Ir=imrotate(I,45, ‘bilinear’);
24 Eylül 2014
kırpma
9
24 Eylül 2014
öteleme
B  i, j   A(n1  i, n2  j )
 i  0,..., m1  1 , j  0,..., m2  1
 n1 , n2   başlangıç noktası
 m1 , m2   pencere boyutları
24 Eylül 2014
10
B  i, j   A(i  n1  1, j  n2  1)
 i  n1 ,..., N , j  n2 ,..., M 
 n1 , n2   başlangıç noktası
11
24 Eylül 2014
12
2
24.09.2014
öteleme
boyut değiştirme-yakınlaştırma
Öteleme işlemi yapan bir Matlab işlevi yazalım:
function [B]=my_otele(A,n1,n2)
• Yakınlaştırma, düşük piksel boyutlu bir imgenin piksel boyutunun
yazılımsal olarak arttırılmasıdır.
[w,h]=size(A);
• Sayısal yakınlaştırma (digital zoom).
B=zeros(w,h);
( , );
for i=n1:w
for j=n2:h
B(i,j)=A(i-n1+1,j-n2+1);
end
end
Burada for döngüleri yerine tek bir satır yazarak aynı işlem yapılabilir.
?
24 Eylül 2014
13
boyut değiştirme-yakınlaştırma
14
boyut değiştirme-yakınlaştırma
• Hangisi daha görünür?
• Boyut büyültmede daha yumuşak geçişler için:
24 Eylül 2014
24 Eylül 2014
15
boyut değiştirme-uzaklaştırma
24 Eylül 2014
16
boyut değiştirme
• Matlab ile boyut değiştirme için “imresize” adındaki işlev
kullanılabilmektedir.
• Birden fazla pikselin değeri çeşitli matematiksel işlemlerden geçirilerek bir
piksele atanır.
Is=imresize(I,oran,yöntem);
oran
: giriş
i i imgesinin
i
i i boyutunun
b
değişme
d i
oranını verir.
i oran>11
(büyütme), oran<1 (küçültme).
yöntem
: boyut değiştirmede kullanılacak aradeğerleme yöntemi.
Örn;
Is=imresize(I,0.97, ‘bicubic’);
24 Eylül 2014
17
24 Eylül 2014
18
3
24.09.2014
İmge oluşturma
İmge oluşturma

(128,128) merkezli, yarıçapı 80 piksel beyaz
bir daire
256
256
24 Eylül 2014
19
İmge oluşturma

???
24 Eylül 2014
20
Ortalama ve Değişinti
A
B
X
C=

Bir imgenin örnek ortalaması (sample mean):

Örnek değişintisi (sample variance):

Örnek standart sapması (sample std. dev.):
/ 255
24 Eylül 2014
21
Nokta İşlemleri
24 Eylül 2014
22
Parlaklık Ayarı
• Piksellerden oluşan imge uzayına uzamsal düzlem (spatial domain) denir.
g  x, y   T  f  x, y  
• Uzamsal düzlem işlemleri aşağıdaki gösterimle ifade edilmektedir.
 f  x, y   b
b>0 ise parlaklık artar
b<0 ise parlaklık azalır
g  x, y   T  f  x, y  
s  r b
işlev
• Buradaki T işlevi, doğrudan (x,y) pikselini işleyebileceği gibi, (x,y)
pikselinin komşuluklarını da hesaba katabilir.
24 Eylül 2014
23
24 Eylül 2014
orjinal
b = -50
b = +50
24
4
24.09.2014
Karşıtlık (Kontrast) Ayarı
Parlaklık+Karşıtlık Ayarı
g  x, y   T  f  x, y  
 af  x, y 
Kısmi-doğrusal dönüşüm
a>1 ise karşıtlık artar
a<1 ise karşıtlık azalır
s  ar
24 Eylül 2014
orjinal
a = 0.5
a=2
25
Eşikleme
24 Eylül 2014
26
Olumsuzlama
g
g
255
255
sr
sr
Sonuçta ikili (binary) imge oluşuyor.
s  Lr
T
 L  255
f
255
24 Eylül 2014
255
27
Histogram
f
24 Eylül 2014
28
Histogram
• Her bir gri ton seviyesinin ([0,255]) imgedeki bulunma sıklığını (frekansını)
gösterir.
• Yani imgedeki piksellerin dağılımı hakkında bilgi verir.
• İmge pekiştirmede sıkça kullanılmaktadır.
h  rk   nk
rk : k . gri seviye
nk : k . gri seviyedeki toplam piksel sayısı
• Histogram normalize edildiğinde ise gri seviyelerin imge içerisindeki
bulunma olasılıklarını verir.
imgedeki toplam
piksel sayısı
İlgili seviyenini
p  rk   nk / n
olasılık değeri
gri ton seviyesi
MATLAB imhist işlevi
k  0,1,..., L  1
24 Eylül 2014
29
24 Eylül 2014
30
5
24.09.2014
Histogram
Histogram
Karanlık imge
Parlak imge
Piksel konum bilgisi bulunmaz!
24 Eylül 2014
31
Histogram
24 Eylül 2014
32
Histogram Eşitleme
• Amaç: İmgedeki düşük görünürlüğü iyileştirmek.
• Olasılık dağılımına bağlı olarak doğrusal olmayan dönüşüm gerçekleştirilir.
Karşıtlığı düşük
imge
• Bu sayede, bulunma olasılığı yüksek pikseller arası fazlaca açılırken, düşük
olasılıklı seviyeler birbirine daha yakın hale gelir.
 cdf v   cdf min

cdf v   round 
 L  1
 M  N   cdf min

Karşıtlığı yüksek
imge
24 Eylül 2014
33
Histogram Eşitleme
24 Eylül 2014
34
Piksel Komşuluk İşlemleri
• İmgenin olasılık dağılım fonksiyonu doğrusallaştırılmaktadır.
• Her bir piksel için yeni bir değer hesaplanmaktadı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.
Doğrusallaştırılmış
cdf
• Kenar bulma, gürültü giderme, imge keskinleştirme,
yumuşatma gibi işlemlerde kullanlmaktadır.
• Hesapsal yükü, nokta işlemlerine göre oldukça fazla
olabilmektedir.
24 Eylül 2014
35
24 Eylül 2014
36
6
24.09.2014
Evrişim (Convolution)
Evrişim (Convolution)
• İki fonksiyonun etkileşimi olarak ifade edilebilir.
• Evrişimin ayrık zamanlı 2-boyutlu ifadesi:

f *g 
g  x, y   k * f
 f  g  t    d


• İmge (işaret) işlemede sıkça kullanılmaktadır.
m
n
  k  i , j  f  x  i, y  j 
i  m j  n
• Sistemin, giriş işaretine etkisini vermektedir.
k , evrişim çekirdeği (convolution kernel)
f , giriş imgesi
g , çıkış imgesi
 x, y  ,
 2m  1, 2n  1 ,
ilgili piksel konumu
çekirdeğin yatay ve düşey uzunluğu
• Evrişim çekirdeği (kernel) genelde , evrişim maskesi (convolution mask) veya
evrişim penceresi (convolution window) olarak da adlandırılabilmektedir.
24 Eylül 2014
37
Evrişim (Convolution)
24 Eylül 2014
38
Evrişim (Convolution)
g  x, y   k * f

m
n
  k  i, j  f  x  i, y  j 
i  m j  n
1 0  1 
* 2 0  2
1 0  1
Evrişim
çekirdeği
Giriş imgesi
Çıkış imgesi
• MATLAB’da 2-boyutlu evrişim conv2 işlevi ile yapılabilmektedir.
• Bunun yanında imge süzgeçlerken genellikle imfilter işlevi kullanılmaktadır.
24 Eylül 2014
39
Evrişim (Convolution)
24 Eylül 2014
40
Evrişim (Convolution)
Evrişim işleminde kenar bölgelerindeki taşma durumunda olası işlemler:
• Kenar bölgelerini işlememe,
• Kenar bölgelerini kesme,
• Kenar bölgelerinde evrişim çekirdeğini kırpma,
• Kenar bölgelerini
g
aynen
y
kopyalama
py
(imge
( g boyutları
y
büyür),
y ),
0 0 0
0 1 0


 0 0 0 
Delta fonksiyonu
0 0 0 
0 1 0 


 0 0 1
Kaydır ve çıkart
(Birim Dürtü)
• Kenar bölgelerini aynalayarak kopyalama (imge boyutları büyür)...
Hesapsal yük:
•  m, n  boyutlu bir evrişim çekirdeği kullanıldığında bir piksel için çıkış
değerinin hesaplanmasında gerekli işlem sayısı:
 m  n  çarpma    m  n  1 toplama 
24 Eylül 2014
41
24 Eylül 2014
42
7
24.09.2014
Evrişim (Convolution)
Uzamsal Frekans Kavramı
• İmgede pikseller arasındaki yumuşak geçişler uzamsal düşük frekanslara
karşılık gelir.
 1/ 8 1/ 8 1/ 8
 1/ 8
1
1/ 8


 1/ 8 1/ 8 1/ 8
Kenar bulma
• Sert geçişler (kenarlar, nesne sınırları...) uzamsal yüksek frekanslara karşılık
gelir.
  k / 8 k / 8  k / 8
  k / 8 k  1  k / 8


  k / 8 k / 8  k / 8
Kenar pekiştirme
24 Eylül 2014
43
Evrişim (Convolution)-Yumuşatma
• İmgedeki gürültü etkilerini azaltır.
1
1

1/ 25  1

1
1
• Kenarları yumuşatır.
44
Evrişim (Convolution)-Yumuşatma
1 1 1
1/ 9  1 1 1


1 1 1
• En temel evrişim çekirdeğidir.
24 Eylül 2014
• Çekirdek boyutunun yumuşatmaya etkisi:
1 1 1 1
1 1 1 1
1 1 1 1

1 1 1 1
1 1 1 1
24 Eylül 2014
Orjinal imge
45
Ortanca (Median) Süzgeç
24 Eylül 2014
3x3
9x9
15x15
5x5
35x35
46
Ortanca (Median) Süzgeç
• Süzgeçleme işlemi, pencere içerisindeki piksellerin sıralanması temelinde
yapmaktadır.
• Tuz ve biber gürültüsünün (salt and pepper noise) ortanca süzgeç ile
giderilmesi
• Doğrusal olmayan bir süzgeçlemedir.
• Dürtü ve tuz-biber gürültülerinin giderilmesinde etkin başarım sağlamaktadır.
• İmgenin kenar bölgelerini bozmaktadır.
25, 28, 29, 34, 38, 41, 45, 46, 56
Gürültü
eklenmiş imge
Yeni piksel değeri
• MATLAB’da imgeye gürültü eklemek için imnoise işlevi kullanılmaktadır.
24 Eylül 2014
47
3x3 ortalama
süzgeç ile
gürültü
giderme
3x3 ortanca
süzgeç ile
gürültü
giderme
• MATLAB’da ortanca süzgeçleme için medfilt2 işlevi kullanılmaktadır.
24 Eylül 2014
48
8
24.09.2014
RGB Renk Modeli
RGB Modeli
Her pikselin kırmızı, yeşil ve mavi
renk bileşeni için bir değeri mevcuttur.
B
Genelde her bileşenin gösterimi için
8 bit kullanılmaktadır.
1 blue
white
cyan
0
1
magenta
green
1
black
Kids image
“Kids”
Red color components of the image
Green color components of the image
Blue color components of the image
R
red
yellow
G
24 Eylül 2014
49
HSI Modeli



24 Eylül 2014
HSI Modeli
H (hue): renk
S (saturation): doygunluk
I (intensity): ışıklılık
İlk değer baskın renk (hue) değerini göstermektedir (0.0:kırmızı, 0.33 yeşil,
0.67 mavi, 1.0: kırmızı). İkinci değer rengin doygunluğunu kodlamakatadır
(0.0: renksiz (gri) 1.0: canlı renk (grisiz). Son değer de ışıklılığı göstermektedir
(0.0: siyah 1.0: aydınlık).
24 Eylül 2014
50
51
24 Eylül 2014
“Kids” image
Hue components of the image
Saturation components of the image
Intensity components of the image
52
9
Download

İLERİ GÖRÜNTÜ İŞLEME Ders-1