D. Lowe, Distinctive Image Features from Scale-Invariant Keypoints, International Journal of Computer Vision, 60(2):91-110, 2004. 1/45
Τι είναι ο SIFT-Γενικά Scale-invariant feature transform detect and describe local features in images. Proposed by David Lowe in ICCV1999. Refined in IJCV 2004. Cited more than 12000 times till now. Wildly used in image search, object recognition, video tracking, gesture recognition, etc. Νοέμβριος 2015 Σ. Φωτόπουλος ΨΕΕ - SIFT ΔΠΜΣ ΗΕΠ
Γιατί ο SIFT είναι τόσο δημοφιλής? Αντιστοίχηση σημείων Ανεξάρτητος της κλίμακας Ανεξάρτητος της περιστροφής Ανεξάρτητος φωτισμού Ανθεκτικός σε προσθετικό θόρυβο Ανθεκτικός σε αφφινικούς μετασχηματισμούς Ανθεκτικός σε 3D αποτύπωση Έχει μεγάλη δικριτότητα Νοέμβριος 2015 Σ. Φωτόπουλος ΨΕΕ - SIFT ΔΠΜΣ ΗΕΠ
Τεχνική περιγραφή του SIFT descriptor συνοπτικά 1. Προσδιορίζουμε ένα παράθυρο 16x16 σημείων γύρω από το key point 2. Διαιρούμε σε 4x4 κελιά 3. Σε κάθε κελί υπολογίζουμε το ιστόγραμμα των gradients «orientation histograms» (8 bins) 4. Τελικό διάνυσμα 8 διευθύνσεις x 16 κελιά = 128 dimensions 5. Κανονικοποιούμε, αποκόπτουμε (clip) τιμές > 0.2, κανονικοποιούμε (πάλι) 4/45
SIFT: Τι περιλαμβάνει Α. Ανίχνευση ακροτάτων στο scale-space Β. Εντοπισμός key-points Γ. Προσδιορισμός προσανατολισμού Δ. Περιγραφή detector descriptor ( ) Τοπική περιγραφή Μία εικόνα 500x500 δημιουργεί 2000 σημεία 5/45
Α. Ανίχνευση ακροτάτων στο scalespace Ψάχνουμε σε όλες τις κλίμακες (scale-space)να βρούμε σταθερά χαρακτηριστικά Για την δημιουργία των κλιμάκων (scale-space) χρησιμοποιούμε DoG filter (difference of Gaussian) 6/45
DoG filtering Συνέλιξη με variable-scale Gaussian Difference-of-Gaussian (DoG) filter Συνέλιξη με DoG filter 7/45
DoG ~Laplacian Από την εξίσωση διάχυσης G σ = σ 2 G υπολογίζουμε σ 2 G G = σ G(x, y,kσ) G(x,y, σ) kσ - σ G(x, y,kσ) G(x,y, σ) = ( k -1)σ 2 2 G Τελικά υπολογίζεται η κανονικοποιημένη Laplacian 8/45
Χώρος κλίμακας scale-space σ διπλασιάζεται στην επόμενη octave 2 2 σ 0 Υποδειγματοληψεία k s =2 k=2 (1/s) Για s=4 k=1.2 Συνέλιξη με Gaussian 2σ 0 σ 0 ( s σ) L k ( 2 σ) L k L( kσ) L( σ) Ο διαχωρισμός σε «οκτάβες» δεν είναι υποχρεωτικός αλλά είναι αποδοτικός 9/45
Ανίχνευση ακροτάτων στο scale-space L D 10/45
Εντοπισμός του key-point (σημείου ενδιαφέροντος ) ( 2 σ ) D k D( kσ ) D( σ ) X είναι το ακρότατο (μέγιστο ή ελάχιστο) μεταξύ των 26 γειτόνων 11/45
Ποιο είναι το βέλτιστο βήμα στη δειγματοληψία του scale Είναι αδύνατον να έχουμε όλα τα scales Πειραματικά βρίσκεται η βέλτιστη τιμή s=4 12/45
Β. Ακριβής εντοπισμός του key-point Προσαρμόζεται μία 3D τετραγωνική συνάρτηση για εύρεση του μεγίστου 6 5 1-1 0 +1 13/45
ΔΠΜΣ ΗΕΠ Νοέμβριος 2015 Σ. Φωτόπουλος ΨΕΕ - SIFT 14/45 1 6 5 0-1 +1 2 2 0 0 0 x ) f ''( )x f '( ) f ( (x) f + + 3 1 ˆ = x 2 2 3 2 6 2 6 2 6 ) ( x x x x x f + = + + 0 6 2 ) ( ' = = x x f 3 1 6 3 1 3 3 1 2 6 ( ˆ) 2 = + = x f 3 1 6 3 1 Aναπτυξη Taylor
15/45
Απόρριψη σημείων ακμής (όπως στο Harris corner detector) 2 D 2 x H(D) = 2 D y x 2 D x y 2 D 2 y Hessian matrix Let Δεν διαγράφονται σημεία όταν 2 Tr(H) Det(H) < (r +1) r 2 r=10 16/45
Απόρριψη σημείων χαμηλής αντίθεσης (low contrast) Εάν D(xi ) < 0. 03 το keypoint απορρίπτεται 17/45
παράδειγμα Maxima in D (DoG) keypoints 18/45
παράδειγμα Απόρριψη σημείων χαμηλής αντίθεσης 19/45
παράδειγμα Απόρριψη σημείων ακμής 20/45
Γ. Προσδιορισμός διεύθυνσης Προσδιορίζουμε μια «προεξάρχουσα» διεύθυνση για ένα keypoint L is the Gaussian-smoothed image στο πιο κοντινό scale: m θ (Lx, Ly) histogram (36 bins) 21/45
Προσδιορισμός διεύθυνσης- παράδειγμα 22/45
Προσδιορισμός διεύθυνσης παράδειγμα 23/45
Προσδιορισμός διεύθυνσης- παράδειγμα 24/45
Προσδιορισμός διεύθυνσης- παράδειγμα σ=1.5*scale of the keypoint 25/45
Προσδιορισμός διεύθυνσης- παράδειγμα 26/45
Προσδιορισμός διεύθυνσης- παράδειγμα 27/45
SIFT keypoints + διεύθυνση Εντοπισμός key points Διεύθυνση key points 28/45
2 ο παράδειγμα Αρχική εικόνα 233x89 pixels 832 αρχική επιλογή 729 μετα από απορριψη ακμών 536 Μετα από απόρριψη χαμηλού D 29/45
30/45
Αντιστοίχιση χαρακτηριστικών SIFT Για ένα σημείο x μίας εικόνας: Βρίσκουμε τα σημεία x 1 και το x 2 που έχουν τις μικρότερες αποστάσεις από την 2 η εικόνα Εάν d(x,x 1 ) / d(x,x 2 ) < 0.8 το x αντιστοιχεί στο x 1 31/45
32/45
Αναγνώριση εικόνας SIFT Features 33/45
Αναγνώριση εικόνας 34/45
Ανάκτηση εκόνας > 5000 images change in viewing angle 35/45
Ανάκτηση εκόνας 22 correct matches 36/45
Ανάκτηση εκόνας change in viewing angle + scale change > 5000 images 37/45
Αυτόματη συρραφή εικόνων 38/45
Αυτόματη συρραφή εικόνων 39/45
Αυτόματη συρραφή εικόνων 40/45
Αυτόματη συρραφή εικόνων 41/45
Αυτόματη συρραφή εικόνων 42/45