ΥΛΟΠΟΙΗΣΗ ΜΕΘΟΔΟΥ ΑΝΑΚΤΗΣΗΣ ΕΙΚΟΝΩΝ ΜΕ ΒΑΣΗ ΤΟ ΠΕΡΙΕΧΟΜΕΝΟ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΥΛΟΠΟΙΗΣΗ ΜΕΘΟΔΟΥ ΑΝΑΚΤΗΣΗΣ ΕΙΚΟΝΩΝ ΜΕ ΒΑΣΗ ΤΟ ΠΕΡΙΕΧΟΜΕΝΟ"

Transcript

1 Τ Ε Χ Ν Ο Λ Ο Γ Ι Κ Ο Ε Κ Π Α Ι Δ Ε Υ Τ Ι Κ Ο Ι Δ Ρ Υ Μ Α Σ Ε Ρ Ρ Ω Ν Σ Χ Ο Λ Η Τ Ε Χ Ν Ο Λ Ο Γ Ι Κ Ω Ν Ε Φ Α Ρ Μ Ο Γ Ω Ν Τ Μ Η Μ Α Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Η Σ & Ε Π Ι Κ Ο Ι Ν Ω Ν Ι Ω Ν ΥΛΟΠΟΙΗΣΗ ΜΕΘΟΔΟΥ ΑΝΑΚΤΗΣΗΣ ΕΙΚΟΝΩΝ ΜΕ ΒΑΣΗ ΤΟ ΠΕΡΙΕΧΟΜΕΝΟ Πτυχιακή Εργασία του Ευάγγελου Μαυρίδη (1263) Επιβλέπων: Χαράλαμπος Στρουθόπουλος, Καθηγητής ΣΕΡΡΕΣ, ΝΟΕΜΒΡΙΟΣ 2012

2 Υπεύθυνη Δήλωση : Βεβαιώνω ότι είμαι συγγραφέας αυτής της πτυχιακής εργασίας και ότι κάθε βοήθεια την οποία είχα για την προετοιμασία της, είναι πλήρως αναγνωρισμένη και αναφέρεται στην πτυχιακή εργασία. Επίσης έχω αναφέρει τις όποιες πηγές από τις οποίες έκανα χρήση δεδομένων, ιδεών ή λέξεων, είτε αυτές αναφέρονται ακριβώς είτε παραφρασμένες. Επίσης βεβαιώνω ότι αυτή η πτυχιακή εργασία προετοιμάστηκε από εμένα προσωπικά ειδικά για τις απαιτήσεις του προγράμματος σπουδών του Τμήματος Πληροφορικής & Επικοινωνιών του Τ.Ε.Ι. Σερρών. 2

3 Πρόλογος Στην παρούσα πτυχιακή εργασία παρουσιάζεται μία μέθοδος ανάκτησης εικόνων με βάση το περιεχόμενο. Η μέθοδος βασίζεται στους ακόλουθους αλγόριθμους: SIFT (Scale Invariant Feature Transform), για την εξαγωγή ισχυρών χαρακτηριστικών, k-means για την ομαδοποίηση των χαρακτηριστικών και SVM (Support Vector Machines), για την εκπαίδευση του συστήματος. Όλοι οι παραπάνω αλγόριθμοι παρουσιάζονται αναλυτικά και στη συνέχεια αναλύεται ο ρόλος τους μέσα στην μέθοδο ανάκτησης εικόνων. Τέλος, αναφέρονται τα αποτελέσματα και ποσοστά επιτυχίας χρήσης αυτής της μεθόδου. Ο αλγόριθμος SIFT χρησιμοποιήθηκε με την βοήθεια της βιβλιοθήκης OpenCV, ενώ ο αλγόριθμος SVM με την βοήθεια της βιβλιοθήκης LibSVM. Για τις βιβλιοθήκες αυτές γίνεται εκτενής αναφορά στα κεφάλαια «Παράρτημα» και «Τεχνική ανάκτησης εικόνας με βάση το περιεχόμενο» αντίστοιχα. 3

4 Ευχαριστίες Για την δημιουργία της παρούσας πτυχιακής εργασίας θα ήθελα να ευχαριστήσω τον κ. Χαράλαμπο Στρουθόπουλο για τον χρόνο που αφιέρωσε και τις γνώσεις που μου παρείχε, όπως επίσης και τον κ. Χαράλαμπο Δουλαβεράκη για την έμπνευση του θέματος. 4

5 Περιεχόμενα 1. Εισαγωγή Scale Invariant Feature Transform (SIFT) Προσδιορισμός ακρότατων χώρου-κλίμακας Ανίχνευση τοπικών ακρότατων Ακριβής εντοπισμός χαρακτηριστικού σημείου Διαγραφή σημείων εντοπισμένων κατά μήκος μιας ακμής Ανάθεση προσανατολισμού Δημιουργία του περιγραφέα Ο αλγόριθμος ομαδοποίησης k-means Πλεονεκτήματα αλγορίθμου Μειονεκτήματα αλγορίθμου Απλό αριθμητικό παράδειγμα Μηχανές διανυσματικής στήριξης Γραμμικοί ταξινομητές Γεωμετρικό περιθώριο (margin) Απλό αριθμητικό παράδειγμα Xρήση χαλαρού περιθωρίου Πυρήνες: από γραμμικούς σε μη γραμμικούς ταξινομητές Ταξινόμηση πολλών κλάσεων Παράμετροι Σταθερά χαλαρού περιθωρίου (C) Βαθμός του πολυωνυμικού πυρήνα Παράμετρος Γάμμα (γ) Επιλογή μοντέλου Τεχνική ανάκτησης εικόνας με βάση το περιεχόμενο Εξαγωγή χαρακτηριστικών του συνόλου εκπαίδευσης Ομαδοποίηση χαρακτηριστικών Καθορισμός του ανύσματος χαρακτηριστικών και εκπαίδευση του συστήματος Εξαγωγή χαρακτηριστικών της εικόνας προς ταξινόμηση (classification) και... συσχέτιση τους με τις k-means συστάδες του συνόλου εκπαίδευσης SVM Classification και εμφάνιση αποτελέσματος Εφαρμογή αλγορίθμου και αποτελέσματα Συμπεράσματα

6 7. Βιβλιογραφία Παράρτημα

7 1. Εισαγωγή Η εξάπλωση του διαδικτύου, των πολυμέσων και η χρήση ψηφιακών φωτογραφικών μηχανών και σαρωτών οδήγησε στην δημιουργία τεραστίου μεγέθους βάσεων πληροφοριών με ψηφιακές εικόνες. Η ανάκτηση ψηφιοποιημένων εικόνων και η διαχείριση μεγάλων συλλογών τους έχει προκαλέσει το έντονο ερευνητικό ενδιαφέρον των παραπάνω τομέων της επιστήμης υπολογιστών [YDGW][ DJLW]. Η ερευνητική πορεία στο πρόβλημα της ανάκτησης εικόνας, ξεκίνησε από την ανάκτηση εικόνας με βάση λέξεις-κλειδιά, προχώρησε στην ανάκτηση εικόνας με βάση το περιεχόμενο και οδηγείται στην ανάκτηση εικόνας με βάση το σημασιολογικό περιεχόμενο. Στην δεκαετία του 1970, ένα συμβατικό σύστημα ανάκτησης εικόνας χρησιμοποιούσε λέξεις-κλειδιά, ως περιγραφείς για την εύρεση μιας εικόνας. Ωστόσο, αυτή η τεχνική συνήθως προκαλεί ασάφεια και ανεπάρκεια στην αναζήτηση εικόνων μέσα σε μια βάση δεδομένων. Αυτό το πρόβλημα οφείλεται στη δυσκολία του ακριβούς προσδιορισμού όρων και φράσεων για την περιγραφή του περιεχομένου εικόνων, καθώς το περιεχόμενο μιας εικόνας είναι πολύ πιο πλούσιο από οποιοδήποτε σύνολο λέξεων που μπορεί να εκφραστεί. Επίσης, εφόσον οι λεκτικοί περιγραφείς βασίζονται στην γλώσσα που χρησιμοποιεί ο κάθε χρήστης, κάθε παραλλαγή δημιουργεί τεράστιες αποκλίσεις στην ανάκτηση εικόνας. Τέλος η πληκτρολόγηση των λέξεων κλειδιών αποτελεί μια αργή και επίπονη εργασία και ως εκ τούτου ένα επιπρόσθετο μειονέκτημα. Στη δεκαετία του 1990, σαν εναλλακτική τεχνική της ανάκτησης εικόνας με βάση τις λέξεις-κλειδιά, χρησιμοποιήθηκε η ανάκτηση εικόνας με βάση το περιεχόμενο. Σε αντίθεση με την προηγούμενη τεχνική, δεν χρησιμοποιούνται λέξειςκλειδιά για την περιγραφή μιας εικόνας αλλά οπτικά χαρακτηριστικά που εξάγονται από την ίδια την εικόνα. Ένα σύστημα ανάκτησης εικόνας με βάση το περιεχόμενο διακρίνεται ανάλογα με τον τύπο των χαρακτηριστικών που χρησιμοποιούνται για την ανάκτηση και τα οποία μπορεί να είναι χαμηλού επιπέδου ή υψηλού επιπέδου χαρακτηριστικά. Αρχικά χρησιμοποιήθηκαν χαρακτηριστικά χαμηλού επιπέδου όπως χρώμα, υφή και σχήμα. Αν και υπάρχουν πολλοί εξελιγμένοι αλγόριθμοι για την περιγραφή των χαρακτηριστικών χρώματος, υφής και σχήματος, αυτοί οι αλγόριθμοι δεν ικανοποιούν την ανθρώπινη αντίληψη. Αυτό οφείλεται κυρίως στην ανικανότητα των χαρακτηριστικών χαμηλού επιπέδου να περιγράψουν υψηλού επιπέδου έννοιες. Για αυτόν το λόγο στην δεκαετία του 2000, έκανε την εμφάνιση της η ανάκτηση εικόνας με βάση το σημασιολογικό περιεχόμενο. Εκτός από το γεγονός ότι η απόδοση ενός συστήματος ανάκτησης εικόνας με βάση χαρακτηριστικά χαμηλού επιπέδου δεν είναι ικανοποιητική, υπάρχει μια τάση των ερευνών να συγκλίνουν στην 7

8 ανάκτηση με βάση το σημασιολογικό περιεχόμενο έχοντας ως σκοπό την γεφύρωση του «σημασιολογικού κενού» μεταξύ των χαρακτηριστικών χαμηλού επιπέδου που αντιλαμβάνεται μια μηχανή και τις υψηλού επιπέδου έννοιες που χρησιμοποιεί ο χρήστης. Εικόνα 1.1: Το σημασιολογικό χάσμα (semantic gap) Η γεφύρωση του σημασιολογικού κενού παραμένει ένα σημαντικό ζήτημα προς λύση [CWL][NaId]. Η περιγραφή εικόνων με σημασιολογικούς όρους είναι ένας σημαντικός και δύσκολος στόχος. Οι άνθρωποι είναι ικανοί να κατανοήσουν τις εικόνες, τόσο με μορφολογικά χαρακτηριστικά (χαμηλό επίπεδο), όσο και με έννοιες (υψηλό επίπεδο). Ωστόσο, μια μηχανή είναι σε θέση να ερμηνεύσει εικόνες μόνο με βάση τα χαρακτηριστικά χαμηλού επιπέδου. Εκτός αυτού, οι χρήστες προτιμούν να διατυπώνουν υψηλού επιπέδου ερωτήματα για την εύρεση μιας εικόνας [KZB][SWGJ], πράγμα που καθιστά μη επαρκή τα συστήματα ανάκτησης εικόνας με βάση το περιεχόμενο. Αυτή η έλλειψη συσχέτισης μεταξύ των μορφολογικών περιγραφέων μιας εικόνας και των υψηλού επιπέδου εννοιών, είναι γνωστή ως το «σημασιολογικό χάσμα» (semantic gap) [YDGW][SWGJ]. [WMI] Εικόνα 1.2: Περιγραφή μιας εικόνας με διαφορετικού επιπέδου χαρακτηριστικά 8

9 Ένα τυπικό σύστημα ανάκτησης εικόνας περιλαμβάνει τα ακόλουθα βασικά μέρη [RH] που είναι: η εξαγωγή κατάλληλων χαρακτηριστικών (feature extraction), η ευρετηρίαση και ταξινόμηση πολλών διαστάσεων (high dimensional indexing) και ο σχεδιασμός συστήματος παρουσίασης (system design). Από αυτά η ευρετηρίαση πολλών διαστάσεων είναι σημαντική για την ταχύτητα του συστήματος, ο σχεδιασμός για την εμφάνιση του συστήματος και η εξαγωγή των χαρακτηριστικών είναι το κλειδί για την ακρίβεια του συστήματος. Ένας άλλος τομέας που οι ερευνητές προσπαθούν να βελτιώσουν είναι το μέτρο ομοιότητας. Ένα χαρακτηριστικό θεωρείται καλό αν και μόνο αν παρόμοια αντικείμενα βρίσκονται κοντά το ένα με το άλλο στο χώρο χαρακτηριστικών και διαφορετικά αντικείμενα βρίσκονται μακριά. Προφανώς, για να ορίσουμε τι θεωρείται «κοντά» και τι «μακριά» στο χώρο χαρακτηριστικών, το μέτρο ομοιότητας παίζει ένα πολύ σημαντικό ρόλο. Η ευκλείδεια απόσταση και γενικότερα η απόσταση Minkowski είναι τα πιο συχνά μέτρα ομοιότητας που χρησιμοποιούνται στα συστήματα ανάκτησης εικόνας. Τα συστήματα ανάκτησης εικόνας μπορούν επίσης να χωριστούν σε «off-line learning» και «on-line learning». Αν όλα τα δεδομένα εκπαίδευσης είναι διαθέσιμα από την αρχή, η εκπαίδευση του συστήματος μπορεί να γίνει σε ένα βήμα (off-line) που εφαρμόζεται πριν το σύστημα γίνει διαθέσιμο στους τελικούς χρήστες. Έτσι, ο χρόνος εκπαίδευσης δεν γίνεται αντιληπτός από τον τελικό χρήστη. Σε αντίθεση με την «off-line» εκπαίδευση, η «on-line» εκπαίδευση δεν έχει το σύνολο των δεδομένων εκπαίδευσης εκ των προτέρων. Τα δεδομένα λαμβάνονται κατά την διάρκεια της διαδικασίας, γεγονός που καθιστά την διαδικασία μάθησης πιο χρήσιμη και σε ένα μεγάλο βαθμό εξαρτώμενη από τα δεδομένα εκπαίδευσης. Έτσι, η «online» εκπαίδευση προϋποθέτει την αλληλεπίδραση μεταξύ του συστήματος και του χρήστη. [ZC] 9

10 2. Scale Invariant Feature Transform (SIFT) Ο αλγόριθμος SIFT δημοσιεύθηκε από τον David Lowe το 1999 [DL] και είναι ένας αλγόριθμος της υπολογιστικής όρασης (computer vision), o οποίος εντοπίζει και περιγράφει τοπικά χαρακτηριστικά σε εικόνες. Ουσιαστικά παίρνει μια εικόνα και τη μετατρέπει σε ένα σύνολο διανυσμάτων περιγραφής τοπικών χαρακτηριστικών [YMT]. Ένα τοπικό χαρακτηριστικό είναι ένα πρότυπο εικόνας, το οποίο διαφέρει χαρακτηριστικά από τα άμεσα γειτονικά του στοιχεία [MT]. Τα SIFT χαρακτηριστικά είναι αμετάβλητα σε κλιμάκωση (όπως το δηλώνει και η ονομασία του αλγορίθμου)* και περιστροφή της εικόνας, και εν μέρει αμετάβλητα στις αλλαγές φωτισμού και στην οπτική γωνία της κάμερας. Επιπλέον, έχουν έντονη διακριτική ικανότητα, πράγμα που επιτρέπει την εύρεση της εικόνας με μεγάλο ποσοστό επιτυχίας σε μια μεγάλη βάση δεδομένων. Το υπολογιστικό κόστος εξαγωγής αυτών των χαρακτηριστικών ελαχιστοποιείται με την χρήση μιας σειράς ενεργειών, σύμφωνα με τις οποίες οι πιο απαιτητικές εργασίες εφαρμόζονται μόνο σε περιοχές τις εικόνας που περνούν από κάποιες, αυστηρές δοκιμασίες. Παρακάτω είναι τα κύρια βήματα του SIFT αλγορίθμου [DLb]: 1. Προσδιορισμός ακρότατων χώρου-κλίμακας (Scale-space extrema detection) 2. Εντοπισμός θέσης χαρακτηριστικών σημείων (Keypoint localization) 3. Καθορισμός προσανατολισμού (Orientation assignment) 4. Περιγραφέας χαρακτηριστικών σημείων (Keypoint descriptor) *O Scale Invariant Feature Transform ή πιο απλά SIFT αλγόριθμος στην ελληνική μετάφραση ορίζεται ως Μετασχηματισμός Χαρακτηριστικών Αμετάβλητων προς την Κλίμακα. 10

11 2.1. Προσδιορισμός ακρότατων χώρου-κλίμακας Το πρώτο στάδιο εντοπισμού των σημείων κλειδιών είναι να προσδιοριστούν οι κλίμακες που μπορούν να δοθούν κάτω από διαφορετικές όψεις του ίδιου αντικειμένου. Ο εντοπισμός των περιοχών που είναι αμετάβλητες σε αλλαγές κλίμακας της εικόνας μπορεί να επιτευχθεί με την αναζήτηση για χαρακτηριστικά αμετάβλητα σε όλες τις πιθανές κλίμακες, χρησιμοποιώντας μια συνεχή συνάρτηση κλίμακας γνωστή ως «Χώρος Κλίμακας» (Scale Space) (Witkin,1983) [Wit]. Έχει αποδειχθεί από τους Koenderink (1984) [Koe] και Lindeberg (1994) [Lin] ότι, ο πιο αποδοτικός πυρήνας χώρου κλίμακας είναι η Γκαουσιανή συνάρτηση (Gaussian function) [gf]. Ως εκ τούτου, ο χώρος κλίμακας μιας εικόνας ορίζεται ως μια συνάρτηση L(x, y, σ), η οποία παράγεται από την συνέλιξη μιας μεταβλητής κλίμακας Γκαουσιανής συνάρτησης, G(x, y, σ), με την εικόνα εισόδου, Ι(x, y): όπου L είναι η εικόνα εξόδου, Ι η εικόνα εισόδου με x και y συντεταγμένες εικονοστοιχίων, G η συνάρτηση Γκαουσιανού θολώματος (Gaussian blur) με και σ η τυπική απόκλιση (standard deviation). Μια συνάρτηση με μεγάλη τυπική απόκλιση έχει ως αποτέλεσμα μια εικόνα εξόδου αρκετά πιο θολή από την αρχική. Έτσι, για την δημιουργία του χώρου κλίμακας, παίρνουμε την αρχική εικόνα και δημιουργούμε σταδιακά όλο και πιο θολές εικόνες, αλλάζοντας κάθε φορά την παράμετρο της τυπικής απόκλισης. Στην συνέχεια μειώνουμε στο μισό το μέγεθος της αρχικής εικόνας (με διγραμμική παρεμβολή ανά 1.5 pixels) και παράγουμε πάλι τις θολές εικόνες. Αυτή η διαδικασία επαναλαμβάνεται μερικές φορές ακόμα, έχοντας σαν τελικό αποτέλεσμα να έχουμε εικόνες σε διαφορετικά μεγέθη και επίπεδα θολώματος. Εικόνες του ίδιου μεγέθους αποτελούν μια οκτάβα. Ο αριθμός των οκτάβων και των κλιμάκων εξαρτάται από το μέγεθος της αρχικής εικόνας. Ωστόσο, οι 4 οκτάβες και τα 5 επίπεδα θολώματος θεωρούνται ιδανικά για τον αλγόριθμο, όπως φαίνεται στην παρακάτω εικόνα (Εικόνα 2.1). Εικόνα 2.1: Η διαδικασία του χώρου κλίμακας στον αλγόριθμο SIFT. Από μια αρχική εικόνα παίρνουμε 5 επίπεδα θολώματος και 4 επίπεδα μεγέθους (οκτάβες). 11

12 Για τον αποτελεσματικό εντοπισμό σταθερών σημείων κλειδιών, ο David Lowe πρότεινε το 1999 [DL] την ανίχνευση ακρότατων στις εικόνες που παράγονται από την DoG (Difference of Gaussian) συνάρτηση [dog]. Η συνάρτηση DoG ορίζεται ως η συνέλιξη της αρχικής εικόνας με την διαφορά δύο γειτονικών γκαουσιανών εικόνων της ίδιας οκτάβας. Οπότε έχουμε: [DLb][Utk] Εικόνα 2.2: Δημιουργία των DoG εικόνων Εικόνα 2.3: Οι DoG εικόνες (δεξιά). Εδώ φαίνεται η διαδικασία μόνο για μια οκτάβα. Το ίδιο γίνεται και με τις υπόλοιπες. 12

13 2.2. Ανίχνευση τοπικών ακρότατων Για τον εντοπισμό των τοπικών μεγίστων και ελαχίστων μιας εικόνας DoG D(x, y, σ), κάθε σημείο της συγκρίνεται με τα οχτώ γειτονικά της ίδιας εικόνας, με τα εννιά γειτονικά της ακριβώς χαμηλότερης κλίμακας και τα εννιά γειτονικά της ακριβώς υψηλότερης κλίμακας (Εικόνα 2.4). Συγκρίνεται δηλαδή με εικοσιέξι σημεία και επιλέγεται ως χαρακτηριστικό σημείο μόνο αν έχει μεγαλύτερη ή μικρότερη τιμή από όλα τα υπόλοιπα. Το υπολογιστικό κόστος αυτού του ελέγχου είναι αρκετά χαμηλό, λόγω του γεγονότος ότι τα περισσότερα σημεία θα εξαλειφθούν μετά τους πρώτους ελέγχους, οπότε κάποιο σημείο που δεν είναι μέγιστο ή ελάχιστο δεν θα χρειαστεί να περάσει και τους εικοσιέξι ελέγχους. Να σημειώσουμε ότι τα χαρακτηριστικά σημεία δεν εντοπίζονται στις DoG εικόνες με την χαμηλότερη και την υψηλότερη κλίμακα, διότι απλά δεν υπάρχουν γειτονικά σημεία για να κάνουμε την σύγκριση. Οπότε τις παραλείπουμε. [DLb][Utk] Εικόνα 2.4: Σύγκριση εικονοστοιχείων για τον εντοπισμό των ακρότατων Εικόνα 2.5: Τα εντοπισμένα ακρότατα μιας οκτάβας. 13

