ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΤΕΧΝΟΛΟΓΙΑΣ Η/Υ ΤΟΜΕΑΣ: ΣΥΣΤΗΜΑΤΩΝ ΚΑΙ ΑΥΤΟΜΑΤΟΥ ΕΛΕΓΧΟΥ ΕΡΓΑΤΗΡΙΟ: ΑΥΤΟΜΑΤΙΣΜΟΥ ΚΑΙ ΡΟΜΠΟΤΙΚΗΣ Διπλωματική Εργασία της Φοιτήτριας του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών: Κελασίδη Ελένη Αριθμός Μητρώου: 5658 Θέμα: ΟΛΟΚΛΗΡΩΜΕΝΟ ΣΥΣΤΗΜΑ ΟΔΟΜΕΤΡΙΑΣ ΓΙΑ ΚΙΝΟΥΜΕΝΑ ΡΟΜΠΟΤ ΜΕ ΧΡΗΣΗ ΜΕΤΡΗΣΕΩΝ ΑΠΟ ΠΟΛΛΑΠΛΟΥΣ ΑΙΣΘΗΤΗΡΕΣ (INTEGRATED ROBOTIC ODOMETRY SYSTEM USING SENSOR DATA FUSION) Επιβλέπων: ΚΑΘΗΓΗΤΗΣ ΑΝΤΩΝΙΟΣ ΤΖΕΣ ΠΑΤΡΑ, ΦΕΒΡΟΥΑΡΙΟΣ 2009
ΠΙΣΤΟΠΟΙΗΣΗ Πιστοποιείται ότι η διπλωματική εργασία με θέμα: «ΟΛΟΚΛΗΡΩΜΕΝΟ ΣΥΣΤΗΜΑ ΟΔΟΜΕΤΡΙΑΣ ΓΙΑ ΚΙΝΟΥΜΕΝΑ ΡΟΜΠΟΤ ΜΕ ΧΡΗΣΗ ΜΕΤΡΗΣΕΩΝ ΑΠΟ ΠΟΛΛΑΠΛΟΥΣ ΑΙΣΘΗΤΗΡΕΣ (INTEGRATED ROBOTIC ODOMETRY SYSTEM USING SENSOR DATA FUSION)» της φοιτήτριας του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Κελασίδη Ελένης του Χριστοφόρου (Α.Μ. 5658) παρουσιάστηκε δημόσια και εξετάστηκε στο Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών στις / / Ο Επιβλέπων Ο Διευθυντής του Τομέα Καθηγητής Αντώνιος Τζες Καθηγητής Νικόλαος Κόυσουλας
Αριθμός Διπλωματικής Εργασίας: Τίτλος: «ΟΛΟΚΛΗΡΩΜΕΝΟ ΣΥΣΤΗΜΑ ΟΔΟΜΕΤΡΙΑΣ ΓΙΑ ΚΙΝΟΥΜΕΝΑ ΡΟΜΠΟΤ ΜΕ ΧΡΗΣΗ ΜΕΤΡΗΣΕΩΝ ΑΠΟ ΠΟΛΛΑΠΛΟΥΣ ΑΙΣΘΗΤΗΡΕΣ (INTEGRATED ROBOTIC ODOMETRY SYSTEM USING SENSOR DATA FUSION)» Φοιτήτρια: Κελασίδη Ελένη Επιβλέπων: Καθηγητής Αντώνιος Τζες Περίληψη Στόχος της παρούσας διπλωματικής εργασίας είναι η ανάπτυξη ολοκληρωμένου συστήματος οδομετρίας που θα υπολογίζει την απόσταση μετακίνησης ενός κινητού μέσου με χρήση τεχνικών όρων της όρασης των υπολογιστών. Στα κλασικά μετρητικά συστήματα εμφανίζονται σημαντικές αποκλίσεις μεταξύ της πραγματικής και της υπολογισθείσας θέσης του ρομπότ. Σκοπός της ολοκληρωμένης διάταξης οδομετρίας που θα κατασκευαστεί είναι ο περιορισμός των σφαλμάτων αυτών.
Ευχαριστίες Με την ευκαιρία συγγραφής της διπλωματικής μου εργασίας, θα ήθελα να ευχαριστήσω όλους εκείνους, χωρίς την πολύτιμη βοήθεια των οποίων, δεν θα ήταν εφικτή η αποπεράτωσή της. Πρωτίστως, θα ήθελα να ευχαριστήσω θερμότατα τον επιβλέποντα καθηγητή κ. Τζε Αντώνιο για την ευκαιρία που μου έδωσε να συνεργαστούμε στο όλο αυτό διάστημα, καθώς και για την εμπιστοσύνη που μου έδειξε στην ανάθεση του έργου αυτού. Οι πολύτιμες συμβουλές του, καθώς και η συνεπέστατη καθοδήγησή του, ήταν βασικοί παράγοντες ώστε να έλθει εις πέρας η διπλωματική αυτή. Επίσης θα ήθελα να ευχαριστήσω τον καθηγητή κύριο Σταμάτη Μάνεση για την συμβολή του στην δημιουργία της πειραματικής διάταξης, χωρίς την οποία θα ήταν δύσκολη η υλοποίηση πειράματος. Σημαντική υπήρξε και η συμβολή των μεταπτυχιακών φοιτητών του εργαστηρίου Ιωάννη Κωβαίου, του Ευθύμιου Κολυβά και του Ιωάννη Στεργιόπουλου στους οποίους απευθυνόμουν κάθε φορά που παρουσιαζόταν πρόβλημα με την πειραματική διάταξη και τον κώδικα. Βασικά μεγάλο ευχαριστώ οφείλω σε τους μεταπτυχιακούς φοιτητές του εργαστηρίου, οι οποίοι ανταποκρίθηκαν με προθυμία κάθε φορά που παρουσιαζόταν κάποιο πρόβλημα. Δεν θα μπορούσα να παραλείψω να ευχαριστήσω τους φίλους μου για την υπομονή τους και την βοήθεια τους καθ όλη την διάρκεια της παρούσας εργασίας. Τέλος, θα ήθελα να ευχαριστήσω τους γονείς μου και τα αδέλφια μου για την ηθική και υλική συμπαράσταση τους καθ όλη την διάρκεια της ακαδημαϊκής μου πορείας.
Πρόλογος Πρόλογος Η παρούσα διπλωματική εργασία στοχεύει στην ανάπτυξη αλγορίθμου, με χρήση τεχνικών της όρασης των υπολογιστών, που θα υπολογίζει την απόσταση μετακίνησης ενός κινητού μέσου. Στα κλασικά μετρητικά συστήματα στην πράξη, η ακρίβεια των μετρήσεων περιορίζεται από μια σειρά προβλημάτων, τα οποία συσσωρεύουν σφάλματα, με αποτέλεσμα να εμφανίζονται σημαντικές αποκλίσεις μεταξύ της πραγματικής και της υπολογισθείσας θέσης του ρομπότ. Τα σφάλματα μέτρησης είναι εντονότερα όταν οι κινήσεις εμπεριέχουν αλλαγές κατεύθυνσης (στροφές). Τα σφάλματα συσσωρεύονται λόγω α) κατασκευαστικών ατελειών των μετρητικών οργάνων (διαφορετικές διαστάσεις των τροχών, έκκεντρη τοποθέτηση τους, περιορισμένη διακριτική ικανότητα κωδικοποιητών γωνίας), τα οποία αποτελούν τα συστηματικά σφάλματα και β) μη συστηματικών σφαλμάτων, τα οποία προκύπτουν σε σχέση με τον εκάστοτε χώρο και τις συνθήκες κίνησης (οι τροχοί περιστρέφονται χωρίς να κινείται το όχημα, οι τροχοί δεν περιστρέφονται παρότι το όχημα κινείται γλιστρώντας). Σκοπός της ολοκληρωμένης διάταξης οδομετρίας που θα κατασκευαστεί είναι ο περιορισμός των σφαλμάτων αυτών. Βασική δομή της διπλωματικής εργασίας: ΚΕΦΑΛΑΙΟ 1: Εισαγωγή στην οδομετρία των ρομπότ Σε αυτό το κεφάλαιο παρατίθενται κάποιες γενικές πληροφορίες για την όραση των υπολογιστών, μια σύντομη αναφορά στην οδομετρία των ρομπότ, τις μεθόδους localization και στην χρήση της μεθόδου visual servoing για έλεγχο των ρομπότ. ΚΕΦΑΛΑΙΟ 2: Θεωρία ανίχνευσης ακμών και σημείων σε εικόνα Στο συγκεκριμένο κεφάλαιο παρουσιάζονται οι κυριότεροι αλγόριθμοι ανίχνευσης ακμών και σημείων. Μελετάται η επίδραση του θορύβου και προτείνονται τρόποι αντιμετώπισης αυτού. Επιπροσθέτως γίνεται αναφορά στην σημασία της εφαρμογής φίλτρων παραγώγισης για τον προσδιορισμό των 1
Πρόλογος παραγώγων και αποσαφηνίζεται πώς με τη χρήση των φίλτρων αυτών προσδιορίζονται οι ακμές. ΚΕΦΑΛΑΙΟ 3: Εντοπισμός κοινών σημείων με ταύτιση χαρακτηριστικών Σε αυτό το κεφάλαιο αναλύονται οι κυριότεροι μέθοδοι ταύτισης χαρακτηριστικών. Αναφέρονται τα πλεονεκτήματα, τα μειονεκτήματα αυτών και η καταλληλότητα τους ανάλογα με τη εφαρμογή. ΚΕΦΑΛΑΙΟ 4: Πειραματική διάταξη Στο κεφάλαιο 4 παρουσιάζεται ο συνολικός αλγόριθμος εύρεσης της απόστασης καθώς και τα πειραματικά αποτελέσματα που προκύπτουν από την εκτέλεση του. Επίσης αναλύονται εκτενώς οι διατάξεις ρομποτικά συστήματα που χρησιμοποιήθηκαν για την εξαγωγή πειραματικών αποτελεσμάτων. ΚΕΦΑΛΑΙΟ 5: Επίλογος Σε αυτό το κεφάλαιο επισημαίνονται τα συμπεράσματα που προκύπτουν από την διεξαγωγή των πειραματικών μετρήσεων στο σύστημα οδομετρίας που υλοποιήθηκε. Εξετάζεται αν τα συμπεράσματα ανταποκρίνονται στους αρχικά επιδιωκόμενους στόχους και κλείνει με προτάσεις για μελλοντική εξέλιξη της ήδη διεξαχθείσας έρευνας. ΠΑΡΑΡΤΗΜΑ Α Παρουσιάζονται οι αλγόριθμοι που εκπονήθηκαν στο περιβάλλον Labview 8.5 για την υλοποίηση της διάταξης οδομετρίας. ΠΑΡΑΡΤΗΜΑ Β Παρουσιάζονται οι αλγόριθμοι που εκπονήθηκαν στο περιβάλλον Labview Embedded Module for ADI Blackfin Processors Development Kit 2.0. για την υλοποίηση της διάταξης οδομετρίας. ΒΙΒΛΙΟΓΡΑΦΙΑ 2
Αφιερωμένο στη Φανή Πύρζα 3
Περιεχόμενα Περιεχόμενα Πρόλογος... 1 Περιεχόμενα... 5 Ευρετήριο Εικόνων... 5 Κεφάλαιο 1ο... 8 ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΟΔΟΜΕΤΡΙΑ ΤΩΝ ΡΟΜΠΟΤ... 8 1.1 Εισαγωγή... 8 1.2 Υπολογιστική Όραση... 9 1.3 Εύρεση της θέσης των ROBOT (Localization)... 11 1.3.1 Εισαγωγή... 11 1.3.2 Αισθητήρες χρησιμοποιούμενοι για εύρεση της θέσης των ROBOT... 12 1.3.3 Μέθοδοι Localization... 15 1.4 Visual Servoing... 16 1.5 Επίλογος... 17 Κεφάλαιο 2ο... 18 ΘΕΩΡΙΑ ΑΝΙΧΝΕΥΣΗΣ ΑΚΜΩΝ ΚΑΙ ΣΗΜΕΙΩΝ... 18 2.1 Εισαγωγή... 18 2.2 Φίλτρα Παραγώγισης... 20 2.3 Επίδραση του Θορύβου και Τρόποι Αντιμετώπισης... 21 2.4 Προσδιορισμός Σημείων Ακμών με χρήση Φίλτρων... 22 2.5 Αλγόριθμοι Ανίχνευσης Ακμών... 24 2.5.1 Μέθοδος Canny για Ανίχνευση Ακμών... 25 2.5.2 Τελεστής Laplacian για Ανίχνευση Ακμών... 26 2.5.3 Τελεστής Marr Hildreth για Ανίχνευση Ακμών... 26 2.5.4 Τελεστής Spacek για Ανίχνευση Ακμών... 27 2.5.5 Τελεστής Petrou για Ανίχνευση Ακμών... 28 2.5.6 Ανιχνευτής ακμών Prewitt... 28 2.5.7 Ανιχνευτής ακμών Sobel... 29 2.6 Αλγόριθμοι Ανίχνευσης Σημείων... 29 2.6.1 Αλγόριθμος Harris για Ανίχνευση Σημείων... 29 2.6.2 Αλγόριθμος Kitchen Rosenfeld για Ανίχνευση Σημείων... 32 2.6.3 Αλγόριθμος SUSAN για Ανίχνευση Σημείων... 33 2.6.4 Αλγόριθμος Kanade Lucas Tomasi (KLT) για Ανίχνευση Σημείων... 34 2.6.5 Αλγόριθμος Moravec για Ανίχνευση Σημείων... 34 5
Περιεχόμενα 2.6.6 Αλγόριθμος Trajkovic Hedley για Ανίχνευση Ακμών... 35 2.6.7 Αλγόριθμος Wang Bradyγια Ανίχνευση Σημείων... 36 2.7 Επίλογος... 36 Κεφάλαιο 3ο... 38 ΕΝΤΟΠΙΣΜΟΣ ΚΟΙΝΩΝ ΣΗΜΕΙΩΝ ΕΙΚΟΝΩΝ ΜΕ ΤΑΥΤΙΣΗ ΧΑΡΑΚΤΗΡΙΣΤΙΚΩΝ... 38 3.1 Εισαγωγή... 38 3.2 Αλγόριθμος ταύτισης κάθετου διανύσματος (Gradient Vector Matcher)... 39 3.3 Product Moment Coefficient Matcher... 40 3.4 Normalized Cross Correlation Matcher... 40 3.5 Επίλογος... 43 Κεφάλαιο 4ο... 44 ΟΛΟΚΛΗΡΩΜΕΝΟ ΠΡΩΤΥΠΟ ΣΥΣΤΗΜΑ ΟΔΟΜΕΤΡΙΑΣ... 44 4.1 Εισαγωγή... 44 4.2 Πειραματική διάταξη... 44 4.3 Πραγματική και εικονική αναπαράσταση... 48 4.4 Αλγόριθμος Οδομετρίας... 50 4.5 Πειραματικά Αποτελέσματα... 52 4.5.2 Εφαρμογή σε διάφορες εικόνες... 54 4.5.3 Εφαρμογή Αλγορίθμου QT Clustering Αλγορίθμου Εικόνες... 63 4.5.4 Οδομετρία για Ευθεία τροχιά κινητού μέσου... 66 4.5.5 Κυκλική Τροχιά κινητού μέσου... 73 4.6 Επίδραση Ταχύτητας στο Σύστημα της Οδομετρίας... 85 4.7 Αποτέλεσμα εκτέλεσης στο μικροεπεξεργαστή ADSP BF537... 88 4.8 Επίλογος... 89 Κεφάλαιο 5ο... 91 ΕΠΙΛΟΓΟΣ... 91 5.1 Εισαγωγή... 91 5.2 Επιδιωκόμενοι στόχοι και τελικά αποτελέσματα... 91 5.3 Θέματα μελλοντικής έρευνας... 92 Παράρτημα A... 94 Παράρτημα Β... 114 Βιβλιογραφία... 120 6
Ευρετήριο Εικόνων Ευρετήριο Εικόνων Εικόνα 1.1 Διάφοροι μέθοδοι που υπάγονται στην οδομετρία των ρομπότ... 8 Εικόνα 1.2 Πομποδέκτης Υπερήχων... 12 Εικόνα 1.3 CMOS sensor MT9V022... 14 Εικόνα 1.4 Visual servoing [28]... 16 Εικόνα 2.1 Μάσκες ανίχνευσης ακμών Prewitt... 20 Εικόνα 2.2 Μάσκες ανίχνευσης ακμών Sobel... 20 Εικόνα 2.3 Μη μέγιστη καταστολή και υστέρηση σε θέματα ανίχνευσης ακμών... 24 Εικόνα 2.4 Mexican hat wavelet... 27 Εικόνα 2.5 Περιοχή εικονοστοχείων που χρησιμοποιούνται για τον υπολογισμό του cornerless value... 32 Εικόνα 2.6 Αναπαράσταση κυκλικής μάσκας του αλγορίθμου SUSAN... 33 Εικόνα 3.1 Αντιστοίχηση των κρίσιμων σημείων μεταξύ δύο διαδοχικών εικόνων... 42 Εικόνα 3.2 Σωστές αντιστοιχίσεις με τη μέθοδο Normalized Cross Correlation... 43 Εικόνα 4.1 Amigobot... 45 Εικόνα 4.2 PowerBot... 47 Εικόνα 4.3 Προσαρτημένη κάμερα στο ρομποτικό σύστημα PowerBot... 47 Εικόνα 4.4 xyzθ Πλατφόρμα για λήψη εικόνων... 48 Εικόνα 4.5 Παράδειγμα δύο διαδοχικών λήψεων... 49 Εικόνα 4.6 Blackfin Processor ADSP BF537... 50 Εικόνα 4.7Διάγραμμα Ροής Αλγορίθμου Ρομποτικής Οδομετρίας... 51 Εικόνα 4.8 Αποτελέσματα αλγορίθμου για διαδοχικές εικόνες μεγέθους 255Χ737 Περίπτωση Α... 54 Εικόνα 4.9 Αποτελέσματα αλγορίθμου για διαδοχικές εικόνες μεγέθους 255Χ737 Περίπτωση Β... 55 Εικόνα 4.10 Αποτελέσματα αλγορίθμου για διαδοχικές εικόνες μεγέθους 288Χ144 Περίπτωση Α. 55 Εικόνα 4.11 Αποτελέσματα αλγορίθμου για διαδοχικές εικόνες μεγέθους 228Χ144 Περίπτωση Β. 56 Εικόνα 4.12 Αποτελέσματα αλγορίθμου για διαδοχικές εικόνες μεγέθους 568Χ256 Περίπτωση Α. 56 Εικόνα 4.13 Αποτελέσματα αλγορίθμου για διαδοχικές εικόνες μεγέθους 568Χ256 Περίπτωση Β. 57 Εικόνα 4.14 1η εικόνα χωρίς προσθήκη θορύβου... 59 Εικόνα 4.15 2η εικόνα με προσθήκη μικρού θορύβου blur... 59 5
Ευρετήριο Εικόνων Εικόνα 4.16 3η εικόνα με προσθήκη μεγάλου θορύβου blur... 60 Εικόνα 4.17 Διαδοχικές λήψεις με προθήκη ίδιου επιπέδου θορύβου... 61 Εικόνα 4.18 Διαδοχικές λήψεις με γωνία μικρότερη των 3 μοιρών... 62 Εικόνα 4.19 Διαδοχικές λήψεις με γωνία μεγαλύτερη των 3 μοιρών... 63 Εικόνα 4.20 Αποτελέσματα για την υπολογισθείσα απόσταση 2 διαδοχικών λήψεων με εφαρμογή αλγορίθμου clustering... 64 Εικόνα 4.21 Απεικόνιση των αποστάσεων που προέκυψαν από την εφαρμογή του αλγορίθμου clustering και σύγκριση με την μέση τιμή αυτών... 65 Εικόνα 4.22 Απεικόνιση αποστάσεων για όλους τους συνδυασμούς παραμέτρων και σύγκριση με την μέση τιμή αυτών... 65 Εικόνα 4.23 Απεικόνιση της ταχύτητας με το δείγμα... 66 Εικόνα 4.24 Απεικόνιση της τροχιάς που εκτέλεσε το κινητό μέσο... 67 Εικόνα 4.26 Απεικόνιση της ταχύτητα σε σχέση με τον δείγμα για την xyzθ πλατφόρμα λήψης... 68 Εικόνα 4.25 nikkor 50mm f/1.8d AF... 68 Εικόνα 4.27 Απεικόνιση τροχιάς που εκτέλεσε η xyzθ πλατφόρμα λήψης για μετακίνηση 1cm/sec... 69 Εικόνα 4.28 Απεικόνιση της ταχύτητας για μετατόπιση 3cm για την xyzθ πλατφόρμα λήψης... 70 Εικόνα 4.29 Απεικόνιση τροχιάς που εκτέλεσε η xyzθ πλατφόρμα λήψης για μετακίνηση 3cm/sec... 70 Εικόνα 4.30 Απεικόνιση ταχύτητας για το Amigobot Ρομποτικό Σύστημα... 72 Εικόνα 4.31 Απεικόνιση τροχιάς για το Amigobot Ρομποτικό Σύστημα... 72 Εικόνα 4.32 Καθορισμός συστημάτων συντεταγμένων... 75 Εικόνα 4.33 Απεικόνιση τροχιάς για μετακίνηση τόξου 30 0 με σταθερό βήμα 1.5 0... 76 Εικόνα 4.34 Απεικόνιση τροχιάς για τόξο 30 0 με βήμα [1 0 2 0 ]... 77 Εικόνα 4.35 Απεικόνιση τροχιάς τόξου 30 0 με υπολογισμό της γωνίας από τον αλγόριθμο... 77 Εικόνα 4.36 Απεικόνιση τροχιάς για μετακίνηση τόξου 90 0 με σταθερό βήμα 1.5 0... 78 Εικόνα 4.37 Απεικόνιση τροχιάς για τόξο 90 0 με βήμα [1 0 2 0 ]... 78 Εικόνα 4.38 Τροχιά 30 0 για γωνία 1.5 0 για συνδυασμό παραμέτρων [threshold=500, radius=3, p=6, sigma=1, w=11]... 80 Εικόνα 4.39Τροχιά 30 0 με βήμα [1 0 2 0 ] για συνδυασμό παραμέτρων [threshold=500, radius=3, p=6, sigma=1, w=11]... 80 6
Ευρετήριο Εικόνων Εικόνα 4.40 Τροχιά 30 0 για γωνία που υπολογίζεται στον αλγόριθμο, για συνδυασμό παραμέτρων [threshold=500, radius=3, p=6, sigma=1, w=11]... 81 Εικόνα 4.41 Τροχιά 30 0 για γωνία 1.5 0 για συνδυασμό παραμέτρων [threshold=100, radius=3, p=6, sigma=1, w=11]... 81 Εικόνα 4.42 Τροχιά 30 0 με βήμα [1 0 2 0 ] για συνδυασμό παραμέτρων [threshold=100, radius=3, p=6, sigma=1, w=11]... 82 Εικόνα 4.43 Τροχιά 30 0 για γωνία που υπολογίζεται από τον αλγόριθμο για συνδυασμό παραμέτρων [threshold=100, radius=3, p=6, sigma=1, w=11]... 82 Εικόνα 4.44 Απεικόνιση της τροχιάς τόξου 120 0 για βήμα μετακίνησης 1 0 με τη χρήση του PowerBot... 83 Εικόνα 4.45 Απεικόνιση της τροχιάς τόξου 120 0 για βήμα μετακίνησης 0.9 0 με τι χρήση του PowerBot... 84 Εικόνα 4.46 Μεταβολή ταχύτητας για μετακίνηση 1cm και FPS =6... 86 Εικόνα 4.47 Μεταβολή ταχύτητας για μετακίνηση 0.5cm και FPS=15... 86 Εικόνα 4.48 Μεταβολή ταχύτητας για μετακίνηση 0.5cm και FPS=30... 87 Εικόνα 4.49 Μεταβολή ταχύτητας για μετακίνηση 1cm και FPS=30... 87 Εικόνα 4.50 Μεταβολή ταχύτητας για μετακίνηση 2cm και FPS=30... 88 Εικόνα 4.51 Front Panel VI για εύρεση απόστασης μέσω του μικροεπεξεργαστή... 88 Εικόνα 4.52 Front Panel του μικροεπεξεργαστή... 89 7
Κεφάλαιο 1 ο Κεφάλαιο 1ο ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΟΔΟΜΕΤΡΙΑ ΤΩΝ ΡΟΜΠΟΤ 1.1 Εισαγωγή Η λέξη οδομετρία προέρχεται από τις ελληνικές λέξεις δρόμος και μέτρηση και είναι η πιο διαδεδομένη μέθοδος εύρεσης της θέσης των κινούμενων οχημάτων. Ο όρος «οδομετρία» περικλείει τα βασικά χαρακτηριστικά που πρέπει να αναλύσει κανείς ώστε να επιτύχει τον έλεγχο της τροχιάς των κινούμενων ρομπότ [1]. Για να γίνει αυτό, θα πρέπει αρχικά να βρεθεί αναλυτικά το κινηματικό ή και το δυναμικό μοντέλο του ρομπότ και στη συνέχεια με βάση αυτό ή με άλλες διατάξεις να βρεθεί μια μέθοδος μέτρησης της κίνησης του όπως φαίνεται στην Εικόνα 1.1 [2]. Έχοντας αναλύσει τα παραπάνω τυπικά ζητείται να βρεθεί ένας νόμος ελέγχου της κίνησης του ρομπότ, ώστε να μπορεί το τελευταίο να εκτελέσει την εργασία που θέλουμε. Να σημειωθεί ότι οι εξισώσεις της ορθής «κινοδυναμικής» μπορεί να είναι άγνωστες ή ανακριβείς εξαιτίας του εδάφους που κινείται το ρομπότ ή της ολίσθηση του οχήματος. Για αυτόν τον λόγο η οδομετρία χρησιμοποιείται από κοινού με τις εξισώσεις της ορθής κινηματικής για την εύρεση της απόστασης και της ταχύτητας των κινούμενων οχημάτων. Τα τελευταία χρόνια η επιστημονική κοινότητα κατευθύνθηκε στην εφαρμογή της οπτικής οδομετρίας (virtual odometry) για τον προσδιορισμό της θέσης Εικόνα 1.1 Διάφοροι μέθοδοι που υπάγονται στην οδομετρία των ρομπότ 8
Κεφάλαιο 1 ο κινούμενων οχημάτων [3]. Η οπτική οδομετρία (visual odometry) μπορεί να χρησιμοποιηθεί σε συνδυασμό με άλλους αισθητήρες, όπως το GPS, για τον προσδιορισμό της ακριβής θέσης κινητών μέσων. Να σημειωθεί ότι η μέθοδος αυτή μπορεί να χρησιμοποιηθεί ως ένα μέτρο σύγκρισης της ακρίβειας του GPS ή και στην αντικατάσταση αυτού στις χρονικές περιόδους που παρατηρείται διακοπή λειτουργίας του GPS. Μέχρι στιγμής δεν έχει δημιουργηθεί αυτόνομο σύστημα οπτικής οδομετρίας που να προσδιορίζει με ακρίβεια την θέση και την ταχύτητα κινούμενων οχημάτων. Είναι σημαντικό ακόμη να επισημάνουμε την χρήση της visual odometry για ταυτόχρονο εντοπισμό και χαρτογράφηση (SLAM Simultaneous Localization And Mapping). Επίσης πρέπει να επισημάνουμε την συμβολή της οπτικής οδομετρίας για την αντιμετώπιση της ανακρίβειας των μετρητικών οργάνων που χρησιμοποιούνται στα κινητά μέσα. Για αυτόν τον λόγο μεγάλες βιομηχανίες αυτοκινήτων τα τελευταία χρόνια έχουν επενδύσει μεγάλα ποσά στην έρευνα για την αντιμετώπιση των προβλημάτων αυτών [4]. Σε μερικά αυτοκίνητα έχει τοποθετηθεί βοηθητικό σύστημα οπτικής οδομετρίας για την μέτρηση της απόστασης που έχει διανυθεί. Είναι δύσκολο όμως να εφαρμοστεί αυτόνομο μετρητικό σύστημα οπτικής οδομετρίας λόγω των προβλημάτων που παρουσιάζονται, όπως η παρουσία θορύβου στις εικόνες, η εκτέλεση σε πραγματικό χρόνο, ο μη επαρκής φωτισμός και η αυτόματη εστίαση (auto focus). 1.2 Υπολογιστική Όραση Η όραση αποτελεί την πιο δυναμική μας αίσθηση. Μέσω αυτής αντλούμε τεράστιο όγκο πληροφοριών για το τι μας περιβάλλει [5]. Η πληθώρα των πληροφοριών είναι πολύτιμη τόσο για τα απλά πράγματα, όπως η κίνηση μας, όσο και για πιο περίπλοκες διανοητικές εργασίες, όπως ο προγραμματισμός των εργασιών μας και η ανάπτυξη της νοημοσύνης [6]. Για αυτόν τον λόγο είναι χαρακτηριστική η κινέζικη παροιμία «Μια εικόνα αξίζει όσο χίλιες λέξεις». Πρέπει να σημειωθεί ότι κάθε ζωντανός οργανισμός χρησιμοποιεί την όραση για να αναγνωρίσει το περιβάλλον στο οποίο βρίσκεται και να αντιλαμβάνεται τα αντικείμενα που τον περιβάλλουν. Στην συνέχεια 9
Κεφάλαιο 1 ο χρησιμοποιώντας τις πληροφορίες αυτές εκτελεί χρήσιμες ενέργειες όπως να κινηθεί μέσω στον χώρο που βρίσκεται, να αποφεύγει εμπόδια και να αντιμετωπίζει τους κινδύνους του περιβάλλοντος γενικά. Με άλλα λόγια, ο ανθρώπινος κόσμος περιστρέφεται γύρω από τα οπτικά ερεθίσματα και η σημασία της αποτελεσματικής οπτικής επεξεργασίας πληροφοριών είναι κυρίαρχη για τον άνθρωπο. Για να αλληλεπιδράσει αποτελεσματικά με τον κόσμο ο άνθρωπος πρέπει να είναι σε θέση να επεξεργάζεται, να αναγνωρίζει και να εξαγάγει μεγάλο όγκο πληροφοριών από τις εικόνες που βλέπει. Η προσπάθεια πλήρους μίμησης της βιολογικής όρασης, ακόμα και της προσαρμοστικής πτυχής της, καθώς και η ενσωμάτωση των χαρακτηριστικών αυτής αποτελούν τα κύρια κίνητρα που οδήγησαν τους επιστήμονες στην δημιουργία του κλάδου της επεξεργασίας εικόνας και την πολυετή ανάπτυξη έρευνας στον κλάδο της όρασης των υπολογιστών. Οι επιστήμονες χρησιμοποίησαν τα χαρακτηριστικά της όρασης του ανθρώπου για να δημιουργήσουν τον όρο τεχνητή όραση (computer vision). Με τον όρο αυτόν εννοούμε την επιστήμη και τη τεχνολογία των μηχανών που «βλέπουν». Σκοπός του κλάδου αυτού είναι η προσομοίωση της ανθρώπινης όρασης και η οικοδόμηση συστημάτων που λαμβάνουν τις πληροφορίες από τις εικόνες. Τα σύγχρονα συστήματα όρασης μηχανών είναι εξοπλισμένα με μία ή περισσότερες φωτογραφικές μηχανές, με σκοπό την λήψη εικόνων, την αποθήκευση τους και στην συνέχεια εξαγωγή χρήσιμων πληροφοριών μέσω της επεξεργασίας αυτών [6]. Πρέπει να σημειωθεί ότι με την βοήθεια της όρασης των υπολογιστών έχουν αναπτυχθεί σημαντικές εφαρμογές σε τομείς όπως: οι βιομηχανικοί αυτοματισμοί, η βιοϊατρική και η δορυφορική παρακολούθηση της γης. Παραδείγματα εφαρμογών περιλαμβάνουν την ανάλυση ηλεκτρονικών τμημάτων, τον προσδιορισμό υπογραφών, την οπτική αναγνώριση χαρακτήρα, την αναγνώριση γραφής, αντικειμένου και σχεδίων, την επιθεώρηση υλικών και νομίσματος, την ιατρική ανάλυση εικόνας. Στον τομέα των βιομηχανικών αυτοματισμών ειδικότερα, οι εφαρμογές περιλαμβάνουν την καθοδήγηση ρομπότ για να παίρνουν και να τοποθετούν σωστά διάφορα προϊόντα, την 10
Κεφάλαιο 1 ο επιθεώρηση ποιότητας και ακεραιότητας, την απευθείας λήψης μετρήσεων, την αναγνώριση του χώρου εργασίας από τα ρομπότ και την αποφυγή εμποδίων στο χώρο εργασίας αυτών. Με την ανάπτυξη του κλάδου αυτού παρουσιάστηκαν και τα πρώτα προβλήματα που έπρεπε να αντιμετωπιστούν, όπως αυτή της επεξεργασίας των εικόνων σε πραγματικό χρόνο, την εξαγωγή ωφέλιμης πληροφορίας, την επεξεργασία μεγάλου μεγέθους εικόνας η οποία είναι απόρροια της απαίτησης για υψηλής ανάλυσης εικόνων, την τρισδιάστατη επεξεργασία και την αντιμετώπιση του θορύβου. Το κλασικό πρόβλημα στην όραση των υπολογιστών είναι να ελεγθεί εάν ένα στοιχείο εικόνας περιέχει ή όχι κάποιο συγκεκριμένο αντικείμενο ή χαρακτηριστικό γνώρισμα. Το πρόβλημα της επίτευξης πραγματικού χρόνου αντιμετωπίστηκε με την ανάπτυξη της τεχνολογίας στον τομέα των επεξεργαστών. Πλέον στην αγορά κυκλοφορούν υπολογιστικά συστήματα που εκτελούν μεγάλο όγκο εντολών σε πολύ μικρό χρόνο και διαθέτουν μεγάλη μνήμη. Επίσης οι συσκευές λήψης εικόνων έχουν βελτιωθεί με αποτέλεσμα να έχουμε υψηλής ανάλυσης εικόνες. Το πρόβλημα του θορύβου όμως είναι πολύ δύσκολο να αντιμετωπιστεί, αν και έχουν δημιουργηθεί πολλά φίλτρα για αντιμετώπιση αυτού. Η δυσκολία της αντιμετώπισης του θορύβου έγκειται στο γεγονός ότι έχουμε πολλά ήδη θορύβου. Παρόλα αυτά, το μεγαλύτερο μέρος των θεμελιωδών, δύσκολων προβλημάτων της όρασης υπολογιστών παραμένει δισεπίλυτο. 1.3 Εύρεση της θέσης των ROBOT (Localization) 1.3.1 Εισαγωγή Το πρόβλημα του εντοπισμού της θέσης (localization) του ρομπότ είναι ένα από τα βασικά προβλήματα στην δημιουργία αυτόνομων ρομπότ [7 9]. Είναι πολύ σημαντικό για ένα ρομπότ να γνωρίζει ακριβώς την θέση στην οποία βρίσκεται για να μπορεί να καθορίσει την επόμενη κίνηση του. Η εύρεση του χώρου ενός ρομπότ είναι ευρέως διαδεδομένη στην αγγλική βιβλιογραφία ως robotic localization [10]. Ένα ρομποτικό σύστημα αντλεί πληροφορίες από τον 11
Κεφάλαιο 1 ο περιβάλλον και τα σήματα που δέχεται από αυτό. Επομένως είναι πολύ σημαντικό οι πληροφορίες αυτές να περιέχουν την μικρότερη ασάφεια και ανακρίβεια έτσι ώστε να ελαχιστοποιηθεί η αβεβαιότητα στην αντίληψη του ρομπότ. Επειδή έχει παρατηρηθεί ότι ο προσδιορισμός της θέσης του ρομπότ, είτε μόνο με απόλυτες μετρήσεις είτε μόνο με σχετικές μετρήσεις, δεν είναι αποτελεσματικός σε όλες τις περιπτώσεις, για αυτόν τον λόγο χρησιμοποιείται ο συνδυασμός πολλών αισθητήρων για ακριβή εκτίμηση της θέσης των ρομπότ. 1.3.2 Αισθητήρες χρησιμοποιούμενοι για εύρεση της θέσης των ROBOT Αισθητήρες Υπερήχων Μία μέθοδος εύρεσης θέσης είναι με χρήση αισθητήρων υπερήχων. Ο τρόπος λειτουργίας τους είναι ο εξής: ο πομπός παράγει υπερήχους, τα κύματα προσκρούουν σε αντικείμενα που βρίσκονται στο πεδίο τους και από την επιστροφή των ανακλώμενων κυμάτων, ένα ειδικό κύκλωμα προσδιορίζει την απόσταση του εμποδίου από τον πομπό όπως φαίνεται στην Εικόνα 1.2. Εφόσον είναι γνωστή η ταχύτητα του ήχου, βρίσκοντας τον χρόνο που χρειάζεται το κύμα για την διαδρομή από τον πομπό στο εμπόδιο και πάλι πίσω, μπορεί να υπολογισθεί η απόσταση του πομποδέκτη από το εμπόδιο. Το πρόβλημα με την χρήση αυτών των αισθητήρων στην περίπτωση του robotic localization είναι ότι δεν ενδιαφερόμαστε για τη απόσταση σε σχέση με κάποιο εξωτερικό εμπόδιο, αλλά για την ίδια την θέση του ρομπότ στο χώρο. Για τον ακριβή προσδιορισμό της θέσης του ρομπότ μπορεί να γίνει μια διαφορετική χρήση του αισθητήρα υπερήχων, προσομοιώνοντας τη μέθοδο του Global Positioning System (GPS). Για να έχουμε σχετική ακρίβεια στις μετρήσεις μας, με χρήση της παραπάνω μεθόδου, χρειάζονται Εικόνα 1.2 Πομποδέκτης Υπερήχων τρεις ή τέσσερις αισθητήρες. Να σημειωθεί ότι οι αισθητήρες αυτοί έχουν ένα νεκρό σημείο κοντά στην πηγή του ήχου που δεν 12
Κεφάλαιο 1 ο επιτρέπει την εξαγωγή αποτελεσμάτων. Τέλος, είναι απαραίτητη η χρήση φίλτρων για την εκτίμηση της μετρούμενης τιμής απαλλαγμένης από το θόρυβο. Εντοπισμός μέσω LASER Σε αυτή την μέθοδο, χρησιμοποιείται ένας συνδυασμός δύο συσκευών, μιας που παράγει την ακτίνα laser και ενός ανακλαστήρα [11]. Είναι συσκευές που έχουν μεγάλο όγκο, μεγάλη ακρίβεια και συνήθως χρησιμοποιούνται για μετρήσεις μεγάλων αποστάσεων. Μια παραλλαγή της παραπάνω μεθόδου είναι η τεχνολογία indoor GPS, όπου ένα σύνολο από πομπούς laser δημιουργούν ένα πεδίο σάρωσης που προσομοιάζει το πραγματικό GPS. Ο χειριστής από την άλλη χρησιμοποιεί έναν δέκτη ανακλαστήρα που μπορεί να έχει διάφορες μορφές και με αυτό τον τρόπο το σύστημα εντοπίζει την θέση ενός αντικειμένου. Η τεχνολογία αυτή είναι ιδιαίτερα ακριβή για αυτό χρησιμοποιείται σε μεγάλες βιομηχανίες [12]. Με χρήση Κάμερας Η κάμερα μπορεί να χρησιμοποιηθεί είτε πάνω στο σύστημα κίνησης είτε εκτός αυτού, για τον προσδιορισμό της θέσης ενός ρομπότ [13]. Στην περίπτωση που η κάμερα είναι τοποθετημένη εκτός του ρομπότ εντοπίζεται το κινητό μέσο, από την επεξεργασία των εικόνων, και υπολογίζεται η απόσταση του από κάποιο δεδομένο σημείο του χώρου που κινείται. Από την άλλη μεριά, αν η κάμερα βρίσκεται πάνω στο σύστημα κίνησης, πρέπει να υπάρχει κατάλληλος αλγόριθμος που θα αναγνωρίζει, βάσει κάποιων σταθερών σημαδιών που θα γνωρίζει, την απόσταση του κινούμενου συστήματος από αυτά. Ο κλάδος αυτός βρίσκεται ακόμα σε εξέλιξη και τα προβλήματα του εντοπίζονται στην εξάλειψη του θορύβου και στην επίτευξη του πραγματικού χρόνου εκτέλεσης των αλγορίθμων επεξεργασίας εικόνων. Εντοπισμός με Οπτικούς αισθητήρες Σε αυτήν την κατηγορία ανήκουν οι αισθητήρες, οι οποίοι είτε με άμεσο τρόπο είτε με έμμεσο, δίνουν την θέση ενός σώματος στο χώρο χρησιμοποιώντας 13
Κεφάλαιο 1 ο κάποια οπτική ιδιότητα. Αν και μοιάζουν με τις κάμερες, σκοπός τους δεν είναι να συλλέγουν πληροφορία από την εικόνα, αλλά από την μεταβολή που υφίστανται κάποια σημεία της εικόνας μεταξύ δύο διαδοχικών στιγμών. Υπάρχουν τρεις κύριοι τρόποι χρήσης του οπτικού αισθητήρα [14]: a) Με φωτοδίοδο και κατάλληλο οπτικό δίσκο (encoder) b) Με κάμερα και μελέτη οπτικής ροής c) Με αισθητήρα υπολογισμού Doppler σε ακτίνες laser Στην περίπτωση της μέτρησης με κάμερα και μελέτη της οπτικής ροής, ο οπτικός αισθητήρας μιας κάμερας CMOS (Εικόνα 1.3) ανάλυσης μερικών εκατοντάδων ή χιλιάδων pixels, ενσωματωμένη σε ένα ολοκληρωμένο κύκλωμα που περιλαμβάνει Επεξεργαστή έναν Ψηφιακού Σήματος (Digital Signal Processor DSP), φωτογραφίζει με μεγάλη συχνότητα την επιφάνεια πάνω στην οποία Εικόνα 1.3 CMOS sensor MT9V022 βρίσκεται. Στην συνέχεια ο DSP αναλύει την εικόνα και μέσω ειδικού αλγορίθμου βρίσκει την κίνηση του συστήματος ως προς την επιφάνεια. Σημαντικό ρόλο παίζει ο φωτισμός, ώστε ο DSP να κάνει σωστά την δουλειά του και οι φωτογραφίες να έχουν αρκετή πληροφορία. Ο DSP υπολογίζει την μετακίνηση των φωτεινών και σκοτεινών σημείων, άρα συμπεραίνει κανείς ότι όσο πιο έντονη είναι η αντίθεση μεταξύ αυτών, τόσο καλύτερα μπορεί ο DSP να κάνει την ερμηνεία της κίνησης. Να σημειωθεί ότι όσο καλύτερος είναι ο φωτισμός της επιφάνειας, τόσο καλύτερα θα είναι και τα αποτελέσματα της ανάλυσης του αισθητήρα. 14
Κεφάλαιο 1 ο 1.3.3 Μέθοδοι Localization Dead Reckoning Η Dead Reckoning μέθοδος [15], [16] αποτελεί την πιο διαδεδομένη μέθοδο localization, η οποία εντοπίζει την θέση του ρομπότ ενσωματώνοντας τις εκτιμώμενες μετρήσεις από την κίνηση (π.χ inertial sensing, encoder based odometry). Επειδή η μέθοδος αυτή εισάγει συσσωρευμένα λάθη είναι ανεπαρκής μηχανισμός για μακροπρόθεσμο εντοπισμό, εντούτοις διατηρεί τη χρησιμότητα του ως βοηθητική πηγή πληροφοριών. A priori Map Localization (17) (18) Η μέθοδος αυτή στηρίζεται στο γεγονός ότι το ρομπότ δέχεται σαν είσοδο τον χάρτη του περιβάλλοντος στον οποίο θα κινηθεί. Επομένως επισημαίνονται στον χάρτη χαρακτηριστικά σημεία, τα οποία χρησιμοποιεί το ρομπότ για να εντοπίσει τη θέση του μέσα στο περιβάλλον στο οποίο κινείται. Το πρόβλημα της παραπάνω μεθόδου είναι ότι πρέπει να δημιουργηθεί εκ των προτέρων ο χάρτης του χώρου και είναι μοναδικός για κάθε χώρο, δηλαδή δεν περιέχει την έννοια της δυναμικής δημιουργίας του χάρτη. SLAM [19 21] Για την αντιμετώπιση της αδυναμίας της παραπάνω μεθόδου, δηλαδή η δημιουργία χαρτών που προσαρμόζονται σε κάθε περιβάλλον, χρησιμοποιείται η μέθοδος ταυτόχρονου εντοπισμού και χαρτογράφησης (SLAM Simultaneous Localization And Mapping). SLAM είναι μια τεχνική που χρησιμοποιείται από ρομπότ και αυτόνομα οχήματα, σε ένα άγνωστο περιβάλλον σε μια άγνωστη θέση, για την δημιουργία χάρτη του περιβάλλοντος στο οποίο κινούνται. Το ρομπότ χρησιμοποιεί συγχρόνως τα χαρακτηριστικά γνωρίσματα του χάρτη που κατασκεύασε για να προσδιορίσει την ακριβή του θέση. Με αυτή τη μέθοδο το ρομπότ κάνει χαρτογράφηση και εντοπισμό ταυτόχρονα. Επειδή είναι γνωστό ότι τα περισσότερα πραγματικά συστήματα είναι μη γραμμικά, τα μαθηματικά τους πρότυπα δεν είναι πάντα δυνατόν να 15
Κεφάλαιο 1 ο περιγραφούν από γραμμικές εξισώσεις. Για αυτόν τον λόγο η χρήση της μεθόδου SLAM λύνει τέτοιου είδους προβλήματα [22]. 1.4 Visual Servoing Η μέθοδος που χρησιμοποιεί την οπτική ανατροφοδότηση (visual feedback) για τον έλεγχο των ρομπότ είναι γνωστή ως visual servoing [23]. Οπτικά χαρακτηριστικά γνωρίσματα, όπως τα σημεία, οι γραμμές και περιοχές, μπορούν να χρησιμοποιηθούν από τα ρομποτικά συστήματα για να πιάσουν αντικείμενα και να τα τοποθετήσουν σε επιθυμητή θέση. Ως εκ τούτου, η όραση είναι ένα μέρος του συστήματος ελέγχου που παρέχει την ανατροφοδότηση για τον έλεγχο της κατάστασης του περιβάλλοντος. Ένας από τους βασικούς λόγους για την ενσωμάτωση της οπτικής πληροφορίας στον έλεγχο των ρομπότ είναι η απαίτηση για αυξημένη ευελιξία των ρομποτικών συστημάτων. Το visual servoing χρησιμοποιείται σε πληθώρα εφαρμογών όπως η παρακολούθηση της τροχιάς για τα αυτοκίνητα, η πλοήγηση για κινητές εξέδρες (navigation for mobile platforms) και ο χειρισμός των αντικειμένων [24 26]. Η πιο γενική εφαρμογή είναι ο χειρισμός των αντικειμένων που απαιτεί: την ανίχνευση του αντικειμένου, την κατάτμηση, την αναγνώριση, την ευθυγράμμιση αυτού και το πιάσιμο [27]. Εικόνα 1.4 Visual servoing [28] Για τον έλεγχο των ρομπότ χρησιμοποιούνται πληροφορίες από τις εικόνες είτε στον δισδιάστατο χώρο είτε στον τρισδιάστατο. Αυτό ταξινομεί τα visual servo systems στις εξής κατηγορίες: 16
Κεφάλαιο 1 ο Position based visual servo systems [29], [30] Σε αυτήν την περίπτωση το ρομπότ ανακτά πληροφορίες για τον τρισδιάστατο χώρο στον οποίο κινείται, προσδιορίζοντας την θέση και τον προσανατολισμό του από τις μετρήσεις που παίρνει από την κάμερα που είναι τοποθετημένη στον χώρο. Επομένως ο προσδιορισμός της ακριβής θέσης και παρακολούθησης εκτελείται σε τρισδιάστατο χώρο. Image based visual servo systems [31] Με αυτή τη μέθοδο το ρομπότ χρησιμοποιεί μετρήσεις από τον δισδιάστατο χώρο για να ακολουθήσει την επιθυμητή τροχιά. Ο προσδιορισμός της θέσης και η παρακολούθηση της τροχιάς εκτελούνται μειώνοντας συνεχώς το σφάλμα μεταξύ των πραγματικών και των επιθυμητών μετρήσεων από τις εικόνες. 2 1/2 D visual servo systems Εδώ χρησιμοποιείται ο συνδυασμός των δύο παραπάνω προσεγγίσεων, δηλαδή για τον προσδιορισμό της κίνησης του ρομπότ το σφάλμα ελέγχεται κι από την εικόνα κι από τις μετρήσεις στον τρισδιάστατο χώρο. Γενικότερα η θεωρία του visual servoing προσπαθεί να χτίσει μια σχέση μεταξύ του ρομπότ και των αισθητήρων και να μειώσει στο ελάχιστο τα σφάλματα που υπεισέρχονται κατά την διάρκεια εκτέλεσης εργασιών από τα ρομπότ [32]. 1.5 Επίλογος Σε αυτό το κεφάλαιο έγινε μια εκτενής αναφορά στην όραση των υπολογιστών, στην οδομετρία των ρομπότ καθώς στον προσδιορισμό της θέσης των ρομπότ με χρήση διαφόρων αισθητήρων. Στο τέλος αναλύθηκε η θεωρία του visual servoing κι επισημάνθηκαν η πληρότητα της θεωρίας αυτής στον έλεγχο της θέσης των ρομποτικών συστημάτων. 17
Κεφάλαιο 2 ο Κεφάλαιο 2ο ΘΕΩΡΙΑ ΑΝΙΧΝΕΥΣΗΣ ΑΚΜΩΝ ΚΑΙ ΣΗΜΕΙΩΝ 2.1 Εισαγωγή Οι ακμές είναι βασικά χαρακτηριστικά της εικόνας. Δεν υπάρχει ακόμα ακριβής και ευρέως αποδεκτός μαθηματικός ορισμός της ακμής. Παρόλα αυτά σαν ακμή είθισται να ορίζουμε το σύνορο μεταξύ δύο ομογενών περιοχών μιας εικόνας που έχουν διαφορετικές εντάσεις φωτεινότητας. Αυτός ο ορισμός σημαίνει ότι η ακμή είμαι μια τοπική μεταβολή της φωτεινότητας [5]. Επίσης μπορούμε να ορίσουμε την ακμή ως το όριο μεταξύ ενός αντικειμένου και του φόντου και υποδεικνύει το όριο μεταξύ επικαλυπτόμενων αντικειμένων [33]. Οι ακμές περιέχουν χρήσιμες πληροφορίες για τα όρια των αντικειμένων, οι οποίες μπορούν να χρησιμοποιηθούν σε εφαρμογές ανάλυσης εικόνας, προσδιορισμού αντικειμένων καθώς και φιλτραρίσματος της εικόνας. Όπως αναφέρθηκε προηγουμένως, ακμές είναι τα σημεία στα οποία εμφανίζεται απότομη αλλαγή της φωτεινότητας. Αν θέλαμε να δώσουμε όμως ένα πιο ολοκληρωμένο μοντέλο για τις ακμές, θα μπορούσαμε να τις θεωρήσουμε ως βηματικές ασυνέχειες στο σήμα της εικόνας. Σύμφωνα με το παραπάνω μοντέλο, ο εντοπισμός αυτών των ασυνεχειών μπορεί να αναχθεί στην εύρεση των σημείων όπου εμφανίζονται τοπικά μέγιστα για την πρώτη παράγωγο του «σήματος» ή στην εύρεση των σημείων που μηδενίζουν την δεύτερη παράγωγο του σήματος. Η ανίχνευση ακμών αποτελεί ένα υποσύνολο μιας διαδικασίας που ονομάζεται εξαγωγή χαρακτηριστικών (feature extraction). Πιο συγκεκριμένα οι συνηθέστεροι αλγόριθμοι εξαγωγής χαρακτηριστικών διακρίνονται σε: Αλγόριθμους ανίχνευσης ακμών (edge detection) [34] στη περίπτωση που τα προς ανίχνευση αντικείμενα είναι ακμές (γραμμικά χαρακτηριστικά), 18
Κεφάλαιο 2 ο Αλγόριθμους μετασχηματισμού Hough (34) στη περίπτωση που τα αντικείμενα είναι γραμμές, κύκλοι και άλλα σχήματα που μπορούν να περιγραφούν παραμετρικά, Αλγόριθμους ταύτισης προτύπων (Template matching) [35] στη περίπτωση που τα αντικείμενα έχουν καθορισμένα χαρακτηριστικά. Οι περισσότερες μέθοδοι ανίχνευσης ακμών λειτουργούν υποθέτοντας ότι μια ακμή εμφανίζεται όπου υπάρχει μια ασυνέχεια στη συνάρτηση της έντασης, όπως αναλύσαμε παραπάνω ή μια πολύ απότομη κλίση έντασης (απότομη κλίση αντιστοιχεί σε μεγάλη τιμή της παραγώγου της συνάρτησης της έντασης) στην εικόνα. Χρησιμοποιώντας αυτήν την υπόθεση, εάν πάρουμε την παράγωγο των τιμών έντασης σε όλη την εικόνα και βρούμε τα σημεία όπου η παράγωγος εμφανίζει ένα τοπικό μέγιστο, θα έχουμε εξαγάγει τις ακμές της εικόνας [33]. Το πρόβλημα που προκύπτει τώρα είναι η εύρεση κατάλληλης μεθόδου για την παραγώγιση του πίνακα των εντάσεων για μια εικόνα, τα λεγόμενα φίλτρα παραγώγισης. Η ανίχνευση ακμών αποτελεί μία από τις πιο σημαντικές διαδικασίες στην ψηφιακή επεξεργασία εικόνων. Αποτελεί πεδίο έρευνας για περισσότερα από δέκα χρόνια ενώ συνεχώς αναπτύσσονται καινούργιοι αλγόριθμοι και παραλλαγές των ήδη υπαρχόντων. Καθώς η ανίχνευση ακμών αποτελεί το πρώτο βήμα στον εντοπισμό αντικειμένων στην εικόνα η διαδικασία αυτή αποτελεί μέρος της κατάτμησης (segmentation) της εικόνας. Κατάτμηση της εικόνας ονομάζεται η διαδικασία εντοπισμού και αναγνώρισης αντικειμένων σε μία εικόνα. Δύο έννοιες που συχνά συγχέονται είναι η ανίχνευση ακμών (edge detection)και η ενίσχυση ακμών (edge enhancement). Ανίχνευση ακμών είναι η διαδικασία εντοπισμού των ακραίων εικονοστοιχείων μίας ακμής ενώ ενίσχυση ακμών είναι η διαδικασία αύξησης της αντίθεσης μεταξύ των ακμών και του φόντου έτσι ώστε οι ακμές να είναι πιο ορατές. Μία άλλη παρόμοια διαδικασία που χρησιμοποιείται στην επεξεργασία εικόνων είναι η ιχνηλάτηση ακμών (edge 19
Κεφάλαιο 2 ο tracing) [34] που πραγματοποιείται ακολουθώντας μία ακμή και συλλέγοντας τα εικονοστοιχεία που την αποτελούν σε μία λίστα. 2.2 Φίλτρα Παραγώγισης Με τον όρο φίλτρα παραγώγισης εννοούμε τα φίλτρα με τα οποία πραγματοποιείται η συνέλιξη του σήματος της εικόνας έτσι ώστε να προσεγγιστεί η παράγωγος αυτής. Οι μάσκες ακμών, όπως συνηθίζεται να ορίζουμε τα φίλτρα παραγώγισης, είναι μάσκες που μπορούν να χρησιμοποιηθούν για την ανίχνευση ακμών κατά μήκος διαφορετικών διευθύνσεων. Μάσκες επίσης μπορούν να χρησιμοποιηθούν για την ανίχνευση γραμμών και σημείων. Είναι σημαντικό να επισημάνουμε το γεγονός ότι, τα φίλτρα οριζόντιας διαφόρισης εξαγάγουν τις κατακόρυφες ακμές της εικόνας αλλά δεν ανιχνεύουν τις οριζόντιες ακμές. Αντίθετα τα φίλτρα κατακόρυφης διαφόρισης ανιχνεύουν μόνο τις κατακόρυφες ακμές κι όχι τις οριζόντιες. Ένας συνδυασμός της κατακόρυφης και οριζόντιας διαφόρισης θα είχε σαν αποτέλεσμα την εξαγωγή των οριζόντιων και κατακόρυφων ακμών. Αυτό ακριβώς επιτυγχάνουν οι μάσκες παραγώγισης που χρησιμοποιούνται στους ανιχνευτές ακμών Prewitt (Εικόνα 2.1) και Sobel (Εικόνα 2.2) (36). Εικόνα 2.1 Μάσκες ανίχνευσης ακμών Prewitt Εικόνα 2.2 Μάσκες ανίχνευσης ακμών Sobel 20
Κεφάλαιο 2 ο 2.3 Επίδραση του Θορύβου και Τρόποι Αντιμετώπισης Στην ανίχνευση ακμών στην εικόνα είναι εμφανής η παρουσία θορύβου εξαιτίας πολλών παραγόντων, όπως ο φωτισμός κατά τη στιγμή της λήψης, ο τύπος της φωτογραφικής μηχανής και του φακού, η κίνηση, η θερμοκρασία και γενικότερα οι ατμοσφαιρικές συνθήκες. Η επίδραση του θορύβου στην διαδικασία ανίχνευσης ακμών σε εικόνες μπορεί να οδηγήσει σε μη πραγματικές ακμές. Ειδικότερα σε μεθόδους ανίχνευσης ακμών που χρησιμοποιούν την πληροφορία της πρώτης και της δεύτερης παραγώγου (κι αυτό επειδή γνωρίζουμε ότι η διαφόριση είναι μια υψηλοπερατή πράξη) οδηγούμαστε στην ανίχνευση περισσότερων εσφαλμένων ακμών λόγω του αυξημένου θορύβου. Πρέπει, λοιπόν, να δοθεί προσοχή στη χρήση των παραπάνω μεθόδων στις περιοχές που η μεταβλητότητα της εικόνας είναι μικρή, επειδή ο θόρυβος προκαλεί εσφαλμένους μηδενισμούς [5]. Κατά την διαδικασία καταγραφής της εικόνας εισάγονται οι παρακάτω παραμορφώσεις είδη θορύβου [5]: Θάμπωμα (blurring) Θόρυβο καταγραφής (noise) Γεωμετρικές παραμορφώσεις Επομένως είναι απολύτως αναγκαίο, πριν από κάθε εφαρμογή, η διόρθωση αυτών των παραμορφώσεων. Η μείωση των γεωμετρικών παραμορφώσεων είναι καταλυτική όπου η γεωμετρική πληροφορία είναι χρήσιμη. Η διαδικασία της αποκατάστασης (restoration), η οποία χρησιμοποιείται για την ελάττωση της θόλωσης εφαρμόζεται σε εφαρμογές όπου υπάρχει κίνηση. Στις πιο πολλές εφαρμογές χρειάζεται επίσης να γίνει φιλτράρισμα της εικόνας έτσι ώστε να απομακρύνουμε τον θόρυβο καταγραφής. Για την απομάκρυνση του θορύβου χρησιμοποιούνται διάφορα γραμμικά ή μη γραμμικά φίλτρα και συνήθως προτιμούνται τα μη γραμμικά, εφόσον έχουν την ιδιότητα να κρατούν την αντίθεση των περιγραμμάτων. 21
Κεφάλαιο 2 ο Μια άλλη μέθοδος που οδηγεί σε ενίσχυση των αλλαγών που μας ενδιαφέρουν και σε καταστολή των επιδράσεων του θορύβου είναι η μέθοδος λείανσης της εικόνας [5]. Για την επιλογή κατάλληλου φίλτρου λείανσης πρέπει να γνωρίζουμε το μοντέλο μιας ακμής, το μοντέλο του θορύβου και τα κριτήρια, τα οποία πρέπει να ικανοποιεί το φίλτρο ώστε η απόκρισή του για το μοντέλο ακμής να είναι η καλύτερη δυνατή. Επειδή όμως είναι πολύ δύσκολο να γνωρίζουμε το είδος του θορύβου ακριβώς για την λείανση της εικόνας, συνήθως χρησιμοποιείται το φίλτρο Gaussian. Αυτό είναι λογικό μιας και τα φίλτρα λείανσης πρέπει να δίνουν μεγαλύτερο βάρος στα κεντρικά pixel και λιγότερο στα απομακρυσμένα pixel, ακριβώς όπως ένα Gaussian φίλτρο. Το Gaussian φίλτρο δεν είναι το μόνο φίλτρο που πληρεί τις προϋποθέσεις κριτήρια για την επιλογή του καταλληλότερου φίλτρου. Ωστόσο το γεγονός ότι παρουσιάζει διάφορες σημαντικές ιδιότητες το κάνουν ένα από τα πιο συχνά χρησιμοποιούμενα φίλτρα για την λείανση των εικόνων και την αντιμετώπιση του προβλήματος του θορύβου. Σε ένα τέτοιο φίλτρο το σημαντικό είναι να καθορίσουμε την τιμή της κλίμακας εξομάλυνσης (sigma). Πρέπει όμως να είμαστε πάρα πολύ προσεκτικοί στην επιλογή της τιμής αυτής διότι αυξάνοντας την κατά πολύ μπορεί να οδηγήσει σε εξαφάνιση ακμών και σε παταγώδη αποτυχία του αλγορίθμου ανίχνευσης ακμών. Βελτίωση της λείανσης μπορούμε να επιτύχουμε αν εξομαλύνουμε μια ήδη εξομαλυμένη εικόνα, πολλαπλασιάζοντας ένα Gaussian φίλτρο με ένα άλλο Gaussian φίλτρο [33]. 2.4 Προσδιορισμός Σημείων Ακμών με χρήση Φίλτρων Το επιθυμητό είναι έχοντας υπολογίσει το μέγεθος της κλίσης να μπορούμε να βρούμε τα σημεία ακμών. Ωστόσο δεν υπάρχει κανένας αντικειμενικός καθορισμός των σημείων ακμών [33]. Το μέγεθος κλίσης, τώρα μπορεί να θεωρηθεί σαν μία αλυσίδα χαμηλών υπερυψώσεων. Σημειώνοντας τοπικά μέγιστα σημειώνουμε κάποια απομονωμένα σημεία, τις λεγόμενες κορυφές των υπερυψώσεων. Ένα καλύτερο 22
Κεφάλαιο 2 ο κριτήριο είναι να τεμαχιστεί το μέγεθος κλίσης κατά μήκος της κατεύθυνσης κλίσης, η οποία πρέπει να είναι κάθετη στην ακμή και να σημειωθούν τα σημεία κατά μήκος του κάθε τμήματος όπου το μέγεθος της κλίσης είναι μέγιστο. Αυτή η διαδικασία καλείται μη μέγιστη καταστολή (non maximum suppression) [37]. Ουσιαστικά, αναμένεται η εμφάνιση των σημείων ακμών κατά μήκος αλυσίδων που έχουν την μορφή καμπύλης. Τα σημαντικά βήματα σε μία μη μέγιστη καταστολή είναι: a) καθορισμός εάν ένα συγκεκριμένο σημείο είναι ένα σημείο ακμής b) και, εάν είναι, βρίσκουμε το επόμενο σημείο ακμής. Ακολουθώντας αυτά τα βήματα, είναι εύκολο να απαριθμηθούν όλες οι αλυσίδες ακμών. Βρίσκουμε το πρώτο σημείο ακμής, το σημειώνουμε, επεκτείνουμε όλες τις αλυσίδες που διέρχονται από αυτό το σημείο, σημειώνοντας όλα τα σημεία κατά μήκος αυτών των αλυσίδων και συνεχίζουμε κάνοντας την ίδια διαδικασία για όλα τα σημεία ακμών που δεν έχουν σημειωθεί. Για να καθορίσουμε εάν το μέγεθος της κλίσης είναι μέγιστο σε κάποιο pixel αρκεί να το συγκρίνουμε με τις τιμές των προηγούμενων και των επόμενων pixel κατά μήκος της κατεύθυνσης της κλίσης. Είναι, δηλαδή, μια συνάρτηση απόστασης κατά μήκος της κλίσης. Ουσιαστικά, κινούμαστε προς τα εμπρός στην επόμενη σειρά (ή τη στήλη) pixel και προς τα πίσω στην προηγούμενη για να καθορίσουμε εάν το μέγεθος της κλίσης στο συγκεκριμένο pixel είναι μεγαλύτερο. Η κατεύθυνση της κλίσης δεν μεταβιβάζεται, συνήθως, μέσω του επόμενου pixel και έτσι πρέπει να χρησιμοποιήσουμε έναν γραμμικό παρεμβολέα για να καθορίσουμε την τιμή του πλάτους της κλίσης στα σημεία που ενδιαφερόμαστε. Εάν αποδείξουμε ότι το pixel είναι ένα σημείο ακμής, το επόμενο σημείο ακμής μπορεί να βρεθεί χρησιμοποιώντας μια βηματική κάθετη στην κλίση. Αυτή η βηματική δεν σταματάει σε ένα pixel, γι αυτό συνήθως εξετάζονται τα γειτονικά pixel που βρίσκονται προς σε αυτή την κατεύθυνση. Αυτή η προσέγγιση οδηγεί σε ένα σύνολο καμπυλών. 23
Κεφάλαιο 2 ο Ένα μεγάλο πλήθος αυτών των καμπυλών αντιστοιχούν σε μία λογική αντιπροσώπευση ορίων αντικειμένων. Αυτό οφείλεται κατά ένα μέρος στο γεγονός ότι έχουμε σημειώσει τοπικά μέγιστα του εύρους της κλίσης, χωρίς να εξετάσουμε πόσο μεγάλα είναι αυτά τα τοπικά μέγιστα. Για τον λόγο αυτό συνήθως χρησιμοποιούμε ένα κατώφλι για να εξασφαλίσουμε ότι τα τοπικά μέγιστα που μαρκάρονται είναι μεγαλύτερα από ένα κατώτατο όριο. Το αποτέλεσμα που προκύπτει είναι ένα σύνολο διακοπτόμενων ακμών μιας και δεν ξεπερνούν όλα τα τμήματα της ακμής το κατώφλι. Για να ξεπεραστεί το πρόβλημα αυτό χρησιμοποιείται συνήθως το τέχνασμα της υστέρησης (hysteresis), κατά το οποίο χρησιμοποιούνται δύο κατώφλια εκ των οποίων το μεγαλύτερο χρησιμοποιείται όταν ξεκινάμε να ανιχνεύουμε μία αλυσίδα ακμών και το μικρότερο στη συνέχεια της διαδικασίας ανίχνευσης (Εικόνα 2.3). Με το τέχνασμα αυτό επιτυγχάνεται βελτίωση στην εξαγωγή ακμών. Εικόνα 2.3 Μη μέγιστη καταστολή και υστέρηση σε θέματα ανίχνευσης ακμών 2.5 Αλγόριθμοι Ανίχνευσης Ακμών Η ανίχνευση ακμών είναι ορολογία η οποία χρησιμοποιείται στην επεξεργασία εικόνων και στην όραση των υπολογιστών, ειδικότερα στους τομείς της εύρεσης χαρακτηριστικών. Οι αλγόριθμοι ανίχνευσης ακμών στοχεύουν στο να εντοπίσουν σημεία στην ψηφιακή εικόνα όπου η φωτεινότητα της εικόνας αλλάζει ριζικά. Υπάρχουν πολλές μέθοδοι ανίχνευσης ακμών [33], αλλά οι περισσότεροι ομαδοποιούνται σε δύο κατηγορίες, search based (χρήση της 24
Κεφάλαιο 2 ο πρώτης παραγώγου) και zero crossing based (χρήση δεύτερης παραγώγου). Να σημειωθεί ότι, σε όλες τις μεθόδους, πριν την διαδικασία της ανίχνευσης ακμών προηγείται λείανση της εικόνας με χρήση συνήθως Γκαουσιανού φίλτρου για μείωση του θορύβου. 2.5.1 Μέθοδος Canny για Ανίχνευση Ακμών Ο πλέον διαδεδομένος αλγόριθμος ανίχνευσης ακμών, ο οποίος χρησιμοποιείται ευρέως αυτή τη στιγμή είναι ο ανιχνευτής ακμών Canny [6]. Ο Canny αντιμετώπισε το πρόβλημα ανίχνευσης ακμών σαν ένα πρόβλημα επεξεργασίας σήματος με σκοπό τον σχεδιασμό ενός βέλτιστου ανιχνευτή ακμών. Με τη μέθοδο αυτή επιτυγχάνονται τα εξής: a) Βέλτιστη ανίχνευση ακμών χωρίς λανθασμένες αποκρίσεις, b) Καλή εύρεση θέσης με το σφάλμα απόστασης της ανιχνευθείσας ακμής και της πραγματικής να είναι ελάχιστο και c) Εξάλειψη πολλαπλών αποκρίσεων για μια συγκεκριμένη ακμή [37]. Η απλούστερη μορφή του αλγορίθμου ανίχνευσης ακμών είναι η ακόλουθη: i) Περνάμε την εικόνα από ένα δυσδιάστατο Gaussian φίλτρο για εξομάλυνση. ii) Διαφορίζουμε την εικόνα σε δύο ορθογώνιες κατευθύνσεις. iii) Υπολογίζουμε το εύρος και την κατεύθυνση της κλίσης. iv) Εκτελούμε non maximal suppression. Οποιαδήποτε τιμή κλίσης που δεν είναι τοπικό μέγιστο τίθεται μηδέν. Η κατεύθυνση κλίσης χρησιμοποιείται σε αυτήν την διαδικασία. v) Χρησιμοποιούμε ένα κατώφλι για να αποκλείσουμε τις ασήμαντες ακμές. 25
Κεφάλαιο 2 ο Να σημειωθεί ότι ο Canny εισήγαγε την ιδέα της υστέρησης κατωφλίου (thresholding hysterisis), το οποίο είναι ίδιο με την υστέρηση που αναφέραμε προηγουμένως. Έτσι, λοιπόν, ορίζουμε δύο διαφορετικές τιμές κατωφλίου με την μεγαλύτερη να είναι 2 3 φορές η χαμηλότερη (Εικόνα 2.3) [37]. Κατά συνέπεια, οποιοδήποτε εικονοκύτταρο σε μία λίστα ακμών που έχει κλίση μικρότερη από το υψηλότερο κατώφλι και μεγαλύτερη από το χαμηλότερο κατώφλι ταξινομείται ως έγκυρο σημείο ακμών. Να επισημάνουμε ότι αυξάνοντας τις τιμές των δύο κατωφλίων μειώνεται ο αριθμός των ακμών που ανιχνεύονται. 2.5.2 Τελεστής Laplacian για Ανίχνευση Ακμών Μια άλλη προσέγγιση στην ανίχνευση ακμών είναι η χρήση του τελεστή Laplace [37], ο οποίος ορίζεται συναρτήσει των μερικών παραγώγων δευτέρας τάξης. Ένα από τα πλεονεκτήματα του τελεστή Laplacian είναι ότι είναι ισοτροπικός (όπως και ο τελεστής Gaussian), δηλαδή έχει τις ίδιες ιδιότητες για όλες τις κατευθύνσεις. Όμως λόγο του γεγονότος ότι ο τελεστής αυτός εμπεριέχει τον όρο της δεύτερης παραγώγου παρουσιάζει μεγαλύτερη αδυναμία στην παρουσία θορύβου σε σχέση με τις μεθόδους που χρησιμοποιούν όρους πρώτης παραγώγου. Επιπλέον να τονίσουμε ότι το μεγαλύτερο μειονέκτημα της μεθόδου αυτής είναι ότι αδυνατεί να προσδιορίσει την διεύθυνση της ακμής. Αυτοί είναι κι οι κύριοι λόγοι για τους οποίους η χρήση του τελεστή αυτού είναι σπάνια. Ο συνδυασμός του τελεστή Laplacian με το φίλτρο Gauss για επίτευξη επιθυμητής λείανσης οδήγησε στην χρήση του LoG ( Laplacian of Gaussian) τελεστή [37]. 2.5.3 Τελεστής Marr Hildreth για Ανίχνευση Ακμών Στην όραση υπολογιστών, ο αλγόριθμος Marr Hildreth είναι μια μέθοδος ανίχνευσης ακμών σε ψηφιακές εικόνες, που είναι συνεχείς καμπύλες όπου υπάρχουν δυνατές και γρήγορες εναλλαγές στην φωτεινότητα της εικόνας. 26
Κεφάλαιο 2 ο Η Marr Hildreth μέθοδος ανίχνευσης ακμών είναι απλή και λειτουργεί με συνέλιξη της εικόνας με τη Λαπλασιανή της συνάρτησης Gauss ή σαν γρήγορη προσέγγιση με διαφόριση της Γκαουσιανής. Η ανίχνευση των μηδενισμών(zerocrossings) που προκύπτουν στην παραπάνω πράξη στο φιλτραρισμένο αποτέλεσμα οδηγεί στον εντοπισμό των ακμών. Ο ανιχνευτής εικόνας Laplacian of the Gaussian κάποιες φορές αναφέρεται επίσης ως Mexican hat wavelet (Εικόνα 2.4), εξαιτίας του οπτικού σχήματος του, αναποδογυρισμένο. Ο ανιχνευτής Marr Hildreth ωστόσο υποφέρει από δύο βασικούς περιορισμούς: 1) παράγει αποκρίσεις που δεν ανταποκρίνονται σε ακμές, οι λεγόμενες «ψευδοακμές» και 2) έχει παρατηρηθεί ότι το σφάλμα εντοπισμού της θέσης σε κυρτές επιφάνειες μπορεί να είναι μεγάλο. Σήμερα υπάρχουν πολύ καλύτερες μέθοδοι εντοπισμού ακμών, όπως ο ανιχνευτής ακμών Canny, ο οποίος βασίζεται Εικόνα 2.4 Mexican hat wavelet στην εύρεση της κατεύθυνσης του τοπικού μεγίστου στο μέγεθος κλίσης ή στην διαφορική προσέγγιση [37]. 2.5.4 Τελεστής Spacek για Ανίχνευση Ακμών Ο Spacek στον αλγόριθμο ανίχνευσης ακμών χρησιμοποίησε μια μέτρηση απόκρισης που περιελάμβανε και τους τρείς παράγοντες του αλγορίθμου Canny [37]. Ουσιαστικά με τον εντοπισμό της θέσης ο Canny μεγιστοποιούσε την αναλογία του σήματος σε σχέση με το θόρυβο (SNR) ενώ o Spacek μεγιστοποιούσε την αναλογία του σήματος σε σχέση με τον θόρυβο και τον μέγιστο διαχωρισμό. Στον αλγόριθμο του Spacek, το ιδανικό φίλτρο έμοιαζε να είναι της ίδιας μορφής με του Canny, αφού η ακμή ήταν ξανά μοντελοποιημένη σαν βηματική συνάρτηση. Μετά από απλοποίηση αυτό κατέληγε σε ένα βέλτιστο μονοδιάστατο φίλτρο λείανσης του θορύβου. 27
Κεφάλαιο 2 ο Σε εφαρμογές, το πλεονέκτημα του αλγορίθμου αυτού, μπορεί να εξακριβωθεί μόνο με πειραματισμό. Για παράδειγμα μια έρευνα βρήκε πλεονέκτημα στον ανιχνευτή Spacek στην αυτόματη αναγνώριση προσώπου, λόγω της ικανότητας του να διατηρεί μια μεγαλύτερη αναλογία χαρακτηριστικών σημείων σε σημεία ακμών σε σχέση με αυτά που βρέθηκαν από τον ανιχνευτή Canny. Η δυσκολία της μεθόδου παρουσιάστηκε στη χρήση της μονοδιάστατης μορφής φίλτρου για την λείανση της εικόνας, η οποία αντιμετωπίστηκε με το δισδιάστατο ανιχνευτή εικόνας [37]. 2.5.5 Τελεστής Petrou για Ανίχνευση Ακμών Ο Petrou αμφισβήτησε την εγκυρότητα του μοντέλου της βηματικής ακμής για πραγματικές εικόνες [37]. Δεδομένου ότι η σύνθετη απόκριση ενός συστήματος απόκτησης εικόνας μπορεί να θεωρηθεί ότι είναι αυτή ενός κατωδιαβατού φίλτρου, κάθε βηματική αλλαγή στην εικόνα θα λειανθεί για να γίνει ράμπα. Επομένως για τον Petrou ένα πιο αληθοφανές μοντέλο της ακμής είναι η ράμπα κι όχι η βηματική. Εφόσον σε αυτή την μέθοδο η διαδικασία βασίζεται σε ακμή ράμπας και εξαιτίας των επιβαλλόμενων ορίων από τον σχηματισμό της, ο ανιχνευτής Petrou χρησιμοποιεί ίχνη ελάχιστου πλάτους 12 pixels, ώστε να διατηρήσει βέλτιστες ιδιότητες. Αντιλαμβανόμαστε ότι ο παραπάνω ανιχνευτής μπορεί να επιβάλλει μεγαλύτερη υπολογιστική πολυπλοκότητα αλλά είναι ένας φυσικός υποψήφιος για εφαρμογές των οποίων οι ιδιότητες διατυπώθηκαν. Ο ανιχνευτής τέθηκε σε εφαρμογή με παρόμοιο τρόπο με τον ανιχνευτή Spacek [37]. 2.5.6 Ανιχνευτής ακμών Prewitt Με την χρήση του ανιχνευτή ακμών Prewitt στην ουσία υπολογίζεται ένα διάνυσμα κλίσης ακμών για κάθε pixel της εκάστοτε εικόνας. Το αποτέλεσμα της χρήσης του είναι η δημιουργία δύο νέων εικόνων, από τις οποίες η μια εμφανίζει ενισχυμένες τις ακμές της αρχικής εικόνας και η άλλη εμφανίζει τις κατευθύνσεις των ακμών. Η κλίση των ακμών κι η κατεύθυνσή τους 28
Κεφάλαιο 2 ο προσδιορίζεται με την χρήση των μερικών παραγώγων της εικόνας σε οριζόντια και σε κάθετη κατεύθυνση. Για τον υπολογισμό των μερικών παραγώγων δεν χρησιμοποιείται κάποιο από τα φίλτρα οριζόντιας και κατακόρυφης παραγώγισης αλλά μάσκες παραγώγισης (Εικόνα 2.1). 2.5.7 Ανιχνευτής ακμών Sobel Ο ανιχνευτής ακμών Sobel λειτουργεί κατά παρόμοιο τρόπο με τον ανιχνευτή ακμών Prewitt, με μόνη διαφορά ότι για τον προσδιορισμό της κλίσης και της κατεύθυνσης ακμών χρησιμοποιούνται διαφορετικές μάσκες παραγώγισης (Εικόνα 2.2). 2.6 Αλγόριθμοι Ανίχνευσης Σημείων Η ανίχνευση γωνιών ή γενικότερα η ανίχνευση σημείων ενδιαφέροντος είναι μια προσέγγιση που χρησιμοποιείται στα συστήματα όρασης υπολογιστών για να μπορούμε να εξαγάγουμε ορισμένα είδη χαρακτηριστικών γνωρισμάτων έτσι ώστε να βγάλουμε χρήσιμα συμπεράσματα από μια εικόνα. Τα σημεία γωνιών είναι σημεία της εικόνας, τα οποία συνήθως αντιστοιχούν σε γωνίες αντικειμένων. Η ιδιαιτερότητα αυτών των σημείων είναι ότι μπορούν να αντιστοιχηθούν με μοναδικό τρόπο σε μία ακολουθία εικόνων. Οι αλγόριθμοι ανίχνευσης σημείων μπορούν να ταξινομηθούν σε δύο κατηγορίες. H πρώτη κατηγορία αφορά αλγορίθμους, οι οποίοι αρχικά εξάγουν ακμές και στη συνέχεια εντοπίζουν σημεία πάνω στις ακμές τα οποία έχουν μέγιστη καμπυλότητα ή ενώ οι αλγόριθμοι της δεύτερης κατηγορίας αναζητούν σημεία όπου οι ακμές τέμνονται. Η ανίχνευση σημείων χρησιμοποιείται συχνά στην ανίχνευση κίνησης, στην παρακολούθηση τροχιάς κινητού μέσου και στην αναγνώριση αντικειμένου [34 40]. 2.6.1 Αλγόριθμος Harris για Ανίχνευση Σημείων Ο ανιχνευτής σημείων ή ανιχνευτής γωνιών (Corner Detector) που επινοήθηκε από τους Harris και Stephens το 1988 [34] χρησιμοποιείται ευρύτατα 29