Upload
seyfullah-demir
View
3.067
Download
0
Embed Size (px)
Citation preview
Sayısal Görüntü Temelleri(Digital Image Fundamentals)
Seyfullah Demir
Hacettepe Ü[email protected]
1
Görüntüleme Süreci(Imaging Process)
• Işık 3 boyutlu yüzeylere çarpar.
• Yüzeyler ışığı yan-sıtır.
• Sensör, ışık enerjisi-ni alır.
• Işığın şiddeti önem-lidir.
• Açılar önemlidir.
• Materyal önemlidir.
2
“Shapiro and Stockman”dan uyarlanmıştır
Görüntü Elde Etme(Image Acquisition)
3“Gonzalez and Woods”dan uyarlanmıştır
Örneklem Alma ve Niceleme(Sampling and Quantization)
• Uzaysal koordinatlar ve genlik değerlerinin sayı-sallaştırılmasını bir f(x,y)fonksiyonu ile ifade ede-lim.– Görüntünün birimlerine
uzaysal koordinatlarını (x,y) atama işlemiörneklem alma(örnekleme),
– Her birime atanacak gen-lik değerini belirleme iş-lemi ise niceleme olarak düşünülebilir.
4“Gonzalez and Woods”dan uyarlanmıştır
Örneklem Alma ve Niceleme
• Görüntü eşit kare-lere bölünmüş ve sayısal görüntü-nün koordinatlarıbelirlenmiş(örnekleme)
• Sayısal görüntü-deki her bir biri-me orijinal karşı-lığına yakın birgenlik değeri a-tanmış.(niceleme)
5“Gonzalez and Woods”dan uyarlanmıştır
Sayısal Görüntülerin Gösterimi(Representing Digital Images)
6
• Örnekleme ve nicele-me sonucu sayılardan oluşaniki boyutlu bir matris oluşur.
• Bu durumda görüntüler f(x,y) formunda iki boyutlufonksiyonlarla ifade edilebi-lirler.
• (x,y) koordinatlarında fonk-siyonun alacağı değere nice-leme işlemiyle karar verilir.
“Shapiro and Stockman”dan uyarlanmıştır
Sayısal Görüntülerin Gösterimi
• Bir sayısal görüntüde, koordinatlar ve koordinatlara karşılık gelen değerler, kesikli niceliklerdir.
• Bu yüzden görüntüler , tamsayı değerlerden oluşan iki boyutlu diziler olarak gösterilebilir. I[i,j] (ya da I[r,c]).
• *i,j+ koordinat bilgisini gösterirken, I*i,j+ değeri bu koordinata karşılık gelen pikselin yoğunluğunu gösterir.
• Tek renkli yoğunluğu belirtmek için gri düzeyi(gray level) terimi kullanılır.
7“Shapiro and Stockman”dan uyarlanmıştır
Sayısal Görüntülerin Gösterimi
• Görüntünün sayısallaştırılması aşamasında iki boyutlu dizinin boylarına ve her bir piksel için kaç farklı gri düzeyine izin verileciğine karar verilmesi gerekir.
• Bu değerler genelde 2’nin kuvveti olan tamsayılardan seçilir.– M ve N görüntü dizisinin boyları ve k da bir pikselin yoğunluğunu
göstermek için kullanılan bit sayısı olmak üzere;
G = gri düzey sayısı
– Her bir düzey bir gri ölçeğine (gray scale) sahiptir ve düzeyler arasındaki geçiş düzenli bir şekilde dağılır(L adet gri ölçeği).
– Örneğin, izin verilen maksimum gri düzeyi 256 olarak seçildiğinde, 0 en koyu rengi(siyah) ve 255 en parlak rengi(beyaz) gösterir.
8
Uzaysal Çözünürlük(Spatial Resolution)
• Ayrıntıların fark edilebildiği en küçük çözünürlük.
• Örneklem alma, uzaysal çözünürlüğe karar vermede birincil etkin faktördür.
• Uzaysal çözünürlük, bir aralık genişliğinde gösterilebilen doğru çifti sayısıyla ifade dilir.
• Gerçek dünya uzayında uzaysal çözünürlük:
doğru genişliği: W cm
boşluk genişliği: W cm
uzaysal çözünürlük = 1 / 2W (doğru çifti / cm)
9
Uzaysal Çözünürlük(Spatial Resolution)
a b
• (a)20km/pixel , (b)10km/pixel
• http://www.dca.fee.unicamp.br/dipcourse/html-dip/c2/s3/front-page.html
10
Gri Düzey Çözünürlüğü(Gray Level Resolution)
• Ayrıntıların fark edilebildiği en küçük gri düzey sayısı
• Gri-düzey sayısı L genelde 2’nin kuvvetidir.
• Düzey sayısına Analog -> Sayısal çevirici tarafından karar verilir.
11
Uzaysal Çözünürlük – Gri Düzey Çözünürlüğü Örnekler
• Gri düzey sayısı sabitken, uzaysal çözünürlük azaltılmış
• 1024*1024 görüntüden 32*32 ye kadar alt örneklemleme yapılmış.
• 8-bit görüntü – 256 gri düzeyi
12“Gonzalez and Woods”dan uyarlanmıştır
Uzaysal Çözünürlük – Gri Düzey Çözünürlüğü Örnekler
• Gri düzey sayısı sabitken, uzaysal çözünürlük arttırılırmış
• 32*32,64*64,…,512*512 görüntüler 1024*1024 çözünürlüğe sahip olacak şekilde yeniden örneklenmiş
13“Gonzalez and Woods”dan uyarlanmıştır
Uzaysal Çözünürlük – Gri Düzey Çözünürlüğü Örnekler
• Üst sıradakiler 128x128, 64x64, 32x32 pikselden 1024x1024 piksele en yakın komşu gri-düzey interpolasyon* yöntemiyle büyütülmüş
• Alt sıradaki görüntüler ise aynı sırada bu kez bilineer interpolasyon* yöntemi kullanılarak büyütülmüş
• * Bu yöntemler örnek kodla açıklanacaktır. 14“Gonzalez and Woods”dan uyarlanmıştır
Uzaysal Çözünürlük – Gri Düzey Çözünürlüğü Örnekler
• Bu örnekte, uzaysal çözünürlük sabit tutulurken gri-düzey çözünürlüğü azaltılmış
• Sol üst görüntüde 8-bit (256 düzey) kullanılırken en sağ-alt görüntüde sadece 1-bit (2 düzey) kullanılmış
15“Gonzalez and Woods”dan uyarlanmıştır
Örnekleme ve Niceleme
• Orijinal görüntü kalitesine optimum düzeyde yaklaşmak için – kaç tane gri-düzeyi kullanılmalı?
– Ne kadar(hangi sıklıkta) örneklem alınmalı?
• Bir görüntünün kalitesi kullanılan piksel ve gri-düzey sayısına göre belirlenir.
• Bu parametrelerin değerleri arttıkça sayısal görüntünün kalitesi orijinal görüntüye bir o kadar yaklaşır.
• Ama, M,N ve k değerleri arttıkça görüntüyü saklamak ve elde etmek için gereksenen ihtiyaçlar da doğru orantılı olarak artar.
16
Seçilen Görüntü Kalitesi & Çözünürlük
• Aynı nesnenin pek çok farklı görüntüsü aşağıdaki seçimlerle elde edilebilir.– N ve M değerlerini değiştirerek (Görüntü dizisinin boy değerleri)
– k değerini değiştirerek (bir pikselin yoğunluğunu ifade etmek için kullanılan bit sayısı)
– Her ikisini de değiştirerek
• Bu problem eştercih eğrileriyle(isopreference curves) incelenir– Huang 1965
17
Eştercih Eğrileri(Isopreference Curves)
• Her nokta, tabloda karşılık gelen k gri düzey sayısına ve NxN piksel sayısına sahip olan bir görüntüyü gösterir.
• Bir eştercih eğrisi boyunca uzanan noktalarakarşılık gelen görüntüler, aynı kaliteye sahip gö-rüntüleri ifade eder.
• Yukarıya veya sağa kaydırılmış eğriler görüntükalitesi artırılmış görüntülere karşılık gelir.
• N ve k değerleri arttıkça görüntü kalitesi de artar
18“Gonzalez and Woods”dan uyarlanmıştır
Eştercih Eğrileri(Isopreference Curves)
• Bazen, sabit bir N değeri kullanılıyorken, k değeri azaltılarak(zıtlık (contrast) arttırılarak) da kalite arttırılabilir.
• Daha yüksek düzeyde ayrıntı istenildiğinde daha dik eğrilerkullanılmalıdır.
19
Görüntü İyileştirme(Image Enhancement)
• Görüntü iyileştirme işlemi , genelde özel amaçlı bir uygulamada kullanılmak üzere, hazır bir görüntüden birlikte daha uygun çalışılabilecek başka bir görüntü elde etmek için uygulanır.
• İyileştirme işlemi için iki farklı teknik söz konusudur.
– Uzaysal tanım kümesi(spatial domain)– Frekans tanım kümesi(frequency domain)
• İyileştirme yapmak için ortak sebepler– Görsel kaliteyi artırmak
– Makine tanıma doğruluğunu artırmak
20
Görüntü İyileştirme
21
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
• Gri Düzey Dönüşümleri(Yoğunluk Dönüşümleri)(Gray Level Transformations – Intensity Transformations)
- Gama düzeltmesi(gama correction)
- Logaritma dönüşümü(log transformation)
- Zıtlık esnetme(contrast stretching)
- Gri düzey dilimleme(gray(intensity) level slicing)
- Bit düzlem dilimleme(bit plane slicing)
• Uzaysal Fitreleme(Spatial Filtering – Neighbourhood processing – spatial convolution)
22
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
23
• Görüntü iyileştirme için kullanılan bazı gri düzey dönüşüm fonksiyonları
“Gonzalez and Woods”dan uyarlanmıştır
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
• Dönüştürme Fonksiyonu (transformation function):
• g(x,y) = T[f(x,y)]
• Dönüştürme fonksiyonu T’nin ürettiği değer, yalnızca (x,y) noktasının komşuluğundaki noktaların piksel değerlerine bağlıdır.
24
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
• Nokta işleme (point processing) : Herhangi pir piksel değerindeki dönüşüm yalnızca o noktanın yoğunluk değerine bağlıdır.
• Gri düzey görüntüler ile çalışırken aşağıdaki formdaki dönüştürme fonksiyonunu(transformation function) kullanacağız.– s = T(r)
– Noktanın yeni değeri yalnızca pikselin eski değerine bağlı olduğu için; başka bir deyişle (x,y) koordinatından bağımsız olduğu için yukarıdaki gibi yazılabilir
– r değeri pikselin orijinal değeri, s ise pikselin iyileştirme işleminden sonraki değeridir.
25
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
• Gama düzeltmesi:
• Belirli bir alt sınırın altında bir gir-diyi bir alçak çıktı düzeyine ve be-lirli bir üst sınırın üstündeki girdi-yi de bir üst çıktı düzeyine atar
• Alt ve üst düzey sınırlar arasındaki girdileri ise alt ve üst sınır çıktı dü-zeyleri arasındaki düzeylerle a-nahtarlar.
26“Gonzalez and Woods”dan uyarlanmıştır
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
Gama düzeltmesi devam..
• 1 den küçük gama değerleri için üretilen görüntü çıktısı , girdiye göre daha parlak bir görüntü olurken; 1 den büyük gama değerlerinde daha koyu bir görüntü çıktısı elde edilir.
• gama değeri 1 olarak seçildiğinde ise doğrusal anahtarlama yapılır. Gama düzeltmesinin bu şekilde kullanımı, bir görüntüdeki ilgilenilen belirli bir yoğunluk kuşağını öne çıkarmak için çok kullanışlıdır.
27
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
28
• (a) : orijinal görüntü
• (b) : c=1, gama=0.6 ilegama düzeltmesi
• (c) : c=1, gama=0.4 ile gama düzeltmesi
• (d): c=1, gama=0.3 iledüzeltmesi
• Hatırlatma: gama<1 içindaha parlak bir görüntü el-de edilir. Gama değerini kü-çülttükçe daha parlak görün-tüler elde ederiz
“Gonzalez and Woods”dan uyarlanmıştır
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
29
• (a) : orijinal görüntü
• (b) : c=1, gama=3.0 ilegama düzeltmesi
• (c ) : c=1, gama=4.0 ilegama düzeltmesi
• (d) : c=1, gama=5.0 ilegama düzeltmesi
• Hatırlatma: gama>1 için dahakoyu bir görüntü elde edilir.Gama değerini büyülttükçedaha koyu görüntüler elde ederiz
“Gonzalez and Woods”dan uyarlanmıştır
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
30
• (a) görüntüsünün negatifi alınarak (b) elde edilmiş
• Gama düzeltmesi ile gama=1 iken piksel değerlerini ters eşleştirme yoluyla görüntünün negatifi alınabilir
“Gonzalez and Woods”dan uyarlanmıştır
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
31
• gama= 1 , 0.7, 0.4, 0.1
• http://www.ece.ucsb.edu/Faculty/Manjunath/courses/ece178W03/EnhancePart1.pdf
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
32
• Yukarıdaki görüntü için gama = 1
• Sol alttaki görüntü içingama = 2
• Sağ alttaki görüntü içingama = 5
• http://www.ece.ucsb.edu/Faculty/Manjunath/courses/ece178W03/EnhancePart1.pdf
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
33
• Logaritma dönüşümü (log transformation)– g = c * log ( 1 + double(f) )
• Bu fonksiyonun eğrisi gama düzeltmesinin fonksiyon eğrisine (gama < 1 için) benzer. Ancak, gama düzeltmesinde eğrinin şekli gama değişkenine göre değişebilirken, logaritma dönüşümünde fonksiyon eğrisi sabittir.
• Logaritma dönüşümü sırasında dinamik olarak *0,10^6+ gibi büyük bir değer aralığı elde edilebileceği için, sonuç değerleri sıkıştırıp daha sonra istenilen değer aralığına çevirmek gereklidir (Fourier spektrumu)
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
• Aşağıdaki örnekte, logaritma dönüşümü ile ayrıntılar, daha yüksek piksel değerleriyle parlaklaştırılarak ön plana çıkarılmış
34“Gonzalez and Woods”dan uyarlanmıştır
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
35
• Zıtlık esnetme (contrast stretching)
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
36
• Zıtlık sıkıştırma ile belirli bir yoğun-luk düzeyinin altındaki değer-ler dar bir aralıktaki koyu değerle-re sıkıştırılır.
• Aynı şekilde bu düzeyin üzerinde-ki değerler de dar bir aralıktaki parlak değerlere sıkıştırılır.
• Sonuç olarak daha yüksek zıtlıktabir görüntü elde edilir.
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
37
• Zıtlık esnetme fonksiyonun limit du-rumu eşikleme(thresholding) fonksi-yonu olarak anılır.
• Eşik değerin altındaki piksellerin ye-ni değeri 0,üstündekilerin ise 1 olur.
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
• (a) : zıtlık esnetme dö-nüşüm fonksiyonununformu
• (b) : düşük zıtlıklı bir gö-rüntü
• (c) : (b) ye zıtlık esnet-me dönüştürümü uy-gulanması sonucu olu-şan görüntü
• (d) : (b) ye eşikleme(thresholding) işlemiuygulanması sonucu oluşan görüntü
38“Gonzalez and Woods”dan uyarlanmıştır
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
• Zıtlık esnetme dönüşümünün başka bir örneği
• http://www.wfis.uni.lodz.pl/kfcs/Mat_Lab/exdsws.htm
39
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
• Eşikleme Örneği (Thresholding)
• http://web.cs.hacettepe.edu.tr/~goruntu/course/imageanalysis/src/cs484_hw1_data.tar.gz
40
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
41
• Gri düzey dilimleme (gray level slicing)
• (a) A-B yoğunluğu aralığındaki pikseller ön plana çıkarılırken, di-ğer piksellere daha koyu(arka plan)değerler atanır
• (b) A-B yoğunluğu aralığındaki piksel-ler ön plana çıkarılırken, diğer piksel-lerin değerleri korunmuştur
• (d) görüntüsü, (c) görüntüsüne (a)-da gösterilen işlemin uygulanmasıylaelde edilmiştir
“Gonzalez and Woods”dan uyarlanmıştır
Uzaysal Tanım Kümesi TeknikleriyleGörüntü İyileştirme
42
• Bit düzlem dilimleme (bit plane slicing)
• Her bir bit tarafından görüntüye yapılan katkıyı ön plana çıkarır.
Bit Düzlemleri(Bit Planes)
• İkili görüntüler(binary images): Her bir pikselinin yalnızca 0 veya 1 değerini alabildiği görüntülerdir
• Bazı durumlarda görüntüyle ilgili daha rahat kararlar verebilmek için ikili görüntülerle çalışmak isteyebiliriz.
• Bit düzlemi (bit plane): k-bitlik bir görüntüde, her bir piksel değerinin n. bitinin alınmasıyla oluşturulan ikili görüntüye “bit düzlemi n” adı verilir.
• Örneğin 8-bit bir görüntünün toplamda 8 adet bit düzlemi vardır.
43
Bit Düzlemleri – Örnek 1
44“Gonzalez and Woods”dan uyarlanmıştır
Bit Düzlemleri – Örnek 2
• Bu örnekte 8-bit bir görüntünün, yukarıdan aşağıya, sağdan sola; en ağırlıklı bitinden en az ağırlıklı bitine doğru ,8 farklı bit düzlemi görülmektedir. Beklenildiği gibi orijinal resmi en çok belirleyen düzlem en ağırlıklı bitin bit düzlemidir.
• http://commons.wikimedia.org/wiki/File:Lichtenstein_bitplanes.png45
Bit Düzlemleri – Örnek 3
• Yukarıdaki 8-bit görün-tünün 8 farklı bit düzle-mi yanda görülmek-tedir.
• http://www.ece.ucsb.edu/Faculty/Manjunath/courses/ece178W03/EnhancePart1.pdf46
Referanslar ve Örnek Kaynaklar
• http://www.ece.ucsb.edu/Faculty/Manjunath/courses/ece178W03/EnhancePart1.pdf
• http://newton.ex.ac.uk/teaching/resources/jjm/PAM3012/Lectures/Sampling.pdf
• http://ee.sharif.edu/~dip/Files/DigitalImageFundamentalsForView.pdf
• http://www.wfis.uni.lodz.pl/kfcs/Mat_Lab/exdsws.htm
• http://actions.home.att.net/Astronomy_Tools_For_Full_Version.html
• http://en.wikipedia.org/wiki/Image_resolution
• http://www.dca.fee.unicamp.br/dipcourse/html-dip/c2/s3/front-page.html
• http://commons.wikimedia.org/wiki/File:Lichtenstein_bitplanes.png
• http://www.youtube.com/watch?v=xTV_8crxzng
47