14 2.3. Ακριβής εντοπισμός χαρακτηριστικού σημείου Εφόσον ένα χαρακτηριστικό σημείο έχει βρεθεί, το επόμενο βήμα είναι να γίνει μία λεπτομερής κρίση όσον αφορά τη θέση, την κλίμακα και την κλίση των γειτονικών του σημείων. Η πληροφορία αυτή επιτρέπει να απορριφθούν σημεία με χαμηλή αντίθεση (και επομένως είναι ευαίσθητα στον θόρυβο λόγω κβαντισμού) ή σημεία που βρίσκονται κατά μήκος μιας ακμής. Σύμφωνα με την αρχική προσέγγιση του Lowe [DL], εντοπίζονταν χαρακτηριστικά σημεία απλά στην θέση και κλίμακα του υποψήφιου κλειδιού. Ωστόσο, ένα ακρότατο, μέγιστο ή ελάχιστο σχεδόν ποτέ δεν βρίσκεται ακριβώς πάνω σε ένα εικονοστοιχείο. Βρίσκεται κάπου μεταξύ των εικονοστοιχείων. Όμως, δεν μπορούμε να έχουμε πρόσβαση στα δεδομένα μεταξύ των εικονοστοιχίων. Έτσι, οι Brown και Lowe το 2002 [BrLo] ανέπτυξαν μια μέθοδο σύμφωνα με την οποία χρησιμοποιούνταν μια τρισδιάστατη τετραγωνική συνάρτηση στα τοπικά σημεία για τον καθορισμό της παρεμβάλλουσας θέσης του μεγίστου. Κάνοντας διάφορα πειράματα ο Brown απέδειξε ότι αυτή η προσέγγιση παρέχει μια σημαντική βελτίωση στην σταθερότητα και αντιστοίχιση των χαρακτηριστικών. Αυτή η προσέγγιση χρησιμοποιεί το ανάπτυγμα Taylor [Tay] της D(x, y, σ), με την αρχική τιμή στο υποψήφιο κλειδί: όπου D και οι παράγωγοί του εκτιμώνται στη θέση του υποψήφιου κλειδιού με. Η θέση του ακρότατου καθορίζεται με τη λήψη της παραγώγου αυτής της συνάρτησης ως προς z και θέτοντάς την ως 0, δίνοντας Αν η απόκλιση είναι μεγαλύτερη του 0.5 σε οποιαδήποτε διάσταση, τότε αυτό σημαίνει ότι το ακρότατο βρίσκεται πιο κοντά σε κάποιο άλλο υποψήφιο κλειδί. Σε αυτή την περίπτωση το υποψήφιο κλειδί αλλάζει και εκτελείται η παρεμβολή για το νέο σημείο. Η τελική απόκλιση προστίθεται στη τιμή της θέσης του υποψήφιου κλειδιού, παίρνοντας έτσι την παρεμβαλλόμενη εκτίμηση για τη θέση του ακρότατου. Η τιμή της συνάρτησης στο ακρότατο, D(, είναι χρήσιμη για την απόρριψη ασταθών ακρότατων με χαμηλή αντίθεση. Αυτό μπορεί να επιτευχθεί με την αντικατάσταση της εξίσωσης (2.4) στην (2.3), δίνοντας Αν το μέγεθος αυτό είναι μικρότερο από μια συγκεκριμένη τιμή, το σημείο κλειδί απορρίπτεται. [DLb][Utk] 14

15 2.4. Διαγραφή σημείων εντοπισμένων κατά μήκος μιας ακμής Εφόσον θέλουμε σταθερά χαρακτηριστικά σημεία, η απόρριψη μόνο των σημείων με χαμηλή αντίθεση δεν είναι αρκετή. Η DoG συνάρτηση έχει την τάση να βρίσκει πολλά υποψήφια κλειδιά κατά μήκος μιας ακμής. Ωστόσο, αυτά τα σημεία είναι συνήθως ευαίσθητα στον θόρυβο. Τα σημεία κατά μήκος μιας ακμής έχουν μια μεγάλη κύρια καμπυλότητα κατά μήκος της ακμής αλλά μια μικρή στην κάθετη κατεύθυνση. Οι κύριες καμπυλότητες μπορούν να υπολογιστούν από τον Εσιαννό πίνακα, Η (Hessian matrix) [hes], υπολογισμένο στην θέση και κλίμακα του σημείου κλειδιού: Οι ιδιοτιμές του H είναι ανάλογες των κύριων αξόνων του D. Λαμβάνοντας υπόψη την προσέγγιση των Harris και Stephens (1988) [HaSt], μπορούμε να αποφύγουμε τον ακριβή υπολογισμό των ιδιοτιμών, καθώς μας ενδιαφέρει μόνο ο λόγος τους. Έχοντας ορίσει ως α την μεγαλύτερη ιδιοτιμή και β την μικρότερη, μπορούμε να υπολογίσουμε το άθροισμα των ιδιοτιμών με το ίχνος του H και το γινόμενό τους με την ορίζουσα: Στην σπάνια περίπτωση που η ορίζουσα είναι αρνητική, οι άξονες έχουν αντίθετα πρόσημα, επομένως το σημείο απορρίπτεται. Ας ορίσουμε ως r τον λόγο μεταξύ της μεγαλύτερης και της μικρότερης ιδιοτιμής, έτσι ώστε να έχουμε α=rβ. Τότε έχουμε, το οποίο εξαρτάται μόνο από τον λόγο των ιδιοτιμών. Η ποσότητα είναι στο ελάχιστο όταν οι δύο ιδιοτιμές είναι ίσες και αυξάνεται όσο αυξάνεται το r. Επομένως, για να ελέγξουμε ότι ο λόγος των κύριων αξόνων είναι κάτω από κάποιο όριο, r, το μόνο που χρειάζεται να ελέγξουμε είναι για ποια σημεία κλειδιά ισχύει η παρακάτω σχέση: [DLb][Utk] 15

16 Εικόνα 2.6: Τα ακρότατα μετά από τον έλεγχο αντίθεσης και ακμών. Εικόνα 2.7: Τα βήματα για την επιλογή των σημείων κλειδιών μιας εικόνας. (a) Η αρχική εικόνα. (b) Οι αρχικές θέσεις των σημείων κλειδιών ως ακρότατα των DoG εικόνων. Τα σημεία κλειδιά εμφανίζονται ως διανύσματα που δείχνουν κλίμακα, κατεύθυνση και θέση. (c) Απορρίπτονται κάποια σημεία κλειδιά μετά την χρήση ενός ορίου στην ελάχιστη αντίθεση. (d) Τα τελικά σημεία κλειδιά χρησιμοποιώντας ένα επιπλέον όριο στο λόγο των κυρίων αξόνων. 16

17 2.5. Ανάθεση προσανατολισμού Με την ανάθεση σωστού προσανατολισμού σε κάθε σημείο κλειδί, μπορούμε να πετύχουμε αμεταβλητότητα ως προς την περιστροφή της εικόνας. Μετά από μια σειρά δοκιμών όσον αφορά τον καθορισμό ενός τοπικού προσανατολισμού, η ακόλουθη προσέγγιση αποδείχτηκε ότι δίνει τα πιο σταθερά αποτελέσματα. Η κλίμακα του σημείου κλειδιού χρησιμοποιείται για την επιλογή της γκαουσιανής εικόνας με την πλησιέστερη κλίμακα, έτσι ώστε όλοι οι υπολογισμοί να εκτελούνται σε ένα περιβάλλον αμετάβλητο της κλίμακας. Για κάθε δείγμα εικόνας, L(x, y), αυτής της κλίμακας, το μέτρο της κλίσης, m(x, y), και ο προσανατολισμός θ(x, y), προϋπολογίζονται χρησιμοποιώντας διαφορές των εικονοστοιχείων: Εικόνα 2.8: Τα μέτρα (επάνω) και οι κατευθύνσεις (κάτω) των κλίσεων. Έπειτα διαμορφώνεται ένα ιστόγραμμα από τις κατευθύνσεις των κλίσεων των σημείων, εντός μιας περιοχής γύρω από το σημείο κλειδί. Το μέγεθος αυτής της περιοχής εξαρτάται από την κλίμακα του σημείου κλειδιού. Όσο μεγαλύτερη είναι η κλίμακα, τόσο μεγαλύτερη είναι η περιοχή συλλογής κατευθύνσεων. Στο ιστόγραμμα κατευθύνσεων, οι 360 μοίρες κατεύθυνσης χωρίζονται σε 36 κομμάτια, όπου το κάθε κομμάτι αποτελείται από 10 μοίρες. Έτσι το πρώτο κομμάτι θα αποτελείται από κατευθύνσεις κλίσεων μέχρι 9 μοιρών, το δεύτερο από 10 έως 19 μοιρών και ούτω καθεξής. 17

18 Οι κορυφές στο ιστόγραμμα κατεύθυνσης αντιστοιχούν στις κύριες κατευθύνσεις των τοπικών κλίσεων. Έτσι, στο σημείο κλειδί αποδίδεται η κατεύθυνση με την υψηλότερη κορυφή. Επίσης, οποιαδήποτε από τις κορυφές είναι πάνω από το 80% της υψηλότερης κορυφής μετατρέπεται σε ένα νέο σημείο κλειδί (Εικόνα 2.9). Αυτό το νέο κλειδί έχει την ίδια θέση και κλίμακα με το αρχικό, αλλά η κατεύθυνσή του είναι ίδια με την κατεύθυνση της καινούριας κορυφής. Οπότε, ο προσανατολισμός μπορεί εν δυνάμει να χωρίσει ένα σημείο κλειδί σε πολλαπλά. [DLb][Utk] Εικόνα 2.9: Ιστόγραμμα κατευθύνσεων. Στο συγκεκριμένο ιστόγραμμα η υψηλότερη κορυφή βρίσκεται στις κατευθύνσεις μοιρών. Οπότε, στο σημείο κλειδί ανατίθεται η κατεύθυνση 3 (3 η ομάδα μοιρών στο ιστόγραμμα). Ακόμα, εφόσον υπάρχει μία κορυφή μεγαλύτερη του 80% της 3 ης κορυφής, δημιουργείται ακόμη ένα σημείο κλειδί με τη θέση και κλίμακα του αρχικού, αλλά με την κατεύθυνση αυτής της κορυφής (στην προκειμένη περίπτωση κατεύθυνση 31) Δημιουργία του περιγραφέα Οι προηγούμενες ενέργειες έχουν αποδώσει θέση, κλίμακα και προσανατολισμό σε κάθε σημείο κλειδί μιας εικόνας. Το επόμενο βήμα είναι να υπολογιστεί ένας περιγραφέας για κάθε σημείο κλειδί, ο οποίος να έχει έντονο διακριτικό χαρακτήρα και ακόμα να προσδίδει όσο το δυνατόν σταθερότητα στην αλλαγή φωτεινότητας και στην οπτική γωνία της κάμερας. Για την δημιουργία ενός τέτοιου περιγραφέα, δημιουργούμε ένα παράθυρο διαστάσεων 16x16 με σημεία γύρω από το σημείο κλειδί. Αυτό το παράθυρο χωρίζεται σε 16 παράθυρα διαστάσεων 4x4. Μέσα σε κάθε 4x4 παράθυρο 18

19 υπολογίζονται τα μέτρα και οι κατευθύνσεις των κλίσεων χρησιμοποιώντας τις σχέσεις (2.11) και (2.12). Εικόνα 2.10: Δημιουργία παραθύρου μεγέθους 16x16 γύρω από το keypoint (αριστερά), μετατροπή του σε 16 παράθυρα μεγέθους 4x4 και υπολογισμός σε καθένα από αυτά των μέτρων και προσανατολισμών των κλίσεων (δεξιά). Το keypoint με κόκκινη βούλα. Αυτές οι κατευθύνσεις τοποθετούνται σε ένα ιστόγραμμα με 8 τμήματα. Οποιοσδήποτε προσανατολισμός κλίσης μεταξύ των 0 και 44 μοιρών τοποθετείται στο πρώτο τμήμα, 45 με 89 στο δεύτερο και ούτω κάθε εξής. Το ποσό που προστίθεται στο κάθε τμήμα εξαρτάται από το μέτρο της κλίσης. Εικόνα 2.11: Δημιουργία του ιστογράμματος κατευθύνσεων Το ποσό που προστίθεται σε κάθε τμήμα, εξαρτάται επίσης και από την απόσταση από το σημείο κλειδί. Έτσι κλίσεις που είναι μακριά από το σημείο κλειδί θα προσθέσουν μικρότερες τιμές στο ιστόγραμμα. Αυτό γίνεται χρησιμοποιώντας μια γκαουσιανή συνάρτηση βάρους, με το σ να αυξάνεται όσο απομακρυνόμαστε από το σημείο κλειδί. Εικόνα 2.12: Η γκαουσιανή συνάρτηση βάρους (αριστερά) πολλαπλασιαζόμενη με τις κλίσεις. 19

20 Κάνουμε την ίδια ενέργεια σε όλες τις 16 περιοχές μεγέθους 4x4 και καταλήγουμε να έχουμε 4x4x8=128 τιμές. Κανονικοποιούμε αυτές τις τιμές και έχουμε το διάνυσμα χαρακτηριστικών (feature vector). Κάθε σημείο κλειδί είναι μοναδικά προσδιορισμένο από αυτό το διάνυσμα χαρακτηριστικών. Μπορούμε να πούμε ότι είναι το ψηφιακό του αποτύπωμα. Αυτό το διάνυσμα χαρακτηριστικών παρουσιάζει μερικές επιπλοκές. Πρέπει να απαλλαγούμε από αυτές πριν την οριστικοποίηση των δεδομένων του διανύσματος. 1. Εξάρτηση από τη περιστροφή: Το διάνυσμα χαρακτηριστικών εμπεριέχει τις κατευθύνσεις των κλίσεων. Προφανώς, αν περιστρέψουμε την εικόνα αλλάζουν και όλοι οι προσανατολισμοί. Για την επίτευξη ανεξαρτησίας από περιστροφή, η κατεύθυνση του σημείου κλειδιού αφαιρείται από την κατεύθυνση κάθε κλίσης. Έτσι, η κατεύθυνση κάθε κλίσης είναι σχετική με την κατεύθυνση του σημείου κλειδιού. 2. Εξάρτηση από την φωτεινότητα: Αν κρατήσουμε κάτω από ένα όριο, περιγραφείς του διανύσματος οι οποίοι έχουν αρκετά μεγάλη τιμή, μπορούμε να επιτύχουμε ανεξαρτησία από την φωτεινότητα. Έτσι, οποιοσδήποτε από τους 128 περιγραφείς μεγαλύτερος του 0.2 μετατρέπεται σε 0.2. Το διάνυσμα που προκύπτει κανονικοποιείται και πάλι, έχοντας σαν αποτέλεσμα ένα ανεξάρτητο της φωτεινότητας διάνυσμα χαρακτηριστικών. [DLb][Utk] Εικόνα 2.13: Τα 16 ιστογράμματα κατευθύνσεων, που οδηγούν στην δημιουργία του περιγραφέα. 20

21 3. Ο αλγόριθμος ομαδοποίησης k-means Εικόνα 3.1: Ο αλγόριθμος k-means Ο k-means είναι ένας από τους πιο απλούς αλγορίθμους εκμάθησης χωρίς επόπτη, ο οποίος μπορεί να δώσει λύση στο πρόβλημα της ομαδοποίησης. Η διαδικασία ακολουθεί ένα απλό και εύκολο τρόπο για την ταξινόμηση ενός συγκεκριμένου συνόλου δεδομένων μεταξύ ενός προκαθορισμένου αριθμού K συστάδων [kmca]. Ο όρος k-means χρησιμοποιήθηκε για πρώτη φορά από τον James MacQueen το 1967 [McQ]. Η ιδέα όμως ανάγεται στον Hugo Steinhaus το 1957 [HS]. Ο αλγόριθμος προτάθηκε για πρώτη φορά από τον Stuart Lloyd το 1957 ως μία τεχνική για διαμόρφωση παλμοκώδικα, αν και δεν είχε δημοσιευθεί μέχρι το 1982 [SL]. [kmw] 21

22 Η βασική ιδέα είναι να καθορίσουμε K κέντρα (centroids), ένα για κάθε συστάδα (ομάδα). Εικόνα 3.2: Τα δεδομένα προς κατηγοριοποίηση και τα κέντρα των συστάδων. Με Χ συμβολίζονται τα δεδομένα και με διαφορετικού χρώματος σταυρούς τα κέντρα. Αυτά τα κέντρα πρέπει να τοποθετούνται με κατάλληλο τρόπο διότι η τοποθέτησή τους σε διαφορετικές θέσεις προκαλούν διαφορετικά αποτελέσματα. Έτσι, η καλύτερή μας επιλογή είναι να τα τοποθετήσουμε όσο το δυνατόν πιο μακριά το ένα από το άλλο. Εικόνα 3.3: Ομαδοποίηση με αρχικοποίηση κέντρων πολύ κοντά το ένα από το άλλο (επάνω) και μακριά το ένα από το άλλο (κάτω). Συνήθως στην δεύτερη περίπτωση οδηγούμαστε σε πιο αποτελεσματική ομαδοποίηση. 22

23 Το επόμενο βήμα είναι να λάβουμε κάθε αντικείμενο και να το συσχετίσουμε με το πιο κοντινό κέντρο. Όταν δεν εκκρεμεί σημείο για συσχέτιση, το πρώτο βήμα ολοκληρώνεται και έχει πραγματοποιηθεί μια αρχική ομαδοποίηση. Εικόνα 3.4: Αρχική ομαδοποίηση. Τα δεδομένα συσχετίζονται με τα κέντρα με βάση την ελάχιστη απόσταση. Σε αυτό το σημείο θα πρέπει να επαναϋπολογίσουμε K νέα κέντρα ως βαρύκεντρα (μέσους όρους) των συστάδων που προέκυψαν από το προηγούμενο βήμα. Εικόνα 3.5: Επαναπροσδιορισμός των κέντρων. Κάθε κέντρο αλλάζει θέση και τοποθετείται στον μέσο όρο των συντεταγμένων κάθε μέλους της συστάδας. Αφού βρούμε αυτά τα K νέα κέντρα, μια καινούρια συσχέτιση πρέπει να γίνει μεταξύ των σημείων του ίδιου συνόλου δεδομένων και το πλησιέστερο νέο κέντρο. Εικόνα 3.6: Εκ νέου ανάθεση δεδομένων σε κέντρα με βάση πάλι την ελάχιστη απόσταση. 23

24 Έτσι, έχει δημιουργηθεί ένας βρόχος. Ως αποτέλεσμα αυτού του βρόχου μπορούμε να παρατηρήσουμε ότι τα K κέντρα αλλάζουν τη θέση τους βήμα προς βήμα μέχρι να μην μπορούν να πραγματοποιηθούν άλλες αλλαγές ή με άλλα λόγια τα κέντρα να μην μπορούν πλέον να αλλάξουν θέση. Τέλος, ο αλγόριθμος αυτός στοχεύει στην ελαχιστοποίηση της αντικειμενικής συνάρτησης γνωστή ως συνάρτηση τετραγωνικού σφάλματος (Sum of the squared error - SSE) που δίνεται από τη σχέση: όπου, είναι η ευκλείδεια απόσταση μεταξύ και είναι το πλήθος των σημείων δεδομένων στην i στή συστάδα. «Κ» είναι το πλήθος των συστάδων. [kmca][htbs][od][p21] Εικόνα 3.7: Τα προηγούμενα βήματα επαναλαμβάνονται μέχρι να μην υπάρχει μετακίνηση κέντρων. Έτσι, έχουμε το τελικό αποτέλεσμα (κάτω). 24

25 Με την χρήση του αλγορίθμου k-means προκύπτουν κάποια προβλήματα τα οποία πρέπει να εξεταστούν και σε ορισμένες περιπτώσεις να επιλυθούν έτσι ώστε να εξασφαλίσουμε σωστά αποτελέσματα. Αυτά τα προβλήματα είναι: Διαχείριση κενών συστάδων Αυτό συμβαίνει όταν κανένα σημείο δεν συσχετίζεται με το κέντρο μιας ή περισσοτέρων συστάδων. Έτσι, η τιμή του κέντρου δεν επαναϋπολογίζεται και ως εκ τούτου θα έχουμε ένα αποτέλεσμα με Κ-1 συστάδες όπως βλέπουμε στη παρακάτω εικόνα (Εικόνα 3.8). Εικόνα 3.8: Το πρόβλημα της κενής συστάδας. Παρατηρούμε ότι το κέντρο με μοβ χρώμα μένει αμέτοχο. Η μόνη λύση σε αυτό το ζήτημα είναι ο επανακαθορισμός του κέντρου. Αυτό μπορεί να γίνει με τις παρακάτω δύο μεθόδους: Το κέντρο τοποθετείται κοντά στο σημείο με την μεγαλύτερη ευκλείδεια απόσταση από το προηγούμενο κέντρο του (Εικόνα 3.9). Εικόνα 3.9: Μέθοδος 1η Το κέντρο τοποθετείται κοντά σε ένα τυχαίο σημείο της συστάδας με το μεγαλύτερο συνολικό τετραγωνικό σφάλμα (Εικόνα 3.10). Εικόνα 3.10: Μέθοδος 2η 25

26 Ακραίες τιμές Όταν λέμε ακραίες τιμές εννοούμε τα σημεία τα οποία βρίσκονται αρκετά μακριά από το σύνολο δεδομένων και μπορούν να επηρεάσουν αρκετά τις τιμές των κέντρων. Αυτό το γεγονός μπορεί να οδηγήσει σε παραποιημένη ομαδοποίηση και αύξηση του χρόνου που χρειάζεται για να βρεθεί η βέλτιστη λύση. Εικόνα 3.11: Μια μη βέλτιστη ομαδοποίηση λόγω ενός σημείου ακραίων τιμών. Παρατηρούμε ότι ένα κέντρο χρησιμοποιείται μόνο για να ομαδοποιήσει αυτό το σημείο, οδηγώντας σε παραποιημένο αποτέλεσμα. Αυτά τα ακραία σημεία θα πρέπει εξαλειφθούν, έτσι ώστε να αποφευχθούν αυτές οι επιπλοκές. Εικόνα 3.12: Η ομαδοποίηση μετά την εξάλειψη του σημείου ακραίων τιμών. Μείωση του συνολικού τετραγωνικού σφάλματος με μετεπεξεργασία Ο στόχος είναι να μειωθεί το SSE και ένας προφανής τρόπος για να γίνει αυτό είναι να αυξηθεί ο αριθμός των συστάδων. Δύο μέθοδοι υπάρχουν για αυτή τη περίπτωση: Χωρισμός μιας ομάδας σε δύο Εισαγωγή ενός νέου κέντρου Μια άλλη εναλλακτική λύση είναι η μείωση του αριθμού των συστάδων, προσπαθώντας παράλληλα για την ελαχιστοποίηση της αύξησης του συνολικού τετραγωνικού σφάλματος. Αυτό μπορεί να συμβεί με την ένωση δύο ομάδων σε μία ή με τη διάλυση μιας ομάδας. [htbs][cm][p21][kmk] 26

27 3.1. Πλεονεκτήματα αλγορίθμου Ο k-means θεωρείται ένας γρήγορος, ισχυρός και αρκετά αποτελεσματικός αλγόριθμος με μεγάλη ευκολία στην κατανόηση. Δίνει τα καλύτερα αποτελέσματα όταν το σύνολο δεδομένων είναι διακριτό, δηλαδή τα δεδομένα είναι καλά διαχωρισμένα το ένα από το άλλο όπως στην παρακάτω εικόνα (Εικόνα 3.13) [kmca]. Εικόνα 3.13: Ομαδοποίηση καλά διαχωρισμένων δεδομένων Μειονεκτήματα αλγορίθμου Ο αλγόριθμος απαιτεί τον προκαθορισμό του αριθμού των κέντρων των συστάδων. Η τυχαία επιλογή της τιμής αυτών των κέντρων μπορεί να μη μας οδηγήσει σε εποικοδομητικό αποτέλεσμα. Επίσης, ο αλγόριθμος παρουσιάζει αδυναμία στον χειρισμό δεδομένων με θόρυβο ή ακραίες τιμές και αποτυγχάνει για μη γραμμικό σύνολο δεδομένων όπως βλέπουμε στη παρακάτω εικόνα (Εικόνα 3.14). [kmca][kmk] Εικόνα 3.14: Ομαδοποίηση με μη γραμμικό σύνολο δεδομένων. 27

28 3.3. Απλό αριθμητικό παράδειγμα Ας υποθέσουμε ότι έχουμε διάφορα αντικείμενα (4 τύπους φαρμάκων) και κάθε αντικείμενο από αυτά έχει δύο χαρακτηριστικά, όπως φαίνεται στον παρακάτω πίνακα. Στόχος μας είναι να ομαδοποιήσουμε αυτά τα αντικείμενα σε Κ=2 συστάδες φαρμάκων με βάση αυτά τα χαρακτηριστικά (ph και δείκτης βάρους). Πίνακας 3.1: Δεδομένα παραδείγματος Αντικείμενο Δείκτης βάρους (X) Δείκτης ph (Y) Φάρμακο Α 1 1 Φάρμακο Β 2 1 Φάρμακο Γ 4 3 Φάρμακο Δ 5 4 Κάθε φάρμακο αντιπροσωπεύει ένα σημείο με δύο χαρακτηριστικά (Χ,Υ) το οποίο μπορούμε να αναπαραστήσουμε σε ένα χώρο χαρακτηριστικών όπως φαίνεται στην παρακάτω εικόνα (Εικόνα 3.15). Εικόνα 3.15: Δεδομένα προς ομαδοποίηση (μπλε ρόμβοι). Βήμα 1 ο. Αρχικοποίηση κέντρων: Ας υποθέσουμε ότι χρησιμοποιούμε τα φάρμακο Α και Β ως τα αρχικά κέντρα. Τότε αν τα κέντρα συμβολίζονται με c 1 και c 2 θα έχουμε c 1 =(1, 1) και c 2 =(2, 1). Εικόνα 3.16: Αρχικοποίηση κέντρων. Τα κέντρα συμβολίζονται με κόκκινο αστεράκι. 28

29 Βήμα 2 ο. Απόσταση μεταξύ αντικειμένων και κέντρων: Υπολογίζουμε την απόσταση μεταξύ του κέντρου κάθε συστάδας και κάθε αντικειμένου. Χρησιμοποιώντας την ευκλείδεια απόσταση, ο πίνακας αποστάσεων της επανάληψης 0 θα είναι Κάθε στήλη στον πίνακα αποστάσεων συμβολίζει το κάθε αντικείμενο. Η πρώτη γραμμή αντιστοιχεί στην απόσταση κάθε αντικειμένου από το πρώτο κέντρο και η δεύτερη γραμμή στην απόσταση κάθε αντικειμένου από το δεύτερο. Για παράδειγμα, η απόσταση του φαρμάκου Γ=(4, 3) από το πρώτο κέντρο είναι είναι, και η απόσταση του από το δεύτερο κέντρο, κ.τ.λ. ά ά Βήμα 3 ο : Ομαδοποίηση αντικειμένων: Εκχωρούμε κάθε αντικείμενο σε μια από τις δύο συστάδες με βάση την ελάχιστη απόσταση από το κάθε κέντρο. Έτσι, το φάρμακο Α ανατίθεται στην συστάδα 1, το Β στην 2, το Γ στην 2 και το Δ στην 2. Το κάθε στοιχείο του πίνακα ομαδοποίησης που βλέπουμε παρακάτω είναι 1 αν και μόνο αν το αντικείμενο ανατίθεται στην εκάστοτε συστάδα. ά ά Βήμα 4 ο. Καθορισμός κέντρων: Γνωρίζοντας τα μέλη κάθε συστάδας, μπορούμε τώρα βασιζόμενοι σε αυτά να υπολογίσουμε το νέο κέντρο κάθε συστάδας. Η συστάδα 1 έχει μόνο ένα μέλος. Οπότε το κέντρο παραμένει στο. Η συστάδα 2 έχει πλέον τρία μέλη. Άρα το κέντρο θα είναι ο μέσος όρος μεταξύ των συντεταγμένων των τριών αυτών μελών: Εικόνα 3.17: Ο καθορισμός των κέντρων 29

30 Βήμα 5 ο. Απόσταση μεταξύ αντικειμένων και κέντρων: Το επόμενο βήμα είναι ο υπολογισμός της απόστασης όλων των αντικειμένων από τα νέα κέντρα. Αυτό το βήμα είναι παρόμοιο με το 2 ο και ο πίνακας αποστάσεων στην επανάληψη 1 θα είναι Βήμα 6 ο. Ομαδοποίηση αντικειμένων: Παρομοίως με το βήμα 3, εκχωρούμε κάθε αντικείμενο σε κάποια συστάδα με βάση την ελάχιστη απόσταση. Με βάση το νέο πίνακα αποστάσεων, μεταφέρουμε το φάρμακο Β στην συστάδα 1, ενώ τα υπόλοιπα αντικείμενα παραμένουν ως έχουν. Ο πίνακας ομαδοποίησης φαίνεται παρακάτω ά ά ά ά Βήμα 7 ο. Καθορισμός κέντρων: Τώρα επαναλαμβάνουμε το 4 ο βήμα για να υπολογίσουμε τις συντεταγμένες των νέων κέντρων με βάση την ομαδοποίηση του προηγούμενου βήματος. Και οι δυο συστάδες έχουν πλέον από δύο μέλη, οπότε τα νέα κέντρα θα είναι και Εικόνα 3.18: Επανακαθορισμός των κέντρων. Βήμα 8 ο. Απόσταση μεταξύ αντικειμένων και κέντρων: Επαναλαμβάνοντας πάλι το βήμα 2, θα έχουμε ένα νέο πίνακα αποστάσεων όπως παρακάτω ά ά 30

31 Βήμα 9 ο. Ομαδοποίηση αντικειμένων: Πάλι, εκχωρούμε κάθε αντικείμενο σε κάποια ομάδα με βάση την ελάχιστη απόσταση. ά ά Παρατηρούμε ότι. Η σύγκριση των ομαδοποιήσεων αυτής της επανάληψης με της προηγούμενης αποκαλύπτει ότι δεν υπάρχει πλέον καμιά μετακίνηση αντικειμένου μεταξύ των συστάδων. Έτσι, ο υπολογισμός της k-means ομαδοποίησης έφτασε σε σταθερό σημείο και δεν χρειάζονται περαιτέρω επαναλήψεις. Οπότε το τελικό αποτέλεσμα της ομαδοποίησης θα είναι ως εξής [ne] 3.2: Τελικό αποτέλεσμα παραδείγματος Αντικείμενο Δείκτης βάρους Δείκτης ph (Y) Τελική ομάδα (X) Φάρμακο Α Φάρμακο Β Φάρμακο Γ Φάρμακο Δ

32 4. Μηχανές διανυσματικής στήριξης Η μηχανή διανυσματικής στήριξης (Support Vector Machine SVM) είναι μια προηγμένης τεχνολογίας μέθοδος ταξινόμησης που δημιουργήθηκε το 1992 από τους Boser, Guyon, και Vapnik [BGV]. Ο ταξινομητής SVM χρησιμοποιείται ευρέως στην βιοπληροφορική (και άλλους επιστημονικούς κλάδους) λόγω της υψηλής ακρίβειάς του, της ικανότητας να αντιμετωπίζει προβλήματα με δεδομένα μεγάλων διαστάσεων, όπως την έκφραση των γονιδίων, και της ευελιξίας στη μοντελοποίηση δεδομένων διαφόρων πηγών [STV]. Τα SVMs ανήκουν στη γενική κατηγορία των μεθόδων πυρήνα [STC][SS]. Μια μέθοδος πυρήνα είναι ένας αλγόριθμος ο οποίος εξαρτάται από τα δεδομένα μόνο μέσω των εσωτερικών γινομένων τους. Το εσωτερικό γινόμενο μπορεί να αντικατασταθεί από μια συνάρτηση πυρήνα που υπολογίζει το εσωτερικό γινόμενο σε κάποιο υψηλών διαστάσεων χώρο χαρακτηριστικών. Αυτό έχει ένα μεγάλο πλεονέκτημα. Τη δυνατότητα δημιουργίας μη γραμμικών ορίων απόφασης, χρησιμοποιώντας μεθόδους σχεδιασμένους για γραμμικούς ταξινομητές, όπως βλέπουμε στην παρακάτω εικόνα. [BHW] Εικόνα 4.1: Ο αλγόριθμος μηχανής διανυσματικής στήριξης. 32

33 4.1. Γραμμικοί ταξινομητές Τα δεδομένα ενός προβλήματος δύο κατηγοριών αποτελούνται από αντικείμενα στα οποία έχει τοποθετηθεί μία ετικέτα ανάλογα με την κλάση στην οποία ανήκουν. Συνήθως αυτές οι ετικέτες είναι το «+1» και «-1» και αποδίδονται σε μία μεταβλητή y όπως περιγράφεται ακολούθως. Σε ότι δούμε παρακάτω το x υποδηλώνει ένα διάνυσμα στήλης με l το πλήθος στοιχεία. Έτσι έχουμε Αν Μ το πλήθος των προτύπων του συνόλου εκπαίδευσης τότε Ένας γραμμικός ταξινομητής βασίζεται σε μια γραμμική διακριτική συνάρτηση της μορφής Το διάνυσμα w είναι γνωστό ως weight vector και καθορίζει την διεύθυνση του υπερεπιπέδου, ενώ το b (bias) καθορίζει την ακριβή θέση του υπερεπιπέδου στο χώρο. Το υπερεπίπεδο χωρίζει τον χώρο στα δύο: το πρόσημο της διακριτικής συνάρτησης ορίζει σε ποια από τις δύο πλευρές του υπερεπιπέδου βρίσκεται κάθε σημείο (Εικόνα 4.2). Το όριο μεταξύ των περιοχών που κατηγοριοποιούνται ως θετικές και αρνητικές ονομάζεται όριο απόφασης του ταξινομητή. Ένας ταξινομητής με γραμμικό όριο απόφασης λέγεται γραμμικός ταξινομητής. Αντίθετα όταν το όριο απόφασης ενός ταξινομητή δεν περιγράφεται από την σχέση (4.4), ο ταξινομητής λέγεται μη γραμμικός. [BHW] Εικόνα 4.2: Ένας γραμμικός ταξινομητής. Το όριο απόφασης χωρίζει το επίπεδο σε δύο σύνολα ανάλογα με το πρόσημο της. 33

34 4.2. Γεωμετρικό περιθώριο (margin) Μπορούμε να αποδεχτούμε ότι μια πολύ λογική επιλογή του υπερεπιπέδου ταξινόμησης θα ήταν αυτή η οποία αφήνει το μέγιστο περιθώριο και από τις δύο κλάσεις. Επίσης, επειδή δεν θέλουμε να δείξουμε προτίμηση σε κάποια από τις κλάσεις, είναι λογικό, για κάθε διεύθυνση, να διαλέξουμε το υπερεπίπεδο που έχει την ίδια απόσταση από τα αντίστοιχα πλησιέστερα σε αυτό σημεία των δύο κλάσεων. Το σκεπτικό αυτό απεικονίζεται στην εικόνα 4.3. Τα υπερεπίπεδα που έχουν σχεδιαστεί με σκούρες γραμμές είναι εκείνα που έχουν επιλεχθεί μέσα από το άπειρο σύνολο επιπέδων στην αντίστοιχη διεύθυνση. Το περιθώριο για την διεύθυνση «1» είναι το 2z 1 και το περιθώριο για την «2» είναι το 2z 2. Εικόνα 4.3: Παράδειγμα προβλήματος δύο γραμμικά διαχωρίσιμων κλάσεων με δύο δυνατούς γραμμικούς ταξινομητές. Ο στόχος μας είναι να ψάξουμε για τη διεύθυνση που δίνει το μέγιστο περιθώριο. Η απόσταση ενός σημείου από ένα υπερεπίπεδο δίνεται από τη σχέση Μπορούμε να απαιτήσουμε οι τιμές των w και b να είναι τέτοιες έτσι ώστε η τιμή της στα πλησιέστερα σημεία των δύο κλάσεων (κυκλωμένα στην εικόνα 4.3), να είναι ίση με 1 για την ω 1 και κατά συνέπεια, -1 για την ω 2. Αυτό είναι ισοδύναμο με το 1. Να έχουμε ένα περιθώριο 2. Να απαιτούμε να είναι 34

35 Για κάθε, συμβολίζουμε τον αντίστοιχο δείκτη της κλάσης με (+1 για την ω 1 και -1 για την ω 2 ). Το πρόβλημά μας τώρα μπορεί να συνοψιστεί ως εξής: Υπολόγισε τις παραμέτρους w, b του υπερεπιπέδου έτσι ώστε: να ελαχιστοποιείται η συνάρτηση κόστους υπό τους περιορισμούς Η ανισότητα μπορεί να μετατραπεί σε όπου A m συμβολίζει τον m περιορισμό. Προφανώς, η ελαχιστοποίηση της συνάρτησης κόστους οδηγεί σε μεγιστοποίηση του περιθωρίου. Το παραπάνω πρόβλημα ανήκει στα προβλήματα βελτιστοποίησης κυρτού προγραμματισμού (Convex optimization) ως προς ένα σύνολο περιορισμών γραμμικών ανισοτήτων. Η επίλυσή του σύμφωνα με τους Karush-Kuhn-Tucker (KKT) [Ka][KuTu] γίνεται με την χρήση των παρακάτω συνθηκών: όπου λ είναι το διάνυσμα των πολλαπλασιαστών Lagrange, λ m και Lagrangian συνάρτηση, η οποία ορίζεται ως η που συνεπάγεται 35

36 Συνδυάζοντας την εξίσωση (4.14) με τις εξισώσεις (4.9) και (4.10), θα έχουμε Οι πολλαπλασιαστές Lagrange μπορούν να είναι είτε μηδέν είτε θετικοί. Έτσι, το διάνυσμα παραμέτρων, w, της βέλτιστης λύσης είναι ένας γραμμικός συνδυασμός από διανύσματα χαρακτηριστικών, τα οποία σχετίζονται με. Δηλαδή, Αυτά είναι γνωστά ως διανύσματα στήριξης και ο βέλτιστος ταξινομητής είναι γνωστός ως μηχανή διανυσματικής στήριξης. Από την παραπάνω σχέση καταλαβαίνουμε ότι ο δηλώνει τον συνολικό αριθμό των διανυσμάτων στήριξης. Έχοντας διατυπώσει όλες αυτές τις ενδιαφέρουσες ιδιότητες του βέλτιστου υπερεπιπέδου ενός SVM, χρειάζεται στη συνέχεια να υπολογίσουμε τις εμπλεκόμενες παραμέτρους. Όπως προαναφέραμε, το πρόβλημα βελτιστοποίησης των εξισώσεων (4.6) και (4.7) ανήκει στην οικογένεια κυρτού προγραμματισμού. Τέτοια προβλήματα μπορούν να επιλυθούν με βάση την λεγόμενη Λαγκραντζιανή δυικότητα (Lagrangian duality). Το πρόβλημα μπορεί να εκφραστεί ισοδύναμα από την δυική του διατύπωση κατά Wolfe, δηλαδή ελαχιστοποίησε την ως προς w και b και μεγιστοποίησε την ως προς λ, δηλαδή υπό τους περιορισμούς 36

37 Οι δύο περιορισμοί ισότητας είναι το αποτέλεσμα της εξίσωσης με το μηδέν του διανύσματος μερικών παράγωγων της Lagrangian, ως προς το w, και της παραγώγου της Lagrangian, ως προς b. Αντικαθιστώντας τις εξισώσεις (4.20) και (4.21) στην (4.14) προκύπτει: Οπότε έχουμε Έτσι προκύπτει ένα νέο πρόβλημα μεγιστοποίησης κυρτού προγραμματισμού της. με τους περιορισμούς 37

38 4.2.1 Απλό αριθμητικό παράδειγμα Εικόνα 4.4: Δεδομένα παραδείγματος Έστω ότι έχουμε τα παρακάτω δεδομένα: με y 1,y 2 =1 και y 3,y 4 =-1. Να υπολογισθεί ο βέλτιστος ταξινομητής. Λύση Κάνοντας χρήση των σχέσεων (4.23), (4.24), (4.25) και (4.26), δηλαδή της δυικής διατύπωσης του προβλήματος βελτιστοποίησης ως αποτέλεσμα θα έχουμε την παρακάτω συνάρτηση Lagrange: όπου, οι καινούριοι Lagrangian πολλαπλασιαστές 38

39 Οι συνθήκες Karush-Kuhn-Tucker μας δίνουν τις παρακάτω σχέσεις: Με δεδομένα τα και μπορούμε εύκολα να δημιουργήσουμε τον πίνακα. Έτσι θα έχουμε και με βάση την συνθήκη (1) θα προκύψει το παρακάτω σύστημα Όπως βλέπουμε θα έχουμε ένα σύστημα πέντε εξισώσεων με οχτώ αγνώστους, πράγμα το οποίο το κάνει δυσεπίλυτο. Παρατηρώντας όμως τις συνθήκες (3) και (4), συμπεραίνουμε ότι για τα δεδομένα που είναι διανύσματα στήριξης (δηλαδή με ), οι αντίστοιχοι Lagrangian πολλαπλασιαστές θα είναι ίσοι με το μηδέν. Κάνοντας χρήση του παραπάνω σχήματος (Εικόνα 4.4) μπορούμε εύκολα να κατανοήσουμε ποιά από τα δεδομένα μας θα είναι τα διανύσματα στήριξης. Συνήθως όμως τα δεδομένα είναι περισσότερα και βρίσκονται σε χώρο υψηλότερης διάστασης. Έτσι ο τρόπος για να βρούμε τα διανύσματα στήριξης, έχοντας βέβαια σαν δεδομένο ότι θα είναι τουλάχιστον ένα από κάθε κλάση, είναι να λύσουμε τα συστήματα των παρακάτω περιπτώσεων: 1) τα διανύσματα στήριξης. Άρα. 39

