Matlab command: corner http://www.mathworks.com/help/images/ref/corner.html Μια εισαγωγή-youtube: http://www.youtube.com/watch?v=vkwdzwerfc4
Τι είναι σημεία keypoints ενδιαφέροντος Σημεία που μπορούν να χρησιμοποιηθούν για αντιστοίχιση εικόνων? 2
Σημεία ενδιαφέροντος Σταθερή περιοχή Δεν μπορεί να χρησιμοποιηθεί για αντιστοίχηση Ακμές Δίνουν πληροφορία 1ας διάστασης -the aperture problem- Γωνίες -corner!!!!!! Aperture problem http://web.mit.edu/persci/demos/motion&form/demos/one-square/one-square.html 3
Moravec corner detector (1980) - Προπομπός του Harris detector Για μετακίνηση του παραθύρου σε κάθε διεύθυνση έχουμε μεταβολή στην ένταση 4
Moravec corner detector επίπεδη 5
Moravec corner detector επίπεδη 6
Moravec corner detector επίπεδη ακμή 7
Moravec corner detector επίπεδη ακμή γωνία 8
Moravec corner detector Οι 4 μετακινήσεις του παραθύρου : (u,v) = (1,0), (1,1), (0,1), (-1, 1) Μπορεί να είναι και 8 Υπολογίζουμε: [ ] 2 Euv (, ) = wxy (, ) x ( + uy, + v) xy (, ) xy, Συνάρτηση παραθύρου Ένταση στη θέση x+u,y+v Ένταση στη θέση x,y w(x,y) = 1 μέσα, 0 έξω Δείκτης cornerness = min{e}
Moravec corner detector: μειονεκτήματα Λόγω του δυαδικού παραθύρου έχουμε «θόρυβο» Οι μετατοπίσεις είναι μόνο σε γωνίες 45*n Είναι isotropic Λύση των παραπάνω προβλημάτων με τον Harris corner detector (1988) 10
Harris corner detector Μεταβολή της έντασης για μετακίνηση [u,v]: (όπως και προηγουμένως) [ ] 2 Euv (, ) = wxy (, ) x ( + uy, + v) xy (, ) xy, Συνάρτηση παραθύρου Ένταση στη θέση x+u,y+v Ένταση στη θέση x,y w(x,y) = or 1 in window, 0 outside Gaussian
Harris corner detector ανάπτυξηtaylor E(u, v) = x,y w(x, y) (x + u, y + ν) = (x, y) + ( (x, y) [ ] 2 (x + u, y + v) (x, y) = x y u (x, y)) ν = [ u + v O u v ] 2 2 (, ) w( x, y) x y + x, y 2 [ u v] = w(x, y) + x,y x y 2 12
[ ] Mu u v u M v u E(u, v) T = Θέτοντας 13 Τακτοποίηση. = y x y y x y x x y x w, 2 2 ), ( M έχουμε
Συνοψίζουμε: Είδαμε προσέγγιση για μικρές μετατοπίσεις [u,v] u Euv (, ) [ uv, ] M v Ο πίνακας M πίνακας αυτοσυσχέτισης Ι x,ι y M ( (x,y)) (x,y) (x,y) 2 x x y (x,y) W (x,y) W = 2 x(x,y) y(x,y) ( y(x,y)) (x,y) W (x,y) W 14
Ανάλυση με ιδιοτιμές u Euv (, ) [ uv, ] M v Μελέτη της Ε με ιδιοανάλυση λ 1, λ 2 ιδιοτιμές του M Πίνακας αυτοσυσχέτισης Αποκαλύπτει την δομή Βασει των ιδιοτιμών του M βρίσκουμε ότι 2 strong eigenvalues => interest point 1 strong eigenvalue => contour 0 eigenvalue => uniform region 15
Ταξινόμηση βάσει των ιδιοτιμών Ταξινόμηση των pixels βάσει των ιδιοτιμών του πίνακα Μ λ 2 Edge λ 2 >> λ 1 Corner λ 1 και λ 2 μεγάλες, λ 1 ~ λ 2 ; E αυξάνει σε όλες τις διευθύνσεις λ 1 και λ 2 μικρές Επίπεδη περιοχή Flat Edge λ 1 >> λ 2 λ 1 16
Υπολογισμός των ιδιοτιμών Εάν M = a a 00 10 a a 01 11 a 00 a 10 λ a a 11 01 λ = 0 2 λ ( α00 + α11) λ + α00α11 α10α01 = 0 λ = 2 a 00 + a11 ± (a 00 a11) + 4a10a 2 01 17
Χρειάζεται να βρούμε τις ιδιοτιμές?? OX 18
Τελικά: πότε έχουμε corner? Βασίζεται στην τιμή R (???) R = detm k ( tracem) 2 det trace M = M λ λ 1 1 2 = λ + λ k = 0.04-0.06 2 19
Harris corner detector Τελικά Η τιμή R εξαρτάται από τις ιδιοτιμές R είναι θετική για γωνίες -corners R είναι αρνητική με μεγάλη τιμή για ακμές R είναι μικρή για σταθερές περιοχές 20
Μια άλλη προσέγγιση- κατανομή των Ι x,ι y 21
Μια άλλη προσέγγιση- κατανομή των Ι x,ι y Another view
Harris corner detector- Σύνοψη 1. Υπολογίζουμε τις παραγώγους x x y = G σ G 2. Υπολογίζουμε τα γινόμενα σε κάθε pixel x = x x 3. Υπολογίζουμε τα αθροίσματα των γινομένων σε κάθε περιοχή - pixel S y = σ 2 2 y y xy x y y = 2 = G x σ ' S x 2 2 = G ' 2 y σ S y xy = Gσ ' xy = 23
Harris corner detector- Σύνοψη 4. Σχηματίζουμε τον πίνακα σε κάθε pixel S 2 ( x, y) S ( x, y) x xy M ( x, y) = S ( x, y) S 2 ( x, y) xy y 5. Υπολογίζουμε το μέγεθος R R = det M k ( tracem ) 2 6. Κατωφλιοποιούμε το R; Εφαρμόζουμε «nonmax suppression» δηλ. επιλέγουμε τοπικό μέγιστο 24
Εικόνες εισόδου Τιμή του R Κατωφλιοποίηση του R Τοπικά μέγιστα του Τελική R εικόνα με τα σημεία 25
Harris corner detector- Ιδιότητες Ανεξαρτησία σε περιστροφή 26
Harris corner detector- Ιδιότητες Ανεξαρτησία σε μετατόπιση έντασης Ανεξαρτησία σε Κλιμάκωση έντασης 27
Harris corner detector- Ιδιότητες Δεν είναι ανεξάρτητο σε Χωρική κλιμάκωση Ακμή αντί γωνίας!! 28
29
Δημιουργία πανοράματος Απαιτείται match/align/register στις 2 εικόνες 31
Δημιουργία πανοράματος 1) Ανιχνεύουμε χαρακτηριστικά σημεία στις 2 εικόνες 32
Δημιουργία πανοράματος 1. Ανιχνεύουμε χαρακτηριστικά σημεία στις 2 εικόνες 2 Βρίσκουμε τα αντίστοιχα ζεύγη matching pair x y 1 33 x y 1 left h = h h 11 21 31 h h h 12 22 32 h h h 13 23 33 right
Δημιουργία πανοράματος 1 Ανιχνεύουμε χαρακτηριστικά σημεία στις 2 εικόνες 2 Βρίσκουμε τα αντίστοιχα ζεύγη 3 Βρίσκουμε τις παραμέτρους του μετασχηματισμού (affine) matching pair x y 1 left h = h h 11 21 31 h h h 12 22 32 h h h 13 23 33 x y 1 right 34