Σχεδιασμός και υλοποίηση ηλεκτρονικών κυκλωμάτων πραγματικού χρόνου για όραση μηχανής
Authors: Αμανατιάδης Άγγελος 
Published: August 2021

Η ψηφιακή κλιμάκωση εικόνας είναι πλέον πολύ διαδεδομένη σε πολλά ηλεκτρονικά συστήματα με ιδιαίτερη έμφαση σε καταναλωτικά προϊόντα όπως βιντεοκάμερες, κινητά τηλέφωνα και ψηφιακές φωτογραφικές μηχανές. Πέρα από τις ηλεκτρονικές συσκευές όμως, συναντιέται και σε εφαρμογές λογισμικού όπως προγράμματα ψηφιακής επεξεργασίας εικόνας, εφαρμογές ιατρικής απεικόνισης και εφαρμογές τηλεπισκόπησης. Η ψηφιακή κλιμάκωση εικόνας εντάσσεται στο γενικότερο ερευνητικό πεδίο της παρεμβολής κατά την οποία έχουμε μία ανακατάταξη των αρχικών εικονοστοιχείων στο πεδίο του χώρου. Πέρα από τη σωστή ανακατανομή των εικονοστοιχείων στο χώρο, σκοπός της κάθε παρεμβολής είναι να υπολογίσει κατά το βέλτιστο δυνατό τρόπο τη νέα τιμή φωτεινότητας των εικονοστοιχείων αυτών. Βασικός στόχος του πρώτου από τα τρία μέρη αυτής της Διδακτορικής Διατριβής ήταν η μελέτη και δημιουργία αλγορίθμων ψηφιακής κλιμάκωσης εικόνας με στόχο την διατήρηση της ποιότητας της τελικής εικόνας σε σχέση με την αρχική, διατηρώντας όμως τις ακμές ανέπαφες και συνεχείς. Η πρώτη μέθοδος που περιγράφεται είναι ένας ασαφής αλγόριθμος ψηφιακής κλιμάκωσης εικόνας βασιζόμενος στη χωρική πληροφορία. Η μέθοδος χρησιμοποιεί το πολύ τέσσερα γειτονικά εικονοστοιχεία, συμβάλλοντας έτσι σε μικρότερο υπολογιστικό κόστος. Η ασαφής μέθοδος παρεμβολής εφαρμόζει ένα συνεχές σάρωμα στην αρχική εικόνα με μια μάσκα, λαμβάνοντας υπόψιν το ποσοστό επικάλυψης των εικονοστοιχείων από τη μάσκα καθώς επίσης και τις διαφορές σε φωτεινότητα των επικαλυπτόμενων αυτών εικονοστοιχείων. Το χαρακτηριστικό αυτό, της χρήσης των διαφορών σε φωτεινότητα των επικαλυπτόμενων εικονοστοιχείων συμβάλει στη διατήρηση των ακμών σε επιθυμητή ποιότητα, με αποτέλεσμα η προτεινόμενη τεχνική να παρουσιάζει τα καλύτερα ποιοτικά αποτελέσματα, έναντι πολύ διαδεδομένων τεχνικών, με βάση το κριτήριο της ποιότητας της παρεμβολής, χωρίς να χρειάζεται επιπλέον προ-επεξεργασία της εικόνας για την ανίχνευση αυτών. Στη συνέχεια η μέθοδος αυτή υλοποιήθηκε σε υλικό με στόχο τη λειτουργία της σε πραγματικό χρόνο. Η υλοποίηση σε υλικό του προτεινόμενου αλγορίθμου κλιμάκωσης εικόνας σχεδιάστηκε με τέτοιο τρόπο ώστε να πραγματοποιεί μεγέθυνση εικόνας βασιζόμενο σε μία ακολουθία διαδοχικής διοχέτευσης δεδομένων (pipeline). Επίσης, όπου ήταν δυνατό χρησιμοποιήθηκε παράλληλη επεξεργασία για να βελτιωθεί ακόμα περισσότερο η χρονική απόκριση του συστήματος. Η δομή βασίζεται και επικεντρώνεται στη μονάδα ασαφούς συνεπαγωγής και στην απαιτούμενη προ-επεξεργασία και μετά-επεξεργασία των εισόδων και εξόδων, αντίστοιχα. Οι απαιτήσεις σε σκιώδη (cached) μνήμη λόγω συνέλιξης είναι μικρές από τη στιγμή που χρειάζονται δύο το πολύ γραμμές ή στήλες της εικόνας για οριζόντια ή κάθετη σάρωση της εικόνας, αντίστοιχα. Το σύστημα λειτουργεί σε συχνότητα 65MHz με δυνατότητα μεγέθυνσης εικονοσειρών σε πραγματικό χρόνο. Μπορεί να μεγεθύνει εικόνες μέχρι 800% και η μέγιστη ανάλυση της αρχικής εικόνας μπορεί να είναι 1024 x 1024 εικονοστοιχεία. Η δεύτερη μέθοδος ψηφιακής κλιμάκωσης εικόνας που παρουσιάζεται στη διατριβή αυτή είναι ένας αλγόριθμος λογαριθμο-πολικής ψηφιακής κλιμάκωσης εικόνας βασιζόμενος επίσης στη χωρική πληροφορία. Ο προτεινόμενος αλγόριθμος παρεμβολής βασίζεται σε δύο ιδιότητες της λογαριθμο-πολικής διατύπωσης του βιολογικού μοντέλου του ματιού. Πιο συγκεκριμένα, στηρίζεται στο γεγονός ότι η κατανομή των φωτουποδοχέων στον αμφιβληστροειδή χιτώνα δεν είναι ομοιόμορφη και στο ότι η πυκνότητα των φωτουποδοχέων είναι μεγαλύτερη στη κεντρική περιοχή του αμφιβληστροειδούς και μειώνεται εκθετικά όσο πλησιάζουμε την περίμετρο του αμφιβληστροειδούς. Τα δύο παραπάνω βιολογικά μοντέλα υιοθετήθηκαν στην προτεινόμενη μέθοδο ψηφιακής κλιμάκωσης εικόνας. Πιο συγκεκριμένα, εφαρμόζει μεγαλύτερα βάρη σε εικονοστοιχεία της κεντρικής περιοχής παρεμβολής και μειώνει λογαριθμικά τα βάρη των εικονοστοιχείων καθώς απομακρυνόμαστε προς την περιφέρεια. Σκοπός του αλγορίθμου αυτού ήταν η διατήρηση της γεωμετρικής δομής γύρω από τις ακμές με ταυτόχρονη καλή ποιότητα παρεμβολής στην υπόλοιπη εικόνα, χωρίς επιπλέον χρήση προεπεξεργασίας. Ο προτεινόμενος αυτός αλγόριθμος κλιμάκωσης παρουσιάζει τα δεύτερα καλύτερα ποιοτικά αποτελέσματα με βάση το κριτήριο της ποιότητας της παρεμβολής, μετά από τον αλγόριθμο ασαφής κλιμάκωσης, με το επιπλέον χαρακτηριστικό της δυνατότητας κλιμάκωσης σε πραγματικό χρόνο. Επίσης, ο προτεινόμενος αλγόριθμος μπορεί να εφαρμοστεί σε έγχρωμες εικόνες και σε εικόνες απόχρωσης του γκρι για οποιονδήποτε παράγοντα κλιμάκωσης. Στη διατριβή αυτή και λόγω των ξεχωριστών χαρακτηριστικών και των ποικίλων εφαρμογών της ψηφιακής κλιμάκωσης εικόνας, διενεργήθηκε και μία μελέτη και κατηγοριοποίηση των μεθόδων αξιολόγησης των αλγορίθμων ψηφιακής κλιμάκωσης εικόνας. Η κατηγοριοποίηση περιλαμβάνει δύο ομάδες με βάση τα χαρακτηριστικά που θέλουμε να αξιολογήσουμε. Έτσι, η πρώτη κατηγορία μελετά την απόδοση των αλγορίθμων με βάση την ακρίβεια και την ποιότητα της τελικής κλιμακωμένης εικόνας. Σε αυτή την κατηγορία μελετάται και συγκρίνεται ο ίδιος ο αλγόριθμος αλλά και η τελική εικόνα την οποία εξάγει. Επίσης, προτείνεται μία μέθοδος σύγκρισης αλγορίθμων κλιμάκωσης εικόνων με βάση οπτικά μεγεθυμένες εικόνες. Με τον τρόπο αυτό, οι τελικές συγκρίσεις μπορούν να γίνουν με βάση τις οπτικά μεγεθυμένες εικόνες, οι οποίες δεν έχουν υποστεί ψηφιακή επεξεργασία και τις οποίες κατά κάποιο τρόπο μπορούμε να τις χαρακτηρίσουμε ως ιδανικές. Η δεύτερη κατηγορία μελετά τους ίδιους τους αλγόριθμους με βάση την πολυπλοκότητά τους και τις απαιτήσεις τους σε ενσωματωμένη μνήμη. Τα χαρακτηριστικά αυτά είναι πολύ χρήσιμα σε περιπτώσεις που θέλουμε να υλοποιήσουμε τέτοιους αλγορίθμους σε συγκεκριμένες συσκευές περιορισμένων διαθέσιμων πόρων όπως κινητά τηλέφωνα και φορητές ψηφιακές κάμερες. Αυτή η εξέλιξη όμως, της φορητότητας των καμερών, έχει δημιουργήσει το πρόβλημα της μη δυνατής σταθερής λήψης εικόνας και εικονοσειρών. Οι εικόνες και οι εικονοσειρές οι οποίες έχουν ληφθεί από τέτοιες κάμερες συνήθως δεν είναι σταθεροποιημένες λόγω των κραδασμών, των δονήσεων και των ανεξέλεγκτων μετακινήσεων του ανθρώπινου χεριού. Οι μετακινήσεις αυτές επηρεάζουν την ποιότητα της τελικής εικόνας καθώς επίσης υποβαθμίζουν και την απόδοση πολλών εφαρμογών όρασης μηχανής. Το πρόβλημα αυτό καλείται να λύσει η σταθεροποίηση εικόνας. Στο δεύτερο μέρος της διατριβής, προτείνεται μία μέθοδος ψηφιακής σταθεροποίησης εικόνας. Η νέα αυτή μέθοδος ψηφιακής σταθεροποίησης εικόνας βασίζεται στην ανάλυση των ανεξάρτητων συνιστωσών. Η συνολική κίνηση που παρατηρείται σε εικονοσειρές οι οποίες έχουν ληφθεί από μικρές και φορητές κάμερες οφείλεται κυρίως σε δύο ανεξάρτητες κινήσεις: στην ηθελημένη κίνηση της κάμερας και στην ανεπιθύμητη κίνηση της κάμερας η οποία οφείλεται στις δονήσεις από ανεξέλεγκτες μετακινήσεις του ανθρώπινου χεριού. Η ανεξάρτητη φύση των δύο αυτών βασικών κινήσεων επιτρέπει τη χρήση της ανάλυσης ανεξάρτητων συνιστωσών με σκοπό τον διαχωρισμό των δύο αυτών κινήσεων. Ζεύγη τοπικών διανυσμάτων κίνησης αναλύονται με βάση τις ανεξάρτητες συνιστώσες τους με σκοπό το διαχωρισμό αυτών. Στη συνέχεια επεξεργαζόμαστε τις συνιστώσες αυτές και με βάση τα χαρακτηριστικά τους τις κατηγοριοποιούμε. Αφότου οι δύο συνιστώσες ταυτοποιηθούν, προσδίδουμε σε κάθε κίνηση το σωστό πρόσημο και τη σωστή ενέργειά της. Η μία από τις δύο ανεξάρτητες, ταυτοποιημένες και επεξεργασμένες κινήσεις είναι η ηθελημένη κίνηση η οποία θα μας δώσει και την τελική σταθεροποιημένη εικονοσειρά. Τα πειραματικά και συγκριτικά αποτελέσματα αποδεικνύουν ότι όχι μόνον είναι δυνατός ο διαχωρισμός των δύο αυτών κινήσεων με βάση την ανάλυση ανεξάρτητων συνιστωσών, αλλά και η τελική σταθεροποιημένη εικονοσειρά υπερτερεί από αυτές άλλων μεθόδων ψηφιακής σταθεροποίησης εικόνας. Στα δύο πρώτα μέρη της διατριβής μελετήθηκαν αλγόριθμοι ψηφιακής κλιμάκωσης και σταθεροποίησης εικόνας. Οι δύο αυτές λειτουργίες, στις σύγχρονες ψηφιακές κάμερες, μπορούν να ενεργοποιηθούν και να εκτελεστούν ταυτόχρονα, εξάγοντας μία κλιμακωμένη αλλά και σταθεροποιημένη εικονοσειρά. Ο χρήστης όμως κατά τη διάρκεια αυτής της ταυτόχρονης λειτουργίας μπορεί να παρατηρήσει μία μικρή αλλά ανεπιθύμητη καθυστέρηση καθώς επίσης και κάποιες ανεπιθύμητες κινήσεις οι οποίες δεν έχουν αποσβεστεί από την μονάδα σταθεροποίησης, και οι οποίες γίνονται πιο έντονες όσο αυξάνει ο παράγοντας κλιμάκωσης. Στο τρίτο και τελευταίο μέρος της διατριβής περιγράφεται μία νέα αρχιτεκτονική για την ενσωμάτωση των λειτουργιών της σταθεροποίησης με αυτές της κλιμάκωσης εικόνας με σκοπό την εξάλειψη των προαναφερθέντων ανεπιθύμητων φαινομένων. Η προτεινόμενη αρχιτεκτονική ενσωματώνει στην σταθεροποίηση εικόνας και τα δύο είδη κλιμάκωσης εικόνας, αυτά δηλαδή της οπτικής και ψηφιακής κλιμάκωσης εικόνας. Στο πρώτο στάδιο της αρχιτεκτονικής, ο σταθεροποιητής ρυθμίζει δυναμικά τις λειτουργικές του παραμέτρους βάση των ρυθμίσεων της οπτικής κλιμάκωσης με σκοπό την καλύτερη εξαγωγή τοπικών διανυσμάτων κίνησης. Έπειτα, τα ολικά διανύσματα κίνησης του σταθεροποιητή, εισάγονται στο σύστημα ψηφιακής κλιμάκωσης εικόνας όπου η αντιστάθμιση εικόνας ενσωματώνεται στη λειτουργία της παρεμβολής. Τα πειραματικά αποτελέσματα και οι συγκρίσεις έδειξαν ότι η προτεινόμενη αρχιτεκτονική υπερέχει αυτής της συμβατικής και ευρέως χρησιμοποιούμενης αρχιτεκτονικής σε ότι αφορά την ποιότητα σταθεροποίησης σε λειτουργία ενεργοποιημένης της οπτικής κλιμάκωσης. Επιπλέον, η προτεινόμενη αρχιτεκτονική μειώνει την πολυπλοκότητα του συστήματος, όταν είναι ενεργοποιημένη η ψηφιακή κλιμάκωση, βελτιώνοντας έτσι την ανεπιθύμητη καθυστέρηση που παρατηρείται κατά τη διάρκεια της συμβατικής σταθεροποίησης. Επιγραμματικά, στην παρούσα Διδακτορική Διατριβή παρουσιάστηκαν νέες τεχνικές για την ψηφιακή κλιμάκωση και ψηφιακή σταθεροποίηση εικόνας, με στόχο την ποιοτική και χρονική βελτίωσή τους. Επιπλέον, παρουσιάστηκε μία ενσωματωμένη αρχιτεκτονική για ταυτόχρονη ψηφιακή κλιμάκωση και σταθεροποίηση εικόνας με στόχο τη βελτίωση των ανεπιθύμητων χαρακτηριστικών που παρουσιάζονται λόγω της αλληλεπίδρασης των δύο αυτών λειτουργιών.