40 2) τα διανύσματα στήριξης. Άρα. 3) τα διανύσματα στήριξης. Άρα. 4) τα διανύσματα στήριξης. Άρα. 5) τα διανύσματα στήριξης. Άρα. 6) τα διανύσματα στήριξης. Άρα. 7) τα διανύσματα στήριξης. Άρα. 8) τα διανύσματα στήριξης. Άρα. 9) τα διανύσματα στήριξης. Άρα. Λύνοντας τα συστήματα διαπιστώνουμε ότι η περίπτωση που μας οδηγεί σε σωστά αποτελέσματα είναι η 3 η όπου έχουμε Όπως βλέπουμε έχουμε πλέον ένα σύστημα πέντε εξισώσεων με πέντε αγνώστους, οπότε μπορούμε εύκολα να το λύσουμε. Έτσι κάνοντας λίγες πράξεις θα έχουμε Πλέον με χρήση της σχέσης (4.17) μπορούμε να βρούμε την τιμή του weight vector w. 40

41 Όπως γνωρίζουμε η απόσταση ενός διανύσματος στήριξης από το όριο απόφασης ισούται με την μονάδα. Έτσι, εφόσον γνωρίζουμε ότι το είναι διάνυσμα στήριξης θα έχουμε Έχοντας κάνει γνωστά τα και, με χρήση της σχέσης (4.3) βρίσκουμε τον βέλτιστο ταξινομητή ο οποίος είναι ο. Εικόνα 4.5: Ο βέλτιστος ταξινομητής 41

42 4.2.2 Xρήση χαλαρού περιθωρίου Εικόνα 4.6: Παράδειγμα προβλήματος δύο κλάσεων με χρήση χαλαρού περιθωρίου. Όταν οι κλάσεις δεν είναι διαχωρίσιμες, τα παραπάνω δεν είναι πλέον έγκυρα. Κάθε προσπάθεια να σχεδιαστεί ένα υπερεπίπεδο δεν θα καταλήξει ποτέ σε μία ζώνη διαχωρισμού κλάσεων χωρίς σημεία στο εσωτερικό της, όπως συνέβαινε στην περίπτωση των γραμμικά διαχωρίσιμων κλάσεων. Όπως έχουμε αναφέρει το περιθώριο ορίζεται ως η απόσταση μεταξύ του ζεύγους των παράλληλων υπερεπίπεδων τα οποία περιγράφονται από τις εξισώσεις Τα διανύσματα χαρακτηριστικών εκπαίδευσης στην περίπτωση μη διαχωρίσιμων κλάσεων ανήκουν σε μια από τις ακόλουθες τρείς κατηγορίες (Εικόνα 4.4): Διανύσματα που βρίσκονται εκτός της ζώνης και είναι σωστά ταξινομημένα. Τα διανύσματα αυτά συμμορφώνονται με τους περιορισμούς της εξίσωσης (4.8). Διανύσματα που βρίσκονται εντός της ζώνης και είναι σωστά ταξινομημένα. Αυτά ικανοποιούν την ανισότητα Διανύσματα που ταξινομούνται εσφαλμένα. Αυτά υπακούουν στην ανισότητα Και οι τρεις περιπτώσεις μπορούν να αντιμετωπιστούν στο πλαίσιο ενός και μόνο είδους περιορισμών, εισάγοντας ένα νέο σύνολο μεταβλητών, και συγκεκριμένα: 42

43 Η πρώτη κατηγορία δεδομένων αντιστοιχεί σε ξ m =0, η δεύτερη σε 0<ξ m 1, και η τρίτη σε ξ m >1. Οι μεταβλητές ξ m είναι γνωστές ως μεταβλητές χαλαρότητας (slack variables). Ο στόχος τώρα είναι να κάνουμε το περιθώριο όσο το δυνατόν μεγαλύτερο αλλά την ίδια στιγμή να κρατήσουμε το πλήθος των σημείων για τα οποία ισχύει ξ>0, όσο το δυνατόν πιο μικρό. Η ανισότητα (4.27) μπορεί ισοδύναμα να μετατραπεί σε Έτσι, το πρόβλημά μας μπορεί να γραφεί ως εξής: ελαχιστοποίησε την υπό τους περιορισμούς όπου η παράμετρος C είναι μια θετική σταθερά που ελέγχει τη σχετική επιρροή των δύο ανταγωνιστικών όρων. Αυτή η διατύπωση ονομάστηκε χαλαρό περιθώριο (soft margin) και εισήχθη από τους Cortes και Vapnik [CoVa]. Το πρόβλημα αυτό, είναι και πάλι ένα πρόβλημα κυρτού προγραμματισμού και η αντίστοιχη Lagrangian δίνεται από την σχέση όπου μ m ένα πρόσθετο σύνολο Lagrangian πολλαπλασιαστών για τους επιπλέον περιορισμούς. Οι αντίστοιχες συνθήκες Karush-Kunh-Tucker είναι 43

44 Η αντίστοιχη δυική αναπαράσταση Wolfe γίνεται τώρα: ελαχιστοποίησε την ως προς w, b και ξ και μεγιστοποίησε την ως προς λ και μ, δηλαδή υπό τους περιορισμούς Αντικαθιστώντας τις παραπάνω εξισώσεις περιορισμών στην Lagrangian, καταλήγουμε στις υπό τους περιορισμούς [TK] 44

45 4.3. Πυρήνες: από γραμμικούς σε μη γραμμικούς ταξινομητές Ένας από τους λόγους που η Lagrangian δυικότητα θεωρείται ιδιαίτερα σημαντική, είναι ότι τα διανύσματα εκπαίδευσης χρησιμοποιούνται ανά ζεύγη, με την μορφή εσωτερικών γινομένων. Έτσι η συνάρτηση κόστους δεν εξαρτάται ρητά από τη διάσταση του χώρου εισόδου. Η ιδιότητα αυτή επιτρέπει να γίνουν αποτελεσματικές γενικεύσεις στην περίπτωση μη γραμμικά διαχωρίσιμων κλάσεων. [TK] Σε πολλές εφαρμογές ένας μη γραμμικός ταξινομητής παρέχει καλύτερη ακρίβεια. Όμως, οι γραμμικοί ταξινομητές έχουν κάποια πλεονεκτήματα, ένα από τα οποία είναι ότι έχουν απλούς αλγορίθμους εκπαίδευσης. Αυτό θέτει το ερώτημα αν η μηχανή γραμμικών ταξινομητών μπορεί να επεκταθεί για να δημιουργήσει μη γραμμικά όρια απόφασης. Ένας απλός τρόπος για να κάνουμε ένα μη γραμμικό ταξινομητή από ένα γραμμικό είναι η απεικόνιση των δεδομένων μας από τον χώρο εισόδου διάστασης l σε ένα k>l διάστασης χώρο χρησιμοποιώντας μια μη-γραμμική συνάρτηση [BHW]. Όπως προαναφέραμε ο γραμμικός ταξινομητής είναι της μορφής Έτσι, για μία ακόμη φορά, έρχονται στο προσκήνιο μόνο εσωτερικά γινόμενα. Αν ο σχεδιασμός πρόκειται να γίνει στο νέο k-διάστατο χώρο, η μόνη διαφορά είναι ότι τα εμπλεκόμενα διανύσματα θα είναι οι k-διάστατες εικόνες των αρχικών διανυσμάτων χαρακτηριστικών εισόδου. Έτσι, ο γραμμικός ταξινομητής στον k-διάστατο χώρο μετατρέπεται σε και η δυική αναπαράσταση Wolfe σε υπό τους περιορισμούς Μία απλοϊκή θεώρηση της ιδέας αυτής, θα οδηγούσε στο συμπέρασμα ότι η πολυπλοκότητα είναι κατά πολύ μεγαλύτερη, αφού, συνήθως το k είναι πολύ 45

