Transcript Document
The University of CS 4487/9587 Görüntü analizi için algoritmalar Lena Gorelick, substituting for Yuri Boykov Acknowledgements: slides from Steven Seitz, Aleosha Efros, David Forsyth, and Gonzalez & Woods Ontario The University of CS 4487/9587 Görüntü işlemenin temelleri Ontario Görüntü işleme • Alan dönüşümü – Döndürme, – yeniden boyutlandırma. • Görüntü zenginleştirme – Point Processing • • • gamma düzeltmesi Pencere merkezli düzeltme histogram eşitleme Pixel konumu g ( x, y) f (t x ( x, y), t y ( x, y)) g ( x, y) f ( x, N y) Pixel yoğunluğu-gri değer g ( x, y) t x, y ( f ( x, y)) g ( x, y) f ( x, y) / 2 Window = 800 Center = 1160 The University of CS 4487/9587 Görüntü işlemenin temelleri Ontario Görüntü işleme • Alan dönüşümü – Döndürme, – yeniden boyutlandırma. • Görüntü zenginleştirme – Point Processing • • • gamma düzeltmesi Pencere merkezli düzeltme histogram eşitleme g ( x, y) f (t x ( x, y), t y ( x, y)) g ( x, y) f (2 x,2 y) g ( x, y) t x, y ( f ( x, y)) g ( x, y) f ( x, y) / 2 – Komşuluk analizi(Filtreleme) The University of Görüntü filtreleme Görüntülerdeki gürültüler? Courtesy of Carlo Tomasi Ontario Courtesy of Neel Joshi Nasıl yok edilebilir? Piksellerin gri değerlerinden yararlanılabilir mi? Readings: Forsyth & Ponce, chapters 8.1-8.2 The University of Görüntü filtreleme Pikseller yeniden görüntünün içine karıştırılırsa ne olur? Mekansal bilgi var Ontario Gürültü Piksellerin işlenmesi de aynı etkiyi yaratır • Piksellerin gri değerleri input olarak alınır • Mekansal bilgi kullanılmaz Komşuluk analizi • Mekansal bilgi göz önünde bulundurulur • Görüntüler mekânsal bilgiyi barındırırlar Readings: Forsyth & Ponce, chapters 8.1-8.2 The University of Görüntü filtreleme Doğrusal görüntü dönüşümleri 1D fonksiyon f [i ] 0 1 0 0 M 0 0 0 0 Ontario 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 g M f ? g[i] M [i, j ] f [ j ] j The University of Görüntü filtreleme Doğrusal görüntü dönüşümleri 1D fonksiyon 2 1 0 f [i ] M 1 / 2 0 0 0 0 0 Ontario 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 g M f ? g[i] M [i, j ] f [ j ] j The University of Görüntü filtreleme Doğrusal değişim bağımsız filtreler Ontario matrix M Genelde bir kalıp kullanılır Bir çekirdek ile temsil edilir h [ a b c] * a 0 0 M 0 0 0 0 * 0 0 0 0 0 0 b c 0 0 0 0 0 a b c 0 0 0 0 0 a b c 0 0 0 0 0 a b c 0 0 0 0 0 a b c 0 0 0 0 0 a b 0 0 0 0 0 0 * * (i - 1) i (i + 1) 2k+1 boyutlu bir çekirdek için gM f g [i] k h [u] f [i u] u k The University of Filtreleme 2B filtreleme Ontario Bir 2B f [i, j ] fonksiyonu 2B bir çekirdek ile filtrelenebilir h[u, v] g [i, j ] k k h [u, v] f [i u, j v] u k v k Buna çapraz-korelasyon adı verilir g h f The University of Filtreleme 2B filtreleme Ontario Eğer çapraz-korelasyon filtresi yatay ve düşey yönde hareket ettirilirse buna convolution (katlama) adı verilir. g h* f g [i, j ] k k h[u,v] f [i u, j v] u k v k k k u k v k h [u, v] f [i u, j v] The University of Filtreleme Convolution Ontario Eğer çekirdek simetrik ise h(u, v) h(u,v) convolution = çapraz korelasyon The University of 2B filtreleme Gürültü Gürültü tipleri: • Tuz-biber etkisi • İmpals gürültü • Gaussian gürültü Ontario Orijinal Tuz biber etkisi Kaynakları • Aktarma sırasında • Algılayıcı hataları • Mercek hataları İmpals gürültü Gaussian gürültü The University of Filtreleme Pratik gürültü giderme Gürültü nasıl giderilebilir? Ortalama filtre (Mean) Ontario 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 100 130 110 120 110 0 0 0 0 0 110 90 100 90 100 0 0 0 0 0 130 100 104 90 130 110 0 0 0 0 0 120 100 130 110 120 0 0 0 0 0 90 110 80 120 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 The University of Filtreleme Mean filtre Ontario 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 0 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 0 0 0 0 0 0 0 0 0 90 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f [ x, y ] g [ x, y ] The University of Filtreleme Mean filtre Ontario 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 20 30 30 30 20 10 0 0 0 90 90 90 90 90 0 0 0 20 40 60 60 60 40 20 0 0 0 90 90 90 90 90 0 0 0 30 60 90 90 90 60 30 0 0 0 90 90 90 90 90 0 0 0 30 50 80 80 90 60 30 0 0 0 90 0 90 90 90 0 0 0 30 50 80 80 90 60 30 0 0 0 90 90 90 90 90 0 0 0 20 30 50 50 60 40 20 0 0 0 0 0 0 0 0 0 0 10 20 30 30 30 30 20 10 0 0 90 0 0 0 0 0 0 0 10 10 10 0 0 0 0 0 0 0 0 0 0 0 f [ x, y ] 0 g [ x, y ] 0 0 0 The University of Filtreleme Mean filtrenin etkileri Gaussian gürültü Tuz-biber etkisi 3x3 Ontario 5x5 7x7 The University of Filtreleme Mean filtre çekirdek matrisi 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 0 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 0 0 0 0 0 0 0 0 0 90 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f [ x, y ] Ontario h[u, v] The University of Filtreleme Mean filtre çekirdek matrisi Ontario What’s the kernel for a 3x3 mean filter? 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 1/9 1/9 1/9 0 0 0 90 90 90 90 90 0 0 1/9 1/9 1/9 0 0 0 90 0 90 90 90 0 0 1/9 1/9 1/9 0 0 0 90 90 90 90 90 0 0 h[u, v] 0 0 0 0 0 0 0 0 0 0 0 0 90 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f [ x, y ] The University of Filtreleme Mean filtre çekirdek matrisi Ontario 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 0 90 90 90 0 0 1 1 1 0 0 0 90 90 90 90 90 0 0 h[u, v] 0 0 0 0 0 0 0 0 0 0 0 0 90 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f [ x, y ] 1 1 1 1/9 1 1 1 The University of Filtreleme Gaussian Filtre Ontario Gaussian çekirdekte merkezdeki pikselin ağırlığı diğer 0 0 0 0 0 0 0 0 0 0 piksellerden fazladır. 0 0 0 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 0 90 90 90 0 0 1 2 1 0 0 0 90 90 90 90 90 0 0 h[u, v] 0 0 0 0 0 0 0 0 0 0 Gaussian onksiyon: 0 0 90 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f [ x, y ] 0 1 2 1 1 2 4 2 16 The University of Filtreleme Mean ve Gaussian filtreler Ontario Input görüntü Mean Filtre Mean filtre, 20x20 Gaussian filtre Gaussian filtre, 20x20, σ = 5 The University of Filtreleme Mean ve Gaussian filtreler Ontario The University of Filtreleme Gaussian Filtre Ontario Low-pass filtredir Gri değer geçişlerini yumuşatır ve alçak frekans korunur. Keskin köşeler (yüksek frekans) yok edilir. The University of Filtreleme Median (ortanca) filtre Ontario Median Filter oseçilen filtre penceresinin büyüklüğüne bağlı olarak piksellerin ortanca değerini hesaplayarak merkez piksele atar. Median filtre sonucu The University of Filtreleme Median (ortanca) filtre Ontario median filtre doğrusal olmayan bir filtredir. Median( f1 ( x) f 2 ( x)) Median( f1 ( x)) Median( f 2 ( x)) 1 1 1 1 1 Median( 1 3 1 ) Median( 0 1 1 1 1 1 0 1 0 Median( 0 1 0 ) Median( 1 1 0 1 0 0 1 0 1 0 1 0 1 2 1 ) 0 1 0 1 0 1 0 2 1 ) 1 1 2 1 0 The University of Tuz-biber etkisi Ontario The University of Gaussian gürültü Ontario The University of Filtreleme Median (ortanca) filtre Ontario Tuz-biber etkisini başarılı bir şekilde giderir. Fakat yavaştır. The University of Filtreleme Türevler ve Convolution Ontario Görüntü türevleri ve Gradients • Kenar-Köşe yakalamak amacı ile kullanılırlar • Filtrelerin sonlu farkları hesaplanır Laplacian of Gaussians (LoG) Filtresi • Görüntü zenginleştirme, kenar/blob yakalamak için kullanılır. • Gaussians farkları alınarak uygulanır. The University of Reading: Forsyth & Ponce, 8.1-8.2 1. Türev Ontario Input görüntüde, input sinyalin birinci türevindeki tepe ve düzlüklere karşılık gelen keskin gri değer değişimi olarak adlandırılır. http://www.cse.psu.edu/~rcollins/CSE486/lecture11_6pp.pdf The University of Reading: Forsyth & Ponce, 8.1-8.2 1. Türev ve convolution x Ontario f ( x h, y) f ( x, y) f lim h0 h Doğrusal mıdır? ? ? ? ? ? ? ? ? ? x [u, v] The University of Reading: Forsyth & Ponce, 8.1-8.2 1. Türev ve convolution Sonlu fark Ontario f ( x a) f ( x b) İleri, geri ve merkez farklar Sadece üç form göz önünde bulundurulur: ileri, geri ve merkez farklar İleri fark: x h[ f ] h f ( x h) f ( x ) h f ' ( x) 0 h x-h x-h/2 x+h x x x+h/2 Slide credit: Wikipedia The University of Reading: Forsyth & Ponce, 8.1-8.2 1. Türev ve convolution Ontario Sonlu fark– Oluşan hata Taylor serisinin 1. türevi ile elde edilir Aynı formül geri-fark için şu şekilde düzenlenir: Fakat merkez-farkta daha doğru yaklaşım elde edilir: Slide credit: Wikipedia The University of Reading: Forsyth & Ponce, 8.1-8.2 1. Türev ve convolution Ontario Piksel boyutu x h Sonlu merkez-fark x f ( x x, y ) f ( x x, y ) f 2 x Gereksinim duyulan x çekirdek f x f x 0 0 0 1 1 2 x 0 0 -1 0 0 x [u, v] The University of Filtreleme Sonlu farklar ile kenarlar elde edilir Koyu = negatif Beyaz = positif Gray = 0 Ontario x f The University of Filtreleme Yumuşatma Ontario Fark almadan önce yumuşatma= iki convolution x (H f ) Convolution aşağıdaki eşitlikle ilişkilidir x ( H f ) ( x H ) f ( x H ) ( y H ) The University of Filtreleme Yumuşatma Ontario ( x H ) f 1 pixel 3 pixels Yumuşatma filtresinin ölçeği türeve bağlıdır 7 pixels The University of Filtreleme Sobel Ontario Sobel filtresi diğer bir derivatif filtredir x f 1 0 -1 1 2 8x 1 0 -2 0 -1 x [u, v] y f 1 2 1 1 0 0 0 8y -1 -2 -1 y [u, v] The University of Filtreleme Görüntü Gradienti İki değişkenli bir fonksiyon tanımlansın f ( x, y) (x,y) noktasındaki gradient aşağıdaki şekildedir fx x f f f f y y Ontario Gradient büyüklüğü || f || ( fx ) 2 ( fy ) 2 x f x y f y ( x f ) 2 ( y f ) 2 small image gradients in low textured areas The University of Filtreleme Kenar yakalama için görüntü gradyenti Ontario Görüntü gradyentlerinin tipik kullanım alanı kenar yakalamadır Canny köşe yakalayıcı ekstrem olmayan Gradientler bastırılır The University of Reading: Forsyth & Ponce, 8.1-8.2 2.Türev ve convolution Ontario Girdi sinyaldeki tepe ve düz alanlar 2. türevde “zero-crossings” e karşılık gelir. http://www.cse.psu.edu/~rcollins/CSE486/lecture11_6pp.pdf The University of Reading: Forsyth & Ponce, 8.1-8.2 2.Türev ve convolution Ontario Taylor serisi açılımı Merkez fark 2. türeve yaklaşır http://www.cse.psu.edu/~rcollins/CSE486/lecture11_6pp.pdf The University of Reading: Forsyth & Ponce, 8.1-8.2 2.Türev ve convolution Ontario İyi lokalize edilmiş köşeler Fakat gürültüye duyarlı http://www.cse.psu.edu/~rcollins/CSE486/lecture11_6pp.pdf The University of Reading: Forsyth & Ponce, 8.1-8.2 2.Türev ve convolution Ontario http://www.cse.psu.edu/~rcollins/CSE486/lecture11_6pp.pdf The University of Reading: Forsyth & Ponce, 8.1-8.2 2.Türev ve convolution Ontario Laplace operator f f f 2 f f f 2 2 [ x x y 2 2 x y ] f f y “divergence of gradient” 0 0 0 -1 2 -1 0 0 0 0 -1 0 0 2 0 0 -1 0 0 -1 0 -1 4 -1 0 -1 0 The University of Reading: Forsyth & Ponce, 8.1-8.2 2.Türev ve convolution Ontario f f Laplacian Zero Crossing f 2 2 x y 2 2 Kenar yakalayıcı filtre (Gradiyentin maksimumunun hesaplanmasına Gri değerf Alternetif bir hesaplama) Gradient büyüklüğü http://homepages.inf.ed.ac.uk/rbf/HIPR2/zeros.htm Laplacian (görüntünün 2nd türevi || f || f The University of Filtreleme Laplacian Filtre Ontario -Değişen bölgelerde sıfır -Kenarın bir tarafında pozitif -Diğer tarafında negatif - band-pass filter (yüksek ve alçak frekansları bastırır) http://www.cse.psu.edu/~rcollins/CSE486/lecture11_6pp.pdf The University of Filtreleme Laplacian of a Gaussian (LoG) Fark almadan önce yumuşatma 1 x y LoG( x, y ) 1 e 4 2 2 2 2 Ontario G LoG x2 y 2 2 2 http://www.cse.psu.edu/~rcollins/CSE486/lecture11_6pp.pdf The University of Filtreleme Laplacian of a Gaussian (LoG) Ontario LoG filtresi sonucu Orijinal Yüksek ve alçak frekanslar bastırılır http://www.cse.psu.edu/~rcollins/CSE486/lecture11_6pp.pdf The University of Filtreleme Laplacian of a Gaussian (LoG) Ontario Kontrast eşik değeri olmaksızın ham zero-crossing http://www.cse.psu.edu/~rcollins/CSE486/lecture11_6pp.pdf The University of Filtreleme Laplacian of a Gaussian (LoG) Ontario Kontrast eşik değeri olmaksızın ham zero-crossing http://www.cse.psu.edu/~rcollins/CSE486/lecture11_6pp.pdf The University of Filtreleme Laplacian of a Gaussian (LoG) Ontario İki Gaussians (DoG) farkı uygulanır http://www.cse.psu.edu/~rcollins/CSE486/lecture11_6pp.pdf The University of Reading: Forsyth & Ponce ch.7.5 Filtreler ve şablonlar Ontario filtereleme = cross-correlation f(x,y) (x,y) h* f g(x,y) Correlation Filter Mask Input Image (x,y) f w f w ( x, y ) h fw || h |||| f w || arccos Output Image g ( x, y ) cos( ) İki vektör arasındaki açı hesaplanır: filtre ve görüntü penceresi Benzerlikler ölçülür The University of Filtreleme Şablon eşleme Ontario f w f w ( x, y ) Normalize edilmiş cross-correlation h fw || h |||| f w || arccos Kaynak ve şablon arasındaki korelasyon hesaplanır h ( x, y ) f ( x, y) http://scien.stanford.edu/pages/labsite/2008/psych221/projects/08/MariaJabon/index.htm The University of Filtreleme Şablon eşleme Ontario f w f w ( x, y ) Normalize edilmiş cross-correlation h fw || h |||| f w || arccos Çok yavaş çalışır f g cos( ) | g | 1 h Slide credit: Matlab manual The University of Filtreleme Şablon eşleme h Ontario g cos( ) f Slide credit: OpenCV manual