46 μεγαλύτερο από τη διάσταση του χώρου εισόδου l, προκειμένου να καταστούν γραμμικά διαχωρίσιμες οι κλάσεις. Ωστόσο, θα δούμε στην συνέχεια ότι κάτι τέτοιο μπορεί να αποφευχθεί. Ας υποθέσουμε την περίπτωση ενός δισδιάστατου χώρου εισόδου με την απεικόνιση, έτσι ώστε. Οπότε για το φ(x) T φ(z) θα έχουμε Άρα, το εσωτερικό γινόμενο των διανυσμάτων στο νέο (υψηλότερης διάστασης) χώρο μπορεί να εκφραστεί ως συνάρτηση του εσωτερικού γινομένου των αντίστοιχων διανυσμάτων στο αρχικό χώρο χαρακτηριστικών, πράγμα που μας γλιτώνει από την περιττή πολυπλοκότητα. Έστω. Σύμφωνα με το θεώρημα του Mercer, η πράξη εσωτερικού γινομένου έχει μία ισοδύναμη αναπαράσταση όπου το δηλώνει την πράξη εσωτερικού γινομένου. Συναρτήσεις αυτού του είδους είναι γνωστές ως πυρήνες. Τυπικά παραδείγματα πυρήνων που χρησιμοποιούνται στις εφαρμογές αναγνώρισης προτύπων είναι τα ακόλουθα: Γραμμικός πυρήνας Πολυωνυμικός πυρήνας Γκαουσιανός πυρήνας Έχοντας υιοθετήσει έναν κατάλληλο πυρήνα, η δυική αναπαράσταση κατά Wolfe γίνεται υπό τους περιορισμούς και ο γραμμικός ταξινομητής που προκύπτει είναι 46

47 ταξινόμησε το στην αν ταξινόμησε το στην αν Εκτός από την περίπτωση επιλογής του γραμμικού πυρήνα, ο ταξινομητής που προκύπτει είναι μη γραμμικός στον αρχικό χώρο. [TK] 4.4. Ταξινόμηση πολλών κλάσεων Για την ταξινόμηση των δεδομένων σε Ν κλάσεις, όπου Ν>2, συνήθως χρησιμοποιούμε τις παρακάτω τρεις μεθόδους: Κάθε μία έναντι των υπολοίπων (one against all) Η μέθοδος αυτή θεσπίστηκε από τον Vladimir Vapnik το 1995 [Va]. Σύμφωνα με αυτή τη μέθοδο μπορούμε να θεωρήσουμε το πρόβλημα Ν κλάσεων ως ένα σύνολο Ν προβλημάτων δύο κλάσεων. Έτσι και ο αριθμός των ταξινομητών που θα χρησιμοποιηθούν θα είναι ίσος με Ν, ίσος δηλαδή με τον αριθμό των κλάσεων. Για κάθε μία από τις κλάσεις, ζητάμε να σχεδιάσουμε μία βέλτιστη συνάρτηση διάκρισης, έτσι ώστε αν. Μπορούμε να σχεδιάσουμε τις συναρτήσεις διάκρισης, έτσι ώστε το υπερεπίπεδο το οποίο διαχωρίζει την κλάση να είναι το βέλτιστο από όλες τις άλλες. Με τον τρόπο αυτόν, κάθε ταξινομητής σχεδιάζεται να δίνει για και διαφορετικά. Έτσι, ένα δεδομένο ταξινομείται σε μια συγκεκριμένη κλάση αν και μόνο αν ο ταξινομητής αυτής της κλάσης το δέχεται και οι ταξινομητές των άλλων το απορρίπτουν. Ωστόσο, αυτή η τεχνική μπορεί να οδηγήσει σε απροσδιόριστες περιοχές, όπου περισσότερες από μία είναι θετικές ή όλες είναι αρνητικές. Ένα άλλο μειονέκτημα της τεχνικής είναι ότι κάθε δυαδικός ταξινομητής ασχολείται με ένα μάλλον ασύμμετρο πρόβλημα, με την έννοια ότι η εκπαίδευση γίνεται με πολλά περισσότερα αρνητικά, παρά θετικά παραδείγματα. Αυτό γίνεται πιο έντονο όταν το πλήθος των κλάσεων είναι σχετικά μεγάλο. 47

48 Εικόνα 4.7: Μέθοδος κάθε μίας έναντι των υπολοίπων. Κάθε ελλειπτικός κύκλος προσδίδει την συγκέντρωση των προτύπων εκπαίδευσης της κάθε κλάσης. Οι περιοχές χωρίς χρώμα είναι οι απροσδιόριστες περιοχές. Μία έναντι μίας (one against one) Μία εναλλακτική τεχνική είναι η μία έναντι μίας. Στην περίπτωση αυτή, εκπαιδεύονται δυαδικοί ταξινομητές και κάθε ταξινομητής διαχωρίζει ένα ζεύγος κλάσεων. Η απόφαση λαμβάνεται με βάση την πλειοψηφία. Το προφανές μειονέκτημα αυτής της τεχνικής είναι ότι πρέπει να εκπαιδευτεί ένα σχετικά μεγάλο πλήθος δυαδικών ταξινομητών. Εικόνα 4.8: Μέθοδος μία έναντι μίας Κωδικοποίηση διόρθωσης σφαλμάτων Σύμφωνα με αυτή τη μέθοδο, για ένα πρόβλημα ταξινόμησης Ν κλάσεων, χρησιμοποιείται ένα πλήθος, έστω L, δυαδικών ταξινομητών, όπου το L είναι κατάλληλα επιλεγμένο από τον σχεδιαστή. Κάθε κλάση 48

49 αναπαρίσταται από μια δυαδική κωδική λέξη μήκους L. Κατά την διάρκεια της εκπαίδευσης, για τον j-οστό ταξινομητή, j=1,2,,l, οι επιθυμητές ετικέτες, y, για κάθε κλάση επιλέγονται να είναι ίσες είτε με +1 είτε με -1. Για κάθε κλάση, οι επιθυμητές ετικέτες μπορεί να είναι διαφορετικές για τους διάφορους ταξινομητές. Αυτό είναι ισοδύναμο με το να κατασκευαστεί ένας πίνακας επιθυμητών ετικετών. Για παράδειγμα, αν N=4 και L=6, ένας τέτοιος πίνακας θα μπορούσε να είναι ο Κατά την διάρκεια της εκπαίδευσης, ο πρώτος ταξινομητής (που αντιστοιχεί στην πρώτη στήλη του παραπάνω πίνακα) σχεδιάζεται έτσι ώστε να αποκρίνεται με (-1, +1, +1, -1), για πρότυπα που προέρχονται από τις κλάσεις ω 1, ω 2, ω 3 και ω 4, αντίστοιχα. Ο δεύτερος ταξινομητής θα εκπαιδευτεί να αποκρίνεται με (-1, -1, +1, -1), κοκ. Η διαδικασία είναι ισοδύναμη με το να ομαδοποιηθούν οι κλάσεις σε L διαφορετικά ζεύγη και για κάθε ζεύγος να εκπαιδεύσουμε έναν δυαδικό ταξινομητή. Για την περίπτωση του παραδείγματός μας και για τον πρώτο δυαδικό ταξινομητή, η κλάση ω 1 έχει ομαδοποιηθεί με την ω 4 και η ω 2 με την ω 3. Κάθε γραμμή πρέπει να είναι διακριτή και να αντιστοιχεί σε μία κλάση. Για το παράδειγμά μας, και υποθέτοντας απουσία σφαλμάτων, οι έξοδοι των L ταξινομητών για ένα πρότυπο από την κλάση ω 1 θα έχουν ως αποτέλεσμα την κωδική λέξη (-1, -1, - 1, +1, -1, +1), κοκ. Όταν παρουσιάζεται ένα άγνωστο πρότυπο, η έξοδος του κάθε δυαδικού ταξινομητή καταγράφεται, καταλήγοντας έτσι σε μία κωδική λέξη. Έπειτα, υπολογίζεται η απόσταση Hamming (δηλαδή, το πλήθος των θέσεων στις οποίες δύο κωδικές λέξεις διαφέρουν) αυτής της κωδικής λέξης από τις N κωδικές λέξεις, και το πρότυπο ταξινομείται στην κλάση που αντιστοιχεί στην ελάχιστη απόσταση. Αν οι κωδικές λέξεις είναι σχεδιασμένες έτσι ώστε η ελάχιστη απόσταση Hamming ανάμεσα σε οποιοδήποτε ζεύγος από αυτές να είναι, για παράδειγμα, d, τότε μία σωστή απόφαση θα είναι εφικτή, ακόμα και αν από L αποφάσεις είναι εσφαλμένες, όπου δηλώνει το ακέραιο μέρος. Για την περίπτωση του παραδείγματός μας, η ελάχιστη απόσταση Hamming, για κάθε ζεύγος, είναι ίση με 3. Οπότε, οδηγούμαστε σε σωστή απόφαση ακόμα και αν μία από τις έξι αποφάσεις είναι εσφαλμένη. [TK] 49

50 4.5. Παράμετροι Με την εκπαίδευση βρίσκουμε το υπερεπίπεδο μεγίστου περιθωρίου δηλαδή τις παραμέτρους λ m και b στην σχέση (4.60). Το SVM έχει και ένα άλλο σύνολο παραμέτρων που ονομάζονται υπερπαράμετροι: Σταθερά χαλαρού περιθωρίου (C) Η παράμετρος C καθορίζει το χαλαρό περιθώριο. Για μια μεγάλη τιμή C (αριστερά στην εικόνα 4.7), ο ταξινομητής προσπαθεί να βρει το υπερεπίπεδο που έχει όσο το δυνατόν λιγότερα λάθη κατηγοριοποίησης και σφάλματα περιθωρίου, ενώ για μια μικρή τιμή της C (δεξιά στην εικόνα 4.7), κύριο μέλημα του ταξινομητή είναι η μεγιστοποίηση του περιθωρίου, επιτρέποντας σε κάποια, λίγα δεδομένα να βρεθούν στην λάθος πλευρά του υπερεπιπέδου ή μέσα στο περιθώριο. [BHW] Εικόνα 4.9: Η επίδραση της σταθεράς χαλαρού περιθωρίου, C, στο όριο απόφασης. Μια μικρότερη τιμή της C (δεξιά) μας επιτρέπει να αγνοούμε σημεία κοντά στο όριο, με σκοπό να αυξηθεί το περιθώριο Βαθμός του πολυωνυμικού πυρήνα Ο βαθμός του πολυωνυμικού πυρήνα ελέγχει την καμπυλότητα του ταξινομητή. Το πολυώνυμο με το χαμηλότερο βαθμό είναι ο γραμμικός πυρήνας, ο οποίος δεν είναι επαρκής όταν υπάρχει μια μη γραμμική σχέση μεταξύ των χαρακτηριστικών. [BHW] Εικόνα 4.10: Η επίδραση του βαθμού του πολυωνυμικού πυρήνα. Υψηλότερου βαθμού πολυωνυμικοί πυρήνες επιτρέπουν πιο καμπυλωτό όριο απόφασης. 50

51 Παράμετρος Γάμμα (γ) Η παράμετρος γ εμφανίζεται μόνο στον γκαουσιανό πυρήνα και καθορίζει το σχήμα του υπερπεπιπέδου. Αυξάνοντας το γ, συνήθως αυξάνεται το πλήθος των διανυσμάτων στήριξης. [BHW][ev] Εικόνα 4.11: Η επίδραση της υπερπαραμέτρου γ για μία συγκεκριμένη τιμή της σταθεράς χαλαρού περιθωρίου. Για μικρές τιμές του γ (επάνω αριστερά) το όριο απόφασης είναι σχεδόν γραμμικό. Όσο αυξάνεται το γ αυξάνεται και η ελαστικότητα του ορίου απόφασης. Μεγάλες τιμές του γ συνήθως οδηγούν σε υπερταξινόμηση (κάτω δεξιά) Επιλογή μοντέλου Όταν κάνουμε χρήση ενός γραμμικού ταξινομητή, η μόνη υπερπαράμετρος που πρέπει να ρυθμιστεί είναι η σταθερά χαλαρού περιθωρίου. Για ένα πολυωνυμικό ή ένα γκαουσιανό όμως ταξινομητή πρέπει να ρυθμιστούν δύο υπερπαράμετροι. Η μη σωστή επιλογή αυτών των παραμέτρων μπορεί μερικές φορές να οδηγήσει σε υπερταξινόμηση (overfitting) ή υποταξινόμηση (underfitting) των προτύπων εκπαίδευσης. Στην παρακάτω εικόνα βλέπουμε ποιες θα είναι οι επιπτώσεις στην ταξινόμηση ενός καινούργιου προτύπου στις δυο αυτές περιπτώσεις (Εικόνα 4.10). 51

52 Εικόνα 4.12: Μοντέλο ταξινομητή που προκαλεί υποταξινόμηση (β) υπερταξινόμηση (γ) βέλτιστη ταξινόμηση (δ) πάνω στα ίδια δεδομένα (α). Ο καλύτερος συνδυασμός C και γ συνήθως επιλέγεται κάνοντας χρήση ενός πλέγματος αναζήτησης (grind-search) με εκθετικά αυξανόμενες ακολουθίες των C και γ, για παράδειγμα και Κάθε συνδυασμός παραμέτρων ελέγχεται με χρήση της διασταυρωμένης επικύρωσης (cross validation) και διαλέγονται οι παράμετροι με την μεγαλύτερη ακρίβεια αυτής. Το τελικό μοντέλο, το οποίο χρησιμοποιείται για ταξινόμηση νέων δεδομένων, εκπαιδεύεται χρησιμοποιώντας τις επιλεγμένους παραμέτρους [WCJ]. [BHW][svmw][dtr] Εικόνα 4.13: Εντοπισμός του καλύτερου συνδυασμού παραμέτρων με χρήση πλέγματος αναζήτησης. Όσο πιο φωτεινό τόσο καλύτερο συνδυασμό παραμέτρων παίρνουμε. 52

53 5. Τεχνική ανάκτησης εικόνας με βάση το περιεχόμενο Εικόνα 5.1: Λογικό διάγραμμα αλγορίθμου εκπαίδευσης 53

54 Εικόνα 5.2: Λογικό διάγραμμα αλγορίθμου classification Η εφαρμογή που αναπτύχθηκε είναι ένα on-line learning σύστημα ανάκτησης εικόνων με βάση το περιεχόμενο. Ο αλγόριθμος ακολουθεί τα παρακάτω κύρια βήματα: Εξαγωγή χαρακτηριστικών του συνόλου εκπαίδευσης Ομαδοποίηση χαρακτηριστικών Καθορισμός του ανύσματος χαρακτηριστικών και εκπαίδευση του συστήματος Εξαγωγή χαρακτηριστικών της εικόνας προς ταξινόμηση (classification) και συσχέτιση τους με τις k-means συστάδες του συνόλου εκπαίδευσης SVM Classification και εμφάνιση αποτελέσματος 5.1. Εξαγωγή χαρακτηριστικών του συνόλου εκπαίδευσης Από τις εικόνες του συνόλου εκπαίδευσης (training set) S, γίνεται εξαγωγή χαρακτηριστικών με χρήση του αλγορίθμου SIFT. Από κάθε εικόνα μπορεί να εξαχθεί διαφορετικό πλήθος χαρακτηριστικών. Όμως, κάθε χαρακτηριστικό περιγράφεται με 128 αριθμούς [όπως αναλυτικά περιγράφεται στην ενότητα 2]. Έτσι, ολοκληρώνοντας το στάδιο εξαγωγής χαρακτηριστικών, σαν αποτέλεσμα θα έχουμε έναν δισδιάστατο πίνακα D μεγέθους M x 128, όπου M το πλήθος των χαρακτηριστικών όλων των εικόνων του S, καθώς και ένα πίνακα στήλης Β με τα πλήθη των χαρακτηριστικών που εξάγονται ξεχωριστά από κάθε εικόνα. Με βάση τα παραπάνω θα έχουμε 54

55 όπου M το πλήθος όλων των SIFT kp από όλες τις εικόνες του S και στοιχείο του περιγραφέα του m keypoint. το Αν Ν το πλήθος των εικόνων του S με το πλήθος των SIFT kp που εξήχθησαν από την n εικόνα, 1 n N. Ισχύει προφανώς ότι 5.2. Ομαδοποίηση χαρακτηριστικών Στη συνέχεια, τα Μ χαρακτηριστικά που εξήχθηκαν από το σύνολο των εικόνων ομαδοποιούνται με χρήση του αλγόριθμου ομαδοποίησης k-means. Η απεικόνιση των SIFT χαρακτηριστικών γίνεται σε ένα χώρο 128 διαστάσεων. Μετά τη χρήση του αλγόριθμου, θα έχουμε: Αν Κ το πλήθος των συστάδων (ομάδων) που προέκυψαν από την εφαρμογή του k- means τότε όπου το περιγράφει τα κέντρα (centroids) των Κ συστάδων. Αν το m SIFT kp ανήκει στην συστάδα k τότε δημιουργούμε τον πίνακα στήλης 55

56 Εικόνα 5.3: Ομαδοποίηση των χαρακτηριστικών με χρήση του αλγόριθμου k-means. Για τον καθορισμό του ποσού των συστάδων Κ, εφαρμόστηκε η μέθοδος «κανόνας του αντίχειρα» (rule of thumb) [dnc], σύμφωνα με την οποία Έπειτα με χρήση των πινάκων D, CE και F, υπολογίζεται ποια είναι η μεγαλύτερη ευκλείδεια απόσταση κάθε κέντρου από κάθε σημείο της ομάδας του. όπου, η ευκλείδεια απόσταση. Εικόνα 5.4: Υπολογισμός μέγιστης ευκλείδειας απόστασης κάθε κέντρου. 56

57 5.3. Καθορισμός του ανύσματος χαρακτηριστικών και εκπαίδευση του συστήματος Αρχικά υπολογίζονται για κάθε εικόνα το πλήθος των keypoints που βρίσκονται σε κάθε συστάδα με χρήση των πινάκων Β και F. Αυτά ουσιαστικά θα είναι τα δεδομένα των ανυσμάτων χαρακτηριστικών (feature vectors). Για επίτευξη όμως καλύτερων αποτελεσμάτων θα χρειαστεί να τα κλιμακώσουμε στο διάστημα [0,1]. Αυτή η διαδικασία, γνωστή ως κλιμάκωση (scaling), θα μας βοηθήσει στην αποφυγή της υπερίσχυσης των χαρακτηριστικών με μεγάλου εύρους αριθμούς έναντι των υπολοίπων, όπως επίσης και στην αποφυγή των υπολογιστικών δυσκολιών κατά την διάρκεια της διαδικασίας [WCJ]. Έτσι, για την επίτευξη της κλιμάκωσης διαιρούμε κάθε δεδομένο με το μέγιστο δεδομένο όλων των ανυσμάτων. Σε περίπτωση δύο κλάσεων θα δημιουργηθεί ένα σύνολο ανυσμάτων όπου θα τοποθετηθεί η ετικέτα «+1» στους περιγραφείς των εικόνων της πρώτης κλάσης και «-1» της δεύτερης. Σε περίπτωση πολλών κλάσεων, κάνοντας χρήση της μεθόδου «μία εναντίον μίας», θα δημιουργηθούν τόσα σύνολα ανυσμάτων όσοι και οι ταξινομητές. Έτσι, αν υποθέσουμε ότι έχουμε C πλήθος κλάσεων, θα έχουμε!(c-1) ταξινομητές, άρα και τόσα σύνολα ανυσμάτων. Τέλος, επιλέγουμε πυρήνα και υπερπαραμέτρους [όπως αναλυτικά περιγράφεται στην ενότητα 4] και σύμφωνα με αυτά και το σύνολο ανυσμάτων προχωράμε στην SVM εκπαίδευση του συστήματος*. Εικόνα 5.5: Παράδειγμα πίνακα με ανύσματα χαρακτηριστικών έξι εικόνων, δύο κλάσεων και πλήθος συστάδων Κ=5. Τα δεδομένα του αρχικού πίνακα διαιρούνται με το μεγαλύτερο από αυτά (στοιχείο στο κόκκινο πλαίσιο), έτσι ώστε να προκύψει ο νέος πίνακας με κλιμάκωση. * Για το SVM έγινε χρήση της βιβλιοθήκης LibSVM ( η οποία είναι ένα πλήρες λογισμικό της μηχανής διανυσματικής στήριξης. Δημιουργήθηκε από τους Chang, Chih-Chung και Lin, Chih-Jen. Είναι διαθέσιμη κάτω από την άδεια libsvm, η οποία αποτελεί μια τροποποιημένη έκδοση της άδειας BSD. Οπότε, θεωρείται ελεύθερη τόσο για ακαδημαϊκή όσο και για επαγγελματική χρήση. [CC] 57

58 5.4. Εξαγωγή χαρακτηριστικών της εικόνας προς ταξινόμηση (classification) και συσχέτιση τους με τις k-means συστάδες του συνόλου εκπαίδευσης Με την ολοκλήρωση του προηγούμενου βήματος, ουσιαστικά ολοκληρώνεται το κομμάτι της εκπαίδευσης του συστήματος. Η επόμενη μας κίνηση είναι η επιλογή της εικόνας την οποία στη συνέχεια θα εξετάσουμε αν θα ταξινομηθεί σωστά από το σύστημα. Αφού επιλέξουμε την εικόνα, εξάγουμε από αυτήν τα SIFT χαρακτηριστικά. Κάνοντας χρήση του πίνακα CE, υπολογίζουμε τις ευκλείδειες αποστάσεις μεταξύ όλων των νέων χαρακτηριστικών και όλων των k-means κέντρων. Έτσι, κάθε συστάδα με κέντρο το οποίο απέχει μικρότερη ευκλείδεια απόσταση από ένα χαρακτηριστικό, σχετίζεται με αυτό, εκτός εάν αυτή η απόσταση είναι μεγαλύτερη από το διπλάσιο της ακτίνας του (χρήση του πίνακα R), όπου σε αυτή την περίπτωση το χαρακτηριστικό διαγράφεται. Εικόνα 5.6: Συσχέτιση κάθε χαρακτηριστικού με τα k-means κέντρα του συνόλου εκπαίδευσης. 58

59 5.5. SVM Classification και εμφάνιση αποτελέσματος Μπορούμε πλέον, πολύ απλά, ακολουθώντας την ίδια διαδικασία με τη δημιουργία του συνόλου ανυσμάτων του S να δημιουργήσουμε το άνυσμα χαρακτηριστικών για την εικόνα προς ταξινομήση. Πολύ σημαντικό είναι να γίνει χρήση των όρων κλιμάκωσης του S. Σε αντίθετη περίπτωση το αποτέλεσμα δεν θα είναι το επιθυμητό. Με την ολοκλήρωση της διαδικασίας SVM classification, θα έχουμε σαν αποτέλεσμα μία ετικέτα (1, -1). Σε περίπτωση δύο κλάσεων, C=2, η ταξινόμηση της εικόνας θεωρείται μια απλή διαδικασία, θεωρώντας ότι η εικόνα ανήκει στην κλάση 1 αν η ετικέτα έχει την τιμή «1» και στην κλάση 2 αν έχει την τιμή «-1». Κάνοντας όμως χρήση περισσότερων κλάσεων τα πράγματα περιπλέκονται. Όπως γνωρίζουμε, με την μέθοδο «μίας εναντίον μίας» η απόφαση ταξινόμησης λαμβάνεται με βάση την πλειοψηφία. Έτσι, εξετάζοντας έναν έναν τους!(c-1) δυαδικούς ταξινομητές και δίνοντας έναν πρόσθετο βαθμό σε κάθε νικήτρια κλάση, είναι ευνόητο ότι η εικόνα θα ταξινομηθεί στην κλάση με τους περισσότερους βαθμούς. Σε περίπτωση ισοβαθμίας δύο κλάσεων, η απόφαση ταξινόμησης εξαρτάται από την απόφαση του μεταξύ τους ταξινομητή Εφαρμογή αλγορίθμου και αποτελέσματα Στην εφαρμογή του αλγορίθμου χρησιμοποιήθηκαν 6 κλάσεις εικόνων. Οι κλάσεις αυτές είναι: Βουνό Κοραλλιογενής ύφαλος Κύμα Πόλη Σπήλαιο Φωτιά Για λόγους μεγαλύτερης ταχύτητας και λιγότερης σπατάλης υπολογιστικής ισχύς, όλες οι εικόνες μετατράπηκαν σε μέγεθος 256x144, με χρήση της κυβικής παρεμβολής. 59

60 Το σύνολο εκπαίδευσης αποτελούνταν από 600 εικόνες, 100 για κάθε κλάση. Από αυτό συνολικά εξήχθησαν SIFT kp. Στον παρακάτω πίνακα βλέπουμε το σύνολο εκπαίδευσης μαζί με τα SIFT kp που εξήχθησαν ανά κλάση. Πίνακας 5.1: Το σύνολο εκπαίδευσης Πλήθος εικόνων Πλήθος SIFT kp SIFT kp/εικόνα Βουνό Κοραλλιογενής Κύμα Πόλη Σπήλαιο Φωτιά Σύνολο ύφαλος ,3 406,3 62,5 211,6 178,9 126,4 197,6 Σύμφωνα με την σχέση (5.6), με την χρήση του κανόνα του αντίχειρα, για τον καθορισμό των k-means συστάδων θα έχουμε Οπότε θα έχουμε Κ=243 συστάδες. Έτσι, το σύνολο ανυσμάτων εκπαίδευσης θα αποτελείται από 600 ανύσματα των 243 στοιχείων το κάθε ένα. Αρχικά, η εκπαίδευση του συστήματος έγινε με χρήση του γκαουσιανού πυρήνα και με τιμές σταθεράς χαλαρού περιθωρίου τις C=10, 100, Για την τιμή της παραμέτρου γ, επιλέχθηκε η προεπιλεγμένη, δηλαδή γ=1/κ. Οπότε γ=1/243= Για τον έλεγχο της μεθόδου χρησιμοποιήθηκαν 180 εικόνες, 30 ανά κλάση. Στους παρακάτω πίνακες βλέπουμε την επιτυχία ταξινόμησης αρχικά των δεδομένων του συνόλου εκπαίδευσης και έπειτα των καινούριων δεδομένων. Πίνακας 5.2: Αποτελέσματα γκαουσιανου πυρήνα για το σύνολο εκπαίδευσης με C=10 Βουνό Κοραλλιογενής Κύμα Πόλη Σπήλαιο Φωτιά Σύνολο ύφαλος Πλήθος εικόνων Ποσοστό επιτυχίας 64% 90% 99% 61% 43% 17% 62,3% 60

61 Πίνακας 5.3: Αποτελέσματα γκαουσιανού πυρήνα για τις νέες εικόνες με C=10 Βουνό Κοραλλιογενής Κύμα Πόλη Σπήλαιο Φωτιά Σύνολο ύφαλος Πλήθος εικόνων Ποσοστό επιτυχίας 53,3% 86,6% 100% 60% 43,3% 6,6% 58,3% Πίνακας 5.4: Αποτελέσματα γκαουσιανου πυρήνα για το σύνολο εκπαίδευσης με C=100 Βουνό Κοραλλιογενής Κύμα Πόλη Σπήλαιο Φωτιά Σύνολο ύφαλος Πλήθος εικόνων Ποσοστό επιτυχίας 80% 99% 99% 85% 84% 86% 88,9% 5.5: Αποτελέσματα γκαουσιανού πυρήνα για τις νέες εικόνες με C=100 Βουνό Κοραλλιογενής Κύμα Πόλη Σπήλαιο Φωτιά Σύνολο ύφαλος Πλήθος εικόνων Ποσοστό επιτυχίας 66,6% 96,6% 96,6% 96,6% 90% 86,6% 88,9% 5.6: Αποτελέσματα γκαουσιανου πυρήνα για το σύνολο εκπαίδευσης με C=1000 Βουνό Κοραλλιογενής Κύμα Πόλη Σπήλαιο Φωτιά Σύνολο ύφαλος Πλήθος εικόνων Ποσοστό επιτυχίας 98% 100% 100% 94% 99% 99% 98,3% 61

62 5.7: Αποτελέσματα γκαουσιανού πυρήνα για τις νέες εικόνες με C=1000 Βουνό Κοραλλιογενής Κύμα Πόλη Σπήλαιο Φωτιά Σύνολο ύφαλος Πλήθος εικόνων Ποσοστό επιτυχίας 70% 96,6% 93,3% 93,3% 83,3% 90% 87,8% C=10 C=100 C=1000 training set testing set Εικόνα 5.7: Σύγκριση αποτελεσμάτων γκαουσιανού πυρήνα σε διάφορες τιμές της σταθεράς χαλαρού περιθωρίου, έχοντας σταθερή την παράμετρο γ. Όπως αναλύσαμε και στην ενότητα 4, για μια μικρή τιμή της C, ο ταξινομητής προσπαθεί να βρει το υπερεπίπεδο με το μεγαλύτερο περιθώριο, αδιαφορώντας ως ένα βαθμό για λάθη ταξινόμησης, ενώ για μια μεγάλη τιμή της C, κύριο μέλημα του ταξινομητή, είναι η εύρεση του υπερεπιπέδου με τα λιγότερα λάθη. Αυτό ισχύει και στην περίπτωσή μας όπως φαίνεται στο παραπάνω σχήμα (Εικόνα 5.5). Βέβαια, αυτό δεν σημαίνει ότι ο ταξινομητής με τα λιγότερα λάθη θα είναι και ο πιο αποτελεσματικός. Έτσι, παρατηρούμε ότι ενώ για C=1000 έχουμε καλύτερα αποτελέσματα όσον αφορά το σύνολο εκπαίδευσης, για νέες εικόνες θεωρείται πιο αποτελεσματικός ο ταξινομητής με C=

63 Στη συνέχεια εκπαιδεύσαμε το σύστημά μας με χρήση του γραμμικού πυρήνα και με τιμή σταθεράς χαλαρού περιθωρίου C=100 έχοντας τα παρακάτω αποτελέσματα: Πίνακας 5.8: Αποτελέσματα γραμμικού πυρήνα για το σύνολο εκπαίδευσης Βουνό Κοραλλιογενής Κύμα Πόλη Σπήλαιο Φωτιά Σύνολο ύφαλος Πλήθος εικόνων Ποσοστό επιτυχίας 74% 98% 96% 82% 79% 70% 83,2% Πίνακας 5.9: Αποτελέσματα γραμμικού πυρήνα για τις νέες εικόνες Βουνό Κοραλλιογενής Κύμα Πόλη Σπήλαιο Φωτιά Σύνολο ύφαλος Πλήθος εικόνων Ποσοστό επιτυχίας 73,3% 100% 100% 90% 80% 76,6% 86,6% training set testing set Gaussian Linear Εικόνα 5.8: Σύγκριση γκαουσιανού και γραμμικού πυρήνα για C=

64 6. Συμπεράσματα Με βάση τα αποτελέσματα της προηγούμενης ενότητας καταλήγουμε στο συμπέρασμα ότι το σύστημα που αναπτύξαμε είναι αρκετά αποτελεσματικό. Τα ισχυρά χαρακτηριστικά που εξάγονται από τον αλγόριθμο SIFT καθώς και η χρήση πυρήνων από τα SVMs, βοηθούν πολύ προς αυτή τη κατεύθυνση. Ιδιαίτερα η δυνατότητα του SIFT να εξάγει από τις εικόνες χαρακτηριστικά αμετάβλητα σε περιστροφή, κλίμακα και φωτισμό, θεωρήθηκε πολύ σημαντική, καθώς χρησιμοποιήθηκαν εικόνες κάτω από διαφορετικές συνθήκες. Αντίθετα με την αποτελεσματικότητα της μεθόδου, δεν ισχύει το ίδιο και για την ταχύτητα του. Ο SIFT θεωρείται ένας πολύ χρονοβόρος αλγόριθμος και θεωρήθηκε αναγκαίο να χρησιμοποιήσουμε εικόνες σχετικά μικρού μεγέθους, έτσι ώστε να παρουσιάσουμε αποτελέσματα με χρήση μεγάλου πλήθους εικόνων. Ο χρόνος που χρειάστηκε για την εξαγωγή των χαρακτηριστικών του συνόλου του training set ήταν περίπου 46 λεπτά, με μέσο όρο 4,61 δευτερόλεπτα/εικόνα (Η δοκιμή του αλγορίθμου πραγματοποιήθηκε σε ένα σύστημα Intel Core 2 Duo μνήμης 2 GB). Επίσης, ενώ η χρήση της μεθόδου με λίγες k-means συστάδες δεν μας δημιουργεί ιδιαίτερο πρόβλημα, σε περίπτωση χρήσης πολλών συστάδων, η ταχύτητα μειώνεται δραματικά, τόσο κατά την ίδια την εφαρμογή του k-means όσο και κατά την διάρκεια ελέγχου της testing εικόνας, όπου υπολογίζονται οι αποστάσεις κάθε νέου SIFT kp με κάθε κέντρο συστάδας. Έτσι, για την ολοκλήρωση του k-means αλγόριθμου με χρήση 243 συστάδων χρειάστηκαν περίπου 24 λεπτά, ενώ για την ταξινόμηση κάθε νέας εικόνας χρειάστηκαν κατά μέσο όρο 103 δευτερόλεπτα/εικόνα. Βέβαια, με την χρήση της μεθόδου σε όλο και ταχύτερους ηλεκτρονικούς υπολογιστές, το θέμα της ταχύτητας δεν θα είναι τόσο εμφανές και δεν θα μας απασχολεί ιδιαίτερα. Σε αυτή την περίπτωση θα έχουμε την δυνατότητα χρήσης περισσότερων κλάσεων εικόνων, χρήσης εικόνων με μεγαλύτερο μέγεθος για περισσότερα SIFT kp και χρήσης περισσοτέρων εικόνων ανά κλάση. Όσον αφορά τον αλγόριθμο SVM, ενώ θεωρείται ένας από τους πιο αποτελεσματικούς ταξινομητές, σαν μειονέκτημα θα μπορούσαμε να πούμε ότι για την εμφάνιση βέλτιστων αποτελεσμάτων θα πρέπει να βρεθούν οι βέλτιστες τιμές των παραμέτρων κάθε πυρήνα που χρησιμοποιείται. Αυτό γίνεται γιατί παρατηρείται μεγάλη απόκλιση στα αποτελέσματα κάνοντας χρήση διαφορετικών παραμέτρων. Όπως αναφέρεται αναλυτικά στην ενότητα 4 οι βέλτιστες τιμές των παραμέτρων μπορούν να βρεθούν με χρήση της cross-validation, η οποία θεωρείται και αυτή μια χρονοβόρα διαδικασία. 64

65 7. Βιβλιογραφία [awg] [BGV] [BHW] [BK] [BrLo] [bsd] [CC] [CM] [cocv] B. E. Boser, I. M. Guyon, and V. N. Vapnik. A training algorithm for optimal margin classifiers. In D. Haussler, editor, 5th Annual ACM Workshop on COLT, pages 144{152, Pittsburgh, PA, ACM Press. Asa Ben-Hur, Jason Weston, A User s Guide to Support Vector Machines. Gary Bradski and Adrian Kaehler, Learning OpenCV: Computer Vision with the OpenCV Library, O Reilly Press, ISBN: , Brown, M. and Lowe, D.G Invariant features from interest point groups. In British Machine Vision Conference, Cardiff, Wales, pp Chih-Chung Chang and Chih-Jen Lin, LIBSVM : a library for support vector machines. ACM Transactions on Intelligent Systems and Technology, 2:27:1--27:27, Software available at Christof Monz, Machine Learning for Data Mining, Week 6: Clustering, Queen Mary, University of London. [CoVa] C. Cortes, V. N. Vapnik "Support-Vector Networks", Machine Learning, 20, [cvvs] [CWL] [DJLW] [DL] [DLb] [dnc] [dog] [dtr] [ev] [fbsd] [gf] [Gw] C.Y.Chang, H.Y.Wang, C.F.Li. Semantic analysis of real world images using support vectormachine. Expert systems with application : An international journal, 36(7): , R.Datta, D.Joshi, J.Li, J.Z.Wang. Image Retrieval: Ideas, Inuences, and Trends of the New Age. ACM Transactions on Computing Surveys, 40(2), Lowe, David G. (1999). "Object recognition from local scale-invariant features". Proceedings of the International Conference on Computer Vision. 2. pp DOI: /ICCV Lowe, David G. (2004). Distinctive Image Features from Scale-Invariant Keypoints, Computer Science Department, University of British Columbia, Vancouver, B.C., Canada, lowe@cs.ubc.ca [HaSt] [hes] Harris, C. and Stephens, M A combined corner and edge detector. In Fourth Alvey Vision Conference, Manchester, UK, pp [HS] Steinhaus, H. (1957). "Sur la division des corps matériels en parties" (in French). Bull. Acad. Polon. Sci. 4 (12): MR Zbl [htbs] [isio] [Ka] [kmca] [kmk] [kmw] W. Karush (1939). Minima of Functions of Several Variables with Inequalities as Side Constraints, M.Sc. Dissertation. Dept. of Mathematics, Univ. of Chicago, Chicago, Illinois [Koe] Koenderink, J.J The structure of images. Biological Cybernetics, 50: [KuTu] H.W. Kunh, A. W. Tucker (1951). Nonlinear programming, Proceedings of 2nd Berkeley Symposium. Berkeley: University of California Press. pp

66 [KZB] [lag] M. L. Kherfi, D. Ziou, and A. Benard. Image retrieval from the World Wide Web: Issues, techniques and systems. ACM Computing Surveys, 36(1):35-67, [Lin] Lindeberg, T Scale-space theory: A basic tool for analysing structures at different scales. Journal of Applied Statistics, 21(2): [McQ] MacQueen, J. B. (1967). "Some Methods for classification and Analysis of Multivariate Observations". 1. Proceedings of 5th Berkeley Symposium on Mathematical Statistics and Probability. University of California Press. pp MR Zbl Retrieved [MPC] [MT] Krystian Mikolajczyk, Tinne Tuytelaars, Local Image Features, Springer-Verlag Berlin Heidelberg [NaId] [ne] [OCV] Najlae Idrissi. Bridging the Semantic Gap for Texture-based Image Retrieval and Navigation, Journal Of Multimedia, 4(5): , October [ocvb] [od] [p21] [RH] [rioh] [SL] Sunu Wibirama, Installation and Configuration OpenCV 1.1 on Borland C++ Builder 6.0, Hamamoto Laboratory, Department of Information Media Technology, School of Information Sience and Technology, Tokai University, JAPAN Y. Rui and T. S. Huang, Image Retrieval: Current Techniques, Promising, Directions and Open Issues, Journal of Visual Communication and Image Representation, Vol. 10, No. 4, April Lloyd, S. P. (1957). "Least square quantization in PCM". Bell Telephone Laboratories Paper. Published in journal much later: Lloyd., S. P. (1982). "Least squares quantization in PCM". IEEE Transactions on Information Theory 28 (2): DOI: /TIT Retrieved [SS] B. Schölkopf and A. Smola. Learning with Kernels. MIT Press, Cambridge, MA, [STC] J. Shawe-Taylor and N. Cristianini. Kernel Methods for Pattern Analysis. Cambridge UP, Cambridge, UK, [STV] [svmw] [SWGJ] [Tay] B. Schölkopf, K. Tsuda, and J.P. Vert, editors. Kernel Methods in Computational Biology. MIT Press series on Computational Molecular Biology. MIT Press, A. W. M. Smeulders, M. Worring, S. Santini, A. Gupta, and R. Jain. Content-based image retrieval at the end of the early years. In IEEE Transactions on Pattern Analysis and Machine Intelligence, 22(12): , December [TK] Theodoridis, Sergios and Koutroumbas, Konstantinos, "Pattern Recognition", 4th Edition, Academic Press, 2009, ISBN [Utk] [Va] [WCJ] V. N. Vapnik The nature of statistical learning theory, 1995 Springer-Verlag New York inc. Hsu, Chih-Wei; Chang, Chih-Chung; and Lin, Chih-Jen (2003). A Practical Guide to Support Vector Classification (Technical report). Department of Computer Science and Information Engineering, National Taiwan University. [Wit] [WMI] Witkin, A Scale space filtering. Proc. Int. Joint Conf. Artificial Intell., held at Karsruhe, West Germany,1983, published by Morgan-Kaufmann, Palo Alto, California. Hui Hui Wang, Dzulkifli Mohamad & N.A. Ismail, Semantic Gap in CBIR: Automatic Objects Spatial Relationships Semantic Extraction and Representation, International Journal Of Image Processing (IJIP), Volume (4): Issue (3). [YDGW] Ying Liu, Dengsheng Zhang, Guojun Lu, Wei-Ying M. A survey of content-based image retrieval with high-level semantics. Pattern Recognition, 40(1): , [YMT] YU MENG and Dr. Bernard Tiddeman(supervisor), Implementing the Scale Invariant Feature Transform(SIFT) Method, Department of Computer Science, University of St. Andrews, yumeng@dcs.st-and.ac.uk [ZC] Cha Zhang and Tsuhan Chen, From low level features to high level semantics, Department of Electrical and Computer Engineering Carnegie Mellon University Pittsburgh, Pennsylvania, USA. 66

67 8. Παράρτημα OpenCV Η OpenCV είναι μία βιβλιοθήκη ανοιχτού κώδικα για αλγόριθμους υπολογιστικής όρασης που αναπτύχθηκε από την Intel και σήμερα υποστηρίζεται από την εταιρία ρομποτικής Willow Garage * [OCV]. Αναπτύχθηκε με χρήση των γλωσσών προγραμματισμού C και C++ και είναι ανεξάρτητη πλατφόρμας, ικανή να τρέξει στα λειτουργικά συστήματα Linux, Windows και Mac OS X. Επίσης, αξίζει να σημειωθεί ότι η OpenCV μπορεί να επωφεληθεί από τα πλεονεκτήματα των επεξεργαστών πολλαπλών πυρήνων [OCV][BK]. Η OpenCV σχεδιάστηκε με σκοπό την υπολογιστική αποδοτικότητα ιδιαίτερα σε εφαρμογές πραγματικού χρόνου. Ένας από τους στόχους της OpenCV είναι να παρέχει μια απλή στην χρήση υποδομή υπολογιστικής όρασης, η οποία βοηθά τους χρήστες να δημιουργούν γρήγορα, αρκετά εξελιγμένες εφαρμογές υπολογιστικής όρασης. Η OpenCV είναι διαθέσιμη κάτω από την ελεύθερη άδεια BSD **, πράγμα που την καθιστά προσβάσιμη τόσο για ακαδημαϊκή όσο και για επαγγελματική χρήση. Η βιβλιοθήκη έχει πάνω από 2500 αλγορίθμους. Χρησιμοποιείται σε όλο τον κόσμο, την έχουν κατεβάσει πάνω από 3,5 εκατομμύρια φορές και έχει πάνω από ανθρώπους στην ομάδα χρηστών. Είναι διαθέσιμη στην ηλεκτρονική διεύθυνση [cocv][bk] Από την πρώτη της έκδοση τον Ιανουάριο του 1999, η OpenCV έχει χρησιμοποιηθεί σε πολλές εφαρμογές, προϊόντα και ερευνητικές προσπάθειες. Αυτές οι εφαρμογές περιλαμβάνουν: ένωση εικόνων σε δορυφορικούς και διαδικτυακούς χάρτες, μείωση θορύβου ιατρικών εικόνων, ανάλυση αντικειμένου, συστήματα ασφάλειας και αυτόματης παρακολούθησης, συστήματα εποπτείας, στρατιωτικές εφαρμογές και μη επανδρωμένα εναέρια, επίγεια και υποβρύχια οχήματα. [BK] * Η Willow Garage ( είναι μια εταιρία ρομποτικής έρευνας αφιερωμένη στην ανάπτυξη υλικού και λογισμικού ανοιχτού κώδικα για προσωπικής χρήσης εφαρμογές ρομποτικής [awg]. Ιδρύθηκε στα τέλη του 2006 από τον Scott Hassan, πρώην εργαζόμενο της Google, ο οποίος βοήθησε σημαντικά στην ανάπτυξη της τεχνολογίας της Google [rioh][lag]. Πρόεδρος και διευθύνων σύμβουλος της Willow Garage είναι ο Steve Cousins. Η εταιρία βρίσκεται στο Menlo Park της Καλιφόρνια [MPC]. [Gw] ** Η άδεια BSD είναι μέλος των αδειών ελεύθερου λογισμικού. Η αρχική άδεια χρησιμοποιήθηκε για την ανάπτυξη του λειτουργικού συστήματος «Berkeley Software Distribution» (BSD) από το πανεπιστήμιο της Καλιφόρνια, Berkeley [bsd]. Οποιοδήποτε κομμάτι BSD κώδικα μπορεί να πωληθεί ή να ενσωματωθεί σε εμπορικά προϊόντα, χωρίς κανένα περιορισμό ή απαίτηση για διαθεσιμότητα του κώδικα ή κάποια άλλη προϋπόθεση σχετικά με τη μελλοντική συμπεριφορά του χρήστη [fbsd]. 67

68 Δομή και περιεχόμενο της OpenCV Η OpenCV αποτελείται από τα παρακάτω πέντε κύρια μέρη: CV Περιέχει τους αλγόριθμους της βασικής επεξεργασίας εικόνας και υψηλού επιπέδου υπολογιστικής όρασης. ML Είναι η βιβλιοθήκη μηχανικής μάθησης και περιλαμβάνει πολλούς ταξινομητές και εργαλεία ταξινόμησης. HighGUI Περιέχει ρουτίνες εισόδου-εξόδου και συναρτήσεις για την αποθήκευση και φόρτωση βίντεο και εικόνων. CXCore Περιέχει τις βασικές δομές δεδομένων. CvAux Περιέχει αλγορίθμους που δεν μπορούν να ανήκουν στα υπόλοιπα μέρη και πειραματικούς αλγόριθμους. [BK] Χρήση SIFT ρουτινών μέσω της OpenCV Πριν αναφερθούμε στην χρήση του αλγορίθμου SIFT, ας δούμε πρώτα κάποιες βασικές συναρτήσεις και δομές της OpenCV: Δομή δεδομένων IplImage Περιέχει σημαντικα δεδομένα της εικόνας. Παρακάτω βλέπουμε αναλυτικά την δομή της IplImage: typedef struct _IplImage { int nsize; int ID; int nchannels; int alphachannel; int depth; char colormodel[4]; char channelseq[4]; int dataorder; int origin; int align; int width; int height; 68

69 struct _IplROI *roi; struct _IplImage *maskroi; void *imageid; struct _IplTileInfo *tileinfo; int imagesize; char *imagedata; int widthstep; int BorderMode[4]; int BorderConst[4]; char *imagedataorigin; } IplImage; Όπως βλέπουμε η IplImage είναι μια δομή με πολλά δεδομένα. Πολλά όμως από αυτά δεν χρησιμοποιούνται πλέον από την OpenCV, ενώ τα πιο σημαντικά είναι τα εξής: nsize: μέγεθος σε bytes του αντικειμένου IplImage. nchannels: Ποσό καναλιών χρώματος (1 για grayscale, 3 για RGB κ.τ.λ.). depth: Βάθος χρώματος εικονοστοιχείου σε bits. dataorder: 0 = εναλλασώμενα κανάλια χρώματος (Για παράδειγμα, η συνήθης διάταξη μιας έγχρωμης εικόνας είναι : b 00 g 00 r 00 b 10 g 10 r 10 ). 1 = διαχωρισμένα κανάλια χρώματος. origin: αρχικό pixel εικόνας. 0 = επάνω αριστερά. 1 = κάτω αριστερά. width: μήκος εικόνας σε pixels. height: ύψος εικόνας σε pixels. IplROI: περιοχή ενδιαφέροντος. Αν είναι NULL επιλέγεται ολόκληρη η εικόνα. Σε αντίθετη περίπτωση επιλέγεται μόνο η περιοχή που θέλουμε χρησιμοποιώντας τις παραμέτρους xoffset, yoffset, width και height της IplROI, όπως επίσης και το κανάλι χρώματος που επιθυμούμε με χρήση της παραμέτρου coi. imagesize: μέγεθος εικόνας σε bytes. imagedata: δείκτης στα δεδομένα της εικόνας. widthstep: μέγεθος μίας γραμμής της εικόνας σε bytes. imagedataorigin: δείκτης στο αρχικό pixel της εικόνας. Απαραίτητο για ανακατανομή (dellocation) εικόνας. Με τον όρο ανακατανομή εννοούμε την διαδικασία ελευθέρωσης ενός μπλοκ δεδομένων από την μνήμη με σκοπό τη χρησιμοποίησή του από κάποιο άλλο μέσο. IplImage* img = cvloadimage(image); Αυτή η γραμμή φορτώνει την εικόνα που βρίσκεται μέσα στις παρενθέσεις. Η συνάρτηση cvloadimage() είναι μια υψηλού επιπέδου ρουτίνα που καθορίζει τον τύπο αρχείου (file format) που θα φορτωθεί με βάση το όνομα του αρχείου. Μπορεί να διαβάσει μία μεγάλη ποικιλία τύπων εικόνας, συμπεριλαμβανομένων των BMP, DIP, JPEG, JPE, PNG, PBM, PGM, PPM, SR, RAS και TIFF. Ακόμα, δεσμεύει αυτόματα την απαραίτητη μνήμη που χρειάζεται για την IplImage. 69

70 cvnamedwindow( Example1, CV_WINDOW_AUTOSIZE ); Η cvnamedwindow() είναι μια συνάρτηση η οποία ανοίγει ένα παράθυρο το οποίο μπορεί να περιέχει μια εικόνα. Αυτή η συνάρτηση, η οποία παρέχεται από την βιβλιοθήκη HIGHGUI, αποδίδει επίσης ένα όνομα στο παράθυρο (σε αυτή την περίπτωση, Example1 ). Το δεύτερο όρισμα της συνάρτησης καθορίζει τις ιδιότητες του παραθύρου. Μπορεί να οριστεί είτε ως 0 είτε ως CV_WINDOW_AUTOSIZE. Στην πρώτη περίπτωση, το μέγεθος του παραθύρου παραμένει το ίδιο ανεξάρτητα από το μέγεθος της εικόνας, η οποία κλιμακώνεται για να χωρέσει στο παράθυρο. Αντίθετα, στην τελευταία περίπτωση, το παράθυρο αλλάζει μέγεθος αυτόματα, έτσι ώστε να μπορέσει να δεχτεί το πραγματικό μέγεθος της εικόνας. cvshowimage( Example1, img ); Κάθε φορτωμένη εικόνα μπορεί να εμφανιστεί σε ένα υπάρχον παράθυρο με χρήση της συνάρτησης cvshowimage(). cvwaitkey(0); Η συνάρτηση cvwaitkey() καλεί την εφαρμογή να σταματήσει και να περιμένει για ένα πάτημα πλήκτρου. Αν δοθεί μια θετική τιμή ως όρισμα, η εφαρμογή θα περιμένει για αυτόν τον αριθμό των χιλιοστών του δευτερολέπτου και στην συνέχεια θα συνεχιστεί ακόμα και αν δεν πατηθεί κάποιο πλήκτρο. Αν το όρισμα έχει μηδενική ή αρνητική τιμή, η εφαρμογή θα περιμένει επ αόριστον για το πάτημα ενός πλήκτρου. cvreleaseimage( &img ); Εφόσον έχουμε χρησιμοποιήσει μια εικόνα και δεν την χρειαζόμαστε πλέον άλλο, μπορούμε με την χρήση της συνάρτησης cvreleaseimage() να ελευθερώσουμε την μνήμη που της εκχωρήθηκε. cvdestroywindow( Example1 ); Η συνάρτηση cvdestroywindow() θα κλείσει το παράθυρο και θα ελευθερώσει κάθε μνήμη που είναι σχετική με αυτό (image buffer κ.τ.λ.). [BK] Έχοντας κάνει μια απλή αναφορά στις πολύ βασικές συναρτήσεις της OpenCV, μπορούμε να προχωρήσουμε στην ανάλυση χρήσης των κλάσεων και συναρτήσεων του αλγόριθμου SIFT. Ο αλγόριθμος αποτελείται από τρεις κλάσεις, Keypoint, Descriptor και SIFT: Keypoint Η κλάση Keypoint κατέχει όλες τις πληροφορίες ενός keypoint όπως, συντεταγμένες, κλίμακα, μέγεθος και προσανατολισμό. 70

71 Descriptor Η κλάση Descriptor κατέχει τη θέση του keypoint και το διάνυσμα χαρκτηριστικών, fv (feature vector). SIFT Η κλάση SIFT αποτελεί την κύρια κλάση του αλγορίθμου. Ουσιαστικά όλες οι διεργασίες πραγματοποιούνται μέσω αυτής της κλάσης. Παρακάτω βλέπουμε τις πιο σημαντικές από τις συναρτήσεις τις: SIFT(IplImage* img, int octaves, int intervals); Συνάρτηση constructor η οποία μπορεί να δημιουργήσει αντικείμενο με στοιχεία την φορτωμένη εικόνα στην οποία θέλουμε να πραγματοποιηθεί ο αλγόριθμος, καθώς και το επιθυμητό πλήθος οκτάβων και εικόνων ακρότατων κάθε οκτάβας. Με πλήθος εικόνων ακρότατων ίσο με x, το πλήθος των DoG (Difference of Gaussian) εικόνων θα είναι ίσο με x+2 και το πλήθος των γκαουσιανών εικόνων θα είναι ίσο με x+3. SIFT(const char* filename, int octaves, int intervals); Συνάρτηση constructor η οποία μπορεί να δημιουργήσει αντικείμενο με στοιχεία το όνομα του αρχείου στο οποίο θέλουμε να πραγματοποιηθεί ο αλγόριθμος, καθώς και το επιθυμητό πλήθος οκτάβων και εικόνων ακρότατων κάθε οκτάβας. void DoSift(); Η συνάρτηση DoSift() πραγματοποιεί όλον τον SIFT αλγόριθμο (Scale-space extrema detection, Keypoint localization, Orientation assignment, Keypoint descriptor) για το αντικείμενο που δημιουργήθηκε. void ShowKeypoints(); Η συνάρτηση ShowKeypoints() εμφανίζει όλα τα keypoints που υπολογίστηκαν από τον αλγόριθμο. void ShowAbsSigma(); Η συνάρτηση ShowAbsSigma() μας δείχνει τις τυπικές αποκλίσεις, σ, που χρησιμοποιήθηκαν για όλες τις γκαουσιανές εικόνες. Τέλος, με την χρήση του vector m_keydescs, ο οποίος κατέχει τον descriptor κάθε keypoint, μπορούμε να αντλήσουμε πληροφορίες των διανυσμάτων χαρακτηριστικών που μας είναι απαραίτητες. Έτσι, η εντολή «sift->m_keydescs.size();» μας δίνει την πληροφορία για το πλήθος των keypoints της εικόνας και η εντολή «sift->m_keydescs[i].fv[j]» μας δείχνει το j-οστό στοιχείο του descriptor του i-οστού keypoint. [isio] 71

72 Εγκατάσταση OpenCV για χρήση με το Visual Studio 2008 Σε αυτό το τμήμα παρουσιάζεται ο οδηγός εγκατάστασης της OpenCV στο Visual Studio Αρχικά θα πρέπει να κατεβάσουμε τα αρχεία που είναι απαραίτητα για την εγκατάσταση του OpenCV. Έτσι κατεβάζουμε το αρχείο OpenCV win32-vs2008.exe που βρίσκεται στην σελίδα και το αρχείο cmake win32-x86.exe που βρίσκεται στην σελίδα Εγκαθιστούμε και τις δύο εφαρμογές προσέχοντας κατά την διάρκεια της εγκατάστασης να επιλέξουμε την ακόλουθη επιλογή, όπως φαίνεται στην παρακάτω εικόνα. Επιλέγουμε «Επόμενο >» και στην συνέχεια «Εγκατάσταση». 2. Στην συνέχεια κάνουμε τις κατάλληλες ρυθμίσεις για την εφαρμογή Cmake. 1) Ακολουθούμε την διαδρομή «Έναρξη Όλα τα προγράμματα CMake 2.8 CMake (cmake-gui)» και επιλέγουμε τις ρυθμίσεις όπως φαίνονται στην παρακάτω εικόνα. 72

73 2) Για την πρώτη επιλογή (Where is the source code:) επιλέγουμε την διαδρομή στην οποία βρίσκεται ο φάκελος OpenCV 2.1 πατώντας το κουμπί «Browse Source». 3) Στην επιλογή (where to build the binaries:) πληκτρολογούμε τον φάκελο μέσα στον οποίο θα δημιουργηθούν τα δυαδικά αρχεία που είναι απαραίτητα για την σωστή χρήση του OpenCV μέσω του Visual Studio. Στην περίπτωσή μας ο φάκελος αυτός είναι ο «vs2008». 4) Πατάμε το κουμπί Configure. Στην συνέχεια εμφανίζονται πολλές επιλογές όπως φαίνεται στην παρακάτω εικόνα. 73

74 5) Επιλέγουμε visual studio όπως φαίνεται και στην εικόνα και πατάμε το κουμπί finish. Στην συνέχεια εμφανίζεται στην οθόνη μας η παρακάτω εικόνα. 6) Τσεκάρουμε τα παρακάτω checkboxes: BUILD_EXAMPLES, BUILD_PACKAGE, BUILD_SHARED_LIBS, BUILD_TESTS, INSTALL_C_EXAMPLES. 7) Πατάμε το κουμπί Configure και το κόκκινο χρώμα εξαφανίζεται. 8) Πατάμε το κουμπί Generate για την ολοκλήρωση της διαδικασίας και κλείνουμε το cmake-gui. 3. Έπειτα κάνουμε τις ακόλουθες ενέργειες στο Visual Studio. 1) Ανοίγουμε το Visual Studio και στη συνέχεια ανοίγουμε το project «OpenCV» στον φάκελο όπου είχαμε δημιουργήσει τα δυαδικά αρχεία (σε περίπτωση προεπιλεγμένης εγκατάστασης η διαδρομή είναι η εξής «C:\OpenCV2.1\vs2008\ΟpenCV») όπως φαίνεται στην παρακάτω εικόνα. 74

75 2) Πατάμε το κουμπί «Άνοιγμα» για να δούμε τα αρχεία που σχετίζονται με την OpenCV στην αριστερή πλευρά, όπως φαίνεται στην παρακάτω εικόνα. Στην συνέχεια επιλέγουμε από το menu, «Build Build ALL_BUILD». Όπως φαίνεται και στην εικόνα η επιλογή μέσα στον κόκκινο κύκλο πρέπει να είναι Debug. 3) Μετά την εκτέλεση του βήματος 3.2, θα πρέπει να εμφανιστεί στο παράθυρο «Output», το μήνυμα που βλέπουμε στην εικόνα μέσα σε κόκκινο ορθογώνιο, έχοντας οπωσδήποτε 0 «failed». Αν ο αριθμός των «failed» είναι διάφορος του μηδενός, τότε σημαίνει ότι έχει γίνει κάποιο λάθος στις επιλογές του cmake. Σε αυτήν την περίπτωση 75

76 διαγράφουμε το φάκελο «vs2008» και επαναλαμβάνουμε τα βήματα από την αρχή. 4) Επαναλαμβάνουμε το βήμα 3.2 έχoντας επιλέξει Release αντί για Debug. Ελέγχουμε ξανά για πιθανά λάθη. 5) Έχοντας περάσει επιτυχημένα από τα προηγούμενα δύο βήματα, κλείνουμε το project αφήνοντας ανοιχτό όμως το παράθυρο του Solution. Έτσι, επιλέγουμε «File Close». 6) Επαληθεύουμε την ύπαρξη των αρχείων (cv210d.lib, cvaux210d.lib κ.τ.λ.) μέσα στον φάκελο «C:\OpenCV2.1\vs2008\lib\Debug» και των αρχείων (cv210.lib, cvaux210.lib κ.τ.λ.) μέσα στον φάκελο «C:\OpenCV2.1\vs2008\lib\Release». Αν δεν υπάρχουν τότε η διαδικασία Build δεν έγινε σωστά. 7) Προσθέτουμε τις διαδρομές «C:\OpenCV2.1\vs2008\bin\Debug; C:\OpenCV2.1\vs2008\bin\Release;» στην διαδρομή συστήματος, ακολουθώντας την διαδρομή «Υπολογιστής Ιδιότητες Ρυθμίσεις συστήματος για προχωρημένους Μεταβλητές περιβάλλοντος Path Επεξεργασία» και πατάμε το κουμπί ΟΚ όπως φαίνεται στην παρακάτω εικόνα. 8) Στο Visual Studio επιλέγουμε «Tools Options Projects and Solutions VC++ Directories», όπως φαίνεται στην παρακάτω 76

77 εικόνα. Για την επιλογή «Show directories for» επιλέγουμε «Include files» και προσθέτουμε το «C:\OpenCV2.1\include\opencv», χωρίς να πειράξουμε τα υπάρχοντα δεδομένα. 9) Έπειτα επιλέγουμε «Library files» και επιλέγουμε τους φακέλους «C:\OpenCV2.1\vs2008\lib\Debug» και «C:\OpenCV2.1\vs2008\lib\Release» όπως φαίνεται στην παρακάτω εικόνα. 10) Στην συνέχεια επαναλαμβάνουμε την διαδικασία επιλέγοντας «Source files», και συμπεριλαμβάνουμε τους εξής φακέλους: 77

78 C:\OpenCV2.1\vs2008\src, C:\OpenCV2.1\vs2008\src\cv\cv.dir\Debug, C:\OpenCV2.1\vs2008\src\cv\cv.dir\Release, C:\OpenCV2.1\vs2008\src\cvaux\cvaux.dir\Debug, C:\OpenCV2.1\vs2008\src\cvaux\cvaux.dir\Release, C:\OpenCV2.1\vs2008\src\cxcore\cxcore.dir\Debug, C:\OpenCV2.1\vs2008\src\cxcore\cxcore.dir\Release, C:\OpenCV2.1\vs2008\src\highgui\highgui.dir\Debug, C:\OpenCV2.1\vs2008\src\highgui\highgui.dir\Release, C:\OpenCV2.1\vs2008\src\ml\ml.dir\Debug, C:\OpenCV2.1\vs2008\src\ml\ml.dir\Release. 11) Είμαστε έτοιμοι πλέον να γράψουμε κώδικα για την δημιουργία μιας OpenCV εφαρμογής. Επιλέγουμε «File New Project» θα εμφανιστεί ένα παράθυρο στο οποίο επιλέγουμε «Empty Project», δίνουμε ένα όνομα στο project και πατάμε «OK». Στην συνέχεια επιλέγουμε το project, δεξί κλικ και «Add New Item C++ File (.cpp)», δίνουμε ένα όνομα στο αρχείο και πατάμε «Add». 78

79 79

80 12) Έπειτα μπορούμε να γράψουμε μια OpenCV εφαρμογή, όπως για παράδειγμα μια εφαρμογή η οποία μας επιτρέπει να φορτώσουμε οποιαδήποτε εικόνα από τον δίσκο. #include "highgui.h" int main (int argc,char** argv) { IplImage* img= cvloadimage(argv[1]); cvnamedwindow("e", CV_WINDOW_AUTOSIZE); cvshowimage("e",img); cvwaitkey(0); cvreleaseimage(&img); cvdestroywindow("e"); } 13) Αν τρέξουμε αυτόν τον κώδικα σίγουρα θα εμφανιστούν κάποια λάθη. Υπάρχει ένα τελευταίο βήμα που πρέπει να ακολουθήσουμε. Επιλέγουμε «Project Properties Configuration Properties Linker Input» αντιγράφουμε τα παρακάτω ονόματα αρχείων: και στο πεδίο «Additional Dependencies» cv210.lib cvaux210.lib highgui210.lib cxcore210.lib ml210.lib opencv_ffmpeg210.lib cxts210.lib και πατάμε «OK». Αυτό είναι το μόνο βήμα που είναι απαραίτητο για κάθε νέο OpenCV project. [cvvs] 80

81 Εγκατάσταση και ρύθμιση παραμέτρων της OpenCV για χρήση με τον Borland C++ Builder 6.0 Σε αυτό το τμήμα, θα αναλύσουμε τα βήματα που απαιτούνται για την εγκατάσταση και ρύθμιση παραμέτρων της OpenCV 1.1 για χρήση με τον Borland C++ Builder [ocvb]: 1. Αρχικά, θα χρειαστεί να κατεβάσουμε το αρχείο OpenCV_1.1pre1a.exe από την ηλεκτρονική διεύθυνση και να το εγκαταστήσουμε στον φάκελο C:\Program Files\OpenCV. 2. Η βιβλιοθήκη OpenCV 1.1 αναπτύχθηκε στο πλαίσιο της Microsoft Visual Studio πλατφόρμας. Επομένως, όλα τα *.lib αρχεία δημιουργήθηκαν για χρήση με τον μεταγλωττιστή Visual Studio. Για την χρήση του OpenCV 1.1 με τον Borland C++ Builder (BCB), όλα αυτά τα *.lib αρχεία θα πρέπει να μετατραπούν σε μορφή BCB. Αυτό μπορεί να γίνει με την χρήση ενός script με εντολές του Command Prompt (CMD). Έτσι, στον υποφάκελο \lib του φακέλου OpenCV δημιουργούμε ένα αρχείο.txt, μέσα στο οποίο γράφουμε τις παρακάτω εντολές: mkdir borland for %%F in (*.lib) do coff2omf %%F borland\%%f pause Η εντολή coff2omf επιτρέπει στους χρήστες του C++ Builder να συνδεθούν με αρχεία.libs της Microsoft ή τρίτων που χρησιμοποιούν την coff μορφή. Εφόσον αποθηκεύσουμε το αρχείο θα το μετατρέψουμε από.txt σε.bat (Batch File), έτσι ώστε να μετατραπεί σε ένα script με CMD εντολές. Μετά την εκτέλεση του script, στον υποφάκελο \borland του φακέλου \lib θα βρίσκονται τα νέα.lib αρχεία μορφής BCB. 81

82 Σε περίπτωση που υπάρξουν προβλήματα δημιουργίας των νέων.lib αρχείων, θα χρειαστεί να αντιγραφεί ο υποφάκελος \lib στην επιφάνεια εργασίας και να τρέξει εκ νέου το script. Στην συνέχεια, θα χρειαστεί να μετατρέψουμε και τα.dll αρχεία του υποφακέλου \bin, σε.lib αρχεία συμβατά με την Borland. Αυτό μπορεί να γίνει με το implib, ένα εργαλείο που παρέχεται με τον C++ Builder. Έτσι μέσω της γραμμής εντολών (CMD), πηγαίνουμε στην διεύθυνση C:\Program Files\OpenCV\bin και πληκτρολογούμε: implib -a cv_bcb6.lib cv110.dll implib -a cxcore_bcb6.lib cxcore110.dll implib -a cvaux_bcb6.lib cvaux110.dll implib -a highgui_bcb6.lib highgui110.dll implib -a ml_bcb6.lib ml110.dll Έπειτα αντιγράφουμε τα παραγόμενα.lib αρχεία στον φάκελο \lib\borland. Τα αρχεία αυτού του φακέλου (φαίνονται στην παρακάτω εικόνα) θα πρέπει να συμπεριλαμβάνονται σε κάθε νέο OpenCV project. 82

83 3. Στην συνέχεια δημιουργούμε ένα νέο project στον Builder ακολουθώντας την διαδρομή «File -> New -> Other.. -> Console Wizard». Στο παράθυρο που θα ανοίξει θα πρέπει να μην είναι τσεκαρισμένα τα «Use VCL» και «Multi Threaded» όπως φαίνεται στην παρακάτω εικόνα. Έπειτα θα χρειαστεί να συμπεριλάβουμε στο project μας όλα τα.lib αρχεία που δημιουργήθηκαν στο προηγούμενο βήμα. Αυτό μπορεί να γίνει μέσω της διαδρομής «View -> Project Manager», όπου εκεί κάνουμε δεξί κλικ στο project και επιλέγουμε «Add». 83

84 Όπως προαναφέραμε αυτά τα.lib αρχεία θα πρέπει να έχουν αντιγραφεί στον φάκελο του project μας. Στην συνέχεια, θα χρειαστεί να καθορίσουμε τη διαδρομή σε όλα τα αρχεία κεφαλίδων που σχετίζονται με τις βιβλιοθήκες που συμπεριλάβαμε στο project. Για να γίνει αυτό, ανοίγουμε το παράθυρο «Include Path», ακολουθώντας τη διαδρομή «Project -> Options -> Directories/Conditionals -> Include Path» και προσθέτουμε τις παρακάτω διαδρομές: C:\Program Files\OpenCV1.1\cv\include C:\Program Files\OpenCV1.1\cvaux\include C:\Program Files\OpenCV1.1\cxcore\include C:\Program Files\OpenCV1.1\ml\include C:\Program Files\OpenCV1.1\otherlibs\_graphics\include C:\Program Files\OpenCV1.1\otherlibs\ffopencv C:\Program Files\OpenCV1.1\otherlibs\highgui 84

ΤΕΙ ΣΕΡΡΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ» ΔΕ. 11 ΙΟΥΝΙΟΥ 2012

ΤΕΙ ΣΕΡΡΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ» ΔΕ. 11 ΙΟΥΝΙΟΥ 2012 ΔΕ. ΙΟΥΝΙΟΥ Δίνονται τα εξής πρότυπα: [ ] [ ] [ ] [ ] Άσκηση η ( μονάδες) Χρησιμοποιώντας το κριτήριο της ομοιότητας να απορριφθεί ένα χαρακτηριστικό με βάσει το συντελεστή συσχέτισης. (γράψτε ποιο χαρακτηριστικό

Διαβάστε περισσότερα

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2 Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας Verson ΜΙΑ ΣΥΜΒΑΣΗ: Προκειμένου να καταστήσουμε πιο συμπαγή το συμβολισμό H : ορίζουμε Ετσι έχουμε *=[ ] an *=[ ]. H : * * ΣΗΜΕΙΩΣΗ: Στη συνέχεια εκτός αν ορίζεται

Διαβάστε περισσότερα

1. ΣΤΑΤΙΚΗ ΑΡΙΣΤΟΠΟΙΗΣΗ

1. ΣΤΑΤΙΚΗ ΑΡΙΣΤΟΠΟΙΗΣΗ . ΣΤΑΤΙΚΗ ΑΡΙΣΤΟΠΟΙΗΣΗ. Μέγιστα και Ελάχιστα Συναρτήσεων Χωρίς Περιορισμούς Συναρτήσεις μιας Μεταβλητής Εστω f ( x) είναι συνάρτηση μιας μόνο μεταβλητής. Εστω επίσης ότι x είναι ένα σημείο στο πεδίο ορισμού

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής ΤΕ Δυϊκότητα. Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα. τελευταία ενημέρωση: 1/12/2016

Τμήμα Μηχανικών Πληροφορικής ΤΕ Δυϊκότητα. Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα. τελευταία ενημέρωση: 1/12/2016 Τμήμα Μηχανικών Πληροφορικής ΤΕ 2016-2017 Δυϊκότητα Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 1/12/2016 1 Το δυϊκό πρόβλημα Για κάθε πρόβλημα Γραμμικού Προγραμματισμού υπάρχει

Διαβάστε περισσότερα

z = c 1 x 1 + c 2 x c n x n

z = c 1 x 1 + c 2 x c n x n Τεχνολογικό Εκπαιδευτικό Ιδρυμα Κεντρικής Μακεδονίας - Σέρρες Τμήμα Μηχανικών Πληροφορικής Γραμμικός Προγραμματισμός & Βελτιστοποίηση Δρ. Δημήτρης Βαρσάμης Καθηγητής Εφαρμογών Δρ. Δημήτρης Βαρσάμης Μάρτιος

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής ΤΕ Η μέθοδος Simplex. Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα. τελευταία ενημέρωση: 19/01/2017

Τμήμα Μηχανικών Πληροφορικής ΤΕ Η μέθοδος Simplex. Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα. τελευταία ενημέρωση: 19/01/2017 Τμήμα Μηχανικών Πληροφορικής ΤΕ 2016-2017 Η μέθοδος Simplex Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 19/01/2017 1 Πλεονεκτήματα Η μέθοδος Simplex Η μέθοδος Simplex είναι μια

Διαβάστε περισσότερα

Ενδεικτική πολυ-εργασία 1 - εφαρμογή στην υπολογιστική όραση

Ενδεικτική πολυ-εργασία 1 - εφαρμογή στην υπολογιστική όραση Ενδεικτική πολυ-εργασία 1 - εφαρμογή στην υπολογιστική όραση Εντοπισμός ενός σήματος STOP σε μια εικόνα. Περιγράψτε τη διαδικασία με την οποία μπορώ να εντοπίσω απλά σε μια εικόνα την ύπαρξη του παρακάτω

Διαβάστε περισσότερα

ΤΕΙ ΣΕΡΡΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ» ΠΑ. 7 ΣΕΠΤΕΜΒΡΙΟΥ 2012

ΤΕΙ ΣΕΡΡΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ» ΠΑ. 7 ΣΕΠΤΕΜΒΡΙΟΥ 2012 ΠΑ. 7 ΣΕΠΤΕΜΒΡΙΟΥ Δίνονται τα εξής πρότυπα: [ ] [ ] [ ] [ ] Άσκηση η (3 μονάδες) Χρησιμοποιώντας το κριτήριο της ομοιότητας να απορριφθεί ένα χαρακτηριστικό με βάση το συντελεστή συσχέτισης. (γράψτε ποιο

Διαβάστε περισσότερα

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Χιωτίδης Γεώργιος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER

4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER 4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER Σκοπός του κεφαλαίου είναι να παρουσιάσει μερικές εφαρμογές του Μετασχηματισμού Fourier (ΜF). Ειδικότερα στο κεφάλαιο αυτό θα περιγραφούν έμμεσοι τρόποι

Διαβάστε περισσότερα

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2 Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας Verson ΧΑΡΤΟΓΡΑΦΗΣΗ ΤΟΥ ΧΩΡΟΥ ΤΩΝ ΤΑΞΙΝΟΜΗΤΩΝ Ταξινομητές Ταξινομητές συναρτ. διάκρισης Ταξινομητές επιφανειών απόφ. Παραμετρικοί ταξινομητές Μη παραμετρικοί

Διαβάστε περισσότερα

D. Lowe, Distinctive Image Features from Scale-Invariant Keypoints, International Journal of Computer Vision, 60(2):91-110, 2004.

D. Lowe, Distinctive Image Features from Scale-Invariant Keypoints, International Journal of Computer Vision, 60(2):91-110, 2004. 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

Διαβάστε περισσότερα

3.7 Παραδείγματα Μεθόδου Simplex

3.7 Παραδείγματα Μεθόδου Simplex 3.7 Παραδείγματα Μεθόδου Simplex Παράδειγμα 1ο (Παράδειγμα 1ο - Κεφάλαιο 2ο - σελ. 10): Το πρόβλημα εκφράζεται από το μαθηματικό μοντέλο: max z = 600x T + 250x K + 750x Γ + 450x B 5x T + x K + 9x Γ + 12x

Διαβάστε περισσότερα

ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ ΘΕΩΡΙΑΣ ΤΗΣ ΜΕΘΟΔΟΥ SIMPLEX

ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ ΘΕΩΡΙΑΣ ΤΗΣ ΜΕΘΟΔΟΥ SIMPLEX ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ ΘΕΩΡΙΑΣ ΤΗΣ ΜΕΘΟΔΟΥ SIMPLEX Θεμελιώδης αλγόριθμος επίλυσης προβλημάτων Γραμμικού Προγραμματισμού που κάνει χρήση της θεωρίας της Γραμμικής Άλγεβρας Προτάθηκε από το Dantzig (1947) και πλέον

Διαβάστε περισσότερα

Επιχειρησιακή Έρευνα I

Επιχειρησιακή Έρευνα I Επιχειρησιακή Έρευνα I Κωστής Μαμάσης Παρασκευή 09:00 12:00 Σημειώσεις των Α. Platis, K. Mamasis Περιεχόμενα 1. Εισαγωγή 2. Γραμμικός Προγραμματισμός 1. Μοντελοποίηση 2. Μέθοδος Simplex 1. Αλγόριθμός Simplex

Διαβάστε περισσότερα

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2 Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας Verson Μέθοδοι ελαχίστων τετραγώνων Least square methos Αν οι κλάσεις είναι γραμμικώς διαχωρίσιμες το perceptron θα δώσει σαν έξοδο ± Αν οι κλάσεις ΔΕΝ είναι

Διαβάστε περισσότερα

Τεχνικές Μείωσης Διαστάσεων. Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας

Τεχνικές Μείωσης Διαστάσεων. Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας Τεχνικές Μείωσης Διαστάσεων Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας 1 Εισαγωγή Το μεγαλύτερο μέρος των δεδομένων που καλούμαστε να επεξεργαστούμε είναι πολυδιάστατα.

Διαβάστε περισσότερα

4.3. Γραµµικοί ταξινοµητές

4.3. Γραµµικοί ταξινοµητές Γραµµικοί ταξινοµητές Γραµµικός ταξινοµητής είναι ένα σύστηµα ταξινόµησης που χρησιµοποιεί γραµµικές διακριτικές συναρτήσεις Οι ταξινοµητές αυτοί αναπαρίστανται συχνά µε οµάδες κόµβων εντός των οποίων

Διαβάστε περισσότερα

D. Lowe, Distinctive Image Features from Scale-Invariant Keypoints, International Journal of Computer Vision, 60(2):91-110, 2004.

D. Lowe, Distinctive Image Features from Scale-Invariant Keypoints, International Journal of Computer Vision, 60(2):91-110, 2004. D. Lowe, Distinctive Image Features from Scale-Invariant Keypoints, International Journal of Computer Vision, 60(2):91-110, 2004. Εισαγωγικά: SIFT~Harris Harris Detector: Δεν είναι ανεξάρτητος της κλίμακας

Διαβάστε περισσότερα

Γραμμικός Προγραμματισμός Μέθοδος Simplex

Γραμμικός Προγραμματισμός Μέθοδος Simplex ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Επιχειρησιακή Έρευνα Γραμμικός Προγραμματισμός Μέθοδος Simplex Η παρουσίαση προετοιμάστηκε από τον Ν.Α. Παναγιώτου Περιεχόμενα Παρουσίασης 1. Πρότυπη Μορφή ΓΠ 2. Πινακοποίηση

Διαβάστε περισσότερα

Ανάκτηση πολυμεσικού περιεχομένου

Ανάκτηση πολυμεσικού περιεχομένου Ανάκτηση πολυμεσικού περιεχομένου Ανίχνευση / αναγνώριση προσώπων Ανίχνευση / ανάγνωση κειμένου Ανίχνευση αντικειμένων Οπτικές λέξεις Δεικτοδότηση Σχέσεις ομοιότητας Κατηγοριοποίηση ειδών μουσικής Διάκριση

Διαβάστε περισσότερα

Η μέθοδος Simplex. Γεωργία Φουτσιτζή-Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα. Τμήμα Μηχανικών Πληροφορικής ΤΕ

Η μέθοδος Simplex. Γεωργία Φουτσιτζή-Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα. Τμήμα Μηχανικών Πληροφορικής ΤΕ Τμήμα Μηχανικών Πληροφορικής ΤΕ 2017-2018 Η μέθοδος Simplex Γεωργία Φουτσιτζή-Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 19/01/2017 1 Πλεονεκτήματα Η μέθοδος Simplex Η μέθοδος

Διαβάστε περισσότερα

Αναγνώριση Προτύπων Ι

Αναγνώριση Προτύπων Ι Αναγνώριση Προτύπων Ι Ενότητα 1: Μέθοδοι Αναγνώρισης Προτύπων Αν. Καθηγητής Δερματάς Ευάγγελος Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή

Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΜΜΥ 795: ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ Ακαδηµαϊκό έτος 2010-11 Χειµερινό Εξάµηνο Τελική εξέταση Τρίτη, 21 εκεµβρίου 2010,

Διαβάστε περισσότερα

Γραφική Λύση & Πρότυπη Μορφή Μαθηματικού Μοντέλου

Γραφική Λύση & Πρότυπη Μορφή Μαθηματικού Μοντέλου ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Επιχειρησιακή Έρευνα Γραφική Λύση & Πρότυπη Μορφή Μαθηματικού Μοντέλου Η παρουσίαση προετοιμάστηκε από τον Ν.Α. Παναγιώτου Περιεχόμενα Παρουσίασης 1. Προϋποθέσεις Εφαρμογής

Διαβάστε περισσότερα

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

Μέθοδοι μονοδιάστατης ελαχιστοποίησης Βασικές αρχές μεθόδων ελαχιστοποίησης Μέθοδοι μονοδιάστατης ελαχιστοποίησης Οι μέθοδοι ελαχιστοποίησης είναι επαναληπτικές. Ξεκινώντας από μια αρχική προσέγγιση του ελαχίστου (την συμβολίζουμε ) παράγουν

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Αναγνώριση Προτύπων Ι

Αναγνώριση Προτύπων Ι Αναγνώριση Προτύπων Ι Ενότητα 3: Στοχαστικά Συστήματα Αν. Καθηγητής Δερματάς Ευάγγελος Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

Η ΜΕΘΟΔΟΣ PCA (Principle Component Analysis)

Η ΜΕΘΟΔΟΣ PCA (Principle Component Analysis) Η ΜΕΘΟΔΟΣ PCA (Principle Component Analysis) Η μέθοδος PCA (Ανάλυση Κύριων Συνιστωσών), αποτελεί μία γραμμική μέθοδο συμπίεσης Δεδομένων η οποία συνίσταται από τον επαναπροσδιορισμό των συντεταγμένων ενός

Διαβάστε περισσότερα

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

Μέθοδοι μονοδιάστατης ελαχιστοποίησης Βασικές αρχές μεθόδων ελαχιστοποίησης Μέθοδοι μονοδιάστατης ελαχιστοποίησης Οι μέθοδοι ελαχιστοποίησης είναι επαναληπτικές. Ξεκινώντας από μια αρχική προσέγγιση του ελαχίστου (την συμβολίζουμε ) παράγουν

Διαβάστε περισσότερα

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 5 o Φροντιστήριο

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 5 o Φροντιστήριο Πρόβλημα ο Ασκήσεις Φροντιστηρίου 5 o Φροντιστήριο Δίνεται το παρακάτω σύνολο εκπαίδευσης: # Είσοδος Κατηγορία 0 0 0 Α 2 0 0 Α 0 Β 4 0 0 Α 5 0 Β 6 0 0 Α 7 0 Β 8 Β α) Στον παρακάτω κύβο τοποθετείστε τα

Διαβάστε περισσότερα

3 η ΕΝΟΤΗΤΑ ΜΗ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΕΝΟΣ ΚΡΙΤΗΡΙΟΥ

3 η ΕΝΟΤΗΤΑ ΜΗ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΕΝΟΣ ΚΡΙΤΗΡΙΟΥ ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΕΙΣΑΓΩΓΗ ΣΤΗN ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΣΥΣΤΗΜΑΤΩΝ 3 η ΕΝΟΤΗΤΑ ΜΗ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΕΝΟΣ ΚΡΙΤΗΡΙΟΥ Μ. Καρλαύτης Ν. Λαγαρός Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό

Διαβάστε περισσότερα

Μέθοδοι Μηχανών Μάθησης για Ευφυή Αναγνώριση και ιάγνωση Ιατρικών εδοµένων

Μέθοδοι Μηχανών Μάθησης για Ευφυή Αναγνώριση και ιάγνωση Ιατρικών εδοµένων Μέθοδοι Μηχανών Μάθησης για Ευφυή Αναγνώριση και ιάγνωση Ιατρικών εδοµένων Εισηγητής: ρ Ηλίας Ζαφειρόπουλος Εισαγωγή Ιατρικά δεδοµένα: Συλλογή Οργάνωση Αξιοποίηση Data Mining ιαχείριση εδοµένων Εκπαίδευση

Διαβάστε περισσότερα

Ομαδοποίηση ΙΙ (Clustering)

Ομαδοποίηση ΙΙ (Clustering) Ομαδοποίηση ΙΙ (Clustering) Πασχάλης Θρήσκος PhD Λάρισα 2016-2017 pthriskos@mnec.gr Αλγόριθμοι ομαδοποίησης Επίπεδοι αλγόριθμοι Αρχίζουμε με μια τυχαία ομαδοποίηση Βελτιώνουμε επαναληπτικά KMeans Ομαδοποίηση

Διαβάστε περισσότερα

Μετάδοση Πολυμεσικών Υπηρεσιών Ψηφιακή Τηλεόραση

Μετάδοση Πολυμεσικών Υπηρεσιών Ψηφιακή Τηλεόραση Χειμερινό Εξάμηνο 2013-2014 Μετάδοση Πολυμεσικών Υπηρεσιών Ψηφιακή Τηλεόραση 5 η Παρουσίαση : Ψηφιακή Επεξεργασία Εικόνας Διδάσκων: Γιάννης Ντόκας Σύνθεση Χρωμάτων Αφαιρετική Παραγωγή Χρώματος Χρωματικά

Διαβάστε περισσότερα

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Μη γραμμικός προγραμματισμός: μέθοδοι μονοδιάστατης ελαχιστοποίησης Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών ΤμήμαΠληροφορικής Διάλεξη 6 η /2017 Τι παρουσιάστηκε

Διαβάστε περισσότερα

Το μοντέλο Perceptron

Το μοντέλο Perceptron Το μοντέλο Perceptron Αποτελείται από έναν μόνο νευρώνα McCulloch-Pitts w j x x 1, x2,..., w x T 1 1 x 2 w 2 Σ u x n f(u) Άνυσμα Εισόδου s i x j x n w n -θ w w 1, w2,..., w n T Άνυσμα Βαρών 1 Το μοντέλο

Διαβάστε περισσότερα

ΠΑΡΟΥΣΙΑΣΗ ΣΤΑΤΙΣΤΙΚΩΝ ΔΕΔΟΜΕΝΩΝ

ΠΑΡΟΥΣΙΑΣΗ ΣΤΑΤΙΣΤΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ο Κεφάλαιο: Στατιστική ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΚΑΙ ΟΡΙΣΜΟΙ ΣΤΗ ΣΤΑΤΙΣΤΙΚΗ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Πληθυσμός: Λέγεται ένα σύνολο στοιχείων που θέλουμε να εξετάσουμε με ένα ή περισσότερα χαρακτηριστικά. Μεταβλητές X: Ονομάζονται

Διαβάστε περισσότερα

Κεφ. 7: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών

Κεφ. 7: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών Κεφ. 7: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών 7. Εισαγωγή (ορισμός προβλήματος, αριθμητική ολοκλήρωση ΣΔΕ, αντικατάσταση ΣΔΕ τάξης n με n εξισώσεις ης τάξης) 7. Μέθοδος Euler 7.3

Διαβάστε περισσότερα

Κεφ. 6Β: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών

Κεφ. 6Β: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών Κεφ. 6Β: Συνήθεις διαφορικές εξισώσεις (ΣΔΕ) - προβλήματα αρχικών τιμών. Εισαγωγή (ορισμός προβλήματος, αριθμητική ολοκλήρωση ΣΔΕ, αντικατάσταση ΣΔΕ τάξης n με n εξισώσεις ης τάξης). Μέθοδος Euler 3. Μέθοδοι

Διαβάστε περισσότερα

Β Γραφικές παραστάσεις - Πρώτο γράφημα Σχεδιάζοντας το μήκος της σανίδας συναρτήσει των φάσεων της σελήνης μπορείτε να δείτε αν υπάρχει κάποιος συσχετισμός μεταξύ των μεγεθών. Ο συνήθης τρόπος γραφικής

Διαβάστε περισσότερα

Οδηγίες σχεδίασης στο περιβάλλον Blender

Οδηγίες σχεδίασης στο περιβάλλον Blender Οδηγίες σχεδίασης στο περιβάλλον Blender Στον πραγματικό κόσμο, αντιλαμβανόμαστε τα αντικείμενα σε τρεις κατευθύνσεις ή διαστάσεις. Τυπικά λέμε ότι διαθέτουν ύψος, πλάτος και βάθος. Όταν θέλουμε να αναπαραστήσουμε

Διαβάστε περισσότερα

ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ

ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ ΜΕΡΟΣ ΙΙ ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ 36 ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ Πολλές από τις αποφάσεις

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 3ο Αναπαράσταση Αριθμών www.di.uoa.gr/~organosi 1 Δεκαδικό και Δυαδικό Δεκαδικό σύστημα 2 3 Δεκαδικό και Δυαδικό Δυαδικό Σύστημα

Διαβάστε περισσότερα

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της; 1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες (μορφές) της; Η δομή επανάληψης χρησιμοποιείται όταν μια σειρά εντολών πρέπει να εκτελεστεί σε ένα σύνολο περιπτώσεων, που έχουν κάτι

Διαβάστε περισσότερα

Πανεπιστήμιο Κύπρου Πολυτεχνική Σχολή

Πανεπιστήμιο Κύπρου Πολυτεχνική Σχολή Πανεπιστήμιο Κύπρου Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΜΜΥ 795: ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ Ακαδημαϊκό έτος 2010-11 Χειμερινό Εξάμηνο Practice final exam 1. Έστω ότι για

Διαβάστε περισσότερα

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Προβλήματα, αλγόριθμοι, ψευδοκώδικας Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι

Διαβάστε περισσότερα

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr I ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ i e ΜΕΡΟΣ Ι ΟΡΙΣΜΟΣ - ΒΑΣΙΚΕΣ ΠΡΑΞΕΙΣ Α Ορισμός Ο ορισμός του συνόλου των Μιγαδικών αριθμών (C) βασίζεται στις εξής παραδοχές: Υπάρχει ένας αριθμός i για τον οποίο ισχύει i Το σύνολο

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 3. Περιγραφή της Μεθόδου ΠΕΡΙΓΡΑΦΗ ΤΗΣ ΜΕΘΟΔΟΥ

ΚΕΦΑΛΑΙΟ 3. Περιγραφή της Μεθόδου ΠΕΡΙΓΡΑΦΗ ΤΗΣ ΜΕΘΟΔΟΥ ΚΕΦΑΛΑΙΟ 3 Περιγραφή της Μεθόδου Το αντικείμενο αυτής της εργασίας είναι η χρήση μιας μεθόδου προσέγγισης συναρτήσεων που έχει προταθεί από τον hen-ha huang και ονομάζεται Ασαφώς Σταθμισμένη Παλινδρόμηση

Διαβάστε περισσότερα

12. ΑΝΙΣΩΣΕΙΣ Α ΒΑΘΜΟΥ. είναι δύο παραστάσεις μιας μεταβλητής x πού παίρνει τιμές στο

12. ΑΝΙΣΩΣΕΙΣ Α ΒΑΘΜΟΥ. είναι δύο παραστάσεις μιας μεταβλητής x πού παίρνει τιμές στο ΓΕΝΙΚΑ ΠΕΡΙ ΑΝΙΣΩΣΕΩΝ Έστω f σύνολο Α, g Α ΒΑΘΜΟΥ είναι δύο παραστάσεις μιας μεταβλητής πού παίρνει τιμές στο Ανίσωση με έναν άγνωστο λέγεται κάθε σχέση της μορφής f f g g ή, η οποία αληθεύει για ορισμένες

Διαβάστε περισσότερα

Συνδυαστική Βελτιστοποίηση Εισαγωγή στον γραμμικό προγραμματισμό (ΓΠ)

Συνδυαστική Βελτιστοποίηση Εισαγωγή στον γραμμικό προγραμματισμό (ΓΠ) Εικονικές Παράμετροι Μέχρι στιγμής είδαμε την εφαρμογή της μεθόδου Simplex σε προβλήματα όπου το δεξιό μέλος ήταν θετικό. Δηλαδή όλοι οι περιορισμοί ήταν της μορφής: όπου Η παραδοχή ότι b 0 μας δίδει τη

Διαβάστε περισσότερα

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών Οι παρούσες σημειώσεις αποτελούν βοήθημα στο μάθημα Αριθμητικές Μέθοδοι του 5 ου εξαμήνου του ΤΜΜ ημήτρης Βαλουγεώργης Καθηγητής Εργαστήριο Φυσικών

Διαβάστε περισσότερα

Αριθμητική Ανάλυση και Εφαρμογές

Αριθμητική Ανάλυση και Εφαρμογές Αριθμητική Ανάλυση και Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 07-08 Αριθμητική Παραγώγιση Εισαγωγή Ορισμός 7. Αν y f x είναι μια συνάρτηση ορισμένη σε ένα διάστημα

Διαβάστε περισσότερα

Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο

Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο Σύνοψη Στο κεφάλαιο αυτό παρουσιάζεται η ιδέα του συμπτωτικού πολυωνύμου, του πολυωνύμου, δηλαδή, που είναι του μικρότερου δυνατού βαθμού και που, για συγκεκριμένες,

Διαβάστε περισσότερα

Συστήματα συντεταγμένων

Συστήματα συντεταγμένων Κεφάλαιο. Για να δημιουργήσουμε τρισδιάστατα αντικείμενα, που μπορούν να παρασταθούν στην οθόνη του υπολογιστή ως ένα σύνολο από γραμμές, επίπεδες πολυγωνικές επιφάνειες ή ακόμη και από ένα συνδυασμό από

Διαβάστε περισσότερα

1 Αριθμητική κινητής υποδιαστολής και σφάλματα στρογγύλευσης

1 Αριθμητική κινητής υποδιαστολής και σφάλματα στρογγύλευσης 1 Αριθμητική κινητής υποδιαστολής και σφάλματα στρογγύλευσης Στη συγκεκριμένη ενότητα εξετάζουμε θέματα σχετικά με την αριθμητική πεπερασμένης ακρίβειας που χρησιμοποιούν οι σημερινοί υπολογιστές και τα

Διαβάστε περισσότερα

ΜΕΘΟΔΟΣ ΠΕΠΕΡΑΣΜΕΝΩΝ ΣΤΟΙΧΕΙΩΝ

ΜΕΘΟΔΟΣ ΠΕΠΕΡΑΣΜΕΝΩΝ ΣΤΟΙΧΕΙΩΝ ΜΕΘΟΔΟΣ ΠΕΠΕΡΑΣΜΕΝΩΝ ΣΤΟΙΧΕΙΩΝ Βασίζεται στην εφαρμογή των παρακάτω βημάτων:. Το φυσικό πεδίο αναπαριστάται με ένα σύνολο απλών γεωμετρικών σχημάτων που ονομάζονται Πεπερασμένα Στοιχεία.. Σε κάθε στοιχείο

Διαβάστε περισσότερα

Ειδικά Θέµατα Υπολογιστικής Όρασης & Γραφικής. Εµµανουήλ Ζ. Ψαράκης & Αθανάσιος Τσακαλίδης Πολυτεχνική Σχολή Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Ειδικά Θέµατα Υπολογιστικής Όρασης & Γραφικής. Εµµανουήλ Ζ. Ψαράκης & Αθανάσιος Τσακαλίδης Πολυτεχνική Σχολή Τµήµα Μηχανικών Η/Υ & Πληροφορικής Ειδικά Θέµατα Υπολογιστικής Όρασης & Γραφικής Εµµανουήλ Ζ. Ψαράκης & Αθανάσιος Τσακαλίδης Πολυτεχνική Σχολή Τµήµα Μηχανικών Η/Υ & Πληροφορικής Χαρακτηριστικά Εµµανουήλ Ζ. Ψαράκης Πολυτεχνική Σχολή Τµήµα

Διαβάστε περισσότερα

Θεωρία Παιγνίων και Αποφάσεων. Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος. Ε. Μαρκάκης. Επικ. Καθηγητής

Θεωρία Παιγνίων και Αποφάσεων. Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος. Ε. Μαρκάκης. Επικ. Καθηγητής Θεωρία Παιγνίων και Αποφάσεων Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος Ε. Μαρκάκης Επικ. Καθηγητής Περίληψη Παίγνια μηδενικού αθροίσματος PessimisIc play Αμιγείς max-min και

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

Διαβάστε περισσότερα

ΕΡΕΥΝΗΤΙΚΑ ΠΡΟΓΡΑΜΜΑΤΑ ΑΡΧΙΜΗΔΗΣ ΕΝΙΣΧΥΣΗ ΕΡΕΥΝΗΤΙΚΩΝ ΟΜΑΔΩΝ ΣΤΟ ΤΕΙ ΣΕΡΡΩΝ. Ενέργεια. 2.2.3.στ ΘΕΜΑ ΕΡΕΥΝΑΣ: ΔΙΑΡΘΡΩΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΕΧΡΩΜΩΝ ΕΓΓΡΑΦΩΝ

ΕΡΕΥΝΗΤΙΚΑ ΠΡΟΓΡΑΜΜΑΤΑ ΑΡΧΙΜΗΔΗΣ ΕΝΙΣΧΥΣΗ ΕΡΕΥΝΗΤΙΚΩΝ ΟΜΑΔΩΝ ΣΤΟ ΤΕΙ ΣΕΡΡΩΝ. Ενέργεια. 2.2.3.στ ΘΕΜΑ ΕΡΕΥΝΑΣ: ΔΙΑΡΘΡΩΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΕΧΡΩΜΩΝ ΕΓΓΡΑΦΩΝ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ (Τ.Ε.Ι.) ΣΕΡΡΩΝ Τμήμα ΠΛΗΡΟΦΟΡΙΚΗΣ & ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΡΕΥΝΗΤΙΚΑ ΠΡΟΓΡΑΜΜΑΤΑ ΑΡΧΙΜΗΔΗΣ ΕΝΙΣΧΥΣΗ ΕΡΕΥΝΗΤΙΚΩΝ ΟΜΑΔΩΝ ΣΤΟ ΤΕΙ ΣΕΡΡΩΝ Ενέργεια. 2.2.3.στ ΘΕΜΑ ΕΡΕΥΝΑΣ: ΔΙΑΡΘΡΩΣΗ

Διαβάστε περισσότερα

Η μέθοδος Simplex. Χρήστος Γκόγκος. Χειμερινό Εξάμηνο ΤΕΙ Ηπείρου

Η μέθοδος Simplex. Χρήστος Γκόγκος. Χειμερινό Εξάμηνο ΤΕΙ Ηπείρου Η μέθοδος Simplex Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 1 / 17 Η μέθοδος Simplex Simplex Είναι μια καθορισμένη σειρά επαναλαμβανόμενων υπολογισμών μέσω των οποίων ξεκινώντας από ένα αρχικό

Διαβάστε περισσότερα

Πληροφορική 2. Αλγόριθμοι

Πληροφορική 2. Αλγόριθμοι Πληροφορική 2 Αλγόριθμοι 1 2 Τι είναι αλγόριθμος; Αλγόριθμος είναι ένα διατεταγμένο σύνολο από σαφή βήματα το οποίο παράγει κάποιο αποτέλεσμα και τερματίζεται σε πεπερασμένο χρόνο. Ο αλγόριθμος δέχεται

Διαβάστε περισσότερα

4. Μέθοδοι αναγνώρισης ταξινοµητές µε επόπτη

4. Μέθοδοι αναγνώρισης ταξινοµητές µε επόπτη ΑΕΙ Σερρών 4. Μέθοδοι αναγνώρισης ταξινοµητές µε επόπτη 4.. Αναγνώριση µε βάση τα κέντρα των τάξεων Είναι µια απλοϊκή µέθοδος αναγνώρισης µε επόπτη σύµφωνα µε την οποία κατά την εκµάθηση υπολογίζεται η

Διαβάστε περισσότερα

Κεφάλαιο 8. Οπτικοποίηση Απαλοιφή

Κεφάλαιο 8. Οπτικοποίηση Απαλοιφή Κεφάλαιο 8. Οπτικοποίηση Απαλοιφή Oι οπτικές επιδράσεις, που μπορεί να προκαλέσει μια εικόνα στους χρήστες, αποτελούν ένα από τα σπουδαιότερα αποτελέσματα των λειτουργιών γραφικών με Η/Υ. Τον όρο της οπτικοποίησης

Διαβάστε περισσότερα

min f(x) x R n b j - g j (x) = s j - b j = 0 g j (x) + s j = 0 - b j ) min L(x, s, λ) x R n λ, s R m L x i = 1, 2,, n (1) m L(x, s, λ) = f(x) +

min f(x) x R n b j - g j (x) = s j - b j = 0 g j (x) + s j = 0 - b j ) min L(x, s, λ) x R n λ, s R m L x i = 1, 2,, n (1) m L(x, s, λ) = f(x) + KΕΦΑΛΑΙΟ 4 Κλασσικές Μέθοδοι Βελτιστοποίησης Με Περιορισµούς Ανισότητες 4. ΠΡΟΒΛΗΜΑΤΑ ΜΕ ΠΕΡΙΟΡΙΣΜΟΥΣ ΑΝΙΣΟΤΗΤΕΣ Ζητούνται οι τιµές των µεταβλητών απόφασης που ελαχιστοποιούν την αντικειµενική συνάρτηση

Διαβάστε περισσότερα

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής Α2. Ο αλγόριθμος αποτελείται από ένα πεπερασμένο σύνολο εντολών Α3. Ο αλγόριθμος

Διαβάστε περισσότερα

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας Εισηγητής Αναστάσιος Κεσίδης Χωρικά φίλτρα Χωρικά φίλτρα Γενικά Σε αντίθεση με τις σημειακές πράξεις και μετασχηματισμούς, στα

Διαβάστε περισσότερα

Αριθμητική Ανάλυση και Εφαρμογές

Αριθμητική Ανάλυση και Εφαρμογές Αριθμητική Ανάλυση και Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 07-08 Πεπερασμένες και Διαιρεμένες Διαφορές Εισαγωγή Θα εισάγουμε την έννοια των διαφορών με ένα

Διαβάστε περισσότερα

Ε π ι μ έ λ ε ι α Κ Ο Λ Λ Α Σ Α Ν Τ Ω Ν Η Σ

Ε π ι μ έ λ ε ι α Κ Ο Λ Λ Α Σ Α Ν Τ Ω Ν Η Σ Ε π ι μ έ λ ε ι α Κ Ο Λ Λ Α Σ Α Ν Τ Ω Ν Η Σ 1 Συναρτήσεις Όταν αναφερόμαστε σε μια συνάρτηση, ουσιαστικά αναφερόμαστε σε μια σχέση ή εξάρτηση. Στα μαθηματικά που θα μας απασχολήσουν, με απλά λόγια, η σχέση

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ Ενότητα 10

ΑΛΓΟΡΙΘΜΟΙ Ενότητα 10 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ ΑΛΓΟΡΙΘΜΟΙ Ενότητα 10: Επαναληπτική Βελτίωση Ιωάννης Μανωλόπουλος, Καθηγητής Αναστάσιος Γούναρης, Επίκουρος Καθηγητής Άδειες Χρήσης Το

Διαβάστε περισσότερα

2ογελ ΣΥΚΕΩΝ 2ογελ ΣΥΚΕΩΝ ΠΟΛΥΩΝΥΜΙΚΕΣ ΣΥΝΑΡΤΗΣΕΙΣ Β Λυκει(ου ΠΟΛΥΩΝΥΜΙΚΕΣ ΣΥΝΑΡΤΗΣΕΙΣ

2ογελ ΣΥΚΕΩΝ 2ογελ ΣΥΚΕΩΝ ΠΟΛΥΩΝΥΜΙΚΕΣ ΣΥΝΑΡΤΗΣΕΙΣ Β Λυκει(ου ΠΟΛΥΩΝΥΜΙΚΕΣ ΣΥΝΑΡΤΗΣΕΙΣ ογελ ΣΥΚΕΩΝ ογελ ΣΥΚΕΩΝ ΠΟΛΥΩΝΥΜΙΚΕΣ ΣΥΝΑΡΤΗΣΕΙΣ Β Λυκει(ου ο ΓΕΛ ΣΥΚΕΩΝ ΠΟΛΥΩΝΥΜΙΚΕΣ ΣΥΝΑΡΤΗΣΕΙΣ Β ΛΥΚΕΙΟΥ ογελ ΣΥΚΕΩΝ ογελ ΣΥΚΕΩΝ ΣΧΟΛΙΚΟ ΕΤΟΣ -4 ΠΟΛΥΩΝΥΜΙΚΕΣ ΣΥΝΑΡΤΗΣΕΙΣ Επιμέλεια: ΧΑΛΑΤΖΙΑΝ ΠΑΥΛΟΣ

Διαβάστε περισσότερα

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ, ΤΜΗΜΑ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΚΕΣ 3: ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΚΑΙ ΑΝΑΛΥΣΗ ΕΙΚΟΝΑΣ Ακαδημαϊκό Έτος 7 8, Χειμερινό Εξάμηνο Καθ.: Νίκος Τσαπατσούλης ΕΡΩΤΗΣΕΙΣ ΕΠΑΝΑΛΗΨΗΣ Το παρόν

Διαβάστε περισσότερα

Αριθμητική Ανάλυση & Εφαρμογές

Αριθμητική Ανάλυση & Εφαρμογές Αριθμητική Ανάλυση & Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 2017-2018 Υπολογισμοί και Σφάλματα Παράσταση Πραγματικών Αριθμών Συστήματα Αριθμών Παράσταση Ακέραιου

Διαβάστε περισσότερα

Σφαίρα σε ράγες: Η συνάρτηση Lagrange. Ν. Παναγιωτίδης

Σφαίρα σε ράγες: Η συνάρτηση Lagrange. Ν. Παναγιωτίδης Η Εξίσωση Euler-Lagrange Σφαίρα σε ράγες: Η συνάρτηση Lagrange Ν. Παναγιωτίδης Έστω σύστημα δυο συγκλινόντων ραγών σε σχήμα Χ που πάνω τους κυλίεται σφαίρα ακτίνας. Θεωρούμε σύστημα συντεταγμένων με οριζόντιους

Διαβάστε περισσότερα

d k 10 k + d k 1 10 k d d = k i=0 d i 10 i.

d k 10 k + d k 1 10 k d d = k i=0 d i 10 i. Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500

Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500 Εισόδημα Κατανάλωση 1500 500 1600 600 1300 450 1100 400 600 250 700 275 900 300 800 352 850 400 1100 500 Πληθυσμός Δείγμα Δείγμα Δείγμα Ο ρόλος της Οικονομετρίας Οικονομική Θεωρία Διατύπωση της

Διαβάστε περισσότερα

Τι είναι βαθμωτό μέγεθος? Ένα μέγεθος που περιγράφεται μόνο με έναν αριθμό (π.χ. πίεση)

Τι είναι βαθμωτό μέγεθος? Ένα μέγεθος που περιγράφεται μόνο με έναν αριθμό (π.χ. πίεση) TETY Εφαρμοσμένα Μαθηματικά Ενότητα ΙΙ: Γραμμική Άλγεβρα Ύλη: Διανυσματικοί χώροι και διανύσματα, μετασχηματισμοί διανυσμάτων, τελεστές και πίνακες, ιδιοδιανύσματα και ιδιοτιμές πινάκων, επίλυση γραμμικών

Διαβάστε περισσότερα

Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών

Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών Συμβολισμοί Σε αναλογία με τους ορισμούς συμβολίζουμε μια ακολουθία: 1 είτε μέσω του διανυσματικού ορισμού, παραθέτοντας αναγκαστικά

Διαβάστε περισσότερα

Βασικές αρχές εκπαίδευσης ΤΝΔ: το perceptron. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

Βασικές αρχές εκπαίδευσης ΤΝΔ: το perceptron. Τεχνητά Νευρωνικά Δίκτυα (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων Βασικές αρχές εκπαίδευσης ΤΝΔ: το perceptron Βιολογικός Νευρώνας Δενδρίτες, που αποτελούν τις γραμμές εισόδου των ερεθισμάτων (βιολογικών σημάτων) Σώμα, στο οποίο γίνεται η συσσώρευση των ερεθισμάτων και

Διαβάστε περισσότερα

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΚΑΙ ΜΑΘΗΜΑΤΙΚΗ ΔΙΑΤΥΠΩΣΗ, Διαλ. 2. Ανωτάτη Σχολή Παιδαγωγικής και Τεχνολογικής Εκπαίδευσης 8/4/2017

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΚΑΙ ΜΑΘΗΜΑΤΙΚΗ ΔΙΑΤΥΠΩΣΗ, Διαλ. 2. Ανωτάτη Σχολή Παιδαγωγικής και Τεχνολογικής Εκπαίδευσης 8/4/2017 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΚΑΙ ΜΑΘΗΜΑΤΙΚΗ ΔΙΑΤΥΠΩΣΗ, Διαλ. 2 Ανωτάτη Σχολή Παιδαγωγικής και Τεχνολογικής Εκπαίδευσης 8/4/2017 Αντικειμενικοί στόχοι Η μελέτη των βασικών στοιχείων που συνθέτουν ένα πρόβλημα βελτιστοποίησης

Διαβάστε περισσότερα

n ίδια n διαφορετικά n n 0 n n n 1 n n n n 0 4

n ίδια n διαφορετικά n n 0 n n n 1 n n n n 0 4 Διακριτά Μαθηματικά Ι Επαναληπτικό Μάθημα 1 Συνδυαστική 2 Μεταξύ 2n αντικειμένων, τα n είναι ίδια. Βρείτε τον αριθμό των επιλογών n αντικειμένων από αυτά τα 2n αντικείμενα. Μεταξύ 3n + 1 αντικειμένων τα

Διαβάστε περισσότερα

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Μη γραμμικός προγραμματισμός: βελτιστοποίηση χωρίς περιορισμούς Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών ΤμήμαΠληροφορικής Διάλεξη 7-8 η /2017 Τι παρουσιάστηκε

Διαβάστε περισσότερα

Τμήμα Μηχανικών Η/Υ και Πληροφορικής

Τμήμα Μηχανικών Η/Υ και Πληροφορικής Τμήμα Μηχανικών Η/Υ και Πληροφορικής Εργαστήριο Επεξεργασίας Σημάτων και Τηλεπικοινωνιών Ασύρματες και Κινητές Επικοινωνίες Κωδικοποίηση καναλιού Τι θα δούμε στο μάθημα Σύντομη εισαγωγή Γραμμικοί κώδικες

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ. Μαθηματικά 1. Σταύρος Παπαϊωάννου

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ. Μαθηματικά 1. Σταύρος Παπαϊωάννου ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ Μαθηματικά Σταύρος Παπαϊωάννου Ιούνιος 05 Τίτλος Μαθήματος Περιεχόμενα Χρηματοδότηση.. Σφάλμα! Δεν έχει οριστεί σελιδοδείκτης. Σκοποί Μαθήματος

Διαβάστε περισσότερα

ΠΡΟΒΛΗΜΑΤΑ ΔΥΟ ΔΙΑΣΤΑΣΕΩΝ

ΠΡΟΒΛΗΜΑΤΑ ΔΥΟ ΔΙΑΣΤΑΣΕΩΝ ΠΡΟΒΛΗΜΑΤΑ ΔΥΟ ΔΙΑΣΤΑΣΕΩΝ Η ανάλυση προβλημάτων δύο διαστάσεων με τη μέθοδο των Πεπερασμένων Στοιχείων περιλαμβάνει τα ίδια βήματα όπως και στα προβλήματα μιας διάστασης. Η ανάλυση γίνεται λίγο πιο πολύπλοκη

Διαβάστε περισσότερα

Ενδεικτικές Ερωτήσεις Θεωρίας

Ενδεικτικές Ερωτήσεις Θεωρίας Ενδεικτικές Ερωτήσεις Θεωρίας Κεφάλαιο 2 1. Τι καλούμε αλγόριθμο; 2. Ποια κριτήρια πρέπει οπωσδήποτε να ικανοποιεί ένας αλγόριθμος; 3. Πώς ονομάζεται μια διαδικασία που δεν περατώνεται μετά από συγκεκριμένο

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΕΦΑΡΜΟΣΜΕΝΗΣ ΟΠΤΙΚΗΣ

ΕΡΓΑΣΤΗΡΙΟ ΕΦΑΡΜΟΣΜΕΝΗΣ ΟΠΤΙΚΗΣ ΕΡΓΑΣΤΗΡΙΟ ΕΦΑΡΜΟΣΜΕΝΗΣ ΟΠΤΙΚΗΣ Άσκηση 4: Σφάλματα φακών: Ι Σφαιρική εκτροπή Εξεταζόμενες γνώσεις: σφάλματα σφαιρικής εκτροπής. Α. Γενικά περί σφαλμάτων φακών Η βασική σχέση του Gauss 1/s +1/s = 1/f που

Διαβάστε περισσότερα

Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα

Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα Ενότητα: Διανυσματικοί Χώροι και Υπόχωροι: Βάσεις και Διάσταση Ανδριανός Ε Τσεκρέκος Τμήμα Λογιστικής & Χρηματοοικονομικής

Διαβάστε περισσότερα

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας Εισηγητής Αναστάσιος Κεσίδης Ακμές και περιγράμματα Ακμές και περιγράμματα Γενικά Μεγάλο τμήμα της πληροφορίας που γίνεται αντιληπτή

Διαβάστε περισσότερα

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης

Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας. Εισηγητής Αναστάσιος Κεσίδης Μεταπτυχιακό Πρόγραμμα «Γεωχωρικές Τεχνολογίες» Ψηφιακή Επεξεργασία Εικόνας Εισηγητής Αναστάσιος Κεσίδης Τμηματοποίηση εικόνας Τμηματοποίηση εικόνας Γενικά Διαμερισμός μιας εικόνας σε διακριτές περιοχές

Διαβάστε περισσότερα

1. Ιδιότητες φακών. 1 Λεπτοί φακοί. 2 Απριλίου Βασικές έννοιες

1. Ιδιότητες φακών. 1 Λεπτοί φακοί. 2 Απριλίου Βασικές έννοιες . Ιδιότητες φακών 2 Απριλίου 203 Λεπτοί φακοί. Βασικές έννοιες Φακός είναι ένα οπτικό σύστημα με δύο διαθλαστικές επιφάνειες. Ο απλούστερος φακός έχει δύο σφαιρικές επιφάνειες αρκετά κοντά η μία με την

Διαβάστε περισσότερα

A. ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ

A. ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ 8Α ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ A ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ Πότε μια συνάρτηση λέγεται συνεχής σε ένα σημείο του πεδίου ορισμού o της ; Απάντηση : ( ΟΜΟΓ, 6 ΟΜΟΓ, 9 Β, ΟΜΟΓ, 5 Έστω μια συνάρτηση και ένα σημείο του πεδίου

Διαβάστε περισσότερα

Αριθμητική Ανάλυση και Εφαρμογές

Αριθμητική Ανάλυση και Εφαρμογές Αριθμητική Ανάλυση και Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 07-08 Αριθμητική Ολοκλήρωση Εισαγωγή Έστω ότι η f είναι μία φραγμένη συνάρτηση στο πεπερασμένο

Διαβάστε περισσότερα

Επιχειρησιακή Έρευνα I

Επιχειρησιακή Έρευνα I Επιχειρησιακή Έρευνα I Κωστής Μαμάσης Παρασκευή 09:00 12:00 Σημειώσεις των Α. Platis, K. Mamasis Περιεχόμενα 1. Εισαγωγή 2. Γραμμικός Προγραμματισμός 1. Μοντελοποίηση 2. Μέθοδος Simplex (C) Copyright Α.

Διαβάστε περισσότερα

ΕΡΩΤΗΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΙΚΑ Β ΓΥΜΝΑΣΙΟΥ. ΜΕΡΟΣ 1ο ΑΛΓΕΒΡΑ

ΕΡΩΤΗΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΙΚΑ Β ΓΥΜΝΑΣΙΟΥ. ΜΕΡΟΣ 1ο ΑΛΓΕΒΡΑ 1. Τι καλείται μεταβλητή; ΕΡΩΤΗΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΙΑ Β ΓΥΜΝΑΣΙΟΥ ΜΕΡΟΣ 1ο ΑΛΓΕΒΡΑ Μεταβλητή είναι ένα γράμμα (π.χ., y, t, ) που το χρησιμοποιούμε για να παραστήσουμε ένα οποιοδήποτε στοιχείο ενός συνόλου..

Διαβάστε περισσότερα

Θεώρημα Βolzano. Κατηγορία 1 η. 11.1 Δίνεται η συνάρτηση:

Θεώρημα Βolzano. Κατηγορία 1 η. 11.1 Δίνεται η συνάρτηση: Κατηγορία η Θεώρημα Βolzano Τρόπος αντιμετώπισης:. Όταν μας ζητούν να εξετάσουμε αν ισχύει το θεώρημα Bolzano για μια συνάρτηση f σε ένα διάστημα [, ] τότε: Εξετάζουμε την συνέχεια της f στο [, ] (αν η

Διαβάστε περισσότερα

Έλεγχος υποθέσεων και διαστήματα εμπιστοσύνης

Έλεγχος υποθέσεων και διαστήματα εμπιστοσύνης 1 Έλεγχος υποθέσεων και διαστήματα εμπιστοσύνης Όπως γνωρίζουμε από προηγούμενα κεφάλαια, στόχος των περισσότερων στατιστικών αναλύσεων, είναι η έγκυρη γενίκευση των συμπερασμάτων, που προέρχονται από

Διαβάστε περισσότερα

A. ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ

A. ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ 8Α ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ A ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ Πότε μια συνάρτηση λέγεται συνεχής σε ένα σημείο του πεδίου ορισμού o της ; Απάντηση : ( ΟΜΟΓ, 6 ΟΜΟΓ, 9 Β, ΟΜΟΓ, 5 Έστω μια συνάρτηση και ένα σημείο του πεδίου

Διαβάστε περισσότερα