Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
1
ΕΠΛ 445 – Ψηφιακή Επεξεργασία Εικόνας
Κεφάλαιο 1 Εισαγωγή
2
ΠΕΡΙΕΧΟΜΕΝΑ Εισαγωγή Τύποι Εικόνων Γεωμετρία Απεικόνισης
Όργανα Απεικόνισης Απόκτηση Εικόνας Αναπαράσταση Εικόνας
3
Σκοπός Του Μαθήματος (1/2)
Να μεταφέρει τις βασικές ιδέες της Ψηφιακής Επεξεργασίας Εικόνας (ΨΕΕ) από μια λειτουργική όψη με κάποια επαφή στην θεωρία. Οι βασικές αυτές ιδέες είναι: - Ανάληψη: κάμερες, διασύνδεση, και υπολογιστές. - Επεξεργασία, αλγόριθμοι και θεωρία. - Πρακτικές εφαρμογές της ΨΕΕ. - Βασικοί αλγόριθμοι ανάλυσης εικόνας. Κάνει προσιτή την ψηφιακή επεξεργασία εικόνας. Παρουσιάζει το αντικείμενο με λογική μαθηματική ευκολία. Παρουσιάζει τα αποτελέσματα πολλαπλών παραδειγμάτων οπτικών εικόνων στην μορφή της ακριβούς ΨΕΕ, όπως αυτά έχουν αναλυθεί στο Laboratory for Vision Systems στο University of Texas at Austin, και στο Τμήμα Πληροφορικής του Πανεπιστημίου Κύπρου.
4
Σκοπός Του Μαθήματος (2/2)
Να γίνονται ερωτήσεις όσον αφορά το αντικείμενο του μαθήματος Να μη διστάζουν οι φοιτητές να δείξουν τη μη κατανόηση κάποιου θέματος Να γίνονται σχόλια για την ταχύτητα διδαχής του μαθήματος Να γίνονται σχόλια για το επίπεδο διδαχής
5
Σχόλια Για Το Βιβλίο Το βιβλίο που καλύπτει την ύλη του μαθήματος είναι το: Digital Image Processing, R.C. Gonzalez and R.E. Woods Πολύ ευπρόσιτο βιβλίο – Φιλικό προς το χρήστη Πολύ καλά εικονογραφημένο - με χρήσιμα παραδείγματα εφαρμογών Οι σημειώσεις της τάξης είναι αυτόνομες. Εντούτοις, το βιβλίο είναι καλό για διάβασμα.
6
Άλλα Προτεινόμενα Βιβλία
Digital Image Processing, W.K. Pratt, Wiley, 1992, Encyclopedic, somewhat dated. There is a new edition. Digital Picture Processing, Rosenfeld & Kak, Academic 1982, Encyclopedic but readable Fundamentals of Digital Image Processing, Jain, Prentice 1989, Handbook-style, meant for advanced level. Machine Vision, Jain, Kasturi, and Schunk, McGraw-Hill, 1995, Beginner’s book on computer vision. Robot Vision, B.K.P. Horn, MIT Press, 1986, Advanced-level book on computer vision Digital Video Processing, M. Tekalp, Prentice-Hall, 1995, Only book devoted to digital video; high-level; excellent.
7
Δημοσιεύσεις - Journals
· IEEE Transactions on: - Image Processing - Pattern Analysis and Machine Intelligence - Medical Imaging - Remote Sensing · Computer Vision, Graphics, and Image Processing - Image Understanding - Graphics and Image Processing · Pattern Recognition · Journal of Visual Communication and Image Representation · Image and Vision Computing
8
Εφαρμογές της ΨΕΕ (1/2) Υπάρχουν αμέτρητες περιοχές εφαρμογών της ΨΨΕ, οι οποίες εξελίσσσονται ραγδαία. Θα δώσουμε πιο κάτω μερικές από αυτές.
9
Που χρησιμοποιείται? (2/2)
ΨΨΕ – Μια επιστήμη με πολλές εφαρμογές:
10
Εξέλιξη της ΨΨΕ Πλεονεκτήματα της ΨΨΕ σε σταθμούς εργασίας
Είναι σημαντική στις περιοχές με στοιχεία πολλών διαστάσεων Η απεικόνιση είναι ανεκτίμητο μέσο και μετάφραση δεδομένων Η όραση είναι η πιο σημαντική αίσθηση μας και είναι πανταχού παρών Εφαρμογές σε σταθμούς εργασίας και προσωπικούς υπολογιστές Σημαντική πρόοδος σε αλγορίθμους και επιπρόσθετα στοιχεία του υλικού των υπολογιστών Πλεονεκτήματα της ΨΨΕ σε σταθμούς εργασίας Χειρισμός – κόστος των προσωπικών σταθμών εργασίας είναι ιδανικό για εργαστηριακή δουλειά Τεράστια ικανότητα μείωσης χρόνου Μπορεί να επιβλέπει και να ελέγχει πολλαπλές διεργασίες Ικανότητα εντολών των σταθμών εργασίας για την καλπάζουσα ΨΕΕ
11
Τι Είναι οι Ψηφιακές Εικόνες?
Υπάρχουν τόσων ειδών εικόνες όσοι και οι τύποι της ακτινοβολίας και οι τρόποι που δείχνουν πώς η ακτινοβολία αντιδρά με τα αντικείμενα.
12
Γενικοί τύποι εικόνων (1/2)
Μπορούμε να διακρίνουμε τρεις τύπους εικόνας, οι οποίοι δημιουργούν διαφορετικούς τύπους πληροφορίας εικόνας. Απεικόνιση Αντανάκλασης: Η πληροφορία της εικόνας είναι η πληροφορία της επιφάνειας, δηλαδή πως ένα αντικείμενο αντανακλά/απορροφά ακτινοβολία - Οπτική (ορατή, φωτογραφική, με βάση ακτίνων laser) - Radar - Sonar, ultrasound (non-EM) Υπέρηχοι - Electron microscopy Ηλεκτρονικό Μικροσκόπιο
13
Γενικοί τύποι εικόνων (2/2)
Απεικόνιση εκπομπής: Η πληροφορία εικόνας είναι εσωτερική πληροφορία, δηλαδή πως ένα αντικείμενο δημιουργεί ακτινοβολία. - Θερμική, υπέρυθρη (γεωφυσική, ιατρική, στρατιωτική) - Αστρονομία (άστρα, γαλαξίες, κλπ.) - Πυρηνική (εκπομπή σωματιδίων Απεικόνιση Απορρόφησης: Η πληροφορία της εικόνας είναι εσωτερική πληροφορία, δηλαδή πως ένα αντικείμενο αλλάζει / απορροφά ακτινοβολία που περνά διαμέσου του. - Ακτίνες Χ σε πολλές χρήσεις - Οπτική μικροσκοπία σε χρήσεις εργαστηρίου - Τομογραφία στην ιατρική - “Vibro-Seis” στην γεωφυσική έρευνα
14
Ηλεκτρομαγνητική Ακτινοβολία (1/2)
Το ηλεκτρομαγνητικό φάσμα καλύπτει πολλές χρήσιμες ακτινοβολίες που χρησιμοποιούνται στην απεικόνιση:
15
Ηλεκτρομαγνητική Ακτινοβολία (2/2)
Μερικοί κλάδοι της επιστήμης, π.χ. αστρονομία, περιέχουν εικόνες απο όλο το φάσμα. Συνήθως θα χρησιμοποιήσουμε παραδείγματα εικόνων από το ορατό φάσμα. Αυτό είναι ένα πολύ μικρό κομμάτι του φάσματος ακτινοβολίας!
16
Κλίμακες Απεικόνισης Μεταβάλλονται ανάλογα με τις κλίμακες που υπάρχουν στην φύση:
17
Διαστάσεις Εικόνων Οι εικόνες είναι πολύ-διαστατά σήματα ( 2 διαστάσεις) Ο αριθμός των διαστάσεων μιας εικόνας είναι ο αριθμός των συντεταγμένων που χρειάζονται για ένα σημείο
18
Απλοποιημένη γεωμετρία φωτογραφικής απεικόνισης
Γεωμετρία οπτικής εικονοληψίας (1/2) Απλοποιημένη γεωμετρία φωτογραφικής απεικόνισης
19
Γεωμετρία Οπτικής Απεικόνισης (2/2)
ΟΠΤΙΚΗ ΑΠΕΙΚΟΝΙΣΗ 3-Δ ΣΕ 2-Δ Η απεικόνιση περιλαμβάνει μείωση διαστάσεων, έτσι κάποια 3-Δ πληροφορία χάνεται.
20
Σκηνογραφική προβολή Προβολή: είναι η μείωση των διαστάσεων
Σκηνογραφική προβολή: είναι η μείωση διαστάσεων από 3-Δ σε 2-Δ Συστήματα συντεταγμένων: Συντεταγμένες πραγματικού χώρου (Χ,Υ,Ζ) : δηλώνουν σημεία στο 3-Δ χώρο Το σημείο αναφοράς (Χ,Υ,Ζ)=(0,0,0) χρησιμοποιείται σαν το κέντρο του φακού Συντεταγμένες εικόνας (x,y) : δηλώνουν σημεία σε 2-Δ εικόνα Το πεδίο x - y είναι παράλληλο του πεδίου Χ – Υ Ο οπτικός άξονας περνά και από τα δυο σημεία αναφοράς
21
Γεωμετρία προβολής οπής
Ο φακός θεωρείται σαν μια οπή από την οποία περνούν όλες οι ακτίνες φωτός που κτυπούν το πεδίο εικόνας. Πρόβλημα: σε αυτό το μοντέλο, αλλά και στην πραγματικότητα η εικόνα είναι αντιστραμμένη. Έτσι, αλλάζουμε το μοντέλο.
22
Γεωμετρία αντεστραμμένης προβολής (1/3)
Παρατήρηση: το διάγραμμα δεν είναι σε κλίμακα.
23
Γεωμετρία αντεστραμμένης προβολής (2/3)
Το πιο πάνω διάγραμμα δείχνει όλους τους άξονες συντεταγμένων
24
Γεωμετρία αντεστραμμένης προβολής (3/3)
Το ισοδύναμο απλουστευμένο διάγραμμα περιέχει μόνο τα στοιχεία που σχετίζουν το (Χ,Υ,Ζ) = (A,B,C) με την προβολή (x,y) = (a,b).
25
Θεώρημα: τα όμοια τρίγωνα έχουν τις αντίστοιχες πλευρές τους ανάλογες
Όμοια Τρίγωνα Δυο τρίγωνα είναι όμοια όταν οι αντίστοιχες γωνίες τους είναι ίσες Θεώρημα: τα όμοια τρίγωνα έχουν τις αντίστοιχες πλευρές τους ανάλογες D = d , E = e , F = f E e F f D d
26
Λύση σκηνογραφικής προβολής (1/2)
Χρησιμοποιώντας όμοια τρίγωνα μπορούμε να βρούμε τη σχέση μεταξύ 3-Δ συντεταγμένων χώρου και 2-Δ συντεταγμένων εικόνας Ξανασχεδιάζουμε τη γεωμετρική εικόνα φανερώνοντας δυο ζεύγη από όμοια τρίγωνα
27
Λύση σκηνογραφικής προβολής (2/2)
Από το θεώρημα των ομοίων τριγώνων συμπεραίνουμε: και ή (a,b) = f . (A,B) = (fA/C, fB/C) C
28
Εξίσωση Σκηνογραφικής Προβολής
Έτσι, έχουμε την ακόλουθη σχέση: (x,y) = f . (X,Y) Z όπου f = εστιακή απόσταση Η αναλογία f είναι ο συντελεστής μεγέθυνσης, ο οποίος μεταβάλλεται Ζ με την απόσταση Ζ από το κέντρο του φακού μέχρι το πεδίο του αντικειμένου
29
Παράδειγμα 1 Υπάρχει ένας άνθρωπος σε απόσταση 10 μέτρων μπροστά μας.
Έχει 2 μέτρα ύψος. Η εστιακή απόσταση του ματιού μας είναι 17mm. Ερώτηση: ποιο είναι το ύψος Η της εικόνας που σχηματίζεται στη ρέτινα; Από τα όμοια τρίγωνα: 2 m = H 10 m 17mm H = 3.4 mm
30
Παράδειγμα 2 (1/3) Γιατί οι ευθείες (ή τμήματα ευθειών) σε 3-Δ χώρο προβάλλονται σε ευθεία γραμμή στη 2-Δ εικόνα;
31
Παράδειγμα 2 (2/3) Παρατηρούμε ότι όλες οι γραμμές που περνούν από το κέντρο του φακού (σημείο αναφοράς) και την 3-Δ ευθεία πρέπει να είναι στο ίδιο επίπεδο (ένα σημείο και μια ευθεία προσδιορίζουν ένα επίπεδο). Η διασταύρωση αυτού του επιπέδου με το επίπεδο της εικόνας δίνει την προέκταση της ευθείας. Η διασταύρωση δυο οποιονδήποτε μη παράλληλων επιπέδων είναι μια ευθεία.
32
Παράδειγμα 2 (3/3) Έτσι, η προβολή μιας 3-Δ ευθείας είναι σε μια 2-Δ ευθεία.
33
Αισθητήρες CCD (Charged Couple Devices)
Ψηφιοποίηση Εικόνας Τι είναι; Η μετατροπή μιας δυσδιάστατης φυσικής εικόνας (στην ουσία μιας κατανομής φωτεινοτήτων) σε ηλεκτρικό σήμα και έπειτα σε ψηφιακή πληροφορία Αισθητήρες CCD (Charged Couple Devices) Μετατρέπουν την φωτεινότητα σε ηλεκτρικό φορτίο Οι πλείστες κάμερες αυτούς χρησιμοποιούν
34
Αισθητήρες Charged Couple Device (1/3)
Τα στοιχεία του CCD πίνακα φορτίζονται ανάλογα με την φωτεινότητα η οποία προσπίπτει επάνω τους Κάθε παλμός του Vertical Scan Generator αναγκάζει τα φορτία από κάθε γραμμή του πίνακα να μετακινηθούν σε ένα Shift Register Ο Shift Register μεταφέρει τα φορτία σε ένα ενισχυτή, γραμμή προς γραμμή. Για το παραπάνω παράδειγμα, ο Shift Register θα μεταφέρει στον ενισχυτή τα φορτία της πρώτης γραμμής, έπειτα της δεύτερης, της τρίτης κ.ο.κ
35
Αισθητήρες Charged Couple Devices (2/3)
Κάθε CCD συσκευή διαθέτει τρεις «πηγές δυναμικού» (potential wells). Η μεσαία παράγει φορτίο (ροή ηλεκτρονίων) ανάλογα με το πλήθος των φωτονίων (δηλαδή την ένταση του φωτός) τα οποία προσπίπτουν επάνω της Έπειτα το φορτίο της μεσαίας πηγής μεταπηδά στις άλλες δύο. Τέλος καταλήγει στον Shift Register από όπου θα οδηγηθεί στον ενισχυτή
36
Αισθητήρες Charged Couple Devices (3/3)
Με τον ίδιο τρόπο, το φορτίο του Shift Register μεταβιβάζεται στον ενισχυτή, ο οποίος παράγει ηλεκτρικό ρεύμα ανάλογο με την τάση του αριθμού ηλεκτρονίων που λαμβάνει: Η έξοδος του ενισχυτή είναι μια γραμμή – προς – γραμμή αναλογική κυματομορφή η οποία συνήθως έχει προκαθορισμένη μορφή (NTSC: 525 γραμμές/πλαίσιο , 30 πλαίσια/sec, RS-170). Τα τηλεοπτικά σήματα συνήθως ακολουθούν την NTSC Οι ψηφιακές εικόνες που δημιουργούνται από εργαστηριακές κάμερες και κάμερες ασφαλείας είναι συνήθως της μορφής RS-170 Για να μπορεί να τύχει επεξεργασίας από υπολογιστή, η αναλογική εικόνα πρέπει να μετατραπεί σε ψηφιακό σήμα από μια συσκευή ADC – Analog to Digital Converter
37
Μετατροπέας Αναλογικού σε Ψηφιακού (Analog to Digital Converter – ADC)
Διεξάγει Δειγματοληψία και Κβαντοποίηση για να μετατρέψει μια συνεχής κυματομορφή τάσης σε διακριτές τιμές σημαντική η Συχνότητα Δειγματοληψίας και το Διάστημα Κβαντοποίησης Οι κάρτες ψηφιοποίησης βίντεο (video digitizer board) συνήθως μπορούν να ενωθούν με την βιντεοκάμερα Οι νέες «εντελώς ψηφιακές» κάμερες περιλαμβάνουν ενσωματωμένο ADC
38
Εικόνα Από Δειγματοληψία (1/4)
Τα αποτελέσματα τα οποία προκύπτουν από τη δειγματοληψία αποθηκεύονται ως πίνακες από τιμές. Κάθε τιμή αντιπροσωπεύει τη φωτεινότητα της εικόνας στο συγκεκριμένο σημείο. Δίπλα απεικονίζεται ένας 10x10 πίνακας εικόνας Κάθε ένα από τα κελιά του πίνακα ονομάζεται εικονοστοιχείο – (“pixel” από τις λέξεις «picture element») Στην ΨΕΕ συνήθως χρησιμοποιούμε τετραγωνικούς πίνακες NxN με διαστάσεις δύναμη του 2 (N=2M) - είναι πιο εύκολοι στον χειρισμό και μερικοί αλγόριθμοι είναι αποδοτικότεροι για τέτοιες διαστάσεις M=7 27 x 27 = 128 x 128 σύνολο: 214 =16384 pixels M= x 210 = 1024 x 1024 σύνολο: 220 = pixels
39
Εικόνα Από Δειγματοληψία (2/4)
Η δειγματοληψία πρέπει να είναι επαρκώς πυκνή αλλιώς: μεγάλη απώλεια πληροφορίας μεγάλη αλλοίωση της εικόνας Παρακάτω απεικονίζονται οι προκύπτουσες ψηφιακές εικόνες με δειγματοληψία σε τρεις διαφορετικές συχνότητες – 600, 200 και 75 DPI) 600 DPI 200 DPI 75 DPI Ποιά είναι κατάλληλη συχνότητα δειγματοληψίας; Θεώρημα Δειγματοληψίας του Nyquist (Nyquist Sampling Theorem) Παρόμοια, το διάστημα κβαντοποίησης πρέπει να είναι αρκετά μικρό
40
Εικόνα Από Δειγματοληψία (3/4)
Κβαντοποίηση: η φωτεινότητα κάθε pixel παίρνει μια τιμή από ένα πεπερασμένο σύνολο K αριθμών (συνήθως ακεραίων, από 0 έως K-1) Τυπικά, το πλήθος επιπέδων φωτεινότητας είναι δύναμη του 2: K=2Β Άρα με B bits μπορούμε να κρατάμε την φωτεινότητά σε κάθε pixel Στις εικόνες τόνων γκρίζου συνήθως B=8, άρα έχουμε 256 πιθανά επίπεδα φωτεινότητας (τιμές 0 έως 255) με 8 bit ανά pixel Όπως και με την συχνότητα δειγματοληψίας, οι τιμές φωτεινότητας της εικόνας θα πρέπει να κβαντοποιηθούν επαρκώς πυκνά (μικρό διάστημα κβαντοποίησης) ώστε να μην χαθεί σημαντική πληροφορία φωτεινότητας 8-Bit Κβαντοποίηση 5-Bit Κβαντοποίηση 3-Bit Κβαντοποίηση
41
Εικόνα Από Δειγματοληψία (4/4)
Αναπαράσταση εικόνας ως σύνολο επιπέδων bits =
42
Η Επανάσταση Της Ψηφιακής Εικόνας (1/4)
Χώρος που απαιτείται για αποθήκευση ψηφιακής εικόνας: Ανάλυση εικόνας H x W pixels (Height, Width) B bits για αποθήκευση της φωτεινότητας σε κάθε pixel Χώρος = H x W x B (σε bits) Για εικόνες τόνων γκρίζου, συνήθως: Οι διαστάσεις είναι H = W = 2M, Μ = 9 (512 x 512 pixels) B = 8 (256 επίπεδα φωτεινότητας γκρίζου) Χώρος = B x 2M x 2M = 8 x 218 = bits = 0.4 Mbytes Για βίντεο, συνήθως έχουμε 30 πλαίσια (καρέ εικόνας) να μεταδίδονται ανά δευτερόλεπτο. Χρησιμοποιώντας μια τεχνική για μείωση των αναγκών σε bandwidth (Πεπλεγμένη Σάρωση 2:1 - Interlaced Scanning 2:1), μια κινούμενη γκρι εικόνα με τις παραπάνω διαστάσεις και επίπεδα φωτεινότητας απαιτεί περίπου 7.5 Mbytes για 1 δευτερόλεπτο βίντεο Για μια έγχρωμη ταινία 2 ωρών χρειάζονται περίπου Mbytes. Η ποσότητα αυτή είναι υπερβολική. Για αυτό χρειάζονται τεχνικές μείωσης των αναγκών σε αποθηκευτικό χώρο και bandwidth Συμπίεση (θα τη δούμε σε άλλα κεφάλαια)
43
Η Επανάσταση Της Ψηφιακής Εικόνας (2/4)
Τα συστήματα ΨΕΕ κατά κανόνα χρησιμοποιούν Καρτεσιανή (ορθογώνια) δειγματοληψία. Δηλαδή οι εικόνες αναπαριστούνται ως πίνακες με σειρές και στήλες. Τα pixels δεικτοδοτούνται με βάση τον αριθμό στήλης και γραμμής όπου βρίσκονται Γιατί; Για απλοποίηση των αλγορίθμων Εντούτοις, η «δειγματοληψία» στον αμφιβληστροειδή χιτώνα του ανθρώπινου ματιού προσεγγίζεται περισσότερο από εξαγωνική δειγματοληψία, όπου τα pixels είναι πιο συμπαγή μεταξύ τους Εξαγωνικές εικόνες μπορούν επίσης να αναπαρασταθούν ως πίνακες με σειρές και στήλες, αλλά οι άξονες δεν είναι ορθογώνιοι Οι εξαγωνικές εικόνες έχουν πλεονεκτήματα: Δεν υπάρχει αμφιλεγόμενη διασύνδεση (θα το δούμε στην επόμενη διαφάνεια) Είναι ευκολότερη η υλοποίηση κυκλικά συμμετρικών τελεστών
44
Η Επανάσταση Της Ψηφιακής Εικόνας (3/4)
Παράδοξα Σύνδεσης (Connectivity Paradoxes) Σύνδεση: αφορά τον τρόπο με τον οποίο αποφασίζουμε κατά πόσον ένα pixel είναι ενωμένο με κάποιο άλλο. Τα Παράδοξα Σύνδεσης συχνά συγχύζουν αλγόριθμους οι οποίοι χρησιμοποιούν περιγράμματα. Πως αποφασίζουμε αν ένα pixel είναι ενωμένο με κάποια άλλα; Δύο τρόποι: 4 – Connectivity: το pixel συνδέεται μόνο με τα 4 γειτονικά του pixel πάνω, κάτω, αριστερά και δεξιά. 8 – Connectivity: το pixel συνδέεται με τα 8 γειτονικά pixel που το περιτριγυρίζουν.
45
Η Επανάσταση Της Ψηφιακής Εικόνας (4/4)
Προβλήματα που Δημιουργούνται: Ας υποθέσουμε ότι θέλουμε να διεξάγουμε κάποια λειτουργία στον διπλανό κύκλο βασιζόμενοι στο περίγραμμά του. Χρησιμοποιώντας 4 – Connectivity: Η λειτουργία θα θεωρήσει τον κύκλο ως 4 ασύνδετα τμήματα Χρησιμοποιώντας 8 – Connectivity: Τα μπλε pixels θεωρούνται συνδεδεμένα, όμως το ίδιο και τα άσπρα: επικάλυψη μεταξύ συνδεδεμένων τμημάτων ! Πιθανή λύση: 4-Connectivity στο φόντο, 8-Connectivity στον κύκλο Η εξαγωνική δειγματοληψία δεν υποφέρει από τέτοιου είδους ασάφειες: 4-Connectivity 8-Connectivity
46
Χρώμα Μια έγχρωμη εικόνα αναπαρίσταται ως διάνυσμα τιμών. Σε κάθε pixel έχουμε τρεις τιμές φωτεινότητας: Κόκκινο, Πράσινο και Μπλε. Αυτό συνήθως εκφράζεται ως τρεις διαφορετικές εικόνες: μια για το Κόκκινο, μια για το Πράσινο και μια για το Μπλε χρώμα. Η αναπαράσταση αυτή ονομάζεται RGB. Υπάρχουν και άλλες, όπως η HSL και η CMYK. = + Έγχρωμη Εικόνα Μπλε Εικόνα Πράσινη Εικόνα Κόκκινη Εικόνα (Στις παραπάνω τρεις εικόνες το λευκό χρώμα είναι ψηλή φωτεινότητα, και το μαύρο χαμηλή) Συνήθως επεξεργαζόμαστε την εικόνα συνολικής φωτεινότητας (intensity image) I = R + G + B. Οι περισσότεροι αλγόριθμοι οι οποίοι χρησιμοποιούν χρώμα, επεξεργάζονται τις RGB εικόνες ξεχωριστά ως εικόνες τόνων γκρίζου και έπειτα τις προσθέτουν για να πάρουν το τελικό αποτέλεσμα.
47
Κάρτες Συλλογής Πλαισίων (Frame Grab Boards)
Υπάρχουν κάρτες συλλογής πλαισίων για μικρούς και μεγάλους υπολογιστές και για διαφορετικά περιβάλλοντα εργασίας Κάρτες με FIFO Buffers – συνήθως 1 μέχρι 8 Kb μνήμη Με ενσωματωμένη μνήμη – αρκετά Megabytes (Matrox Meteor II: 4MB SGRAM) Τέτοιες κάρτες συνήθως υποστηρίζουν: Είσοδο βίντεο RS-170 Συνεχής ψηφιοποίηση εικόνας στα 30 πλαίσια ανά δευτερόλεπτο Επαναδιαμόρφωση ψηφιακού βίντεο για προβολή σε οθόνη Αποθήκευση εικόνων σε ενσωματωμένη στην συσκευή μνήμη (on-board memory) Διεξαγωγή ορισμένων βασικών λειτουργιών επεξεργασίας εικόνας Μερικές εταιρείες: Matrox ( Imaging Technology, Inc. Datacube Data Translation
48
Αναπαράσταση Και Αποθήκευση Ψηφιακής Εικόνας (1/4)
Όπως είπαμε, μια εικόνα αποθηκεύεται συνήθως ως ένας πίνακας από ακέραιους αριθμούς Χρήση πινάκων για αναπαράσταση ψηφιακής εικόνας Έστω τετραγωνικός πίνακας εικόνας I = [ I(i, j); 0 ≤ i, j ≤ N-1 ] Ο δείκτης i αντιπροσωπεύει αριθμό γραμμής στον πίνακα Ο δείκτης j αντιπροσωπεύει αριθμό στήλης στον πίνακα Αυτό είναι σε αντίθεση με την συνήθη σημειογραφία των μαθηματικών, όπου χρησιμοποιούμε συνήθως την σύμβαση I(x,y), με το x να υποδηλώνει τον αριθμό στήλης και το y να υποδηλώνει τον αριθμό γραμμής. Το I(i,j) αντιπροσωπεύει την τιμή του pixel στην γραμμή i, στήλη j
49
Αναπαράσταση Και Αποθήκευση Ψηφιακής Εικόνας (2/4)
I = Μορφή Πίνακα Εικόνας Διαστάσεων NxN Πίνακας Εικόνας Διαστάσεων NxN με Τιμές Pixel
50
Αναπαράσταση Και Αποθήκευση Ψηφιακής Εικόνας (3/4)
Ο αριθμός των Bits ανά pixel ο οποίος χρησιμοποιείται καθορίζει το πλήθος χρωμάτων (ή φωτεινότητας) τα οποία μπορεί να πάρει. 4 bits: εικόνες 16 χρωμάτων 8 bits: εικόνες 256 χρωμάτων ή εικόνες τόνων γκρίζου 16, 24, 32 bits: εικόνες πραγματικού χρώματος κλπ 2 bits ανά pixel: δυαδικές εικόνες (binary images) Περιέχουν μόνο δύο χρώματα (συνήθως άσπρο και μαύρο) Θα μας απασχολήσουν περισσότερο στο κεφάλαιο 2.
51
Αναπαράσταση Και Αποθήκευση Ψηφιακής Εικόνας (4/4)
Μορφή πίνακα δυαδικής εικόνας (δεξιά) Εναλλακτικός τρόπος απεικόνισης πίνακα δυαδικής εικόνας (αριστερά)
52
Παρατηρήσεις Οι εικόνες φωτεινότητας τόνων γκρίζου (grey-level images) τυγχάνουν χειρισμού ως πίνακες ακεραίων στους οποίους διεξάγονται αριθμητικές λειτουργίες Οι δυαδικές εικόνες τυγχάνουν χειρισμού (συνήθως) ως λογικοί πίνακες πάνω στους οποίους εφαρμόζονται λογικοί τελεστές και λειτουργίες Στις σημειώσεις του μαθήματος ακολουθείται η σύμβαση: Λογική τιμή 1 = Μαύρο Λογική τιμή 0 = Άσπρο Στο MATLAB και στις πλείστες εφαρμογές ΨΕΕ χρησιμοποιείται το ανάποδο: 1 = Άσπρο, 0 = Μαύρο. Αυτό μπορεί να αλλάξει με την κατάλληλη εντολή
53
Τέλος Πρώτου Κεφαλαίου
Εισαγωγή Τύποι Εικόνων Γεωμετρία Απεικόνισης Όργανα Απεικόνισης Απόκτηση Εικόνας Αναπαράσταση Εικόνας
54
ΕΠΛ 445 – Ψηφιακή Επεξεργασία Εικόνας
Κεφάλαιο 2 Εισαγωγή
55
Δυαδική Επεξεργασία Εικόνας
Κεφάλαιο 2 Δυαδική Επεξεργασία Εικόνας Δημιουργία Δυαδικών Εικόνων Λογικές Λειτουργίες Χρωματισμός Μερών Δυαδική Μορφολογία Συμπίεση Δυαδικής Εικόνας
56
Δυαδικές Εικόνες (1/4) Μια ψηφιακή εικόνα είναι ένας πίνακας από αριθμούς: δείγματα από τη φωτεινότητα της εικόνας Κάθε επίπεδο φωτεινότητας κβαντοποιείται: του δίνεται ένας αριθμός από κάποιο πεπερασμένο σύνολο αριθμών (γενικά ακέραιοι αριθμοί με δείκτες από 0 μέχρι K-1)
57
Δυαδικές Εικόνες (2/4) Πίνακας εικόνας 10 x 10 γκρι-επιπέδων φωτεινότητας
58
Δυαδικές Εικόνες (3/4) Υπάρχουν K = 2^Β πιθανά επίπεδα φωτεινότητας
Κάθε στίγμα αντιπροσωπεύεται από B bits Οι δυαδικές εικόνες έχουν B = 1 Μια 10 x 10 δυαδική εικόνα
59
Δυαδικές Εικόνες (4/4) Πως εμφανίζονται οι δυαδικές εικόνες;
Δυαδικό = δύο-τιμές ‘1’ = μαύρο ‘0’ = άσπρο Οι λογικές τιμές 0 ή 1 συνήθως δείχνουν την απουσία ή την παρουσία σε κάποιο χαρακτηριστικό της εικόνας σε μια εικόνα γκρι-επιπέδων φωτεινότητας: Σημεία από υψηλή ή χαμηλή ένταση Σημεία όπου ένα αντικείμενο είναι παρόν ή απόν Αφηρημένα χαρακτηριστικά όπως ομαλότητα σε αντίθεση με μη ομαλότητα
60
Δημιουργία Δυαδικών Εικόνων (1/2)
Είσοδος με Βάση Πινακίδα Οι δυαδικές εικόνες μπορούν να παραχθούν από ένα απλό όργανο αίσθησης με δυαδική έξοδο Απλούστερο παράδειγμα: πινακίδα, resistive pad με πέννα φωτός Όλα τα στίγματα αρχικά παίρνουν την τιμή ‘0’ I = [I(i, j)], I(i, j) = '0' για όλα (i, j) = (γραμμές,στήλες)
61
Δημιουργία Δυαδικών Εικόνων (2/2)
Όταν πίεση η φως πέφτει πάνω στο (i0, j0), η εικόνα παίρνει την τιμή '1': I(i0, j0) = ‘1’ Αυτό συνεχίζεται μέχρι ο χρήστης τελειώσει το σχέδιο Χρήσιμο για σχέδια μηχανικών, καταχώρηση χειρόγραφων χαρακτήρων, κλπ.
62
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (1/24)
Συνήθως μια δυαδική εικόνα δημιουργείται από μια γκρι-επιπέδων εικόνα Πλεονεκτήματα B-fold μείωση στον χώρο αποθήκευσης Απλή αφαιρετικότητα των πληροφοριών Γρήγορη επεξεργασία – λογικές λειτουργίες Μπορεί να συμπιεστεί περισσότερο
63
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (2/24)
Απλή Κατωφλίωση Η απλούστερη λειτουργία στην επεξεργασία εικόνας Μια ακραία μορφή κβαντοποίησης γκρι-επιπέδων φωτεινότητας Ορίζουμε ένα ακέραιο κατώφλι T (στην περιοχή της γκρι-κλίμακας επιπέδων φωτεινότητας) Συγκρίνουμε την ένταση κάθε στίγματος με το T
64
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (3/24)
Ας υποθέσουμε ότι μια γκρι-επιπέδων εικόνα I έχει K γκρι-επίπεδα φωτεινότητας: 0, 1, 2, ...., K-1 Επιλέγουμε το κατώφλι T T ανήκει { 0, 1, 2, ...., K-1} Συγκρίνουμε κάθε επίπεδο φωτεινότητας στην γκρι-επιπέδων εικόνα I με το T
65
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (4/24)
Ορίζουμε μια νέα δυαδική εικόνα J ως ακολούθως J(i, j) = '0' εάν I(i, j) ≥ T J(i, j) = '1' εάν I(i, j) < T Μια νέα δυαδική εικόνα J δημιουργείται από την γκρι-επιπέδων εικόνα I
66
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (5/24)
Επιλογή Κατωφλίου Η ποιότητα της δυαδικής εικόνας J που παίρνουμε από την κατωφλίωση της εικόνας I, εξαρτάτε πάρα πολύ από το κατώφλι T Πραγματικά είναι πολύ χρήσιμο να παρατηρήσουμε τα αποτελέσματα κατωφλίωσης μιας εικόνας σε πολλά διαφορετικά επίπεδα σε σειρά Διαφορετικά κατώφλια μπορούν να δημιουργήσουν διαφορετικές σημαντικές εικόνες αφαιρετικότητας
67
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (6/24)
Μερικές εικόνες δεν δίνουν ενδιαφέροντα αποτέλεσματα όταν κατωφλιώνονται με οποιοδήποτε Τ Επομένως: Πως αποφασίζει κάποιος αν είναι δυνατή η κατωφλίωση; Πως αποφασίζει κάποιος για το κατώφλι Τ; Παράδειγμα κατωφλίωσης στο MATLAB I = imread(‘exampleim.tif’); b = im2bw(I,map,0.4); figure1,imshow(I,map); figure2, imshow(b);
68
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (7/24)
Ιστόγραμμα Γκρι-Επιπέδων Εικόνας Το Ιστόγραμμα HI της εικόνας Ι είναι μια γραφική παράσταση κάθε πεδίου φωτεινότητας στην εικόνα Ι Το HI είναι μια μονοδιάστατη συνάρτηση με πεδίο ορισμού 0, ... , K-1 HI(k) = n αν I περιέχει ακριβώς n φορές το επίπεδο φωτεινότητας k, για κάθε k = 0, ... K-1
69
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (8/24)
Εμφάνιση Ιστογράμματος Η εμφάνιση του ιστογράμματος φανερώνει πολλά στοιχεία για την εικόνα
70
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (9/24)
Παράδειγμα ιστογράμματος σκοτεινής εικόνας
71
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (10/24)
Αυτά μπορεί να είναι τα ιστογράμματα από μια υποφωτισμένη - σκοτεινή και μια υπερφωτισμένη - φωτεινή εικόνα, αντίστοιχα
72
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (11/24)
Αυτό το ιστόγραμμα δείχνει καλύτερη χρήση της περιοχής της γκρι-κλίμακας πεδίων φωτεινότητας
73
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (12/24)
Παράδειγμα ιστογράμματος καλής κατανομής
74
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (13/24)
Ιστόγραμμα Δύο Κατανομών Η κατωφλίωση συνήθως δουλεύει καλύτερα όταν υπάρχουν σκούρα αντικείμενα σε φωτεινό φόντο Ή όταν υπάρχουν φωτεινά αντικείμενα σε ένα σκοτεινό φόντο Οι εικόνες αυτού του τύπου τείνουν να έχουν ιστογράμματα με πολλές διακριτές κορυφές Αν οι κορυφές είναι καλά χωρισμένες, η επιλογή του κατωφλίου είναι εύκολη
75
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (14/24)
76
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (15/24)
Παράδειγμα ιστογράμματος κακώς διαχωρισμένου
77
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (16/24)
Το κατώφλι T καθορίζεται κάπου μεταξύ των κορυφών. Μπορεί να είναι μια διαδικασία προσπάθειας και λάθους
78
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (17/24)
Παράδειγμα ιστογράμματος καλά διαχωρισμένου
79
Κατωφλίωση Γκρι-Επιπέδων Φωτεινότητας (18/24)
Επιλογή Κατωφλίου από το Ιστόγραμμα Τοποθετώντας το κατώφλι T μεταξύ κορυφών μπορεί να οδηγήσει σε επιθυμητά αποτελέσματα Ακριβώς που μεταξύ μπορεί να είναι δύσκολο να βρεθεί
80
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (19/24)
Ένα ιστόγραμμα εικόνας μπορεί να περιέχει πολλές κορυφές. Τοποθετώντας το κατώφλι σε διαφορετικά σημεία δημιουργεί πολύ διαφορετικά αποτελέσματα.
81
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (20/24)
Το ιστόγραμμα μπορεί να είναι ‘επίπεδο’ κάνοντας την επιλογή κατωφλίου δύσκολη
82
Κατωφλίωση Γκρι-Επιπέδων Φωτεινότητας (21/24)
Συζήτηση για τους τύπους Ιστογράμματος Θα επιστρέψουμε στο ιστόγραμμα μετά, μέσα στα πλαίσια των ποσοτικών ιδιοτήτων των γκρι-πεδίων φωτεινότητας. Τα ιστογράμματα που περιέχουν δύο κατανομές συχνά δείχνουν αντικείμενα σε φόντο με σημαντική διαφορά στην μέση φωτεινότητα. Τα ιστογράμματα που περιέχουν δύο περιοχές κατανομών κατωφλιώνονται πολύ εύκολα.
83
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (22/24)
Το αποτέλεσμα της κατωφλίωσης ενός ιστογράμματος που περιέχει δύο κατανομές είναι ιδανικά, μια απλή δυαδική εικόνα που δείχνει τον διαχωρισμό του αντικειμένου με το φόντο Παράδειγμα εικόνες από: Εκτυπωτή Κύτταρα αίματος σε διάλυμα Μηχανικά εργαλεία σε μια γραμμή συναρμολόγησης
84
Κατωφλίωση Γκρι-Επιπέδων Φωτεινότητας (23/24)
Τα ιστογράμματα με πολλές περιοχές διαφορετικών κατανομών δημιουργούνται συχνά όταν η εικόνα περιέχει διαφορετικά αντικείμενα από διαφορετικούς μέσους όρους φωτεινότητας σε ένα ομογενές φόντο. Τα επίπεδα ιστογράμματα συνήθως δηλώνουν πιο πολύπλοκες εικόνες, περιέχοντας λεπτομέρειες, με μη-ομοιογενές φόντο, κ.λ.π
85
Κατωφλίωση Γκρι-επιπέδων Φωτεινότητας (24/24)
Η κατωφλίωση σπάνια δίνει καλά αποτελέσματα. Συνήθως, μερικοί τύποι διόρθωσης μέρους της εικόνας πρέπει να χρησιμοποιηθούν Θα μελετήσουμε τεχνικές διόρθωσης μέρους της εικόνας αργότερα σε αυτό το κεφάλαιο
86
Λογικές Λειτουργίες Σε Δυαδικές Εικόνες
Για τις δυαδικές εικόνες που θα χρησιμοποιήσουμε δεν χρειάζεται να δείξουμε την ψηφιοποίηση τους σε στίγματα.
87
Βασικές Λογικές Λειτουργίες (1/5)
Λογικό Συμπλήρωμα: NOT(X1) = complement of X1 ΠΙΝΑΚΑΣ ΑΛΗΘΕΙΑΣ
88
Βασικές Λογικές Λειτουργίες (2/5)
Λογικό ΚΑΙ: AND (X1, X2) = X1 Λ X2 ΠΙΝΑΚΑΣ ΑΛΗΘΕΙΑΣ
89
Βασικές Λογικές Λειτουργίες (3/5)
Λογικό Ή: OR (X1, X2) = X1 V X2 ΠΙΝΑΚΑΣ ΑΛΗΘΕΙΑΣ
90
Βασικές Λογικές Λειτουργίες (4/5)
Δυαδική Πλειοψηφία: (περιττός # μεταβλητών μόνο) ΠΙΝΑΚΑΣ ΑΛΗΘΕΙΑΣ
91
Βασικές Λογικές Λειτουργίες (5/5)
Ιδιότητες Άλγεβρας Boole: NOT [NOT(X)] = X X1ΛX2ΛX3 = (X1ΛX2)ΛX3 = X1Λ(X2ΛX3) X1VX2VX3 = (X1VX2)VX3 = X1V(X2VX3) X1ΛX2 = X2ΛX1 X1VX2 = X2VX1 (X1ΛX2)VX3 = (X1VX3)Λ(X2VX3) (X1VX2)ΛX3 = (X1ΛX3)V(X2ΛX3) NOT(X1ΛX2) = NOT(X1)VNOT(X2) NOT(X1VX2) = NOT(X1)ΛNOT(X2)
92
Λογικές Λειτουργίες στις Εικόνες (1/9)
Το συμπλήρωμα μιας εικόνας: J1 = NOT( I1), if J1(i, j) = NOT[ I1(i, j) ] for all (i, j) Αυτό αντιστρέφει την αντίθεση - δημιουργεί ένα δυαδικό αρνητικό.
93
Λογικές Λειτουργίες στις Εικόνες (2/9)
Η τομή δυο εικόνων: J2 = AND(I1, I2) = I1 Λ I2, if J2(i, j) = AND[ I1(i, j), I2(i, j) ] for all (i, j) Δείχνει την επικάλυψη των ΜΑΥΡΩΝ περιοχών στις εικόνες I1 και I2.
94
Λογικές Λειτουργίες στις Εικόνες (3/9)
Η ένωση δυο εικόνων: J3 = OR(I1, I2) = I1 V I2, if J3(i, j) = OR[ I1(i, j), I2(i, j) ] for all (i, j) Δείχνει την επικάλυψη των ΛΕΥΚΩΝ περιοχών στις εικόνες I1 και I2.
95
Λογικές Λειτουργίες στις Εικόνες (4/9)
Παράδειγμα: Μια γραμμή-συναρμολόγησης ελεγχόμενη από σύστημα εικόνας. Παρόμοιο με πολλά συστήματα της βιομηχανίας
96
Λογικές Λειτουργίες στις Εικόνες (5/9)
Στόχος: Αριθμητική σύγκριση της αποθηκευμένης εικόνας Imodel και της εικόνας λήψης I. Παρατηρούμε ότι το αντικείμενο στην εικόνα I έχει μετακινηθεί πολύ λίγο.
97
Λογικές Λειτουργίες στις Εικόνες (6/9)
Λογικό ΚΑΙ: Όπως φαίνεται και στο πιο κάτω σχήμα το λογικό ΚΑΙ θα μας δώσει την επικάλυψη:
98
Λογικές Λειτουργίες στις Εικόνες (7/9)
Μια μέτρηση της μετακίνησης δίνεται από το exclusive or (XOR). XOR(I,Imodel)= OR{AND[Imodel,NOT(I)],AND[NOT(Imodel), I ]}
99
Λογικές Λειτουργίες στις Εικόνες (8/9)
XOR(I, Imodel) Το XOR δείχνει που είναι το λάθος της μετακίνησης.
100
Λογικές Λειτουργίες στις Εικόνες (9/9)
Για να αποφασίσουμε κατά πόσο υπάρχει πρόβλημα, ή ελάττωμα, έχουμε το λόγο ή την ποσοστιαία αναλογία: PERCENT = [#μαύρων στιγμάτων XOR(I, Imodel)] / [#άσπρων στιγμάτων Imodel] Αυτό το ποσοστό μπορεί να συγκριθεί με μια προ-υπολογισμένη ανοχή, έστω P, στο σφάλμα της εκατοστιαίας αναλογίας. Αν Percent > P, τότε το εξάρτημα μπορεί είτε να είναι ελαττωματικό, είτε λανθασμένα τοποθετημένο.
101
Blob Coloring Χρωματισμός Μερών
Είναι μια απλή τεχνική για ταξινόμηση κάποιας περιοχής της εικόνας, καθώς επίσης και διόρθωσης της. Κίνητρο: Η κατωφλίωση εικόνων γκρι δημιουργεί συνήθως μια ατελή δυαδική εικόνα, όπου υπάρχουν: Άσχετα μέρη ή οπές λόγο θορύβου. Άσχετα μέρη από κατωφλίωση αντικειμένων μικρού ενδιαφέροντος. Μη ομαλή ανάκλαση επιφάνειας αντικειμένου.
102
Χρωματισμός Μερών Συνήθως είναι επιθυμητό να εξάγουμε ένα μικρό
αριθμό αντικειμένων ή ένα μόνο αντικείμενο μετά την κατωφλίωση.
103
Χρωματισμός Μερών (1/2) Αλγόριθμος: Έστω δυαδική εικόνα Ι.
Ορίζουμε σαν μια έγχρωμη περιοχή, τον πίνακα R: R(i, j) = αριθμός περιοχής από στίγματα I(i, j) Αρχικά θέτουμε R = 0 και k = 1, όπου k = μετρητής αριθμού περιοχής Στη συνέχεια θα σαρώσουμε την εικόνα μας από αριστερά προς δεξιά και από πάνω προς τα κάτω, και θα υπολογίσουμε τα εξής:
104
Ενημέρωση ολων των περιοχών που είναι ισοδύναμες
Χρωματισμός Μερών (2/2) if I(i, j) = 1 and I(i, j-1) = 0 and I(i-1, j) = 0 then set R(i, j) = k and k = k + 1; if I(i, j) = 1 and I(i, j-1) = 0 and I(i-1, j) = 1 then set R(i, j) = R(i-1, j); if I(i, j) = 1 and I(i, j-1) = 1 and I(i-1, j) = 0 then set R(i, j) = R(i, j-1); if I(i, j) = 1 and I(i, j-1) = 1 and I(i-1, j) = 1 if R(i, j-1) ≠ R(i-1, j) then set R(i, j-1), R(i-1, j) as equals Ενημέρωση ολων των περιοχών που είναι ισοδύναμες
105
Χρωματισμός Μερών Παράδειγμα
Από το παράδειγμα αυτό βλέπουμε ότι το χρώμα του μεγαλύτερου μέρους είναι το 2.
106
Αφαίρεση ασήμαντων περιοχών (1/5)
Θέτουμε m = "χρώμα" της μεγαλύτερης περιοχής Ενώ σαρώνουμε την εικόνα από αριστερά προς δεξιά και από πάνω προς τα κάτω υπολογίζουμε if I( i, j) = 1 and R( i, j) ≠ m then set I( i, j) = 0;
107
Αφαίρεση ασήμαντων περιοχών (2/5)
Μετά από την αφαίρεση των ασήμαντων περιοχών! Η διαδικασία δεν έχει τελειώσει ακόμα! Για να πάρουμε ένα συνεκτικό, συνδεδεμένο αντικείμενο επαναλαμβάνουμε την διαδικασία στα ΛΕΥΚΑ στίγματα.
108
Αφαίρεση ασήμαντων περιοχών (3/5)
Υπολογίζουμε το συμπλήρωμα του τελευταίου αποτελέσματος συμπλήρωμα
109
Αφαίρεση ασήμαντων περιοχών (4/5)
Τότε επαναλαμβάνουμε όλα τα ίδια βήματα: ‘Χρώμα’ του μεγαλύτερου μέρους: 1
110
Αφαίρεση ασήμαντων περιοχών (5/5)
Συμπλήρωμα Απλό και αποτελεσματικό, αλλά δεν τα διορθώνει όλα!
111
Δυαδική Μορφολογία (1/2)
Η πιο δυνατή τάξη από δυαδικές λειτουργίες εικόνων ονομάζεται μαθηματική μορφολογία Οι μορφολογικές λειτουργίες επηρεάζουν το σχήμα των αντικειμένων και περιοχών στις δυαδικές εικόνες. Όλη η επεξεργασία γίνεται σε τοπική βάση, δηλαδή περιοχές η μορφές αντικειμένων επηρεάζονται με τοπικό τρόπο.
112
Δυαδική Μορφολογία (2/2)
Δυαδική Μορφολογία (2/2) Μορφολογικές λειτουργίες: Μεγέθυνση - Διαστολή αντικειμένων (Dilate) Σμίκρυνση – Συστολή αντικειμένων (Erode) Ομαλοποίηση ορίων αντικειμένων και περιορισμός μικρών περιοχών η οπών Γέμισμα κενών και περιορισμός ‘χερσονήσων’ Όλα κατορθώνονται χρησιμοποιώντας τοπικές λογικές λειτουργίες!
113
Δομικά Στοιχεία ή Παράθυρα Structuring Elements or Windows
Ένα δομικό στοιχείο είναι μια γεωμετρική συσχέτιση μεταξύ στιγμάτων. Μερικά παραδείγματα δομικών στοιχείων:
114
Δυαδική Μορφολογία Δομικά Στοιχεία ή Παράθυρα
Δυαδική Μορφολογία Δομικά Στοιχεία ή Παράθυρα Οι μορφολογικές λειτουργίες ορίζονται από την μετακίνηση ενός παραθύρου πάνω στη συγκεκριμένη εικόνα, με τέτοιο τρόπο ώστε το παράθυρο να κεντράρεται πάνω σε κάθε ένα από τα στίγματα της Συνήθως αυτό γίνεται σειρά προς σειρά, στήλη προς στήλη Το δομικό στοιχείο συχνά αναφέρεται ως κινητό παράθυρο.
115
Δυαδική Μορφολογία Δομικά Στοιχεία ή Παράθυρα
Δυαδική Μορφολογία Δομικά Στοιχεία ή Παράθυρα Όταν το δομικό στοιχείο κεντραριστεί πάνω σε μια περιοχή της εικόνας, μια λογική λειτουργία εκτελείται στα στίγματα που καλύπτει το δομικό στοιχείο, οδηγώντας σε μια δυαδική έξοδο πάνω στο κεντρικό στίγμα που καλύπτει το παράθυρο Συνήθως τα δομικά στοιχεία ορίζονται να έχουν κυκλικά σχήματα, αφού είναι επιθυμητό ότι αντιδρούν με τον ίδιο τρόπο με ένα αντικείμενο ακόμα και αν το αντικείμενο περιστραφεί.
116
Δομικά Στοιχεία ή Παράθυρα (1/2)
=> => ...
117
Δομικά Στοιχεία ή Παράθυρα (2/2)
=> ... Μετά από κάποια ενδιάμεσα βήματα => => =>
118
Επίσημος Ορισμός Παραθύρων (1/4)
Χρησιμοποιείται επίσης αργότερα για επεξεργασία εικόνων γκρι και βίντεο. Ένα παράθυρο είναι μια γεωμετρική συσχέτιση η οποία δημιουργεί μια σειρά από μικρογραφικές εικόνες καθώς περνά πάνω από την εικόνα διαδοχικά σειρά προς σειρά, στήλη προς στήλη (Ακολουθιακή Υλοποίηση). Στην παράλληλη υλοποίηση, ένας μεγάλος αριθμός από παράθυρα θα καλύπτουν την εικόνα συγχρόνως.
119
Επίσημος Ορισμός Παραθύρων (2/4)
Μερικά τυπικά Μονοδιάστατα Παράθυρα: ROW(2M+1) και COL(2M+1). Αυτά λειτουργούν σε Σειρές και Στήλες Μόνο Ένα παράθυρο θα καλύπτει πάντα ένα περιττό αριθμό στιγμάτων 2M+1, διαγώνια συμμετρικά στίγματα με το κεντρικό στίγμα Οι λειτουργίες φίλτρου ορίζονται συμμετρικά με αυτό τον τρόπο.
120
Επίσημος Ορισμός Παραθύρων (3/4)
Μερικά τυπικά Δυσδιάστατα Παράθυρα:
121
Επίσημος Ορισμός Παραθύρων (4/4)
Τυπικά Δυσδιάστατα Παράθυρα SQUARE(2M+1), CROSS(2M+1), CIRC(2M+1) Αυτά είναι τα πιο κοινά σχήματα παραθύρων . Και πάλι, 2M+1 δείχνει τον περιττό αριθμό στιγμάτων που καλύπτονται από το παράθυρο. Μπορεί να γενικοποιηθεί σε παράθυρα οποιουδήποτε-μεγέθους που να καλύπτει 2M+1 στίγματα.
122
Συμβολισμός Παραθύρων (1/3)
Ένα παράθυρο είναι: Ένας τρόπος συγκέντρωσης τοπικών φωτεινοτήτων εικόνας. Ένα σύνολο από μετακινήσεις συντεταγμένων Bi = (mi, ni) με κέντρο το (0,0): B = {B1, ..., B2M+1} = {(m1, n1),..., (m2M+1,n2M+1)}
123
Συμβολισμός Παραθύρων (2/3)
Παραδείγματα Μονοδιάστατων Παραθύρων Β: B = ROW(2M+1) = {(0, -M), ..., (0, M)} = {(0, n); n = -M ,..., M} π.χ B = ROW(3) = {(0, -1), (0, 0), (0, 1)} B = COL(2M+1) = {(-M, 0), ..., (M, 0)} = {(m, 0); m = -M ,..., M} π.χ B = COL(3) = {(-1, 0), (0, 0), (1, 0)}
124
Συμβολισμός Παραθύρων (3/3)
Παραδείγματα Δυσδιάστατων Παραθύρων Β: B = SQUARE (9) = {(-1, -1) , (-1, 0), (-1, 1), (0, -1) , (0, 0), (0, 1), (1, -1) , (1, 0), (1, 1)} B = CROSS(2M+1) = ROW(2M+1) και COL(2M+1) πχ B = CROSS(5) = { (-1, 0), (0, -1), (0, 0), (0, 1), (1, 0) }
125
Σύνολο Παραθύρων (1/3) Δεδομένης μιας εικόνας Ι και ενός παραθύρου Β ορίζουμε το σύνολο παραθύρων στις συντεταγμένες εικόνας (i, j) ως: B.I( i, j ) = {I( I + m, j + n); όπου (m, n) Î B και ( i, j ) Î [0,n-1] } το οποίο είναι το σύνολο των στιγμάτων εικόνας που καλύπτεται από το παράθυρο όταν έχει κέντρο τις συντεταγμένες (i, j).
126
Σύνολο Παραθύρων (2/3) Παραδείγματα 1D: B = ROW(3):
B˚I( i, j ) = {I( i, j-1 ) , I( i, j ), I( i, j+1 )} B = COL(3): B˚I( i, j ) = {I( i-1, j ) , I( i, j ) , I( i+1, j )}
127
Σύνολο Παραθύρων (3/3) Παραδείγματα 2D: B = SQUARE (9):
B.I( i, j ) = {I( i-1, j-1 ) , I( i-1, j ), I( i-1, j+1 ), I( i, j-1 ) , I( i, j ), I( i, j+1 ), I( i+1, j-1 ) , I( i+1, j ), I( i+1, j+1 )} B = CROSS(5): B.I(i, j) = { I( i-1, j ), I( i, j-1 ), I( i, j ), I( i, j+1 ), I( i+1, j ) }
128
Γενικά Δυαδικά Φίλτρα Δείχνουμε τις δυαδικές λειτουργίες G στο σύνολο παραθύρου B.I( i, j ) ως εξής: J( i, j ) = G {B.I( i, j )} = G{I( I + m, j + n ); όπου (m, n) Î B και ( i, j ) Î [0,n-1] } Εφαρμόζοντας αυτήν σε κάθε στίγμα της εικόνας, δίνει μια φιλτραρισμένη εικόνα J = G[I, B] = [J( i, j ); 0 ≤ i, j ≤ N-1]
129
Επεξεργασία Στα Όρια Της Εικόνας
Το παράθυρο καλύπτει ‘κενό χώρο’ Συνήθως γεμίζουμε τους κενούς χώρους του παραθύρου με την τιμή του κοντινότερου στίγματος της εικόνας. Αυτό λέγεται Επανάληψη.
130
Διαστολή, Συστολή Και Μέση Τιμή
Διαστολή - Καλείται έτσι επειδή αυτή η λειτουργία μεγαλώνει το μέγεθος των ΜΑΥΡΩΝ αντικειμένων στην δυαδική εικόνα. Συστολή - Καλείται έτσι επειδή αυτή η λειτουργία μειώνει το μέγεθος των ΜΑΥΡΩΝ αντικειμένων στην δυαδική εικόνα. Μέση τιμή - Στην πραγματικότητα πλειοψηφία. Μια ειδική περίπτωση του γκρι-επιπέδου μεσαίου φίλτρου. Κατέχει ποιοτικές ιδιότητες και των δυο, της διαστολής και της συστολής, αλλά γενικά δεν αλλάζει το μέγεθος του αντικειμένου η του φόντου.
131
Διαστολή, Συστολή Και Μέση Τιμή
Διαστολή – Δίδεται ένα παράθυρο Β και μια δυαδική εικόνα Ι J1 = DILATE (I, B) αν J1(i, j) = OR {B˚I(i, j)} = OR {I(i-m, j-n); (m, n) B} Συστολή – Δίδεται ένα παράθυρο Β και μια δυαδική εικόνα Ι J2 = ERODE (I, B) αν J2(i, j) = AND {B˚I(i, j)} = AND {I(i-m, j-n); (m, n) B} Μέση τιμή – Δίδεται ένα παράθυρο Β και μια δυαδική εικόνα Ι J3 = MEDIAN (I, B) αν J3(i, j) = MAJ {B˚I(i, j)} = MAJ {I(i-m, j-n); (m, n) B}
132
Διαστολή Παράδειγμα 1.
133
Διαστολή Παράδειγμα 2.
134
Συστολή Παράδειγμα 1.
135
Συστολή Παράδειγμα 2.
136
Μέση Τιμή Παράδειγμα 1. Το φίλτρο μεσαίου αφαίρεσε το μικρό αντικείμενο Α και την μικρή οπή Β, αλλά δεν άλλαξε το όριο (μέγεθος) της μεγαλύτερης περιοχής C.
137
Ποιοτικές Ιδιότητες Διαστολής
1. Αφαιρεί τις πολύ-μικρού μεγέθους οπές του αντικειμένου 2. Η διαστολή επίσης αφαιρεί πολύ-στενά κενά ή κόλπους
138
Ποιοτικές Ιδιότητες Διαστολής
3. Η διαστολή του ΜΑΥΡΟΥ μέρους της εικόνας είναι το ίδιο με την συστολή του ΛΕΥΚΟΥ μέρους!
139
Ποιοτικές Ιδιότητες Συστολής
1. Αφαιρεί αντικείμενα πολύ - μικρού μεγέθους 2. Η συστολή αφαιρεί επίσης πολύ-στενά ‘ακρωτήρια’
140
Ποιοτικές Ιδιότητες Συστολής
3. Η συστολή του ΜΑΥΡΟΥ μέρους της εικόνας είναι το ίδιο με την διαστολή του ΛΕΥΚΟΥ μέρους!
141
Συσχέτιση Συστολής Και Διαστολής
Η συστολή και η διαστολή είναι στην πραγματικότητα η ίδια λειτουργία – έχουν δυική (dual) λειτουργία αναφορικά με το συμπλήρωμα (complementation) Η συστολή και η διαστολή είναι μόνο αντίστροφες κατά προσέγγιση η μια της άλλης Η διαστολή μιας ήδη υπό συστολή εικόνας, πολύ σπάνια οδηγεί στην αρχική εικόνα. Κατ’ ακρίβεια η διαστολή δεν μπορεί να Ξαναδημιουργήσει τις χερσονήσους που αφαίρεσε η συστολή, Ξαναδημιουργεί μικρά αντικείμενα που αφαίρεσε η συστολή.
142
Συσχέτιση Συστολής και Διαστολής
Η συστολή μιας ήδη υπό διαστολή εικόνας πολύ σπάνια οδηγεί στην αρχική εικόνα. Κατ΄ ακρίβεια, η συστολή δεν μπορεί να Αδειάσει οπές που γέμισαν από την διαστολή, Ξαναδημιουργεί κενά η κόλπους που γέμισαν από την διαστολή.
143
Ποιοτικές Ιδιότητες Μέσης τιμής
1. Το φίλτρο μεσαίου αφαιρεί και αντικείμενα και οπές πολύ-μικρού μεγέθους 2. Το φίλτρο μεσαίου αφαιρεί κενά (κόλπους) και χερσονήσους πολύ-στενές
144
Ποιοτικές Ιδιότητες Μέσης τιμής
3. Το φίλτρο μεσαίου γενικά δεν αλλάζει το μέγεθος των αντικειμένων (παρόλο του ότι αλλάζει αυτά) 4. Το φίλτρο μεσαίου είναι η δυική λειτουργία του εαυτού του, αφού MEDIAN [ NOT(I) ] = NOT [ MEDIAN(I) ] 5. Έτσι, το φίλτρο μεσαίου απαλύνει το σχήμα. Μπορούμε επίσης να ορίσουμε και άλλους μηχανισμούς απάλυνσης σχήματος.
145
Άνοιγμα-Κλείσιμο και Κλείσιμο-Άνοιγμα
Πολύ αποτελεσματικοί μηχανισμοί που απαλύνουν εικόνες μπορούν να δημιουργηθούν με την επαναλαμβανόμενη χρησιμοποιήσει των λειτουργιών του Ανοίγματος και του Κλεισίματος. Για μια εικόνα Ι και ένα δομικό στοιχείο Β, ορίζουμε OPEN-CLOS(I, B) = OPEN [CLOSE (I, B), B] CLOS-OPEN(I, B) = CLOSE [OPEN (I, B), B] Αυτές οι λειτουργίες είναι σχετικά όμοιες, όχι όμως μαθηματικά ταυτόσημες.
146
Open-Close and Close-Open
Και οι δυο αφαιρούν πολύ μικρά στοιχεία χωρίς να επηρεάζουν πολύ το μέγεθος Και οι δυο είναι παρόμοιες με το φίλτρου μεσαίου όρου, με εξαίρεση το γεγονός απαλύνουν περισσότερο την εικόνα, (για ένα δεδομένο δομικό στοιχείο Β).
147
Open-Close and Close-Open
Αξιοσημείωτες διαφορές μεταξύ Ανοίγματος-Κλεισίματος και Κλεισίματος-Ανοίγματος Το OPEN-CLOS τείνει να ενώσει γειτονικά αντικείμενα μεταξύ τους Το CLOS-OPEN τείνει να ενώσει γειτονικές οπές μεταξύ τους
148
Open-Close and Close-Open
Παράδειγμα 1.
149
Open-Close and Close-Open
Παράδειγμα 2.
150
Σκελετοποίηση (1/10) Η Σκελετοποίηση αποτελεί ένα τρόπος για να πάρουμε τον μεσαίο άξονα η σκελετό μιας εικόνας. Δεδομένης μίας εικόνας I0 και παραθύρου B, ο σκελετός είναι SKEL(Io, B). Ορίζουμε In = ERODE [· · · ERODE [ERODE(Io, B), B], · · · B ], n διαδοχικές εφαρμογές του ERODE στην I0 με δομικό στοιχείο το B. N = max { n: In ≠ } = empty set Ο μεγαλύτερος αριθμός συστολών πριν την εξαφάνιση της In Sn = In NOT[OPEN(In, B)]
151
Σκελετοποίηση (2/10) Τότε
SKEL(I0, B) = S1 S2 … SN Το αποτέλεσμα είναι ο σκελετός, ή ο μετασχηματισμός μεσαίου άξονα, ή η συνάρτηση «φωτιά λιβαδιού» (prairie – fire transform).
152
Σκελετοποίηση (3/10) Παράδειγμα 1. Εικόνα Ι0: Δομικό Στοιχείο Β :
153
Σκελετοποίηση (4/10) SKEL( I0, B):
154
Σκελετοποίηση (5/10) Τα βήματα της εκτέλεσης: Βήμα 1ο Ι0 S0
NOT[OPEN(I0, B)]
155
Σκελετοποίηση (6/10) Βήμα 2ο Ι1 NOT[OPEN(I1, B)] S1
156
Σκελετοποίηση (7/10) Βήμα 3ο Ι2 NOT[OPEN(I2, B)] S2
157
Σκελετοποίηση (8/10) Βήμα 4ο Ι3 S3 NOT[OPEN(I3, B)]
158
Σκελετοποίηση (9/10) Βήμα 5ο SKEL(I0)=S1S2S3S4
159
Σκελετοποίηση (10/10) Παράδειγμα 2. δυαδική εικόνα
σκελετός (του φόντου)
160
Παράδειγμα εφαρμογής: Μέτρηση εμβαδού κυττάρων (1/3)
Απλά βήματα επεξεργασίας Εύρεση γενικών περιοχών κυττάρων από απλή κατωφλίωση Εφαρμογή τεχνικών διόρθωσης περιοχής Χρωματισμός μερών Αφαίρεση ασήμαντων περιοχών Κλείσιμο-Άνοιγμα Απεικόνιση των ορίων του κυττάρου για επαλήθευση λειτουργίας
161
Παράδειγμα εφαρμογής:Μέτρηση εμβαδού κυττάρων (2/3)
Απλά βήματα επεξεργασίας Υπολογισμός του εμβαδού των κυττάρων στην εικόνα με την μέτρηση των στιγμάτων. Υπολογισμός του πραγματικού εμβαδού χρησιμοποιώντας προβολή Η προηγούμενη χειρονακτική τεχνική μέτρησης χρειάζεται > 1 ώρα για την ανάλυση κάθε κύτταρου της εικόνας
162
Παράδειγμα εφαρμογής:Μέτρηση εμβαδού κυττάρων (3/3)
Ο αλγόριθμος τρέχει σε λιγότερο από ένα δευτερόλεπτο. Χρησιμοποιήθηκε σε > 50,000 εικόνες κύτταρων τα προηγούμενα χρόνια. Δημοσιεύτηκε στο CRC Press’s Image Analysis in Biology ως η τυποποιημένη μέθοδος για την αυτόματη μέτρηση εμβαδού (Automated Area Measurement).
163
Κωδικοποίηση Μήκους διαδρομών (1/7)
Ο αριθμός των bits που χρειάζονται για την αποθήκευση μιας NN δυαδικής εικόνα είναι N2. Σε πολλές περιπτώσεις, αυτό μπορεί να μειωθεί σημαντικά. Η κωδικοποίηση μήκους διαδρομών είναι γενικά αποδοτική όταν οι ΛΕΥΚΕΣ και ΜΑΥΡΕΣ περιοχές δεν είναι μικρές.
164
Κωδικοποίηση Μήκους διαδρομών (2/7)
Πως δουλεύει η κωδικοποίηση μήκους διαδρομών (Run – Length Coding): Οι δυαδικές εικόνες αποθηκεύονται (η μεταφέρονται) γραμμή-προς-γραμμή (σειρά-προς-σειρά).
165
Κωδικοποίηση Μήκους διαδρομών (3/7)
Πώς δουλεύει η κωδικοποίηση μήκους διαδρομών (Συνέχεια) Για κάθε γραμμή της εικόνας, που αριθμείται με m: Αποθηκεύουμε την τιμή του πρώτου στίγματος ('0' η '1') στην σειρά m για αναφορά Θέτουμε τον μετρητή c = 1 Για κάθε στίγμα στην εικόνα: Εξετάζουμε το επόμενο στίγμα στα δεξιά Αν είναι το ίδιο με το τρέχον στίγμα, θέτουμε c = c + 1 Αν είναι διαφορετικό με το τρέχον στίγμα, αποθηκεύουμε το c και θέτουμε c = 1 Συνεχίζουμε μέχρι να φτάσουμε το τέλος της γραμμής
166
Κωδικοποίηση Μήκους διαδρομών (4/7)
Κάθε μήκος-διαδρομών αποθηκεύεται χρησιμοποιώντας b bits. Παράδειγμα 1. ‘1’ 7 5 8 3 1
167
Κωδικοποίηση Μήκους διαδρομών (5/7)
Σχόλια για την κωδικοποίηση μήκους διαδρομών Σε μερικές εικόνες μπορεί να δώσει εξαιρετική συμπίεση χωρίς απώλειες πληροφοριών. Αυτό θα συμβεί αν η εικόνα περιέχει πολλές διαδρομές του 1's και 0's.
168
Κωδικοποίηση Μήκους διαδρομών (6/7)
Αν η εικόνα περιέχει μόνο πολύ μικρές διαδρομές, τότε ο κώδικας μήκους-διαδρομών μπορεί να μεγαλώσει τον χώρο αποθήκευσης. Παράδειγμα 2. ‘1’ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
169
Κωδικοποίηση Μήκους διαδρομών (7/7)
Σε αυτή την χειρότερη περίπτωση η αποθήκευση πολλαπλασιάζεται με τον αριθμό b. Κανόνας: Ο μέσος όρος μήκους διαδρόμων L πρέπει να ικανοποιεί την σχέση: L > b.
170
Αντιπροσώπευση Περιγράμματος Και Κώδικας Αλυσίδας (1/3)
Μπορούμε να διαχωρίσουμε δυο γενικούς τύπους διάδικων εικόνων: εικόνες περιοχών εικόνες περιγραμμάτων Εικόνα Περιοχών Εικόνα Περιγραμμάτων
171
Αντιπροσώπευση Περιγράμματος Και Κώδικας Αλυσίδας (2/3)
Για τις εικόνες περιγραμμάτων απαιτούμε ειδικότερα: Κάθε ΜΑΥΡΟ στίγμα στην εικόνα περιγράμματος πρέπει να έχει το πολύ δυο ΜΑΥΡΑ από τα 8 – γειτονικά στίγματα Ένα ΜΑΥΡΟ στίγμα και 8 - γείτονες
172
Αντιπροσώπευση Περιγράμματος Και Κώδικας Αλυσίδας (3/3)
Μία εικόνα περιγράμματος περιέχει μόνο ευθείες και καμπύλες που έχουν πλάτος ένα στίγμα ή και απλά σημεία ενός στίγματος.
173
Κώδικας Αλυσίδας (1/7) Ο κώδικας αλυσίδας είναι μια μέθοδος κωδικοποίησης περιγράμματος υψηλής απόδοσης. Παρατηρείστε ότι αν οι αρχικές συντεταγμένες (i, j) ενός 8-συνδεδεμένου περιγράμματος είναι γνωστές, τότε τα υπόλοιπα στοιχεία του περιγράμματος μπορούν να κωδικοποιηθούν δίνοντας τις κατευθύνσεις στην οποία το περίγραμμα διαδίδεται.
174
Κώδικας Αλυσίδας (2/7) Παράδειγμα 1. Περίγραμμα Αρχικό σημείο και
Κατευθύνσεις
175
Κώδικας Αλυσίδας (3/7) Για το σκοπό αυτό, χρησιμοποιούμε την ακόλουθη κωδικοποίηση 8-κατευθύνσεων.
176
Κώδικας Αλυσίδας (4/7) Δεδομένου ότι οι αριθμοί , 1, 2, 3, 4, 5, 6, 7 μπορούν να κωδικοποιηθούν με τα δυαδικά ισοδύναμα τους των 3-bit : 000, 001, 010, 011, 100, 101, 110, 111, η τοποθεσία κάθε σημείου σε ένα περίγραμμα μετά το αρχικό σημείο μπορεί να κωδικοποιηθεί με 3 bits.
177
Κώδικας Αλυσίδας (5/7) Παράδειγμα 1.
178
Κώδικας Αλυσίδας (6/7) Ο κώδικας αλυσίδας για το παράδειγμα (μετά την καταγραφή των αρχικών συντεταγμένων (i0, j0): Στο δεκαδικό: 1, 0, 1, 1, 1, 1, 3, 3, 3, 4, 4, 5, 4 Στο δυαδικό: 001, 000, 001, 001, 001, 001, 011, 011, 011, 100, 100, 101, 100 Η συμπίεση που έχουμε είναι σημαντική: κωδικοποίηση του περιγράμματος από M-bit συντεταγμένες (M = 9 για 512 x 512 εικόνες) χρειάζεται 6 φορές την αρχική μνήμη.
179
Κώδικας Αλυσίδας (7/7) Για κλειστά περιγράμματα, οι αρχικές συντεταγμένες μπορούν να επιλεχθούν τυχαία. Αν το περίγραμμα είναι ανοικτό, τότε συνήθως είναι ένα τελικό σημείο (ενός γείτονα στο σύστημα 8 – κατευθύνσεων. Η τεχνική αυτή είναι αποτελεσματική σε πολλές εφαρμογές μηχανικής όρασης και ανάγνωσης προτύπων π.χ. ανάγνωση χαρακτήρων.
180
Κεφάλαιο 3 ΕΠΛ 445 – Ψηφιακή Επεξεργασία Εικόνας
Ιστόγραμμα Εικόνας και Λειτουργίες Σημείου
181
Λειτουργίες Διανυσμάτων Και Πινάκων (1/4)
Το διάνυσμα είναι ένας μονοδιάστατος πίνακας. Τα διανύσματα θα θεωρούνται ότι είναι στήλες διανυσμάτων (N x 1). Για παράδειγμα, το μοναδιαίο διάνυσμα είναι: e = (N x 1)
182
Λειτουργίες Διανυσμάτων Και Πινάκων (2/4)
Η ανάστροφος (transpose) είναι μια σειρά διανυσμάτων (1 x N), και δεικνύετε : = Μια δυαδική εικόνα είναι ένας πίνακας η μήτρα από ακέραιους αριθμούς Δεικνύουμε ένα (τετραγωνικό) πίνακα εικόνας I = [I(i, j); 0 ≤ i, j ≤ N-1]
183
Λειτουργίες Διανυσμάτων Και Πινάκων (3/4)
I = Ο ανάστροφος (transpose) του πίνακα δεικνύετε IT =
184
Λειτουργίες Διανυσμάτων Και Πινάκων (4/4)
Οι σειρές της IT είναι οι στήλες της I και οι στήλες της IT είναι οι στήλες της I. Σημειώστε ότι [IT]T = I. Ένας συμμετρικός πίνακας ικανοποιεί την σχέση IT = I.
185
Βασική Άλγεβρα Πινάκων (1/9)
Θεωρούμαι μόνο διανύσματα και τετράγωνους πίνακες (N x N), αλλά όλα τα υπόλοιπα μπορούν να προεκταθούν σε μη-τετράγωνους πίνακες (N x M) Το εσωτερικό γινόμενο (N x 1) δυο διανυσμάτων a και b είναι a(i)b(i) K = = Το οποίο είναι μονόμετρος (αριθμός) (όχι διάνυσμα)
186
Βασική Άλγεβρα Πινάκων (2/9)
Το γινόμενο δυο πινάκων (N x N) : I = J = είναι: K = IJ
187
Βασική Άλγεβρα Πινάκων (3/9)
Τα στοιχεία του γινομένου των πινάκων K είναι: K(i, j) = I(i, n)J(n, j). Αυτό είναι απλά το εσωτερικό γινόμενο της ith στήλης του διανύσματος ii της IT και της στήλης διανύσματος jj της J: K(i, j) = iiTjj.
188
Βασική Άλγεβρα Πινάκων (4/9)
Σημαντικές Σημειώσεις Δυο τετραγωνικοί πίνακες πρέπει να έχουν το ίδιο μέγεθος για να πάρουμε το γινόμενο τους. Στο γινόμενο των πινάκων δεν επιτρέπεται η αντιμετάθεση (commute). Δηλαδή δεν είναι γενικά αληθές ότι : IJ = JI.
189
Βασική Άλγεβρα Πινάκων (5/9)
Πίνακας Ταυτότητας Ο (N x N) πίνακας ταυτότητας είναι 1 = Καλείται έτσι επειδή το γινόμενο της 1 με κάθε N x N πίνακα J 1J = J1 = J
190
Βασική Άλγεβρα Πινάκων (6/9)
Αντιστροφή Πίνακα Η αντιστροφή ενός N x N πίνακα I είναι ένας άλλος N x N πίνακας που δεικνύετε I-1 Καλείται Αντίστροφος πίνακας επειδή: II-1 = I-1I = 1 Σημειώστε ότι I-1 αντιμετατίθεται με το I.
191
Βασική Άλγεβρα Πινάκων (7/9)
Αντιστροφή Πίνακα (συνέχεια) Πότε υπάρχει ο αντίστροφος πίνακας; Πότε είναι σταθερός; Ο αντίστροφος του αντίστροφου δίνει πίσω τον αρχικό πίνακα: [I-1]-1 = I
192
Βασική Άλγεβρα Πινάκων (8/9)
Αντιστροφή Πίνακα Παράδειγμα: I = I-1 = Ο υπολογισμός του αντίστροφου ενός πίνακα με το χέρι είναι μια σκληρή αλγεβρική διαδικασία, ειδικά για μεγάλους πίνακες.
193
Βασική Άλγεβρα Πινάκων (9/9)
Αντιστροφή Πίνακα Δεν θα δώσουμε τις λεπτομέρειες εδώ. Οι πιο πολλές βιβλιοθήκες σε μαθηματικά προγράμματα υπολογιστών έχουν την εντολή αντιστροφής πινάκων διαθέσιμη (π.χ., Matlab, Labview, IDL, IMSL).
194
Aπλές Λειτουργίες Ιστογράμματος (1/6)
Θυμηθείτε: το ιστόγραμμα πεδίων φωτεινότητας HI μιας εικόνας I είναι μια γραφική παράσταση της συχνότητας ύπαρξης κάθε πεδίου φωτεινότητας στην I HI είναι μια μονοδιάστατη συνάρτηση με πεδίο ορισμού 0, ... , K-1 : HI(k) = n αν το πεδίο φωτεινότητας k υπάρχει (ακριβώς) n φορές στην I, Για κάθε k = 0, ... K-1.
195
Απλές Λειτουργίες Ιστογράμματος (2/6)
Το ιστόγραμμα HI δεν περιέχει πληροφορίες του χώρου της I – μόνο πληροφορίες για την σχετική συχνότητα φωτεινότητας.
196
Απλές Λειτουργίες Ιστογράμματος (3/6)
Ωστόσο: Χρήσιμες πληροφορίες μπορούν να παρθούν από το ιστόγραμμα. Η ποιότητα της εικόνας επηρεάζεται (βελτίωση ποιότητας, τροποποίηση) με την αλλαγή του ιστογράμματος.
197
Απλές Λειτουργίες Ιστογράμματος (4/6)
Μέση Τιμή Οπτικής Πυκνότητας - Average Optical Density Η μέτρηση μέσης τιμής φωτεινότητας μιας εικόνας I: AOD(I) = =
198
Απλές Λειτουργίες Ιστογράμματος (5/6)
Μέση Τιμή Οπτικής Πυκνότητας Μπορεί να υπολογιστεί και από το ιστόγραμμα επίσης kHI(k) όπου ο kος όρος = (επίπεδο φωτεινότητας k) x (# ύπαρξης του k)
199
Απλές Λειτουργίες Ιστογράμματος (6/6)
Μέση Τιμή Οπτικής Πυκνότητας Παρατηρώντας το ιστόγραμμα μπορεί να αποκαλυφθούν πιθανά λάθη στην επεξεργασία εικόνας: Low AOD High AOD Τρόποι διόρθωσης τέτοιων λαθών χρησιμοποιούν το ιστόγραμμα.
200
Γραμμικές Λειτουργίες Απλού Σημείου (1/8)
Η λειτουργία απλού σημείου σε μία εικόνα Ι είναι μια συνάρτηση f η οποία χαρτογραφεί ή προσδιορίζει την εικόνα Ι σε μια άλλη εικόνα J με τη λειτουργία της στο κάθε στίγμα της I: J(i, j) = f[I(i, j)] , 0 ≤ i, j ≤ N-1 Η ίδια συνάρτηση f εφαρμόζεται σε όλες τις συντεταγμένες της εικόνας. Αυτό είναι διαφορετικό από τις τοπικές λειτουργίες όπως ΑΝΟΙΚΤΌ, ΚΛΕΙΣΤΟ, κ.λπ., δεδομένου ότι αυτές είναι συναρτήσεις και του Ι (ι, j) και των γειτόνων του.
201
Γραμμικές Λειτουργίες Απλού Σημείου (2/8)
Οι λειτουργίες απλού στίγματος δεν αλλάζουν τις σχέσεις χώρου μεταξύ των στιγμάτων. Αλλάζουν το ιστόγραμμα της εικόνας, και έτσι την ολική εμφάνιση της εικόνας. Οι γραμμικές λειτουργίες απλού σημείου είναι η απλούστερη τάξη λειτουργιών απλού σημείου. Μετατοπίζουν και κλιμακώνουν τα πεδία φωτεινότητας της εικόνας.
202
Γραμμικές Λειτουργίες Απλού Σημείου (3/8)
Μετατόπιση Εικόνας - Image Offset Θεωρούμαι ότι το L πέφτει στο πεδίο -(K-1) ≤ L ≤ K-1 (± την κανονικοποιημένη κλίμακα γκρί) J(i, j) = I(i, j) + L , for 0 ≤ i, j ≤ N-1 Έτσι, η ίδια σταθερά L προστίθεται στην τιμή κάθε στίγματος εικόνας.
203
Γραμμικές Λειτουργίες Απλού Σημείου (4/8)
Μετατόπιση Εικόνας Αν L > 0, J θα είναι η εικόνα I φωτεινότερη. Αλλιώς η εμφάνιση της θα είναι ουσιαστικά η ίδια. Αν L < 0, J θα είναι η σκοτεινότερη εκδοχή της εικόνας I. Η πρόσθεση του L μετατοπίζει το ιστόγραμμα με την τιμή L στα αριστερά η δεξιά
204
Γραμμικές Λειτουργίες Απλού Σημείου (5/8)
Μετατόπιση Εικόνας Histograms of additive image offsets Η είσοδος και έξοδος του ιστογράμματος συσχετίζονται με: HJ(k) = HI(k-L)
205
Γραμμικές Λειτουργίες Απλού Σημείου (6/8)
Παράδειγμα: Θεωρούμαι ότι είναι επιθυμητό να συγκρίνουμε πολλαπλές εικόνες I1, I2 ,..., In της ίδιας σκηνής. Ωστόσο, οι εικόνες πάρθηκαν από διαφορετικές συνθήκες φωτεινότητας. Μια λύση: ισοστάθμιση των AOD's των εικόνων. Αν η κλίμακα πεδίων φωτεινότητας της εικόνας είναι 0 ,..., K-1, ένα λογικό AOD είναι K/2.
206
Γραμμικές Λειτουργίες Απλού Σημείου (7/8)
Παράδειγμα (συνέχεια): Θέτουμε Lm = AOD(Im), για m = 1 ,..., n. Τότε ορίζουμε την ‘ισοστάθμιση- AOD’ εικόνων J1, J2 ,..., Jn σύμφωνα με Jm(i, j) = Im(i, j) - Lm + K/2 , for 0 ≤ i, j ≤ N-1
207
Γραμμικές Λειτουργίες Απλού Σημείου (8/8)
Παράδειγμα (συνέχεια): Το αποτέλεσμα: . etc.
208
Κλιμάκωση Εικόνας (1/5) Θεωρούμαι P > 0 (όχι απαραίτητα ακέραιος) Η κλιμάκωση εικόνας ορίζεται από την συνάρτηση J(i, j) = P· I(i, j) , for 0 ≤ i, j ≤ N-1 Έτσι, Ρ πολλαπλασιάζει κάθε τιμή στίγματος της εικόνας. Στην πράξη: J(i, j) = INT[ P· I(i, j) ] , for 0 ≤ i, j ≤ N-1 όπου INT[ R ] = ο πλησιέστερος ακέραιος που είναι ≤ R.
209
Κλιμάκωση Εικόνας (2/5) Αν P > 1, J θα έχει πιο πλατύ πεδίο φωτεινότητας από την εικόνα Ι. Αν P < 1, J θα έχει πιο στενό πεδίο φωτεινότητας από την εικόνα I.
210
Κλιμάκωση Εικόνας (3/5) Πολλαπλασιάζοντας την σταθερά Ρ επεκτείνει ή στενεύει το ‘πλάτος’ του ιστογράμματος της εικόνας με κάποιο συντελεστή Ρ:
211
Κλιμάκωση Εικόνας (4/5) Σχόλια :
Μια εικόνα η οποία έχει συμπιεσμένη κλίμακα πεδίων φωτεινότητας γενικά έχει χαμηλή οπτική αντίθεση. Μια τέτοια εικόνα μπορεί να έχει «ξεθωριασμένη» εμφάνιση.
212
Κλιμάκωση Εικόνας (5/5) Μια εικόνα με φαρδύ πεδίο φωτεινότητας γενικά έχει υψηλή οπτική αντίθεση. Μια τέτοια εικόνα μπορεί να έχει πιο κτυπητή, ορατή εμφάνιση.
213
Αποκοπή (1/2) Γενικά, η διαθέσιμη κλίμακα φωτεινότητας της μετασχηματισμένης εικόνας J είναι η ίδια όπως αυτή της αρχικής εικόνας I: {0 ,..., K-1}. Όταν κάνουμε τον μετασχηματισμό J(i, j) = P· I(i, j) + L, for 0 ≤ i, j ≤ N-1 πρέπει να φροντίζουμε η μέγιστη και ελάχιστη τιμή Jmax and Jmin να ικανοποιεί : Jmax ≤ K και Jmin ≥ 0.
214
Αποκοπή (2/2) Στην καλύτερη περίπτωση, οι τιμές έξω απ’ αυτή την κλίμακα θα “ψαλιδιστούν”. Στην χειρότερη περίπτωση, καταστάσεις υπερχείλισης (overflow) ή λανθασμένου πρόσημου (sign-error) συνθήκες μπορεί να εμφανιστούν. Σε αυτή την περίπτωση, η τιμή της κλίμακας φωτεινότητας που δίνεται σε ένα λανθασμένο στίγμα θα είναι πολύ απροσδιόριστη.
215
Επέκταση Αντίθεσης κλίμακας (1/4)
Επέκταση Αντίθεσης κλίμακας (1/4) Είναι πιο κοινή γραμμική λειτουργία στίγματος. Θεωρούμαι ότι η Ι έχει ένα συμπιεσμένο ιστόγραμμα:
216
Επέκταση Αντίθεσης κλίμακας (2/4)
Επέκταση Αντίθεσης κλίμακας (2/4) Ορίζουμε το Α και Β να είναι το min και max επίπεδο φωτεινότητας στην Ι. Ορίζουμε : J(i, j) = P·I(i, j) + L έτσι ώστε : P·A+L = 0 και P·B + L = (K-1).
217
Επέκταση Αντίθεσης κλίμακας (3/4)
Επέκταση Αντίθεσης κλίμακας (3/4) Το αποτέλεσμα της λύσης του συστήματος 2 εξισώσεων με 2 άγνωστους (P, L) είναι μια εικόνα J η οποία έχει ιστόγραμμα που οι τιμές του ανήκουν σε όλη την κλίμακα φωτεινοτήτων:
218
Επέκταση Αντίθεσης κλίμακας (4/4)
Επέκταση Αντίθεσης κλίμακας (4/4) Η λύση στις πιο πάνω εξισώσεις είναι : και ή J (i,j) = [ I ( i ,j) – A ]
219
Μη Γραμμικές Λειτουργίες Στίγματος
Μια μη-γραμμική λειτουργία στίγματος στην εικόνα Ι είναι μια σημειακή συνάρτηση f που σχετίζει την I με την J: J(i, j) = f [I (i, j) ] for 0 ≤ i, j ≤ N-1 Όπου f είναι μια μη-γραμμική συνάρτηση.
220
Μη Γραμμικές Λειτουργίες Στίγματος
Αυτή είναι μια πολύ μεγάλη τάξη συναρτήσεων. Ωστόσο, μόνο μερικές χρησιμοποιούνται συχνά: J(i, j) = |I(i, j)| (absolute value or magnitude) J(i, j) = [I(i, j)] (square-law) J(i, j) = sqrt [ I (i, j) ] (square root) J(i, j) = log[1+I (i, j) ] (logarithm) J(i, j) = exp[I (i, j)] = (i, j) (exponential)
221
Λογαριθμική Συμπίεση Πεδίου ( Range ) (1/5)
Κίνητρο: Μια εικόνα μπορεί να περιέχει πλούσιες πληροφορίες, απαλή εναλλαγή χαμηλών φωτεινοτήτων – και πολύ μικρές φωτεινές περιοχές. Τα φωτεινά στίγματα θα κυριαρχήσουν την ορατή αντίληψη που έχουμε για την εικόνα.
222
Λογαριθμική Συμπίεση Πεδίου ( Range ) (2/5)
Ένα τυπικό Ιστόγραμμα.
223
Λογαριθμική Συμπίεση Πεδίου ( Range ) (3/5)
Ο λογαριθμικός μετασχηματισμός : J(i, j) = log[1+I(i, j)] συμπιέζει μη-γραμμικά και ισοσταθμίζει τα επίπεδα φωτεινότητας. Οι φωτεινές εντάσεις συμπιέζονται πολύ περισσότερο – έτσι οι ασθενές λεπτομέρειες αναδύονται.
224
Λογαριθμική Συμπίεση Πεδίου ( Range ) (4/5)
Το τέντωμα αντίθεσης πλήρους κλίμακας χρησιμοποιεί μετά όλο το πεδίο φωτεινοτήτων. Λογαριθμικός μετασχηματισμός τέντωσε τις αντιθέσεις.
225
Λογαριθμική Συμπίεση Πεδίου ( Range ) (5/5)
Χρήσιμο για εύρεση ασθενών κοσμικών αντικειμένων: Χρήσιμο για να δείχνουμε εικόνες μετασχηματισμού Fourier.
226
Αλλαγή Μορφής Και Ταύτιση Ιστογράμματος
Θα εξετάσουμε τώρα μεθόδους για αλλαγή μορφής ιστογράμματος. Επιτυγχάνεται με λειτουργίες απλού στίγματος: η μορφή αντικειμένων και η τοποθεσία δεν αλλάζουν.
227
Ισοστάθμιση Ιστογράμματος
Μια εικόνα με ισοσταθμισμένο ιστόγραμμα κάνει πλούσια χρήση των διαθέσιμων πεδίων φωτεινότητας. Αυτή μπορεί να είναι μια εικόνα με : Απαλές διαβαθμίσεις στην κλίμακα φωτεινότητας που να καλύπτουν πολλαπλά επίπεδα φωτεινότητας γκρι. Πολλαπλή υφή που να καλύπτει πολλαπλά επίπεδα φωτεινότητας.
228
Ιστόγραμμα Κανονικότητας (1/3)
Ορισμός: κ=0,1,…., K-1 Αθροίζοντας: όπου είναι η πιθανότητα του επιπέδου φωτεινότητας κ να υπάρχει (σε οποιοδήποτε δεδομένο στίγμα)
229
Ιστόγραμμα Κανονικότητας (2/3)
Το συσσωρευτικό ιστόγραμμα είναι: για r=0,1,2,…., K-1 όπου μια αύξουσα συνάρτηση με
230
Ιστόγραμμα Κανονικότητας (3/3)
Άρα, για όλα τα σημεία (i, j): Επίσης… για r=0,…, K-1
231
Συνεχές Ιστόγραμμα Έστω οτι τα p(x) και P(x) είναι συνεχή: Τότε:
(μπορεί να θεωρηθούν σαν συναρτήσεις πυκνότητας πιθανότητας (pdf) και συσσωρευτική διανομή (cdf)). Τότε: p(x) = dP(x)/dx Σημείωση: υπάρχει η μπορεί να οριστεί κατά σύμβαση.
232
Συνεχής Ισοστάθμιση Και Αλλαγή Μορφής (1/5)
Μετασχηματίζουμε τα (συνεχή): Ι, p(x), P(x) σε J, q(x), Q(x). Η ακόλουθη εικόνα θα έχει ένα ισοσταθμισμένο ιστόγραμμα: J = P(I) (J(i, j) = P[I(i, j)] για κάθε (i, j))
233
Συνεχής Ισοστάθμιση Και Αλλαγή Μορφής (2/5)
Το συσσωρευτικό ιστόγραμμα Q της J:
234
Συνεχής Ισοστάθμιση Και Αλλαγή Μορφής (3/5)
έτσι: Q(x) = dQ(x)/dx = 1 for 0 < x < 1 Τι παρατηρούμε? Χρειάζεται τέντωμα αντίθεσης
235
Συνεχής Ισοστάθμιση Και Αλλαγή Μορφής (4/5)
Έστω ότι παίρνουμε κάποια τυχαία q(x),Q(x). Τότε ορίζουμε: για όλα τα (i,j)
236
Συνεχής Ισοστάθμιση Και Αλλαγή Μορφής (5/5)
Το συσσωρευμένό ιστόγραμμα της J είναι: Σημείωση: Τα πιο πάνω μπορούν να προσεγγιστούν μόνο με διακριτά ιστογράμματα
237
Ισοστάθμιση Ιστογράμματος (1/3)
Έστω η εικόνα Ι: Ορίζουμε το συσσωρευτικό ιστόγραμμα εικόνας J1 = P(I) όπου
238
Ισοστάθμιση Ιστογράμματος (2/3)
Παρατηρήσεις: Σε κάθε στίγμα, αυτό είναι το συσσωρευτικό ιστόγραμμα που υπολογίζεται στα επίπεδα φωτεινότητας του στίγματος. Τα στοιχεία της συσσωρευτικής πιθανότητας της εικόνας J1 θα κατανεμηθούν γραμμικά κατά προσέγγιση μεταξύ 0 και 1.
239
Ισοστάθμιση Ιστογράμματος (3/3)
Κλιμακώνουμε το J1 για να καλύψει την κλίμακα 0, ..., κ-1, δημιουργώντας εικόνα ισοσταθμισμένου ιστογράμματος J: J(i, j) = int [ (K-1)·J1(i, j) ]
240
Παράδειγμα Ισοστάθμισης Ιστογράμματος (1/7)
Δίνεται μια 4 x 4 εικόνα Ι με επίπεδα φωτεινότητας {0, ..., 15} (K-1 = 15): I = 1 3 4 2 5 8 11
241
Παράδειγμα Ισοστάθμισης Ιστογράμματος (2/7)
Το ιστόγραμμα της είναι: k 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 H(k) 3 3 3 2 2 2 1
242
Παράδειγμα Ισοστάθμισης Ιστογράμματος (3/7)
Κανονικοποίηση Ιστογράμματος: k 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 1 6 3 1 6 3 1 6 2 1 6 2 1 6 2 1 6 1 6 p(k)
243
Παράδειγμα Ισοστάθμισης Ιστογράμματος (4/7)
Υπολογισμός ενδιάμεσης εικόνας J1: J1= 3/16 9/16 11/16 6/16 13/16 15/16 16/16
244
Παράδειγμα Ισοστάθμισης Ιστογράμματος (5/7)
Υπολογισμός ‘ισοσταθμισμένης’ εικόνας J: J = 3 8 10 6 12 14 15
245
Παράδειγμα Ισοστάθμισης Ιστογράμματος (6/7)
Το νέο, ισοσταθμισμένο ιστόγραμμα μοιάζει με το ακόλουθο: k 1 2 4 5 6 7 8 9 10 11 12 13 14 15 3 H(k) 3 3 3 2 2 2 1
246
Παράδειγμα Ισοστάθμισης Ιστογράμματος (7/7)
Δημιουργία Ιστογράμματος:
247
Ισοστάθμισης Ιστογράμματος (συνέχεια…)
Τα ύψη H(k) δεν μπορούν να μειωθούν, απλώς μετακινούνται έτσι: Η ισοστάθμιση ψηφιακού ιστογράμματος δεν ‘ισοσταθμίζει’ στην πραγματικά το ιστόγραμμα , απλώς το κάνει πιο ‘κολακευτικό’ με την εξάπλωση του ιστογράμματος. Ο χώρος που δημιουργείται είναι πολύ χαρακτηριστικός του ‘ισοσταθμισμένου’ ιστογράμματος , ειδικά όταν το αρχικό ιστόγραμμα είναι πολύ συμπιεσμένο.
248
Παράδειγμα Ισοστάθμισης Ιστογράμματος στο ΜatLab
I = imread(‘exampleim.tif’); J = histeq(I); figure,subplot(2,1,1),imshow(I); subplot(2,1,2), imhist(J);
249
Αλλαγή Μορφής Ιστογράμματος (1/3)
Δημιουργεί μια αλλαγμένη εικόνα J με μια κατά προσέγγιση προσδιορισμένη μορφή ιστογράμματος, όπως τρίγωνο ή καμπύλη μορφής καμπάνας. Ορίζουμε το να είναι η επιθυμητή μορφή ιστογράμματος με τις αντίστοιχες κανονικές τιμές (πιθανότητες)
250
Αλλαγή Μορφής Ιστογράμματος (2/3)
Ορίζουμε το συσσωρευτικό ιστόγραμμα εικόνας όπως πριν: Επίσης ορίζουμε τις συσσωρευτικές πιθανότητες:
251
Αλλαγή Μορφής Ιστογράμματος - Αλγόριθμος (3/3)
Ορίζουμε n(i, j) να δεικνύει την μικρότερη τιμή του n ώστε: Τότε παίρνουμε: J(i, j) = n(i, j) Αυτό είναι μια τυπικότητα για:
252
Παράδειγμα Αλλαγή Μορφής Ιστογράμματος (1/7)
Υποθέστε ότι έχουμε την ίδια εικόνα με το προηγούμενο παράδειγμα Ι = 1 3 4 2 5 8 11
253
Παράδειγμα Αλλαγή Μορφής Ιστογράμματος (2/7)
Υπολογισμός ενδιάμεσης εικόνας J1: J1 = 3/16 9/16 11/16 6/16 13/16 15/16 16/16
254
Παράδειγμα Αλλαγή Μορφής Ιστογράμματος (3/7)
Το εφαρμόζουμε στο ακόλουθο (τριγωνικό) ιστόγραμμα: k 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 H (k) 1 2 3 4 3 2 1 J 1 6 2 1 6 3 1 6 4 1 6 3 1 6 2 1 6 1 6 p (k) J
255
Παράδειγμα Αλλαγή Μορφής Ιστογράμματος (4/7)
Δημιουργία Ιστογράμματος:
256
Παράδειγμα Αλλαγή Μορφής Ιστογράμματος (5/7)
Πιο κάτω είναι οι συσσωρευμένες (αθροιστικές) πιθανότητες που συνδέονται μαζί του: n 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 6 3 1 6 1 6 1 3 6 1 3 6 1 5 6 1 5 6 1 6 1 6 P (n) J
257
Παράδειγμα Αλλαγή Μορφής Ιστογράμματος (6/7)
Προσεκτική ορατή παρατήρηση της J1 μας οδηγεί στο φτιάξιμο της νέας εικόνας: J = 4 8 10 6 12 14
258
Παράδειγμα Αλλαγή Μορφής Ιστογράμματος (7/7)
Το νέο Ιστόγραμμα είναι: k 1 2 4 5 6 7 8 9 10 11 12 13 14 15 3 H (k) J 3 3 3 4 2 1
259
Ταύτιση Ιστογράμματος (1/2)
Μια ειδική περίπτωση της αλλαγής μορφής ιστογράμματος. Διαφορά: το ιστόγραμμα της αρχικής εικόνας Ι ταυτίζεται με το ιστόγραμμα μιας άλλης εικόνας I´ Αλλιώς η διαδικασία είναι η ίδια, όταν οι συσσωρευμένες πιθανότητες υπολογιστούν για την μοντελοποιημένη εικόνα I´
260
Ταύτιση Ιστογράμματος (2/2)
Χρήσιμη εφαρμογή: Σύγκριση όμοιων εικόνων της ίδιας σκηνής που πάρθηκε κάτω από διαφορετικές συνθήκες (π.χ. φωτός, ώρα της ημέρας, κλπ). Προεκτείνεται η έννοια της ισοστάθμισης AOD που περιγράψαμε πιο πριν.
261
Βασικές Αλγεβρικές Λειτουργίες Εικόνας (1/3)
Οι αλγεβρικές λειτουργίες εικόνας (μεταξύ εικόνων) είναι κάπως απλές. Θεωρούμε ότι έχουμε δυο N x N εικόνες I1 και I2. Οι τέσσερις βασικές αλγεβρικές λειτουργίες (όπως αυτές της υπολογιστικής σας) είναι:
262
Βασικές Αλγεβρικές Λειτουργίες Εικόνας (2/3)
Σημειακή Πρόσθεση Πινάκων J = I1 + I2 if J(i, j) = I1(i, j) + I2(i, j) for 0 ≤ i, j ≤ N-1 Σημειακή Αφαίρεση πινάκων J = I1 – I2 if J(i, j) = I1(i, j) – I2(i, j)
263
Βασικές Αλγεβρικές Λειτουργίες Εικόνας (3/3)
Σημειακός Πολλαπλασιασμός Πινάκων J = I1 Ä I2 if J(i, j) = I1(i, j) x I2(i, j) for 0 ≤ i, j ≤ N-1 Σημειακή Διαίρεση Πινάκων J = I1 D I2 if J(i, j) = I1(i, j) / I2(i, j) for 0 ≤ i, j ≤ N-1 * Ειδική σήμανση για σημείο προς σημείο (σημειακό) πολλαπλασιασμό και διαίρεση πινάκων αφού υπάρχει και άλλος ορισμός για πολλαπλασιασμό πινάκων. * Οι λειτουργίες Ä και D είναι πολύ χρήσιμες όταν επεξεργαζόμαστε πίνακες μετασχηματισμών Fourier.
264
Εφαρμογές Των Αλγεβρικών Λειτουργιών
Παρ’οτι απλές, οι αλγεβρικές λειτουργίες αποτελούν την σπονδυλική στήλη για την ψηφιακή επεξεργασία εικόνων. Θα εξετάσουμε δυο απλές αλλά σημαντικές εφαρμογές αλγεβρικών λειτουργιών σε εικόνες: Μέσος όρος πλαισίου για μείωση θορύβου Εντοπισμός κίνησης
265
Μέσος Όρος Πλαισίου για Μείωση Θορύβου (1/3)
Μια εικόνα J συχνά είναι ‘μολυσμένη’ με αθροιστικό θόρυβο: Διασκόρπιση επιφάνειας ακτινοβολίας Θόρυβος στην κάμερα Θερμικός θόρυβος στα υπολογιστικά κυκλώματα Θόρυβος καναλιών επικοινωνίας
266
Μέσος Όρος Πλαισίου για Μείωση Θορύβου (2/3)
Μπορούμε να κάνουμε μοντέλα για τέτοιες εικόνες με θόρυβο σαν το άθροισμα μιας πρωτότυπης, ‘αμόλυντης’ εικόνας Ι και μιας εικόνας θορύβου Ν J = I + N όπου τα στοιχεία N(i, j) του N είναι τυχαίες μεταβλητές. Δεν θα εξετάσουμε τους μαθηματικούς ορισμούς των τυχαίων μεταβλητών (ακόμα).
267
Μέσος Όρος Πλαισίου για Μείωση Θορύβου (3/3)
Απλώς θα θεωρήσουμε ότι ο θόρυβος έχει μηδενική μεσαία τιμή (εργοδική), που σημαίνει ότι το δείγμα μεσαίου Μ πινάκων θορύβου τείνει προς το μηδέν όταν το Μ μεγαλώνει [ N1 + · · · + NM ] ≈ 0 (matrix of zeros) Υπολογίζοντας τον μέσο όρο πολλών δειγμάτων μηδενικού-μέσου όρου δίνει μια τιμή κοντά στο μηδέν. Θα ορίσουμε το μηδενικό μέσο όρο πιο προσεκτικά αργότερα.
268
Υπολογισμός του Μέσου Όρου Πλαισίου για Μείωση Θορύβου (1/3)
Θεωρούμε ότι παίρνουμε Μ εικόνες J1, ..., JM της ίδιας σκηνής: Σε μια γρήγορη ακολουθία, χωρίς να υπάρχει κίνηση μεταξύ πλαισίων Ή να μην υπάρχει καθόλου κίνηση. Ωστόσο, τα πλαίσια είναι θορυβώδη: for i = 1 ,..., M.
269
Υπολογισμός του Μέσου Όρου Πλαισίου για Μείωση Θορύβου (2/3)
Θεωρούμε ότι παίρνουμε τον μέσο όρο των πλαισίων: Ωστόσο αφού I1 = I2 = · · · = IM = I, τότε και από πριν Έτσι περιμένουμε ότι J ≈ I + 0 ≈ I (αν από αρκετά πλαίσια (M) παρθεί ο μέσος όρος)
270
Υπολογισμός του Μέσου Όρου Πλαισίου για Μείωση Θορύβου (3/3)
Η επεξεργασία εικόνας ενδιαφέρεται κυρίως για την διόρθωση η καλυτέρευση των εικόνων του προγραμματικού κόσμου. Τα γραφικά υπολογιστών ενδιαφέρονται κυρίως για την δημιουργία εικόνων κάποιου μη-πραγματικού κόσμου.
271
Εντοπισμός Κίνησης (1/2)
Συχνά είναι ενδιαφέρον να εντοπίσουμε κίνηση αντικειμένων μεταξύ πλαισίων. Εφαρμογές: Συμπίεση βίντεο Αναγνώριση στόχου και παρακολούθησης Κάμερες ασφάλειας Επίβλεψη Αυτόματος έλεγχος κλπ.
272
Εντοπισμός Κίνησης (2/2)
Πιο κάτω δίδεται μια απλή προσέγγιση: Ορίζουμε I1, I2 ως δυο διαδοχικά πλαίσια που πάρθηκαν σε πολύ σύντομο χρόνο, π.χ. από μια βίντεο κάμερα. Από την εικόνα απόλυτης διαφοράς J = |I1 – I2| εφαρμόζουμε τέντωμα αντίθεσης πλήρους κλίμακας στην J το οποίο έχει ως αποτέλεσμα ένα πιο δραματικό οπτικό αποτέλεσμα.
273
Γεωμετρικές Λειτουργίες Εικόνας
Οι γεωμετρικές λειτουργίες εικόνας είναι κάπως πιο περίπλοκες από τις αλγεβρικές λειτουργίες, και χρησιμοποιούνται λιγότερο (στην επεξεργασία εικόνων). Πολλές από τις ιδέες επίσης συμπίπτουν πολύ με σημαντικά στοιχεία των γραφικών υπολογιστών. Έτσι θα ξοδέψουμε λίγο χρόνο σε αυτά.
274
Βασικές Γεωμετρικές Λειτουργίες Εικόνας
Οι γεωμετρικές λειτουργίες εικόνας είναι αντίθετες των λειτουργιών απλού στίγματος: αλλάζουν την τοποθεσία των στιγμάτων αλλά όχι την τιμή τους. Μια γεωμετρική λειτουργία γενικά χρειάζεται δυο βήματα:
275
Βασικές Γεωμετρικές Λειτουργίες Εικόνας
Μια ταύτιση χώρου των συντεταγμένων της εικόνας μας δίνει μια νέα συνάρτηση εικόνας J: J(i, j) = I(i´ , j´ ) = I[a(i, j), b(i, j) Οι συντεταγμένες a(i, j) and b(i, j) δεν είναι γενικά ή συνήθως ακέραιοι! Για παράδειγμα: a(i, j) = i/3.5, b(i, j) = j/4.5 Τότε J(i, j) = I(i/3.5, j/4.5), το οποίο έχει απροσδιόριστες συντεταγμένες ! Έτσι συνεπάγεται η ανάγκη δεύτερης λειτουργίας:
276
Βασικές Γεωμετρικές Λειτουργίες Εικόνας
Πλαστογραφούμε τις μη-ακραίες συντεταγμένες a(i, j) και b(i, j) σε ακέραιες τιμές, έτσι ώστε το J να μπορεί να παραστεί σε μορφή σειρών-στηλών (πίνακα)
277
Παρεμβολή Πλησιέστερου Γείτονα
Με απλή σκέψη: Οι γεωμετρικά μετασχηματισμένες συντεταγμένες ταυτίζονται στις πλησιέστερες ακέραιες συντεταγμένες: J(i, j) = I{INT[a(i, j)+0.5], INT[b(i, j)+0.5]} Σοβαρό μειονέκτημα: Ξαφνικές αλλαγές της φωτεινότητας έχουν σαν αποτέλεσμα τις σπασμένές ακμές.
278
Προειδοποίηση Για κάποια συντεταγμένη (i, j) είτε
INT[a(i, j)+0.5] < ή INT[b(i, j)+0.5] < 0 είτε INT[a(i, j)+0.5] > N ή INT[b(i, j)+0.5] > N-1 τότε J(i, j) = I{INT[a(i, j)+0.5], INT[b(i, j)+0.5]} δεν μπορεί να προσδιοριστεί. Συνήθως θέτουμε το J(i, j) = 0 για αυτές τις τιμές.
279
Διγραμμική Παρεμβολή Δημιουργία μιας πιο ομαλής παρεμβολής από την προσέγγιση του πλησιέστερου γείτονα. Δίδονται τέσσερις συντεταγμένες I(i0, j0), I(i1, j1), I(i2, j2), και I(i3, j3), η νέα εικόνα J(i, j) υπολογίζεται ως ακολούθως: J(i, j) = A0 + A1· i + A2·j + A3· i·j όπου τα διγραμμικά βάρη A0, A1, A2, και A3 είναι το αποτέλεσμα της λύσης της πιο κάτω εξίσωσης:
280
Ένας γραμμικός συνδυασμός των τεσσάρων
Διγραμμική Παρεμβολή -1 A 1 2 3 Ένας γραμμικός συνδυασμός των τεσσάρων πλησιέστερων τιμών. Το πιο καλό ταίριασμα επιπέδου στις τέσσερις πλησιέστερες τιμές. 1 i j 1 2 3 i 1 2 3 j 1 2 3 I(i , j ) 1 i I(i , j ) = 1 1 1 1 i 2 I(i , j ) 2 2 1 i 3 I(i , j ) 3 3
281
Οι Βασικοί Γεωμετρικοί Μετασχηματισμοί
Οι πιο βασικοί γεωμετρικοί μετασχηματισμοί είναι: - Translation (Μετατόπιση) - Rotation (Περιστροφή) - Zooming (Μεγέθυνση)
282
Μετατόπιση Η μετατόπιση είναι η πιο απλή γεωμετρική λειτουργία και δεν χρειάζεται παρεμβολή. Ορίζουμε a(i, j) = i - i0, b(i, j) = j - j0 όπου (i0, j0) είναι σταθερές. Σε αυτή την περίπτωση J(i, j) = I(i - i0, j - j0) μια μετακίνηση ή μετατόπιση της εικόνας με μέγεθος i0 στην κατακόρυφη (σειρά) διεύθυνση και μεγέθους j0 στην οριζόντια διεύθυνση.
283
a(i, j) = i cos( q ) - j sin( q ) b(i, j) = i sin( q ) + j cos( q )
Περιστροφή Η περιστροφή της εικόνας με την γωνία q σε σχέση με τον αξονα-x επιτυγχάνετε από τον ακόλουθο μετασχηματισμό: a(i, j) = i cos( q ) - j sin( q ) b(i, j) = i sin( q ) + j cos( q )
284
q = 90° : [a(i, j), b(i, j)] = (-j, i)
Περιστροφή Απλές περιπτώσεις: q = 90° : [a(i, j), b(i, j)] = (-j, i) q = 180° : [a(i, j), b(i, j)] = (-i, -j) q = -90° : [a(i, j), b(i, j)] = (j, -i) q Οι περιστρεφόμενες εικόνες συνήθως χρειάζονται μετατόπιση μετέπειτα για να πάρουν τιμές συντεταγμένων στο επιθυμητό πεδίο.
285
Μεγέθυνση Η μεγέθυνση μεγαλώνει μια εικόνα με την συνάρτηση ταύτισης
a(i, j) = i / c και b(i, j) = j / d όπου c ≥ 1 και d ≥ 1.
286
Μεγέθυνση Για μεγάλη μεγέθυνση, η μεγεθυσμένη εικόνα θα φαίνεται ‘θολή’ αν χρησιμοποιηθεί απλή παρεμβολή πλησιέστερου γείτονα. Η διγραμμική παρεμβολή δουλεύει καλύτερα. original 2x zoomed Αυτοί είναι πολύ απλοί μετασχηματισμοί. Ένα παράδειγμα πιο έξυπνου γεωμετρικού μετασχηματισμού !
287
Κεφάλαιο 4 ΕΠΛ 445 - Ψηφιακή Επεξεργασία Εικόνας
ΔΙΑΚΡΙΤΟΣ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ FOURIER
288
Σημασία των Συχνοτήτων Εικόνας Θεώρημα Δειγματοληψίας
Περιεχόμενα Ημιτονικές εικόνες Διακριτός Μετασχηματισμός Fourier Σημασία των Συχνοτήτων Εικόνας Θεώρημα Δειγματοληψίας
289
Ημιτονικές Εικόνες (1/5)
Θα κάνουμε συχνή αναφορά σε αυτό το κεφάλαιο για το περιεχόμενο συχνοτήτων μιας εικόνας. Πρώτα θα εξετάσουμε τις εικόνες οι οποίες έχουν το απλούστερο περιεχόμενο συχνοτήτων. Μια ψηφιακή ημιτονική εικόνα Ι1 είναι μια εικόνα η οποία έχει στοιχεία Μια ψηφιακή συνημιτονική εικόνα Ι2 είναι μια εικόνα η οποία έχει στοιχεία
290
Ημιτονικές Εικόνες (2/5)
Τα u και v αποτελούν τις ακέραιες συχνότητες στην i και j κατεύθυνση και μετρώνται σε κύκλους ανά εικόνα (cycles per image). Η ακτινωτή συχνότητα Ω μιας εικόνας (το πόσο γρήγορα η εικόνα ταλαντεύεται στην κατεύθυνση της διάδοσης) ορίζεται ως: Η γωνία θ του κύματος (ως προς τον άξονα i) ορίζεται ως:
291
Ημιτονικές Εικόνες (3/5)
Παράδειγμα: Έστω ότι Ν=16 και v=0 (κύκλοι ανά εικόνα) για μια συνημιτονική εικόνα Ι. Επομένως ισχύει ότι Αυτό είναι ένα κύμα συνημίτονου το οποίο διαδίδεται μόνο στην κατεύθυνση i (Όλες οι γραμμές είναι οι ίδιες) με συχνότητα u. Στην επόμενη διαφάνεια δείχνουμε τις τιμές της συνάρτησης Ι(i) για κάποια συγκεκριμένα u. Το i-οστό εικονοστοιχείο κάθε γραμμής της εικόνας μας θα έχει τιμή Ι(i).
292
Ημιτονικές Εικόνες (4/5)
Η συνάρτηση για διάφορες τιμές του u:
293
Ημιτονικές Εικόνες (5/5)
Παρατηρήστε ότι Αυτό σημαίνει ότι το κύμα με την μεγαλύτερη συχνότητα λαμβάνει χώρα όταν και το N είναι άρτιος στην συγκεκριμένη περίπτωση. Αυτό θα είναι σημαντικό αργότερα.
294
Μιγαδικές εκθετικές εικόνες
Θα χρησιμοποιήσουμε μιγαδικές εκθετικές συναρτήσεις για να ορίσουμε αργότερα τον μετασχηματισμό Fourier μιας ψηφιακής εικόνας. Ως εκ τούτου ορίζουμε την δυσδιάστατη μιγαδική εκθετική συνάρτηση ως ακολούθως: Το είναι ο γνήσιος φανταστικός αριθμός όπου Η μιγαδική εκθετική συνάρτηση δίνει την δυνατότητα μιας εύκολης και βολικής αναπαράστασης και χειρισμού των συχνοτήτων, όπως θα δούμε παρακάτω.
295
Μιγαδικοί Αριθμοί (1/3) Ένας μιγαδικός αριθμός Χ έχει την μορφή: όπου το Α αποτελεί το πραγματικό μέρος και το αποτελεί το φανταστικό μέρος του αριθμού. Ένας μιγαδικός αριθμός Χ χαρακτηρίζεται από το μέγεθος ( ) και την φάση του ( ) όπου
296
Μιγαδικοί Αριθμοί (2/3) Ένας μιγαδικός αριθμός Χ μπορεί να αναπαρασταθεί συναρτήσει του μεγέθους και της φάσης του ως ακολούθως: Ο μιγαδικός συζυγής ή απλά συζυγής του Χ ορίζεται ως ακολούθως:
297
Μιγαδικοί Αριθμοί (3/3) Ισχύει η εξής ιδιότητα μεταξύ ενός μιγαδικού αριθμού Χ και του συζυγούς του Χ* :
298
Ιδιότητες Της Μιγαδικής Εκθετικής Εικόνας (1/3)
Θα χρησιμοποιήσουμε τον συμβολισμό για την μιγαδική εκθετική εικόνα, όπου το Ν αποτελεί το μέγεθος της εικόνας . Άρα βάσει του συμβολισμού μας έπεται ότι
299
Ιδιότητες Της Μιγαδικής Εκθετικής Εικόνας (2/3)
H ταυτότητα Euler έχει ως ακολούθως: Επομένως αφού έπεται ότι
300
Ιδιότητες Της Μιγαδικής Εκθετικής Εικόνας (3/3)
Επιπρόσθετα ισχύουν οι ακόλουθες ισότητες:
301
Μέγεθος & Φάση Της Μιγαδικής Εκθετικής Εικόνας
Το μέγεθος και η φάση της μιγαδικής εκθετικής εικόνας αντίστοιχα είναι τα ακόλουθα:
302
Μιγαδικές Εκθετικές Εικόνες - Σχόλια
Η ανάπτυξη του μετασχηματισμού Fourier (πεδίο συχνοτήτων) χωρίς την βοήθεια των μιγαδικών αριθμών είναι δυνατή. Όμως τα μαθηματικά τα οποία θα χρησιμοποιηθούν θα είναι περισσότερα. Η χρήση του για αναπαράσταση μιας συνιστώσας συχνότητας η οποία ταλαντώνεται σε u κύκλους ανά μήκους εικόνας και σε v κύκλους ανά μήκους εικόνα στις κατευθύνσεις i και j αντίστοιχα, απλοποιεί σε ένα ικανοποιητικό βαθμό τα πράγματα. Επομένως είναι πολύ βοηθητικό να θεωρούμε το ως αναπαράσταση της κατεύθυνσης και συχνότητας της ταλάντωσης.
303
Τιμές Της Μιγαδικής Εκθετικής Συνάρτησης (1/4)
Η μιγαδική εκθετική συνάρτηση αποτελεί μια αναπαράσταση της συχνότητας συναρτήσει του εκθέτη ui. H ελάχιστη φυσική συχνότητα, λαμβάνει χώρα περιοδικά όταν u = kN όπου τα i, k είναι ακέραιοι αριθμοί. Συγκεκριμένα ισχύει ότι
304
Τιμές Της Μιγαδικής Εκθετικής Συνάρτησης (2/4)
Απόδειξη της προαναφερθείσας πρότασης:
305
Τιμές Της Μιγαδικής Εκθετικής Συνάρτησης (3/4)
H μέγιστη φυσική συχνότητα, λαμβάνει χώρα περιοδικά όταν u = kN + Ν/2 όπου τα i, k είναι ακέραιοι αριθμοί και το Ν είναι άρτιος . Συγκεκριμένα ισχύει ότι Ακολουθεί τη απόδειξη της παραπάνω πρότασης.
306
Τιμές Της Μιγαδικής Εκθετικής Συνάρτησης (4/4)
Απόδειξη της προαναφερθείσας πρότασης:
307
Διακριτός Μετασχηματισμός Fourier (1/4)
χρησιμοποιούμε την συντομογραφία DFT από τον αντίστοιχο αγγλικό όρο Discrete Fourier Transform. O Διακριτός Μετασχηματισμός Fourier μας προσφέρει την δυνατότητα μετάβασης από το πεδίο χώρου μιας εικόνας (spatial domain) στο αντίστοιχο πεδίο συχνοτήτων της (frequency domain). Αυτή η δυνατότητα είναι πολύ σημαντική. Όπως θα δούμε στο κεφάλαιο αυτό αλλά και σε επόμενα κεφάλαια, η επέμβαση στο πεδίο συχνοτήτων μιας εικόνας είναι ένας από τους σημαντικότερους τρόπους τροποποίησης και επεξεργασίας της.
308
Διακριτός Μετασχηματισμός Fourier (2/4)
Ο μαθηματικός τύπος για τον DFT είναι ο ακόλουθος: Προσοχή: Πρέπει να τονιστεί ότι τα (i, j) αποτελούν συντεταγμένες χώρου ενώ τα (u, v) αποτελούν συντεταγμένες συχνοτήτων οι οποίες εκφράζονται σε κύκλους ανά εικόνα.
309
Διακριτός Μετασχηματισμός Fourier (3/4)
Το αποτέλεσμα του DFT μιας εικόνας είναι ένας πίνακας διαστάσεων Ν x N (όπως η αρχική μας εικόνα). Επομένως O Αντίστροφος Διακριτός Μετασχηματισμός Fourier (IDFT - Inverse DFT) μας βοηθά να ανακτήσουμε την αρχική μας εικόνα από το πεδίο συχνοτήτων της. Ο μαθηματικός του τύπος είναι ο ακόλουθος
310
Διακριτός Μετασχηματισμός Fourier (4/4)
Αν έχω ένα πεπερασμένο αριθμό εικόνων Ι1 ... ΙΜ τότε ισχύει η ακόλουθη ιδιότητα: Τα α1 ... αΜ είναι πραγματικοί αριθμοί και DFT(IΚ) = όπου 1 Κ Μ. DFT[ α1Ι αΜΙΜ ] = α1DFT[ Ι1] αΜDFT[ ΙΜ]
311
Διακριτός Μετασχηματισμός Fourier - Σχόλια
Από τον τύπο του ΙDFT παρατηρούμε ότι μια εικόνα Ι δυνατόν να εκφραστεί ως ένα άθροισμα ενός πεπερασμένου αριθμού μιγαδικών εκθετικών εικόνων πολλαπλασιαζόμενων με κάποιο συντελεστή βάρους (weighted sum). Για τον υπολογισμό του DFT μιας εικόνας, στις πλείστες περιπτώσεις, χρησιμοποιείται ο αλγόριθμος FFT (Fast Fourier Transform), ένας αποδοτικός αλγόριθμος και ένας από τους πλέον δημοφιλείς και χρησιμοποιούμενους αλγορίθμους ! ...
312
Διακριτός Μετασχηματισμός Fourier - Σχόλια
Το αποτέλεσμα του IDFT είναι μια μιγαδική εικόνα J όπου το φανταστικό μέρος του κάθε στοιχείου της εικόνας είναι της μορφής = 0. Επομένως θα πρέπει να απομονώσουμε το πραγματικό μέρος και μόνο αυτό να απεικονίσουμε.
313
Ιδιότητες του πίνακα DFT (1/3)
Κάθε εικόνα Ι που μελετούμε, αποτελείται από πραγματικούς αριθμούς ή ακεραίους. Ωστόσο, το DFT της είναι γενικά μιγαδικό. To DFT μιας εικόνας μπορεί να γραφτεί σαν άθροισμα μιας πραγματικής και μιας φανταστικής εικόνας.
314
Ιδιότητες του πίνακα DFT (2/3)
Μπορεί να γραφτεί στην μορφή: όπου και
315
Ιδιότητες του πίνακα DFT (3/3)
δηλαδή, Τα πιο πάνω υπολογίστηκαν απ΄ευθείας από την αρχική εξίσωση DFT. Έτσι η έχει μέγεθος και φάση.
316
Μέγεθος του DFT Το μέγεθος του DFT είναι ένας πίνακας με στοιχεία:
τα οποία είναι τα μεγέθη των μιγαδικών στοιχείων της
317
Φάση του DFT Η φάση του DFT είναι ένας πίνακας με στοιχεία:
τα οποία είναι η φάση των μιγαδικών στοιχείων της
318
DFT της εικόνας Ι Έτσι… Μέγεθος Φάση
319
Συμμετρία (1/5) Το DFT μιας εικόνας έχει συμμετρική συζυγία. Απόδειξη
Στην απόδειξη θα χρησιμοποιηθούν οι πιο κάτω ισότητες: 1. 2.
320
Συμμετρία (2/5) Συνεχίζουμε με την απόδειξη…
321
Συμμετρία (3/5) Αποδεικνύοντας το πιο πάνω συμπεραίνουμε ότι ο πίνακας DFT περιέχει πλεονασμό, δηλαδή έχουμε τις ίδιες πληροφορίες περισσότερες από μία φορές (συμμετρία). Τετριμμένα ισχύει:
322
Συμμετρία (4/5) Απεικόνιση της συμμετρίας του DFT (μέγεθος).
Συμμετρία και στις δύο κατευθύνσεις (u-κατεύθυνση και v-κατεύθυνση). Οι μονάδες μέτρησης είναι cycles/image (κύκλοι/εικόνα).
323
Συμμετρία (5/5) Οι ψηλότερες συχνότητες αναπαριστάνονται κοντά στο (u, v) = (N/2, N/2), δηλαδή στο κέντρο.
324
Περιοδικότητα του DFT (1/4)
Ορίζουμε τον πίνακα DFT ώστε να έχει πεπερασμένη προέκταση με διαστάσεις N x N. Ωστόσο, αν οι συντελεστές επιτραπούν να πάρουν τιμές έξω από την κλίμακα 0 ≤ u, v ≤ N-1, βρίσκουμε ότι το DFT είναι περιοδικό και στην u- και στην v-κατεύθυνση, με περίοδο Ν
325
Περιοδικότητα του DFT (2/4)
Απόδειξη Στην απόδειξη θα χρησιμοποιηθεί η πιο κάτω ισότητα: 1. Συνεχίζουμε με την απόδειξη…
326
Περιοδικότητα του DFT (3/4)
Αυτό ονομάζεται περιοδική προέκταση του DFT. Ορίζεται για όλες τις ακέραιες συχνότητες u,v.
327
Περιοδικότητα του DFT (4/4)
. Περιοδική προέκταση του DFT . . . . .
328
Περιοδική Προέκταση Της Εικόνας (1/4)
Εφαρμόζοντας την IDFT εξίσωση στο DFT μιας εικόνας Ι, θα πάρουμε την αρχική μας εικόνα Ι, έτσι και η I προεκτείνεται περιοδικά. Απόδειξη Στην απόδειξη θα χρησιμοποιηθεί η πιο κάτω ισότητα: 1.
329
Περιοδική Προέκταση Της Εικόνας (2/4)
Συνεχίζουμε με την απόδειξη…
330
Περιοδική Προέκταση Της Εικόνας (3/4)
Κατά τη χρήση του DFT υπονοείται ότι η εικόνα Ι είναι ήδη περιοδική. Αυτό θα είναι πολύ χρήσιμο όταν θα μελετήσουμε την συνέλιξη (κυκλική συνέλιξη).
331
Περιοδική Προέκταση Της Εικόνας (4/4)
Περιοδική προέκταση της εικόνας . Εικόνα Ι . . . . .
332
Παρουσίαση του DFT (1/6) Συνήθως το DFT αναπαρίσταται με την κεντρική του συντεταγμένη (u, v) = (0, 0) στο κέντρο της εικόνας. Με αυτό τον τρόπο, οι πληροφορίες που αφορούν χαμηλές συχνότητες (οι οποίες συνήθως είναι κυρίαρχες στην εικόνα) επικεντρώνονται στη μέση της οθόνης.
333
Παρουσίαση του DFT (2/6) Αυτό μπορεί να επιτευχθεί στην πράξη με το να πάρουμε το DFT της εναλλασσόμενης εικόνας (για σκοπούς αναπαράστασης μόνο). Παρατηρήστε ότι: οπότε χρησιμοποιώντας τα πιο πάνω…
334
Παρουσίαση του DFT (3/6)
335
Παρουσίαση του DFT (4/6) Μια απλή μετατόπιση του DFT στο μισό μήκος του και στις δυο κατευθύνσεις παρουσιάζεται πιο κάτω: Centered DFT
336
Παρουσίαση του DFT (5/6) Επειδή το DFT είναι μιγαδικής μορφής, το μέγεθος και η φάση μπορούν να αναπαρασταθούν σαν ξεχωριστή εικόνα. Για να αναπαρασταθεί το μέγεθος , συνήθως είναι καλύτερα να το συμπιέσουμε λογαριθμικά με την εξής εφαρμογή: πριν την αναπαράσταση, επειδή οπτικά οι χαμηλού μεγέθους συχνότητες θα είναι δυσδιάκριτες.
337
Παρουσίαση του DFT (6/6) Μετά το λογάριθμο, είναι αναγκαίο να χρησιμοποιήσουμε γραμμική λειτουργία απλού στίγματος για να επεκτείνουμε την αντίθεση, επειδή οι τιμές του λογαρίθμου θα είναι πολύ μικρές. ΠΑΡΑΔΕΙΓΜΑ DFT Ι = imread(‘exampleim.tif’); F = fft2(I); F1 = log(1+abs(F)); imshow(I); figure, imshow(F1) I
338
Πίνακας Εκθετικών Μιγαδικών
Ορίζουμε ένα πίνακα των DFT εκθετικών μιγαδικών. Αυτός είναι ένας συμμετρικός πίνακας.
339
Πίνακας Εκθετικών Μιγαδικών
Ο αντίστροφος πίνακας του είναι ο εξής συζυγής μιγαδικός:
340
Πίνακας Εκθετικών Μιγαδικών
Στην προηγούμενη εξίσωση, το στοιχείο καθορίζεται από τον εξής πίνακα: όπου
341
Μορφή γινομένου πινάκων των λειτουργιών DFT
Μπορούμε τώρα να ξαναγράψουμε τις DFT και IDFT εξισώσεις σαν γινόμενο πινάκων: DFT: IDFT:
342
Απόδειξη εξισώσεων γινομένου πινάκων των λειτουργιών DFT
343
Μορφή γινομένου πινάκων των λειτουργιών DFT
344
Υπολογισμός του DFT Οι γρήγοροι αλγόριθμοι για το DFT αναφέρονται συλλογικά σαν αλγόριθμοι γρήγορων μετασχηματισμών Fourier (FFT – Fast Fourier Transform). Δεν θα ερευνήσουμε τη σχεδίασή τους, αφού είναι διαθέσιμοι στα περισσότερα προγράμματα μαθηματικών βιβλιοθηκών.
345
Υπολογισμός του DFT Συνήθως ένας αλγόριθμος αρκεί για τον υπολογισμό και του DFT και του IDFT, αφού η δομή των μετασχηματισμών είναι παρόμοια. Στις εξισώσεις πινάκων του DFT – IDFT, θυμηθείτε ότι διαφέρουν μόνο στη χρήση του W αντί του Έτσι ένα πρόγραμμα χρειάζεται να γνωρίζει μόνο ένα ψηφίο ελέγχου (flag bit), το οποίο θα δεικνύει κατά πόσο οι μιγαδικές τιμές θα πρέπει να είναι συζυγείς ή όχι.
346
Το Νόημα Της Συχνότητας Εικόνας
Μερικές φορές είναι εύκολο να χάσουμε την έννοια του DFT και του περιεχομένου συχνότητας της εικόνας σε όλα αυτά τα μαθηματικά. Το DFT είναι ακριβώς αυτό – μια περιγραφή της περιεχόμενης συχνότητας. Κοιτάζοντας το DFT ή το φάσμα μιας εικόνας (ειδικά το μέγεθός της), μπορούμε να προσδιορίσουμε πολλά στοιχεία σχετικά με την εικόνα.
347
Ποιοτικές ιδιότητες του DFT
Είναι διαισθητικά λογικό να σκεφτούμε την περιεχόμενη συχνότητα της εικόνας σε συσχέτιση με την κοκκυκότητα (κατανομή της ακτινωτής συχνότητας) και τον προσανατολισμό της.
348
Granularity Μεγάλες τιμές κοντά στο κέντρο του DFT αντιστοιχούν σε μεγάλες ομαλές περιοχές της εικόνας ή σε δυνατό φόντο. Από τη στιγμή που οι εικόνες είναι θετικές (υπονοώντας μια προσθετική μετατόπιση), κάθε εικόνα έχει μια μεγάλη κορυφή στο (u, v) = (0, 0).
349
Χρήση μασκών στο DFT Θεωρούμε ότι ορίζουμε διαφορετικές εικόνες με τιμές 0 και 1 (δυαδικές εικόνες). Σημείωση: Οι μάσκες πρέπει να εφαρμόζονται πάνω σε shifted εικόνες. Low pass Mid pass High pass
350
Χρήση μασκών στο DFT Η χρησιμοποίηση μασκών στο DFT παράγει IDFT εικόνες με μόνο χαμηλές, μέσες ή υψηλές εναπομείναντες συχνότητες. Φυσικά η πρόσθεση των αποτελεσμάτων μας επαναφέρει στην αρχική εικόνα. Προσανατολισμός (Directionality): Αν το DFT είναι φωτεινότερο κατά μήκος κάποιας κατεύθυνσης , η εικόνα περιλαμβάνει ψηλά στοιχεία προσανατολισμού προς αυτή την κατεύθυνση.
351
Χρησιμοποιώντας μάσκες στο DFT
Ορίζουμε μερικές εικόνες προσανατολισμού μηδενός – ενός:
352
Χρησιμοποιώντας μάσκες στο DFT
Πάλι αν προσθέσουμε τα αποτελέσματα θα πάρουμε πίσω την αρχική εικόνα.
353
Εικόνες Στενού Φάσματος
Είναι επίσης πιθανόν να παράξουμε μια εικόνα η οποία είναι υψηλά προσανατολισμένη. Αυτή η μάσκα δημιουργήθηκε με πολλαπλασιασμό( σημείου- προς – σημείο) της Μάσκας συχνοτήτων με μια από τις μάσκες προσανατολισμού.
354
Θεώρημα Δειγματοληψίας (1/3)
Είναι αξιοσημείωτη η εξέταση της συσχέτισης μεταξύ του DFT (φάσμα ψηφιακού σήματος) και του μετασχηματισμού Fourier της αρχικής, χωρίς – δειγματοληψία εικόνας.
355
Θεώρημα Δειγματοληψίας (2/3)
Η εικόνα Ιc(x,y) έχει Συνεχές Μετασχηματισμό Fourier (CFT) Ιc(wx, wy) όπου (x,y)δηλώνουν τις συχνότητες πραγματικού χώρου και (ωx,ωy) δηλώνουν συνεχείς συχνότητες. ~ ∞ ∞ π √-1 (xωx+ yωy) Ic(ωx, ωy) = ∫ ∫ Ic(x, y) ℮ dωx dωy -∞ -∞ ∞ ∞ ~ π √-1 (xωx+ yωy) Ic(x,y)= 1/ (2π)2 ∫ ∫ Ic(ωx,ωy) ℮ dωx dωy -∞ -∞
356
Θεώρημα Δειγματοληψίας (3/3)
Αυτό δεν πρέπει να είναι μεγάλη έκπληξη αφού Τα ολοκληρώματα είναι όρια αθροισμάτων : Ιc(x,y) μπορεί να εκφραστεί σαν όρια αθροισμάτων εκθετικών μιγαδικών. Σημαντικό: To CFT δεν είναι περιοδικό.Αυτή η ιδιότητα είναι παράξενη σε ψηφιακές εικόνες.Το CFT ορίζεται για όλες τις συχνότητες. Το CFT
357
Συσχέτιση του CFT με το DFT (1/5)
Ας θεωρήσουμε ότι Ιc(x,y) έχει περιορισμένο φάσμα ,που σημαίνει ότι το CFT της είναι μηδέν έξω από ένα πεδίο συχνοτήτων: Ιc(ωx, ωy) = 0 for |ωx| ≥ Wx, |ωy| ≥ Wy Η συνθήκη ικανοποιήτε αφού το υλικό (hardware) το εφαρμόζει με αναλογικό φιλτράρισμα (π.χ. οπτικά). Πριν την δειγματοληψία.
358
Συσχέτιση του CFT και DFT (2/5)
Κάθε πραγματική εικόνα είναι σημαντικά περιορισμένη (π.χ., το CFT της γίνεται μηδενικό για μεγάλα ωx, ωy). Άν Ι(i,j) είναι ένα δείγμα χώρου Χ και Υ στην x- και y-κατεύθυνση (έτσι η συχνότητα δειγματοληψίας και 1 ): Χ Υ Ι(i,j) = Ic(iX,jY) για 0 ≤ i, j ≤ N-1
359
Συσχέτιση του CFT και DFT (3/5)
Tότε το DFT και το CFT συσχετίζονται από: ~ ∞ ∞ ~ n m I(u,v)= ∑ ∑ Ic(ωx ,ωy - ) | X Y n=- ∞ m=-∞ X Y u v ωx = , ωy = N X N Y
360
Συσχέτιση του CFT και DFT (4/5)
∞ ∞ ~ u n v m = ∑ ∑ Ic ( , ) X Y n=- ∞ n=- ∞ N X X NY Y Αυτό είναι το άθροισμα μετατοπισμένης εκδοχής του CFT .Είναι περιοδικό στη u και v κατεύθυνση με περίοδο 1/Χ και 1/Υ.
361
Συσχέτιση του CFT και DFT (5/5)
Αυτό φαίνεται στο πιο κάτω σχήμα:
362
Σχόλια (1/2) Υπάρχει ένας μαθηματικός λόγος γιατί οι εικόνες γιατί οι εικόνες πρέπει να δειγματοληπτούνται αρκετά πυκνά. Αν αυτός ο μαθηματικός όρος παραβιαστεί ,τότε η παραμόρφωση των εικόνων θα είναι ορατή. Επίσης σημαντικό: αν το θεώρημα δειγματοληψίας ικανοποιηθεί ,μπορεί να θεωρηθεί ώς περιοδικό αντίγραφο του CFT. Έτσι ο ΝxN DFT πίνακας Ι θα περιλαμβάνει στοιχεία που αποτελούνται από δείγματα του CFT
363
Σχόλια (2/2) ~ ~ u v I(u,v) = Ic( , ) for 0≤ |u|,|v|≤N/2-1 ΧΥ ΝΧ ΝΥ (Σημειώστε: αφού το CFT δεν είναι περιοδικό, ορίζουμε το DFT σαν δείγματα του CFT με την αρχή (0,0) στο κέντρο). Δεν υπάρχει λόγος για να μην μπορούμε να θεωρήσουμε ότι Χ=Υ=1.
364
Σημαντικές 2-Δ Συναρτήσεις και τα DFT (1/2)
Αξίζει να εξετάσουμε τα DFT s μερικών προσδιορισμών εικόνων .Ωστόσο, αυτό είναι δύσκολο να το κάνουμε με το χέρι στις περισσότερες περιπτώσεις.Έτσι θα δώσουμε μερικά απλά παραδείγματα. Μετά θα δείξουμε μερικά άλλα ως CFT ζεύγη μετασχηματισμού. Constant image : Θέτουμε Ι(i,j) = c for 0≤ i,j≤ N-1 ~ Τότε I(u,v)=N² . c.δ(u,v) δ(u,v)= { 1, u=v=0; else 0.
365
Σημαντικές 2-Δ Συναρτήσεις και τα DFT (2/2)
2-D Unit Pulse Image (2-Δ Unit Pulse εικόνα) Θέτουμε Ι( i,j) = c. δ(i,j) (I(0,0)=c, else I(i,j)=0). ~ N-1 N (ui+ vj) Tότε Ι(u,v) = c. δ(i,j) WN i=0 j=0 =c.W =c (constant DFT). Cosine Wave Image (Εικόνα Συνημιτόνου) Θέτουμε Ι(i,j)=d. cos[2π/Ν (bi + cj)]
366
Eικόνα Συνημιτόνου Με βάση τα προηγούμενα υπολογίζουμε το DFT : N-1 N (bi + cj) -(bi+cj) (ui+vj) Ι(u,v)=(d/2) [WN WN ] WN i=0 j=0 Προκύπτει : Ι(u,v)=(dN² )[ δ(u+b, v+c) +δ(u-b, v-c)] Έτσι το DFT δεν έχει μηδενική τιμή μόνο στις συχνότητες του κύματος συνημιτόνου. Με το ίδιο σκεπτικό υπολογίζω το DFT του ημιτόνου. DFT{d.sin[2π/Ν(bi+cj)]} = (dN²)-1[δ(u-b,v-c) - δ(u+b,v+c)].
367
Παραδείγματα Συνεχή Μετασχηματισμού Fourier (I / II)
Και τώρα μερικά CFT ζεύγη τα οποία είναι δύσκολο να εκφραστούν ή παίρνουν πολύ χρόνο για να γίνουν με το χέρι σαν ζεύγη DFT. Συνάρτηση Ορθογωνίου · Θέτουμε Ic(x, y) = c rect(x/Ax) rect(y/Ay) Δηλαδή: Ic(x, y) = { c; |x| ≤ Ax/2 και |y| ≤ Ay/2 { 0 ; αλλού Αφού rect(x) = { 1 ; |x| ≤ ½ ~ { 0 ; αλλού Τότε: Ιc (wx, wy) = c Ax Ay sinc(wx Ax) sinc(wy Ay) όπου sinc(x)=sin(π x)/(π x)
368
Παραδείγματα Συνεχή Μετασχηματισμού Fourier (II / II)
Συνάρτηση Sinc Ic(x, y) = c· sinc (ax) sinc (by) όπου a, b ≥ 0 Ic (wx, wy) = {c; |wx| ≤ a και |wy| ≤ b {0; αλλού. Συνάρτηση Gaussian Ic(x, y )= exp [ -(x² + y²)/s²] Τότε Ιc(wx, wy)= exp [ -2π ²s²( ωx+ωy) ] Το οποιο ειναι επισης Gaussian.
369
ΕΠΛ 445 – Ψηφιακή Επεξεργασία Εικόνας
Τέλος Κεφαλαίου 4
370
Γραμμικό Φιλτράρισμα Εικόνων
ΕΠΛ 445 – Ψηφιακή Επεξεργασία Εικόνας ΚΕΦΑΛΑΙΟ 5 Γραμμικό Φιλτράρισμα Εικόνων
371
Κυκλική Συνέλιξη (1/2) Έχουμε παρατηρήσει ότι με την μετατόπιση του DFT μιας εικόνας αλλάζει η εμφάνιση της. Για παράδειγμα, πολλαπλασιάζοντας το DFT με μια μάσκα μηδενός: Μετατρέπει με σιγουριά την δομή των πεδίων φωτεινότητας στην εικόνα.
372
Κυκλική Συνέλιξη (2/2) Ποιο είναι το αποτέλεσμα αν δυο τυχαία DFTs πολλαπλασιαστούν μεταξύ τους (σημείο προς σημείο); Ποια είναι η φύση της εικόνας που παράγεται από τις ακόλουθες λειτουργίες;
373
Πολλαπλασιασμός/Διαίρεση DFTs (1/5)
Αποφέυγετε την διαίρεση με το μηδέν.
374
Πολλαπλασιασμός DFTs (2/5)
Εφαρμόζουμε τον αντίστροφο μετασχηματισμό DFT στο γινόμενο των DFTs
375
Πολλαπλασιασμός DFTs (3/5)
376
Πολλαπλασιασμός DFTs (4/5)
Ο εσωτερικός όρος είναι: Αντικαθιστώντας παίρνουμε:
377
Πολλαπλασιασμός DFTs (5/5)
378
Κυκλική Συνέλιξη (1/2) Μελετούμε τώρα το άθροισμα =Ι1 Ι2
=Ι Ι2 =κυκλική συνέλιξη της Ι1 και Ι2 Το είναι ένα άθροισμα βάρους των συντελεστών της εικόνας Ι1 , όπου οι παράμετροι Ι2(i-m , j-n) είναι μετατοπισμένα στοιχεία της εικόνας Ι2.
379
Κυκλική Συνέλιξη (2/2) Το μέγεθος της μετατόπισης εξαρτάτε από (i, j).
Για δεδομένα (i, j), η J(i, j) που αποτελεί την νέα εικόνα, ορίζεται ως: τοποθέτηση της I2 πάνω στην I1 αντιστροφή της I2 : [I2(-m, -n)] μετατόπιση της I2 με μέγεθος (i, j) υπολογισμός I1(m, n)·I2[(i-m)N, (j-n)N] for 0 ≤ m, n ≤ N-1 προσθέτουμε τα αποτελέσματα. Τα σχήματα που δίδονται πιο κάτω είναι απαραίτητα για να κατανοήσουμε πλήρως τις έννοιες αυτές.
380
Διαγράμματα Της Κυκλικής Συνέλιξης (1/6)
Όλες οι ακόλουθες διεργασίες είναι για να υπολογίσουμε την κυκλική συνέλιξη σε ένα απλό σημείο (i, j). Θεωρούμαι τις δυο εικόνες Ι1 και Ι2 με την εικόνα I1 και το σκιασμένο περιεχόμενο σε κάθε φάση της επεξεργασίας που φαίνεται:
381
Διαγράμματα Της Κυκλικής Συνέλιξης (2/6)
Τους δίνουμε το ίδιο σύστημα συντεταγμένων (δηλ. τοποθετούμε την μια πάνω στην άλλη). Και το αποτέλεσμα που παίρνουμε είναι:
382
Διαγράμματα Της Κυκλικής Συνέλιξης (3/6)
Η εικόνα Ι2 αντιστρέφεται(ανακλάτε), κατά μήκος και των δύο αξόνων. Έτσι είναι ορισμένη και για αρνητικές συντεταγμένες, π.χ χρησιμοποιείτε η περιοδική επέκταση.
383
Διαγράμματα Της Κυκλικής Συνέλιξης (4/6)
Η αντιστραμμένη ερμηνεία της Ι2 τότε μετατοπίζεται με το μέγεθος (i , j) κατά μήκος των δυο αξόνων:
384
Διαγράμματα Της Κυκλικής Συνέλιξης (5/6)
Το άθροισμα προεκτείνεται πάνω στο 0<=m,n<=Ν-1 έτσι μερικοί από τους συντελεστές της Ι2(i-m , j-n) πέφτουν έξω από το διάστημα 0,...,Ν-1. Αυτό που υπολογίζεται είναι το άθροισμα του α)γινομένου της: [ Ι1(m,n) ; 0 <= m,n <= N-1 ] β)της περιοδικής επέκτασης [ Ι2(i-m , j-n) ]
385
Διαγράμματα Της Κυκλικής Συνέλιξης (6/6)
Όπως φαίνεται:
386
Υπολογισμός Της Κυκλικής Συνέλιξης (1/3)
Ευθύς Υπολογισμός: Είναι κάπως απλός αλλά χρονοβόρος.
387
Υπολογισμός Της Κυκλικής Συνέλιξης (2/3)
Ψευδοκώδικας: int I1 [N ] [N], I2 [N ] [N], J[N][N]; while (0 ≤ i, j ≤ N-1) { J (i, j) = 0; while (0 ≤ m, n ≤ N-1) J (i, j) = J (i, j) + I1(m, n) * I2[(i-m) mod N, (j-n) mod N]; } Matlab: J = conv2(I1, I2);
388
Υπολογισμός της Κυκλικής Συνέλιξης (3/3)
Ο αλγόριθμος είναι απλά ένα σύνολο με do-loops το ένα μέσα στο άλλο. Αν το Ν είναι μεγάλο(ας πούμε 512 * 512) τότε: -Για κάθε N2 συντεταγμένες: N2 αθροίσματα και N2 πολλαπλασιασμοί . -΄Η N4 αθροίσματα και N4 πολλαπλασιασμοί σύνολο. -Για N = 512, αυτό κάνει 236 = 6.9 x 1010 λειτουργίες.
389
Υπολογισμός με DFT της Κυκλικής Συνέλιξης
Λόγο του FFT, ο υπολογισμός της κυκλικής συνέλιξης στον χώρο του DFT είναι πολύ πιο γρήγορος, νοούμενου ότι Ν =δυνάμεις του 2. Απλά: Όπου δείχνει ένα Ν*Ν σημείων αλγόριθμο FFT. Matlab: J = real (ifft2(fft2(I1) .* fft2(I2))); real(.), παρόλον ότι το φανταστικό μέρος είναι μικρό.
390
Υπολογισμός με DFT της Κυκλικής Συνέλιξης
Ο υπολογισμός του FFT μιας Ν*Ν εικόνας είναι της τάξεως του όπως επίσης και ο υπολογισμός της κυκλικής συνέλιξης. Μετά από όλη αυτή την δουλειά θα ανακαλύψουμε τώρα ότι η κυκλική συνέλιξη πρέπει να τροποποιηθεί για να γίνει χρήσιμη.
391
Γραμμική Συνέλιξης (1/7)
Η κυκλική συνέλιξη είναι συναίτια του περιοδικού DFT Για συνεχείς εικόνες και , κάνουμε πολλαπλασιασμό των CFTs (π.χ., με οπτικά μέσα) Έχει ως αποτέλεσμα την χρήσιμη γραμμική συνέλιξη:
392
Γραμμική Συνέλιξης (2/7)
Η γραμμική συνέλιξη είναι φαινόμενο της φύσης. Η κυκλική συνέλιξη είναι τεχνητό αποτέλεσμα της ψηφιακής επεξεργασίας. Πολλή ύλη από την θεωρία κυκλωμάτων, την οπτική, και την θεωρία συνεχών φίλτρων είναι βασισμένες πάνω στην γραμμική συνέλιξη. Συνεπάγεται ότι, (γραμμική) η θεωρία των ψηφιακών κυκλωμάτων επίσης χρειάζονται την αντίληψη της ψηφιακής γραμμικής συνέλιξης. Ευτυχώς, η κυκλική συνέλιξη μπορεί να χρησιμοποιηθεί για τον υπολογισμό της γραμμικής συνέλιξης.
393
Γραμμική Συνέλιξης (3/7)
Παράδειγμα(γιατί η κυκλική συνέλιξη είναι μη επιθυμητή): Ένα από τους απλούστερους τύπους γραμμικών συνελίξεων είναι η λειτουργία τοπικού μέσου όρου (η φίλτρο μέσου όρου). Πιο κατανοητά, κάθε στίγμα εικόνας αντικαθίσταται από τον μέσο όρο των γειτόνων του μέσα σε ένα τετράγωνο ‘παράθυρο’. Άρα:
394
Γραμμική Συνέλιξης (4/7)
395
Γραμμική Συνέλιξης (5/7)
Αυτό μπορεί να εκφραστεί, στα πιο πολλά σημεία (χωρίς να το αποδείξουμε εδώ) σαν την κυκλική συνέλιξη της εικόνα με μια άλλη εικόνα του τετράγωνου με φωτεινότητα 1/M, όπου M = # στιγμάτων στο τετράγωνο:
396
Γραμμική Συνέλιξης (6/7)
Κοντά στα άκρα της εικόνας, ωστόσο, έχουμε κυκλικές παρεμβολές: Συνήθως είναι επιθυμητό να παίρνουμε μέσους όρους γειτονικών στοιχείων...
397
Γραμμική Συνέλιξης (7/7)
… και γενικά, ο σκοπός της συνέλιξης είναι για να θέσουν υπεράνω και να ζυγίσουν τις εικόνες σύμφωνα με τη σωστή σειρά τους στον χώρο, αντί την περιοδική σειρά που είναι αποτέλεσμα του DFT Το αποτέλεσμα είναι ακόμα χειρότερο αν και οι δυο εικόνες δεν είναι μηδενικές κοντά στις άκρες τους. Αν το φίλτρο είναι μεγάλο, το κυκλικό λάθος είναι γενικά απαράδεκτο Αν το φίλτρο είναι μικρό, το κυκλικό αποτέλεσμα μπορούμε να το δεχτούμε αν αναγνωριστεί κοντά στις άκρες τις εικόνας. Αλλά χρησιμοποιώντας μικρά φίλτρα μπορεί να γίνει και χωρίς DFTs (αργότερα)
398
Γραμμική Συνέλιξη Με Προσθήκη Μηδενικών (1/4)
Η εκτέλεση της γραμμικής συνέλιξης από κυκλική συνέλιξη είναι γενικώς απλό θέμα Επιτυγχάνεται με την προσθήκη στους δυο πίνακες εικόνων με μηδενικές τιμές Γενικά, και οι δυο πίνακες εικόνας πρέπει να διπλασιαστούν στο μέγεθος:
399
Γραμμική Συνέλιξη Με Προσθήκη Μηδενικών (2/4)
Στις άκρες της εικόνας, δεν θα σημειωθεί κυκλικό φαινόμενο, αφού η ‘κινητή’ εικόνα θα ζυγιστούν με μηδενικές τιμές μόνο έξω από το πεδίο ορισμού Αυτό μπορεί να το δούμε παρατηρώντας τις επικαλύψεις όταν υπολογίζουμε την συνέλιξη στα σημεία (i, j):
400
Γραμμική Συνέλιξη Με Προσθήκη Μηδενικών (3/4)
Στις άκρες της εικόνας, δεν θα σημειωθεί κυκλικό φαινόμενο, αφού η ‘κινητή’ εικόνα θα ζυγιστεί με μηδενικές τιμές μόνο έξω από το πεδίο ορισμού. Θα το δούμε στο παράδειγμα παρατηρώντας τις επικαλύψεις όταν υπολογίζουμε την συνέλιξη στα σημεία (i, j). Στο παράδειγμα που θα δούμε τα αθροίσματα υπάρχουν μόνο μέσα στο μπλε σκιασμένο τετράγωνο. Αντί να αθροίζουμε στην περιοδική επέκταση της ‘κινητής εικόνας’, οι μηδενικές τιμές προσθέτονται στις ζυγισμένες εσωτερικές τιμές
401
Γραμμική Συνέλιξη Με Προσθήκη Μηδενικών (4/4)
Παράδειγμα Γραμμική συνέλιξη με προσθήκη μηδενικών
402
Υπολογισμός DFT της Γραμμικής Συνέλιξης
Ας θεωρήσουμε ότι I1´ , I2´ , και J´ είναι εκδοχές εικόνων με προσθήκη μηδενικών 2N x 2N δυο εικόνων οι οποίες θα εφαρμοστεί η γραμμική συνέλιξη (I1 και I2). Τότε αν J´ = I1´ I2´ = IFFT2N [FFT2N[I1´] FFT2N[I2´]] όπου FFT2N δείχνει ένα (2N x 2N)-σημείο του αλγόριθμου FFT, τότε η N x N εικόνα με στοιχεία J(i, j) = J´ (i, j) ; d+0 ≤ i, j ≤ d+ N-1 όπου (d, d) είναι το ‘κέντρο’ του φίλτρου θα περιλαμβάνει το αποτελεσμα γραμμικής συνέλιξης. Με άλλες λέξεις: J = I1 * I2
403
Σημειώσεις Στην πραγματικότητα, το αποτέλεσμα της γραμμικής συνέλιξης είναι μεγαλύτερο από N x N, αλλά το σημαντικό μέρος του αποτελέσματος περιέχεται στην J Μερικές φορές είναι επιθυμητό να συνελέξουμε μια εικόνα με ένα μικρότερο template φίλτρου (ας πούμε MxM), όπου M < N. Αυτό επιτυγχάνεται εύκολα με την προσθήκη μηδενική στο υποστήριγμα με μηδενικά μεγέθους NxN. Στην πράξη, αν M << N, ίσως είναι γρηγορότερο να εκτελέσουμε την γραμμική συνέλιξη στο πεδίο χώρου
404
Ευθείς Υπολογισμός της Γραμμικής Συνέλιξης
Ο ευθείς υπολογισμός της γραμμικής συνέλιξης είναι απλός με χωρίς περισσότερο υπολογισμό από της κυκλικής συνέλιξης (αλλά ακόμα συνήθως πολύ περισσότερος από της προσέγγιση FFT). Αν αντί να θεωρήσουμε ότι I1 και I2 είναι περιοδικά επεκτεινόμενα (όχι απαραίτητος όταν δεν χρησιμοποιούμε το DFT), μπορούμε να υποθέσουμε ότι I1(i, j) = I2(i, j) = 0 οποιουδήποτε i < 0 ή j < 0 ή i > N-1 ή j > N-1. Σε αυτή την περίπτωση η εξίσωση : Δίνει: J = I1 * I2
405
Ψευδό-Κώδικας για Γραμμική Συνέλιξη
{int I1 [N ] [N], I2 [N ] [N]; do { J(i, j) = 0; if (0 ≤ i-m ≤ N-1 and 0 ≤ j-n ≤ N-1) J(i, j) = J(i, j) + I1(m, n) * I2(i-m, j-n); } } while (0 ≤ m, n ≤ N-1); } while (0 ≤ i, j ≤ N-1); Εδώ η υποθετική εντολή (if) εμποδίζει την λειτουργία αθροίσματος από το να συμβεί έξω από την εικόνα.
406
ΓΡΑΜΜΙΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΓΡΑΜΜΙΚΟ ΦΙΛΤΡΑΡΙΣΜΑ ΕΙΚΟΝΩΝ
ΕΠΛ 445 – Ψηφιακή Επεξεργασία Εικόνας ΓΡΑΜΜΙΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΓΡΑΜΜΙΚΟ ΦΙΛΤΡΑΡΙΣΜΑ ΕΙΚΟΝΩΝ Μια επεξεργασία η οποία δέχεται ένα σήμα ή εικόνα Ι σαν είσοδο και την μετασχηματίζει με μια πράξη της γραμμικής συνέλιξης, είναι ένας τύπος γραμμικού συστήματος
407
Παραδείγματα MTF = modulation transfer function:
IR = impulse response: Αυτό που μας ενδιαφέρει:
408
Στόχος του Φιλτραρίσματος Εικόνων
Επεξεργαζόμαστε, δειγματολημμένες, κβαντισμένες εικόνες για να μετασχηματίσουμε σε: εικόνες καλύτερης ποιότητας (με κάποια κριτήρια) εικόνες με ορισμένα χαρακτηριστικά υπερτιμημένα εικόνες με ορισμένα χαρακτηριστικά με μειωμένη έμφαση
409
Στόχος Εξομάλυνση – αφαίρεση θορύβου από λάθη στα bits, μετάδοση, κλπ.
Αφαίρεση θαμπότητας – μεγαλώνει την όξυνση θαμπωμένων εικόνων Όξυνση – δίνει έμφαση σε σημαντικά χαρακτηριστικά, όπως ακμές Συνδυασμός αυτών
410
Χαρακτηρισμός Γραμμικών Φίλτρων (1/3)
Κάθε γραμμικό ψηφιακό φίλτρο εικόνας μπορεί να χαρακτηριστεί με ένα από τους δυο ισοδύναμους τρόπους: * Από την ανταπόκριση (απόκριση) του φίλτρου στον χώρο (impulse response) * Από την ανταπόκριση (απόκριση) Fourier του φίλτρου (Fourier response)
411
Χαρακτηρισμός Γραμμικών Φίλτρων (2/3)
Η ανταπόκριση του φίλτρου στο χώρο και η ανταπόκριση στο πεδίο Fourier είναι ένα DFT ζεύγος: = DFT[ H ] H = IDFT[ ] · Η ανταπόκριση στο πεδίο Fourier επεξηγεί ακριβώς πως το σύστημα επηρεάζει κάθε συχνότητα της εικόνας η οποία περνάτε διαμέσου του συστήματος · Επειδή: Μια συχνότητα εικόνας στο (u, v) = (u0, v0) ενισχύεται ή ελαττώνεται με μέγεθος και μετατοπίζεται από το μέγεθος
412
Παράδειγμα (1/3) Τώρα θεωρούμε ότι η είσοδος στο σύστημα είναι ημιτονική εικόνα με συχνότητα (b, c):
413
Παράδειγμα (2/3) Τότε η έξοδος είναι:
414
Παράδειγμα (3/3)
415
Χαρακτηρισμός Γραμμικών Φίλτρων (3/3)
Η κρουστική απόκριση είναι ακριβώς αυτό – η απόκρισης του συστήματος στην κρουστική απόκριση Η κρουστική απόκριση είναι ένας αποτελεσματικός τρόπος για να σχεδιάσουμε την απόκριση του συστήματος σε μια εικόνα αφού κάθε εικόνα είναι ένα ζυγισμένο άθροισμα από παλμούς.
416
Παράδειγμα Υποθέτουμε ότι η είσοδος σε ένα γραμμικό σύστημα Η είναι μια κρουστική απόκριση, που έχει αποτέλεσμα μια εικόνα εξόδου με στοιχεία: Τότε
417
Σχεδιασμός Φίλτρων με Βάση το DFT (1/2)
Συχνά ένα φίλτρο θα σχεδιαστεί σύμφωνα με τους προσδιορισμούς του πεδίου συχνοτήτων. Αυτό μπορεί να δημιουργηθεί, π.χ. από ένα μοντέλο από γραμμική παραμόρφωση που συνέβη στο συνεχές πεδίο το οποίο θα διορθωθεί ψηφιακός. Δοθέντος ενός εναλλασσόμενου προσδιορισμού ή προσδιορισμού-χώρου μπορούμε να ορίσουμε την κατά προσέγγιση δειγματοληψία ή ψηφιακή ερμηνεία σαν:
418
Σχεδιασμός Φίλτρων με Βάση το DFT (2/2)
Το φίλτρο παίρνει τιμές στο διάστημα 0 ≤ |u|, |v| ≤ N/2 - 1, αφού το CFT είναι κεντραρισμένο και μη-περιοδικό · Όταν το φίλτρο σχεδιαστεί η κρουστική απόκριση μπορεί να παρθεί από:
419
Κατωδιαβατά, Ζωνοδιαβατά, και Ανωδιαβατά Φίλτρα
Οι όροι κατωδιαβατό, ζωνοδιαβατό , και ανωδιαβατό είναι μόνο ατελής ποιοτική επεξηγήσει της απόκρισης συχνότητας του συστήματος ‘Κατωδιαβατό – μειώνει όλες εκτός από τις ‘χαμηλές’ συχνότητες ‘Ζωνοδιαβατό – μειώνει όλες εκτός από ένα ενδιάμεσο διάστημα ή ‘μέση’ συχνότητα ‘Ανωδιαβατό – μειώνει όλες εκτός από τις ‘υψηλές’ συχνότητες Έχουμε ήδη δει παραδείγματα από αυτές: το μηδέν-ένα αποτέλεσμα μάσκας εικόνας
420
Γενικές Χρήσεις των Διάφορων Τύπων Φίλτρων
Τα Κατωδιαβατά φίλτρα χρησιμοποιούνται τυπικά για - εξομάλυνση θορύβου - Θόλωμα λεπτομερειών εικόνας για έμφαση Τα Ανωδιαβατά φίλτρα χρησιμοποιούνται τυπικά για - υπερτίμηση λεπτομερειών της εικόνας και αντιθέσεις - αφαίρεση θαμπώματος εικόνας Τα Ζωνοδιαβατά φίλτρα είναι συνήθως για ειδικές χρήσεις
421
Κατωδιαβατό Φίλτρο (1/2)
Παράδειγμα Το gaussian φίλτρο με απόκριση συχνότητας
422
Κατωδιάβατο Φίλτρο (2/2)
Πέφτει γρήγορα χαμηλά για μεγαλύτερες συχνότητες: N = 32, s = N = 32, s = 1.5 Σχεδιαγράμματα για μια γραμμή τού πίνακα (ν = 0) Το gaussian είναι ένα σημαντικό κατωδιαβατο φίλτρο 2-Δ Gaussians και τα DFTs τους φαίνονται στο κεφαλαίο 4
423
Ζωνοδιαβατό Φίλτρο Επιτυγχάνεται με τη διαφορά δύο κατωδιαβατών όμοιων φίλτρων εκτός από τον συντελεστή συχνότητας Γραφική παράσταση της διαφοράς-των-gaussians (DOG) από προηγούμενο παράδειγμα: u 15 12 9 6 3 -3 -6 -9 -12 -15 0.0 0.2 0.4 0.6 0.8 1.0 όπου Ν = 32 και Κ = 1.5
424
Ανωδιαβατό Φίλτρο Το κατά προσέγγιση DFT του μετασχηματισμού Fourier του συνεχούς Laplacian: Γραφική Παράσταση (Α = 4.5 και Ν = 32) 15 12 9 6 3 -3 -6 -9 -12 -15 0.0 0.2 0.4 0.6 0.8 1.0 u
425
Γραμμική βελτίωση της ποιότητας εικόνας
ΕΠΛ 445 – Ψηφιακή Επεξεργασία Εικόνας Γραμμική βελτίωση της ποιότητας εικόνας Εισαγωγή Μοντέλο Αθροιστικού Λευκού Θορύβου Φάσμα του Λευκού Θορύβου Ψηφιακός Λευκός Θόρυβος Εξομάλυνση Θορύβου – Φίλτρο Μέσου Όρου Εξομάλυνση Θορύβου – Ιδανικό Κατωδιαβατό Φίλτρο Εξομάλυνση Θορύβου – Φίλτρο Gaussian Εφαρμογή Φίλτρων με χρήση Matlab
426
Εισαγωγή Η βελτίωση της ποιότητας εικόνας σημαίνει μια επεξεργασία όπου η οπτική ποιότητα της εικόνας καλυτερεύει. Μελετήσαμε κάποιες λειτουργίες απλού στίγματος και γεωμετρικές λειτουργίες οι οποίες μπορούν να χρησιμοποιηθούν σαν ‘βελτίωση’. Η γραμμική βελτίωση της ποιότητας εικόνας ειδικά, σημαίνει μια επεξεργασία εξομάλυνσης ανωμαλιών ή θορύβου που έχουν διαφθείρει κάπως την εικόνα, χωρίς να καταστρέφει την πληροφορία της. Ο θόρυβος συνήθως σχεδιάζεται σαν αθροιστικός θόρυβος ή σαν θόρυβος πολλαπλασιασμού. Ο θόρυβος πολλαπλασιασμού χειρίζεται καλύτερα από μια μη-γραμμική τεχνική φιλτραρίσματος γνωστή ως ομοιομορφικό φιλτράρισμα.
427
Μοντέλο Αθροιστικού Λευκού Θορύβου (1/2)
Σχεδιάζεται σαν αθροιστική εικόνα Ν της οποίας οι τιμές είναι υψηλά χαοτικές ή απροσδιόριστες. Μπορεί να συμβεί σαν θερμικός θόρυβος στο κύκλωμα, θόρυβος μετάδοσης όταν η εικόνα σταλεί μέσα από κάποιο κανάλι, κλπ. Μπορεί να συμβεί πριν την δειγματοληψία της εικόνας, π.χ., η συνεχής εικόνα JC(x, y) που λαμβάνεται είναι της μορφής: όπου NC(x, y) είναι λευκός θόρυβος
428
Μοντέλο Αθροιστικού Λευκού Θορύβου (2/2)
Θεωρείται να έχει μηδενικό-μεσαίο: αν πάρουμε το μέσο όρο από Μ οποιαδήποτε δείγματα NC(xi, yi) ; i = 1 ,..., M: τότε το meanM[NC] 0 όταν M ∞ . Κατά μέσο όρο, ο θόρυβος πέφτει γύρο από την τιμή μηδέν (ακριβώς μιλώντας, ο θόρυβος είναι επίσης ‘mean-ergodic’).
429
Φάσμα Του Λευκού Θορύβου (1/3)
Το ενεργειακό φάσμα του NC(x, y) είναι ο μετασχηματισμός Fourier: Fourier transform of NC(x, y) Tο τετραγωνικό μέγεθος του μέσου όρου (πάνω σε Μ εικόνες θορύβου) είναι σταθερή για όλες τις συχνότητες (επίπεδο φάσμα, έτσι λευκό): meanM[| C(ωx, ωy)|2] η ως M ∞ για κάθε (ωx, ωy). Κατά μέσο όρο, ο λευκός θόρυβος περιλαμβάνει όλες τις συχνότητες σε ίσα μεγέθη (επίπεδο φάσμα, έτσι λευκό) η = ισχύς του θορύβου
430
Φάσμα Του Λευκού Θορύβου (2/3)
Ο λευκός θόρυβος είναι ένα κατά προσέγγιση μοντέλο της κατάστασης όπου το φάσμα της εικόνας C(ωx, ωy) προσθέτεται στο σήμα φαρδιού φάσματος θορύβου:
431
Φάσμα Του Λευκού Θορύβου (3/3)
Σκοπός της γραμμικής βελτίωσης ποιότητας της εικόνας είναι η αφαίρεση όσο το δυνατό περισσότερο, των υψηλών συχνοτήτων του φάσματος θορύβου και παράλληλα να διατηρήσει όσο το δυνατό περισσότερο το φάσμα της εικόνας. Αυτό επιτυγχάνεται από ένα κατωδιάβατο φίλτρο με κάποιο ευρύ φάσμα (αφού οι εικόνες έχουν οι ίδιες ευρύ φάσμα).
432
Ψηφιακός Λευκός Θόρυβος
Μοντέλο ψηφιακού αθροιστικού θορύβου: J = I + N όπου Ν είναι μια εικόνα με ψηφιακό γραμμικό θόρυβο. Κατά μέσο όρο τα στοιχεία του Ν θα είναι μηδέν. Το DFT της εικόνας θορύβου θα είναι ένα άθροισμα του DFT της αρχικής εικόνας και το DFT της εικόνας θορύβου: = + Κατά μέσο όρο το DFT θορύβου θα περιλαμβάνει ένα ευρύ φάσμα από συχνότητες.
433
Εξομάλυνση Θορύβου – Φίλτρο Μέσου Όρου (1/3)
Αν αντικαταστήσουμε κάθε στίγμα στην εικόνα που περιέχει θόρυβο, με το μέσο όρο των τοπικών γειτόνων μέσα σε ένα M x M παράθυρο τότε η εικόνα θα εξομαλυνθεί: Ο μέσος όρος στοιχείων θα περιορίσει το μεσαίο θόρυβο προς το μηδέν. Το φίλτρο μέσου όρου τετράγωνου είναι ένα γραμμικό ψηφιακό φίλτρο με κρουστική απόκριση: 3 Χ 3 όπου Μ << Ν
434
Εξομάλυνση Θορύβου – Φίλτρο Μέσου Όρου (2/3)
Η φιλτραρισμένη (γραμμικά συνελιγμένη) εικόνα K = H*J = H*I + H*N = = + θα έχει την εικόνα και το φάσμα θορύβου επηρεασμένα με τον ίδιο τρόπο. Παίρνοντας τον μέσο όρο περισσότερων στοιχείων (μεγαλύτερο Μ) δημιουργεί στενότερο φάσμα.
435
Εξομάλυνση Θορύβου – Φίλτρο Μέσου Όρου (3/3)
Το μέγεθος του φίλτρου μέσου όρου συνήθως παίρνεται σα μια ενδιάμεση τιμή για να ισοσταθμίσει τη διάφορα μεταξύ της εξομάλυνσης θορύβου και εξομάλυνσης εικόνας. Τυπικά μεγέθη φίλτρων μέσου όρου είναι M x M = 3 x 3, 5 x 5, ..., 15 x 15 (πολύ εξομάλυνση) για μια 512 x 512 εικόνα. Παράδειγμα φίλτρου μέσου όρου στο Matlab I = imread(‘examleim.tif’); J = imnoise(I, ‘gaussian’, 0.02); K = filter2(fspecial(‘average’,3),J)/255; imshow(J); figure, imshow(K); Άσκηση: Δείξτε ότι: (0,0) = 1
436
Εξομάλυνση Θορύβου – Ιδανικό Κατωδιαβατό Φίλτρο
Είναι επίσης πιθανόν να χρησιμοποιούμε ένα φίλτρο μηδενός-ενός ή ένα ιδανικό κατωδιάβατο φίλτρο με σχεδίαση στο πεδίο του DFT: = 1 για (u,v) = 0 διαφορετικά Χρήσιμο αν είναι πιθανό με κάποιο τρόπο να υπολογίσουμε την πιο μεγάλη σημαντική ακτινωτή συχνότητα.
437
Εξομάλυνση Θορύβου – Φίλτρο Gaussian
Αποτελεί ένα αποτελεσματικό φίλτρο εξομάλυνσης: (u,v) = Πλεονέκτημα ότι δίνει περισσότερο βάρος στους κοντινότερους γείτονες. Ο σχεδιασμός του DFT συνήθως περιλαμβάνει τοποθέτηση του εύρους πλάτους μέσης-κορυφής στο Ucutoff με την επιλογή του σ (στις περισσότερες περιπτώσεις ο χρήστης θα πειραματιστεί με διαφορετικές τιμές του σ), π.χ: Θέτουμε και λύνουμε για το σ:
438
Γραμμική Αποκατάσταση Εικόνας (1...28)
Συχνά μια εικόνα η οποία πάρθηκε ψηφιακά έχει ήδη διευρυνθεί από κάποια γραμμική επεξεργασία. Αυτό μπορεί να γίνει λόγο του θαμπώματος από κίνηση, ή θάμπωμα λόγο της μη-εστίασης της κάμερας. Μπορούμε να σχεδιάσουμε μια τέτοια παρατηρημένη εικόνα σαν το αποτέλεσμα γραμμικά συνέλιξης: JC(x, y) = GC(x, y)*IC(x, y) όπου το GC(x, y) είναι μια γραμμική παραμόρφωση
439
Γραμμική Αποκατάσταση Εικόνας
Επίσης, J̃̃C(wx, wy) = G̃C(wx, wy).ĨC(wx, wy) Η εικόνα δειγματοληψίας τότε θα είναι της μορφής (θεωρώντας τη συχνότητα δειγματοληψίας ικανοποιητικά ψηλή – Θεώρημα δειγματοληψίας) J=G*I με DFT J̃̃ = G̃ Ĩ (με άπειρα στίγματα έτσι που να μπορούμε να προσεγγίσουμε την γραμμική συνέλιξη με κυκλική). Το παραμορφωμένο G είναι επίσης πάντα κατωδιάβατο (θάμπωμα).
440
Γραμμική Αποκατάσταση Εικόνας
Φίλτρο Αντιστροφής Συχνά είναι πιθανό να κάνουμε ένα υπολογισμό της παραμόρφωσης G. Αυτό μπορεί να είναι πιθανό μελετώντας της φυσική της κατάστασης. Το θάμπωμα από κίνηση (κίνηση της κάμερας) είναι συνήθως κατά μήκος μιας διάστασης ή κατεύθυνσης. Αν αυτή η κατεύθυνση μπορεί να υπολογιστεί, τότε ένα προσεγγιστικό φίλτρο μπορεί να σχεδιαστεί.
441
Γραμμική Αποκατάσταση Εικόνας
Αντιστρέφοντας την διαδικασία της γραμμικής παραμόρφωσης G λέγετε Deconvolution. Γίνεται χρησιμοποιώντας το φίλτρο αντίστροφης Ginverse της παραμόρφωσης. Στο πεδίο του DFT, το φίλτρο αντίστροφης ορίζεται από Ginverse(u,v)=1/ G̃(u,v) ; 0 ≤ u, v ≤ N-1 Δεδομένου ότι G̃(u, v) ≠ 0 για 0 ≤ u, v ≤ N-1
442
Γραμμική Αποκατάσταση Εικόνας
Τότε έχουμε για το DFT της φιλτραρισμένης (αποκατεστημένης) εικόνας: Κ̃ = Ginverse G̃ Ĩ = Ĩ Ο σκοπός μας είναι να χρησιμοποιήσουμε ψηφιακούς τρόπους για το θάμπωμα της εικόνας. Όπως θα δούμε, αυτό θα είναι κάπως δύσκολο. Μερικές φορές είναι απίθανο, η μπορεί να γίνει μόνο με οπτική διόρθωση. Συνήθως παίρνεται μόνο ένας υπολογισμός της θαμπότητας G.
443
Γραμμική Αποκατάσταση Εικόνας
Η αντιστροφή της κατωδιάβατης παραμόρφωσης είναι πάντα ανωδιάβατο. u u Gaussian distortion Inverse filter
444
Γραμμική Αποκατάσταση Εικόνας
Σημείωση: το φίλτρο αντιστροφής παίρνει τιμή 1.0 στο (u, v) = (0, 0). Στις υψηλές συχνότητες ο σχεδιαστής πρέπει να είναι προσεκτικός.
445
Γραμμική Αποκατάσταση Εικόνας
Ελλιπής Συχνότητες Δυστυχώς, τα πράγματα δεν είναι πάντα τόσο ‘ιδανικά’ στην πραγματικότητα. Μερικές φορές η απόκριση συχνότητας της παραμόρφωσης παίρνει τιμή μηδέν σε μερικές συχνότητες. Θεωρούμαι ότι για κάποια (u0, v0) ισχύει ότι G(u0, v0) = 0. Ο σύνηθες ορισμός για το φίλτρο αντιστροφής θα δώσει Ginverse (u0, v0) = ∞ που δεν έχει οποιαδήποτε σημασία.
446
Γραμμική Αποκατάσταση Εικόνας
Στην πραγματικότητα κάθε συχνότητα η οποία μηδενίζεται από μια γραμμική παραμόρφωση είναι αναντικατάστατες στην πράξη – χάνονται για πάντα! Το καλύτερο που μπορεί να γίνει είναι να αντιστρέψουμε την παραμόρφωση στις μη-μηδενικές τιμές.
447
Γραμμική Αποκατάσταση Εικόνας (10...28)
Μερικές φορές αυτό μπορεί να είναι πάνω σε πολλά επίπεδα συχνοτήτων. Μερικά οπτικά συστήματα αφαιρούν ένα μεγάλο γωνιακό κομμάτι συχνοτήτων:
448
Γραμμική Αποκατάσταση Εικόνας
Φίλτρο Ψευδό-Αντιστροφής Το φίλτρο ψευδό-αντίστροφης G̃p-inverse ορίζεται G̃p-inverse(u, v) = 1 / G̃(u, v) ; if G̃(u, v) ≠ 0 = 0 ; if G̃(u, v) = 0 for 0 ≤ u, v ≤ N-1. Έτσι, καμία προσπάθεια δεν γίνεται για επανάκτηση μηδενικών συχνοτήτων.
449
Γραμμική Αποκατάσταση Εικόνας
Η συντηρητική προσέγγιση είναι να μηδενίσουμε το φίλτρο ψευδό-αντίστροφης στο γνωστό κομμάτι ελλιπών συχνοτήτων. Με αυτό τον τρόπο κάθε νοθές (θορυβώδεις) συχνότητες θα εκλείπονταν.
450
Γραμμική Αποκατάσταση Εικόνας
Deconvolution στην παρουσία θορύβου Η χειρότερη περίπτωση συμβαίνει όταν η εικόνα παραμορφώνεται και από γραμμικές παραμορφώσεις G και περιλαμβάνει επίσης αθροιστικό θόρυβο. Αυτό μπορεί να συμβεί όταν, για παράδειγμα , μια εικόνα η οποία είναι γραμμικά παραμορφωμένη (G) και τότε στέλνεται μέσα από ένα θορυβώδες κανάλι.
451
Γραμμική Αποκατάσταση Εικόνας
Το γενικό μοντέλο είναι: J = G*I + N όπου G είναι η γραμμική παραμόρφωση και Ν είναι η εικόνα ψηφιακού λευκού θορύβου. Το DFT της παραμορφωμένης εικόνας θα είναι ένα άθροισμα του DFT της γραμμικής παραμόρφωσης της αρχικής εικόνας και του DFT της εικόνας θορύβου J̃̃ = G̃ Ĩ + Ν̃̃
452
Γραμμική Αποκατάσταση Εικόνας
Το φιλτράρισμα με το γραμμικό φίλτρο Η θα πετάξει το αποτέλεσμα K = H*J = H*G*I + H*N ή K̃̃ = H̃̃ J̃̃ = H̃̃ G̃ Ĩ + H̃̃ Ν̃̃ Το πρόβλημα είναι ότι ούτε το κατωδιάβατο φίλτρο (για να εξομαλύνει το θόρυβο, αλλά να μην διόρθωση το θάμπωμα), ούτε το ανωδιάβατο φίλτρο (π.χ., το φίλτρο αντίστροφης, το οποίο θα ενίσχυση το θόρυβο) θα δουλεύει.
453
Γραμμική Αποκατάσταση Εικόνας
Είναι γεγονός ότι αν το φίλτρο αντιστροφής χρησιμοποιηθεί, θα πάρουμε K = Ginverse*J = Ginverse*G*I + Ginverse * N ή K̃̃ = G̃̃inverse G̃̃ Ĩ + G̃̃inverse Ν̃̃ K̃̃ = Ĩ + G̃̃inverse Ν Σε αυτή την περίπτωση το θάμπωμα διορθώνεται, αλλά η αποκατεστημένη εικόνα έχει τρομερά ενισχυμένο υψηλής-συχνότητας θόρυβο προσθεμένο σε αυτή.
454
Γραμμική Αποκατάσταση Εικόνας
Φίλτρο Wiener Το φίλτρο Wiener (από τον Norbert Wiener) είναι μια λύση σε αυτό το πρόβλημα. Το DFT του φίλτρου Wiener για τα μοντέλα θαμπώματος G και του λευκού θορύβου Ν που χρησιμοποιούμε δίνεται από G̃*(u,v) G̃Wiener(u,v) = για 0 ≤ u, v ≤ N-1. | G̃(u,v) |² + n
455
Γραμμική Αποκατάσταση Εικόνας
Συχνά η ισχύς του θορύβου η είναι άγνωστη ή ανεπίτευκτη. Ο σχεδίασης μπορεί τότε να πειραματισθεί με τυχαίες τιμές του η. Θα εξετάσουμε τώρα το κίνητρο πίσω από αυτό το φίλτρο.
456
Γραμμική Αποκατάσταση Εικόνας
Παρατηρήσεις για το φίλτρο Wiener Αν η ισχύς θορύβου είναι μηδέν (καθόλου θόρυβο: η=0), το φίλτρο Wiener συρρικνώνεται στο φίλτρο αντιστροφής: G̃*(u,v) G̃Wiener(u,v) = = = G̃inverse(u,v) | G̃(u,v) |² + n G̃(u,v) για 0 ≤ u, v ≤ N-1 το οποίο είναι πολύ επιθυμητό.
457
Γραμμική Αποκατάσταση Εικόνας (20...28)
Αν δεν υπάρχει καθόλου θάμπωμα (G̃(u, v) = 1 για κάθε u,v), το φίλτρο Wiener συρρικνώνεται στο: G̃Wiener(u,v) = 1/(1+n) για 0 ≤ u, v ≤ N-1 To οποίο είναι φίλτρο που δεν κάνει τίποτα. Έτσι, το φίλτρο Wiener δεν είναι πολύ χρήσιμο αν δεν υπάρχει θάμπωμα. Ενδιαφέρον, ωστόσο, ο MSE είναι λιγότερο σχετικός στην αρχική εικόνα από τον MSE της εικόνας με θόρυβο.
458
Γραμμική Αποκατάσταση Εικόνας
Φυσικά, αν υπάρχουν συχνότητες μηδενισμένες από γραμμική παραμόρφωση G τότε είναι καλύτερα να ορίσουμε το φίλτρο ψευδό-Wiener: G̃*(u,v) G̃p-Wiener(u,v) = Αν G(u,v) = 0 | G̃(u,v) |² + n Αν G(u,v) = 0 τότε θα έχουμε αποτέλεσμα 0. Ο θόρυβος στο ‘ελλιπές κομμάτι’ συχνοτήτων θα αφαιρεθεί.
459
Γραμμική Αποκατάσταση Εικόνας
Οπτική Διαδοχική Διατομή Τα οπτικά συστήματα συχνά θαμπώνουν τις εικόνες που δημιουργούν Μια πιθανή λύση:
460
Γραμμική Αποκατάσταση Εικόνας
Μικροσκοπία οπτικής διατομής Μια εικόνα παίρνεται σε κάθε εστιακό επίπεδο, δίνει μια σειρά από 2-Δ εικόνες, ή μια 3-Δ εικόνα οπτικής πυκνότητας
461
Γραμμική Αποκατάσταση Εικόνας
(Ideal) 3-D image of optical density Magnitude of (ideal) 3-D DFT
462
Γραμμική Αποκατάσταση Εικόνα
Μπορέσαμε να δείξουμε ότι σε αυτό το σύστημα τρία διαφορετικά αποτελέσματα συμβαίνουν: - Μια γραμμική κατωδιαβάτη παραμόρφωση G. - Κατά προσέγγιση λευκός αθροιστικός θόρυβος. - Μια μεγάλη δυκωνική περιοχή συχνοτήτων ευθυγραμμισμένη στην κατεύθυνση του οπτικού άξονα, μηδενίζεται.
463
Γραμμική Αποκατάσταση Εικόνας (26...28)
Region of 3-D frequencies zeroed by the optical sectioning microscope Παρατηρήστε ότι η συχνότητα (u, v, w) = (0, 0, 0) μηδενίζεται επίσης. Αυτό σημαίνει ότι η χαμηλότερη (πεδίο φόντου) συχνότητα χάθηκε.
464
Γραμμική Αποκατάσταση Εικόνας (27...28)
Δεν υπάρχει τρόπος για να επανακτήσουμε αυτή τη δυκωνική περιοχή συχνοτήτων. Έτσι οι 3-Δ εικόνες που πάρθηκαν έχουν θαμπωθεί, είχαν μια μεγάλη 3-Δ περιοχή συχνοτήτων αφαιρεμένη και είχαν κάποιο θόρυβο προσθεμένο. Στο επεξεργασμένο αποτέλεσμα μας, επιδεικνύουμε την ικανότητα του - ψευδο-αντιστρόφου φίλτρου - ψευδο-Wiener φίλτρου.
465
Γραμμική Αποκατάσταση Εικόνας (28...28)
Και επίσης επιδεικνύουμε δύο 3-Δ εικόνες διατομής από: a pollen grain (κόκκου γύρης) - a pancreas Iset of Langerhans (μεγάλη συλλογή κυττάρων)
466
ΕΠΛ 445 – Ψηφιακή Επεξεργασία Εικόνας
Κεφάλαιο 7
467
Περιεχόμενα Σκοποί της Συμπίεσης Κώδικες χωρίς απώλεια πληροφοριών Κώδικες με απώλεια πληροφοριών JPEG Πρότυπο Συμπίεσης Εικόνας Wavelet ή Sub band Κωδικοποίηση εικόνας
468
Σκοπός Της Συμπίεσης Εικόνας
Για να δημιουργήσουμε μια αναπαράσταση συμπιεσμένης εικόνας που ‘φαίνεται η ίδια’ (όταν αποσυμπιεστεί) αλλά και που μπορεί να αποθηκευτεί σε μικρότερο χώρο από ότι η αρχική εικόνα. Αυτό μπορεί να είναι είτε - Μια αναπαράσταση χωρίς απώλειες, από την οποία η εικόνα μπορεί ακριβώς να αποκωδικοποιηθεί (όπως ήταν πριν την συμπίεση). - Μια αναπαράσταση με απώλειες από την οποία οι οπτικές πλεονάζουσες πληροφορίες έχουν αφαιρεθεί. Η συμπιεσμένη εικόνα ‘φαίνεται’ χωρίς αλλαγή, αλλά μαθηματικώς έχει χάσει πληροφορίες.
469
Η συμπίεση εικόνας είναι σημαντική:
Μείωση του χώρου αποθήκευσης της εικόνας Μείωση του bandwidth μετάδοσης της εικόνας (Σημείωση:) - Μια μη-συμπιεσμένη εικόνα δεν έχει συμπιεσθεί - Μια αποσυμπιεσμένη εικόνα είναι μία συμπιεσμένη εικόνα η οποία έχει αποκωδικοποιηθεί για επίδειξη
470
Σημαντική Για Την Αρχειοθέτηση Εικόνας
Αρχική Εικόνα Τελική Εικόνα
471
Σημαντική Για Την Μετάδοση Εικόνας
Οι συμπιεσμένες εικόνες μπορούν να σταλούν με πιο γρήγορο ρυθμό: Περισσότερες εικόνες το δευτερόλεπτο!
472
Μετρήσεις Συμπιέσεως (1/2)
Bits για κάθε στίγμα (ΒΒΡ) είναι ο μέσος αριθμός των bits που χρειάζονται την αποθήκευση των επιπέδων φωτεινότητας για κάθε στίγμα της εικόνας Σε μια μη-συμπιεσμένη εικόνα BPP = log2(K) = B, όπου K = ο αριθμός των επιτρεπόμενων επιπέδων φωτεινότητας. Συνήθως B = log2(256) = 8. Ο αριθμός των bits που χρησιμοποιούνται για την κωδικοποίηση των στιγμάτων μπορεί να διαφέρει κατά μήκος της κωδικοποιημένης εικόνας. Ας ορίσουμε το B(i, j) = ο αριθμός των στιγμάτων που χρησιμοποιούνται για την κωδικοποίηση του στίγματος I(i, j). Τότε BPP =
473
Μετρήσεις Συμπιέσεως (2/2)
Αν ο ολικός αριθμός των bits που περιλαμβάνεται στον κώδικα [I] είναι Btotal, τότε BPP = B total Η Αναλογία Συμπίεσης (CR) είναι η αναλογία CR = > 1 Και τα δύο, το BPP και το CR χρησιμοποιούνται συχνά
474
Συμπίεση Χωρίς Απώλειες (1/2)
Οι τεχνικές συμπίεσης χωρίς απώλειες επιτυγχάνουν συμπίεση των πληροφοριών της εικόνας χωρίς να χάσουμε καμία πληροφορία. Η αληθινή εικόνα μπορεί να ανασκευαστεί ακριβώς από την κωδικοποιημένη εικόνα. Συνήθως, ο κώδικας χωρίς απώλειες δεν επιτυγχάνει μεγάλη συμπίεση (αφού τίποτε δεν χάνεται), αλλά έχει ορισμένες εφαρμογές όπως: - Επεξεργασία ιατρικής εικόνας - Επεξεργασία εικόνας με σκοπό την ανίχνευση διαφόρων χαρακτηριστικών.
475
Συμπίεση Χωρίς Απώλειες (2/2)
Ο λόγος συμπίεσης που παίρνουμε το σχήμα κωδικοποίησης χωρίς απώλειες βρίσκονται συνήθως στο διάστημα :1 ≤ CR ≤ 3:1 αν και γενικά αλλάζει από εικόνα σε εικόνα
476
Πλεονασμός Εικόνων (1/2)
Η συμπίεση εικόνας επιδιώκει να εκμεταλλευτεί τον πλεονασμό ή την συσχέτιση μεταξύ των στιγμάτων (ή των αναπαραστάσεων τους). Οι περισσότερες εικόνες έχουν ψηλό πλεονασμό. Τα γειτονικά επίπεδα φωτεινότητας συνήθως είναι παρόμοια ή έχουν κάποια σχέση. Οι εξομαλυσμένες περιοχές έχουν πολύ παρόμοια επίπεδα φωτεινότητας.
477
Πλεονασμός Εικόνων (2/2)
Τα στίγματα κατά μήκος των ακμών έχουν παρόμοιες σχέσεις. Τα πρότυπα έχουν πλεονασμό εκ φύσεως λόγο της περιοδικής συμμετρίας, κλπ.
478
Η ιδέα πίσω από την κωδικοποίηση χωρίς απώλειες
Χρησιμοποίηση μεταβλητών μήκων λέξεως για κωδικοποίηση των επιπέδων φωτεινότητας. Εξισώνουμε μικρά μήκη λέξεων στα πεδία φωτεινότητας τα οποία εμφανίζονται συχνά (πλεονάζον πεδία φωτεινότητας). Εξισώνουμε μεγάλα μήκη λέξεων στα πεδία φωτεινότητας τα οποία δεν εμφανίζονται συχνά. Κατά μέσο όρο, το BPP θα μειωθεί.
479
Tο ιστόγραμμα της εικόνας HI (1/2)
HI(k) = n αν το επίπεδο φωτεινότητας k εμφανίζεται (ακριβώς) n φορές στην I, για κάθε k = 0, ... K-1.
480
Ιστόγραμμα Εικόνας (2/2)
- Ας ορίσουμε το B(k) = # των bits που χρησιμοποιούνται για την κωδικοποίηση του επιπέδου φωτεινότητας k. Τότε BPP = Αυτή είναι η συνηθισμένη μέτρηση του BPP για τεχνικές χωρίς απώλειες (με μεταβλητό μήκος λέξεων)
481
pI(k) = η "πιθανότητα" να υπάρξει το επίπεδο φωτεινότητας k
Εντροπία Εικόνας Θυμηθείτε τις τιμές κανονικού ιστογράμματος: pI(k) = HI(k) ; k = 0,..., K-1 όπου pI(k) = η "πιθανότητα" να υπάρξει το επίπεδο φωτεινότητας k - Η εντροπία μιας εικόνας I ορίζεται: E [I] = pI(k) log2 pI(k)
482
Ιδιότητες Εντροπίας (1/2)
- Η εντροπία είναι απλά μια μέτρηση η οποία έχει καλές ιδιότητες για υπολογισμό της ποιότητας της στρατηγικής κωδικοποίησης. - Η εντροπία μιας εικόνας Ι είναι μια μέτρηση της πολυπλοκότητας – του μεγέθους της πληροφορίας που περιλαμβάνει. - Μπορεί να αποδεικτεί ότι η εντροπία έχει μέγιστη τιμή όταν pI(k) = p = (σταθερά για 0 ≤ k ≤ K-1) το οποίο αντιπροσωπεύει ένα επίπεδο ιστόγραμμα. Σε αυτή την περίπτωση (K = 2B) E [I] = log = B Η εντροπία της I μεγαλώνει όταν το ιστόγραμμα ανοίγει.
483
Ιδιότητες Εντροπίας (2/2)
- Η εντροπία έχει ελάχιστη τιμή όταν pI(ki) = 1 for some 0 ≤ ki ≤ K-1 Έτσι pI(kj) = 0 για j ≠ i. Αυτή είναι σταθερή εικόνα και E [I] = 0. - Είναι γεγονός ότι: 0 ≤ E [I] ≤ B
484
Σημαντικότητα της Εντροπίας (1/3)
Ένα σημαντικό θεώρημα της θεωρίας κωδικοποίησης περιορίζει το πόσο καλά μπορούμε να κωδικοποιήσουμε μια εικόνα χωρίς απώλειες με το να εξισώσουμε μεταβλητά μήκη λέξεων BPP ≥ E [I] Ο κώδικας μεταβλητών μήκων λέξεων θεωρεί ότι οι πιθανότητες pI(k) είναι γνωστές και στον διαβιβαστεί και στον παραλήπτη Με τη λέξη κώδικας, εννοούμε μοναδικά αποκωδικοποιημένο κώδικα.
485
Σημαντικότητα της Εντροπίας (2/3)
- Αυτός είναι ο καλύτερος λόγος για την χρησιμοποίηση της εντροπίας σαν μέτρο κωδικοποίησης. Μας λεει ότι μια εικόνα με τέλειο επίπεδο ιστόγραμμα E [I] = B Δεν μπορεί να συμπιεστεί χρησιμοποιώντας ένα κώδικα μεταβλητών μήκων λέξεων. Ευτυχώς, συχνά μπορούμε να διορθώσουμε αυτή την κατάσταση.
486
Σημαντικότητα της Εντροπίας (3/3)
Μας λεει επίσης ότι μια εικόνα σταθερής φωτεινότητας δεν χρειάζεται καν να σταλεί! E [I] = 0 Θα εξετάσουμε σύντομα τεχνικές κωδικοποίησης μεταβλητών μήκων λέξεων. Πρώτα, θα κοιτάξουμε το πρόβλημα της μείωσης εντροπίας εικόνας. Αυτό θα κάνει πιθανή την κωδικοποίηση με χαμηλότερο ΒΡΡ (τουλάχιστον χαμηλότερο όριο για τις προσπάθειες μας)
487
DPCM για Μείωση Εντροπίας Εικόνας (1/2)
Προσέγγιση: Υπολογίζουμε μια νέα εικόνα D με πιο συμπιεσμένο ιστόγραμμα από την εικόνα Ι αλλά χωρίς απώλεια πληροφοριών Πρέπει να είμαστε ικανοί να πάρουμε την I ακριβώς από την D – χωρίς απώλεια πληροφοριών
488
DPCM (2/2) Η συμπίεση του ιστογράμματος (Κεφαλαίο 3) δε θα δουλέψει, αφού χάνεται πληροφορία όταν δυο επίπεδα φωτεινότητας k1 και k2 μαζευτούν πάνω στο ίδιο επίπεδο φωτεινότητας k Η διαφορική παλμική διαμόρφωση (DPCM) είναι μια αποτελεσματική τεχνική για μέση εντροπίας χωρίς απώλειες. Θα εξετάσουμε την απλούστερη μορφή του DPCM
489
Μείωση εντροπίας από Διαφόρηση (απλό DPCM) (1/3)
Έχουμε παρατηρήσει ότι τα γειτονικά στίγματα συχνά έχουν παρόμοιες τιμές σε μια εικόνα, ειδικά κατά μήκος εξομαλυσμένων περιοχών Ορίζουμε μια διαφορική εικόνα D χρησιμοποιώντας είτε 1-Δ ή 2-Δ διαφόρηση (1) D(i, j) = I(i, j) - I(i, j-1) for 0 ≤ i ≤ N-1 and 1 ≤ j ≤ N-1 (2) D(i, j) = I(i, j) - I(i-1, j) - I(i, j-1) + I(i-1, j-1) for 1 ≤ i, j ≤ N-1
490
Μείωση εντροπίας από Διαφόρηση (2/3)
Το νέο ιστόγραμμα HD συνήθως θα είναι πιο συμπιεσμένο από το HI. Έτσι E [D] < E [I]. Aυτός είναι ένας γενικός κανόνας για εικόνες, όχι μαθηματικό αποτέλεσμα.
491
Μείωση εντροπίας από Διαφόρηση (3/3)
Σημειώστε ότι η διαφορική εικόνα D θα είναι ικανή να πάρει -2K-1 τιμές (1-K) ,..., (K-1) αν η (1) χρησιμοποιηθεί -4K-1 τιμές 2(1-K) ,..., 2(K-1) αν η (2) χρησιμοποιηθεί
492
Αποκωδικοποίηση της I από τη D (1/3)
Αν χρησιμοποιηθεί η (1) τότε: I(i, j) = D(i, j) + I(i, j-1) for 0 ≤ i ≤ N-1 and 1 ≤ j ≤ N-1 Η πρώτη στήλη της I πρέπει επίσης να σταλεί μαζί με την κωδικοποιημένη εικόνα. Μπορεί να σταλεί πρώτη, πριν την εικόνα.
493
Αποκωδικοποίηση της I από τη D (2/3)
Αν χρησιμοποιηθεί η (2), τότε I(i, j) = D(i, j) + I(i-1, j) + I(i, j-1) - I(i-1, j-1) for 1 ≤ i, j ≤ N-1 Σε αυτή την περίπτωση, στέλλεται η πρώτη σειρά και η πρώτη στήλη της Ι μαζί με την κωδικοποιημένη εικόνα. Στην συζήτηση της κωδικοποίησης, θα αγνοήσουμε την κωδικοποίηση της πρώτης σειράς και στήλης γιατί το overhead είναι μικρό.
494
Αποκωδικοποίηση της I από τη D (3/3)
Αυτό είναι χωρίς απώλειες DPCM. Υπάρχουν επίσης DPCM’s με απώλειες, και υπάρχουν επίσης στατιστικά DPCM’s τα οποία έχουν ως βάρη τα στίγματα διαφοράς για να βρει την καταλληλότερη τιμή κάποιου στατιστικού κριτηρίου. Απο’δω και πέρα θεωρούμαι ότι τα ‘επίπεδα φωτεινότητας’ της D έχουν τιμές: 0,…,K´ -1 με πιθανότητες: p D(k); 0 ≤ k ≤ K´ -1
495
Εύρεση Βέλτιστου Κώδικα (1/3)
Θυμηθείτε ότι το θεώρημα χαμηλότερου ορίου για την κωδικοποίηση του BPP είναι: BPP ≥ E [D] = - Σ pD(k) log2 pD(k) χρησιμοποιώντας κώδικα μεταβλητού μήκους λέξεων K´ -1 k=0
496
Εύρεση Βέλτιστου Κώδικα (2/3)
Η κωδικοποίηση κάθε τιμής επιπέδου φωτεινότητας k χρησιμοποιώντας μήκος λέξεως L(k) bits δίνει ένα μέσο όρο μήκος λέξης ή BPP BPP = Σ pD(k) L(k) Συγκρίνοντας με την πιο πάνω εξίσωση. Αν L(k) = - log2 pD (k) τότε έχουμε επιτύχει το χαμηλότερο όριο! K´ -1 k=0
497
Εύρεση Βέλτιστου Κώδικα (3/3)
Αυτό συμβαίνει, ΑΝ μπορούμε να βρούμε τέτοιο κώδικα. Δεν μπορούμε αν [- log2 pD(k)] ≠ κάποιο ακέραιο για κάθε k. Ορίζουμε τον κώδικα εύρεσης καταλληλότερου C για την D σαν κάποιο κώδικα που ικανοποιεί: - BPP of C(D) ≤ BPP of any other code C´(D) - BPP of C(D) = E [D] if [- log2 pD(k)] = integers όπου C(D) είναι η κωδικοποιημένη ερμηνεία του D
498
Αλγόριθμος Huffman (1/3)
Για ένα σύνολο επιπέδων φωτεινότητας {0 ,.., K´ -1} δίνει ένα σύνολο από κώδικες λέξεις kk=code(k) 0 ≤ k ≤ K´ -1 όπου BPP = Σ pD(k) L(kk) είναι όσο πιο μικρό γίνεται. ^ K´ -1 ^ k=0
499
Αλγόριθμος Huffman (2/3)
Αλγόριθμος Huffman: Από ένα δυαδικό δέντρο με κλαδιά που έχουν επιγραφή το επίπεδο φωτεινότητας ki και τις πιθανότητες pD(ki) (0) Μας περιορίζει από την μελέτη κάθε ki όπου pD(ki) = 0 (1)Βρίσκει τις 2 μικρότερες πιθανότητες pi=pD(ki) και pj= pD(kj) (2) Αντικαθιστά με pij = pi + pj (βάση σημάδι, μειώνει την λίστα κατά ένα)
500
Αλγόριθμος Huffman (3/3)
(3) Δίνει τιμές στα κλαδιά: για το ki '1' και για το kj '0' (4) Μέχρι που η λίστα να έχει μόνο 1 στοιχείο (φτάσαμε στην ρίζα) επιστρέφουμε στο (1) * Στο τρίτο βήμα, οι τιμές ‘1’ και ‘0’ δίνονται σε ζεύγη στοιχείων (ki, kj), τριών στοιχείων κλπ., όπως η διαδικασία προχωρεί.
501
Παράδειγμα εφαρμογής Huffman
Υπάρχουν K´ = 8 τιμές {0 ,.., 7} που θα πάρουν λέξεις κώδικες: pD(0) = 1/2 pD(4) = 1/16 pD(1) = 1/8 pD(5) = 1/32 pD(2) = 1/8 pD(6) = 1/32 pD(3) = 1/8 pD(7) = 0
502
Παράδειγμα εφαρμογής Huffman
Η διαδικασία δημιουργεί ένα δέντρο, με τιμές ‘1’ και ‘0’ τοποθετημένα στα δεξιά και αριστερά κλαδιά σε κάθε βήμα: k pD(k) / / / / / / /32 kk L(kk) 1/4 1/16 1 0 1 0 1/8 Παράδειγμα 1 1 0 1/4 μέγιστη τιμή επιπέδου φωτεινότητας = 6 < 23 Άρα, χρειάζονται Β=3bits για την κωδικοποίηση κάθε pixel!!! 1 0 1/2 1 1 0 1 0 ^ ^
503
Παράδειγμα εφαρμογής Huffman
BPP= Σ pD(k)L(kk) = pD(0)L(k0) + pD(1)L(k1) + pD(2)L(k2) + pD(3)L(k3) + pD(4)L(k4) + pD(5)L(k5) + pD(6)L(k6) + pD(7)L(k7) = 1/2*1 + 1/8*3 + 1/8* 3 +1/8*3 + 1/16*4 + 1/32*5 + 1/32* = E[D] = - Σ pD(k) log2 pD(k)= CR= = =1.38:1 K´ -1 ^ k=0 ^ ^ ^ ^ ^ ^ ^ ^ Το επίπεδο φωτεινότητας 7 δεν υπάρχει στην εικόνα, άρα δεν κωδικοποιείται!! K´ -1 B 3 k=0 BPP 2.18
504
Παράδειγμα εφαρμογής Huffman
Υπάρχουν K´ = 8 τιμές {0 ,.., 7} που θα πάρουν λέξεις κώδικες: pD(0) = 0.4 pD(4) = 0.12 pD(1) = pD(5) = 0.08 pD(2) = pD(6) = 0.04 pD(3) = 0.2 pD(7) = 0.0 Παράδειγμα 2
505
Παράδειγμα εφαρμογής Huffman
k pD(k) kk L(kk) 0.16 0.12 1 0 1 0 0.36 0.24 1 0 0.6 μέγιστη τιμή επιπέδου φωτεινότητας = 6 < 23 Άρα, χρειάζονται Β=3bits για την κωδικοποίηση κάθε pixel!!! 1 0 1 1 0 ^ ^ BPP=2.48 bits Entropy=2.42 bits CR=1.2:1
506
Αποκωδικοποίηση Huffman
Ο κώδικας Huffman έχει μόνο ένα τρόπο αποκωδικοποίησης. Υπάρχει μόνο μια ερμηνεία για μια σειρά από λέξεις κώδικες (σειρά από bits). Η αποκωδικοποίηση προχωρεί με τη σάρωση του δέντρου.
507
Παράδειγμα Στο δεύτερο παράδειγμα, παραλαμβάνεται αυτή η σειρά τιμών των bits : Η σειρά των bits εξετάζεται μέχρι να αναγνωριστεί μια λέξη κώδικα. Αυτή η διαδικασία συνεχίζεται μέχρι να αναγνωριστούν όλα τα bits: 0001,0110,1,0111,0000,010,0001,0001,0110,1,1,1,010 Η αποκωδικοποιημένη σειρά (σε επίπεδα φωτεινότητας k) είναι:
508
Σχόλια (1/2) Ο συντελεστής συμπίεσης που επιτυγχάνεται με τον κώδικα Huffman είναι συνήθως γύρω στο 2:1 ≤ CR ≤ 3:1 Ο κώδικας Huffman μπορεί να προσβληθεί από θόρυβο στην μετάδοση (πολύ περισσότερο από την μετάδοση της αρχικής εικόνας) Υπάρχουν κώδικες διόρθωσης λαθών οι οποίοι είναι πολύ λιγότερο ευαίσθητοι στο θόρυβο. Μεγαλώνουν κάπως το συντελεστή κωδικοποίησης. Μερικά σύγχρονα σχήματα κωδικοποίησης εικόνας με απώλειες μπορούν να πετύχουν CR > 30:1
509
Σχόλια (2/2) Έτσι, γιατί εξετάζουμε σχήματα χωρίς απώλειες; Επειδή:
(1) Τα σχήματα με απώλειες μπορούν να συνδυαστούν με τον κώδικα Huffman, κωδικοποιώντας τις λέξεις κώδικα με απώλειες, με τον κώδικα Huffman. (2) Ο κώδικας συμπίεσης με απώλειες μπορεί τότε να πολλαπλασιαστεί με το μέγεθος του συμπιεστή Huffman.
510
Κωδικοποίηση Εικόνας Με Απώλειες (1/2)
Για τη συμπίεση με απώλειες έχουν προταθεί πολλές προσεγγίσεις. Θα κάνουμε ανασκόπηση μερικών δημοφιλών προσεγγίσεων: (1) Κωδικοποίηση Αποκομμένων Μπλοκ (BCT) – απλός και γρήγορος (2) Κωδικοποίηση Αποκομμένων Διανυσμάτων (VQC) - δαπανηρός αλλά με ποιότητα (3) Κωδικοποίηση Οπτικού Υποδείγματος (VPIC) – χρησιμοποιεί οπτικά μοντέλα (4) Κωδικοποίηση Διακριτού Μετασχηματισμού Συνημιτόνου (DCT) και JPEG (5) Κωδικοποίηση Εικόνας με βάση τα Wavelets
511
Κωδικοποίηση Εικόνας Με Απώλειες (2/2)
Οι συντελεστές συμπίεσης που πάρθηκαν κατά τα πρώτα 25 χρόνια έρευνας: Τα πράγματα όμως αλλάζουν!!!
512
Κωδικοποίηση Εικόνας χρησιμοποιώντας Μπλοκ
Τυπικά μεγέθη των μπλοκ είναι 4x4 ή 8x8 ή 16x16 Η μέθοδος με την μεγαλύτερη απώλεια χωρίζει την εικόνα σε μικρότερα μπλοκ τα οποία κωδικοποιούνται ξεχωριστά (oι μέθοδοι των Wavelets αποτελούν εξαίρεση). Ο λόγος; Γενικά οι εικόνες είναι υψηλά ασταθείς, διαφορετικά κομμάτια μιας εικόνας μπορούν να έχουν διαφορετικές ιδιότητες όπως περισσότερες υψηλές ή χαμηλές συχνότητες, περισσότερη ή λιγότερη λεπτομέρεια κλπ. Έτσι, η τοπική κωδικοποίηση είναι πολύ πιο αποδοτική.
513
Κωδικοποίηση Αποκομμένου Μπλοκ ( BTC ) 1..7
Γρήγορος αλλά δίνει περιορισμένη συμπίεση. Χρησιμοποιεί 4 Χ 4 μπλοκ { Ι(1) , Ι(2),…,Ι(16) } που περιέχουν : = 128bits. Βήματα κωδικοποίησης της εικόνας : 1.Χωρίζουμε την εικόνα σε μπλοκ μεγέθους 4 Χ 4 , όπου : i. Σύνολο στιγμάτων στο μπλοκ = { Ι(1),Ι(2),…,Ι(16) } ii. Συνολικός αριθμός bits στο μπλοκ πριν την κωδικοποίησή του = = 128 bits.
514
Κωδικοποίηση Αποκομμένου Μπλοκ ( BTC ) 2..7
Βήματα κωδικοποίησης της εικόνας ( συνέχεια ): 2.Για κάθε μπλοκ υπολογίζουμε και μεταδίδουμε : i. Την μέση φωτεινότητα του μπλοκ : , χρησιμοποιώντας Β1 bits . ii. Την τυπική απόκλιση ( standard deviation ) : , χρησιμοποιώντας Β2 bits. iii. Ένα 16-bit δυαδικό μπλοκ b το οποίο υπολογίζουμε με τον εξής τρόπο : _ Για i = 1,2,…,16 b ( i ) = 1 αν Ι ( i ) ≥ I και _ b ( i ) = 0 αν Ι ( i ) < Ι
515
Κωδικοποίηση Αποκομμένου Μπλοκ ( BTC ) 3..7
Βήματα κωδικοποίησης της εικόνας ( συνέχεια ): Παράδειγμα 1 : _ Ι = Ι = Αναλογία Συμπίεσης : CR = B / ( B1 + B ) 1.Αν Β1 = Β2 = 8 CR = 128/32 = 4:1 2.Έχουμε καλή ποιότητα αν : Β1 = 6 , Β2 = 4 CR = 128/26 ≈ 5:1 121 114 56 47 37 200 247 255 16 12 169 43 5 7 251 1
516
Κωδικοποίηση Αποκομμένου Μπλοκ ( BTC ) 4..7
Βήματα κωδικοποίησης της εικόνας ( συνέχεια ): Σχόλια : Χρησιμοποιώντας Β1 > Β2 είναι εντάξει : το ανθρώπινο μάτι είναι πολύ ευαίσθητο στην ύπαρξη διαφοράς , αλλά όχι στο μέγεθος ( magnitude ) της διαφοράς : Mach Band Illusion _ _ Συνδυασμένος με τον κώδικα εντροπίας για Ι , σ , μπορεί να δώσει CR≈10:1.
517
Κωδικοποίηση Αποκομμένου Μπλοκ ( BTC ) 5..7
Αποκωδικοποίηση του BTC Μπλοκ ( BTC Block Decoding ) Για να δημιουργήσουμε τα “αποκωδικοποιημένα” στίγματα ( pixels ) J(1),J(2),…,J(16) πρέπει να ακολουθήσουμε τα πιο κάτω βήματα : 1. Έστω Q = αριθμός των 1 που λήφθηκαν. Ρ = αριθμός των 0 που λήφθηκαν. 2. Θέτουμε : , αν b( i ) = 1 , αν b( i ) = 0 όπου και b το κωδικοποιημένο μπλοκ που στάλθηκε.
518
Κωδικοποίηση Αποκομμένου Μπλοκ ( BTC ) 6..7
Αποκωδικοποίηση του BTC Μπλοκ ( BTC Block Decoding ) _ _ _ _ Το Α επιλέγεται έτσι ώστε J≈I και σJ ≈ σI (λάθος κβαντοποίησης). Παράδειγμα 2 : Χρησιμοποίηση των δεδομένων του παραδείγματος 1. 1. Q = 7 , P = 9 A = 2. _ I = ΙΝΤ [ ] = 99. _ σ I = INT [ ] = 93. J( i ) = 99 + INT [ 93 / ] = = 104 , αν b(i)=1. J( i ) = 99 – INT [ ] = 99–82 = , αν b(i)=0.
519
Κωδικοποίηση Αποκομμένου Μπλοκ ( BTC ) 7..7
Αποκωδικοποίηση του BTC Μπλοκ ( BTC Block Decoding ) Παράδειγμα 2 ( συνέχεια ): _ _ J = και J = , σ = 77.3 204 17
520
Κωδικοποίηση Αποκομμένου Διανύσματος ( VQ ) 1..7
Αυτή η τεχνική είναι πολύ ευαίσθητη υπολογιστικά. Βήματα κωδικοποίησης μιας εικόνας : 1. Διαιρούμε την εικόνα σε 4 Χ 4 μπλοκ. 2. Υπολογίζουμε ένα βιβλίο με κώδικες ( codebook ) των Μ “τυπικών” 4 X 4 μπλοκ Τj , j = 1,2,…,M. Αυτό γίνεται χρησιμοποιώντας αλγορίθμους ομαδοποίησης . Συνήθως : 256 ≤ Μ ≤ 1024
521
Κωδικοποίηση Αποκομμένου Διανύσματος ( VQ ) 2..7
Βήματα κωδικοποίησης μιας εικόνας ( συνέχεια ) Παράδειγμα : Αν χρησιμοποιηθεί 2 Χ 1 μπλοκ ,ο χώρος με τις ομάδες των μπλοκ μπορεί να έμοιαζε με τον ακόλουθο. όπου μπλοκ κέντρο ομάδας Gray-level (τυπικό μπλοκ) Gray – level 1
522
Κωδικοποίηση Αποκομμένου Διανύσματος ( VQ ) 3..7
Βήματα κωδικοποίησης μιας εικόνας ( συνέχεια ) Σχόλια για βήμα 2: Συνήθως οι ομάδες βρίσκονται χρησιμοποιώντας ομαδοποίηση μικρότερης τετραγωνικής απόστασης. Το κέντρο κάθε ομάδας γίνεται ο τυπικός κώδικάς της. Στη VQ συμπίεση ο χώρος έχει 16 διαστάσεις αντί 2 διαστάσεις, και αυτό λόγω του ότι χρησιμοποιείται 4 Χ 4 μπλοκ. Ο υπολογισμός του βιβλίου με τους κώδικες ( codebook ) είναι πολύ χρονοβόρα διαδικασία. i. Μπορεί να υπολογιστεί ευθέως από την εικόνα . ii. Σε εφαρμογές πολλών παρόμοιων εικόνων μπορεί να χρησιμοποιηθεί ένα παγκόσμιο βιβλίο με κώδικες.
523
Κωδικοποίηση Αποκομμένου Διανύσματος ( VQ ) 4..7
Βήματα κωδικοποίησης μιας εικόνας ( συνέχεια ) 3.Χρησιμοποιούμε ένα αλγόριθμο αναζήτησης για να αποφασίσουμε ποιο από τα M “τυπικά” μπλοκ είναι πιο κοντά στο κάθε 4 Χ 4 μπλοκ της εικόνας. Αυτό ονομάζεται κβαντοποίηση διανύσματος. Το κοντινότερο “τυπικό” μπλοκ το αποφασίζουμε χρησιμοποιώντας την έννοια του μέσου-τετραγώνου ως ακολούθως : Κοντινότερο τυπικό μπλοκ =
524
Κωδικοποίηση Αποκομμένου Διανύσματος ( VQ ) 5..7
Βήματα κωδικοποίησης μιας εικόνας ( συνέχεια ) Σχόλια για βήμα 3: Αν το βιβλίο με τους κώδικες κατασκευαστεί από την εικόνα τότε η αναζήτηση για το κοντινότερο τυπικό μπλοκ δεν παίρνει καθόλου χρόνο,αφού οι μέσες τετραγωνικές αποστάσεις είναι γνωστές από την ομαδοποίηση στο βήμα 2. Αν ένα παγκόσμιο βιβλίο με κώδικες χρησιμοποιηθεί τότε η αναζήτηση είναι πολύ χρονοβόρα.
525
Κωδικοποίηση Αποκομμένου Διανύσματος ( VQ ) 6..7
Βήματα κωδικοποίησης μιας εικόνας ( συνέχεια ) 4.Όταν το καλύτερο ( κοντινότερο ) “τυπικό” μπλοκ Τj βρεθεί , μόνο ο δείκτης j στέλνεται . i. Για Μ = 1024 χρειάζονται 10 bits για αποστολή του δείκτη j CR = ( ) / 10 = 12.8 : 1 . ii. Για Μ = 256 χρειάζονται 8 bits για αποστολή του δείκτη j CR = ( ) / 8 = 16 : 1
526
Κωδικοποίηση Αποκομμένου Διανύσματος ( VQ ) 7..7
Γενικά σχόλια : Η κατασκευή του βιβλίου με τους κώδικες(codebook) και η αναζήτηση των διανυσμάτων είναι πολύ χρονοβόρες διαδικασίες. Η αποκωδικοποίηση είναι πολύ γρήγορη .Απλά γίνεται έλεγχος στο βιβλίο με τους κώδικες για εύρεση του δείκτη που έχει σταλεί. Το VQ χρησιμοποιείται σε εφαρμογές όπου ο χρόνος κωδικοποίησης δεν είναι σημαντικός , αλλά ο χρόνος αποκωδικοποίησης είναι πολύ σημαντικός. Παράδειγμα : Βιβλιοθήκες εικόνων. Αποδεκτές εικόνες στο διάστημα CR = 15 : 1 – 20 : 1 είναι τυπικές.
527
Κωδικοποίηση Οπτικού Υποδείγματος ( VPIC ) 1..11
Χρησιμοποιεί 4 Χ 4 μπλοκ εικόνας . Χρησιμοποιεί ένα μικρό παγκόσμιο βιβλίο με κώδικες με πέντε “τυπικά” μπλοκ : 1. Μπλοκ Ακμών ( Edge Blocks ) :
528
Κωδικοποίηση Οπτικού Υποδείγματος ( VPIC ) 2..11
Πέντε “τυπικά” μπλοκ ( συνέχεια ): 1. Μπλοκ Ακμών (συνέχεια) : Σταθερό μπλοκ ( Constant Block ) :
529
Κωδικοποίηση Οπτικού Υποδείγματος ( VPIC ) 3..11
Τα μπλοκ σχεδιάζονται χρησιμοποιώντας αρχές από την ανθρώπινη όραση : 1.Το μάτι είναι ευαίσθητο στις ακμές και στα εξομαλυσμένα τοπία (regions). Έτσι τα μπλοκ ακμών και τα σταθερά μπλοκ αντιπροσωπεύουν την εικόνα. 2.Ο νόμος του Weber : Σε ένα μικρό τοπίο της εικόνας , υπάρχει η ελάχιστη αντιληπτή αλλαγή φωτεινότητας.Έτσι τα μπλοκ με μικρή αλλαγή φωτεινότητας πρέπει να κωδικοποιούνται σαν σταθερά μπλοκ. 3.Το ανθρώπινο μάτι αφαιρεί τις χαμηλές συχνότητες / το dc από τις εικόνες και τις επεξεργάζεται ξεχωριστά. 4.Το ( μη – dc ) σύστημα της ανθρώπινης όρασης έχει μια ζωνοδιάβατη αντίδραση στο διάστημα 3 – 6 cy / deg ( deg = degrees ). 5.Εικόνες ( π.χ. στην οθόνη ) ,πάντα παρατηρούνται από μια απόσταση.
530
Κωδικοποίηση Οπτικού Υποδείγματος ( VPIC ) 4..11
Ένα μοντέλο για τη Γεωμετρική Παρατήρηση Θεωρούμε : Η εικόνα είναι Ν Χ Ν , τα μπλοκ κώδικες είναι Μ Χ Μ. Η εικόνα παρουσιάζεται πάνω σε μια L X L (cm²) οθόνη. D είναι η απόσταση παρατήρησης ( cm ). ΜΧΜ μπλοκ-εικόνας. a M D Σημείο Παρατήρησης ΝΧΝ εικόνα παρουσιαζόμενη πάνω σε LXL οθόνη. N
531
Κωδικοποίηση Οπτικού Υποδείγματος ( VPIC ) 5..11
Ένα μοντέλο για τη Γεωμετρική Παρατήρηση ( συνέχεια ) Αν D >> L , η γωνία παρατήρησης a που αντιστοιχεί σε ένα μπλοκ είναι : degrees. Για μια 40 in ( διαγώνιο ) οθόνη , L ≈ 72cm . Έτσι , για πιθανές τιμές N = 512 , M = 4 και D = 200cm , η γωνία παρατήρησης είναι a ≈ 0.16º.
532
Κωδικοποίηση Οπτικού Υποδείγματος ( VPIC ) 6..11
Σχετίζοντας τη Γεωμετρία Παρατήρησης με την Αντίδραση της Ορατότητας Θυμηθείτε : Το ορατό ζωνοδιαβατό διάστημα είναι 3 – 6 cy / deg. Έτσι για ένα μπλοκ εικόνας : 0.48 – 0.96 cy / ( 0.16º γωνία παρατήρησης ). Μπορούμε να πούμε ότι πρέπει να υπάρχει το μέγιστο ένας κύκλος μεταξύ μιας 0.16º γωνίας ή στο 4 Χ 4 μπλοκ εικόνας. Έτσι το μέγιστο μια αποδεκτή αλλαγή φωτεινότητας ( φωτεινό προς σκοτεινό ή αντίθετα ) αντιπροσωπεύεται σε κάθε μπλοκ ακμών.
533
Κωδικοποίηση Οπτικού Υποδείγματος ( VPIC ) 7..11
Υπολογισμός του Μπλοκ Για κάθε 4 Χ 4 μπλοκ b = { b(i,j) ; 0 ≤ i,j ≤ 3 } , βρες τη διαφορά των μέσων στα μισά μπλοκ ως ακολούθως : 1. Στην κατεύθυνση του x ( γραμμή ) : Δxb = ave { bi,j ; 0 ≤ i ≤ 3 ; j = 0,1 } – ave { bi,j ; 0 ≤ i ≤ 3 ; j = 2,3 } 2. Στην κατεύθυνση του y ( στήλη ) : Δyb = ave { bi,j ; i = 0,1 , 0 ≤ j ≤ 3 } - ave { bi,j ; i = 2,3 , 0 ≤ j ≤ 3 } Το μέγεθος μιας ακμής( στο τετράγωνο ) και η κατεύθυνσή της είναι : | b |² = ( Δxb )² + ( Δyb )² και < b = tanˉ¹ [ Δxb / Δyb ] Αυτά έχουν συνεχές πεδίο τιμών τ το οποίο πρέπει να κβαντοποιηθεί.
534
Κωδικοποίηση Οπτικού Υποδείγματος ( VPIC ) 8..11
Αλγόριθμος κωδικοποίησης εικόνας Για κάθε 4 Χ 4 μπλοκ εικόνας : _ 1. Υπολογίστε τον μέσο b , το μέγεθος ακμής | b |² και την κατεύθυνση ακμής < b . 2. Αν | b |² ≤ min κωδικοποιείστε το b σαν σταθερό μπλοκ ( Νόμος του Weber ) .Μεταδώστε αυτή την απόφαση χρησιμοποιώντας 1 bit . 3. Αν | b |² > min κωδικοποιείστε το b σαν μπλοκ ακμής . i.Μεταδώστε την < b χρησιμοποιώντας Βο = 2bits ( 4 κατευθύνσεις ακμής ). ii.Μεταδώστε το | b |² χρησιμοποιώντας Βg bits ( 0≤Βg ≤2,το μάτι δεν είναι πολύ ευαίσθητο στο μέγεθος της ακμής ). iii.Μεταδώστε την πολικότητα της ακμής με 1bit.
535
Κωδικοποίηση Οπτικού Υποδείγματος ( VPIC ) 9..11
Αλγόριθμος κωδικοποίησης εικόνας ( συνέχεια ) Για κάθε 4 Χ 4 μπλοκ εικόνας ( συνέχεια ): _ 4.Κβαντοποιείστε και μεταδώστε το b χρησιμοποιώντας Bm bits : i.Μπλοκ ακμής ( Edge block ) Bm = Bme ii.Σταθερό μπλοκ ( Constant block ) Bm = Bmc _ όπου Bme < Bmc. Το μάτι είναι πιο ευαίσθητο στο b στα εξομαλισμένα σημεία. Συνολικός αριθμός bits που θα μεταδοθούν : i.Μπλοκ ακμής ( Edge block ) : Be = Bme + Bg + Bo + 2 = Bme + Bg + 4. ii.Σταθερό μπλοκ ( Constant block ) : Bc = Bmc + 1. Πάντα Be > Bc.
536
Κωδικοποίηση Οπτικού Υποδείγματος ( VPIC ) 10..11
Σε μια εικόνα κωδικοποιημένη με Nc σταθερό μπλοκ και Ne μπλοκ ακμής η ακριβής συμπίεση που επιτυγχάνεται είναι : Τυπικές τιμές είναι : Bc = 6 και Be = 7 οι οποίες δίνουν : 18.3 : 1 ≤ CVPIC ≤ : 1
537
Κωδικοποίηση Οπτικού Υποδείγματος ( VPIC ) 11..11
Αντιπροσώπευση των σταθερών μπλοκ με τον μέσο της φωτεινότητας μόνο. Για ένα μπλοκ ακμής αποκωδικοποιείστε ως ακολούθως : 1.Αντιπροσωπεύστε τα πρότυπα ακμών με ± 1. 2.Πολλαπλασιάστε το πρότυπο με το μέγεθος της κλίσης. 3.Αποφασίστε την πολικότητα. 4.Προσθέστε τον μέσο της φωτεινότητας. Ανάλυση πολυπλοκότητας Πολυπλοκότητα : 2.0 προσθέσεις , 0.1 πολλαπλασιασμοί για κάθε στίγμα ( γρήγορος ).
538
Διακριτός Μετασχηματισμός Συνημίτονου (DCT) Κωδικοποίηση & JPEG (1/6)
Υπολογισμός του διακριτού μετασχηματισμού και του αντίστροφου διακριτού μετασχηματισμού συνημίτονου μιας εικόνας : 1. Διακριτός Μετασχηματισμός Συνημίτονου ( DCT ) 2.Αντίστροφος Διακριτός Μετασχηματισμός Συνημίτονου ( IDCT ) όπου C( u ) = 1 / √2 ; u = 0 C( u ) = ; u = 1,…,N-1
539
Διακριτός Μετασχηματισμός Συνημίτονου (DCT) Κωδικοποίηση & JPEG (2/6)
Γιατί να χρησιμοποιούμε DCT αντί για DFT ? Υπάρχουν O(N²logN²) αλγόριθμοι για τον DCT – και κάπως γρηγορότεροι από τον DFT : λόγω του ότι έχουμε να κάνουμε υπολογισμούς μόνο με πραγματικούς αριθμούς με γρήγορη αριθμητική ακεραίων μόνο. Η χρησιμοποίηση του DCT δίνει καλύτερης ποιότητας συμπιεσμένη εικόνα από τη χρησιμοποίηση του DFT , η οποία υποφέρει από block-artifacts.Το DFT δείχνει ότι η εικόνα είναι N-περιοδική ,ωστόσο το DCT δείχνει ότι η αντικατοπτρισμένη εικόνα είναι 2Ν-περιοδική.
540
Διακριτός Μετασχηματισμός Συνημίτονου (DCT) Κωδικοποίηση & JPEG (3/6)
Περιοδικότητα που συνεπάγεται από το DFT σε αντίθεση με το DCT Ένα σήμα μήκους – Ν Ν
541
Διακριτός Μετασχηματισμός Συνημίτονου (DCT) Κωδικοποίηση & JPEG (4/6)
Περιοδικότητα που συνεπάγεται από το DFT σε αντίθεση με το DCT Η περιοδική επέκταση που συνεπάγεται από το DFT : Η περιοδική επέκταση του αντικατοπτρισμένου σήματος που συνεπάγεται από το DCT : N 2N
542
Διακριτός Μετασχηματισμός Συνημίτονου (DCT) Κωδικοποίηση & JPEG (5/6)
Περιοδικότητα που συνεπάγεται από το DFT σε αντίθεση με το DCT Το DFT μήκους – 2Ν αντικατοπτρισμένου σήματος οδηγεί (δύο περιόδους) στο DCT του μήκους – Ν σήματος. Βασική Διαφορά : Η περιοδική επέκταση του DFT δημιουργεί υψηλές συχνότητες - ανακοπές μεταξύ των μπλοκ.Αυτές οι υψηλές συχνότητες μπορεί να αναπαρασταθούν στο κώδικα ( δεν καταστρέφονται ) , αλλιώς έχουμε κακής ποιότητας ανακατασκευασμένη εικόνα. To DCT δεν έχει αυτό το πρόβλημα , έτσι έχουμε λιγότερα να κωδικοποιήσουμε και έτσι έχουμε υψηλότερη απόδοση.
543
Διακριτός Μετασχηματισμός Συνημίτονου (DCT) Κωδικοποίηση & JPEG (6/6)
ΒΑΣΙΚΗ ΔΙΑΦΟΡΑ: Η περιοδική επέκταση του DFT δημιουργεί ψηλές συχνότητες – οι ασυνέχειες μεταξύ των μπλοκ. Αυτές οι ψηλές συχνότητες πρέπει να αναπαρασταθούν στον κώδικα (δεν καταστρέφονται), αλλιώς η ανακατασκευασμένη εικόνα θα είναι κακής ποιότητας με blocking effects. Το DCT δεν έχει αυτό το πρόβλημα – λιγότερη κωδικοποίηση και ψηλότερη απόδοση.
544
Χρησιμοποιεί το DCT σαν το κεντρικό μετασχηματισμό.
Επανάληψη του JPEG Το πρότυπο εμπορικής βιομηχανίας – Joint Photographic Experts Group (JPEG). Χρησιμοποιεί το DCT σαν το κεντρικό μετασχηματισμό. Γενικά ο αλγόριθμος JPEG είναι περίπλοκος. Τρία μέρη: Βασικό σύστημα JPEG (βασικός κώδικας με απώλειες). Εκτενή χαρακτηριστικά JPEG (12-bit, προοδευτική, αριθμητική). Κωδικοποιητής JPEG χωρίς απώλειες.
545
Βήματα Βασικού Συστήματος JPEG (1/3)
Διαχωρίζουμε την εικόνα σε 8 x 8 μπλοκ, και μετασχηματίζουμε κάθε μπλοκ με DCT. Δηλώνουμε αυτά τα μπλοκ με
546
Βήματα Βασικού Συστήματος JPEG (2/3)
Διαιρούμε σημείο με σημείο κάθε μπλοκ με ένα 8 x 8 πίνακα κανονικοποίησης Q(u, v), τον οποίο ορίζει ο χρήστης. Αυτός ο πίνακας μεταδίδεται σαν μέρος του κώδικα για την ολική εικόνα. Ο πίνακας συνήθως σχεδιάζεται χρησιμοποιώντας ιδιότητες ευαισθησίας του συστήματος ανθρώπινης όρασης.
547
Βήματα Βασικού Συστήματος JPEG (3/3)
Ομοιόμορφα κβαντικοποιούμε τα αποτελέσματα. Δίνει ένα πίνακα ακέραιων που περιέχει πολλά μηδενικά.
548
Παράδειγμα (1/3) 8 x 8 μπλοκ
549
Παράδειγμα (2/3) Ένας τυπικός JPEG πίνακας κανονικοποίησης
550
Παράδειγμα (3/3) Αποτέλεσμα Παρατηρήστε όλα τα μηδενικά.
551
Βήματα Βασικού Συστήματος JPEG (1/7)
Εφαρμόζουμε απλό DPCM στις διακριτές συνημιτονικές (DC) τιμές μεταξύ γειτονικών μπλοκ για να μειώσουμε την εντροπία. Υπολογίζουμε τη διαφορά μεταξύ της τρέχουσας DC τιμής και του αριστερού διπλανού μπλοκ.
552
Βήματα Βασικού Συστήματος JPEG (2/7)
Η σειρά e(k) που είναι το αποτέλεσμα των διαφορών συμπιέζεται δίχως απώλειες χρησιμοποιώντας ένα χωρίς απώλειες JPEG κωδικοποιητή Huffman (έχει ένα προκαθορισμένο πίνακα Huffman). Όπως και πριν, κρατώντας την πρώτη σειρά/στήλη των DC τιμών, καθώς επίσης και την e(k), επιτρέπεται η ανακατασκευή των DC τιμών.
553
Βήματα Βασικού Συστήματος JPEG (3/7)
Επανατακτοποιούμε τις AC τιμές. Ο κβαντικοποιημένος πίνακας περιλαμβάνει πολλά μηδενικά στοιχεία, ειδικά στις υψηλές συχνότητες. Έτσι, τακτοποιούμε τα στοιχεία σε ένα 1-Δ διάνυσμα χρησιμοποιώντας τη ζιγκ-ζαγκ διάταξη
554
Βήματα Βασικού Συστήματος JPEG (4/7)
Από το προηγούμενο παράδειγμα το διατεταγμένο κβαντικοποιημένο μπλοκ είναι
555
Βήματα Βασικού Συστήματος JPEG (5/7)
Κωδικοποιούμε τις AC τιμές χρησιμοποιώντας ακόμα ένα χωρίς απώλειες JPEG κωδικοποιητή Huffman. Κωδικοποιούμε τα μηδενικά – υπάρχουν πολλά – με τη μέθοδο ‘μήκος διαδρομής’. Αυτό είναι πιθανόν η μεγαλύτερη πηγή συμπίεσης.
556
Βήματα Βασικού Συστήματος JPEG (6/7)
Η αποκωδικοποίηση επιτυγχάνεται με αντίστροφη της κωδικοποίησης Huffman και της DPCM για επαναδημιουργία Πολλαπλασιάζουμε με τον πίνακα κανονικοποίησης για τη δημιουργία του κωδικοποιημένου DCT
557
Βήματα Βασικού Συστήματος JPEG (7/7)
Η κωδικοποιημένη εικόνα είναι η IDCT του αποτελέσματος Οι συμπιέσεις που μπορούν να επιτευχθούν κυμαίνονται: 8 : 1 (πολύ καλή ποιότητα) 16 : 1 (καλή ποιότητα) 32 : 1 (κακή ποιότητα για τις περισσότερες εφαρμογές)
558
Wavelet ή Subband Κωδικοποίηση Εικόνας 1..11
Ολική σειρά από προσεγγίσεις κωδικοποίησης εικόνας που έχει ένα κοινό θέμα – αποσύνθεση πολλαπλής ανάλυσης. Δεν χρησιμοποιούνται τα μπλοκ εικόνων – δεν έχουμε ανακατασκευασμένη εικόνα κακής ποιότητας. Μερικοί αλγόριθμοι φτάνουν σε συμπίεση 40:1.
559
Wavelet ή Subband Κωδικοποίηση Εικόνας
ΒΑΣΙΚΗ ΙΔΕΑ: Η εικόνα Ι περνά διαμέσου ενός συνόλου από ζωνοδιάβατα φίλτρα. Τα φίλτρα σχηματίζουν μια ορθοκανονική βάση, που σημαίνει ότι η εικόνα Ι μπορεί να επανακτηθεί ακριβώς, περνώντας τα φιλτραρισμένα σήματα διάμεσου μιας τράπεζας από φίλτρα αποκωδικοποίησης.
560
Wavelet ή Subband Κωδικοποίηση Εικόνας 3..11
H 1 N -1 coefficient quantization Ý Bandpass filter bank Image I G Reconstruction S Code( )
561
Wavelet ή Subband Κωδικοποίηση Εικόνας
Τα Subband φίλτρα διαχωρίζουν ή αποσυνθέτουν την εικόνα σε ψηλές συχνότητες και χαμηλές συχνότητες που ονομάζονται subbands. Κάθε ζώνη συχνότητας μπορεί να κωδικοποιηθεί ξεχωριστά. Αυτά λέγονται φίλτρα τετραγωνισμού. Αν αυτό γίνει επαναληπτικά στις ζώνες των χαμηλότερων συχνοτήτων, το αποτέλεσμα είναι ένας μετασχηματισμός wavelet.
562
Wavelet ή Subband Κωδικοποίηση Εικόνας 5..11
HH HL LH LLHH LLLH LLHL (0, 0) "Pyramid" Wavelet Transform (0, 0) "Tree-Structured" Wavelet Transform (0, 0) High, High High, Low Low, High Low, Low
563
Wavelet ή Subband Κωδικοποίηση Εικόνας
Απεικόνιση της ιεραρχίας του φίλτρου (1-Δ μόνο) H 1 I Image High Low
564
Wavelet ή Subband Κωδικοποίηση Εικόνας 7..11
Μέσω μιας διαδικασίας υποδειγματοληψίας σε κάθε πεδίο φιλτραρίσματος, υπάρχουν ακριβώς N2 μη πλεονάζον συντελεστές wavelet. Η εικόνα μπορεί να επανακατασκευαστεί ακριβώς από αυτά. Η υποδειγματοληψία είναι βαρύτερη (περισσότερη) στις χαμηλότερες συχνότητες. Οι συντελεστές του wavelet κβαντικοποιούνται, όπως και στο JPEG, με τις ψηλότερες συχνότητες να κβαντικοποιούνται πιο αυστηρά.
565
Wavelet ή Subband Κωδικοποίηση Εικόνας
Η συμπίεση είναι μια περιοχή με ενεργητική έρευνα. Μερικές τεχνικές: Κωδικοποίηση εντροπίας παρόμοια του Huffman. Κώδικας μήκους διαδρόμων στα μηδενικά. ‘Κωδικοποίηση Μηδενικού δέντρου’. ΒΑΣΙΚΗ ΙΔΕΑ: Όμοια με το JPEG, σαρώνει από τις χαμηλότερες στις ψηλότερες συχνότητες και κωδικοποιούν τα μήκη διαδρόμων για τους μηδενικούς συντελεστές.
566
Wavelet ή Subband Κωδικοποίηση Εικόνας 9..11
HH HL LH LLHH LLLH LLHL (0, 0) Zig-zag scanning to find zeroed coefficients
567
Wavelet ή Subband Κωδικοποίηση Εικόνας - Αποκωδικοποίηση
Ολική αποκωδικοποίηση χρειάζεται: Αποσυμπίεση συντελεστών του wavelet. Επανακανονικοποίηση κβαντικοποιημένων συντελεστών. Επανακατασκευή εικόνας από τους αποκωδικοποιημένους συντελεστές
568
Wavelet ή Subband Κωδικοποίηση Εικόνας – Αποκωδικοποίηση 11..11
G 1 S Reconstruction from Code ( ) I Αυτό είναι μετριασμένη έκθεση (watered-down exposition) της κωδικοποίησης wavelet.
569
ΕΠΛ 445 – Ψηφιακή Επεξεργασία Εικόνας
ΚΕΦΑΛΑΙΟ 8 Ταύτιση Προτύπου (Template Matching) Ανίχνευση Ακμών Ανιχνευτής Ακμών Κλήσης Ανιχνευτής Ακμών Laplacian Ανισοτροπική Διάχυση
570
Περιεχόμενα 1..4 Tι είναι η Ψηφιακή Ανάλυση Εικόνας;
Ταύτιση Προτύπου (Template) Μετρήσεις Μη Ταίριαξης Διασταυρωμένη Συσχέτιση Κατωφλίωση Περιορισμοί Ταύτισης Πρωτύπων Αρχές Ανίχνευσης Ακμών
571
Περιεχόμενα 2..4 Κλίμακα μίας Ακμής Εικόνας
Σύνοψη Μεθόδων Ανίχνευσης Ακμών Ανιχνευτής Ακμών με Βάση την Κλίση Ορισμός Ανιχνευτών Ακμών με Βάση την Κλίση Ψηφιακή Διάκριση Λειτουργία Απλού Στίγματος Λειτουργία Κατωφλίωσης
572
Περιεχόμενα 3..4 Ανιχνευτής Ακμών Τύπου LAPLACIAN Ψηφιακό LAPLACIAN
Εξομαλυμένο Προ-Φίλτρο GAUSSIAN Ανιχνευτής Ακμών LAPLACIAN-OF- GAUSSIAN Ανιχνευτής ZC
573
Περιεχόμενα 4..4 Κατωφλίωση των ZCs Διπλή Κατωφλίωση
Κατωφλίωση Συνδεδεμένης Διαδρομής Ανιχνευτής Ακμών CANNY Ασκήσεις
574
Tι είναι η Ψηφιακή Ανάλυση Εικόνας; (1/3)
Αφαίρεση «κοσμικών» πληροφοριών από τις εικόνες μέσο ψηφιακής επεξεργασίας. Συνήθως η ανάλυση έχει κάποιο σκοπό. Για παράδειγμα: Η μέτρηση απλών ιδιοτήτων αντικειμένων όπως το σχήμα, η επιφάνεια, η απόσταση, η αντανάκλαση, η σύσταση επιφάνειας. Εύρεση λαθών ή διαφορών από μη αναμενόμενη “ονομαστική” εικόνα: εύρεση λάθους, αυτόματος έλεγχος.
575
Tι είναι η Ψηφιακή Ανάλυση Εικόνας; (2/3)
Αναγνώριση κινητού στόχου από το σχήμα και τις ιδιότητες κίνησης Ταξινόμηση εικόνων από σκηνές αέρος χρησιμοποιώντας μια στατιστική προσέγγιση ταξινόμησης προτύπων Πλοήγηση ενός vision-guided robot διαμέσου ενός εχθρικού περιβάλλοντος με τη δημιουργία ενός 3-D χάρτη του άμεσου περιβάλλοντος Δεν υπάρχουν γενικές αναλύσεις εικόνων ή συστήματα τεχνητής όρασης διαθέσιμα, αλλά το καθένα πρέπει να σχεδιαστεί για να ταιριάξει με το θέμα που έχουμε, το υπολογιστικό
576
Tι είναι η Ψηφιακή Ανάλυση Εικόνας; (3/3)
περιβάλλον κλπ. Ωστόσο, υπάρχει μια ¨βιβλιοθήκη¨ από υπαρκτούς αλγόριθμους οι οποίοι εκτελούν υποκαθήκοντα καθορισμένα για τα περισσότερα ή τα πιο πολλά θέματα όρασης
577
Tαύτιση Προτύπου (Template) (1/4)
Συχνά μας ενδιαφέρει να βρούμε πόσες φορές ένα κομμάτι εικόνας υπάρχει σε μια εικόνα. Αυτό μπορεί να σημαίνει να βρούμε κάποιο συγκεκριμένο αντικείμενο, χαρακτήρα κλπ. Είναι δυνατό να ορίσουμε μια τεχνική η οποία χρησιμοποιεί απλή παραθυροποίηση της εικόνας για να επιτύχει αυτό το σκοπό. Ένα παράθυρο ορίζεται έτσι ώστε όχι μόνο να ορίζει γεωμετρική σχέση μεταξύ συντεταγμένων εικόνων, αλλά έχει επίσης ένα σύνολο
578
Tαύτιση Προτύπου (Template) (2/4)
από επίπεδα φωτεινότητας που σχετίζονται με αυτό. Είναι ένα κομμάτι εικόνας. Αυτός ο τύπος παραθύρου ονομάζεται πρότυπο (template) Πρότυπο του χαρακτήρα “P” Στην πραγματικότητα η διαδικασία που θα ορίσουμε είναι εξ’ ολοκλήρου ανάλογη στην ψηφιακή ταύτιση προτύπου που ορίσαμε στο κεφάλαιο 2.
579
Tαύτιση Προτύπου (Template) (3/4)
Εδώ δημιουργούμε μετρήσεις ταιριασματος επιπέδων φωτεινότητας Δεδομένης μιας εικόνας Ι και ενός template Τ, το σύνολο του παραθύρου στις συντεταγμένες των εικόνων (i, j) είναι (όπως και πριν): T.I(i, j) = {I(i+m, j+n); (m, n) ЄT} το σύνολο των στιγμάτων που καλύπτονται από το Τ στις συντεταγμένες (i, j) Μπορούμε να ορίσουμε διάφορες μετρήσεις ταίριαξης μεταξύ των gray-levels στο template Τ
580
Tαύτιση Προτύπου (Template) (4/4)
και των στιγμάτων εικόνας T˚I(i, j) που καλύπτονται από αυτό. Το αποτέλεσμα είναι μια εικόνα ταίριαξης J η οποία παίρνει μεγάλες τιμές στις συντεταγμένες (i, j) όπου T και T˚I(i, j) είναι πολύ παρόμοιες. Θα αρχίσουμε με διάφορες αταίριαστες μετρήσεις και θα παράξουμε μία μέτρηση ταίριαξης από μια από αυτές. Ακολουθεί η συνέχεια
581
Αταίριαστες Μετρήσεις 1..2
MISMATCH {T˚I(i, j), T} (1) = max m,n Є T{|I(i+m, j+n) - T(m, n)|} (maximum absolute error) (2) = 1/(Ν Μ) Σ Σ m,n Є T |I(i+m, j+n) - T(m, n)| (mean absolute error) (3) = 1/(Ν Μ) Σ Σ m,n Є T [I(i+m, j+n) - T(m, n)]2 (mean-square error) για εικόνες προτύπου μεγέθους ΝxM.
582
Αταίριαστες Μετρήσεις 2..2
Οποιοδήποτε από αυτά είναι λογικό κριτήριο για να καθορίσει το αταίριαστο μεταξύ T˚I(i, j) και T. Ωστόσο, μόνο το (3), το MSE οδηγεί σε καλή μέτρηση ταίριαξης
583
Ανάλυση MSE 1..2 Σπάζουμε το MSE σε τρεις όρους:
MSE {T˚I(i, j), T} = 1/(N M) Σ Σ m,n Є T [I(i+m, j+n) - T(m, n)]2 = 1/(N M) Σ Σ m,n Є T [I2(i+m, j+n) - 2I(i+m, j+n)T(m, n) + T2(m, n)] = 1/(N M) Σ Σ m,n Є T I2(i+m, j+n) – 2/(N M) Σ Σ m,n Є T I(i+m, j+n)T(m, n) + 1/(N M) Σ Σ m,n Є T T2(m,n) Ας εξετάσουμε κάθε όρο: Σ Σ m,n Є T T2(m, n) = ολική ‘ενέργεια’ προτύπου ET = μια σταθερά με βάση το (i, j)
584
Σ Σ m,n Є T I2(i+m, j+n) = τοπική ‘ενέργεια’ εικόνας στο (i, j)
Ανάλυση MSE 2..2 Σ Σ m,n Є T I2(i+m, j+n) = τοπική ‘ενέργεια’ εικόνας στο (i, j) = ET˚ I(i, j) ανεξάρτητο από τις τιμές του T παρόλο που υπολογίζεται πάνω σε επιφάνεια σχήματος T. Σ Σ m,n Є T I(i+m, j+n)T(m, n) = διασταυρωμένη-συσχέτιση των I και T. = CI,T(i, j)
585
Διασταυρωμένη Συσχέτιση 1..2
Έτσι, (N M) MSE {T˚I(i, j), T} = ET + ET ˚ I(i, j) - 2·CI,T(i, j). Αφού το MSE είναι μικρό όταν υπάρχει καλή ταίριαξη, και αφού ET και ET˚I(i, j) δεν έχουν καμία σχέση με το πόσο καλά το T˚I(i, j) και T ταιριάζουν, τότε το CI,T(i, j) πρέπει να αυξάνεται όταν υπάρχει καλή ταίριαξη στο (i, j). Είναι γεγονός ότι η ανισότητα Schwarz λεει ότι για κάθε άθροισμα γινόμενου ισχύει το ακόλουθο: Σ Σ m,n A(m, n)B(m, n) ≤ SQRT m,n[Σ Σ m,n A2(m, n)·Σ Σ m,n B2(m, n)]
586
Διασταυρωμένη Συσχέτιση 2..2
με την ισότητα "=" να αντικαθιστά "≤" Τότε και μόνον τότε A(m, n) = K·B(m, n) for all (m, n) όπου Κ οποιαδήποτε σταθερά Μπορούμε να το εφαρμόσουμε αυτό στη διασταυρωμένη-συσχέτιση
587
Ανώτατο Όριο Διασταυρωμένης Συσχέτισης
Από την ανισότητα Schwarz, το ανώτατο όριο της διασταυρωμένης-συσχέτισης είναι: CI,T(i, j) = Σ Σ m,n Є T I(i+m, j+n)T(m, n) ≤ SQRT [Σ Σ m,n Є T I2(i+m, j+n) · Σ Σ m,n Є T T2(m, n)] = SQRT [ET˚ I(i, j)·ET] με ισότητα αν και μόνο αν I(i+m, j+n) = K·T(m, n) for all (m, n) Є T.
588
Σχόλια Η διασταυρωμένη-συσχέτιση δίνει καλή μέτρηση ταίριαξης
Για να ορίσουμε πόσο καλή είναι η ταίριαξη, πρέπει να την συγκρίνουμε με το θεωρητικό ανώτερο όριο SQRT [ET ˚I(i, j)·ET] ΄Η αν κανονικοποιήσουμε την διασταυρωμένη-συσχέτιση
589
Κανονικοποιημένη Διασταυρωμένη Συσχέτιση 1..2
Ορίζουμε = I,T(i, j) Έτσι έχουμε: 0 ≤ I,T(i, j) ≤ 1 για κάθε (i, j) Αυτό σημαίνει ότι όλοι οι τρεις όροι CI,T(i, j), ET και ET˚I(i, j) του MSE πρέπει να υπολογιστούν.
590
Κανονικοποιημένη Διασταυρωμένη Συσχέτιση 2..2
Έτσι μπορούμε να ορίσουμε την ολική λειτουργία της διασταυρωμένης-συσχέτισης με κανονικότητα J = CORR[I, T] Αν J(i, j) = I,T(i, j) for 0 ≤ i, j ≤ N-1. I,T(i, j)
591
Υπολογισμός Η κανονικοποιημένη διασταυρωμένη-συσχέτιση με κανονικότητα είναι σχετικά απλά υπολογίσιμη Το ET είναι γνωστό από πριν και χρειάζεται να υπολογιστεί μόνο μια φορά Το ET˚I(i, j) εξαρτάται από τις τιμές της εικόνας μόνο Το CI,T(i, j) ορίζεται σαν μια γραμμική συνέλιξης CI,T(i, j) = Σ Σ m,n Є T I(i+m, j+n) T(m, n) = I(i, j)*T(-i, -j) Εκτός από το temlate δεν ‘αντιστρέφεται’ στο άθροισμα Ισχύει: DFT[CI,T] = DFT[T]·DFT[I]*
592
Παράδειγμα Συσχέτισης Στο Matlab
I = imread(‘exampleim.tir’)’ T = imread(‘template.tif’); J = xcorr2(I, T); imshow(I); Figure, imshow(J);
593
Κατωφλίωση 1..2 Ένας καλός τρόπος για να υπολογίσουμε την καλύτερη ταίριαξη είναι να βρούμε την μεγαλύτερη τιμή στην εικόνα ταίριαξης J = CORR[I, T] Αλλά αυτό θεωρεί ότι υπάρχει ταίριαξη, ή μόνο μια ταίριαξη. Διαφορετικά, κάποιος μπορεί να κατωφλιώσει την εικόνα ταίριαξης: Ας ορίσουμε K(i, j) = 1 if J(i, j) ≥ t το οποίο ταυτίζει όλα τα σημεία που έχουν ικανοποιητικά καλή ταίριαξη
594
Κατωφλίωση 2..2 Αν τ=1, τότε μόνο τέλειες ταιριάξεις θα βρεθούν. Αυτή είναι σπάνια περίπτωση ακόμα και αν το αντικείμενο είναι παρόν, λόγο θορύβου. Συνήθως χρησιμοποιείται η τιμή τ η οποία είναι κοντά μα μικρότερη από 1 Ο καθορισμός αυτής της τιμής είναι συνήθως μια εμπειρική (trial-and-error) άσκηση
595
Template Matching 1..8 Περιορισμοί της ταύτισης του Template
Θόρυβος, περιστροφή, τέντωμα, κλιμάκωση, κλπ. Έχω το template που παρουσιάζεται στα δεξιά.
596
Template Matching 2..8 Περιορισμοί της ταύτισης του Template (συνέχεια) Το template θα ταιριάξει καλά στην εικόνα δεξιά Αλλά όχι σε μια από τις ακόλουθες
597
To template δεν ταιριάζει γιατί παρουσιάζεται περιστρεμμένο.
Template Matching 3..8 To template δεν ταιριάζει γιατί παρουσιάζεται περιστρεμμένο.
598
To template δεν ταιριάζει γιατί παρουσιάζεται σε μεγένθυνση.
Template Matching 4..8 To template δεν ταιριάζει γιατί παρουσιάζεται σε μεγένθυνση.
599
To template δεν ταιριάζει γιατί υπάρχει θόρυβος.
Template Matching 5..8 To template δεν ταιριάζει γιατί υπάρχει θόρυβος.
600
To template δεν ταιριάζει γιατί υπάρχει άλλο αντικείμενο μπροστά του.
Template Matching 6..8 To template δεν ταιριάζει γιατί υπάρχει άλλο αντικείμενο μπροστά του.
601
Template Matching 7..8 Γενικοποιημένη Ταύτιση Template
Ερευνητές έχουν επεκτείνει την τεχνική (με σημαντικό προσκολλημένο υπολογισμό) για να λύσουν ένα ή δυο από τα προβλήματα. Ωστόσο, η τεχνική παραμένει κάπως περιορισμένη.
602
Template Matching 8..8 Γενικοποιημένη Ταύτιση Template Αργότερα θα εξετάσουμε τον μετασχηματισμό Hough ο οποίος είναι πολύ πιο γενικευμένος, αλλά εφαρμόζεται μόνο σε ταύτιση και εύρεση καμπυλών. Το επόμενο θέμα, ανίχνευση Άκμων, είναι ένας ειδικός τύπος ταύτισης template (τα templates σε αυτή την περίπτωση είναι πολύ απλά).
603
Έννοιες Ανίχνευσης Ακμών 1..14
Πιθανόν κανένα θέμα στον χώρο ανάλυσης εικόνας, δεν έχει μελετηθεί τόσο εξαντλητικά όσο η ανίχνευση ακμών. Οι ακμές είναι ξαφνικές, επικροτημένες αλλαγές στην μέση φωτεινότητα της εικόνας η οποία επεκτείνεται κατά μήκος μιας διαδρομής.
604
Έννοιες Ανίχνευσης Ακμών
Η ανίχνευση ακμών χρησιμοποιείται σαν προεφαρμογή στα περισσότερα πρακτικά θέματα ανάλυσης εικόνας. Οι περισσότεροι αλγόριθμοι τεχνητής όρασης χρησιμοποιούν ακμές που έχουν ανιχνευτεί σαν τη βασικές πρώτες ύλες για επεξεργασία. Οι λόγοι γι’ αυτό υποστηρίζονται εύκολα: Στις ακμές μιας εικόνας υπάρχουν πολλές πληροφορίες. Μια εικόνα μπορεί σε μεγάλο βαθμό να αναγνωριστεί μόνο από τις ακμές της. Μια απεικόνιση των ακμών της εικόνας χρειάζεται πολύ λιγότερο χώρο αποθήκευσης παρά την εικόνα την ίδια (είναι μια δυαδική γραφική παράσταση διαδρόμων).
605
Έννοιες Ανίχνευσης Ακμών 3..14
Τι είναι μια ακμή; Που βρίσκονται οι ακμές σε κάθε μια από τις εικόνες στα δεξιά; Υπάρχουν πολλές αλλαγές φωτεινότητας. Μερικές είναι πιο επικρατέστερες από τις άλλες. Μερικές είναι πιο απότομες από τις άλλες. Ποιες είναι οι ακμές; Ποιος είναι ο ‘χάρτης ακμών για κάθε εικόνα;
606
Έννοιες Ανίχνευσης Ακμών
Scale of an image edge Κλίμακα Ακμής Εικόνας. Η αντίληψη της κλίμακας μιας ακμής είναι βασική. Η κλίμακα μιας ακμής σχετίζεται με την διάρκεια χώρου της και την αιχμηρότητα της. Χαλαρά, αναφερόμαστε σε ακμή μεγάλης-κλίμακας με σημαντική διάρκεια και στις δυο περιπτώσεις. Διαμήκης της διαδρομής της ακμής (μήκος) Κάθετα στην ακμή (πχ η μέση φωτεινότητα) Περιοχές σε κάθε πλευρά της ακμής έχουν επικρατέστερη επιφάνεια.
607
Έννοιες Ανίχνευσης Ακμών 5..14
Μια ακμή μικρής κλίμακας, έχει είτε: Διαδρομή μικρής διάρκειας. Ή χωρίζει (μέσες) περιοχές φωτεινότητας μικρών επιφανειών. Ένας τρόπος να το εξετάσουμε είναι το μέγεθος του μεγαλύτερου κύκλου ο οποίος μπορεί να περιλαμβάνει την ακμή χωρίς να προσκρούει σε άλλες ακμές της ίδιας κλίμακας Για παράδειγμα, έχουμε αυτούς τους τρεις κύκλους (κλίμακες):
608
Έννοιες Ανίχνευσης Ακμών
Με αυτόν τον ορισμό θα ισχυριζόμασταν ότι: Η ακμή στη (1), βρίσκεται και στις 3 κλίμακες. Υπάρχει μια ακμή μεγάλης - κλίμακας στο κέντρο της (2) και ένας μεγάλος αριθμός από ακμές μικρής-κλίμακας στο δεξιό μισό της (2). Η εξομαλυσμένη ακμή στην (3) είναι μεγάλης κλίμακας μόνο. Οι ακμές στην (4) είναι μικρής κλίμακας μόνο. Έτσι μπορούμε να φανταστούμε το αποτέλεσμα εφαρμογής ενός ‘μεγάλης κλίμακας’ ανιχνευτή ακμών.
609
Έννοιες Ανίχνευσης Ακμών 7..14
Υποθετικό Αποτέλεσμα Ανιχνευτή Ακμών Μεγάλης Κλίμακας. Οι τοποθεσίες ανιχνευμένων ακμών ενδείκνυνται από λεπτές διαδρομές. Η ακριβής τοποθεσία της ακμής στην (3) δεν είναι φανερή. Μπορούμε να ισχυριστούμε ότι είναι στο κέντρο της αλλαγής – αλλά αυτό είναι ανακριβής Συνήθως, πρέπει να είμαστε ικανοποιημένοι με τον καθορισμό της τοποθεσίας μιας ακμής οπουδήποτε την τοποθετήσει ο ανιχνευτής ακμών! Αυτός είναι ο λόγος που πρέπει να σχεδιάσουμε τον ανιχνευτή ακμών προσεκτικά
610
Έννοιες Ανίχνευσης Ακμών
Υποθετικό Αποτέλεσμα Ανιχνευτή Ακμών Μικρής Κλίμακας. Και πάλι η (3) δεν είναι φανερή – πόσο αιχμηρή μια ακμή πρέπει να είναι πριν να θεωρηθεί σαν υπαρκτή σε μικρή κλίμακα; Τα σημεία αυτής της επίδειξης είναι: Οι ακμές συμβαίνουν σε μια ακτίνα από κλίμακες. μερικές ακμές συμβαίνουν σε πολλαπλές κλίμακες Έτσι, ο τύπος, η εμφάνιση, και η ανίχνευση μιας ακμής καθορίζονται σε μεγάλο βαθμό από τις κλίμακες στις οποίες συμβαίνει. Ας εφαρμόσουμε τώρα μερικές πιο επίσημες έννοιες
611
Έννοιες Ανίχνευσης Ακμών 9..14
Γενική Ιδέα Μεθόδων Ανίχνευσης Ακμών. Οι μέθοδοι για την ανίχνευση ακμών έχουν μελετηθεί από τα μέσα του 1960 Έχει εύκολα γίνει το πιο μελετημένο πρόβλημα στον τομέα της ανάλυσης εικόνας, και η καλύτερη προσέγγιση είναι εκπληκτικά απατηλή Υπήρξαν εκατοντάδες από διαφορετικές προσεγγίσεις τεχνάσματα – με βάση περίπου σε κάθε μαθηματική τεχνική που μπορούμε να φανταστούμε για να αποφασίσουμε πότε ένα σύνολο αριθμών είναι μεγαλύτερο από κάποιο άλλο Το πρόβλημα έγινε (επιτέλους) κάπως καλά κατανοητό στην δεκαετία του 1980 Αυτό είναι τυπικό για την ανάλυση εικόνας – τα προβλήματα, ακόμα και τα πιο εύκολα, είναι πολύ πιο δύσκολα από αυτά της κανονικής επεξεργασίας εικόνας (φιλτράρισμα, αποκατάσταση, κλπ.)
612
Έννοιες Ανίχνευσης Ακμών
Γενική Ιδέα Μεθόδων Ανίχνευσης Ακμών. Θα μελετήσουμε τρεις βασικές προσεγγίσεις: Ανιχνευτής ακμών με βάση την κλίμακα (gradient based) Ανιχνευτής ακμών με βάση την τοπική εκτίμηση (local estimator based) Ανιχνευτής ακμών Laplacian (πολλαπλής-κλίμακας)
613
Έννοιες Ανίχνευσης Ακμών 11..14
Ανιχνευτής Ακμών Με Βάση Την Κλίση Παλαιότερη (Roberts 1965) αλλά ακόμα σημαντική τάξη ανιχνευτών ακμών Ανιχνευτής ακμών με βάση την κλίμακα (gradient based) Για μια συνεχής 2-Δ συνάρτηση f(x, y), η κλίση ορίζεται σαν διάνυσμα δυο-στοιχείων: Ñf(x, y) = [fx(x, y), fy(x, y)]T όπου fx(x, y) = f(x, y) και fy(x, y) = f(x, y) είναι η προσανατολισμένη παραγωγός (κλίση, ταχύτητα αλλαγής) της f(x, y) στην x- και y-κατεύθυνση:
614
Έννοιες Ανίχνευσης Ακμών 12..14
Μετρήσεις Κλίμακας Γεγονός: η κατεύθυνση της γρηγορότερης ταχύτητας αλλαγής του f(x, y) στο σημείο (x, y) είναι ο προσανατολισμός της κλίσης qf(x, y) = tan-1 και αυτή η ταχύτητα αλλαγής είναι το μέγεθος της κλίσης Mf(x, y) = Η κλίση κάνει έκκληση για τον ορισμό ενός ανιχνευτή ακμών, αφού σίγουρα περιμένουμε μια ακμή να (τοπικά) αντιπροσωπεύει τη μεγαλύτερη ταχύτητα αλλαγής στην φωτεινότητα της εικόνας
615
Έννοιες Ανίχνευσης Ακμών 13..14
Μετρήσεις Κλίμακας Γεγονός: οι προσανατολισμένες παραγωγοί σε κάθε δυο κάθετες κατευθύνσεις, ας πούμε x´ και y´, και Mf(x, y) μένουν χωρίς αλλαγή: Έτσι: Mf(x, y) είναι συμμετρικά περιστρεφόμενη ή ισοτροπική λειτουργία Μια ισοτροπική λειτουργία είναι επιθυμητή για την ανίχνευση ακμών, αφού οι ακμές συμβαίνουν σε όλες τις κατευθύνσεις, και πρέπει να αντιμετωπίζονται με τον ίδιο τρόπο ανεξάρτητα από την κατεύθυνση Ακμές σε διάφορες κατευθύνσεις
616
Έννοιες Ανίχνευσης Ακμών 14..14
Ορισμός Ανιχνευτή Ακμών με Βάση Την Κλίμακα Επεξηγείτε από το ακόλουθο διάγραμμα ροής: ψηφιακή παραγώγιση (digital differentiation): προσεγγίζει ψηφιακά το Ι και το Ι λειτουργία απλού στίγματος (point operation): συνδυάζουμε τις προσανατολισμένες παραγωγούς σε ένα υπολογισμό του μεγέθους κλίσης MI κατωφλίωση (threshold): ορίζουμε τις τοποθεσίες των μεγάλων τιμών του MI σαν ισχυρές τοποθεσίες ακμών
617
Ψηφιακή Παραγώγιση (i) = I(i) + N(i) = |J(i) - J(i-1)| =
20 10 Η παραγώγιση πάντα δίνει έμφαση στις υψηλές συχνότητες (όπως ο θόρυβος): 15 12 9 6 3 8 6 |J(i) - J(i-1)| = 4 2 3 6 9 12 15 Ο θόρυβος είναι ένα μεγάλο πρόβλημα για αυτό τον τύπο ανιχνευτών ακμών
618
Τύποι Των Ανιχνευτών Ακμών Με Βάση Την Κλίση 1..5
Ορίζουμε το πρότυπο ακμών Δx και Δy οι οποίοι συντελώνται με την εικόνα Ι, για να δημιουργήσουν ψηφιακούς υπολογισμούς του και Οι απλοί τύποι: -1 1 D x = y D = adjacent -1 1
619
Τύποι Των Ανιχνευτών Ακμών Με Βάση Την Κλίση 2..5
-1 1 D x = y D = centered -1 1 -1 1 D x = -1 1 y D = Roberts' Η εκτέλεση αυτών των τριών ανιχνευτών ακμών είναι παρόμοια.
620
Τύποι Των Ανιχνευτών Ακμών Με Βάση Την Κλίση 3..5
Οι τύποι μείωσης θορύβου: -1 1 -1 1 D x = y D = /3 /3 Prewitt -1 1 -2 2 -1 -2 1 2 D x = y D = /4 /4 Sobel
621
Τύποι Των Ανιχνευτών Ακμών Με Βάση Την Κλίση 4..5
Η ιδέα πίσω από τους Prewitt και Sobel ανιχνευτές ακμών είναι να πάρουν τους μέσους όρους των υπολογισμών του και κατά μήκος τριών σειρών και στηλών αντιστοίχως. Το Sobel είναι λίγο διαφορετικό από το Prewitt: επιπρόσθετο βάρος δίνετε στις τιμές κοντά στο κέντρο του παραθύρου
622
Τύποι Των Ανιχνευτών Ακμών Με Βάση Την Κλίση 5..5
Ωστόσο, η εκτέλεση αυτών των δυο ανιχνευτών ακμών είναι παρόμοια. Καλυτερεύουν την ευαισθησία στον θόρυβο από τους ‘απλούς’ τύπους. Αλλά είναι ακόμα πολύ ευαίσθητοι στο θόρυβο.
623
Λειτουργία Απλού Στίγματος 1..3
Η λειτουργία απλού στίγματος συνδυάζει τους υπολογισμούς των προσανατολισμένων παραγώγων Δx και Δy σε ένα απλό υπολογισμό του μεγέθους της κλίσης Οι συνήθεις υπολογισμοί είναι: (A) M(i, j) = D x 2 ( i , j ) + y
624
Λειτουργία Απλού Στίγματος 2..3
(B) M(i, j) = |Δx(i, j)| + |Δy(i, j)| (C) M(i, j) = max{|Δx(i, j)| , |Δy(i, j)|} Οι ακόλουθες σχέσεις ισχύουν πάντα: C ≤ A ≤ B
625
Λειτουργία Απλού Στίγματος 3..3
Ενώ το (Α) είναι η σωστή αντιπροσώπευση του μεγέθους της κλίσης, το (Β) και (C) είναι πιο ικανά υπολογιστικά – χωρίς λειτουργίες ή τετραγωνικές ρίζες. Από αυτά, το (Β) συχνά υπερτιμά το μέγεθος μιας ακμής, ενώ το (C) συχνά υποτιμά το μέγεθος της. Κάπως καλύτερο από το (Β) ή το (C) είναι το (D) M(i, j) = max{|Dx| , |Dy|} · min{|Dx| , |Dy|} Ακόμα, οι διαφορές μεταξύ αυτών είναι ελάχιστες. 1 4
626
Λειτουργία Κατωφλίωσης
Όταν ένας υπολογισμός του μεγέθους της κλίσης M(i, j) έχει παρθεί, έχει κατωφλιωθεί για να οριστούν οι πιθανές τοποθεσίες ακμών Αυτό δημιουργεί ένα δυάδικο χάρτη Ε με στοιχεία E(i, j) = for 0 ≤ i, j ≤ N-1 { 1 ; i f M ( , j ) > t <
627
Λειτουργία Κατωφλίωσης
Έτσι: η τιμή '1' δείχνει την παρουσία μιας ακμής στο (i, j) η τιμή '0' δείχνει την απουσία μιας ακμής στο (i, j) Το κατώφλι τ περιέχει την αιχμηρότητα και το μέγεθος των ακμών οι οποίες έχουν ανιχνευτεί.
628
Πλεονεκτήματα του Ανιχνευτή Ακμών με Βάση την Κλίση
Απλός, υπολογιστικά ικανοποιητικός Φυσικός ορισμός Δουλεύει καλά σε ‘καθαρές’ εικόνες
629
Μειονεκτήματα του Ανιχνευτή Ακμών με Βάση την Κλίση 1..2
Υπερβολικά ευαίσθητος στον θόρυβο. Χρειάζεται κατωφλίωση η οποία είναι δύσκολο να επιλεχθεί. Η τιμή της μπορεί να εξαρτάται από την ολική αντίθεση της εικόνας, για παράδειγμα. Συνήθως χρειάζεται αλληλεπιδρόμενη επιλογή για καλύτερα αποτελέσματα.
630
Μειονεκτήματα του Ανιχνευτή Ακμών με Βάση την Κλίση 2..2
Ο υπολογισμός του μεγέθους της κλίσης συχνά θα πέφτει πάνω από το κατώφλι σε απόσταση μερικών στιγμάτων από την αληθινή ακμή. Έτσι, η ανιχνευμένη ακμή είναι συνήθως πάχους μερικών στιγμάτων. Αυτό συνήθως χρειάζεται κάποιο είδος λειτουργίας «λέπτυνσης ακμών» – συνήθως αόριστη. Οι διαδρομές ακμών είναι συνήθως κομμένες – εμφανίζονται κενά. Αυτό χρειάζεται κάποιο είδος λειτουργίας «ένωσης ακμών» – συνήθως αόριστη.
631
Παράδειγμα Εύρεσης Ακμών στο Matlab
I = imread(‘exampleim.tif’); J = edge(i, ‘roberts’); imshow(i); Figure, imshow(j);
632
Ανιχνευτής Ακμών Τύπου Laplacian 1..2
Οι ανιχνευτές ακμών είναι βασισμένη στην δεύτερη παραγωγό Για μια συνεχή 2-Δ συνάρτηση f(x, y), το Laplacian ορίζετε ως: f(x, y) = f(x, y) f(x, y) = (x, y) (x, y) Είναι απλός αριθμός και όχι διάνυσμα 2 x 2 f xx f yy 2 Ñ 2 y
633
Ανιχνευτής Ακμών Τύπου Laplacian 2..2
Γεγονός: Αν οι προσανατολισμένοι παραγωγοί σε κάποιες άλλες δυο κάθετες κατευθύνσεις (ας πούμε x´, y´) η τιμή του Laplacian f(x, y) παραμένει χωρίς αλλαγή: 2 Ñ y´ x´
634
Ορίζουμε τον Ανιχνευτή Ακμών Laplacian 1..2
635
Ορίζουμε τον Ανιχνευτή Ακμών Laplacian 2..2
Ψηφιακή Παραγώγιση: ψηφιακή προσέγγιση I και I (ή απλός I) Ανίχνευση διασταύρωσης-μηδενικών: Ανακαλύπτουμε σε πιο μέρος το Laplacian διασταυρώνει το μηδέν 2 x 2 Ñ
636
Μονοδιάστατη Επεξήγηση 1..2
Θυμηθείτε ότι η παραγωγός είναι η κλίση: 1-Δ Κατατομή Ακμής: Πρώτη Παραγώγιση:
637
Μονοδιάστατη Επεξήγηση 2..2
Δεύτερη Παραγώγιση: Μια διασταύρωση του μηδέν ή ZC συμβαίνει κοντά στο κέντρο των ακμών όπου η κλίση της κλίσης αλλάζει πρόσημο
638
Το Ψηφιακό Laplacian 1..6 d x 1 -2 f(x) ≈ f(i) - f(i-1) = y(i)
και τότε (αλλαγή με άλλο τρόπο) με template συνέλιξης: d x f(x) ≈ f(i) - f(i-1) = y(i) f(x) ≈ y(i+1) - y(i) = f(i+1) - 2f(i) + f(i-1) 1 -2
639
Το Ψηφιακό Laplacian 2..6 Στις δύο-διαστάσεις: Ñ
με template συνέλιξης: Ας χρησιμοποιήσουμε το προηγούμενο 1-Δ παράδειγμα μας: 2 Ñ I(x, y) ≈ [I(i+1, j) - 2I(i, j) + I(i-1, j)] + [I(i, j+1) - 2I(i, j) + I(i, j-1)] 1 -2 + = -4
640
Το Ψηφιακό Laplacian 3..6 Παράδειγμα – Διπλή- Παραγώγιση μιας 1-Δ
Εικόνας: Μια απλή γραμμή μιας εικόνας: 15 12 9 6 3 10 20 I(i) =
641
Το Ψηφιακό Laplacian 4..6 Η δεύτερη-παραγωγός:
Αποκαλύπτει φανερά μια αιχμηρή τοποθεσία ακμής: μια απλή μεγάλη-κλίση ZC και μερικές «μικρότερες» διασταυρώσεις ακμών. 15 12 9 6 3 -20 -10 10 20 I(i+1) - 2I(i) + I(i-1) =
642
Το Ψηφιακό Laplacian 5..6 Παράδειγμα: - Διπλή – Παραγώγηση μιας 1-Δ Εικόνας με Θόρυβο Μια απλή γραμμή μιας εικόνας με θόρυβο: 20 J(i) = I(i) + N(i) = 10 3 6 9 12 15
643
Το Ψηφιακό Laplacian 6..6 Η δευτερη παραγωγος της:
Πολλά ψεύτικα ZCs. Ο θόρυβος είναι ένα ακόμα μεγαλύτερο πρόβλημα για αυτό τον τύπο των ανιχνευτών Άκμων. Η διπλη παραγώγιση δημιουργεί υψηλά ενισχυμένο θόρυβο. 10 J(i+1) - 2J(i) + J(i-1) = -10 3 6 9 12 15
644
Κατωφλίωση; Ίσως η Κατωφλίωση μερικών τύπων μπορεί να καλυτερεύσει την εκτέλεση του Laplacian; Ας είναι J(i, j) = I(i, j). Συγκρίνοντας | J(i, j)| σε ένα κατώφλι όπου J(i, j) = 0. 2 Ñ Ñ
645
Εξωμαλυμένοι Και Πολλών-Κλιμάκων Ανιχνευτές Ακμών Laplacian
Αλλά με τροποποίησή της με απλό τρόπο μπορεί να γίνει πολύ δυνατή
646
Εξωμαλυμένοι Και Πολλών-Κλιμάκων Ανιχνευτές Ακμών Laplacian
Η βασική ιδέα περιλαμβάνεται: Η διάφορα: μια γραμμική θάμπωση (κατωδιάβατο φίλτρο) εφαρμόζεται πριν από την εφαρμογή του Laplacian
647
Κατωδιαβατό Προ-Φιλτράρισμα
Ο κύριος σκοπός του κατωδιαβατού προ-φιλτραρίσματος του Laplacian είναι να μειώσουμε (εξομαλύνουμε) τον υψηλής-συχνότητας θόρυβο, ενόσω διατηρούμε την σημαντική δομή της εικόνας Ο δευτερεύων σκοπός του φίλτρου εξομάλυνσης είναι να περιορίσει την κλίμακα στην οποία οι ακμές ανιχνεύονται. Σημείωση: μια ανωδιαβατή λειτουργία (όπως είναι το Laplacian) που ακολουθείται (ή προηγείται) από ένα κατωδιαβατό φίλτρο θα οδηγήσει σε ένα ζωνοδιαβατό φίλτρο, αν οι ζώνες που περνούν από το φίλτρο ταυτίζονται.
648
Προ-Φιλτράρισμα Εξομάλυνσης Gaussian
Έχει βρεθεί ότι το καταλληλότερο φίλτρο εξομάλυνσης στις ακόλουθες δύο ταυτόχρονες αισθήσεις: καλύτερη ακρίβεια τοποθεσίας ακμών μέγιστη αναλογία σήματος-προς-θόρυβο (SNR) είναι ένα φίλτρο Gaussian: (Κ είναι μια άσχετη σταθερά) G(i, j) = K· exp [ -(i2 + j2)/2s2 ] ; 0 ≤ i, j ≤ N - 1 (u, v) = exp [ -2π 2s2(u2 + v2) / N2 ] ; 0 ≤ |u|, |v| ≤ N/2 -1
649
Ανιχνευτής Ακμών Laplacian of Gaussian
Ορίζουμε την λειτουργία Laplacian of a Gaussian ή LoG στην I: J(i, j) = Ñ2 [G(i, j)*I(i, j)] = G(i, j)*Ñ2I(i, j) = Ñ2G(i, j)*I(i, j) Οι πιο πάνω 3 μορφές είναι ισοδύναμες αφού οι γραμμικές λειτουργίες (όπως παραγώγιση και συνέλιξη) μπορούν να ανταλλακτούν
650
Ανιχνευτής Ακμών Laplacian of Gaussian
Η καλύτερη προσέγγιση είναι να προ-υπολογίσουμε το LoG: με DFT τότε περνούμε την συνέλιξη της Ι με το συνδυασμένο φίλτρο (Σημείωση: όλοι οι σταθεροί πολλαπλασιαστές έχουν αφεθεί έξω αφού όλα όσα μας ενδιαφέρουν είναι τα ZCs)
651
Ανίχνευση ZC Μετά το φιλτράρισμα, η τελευταία φάση της ανίχνευσης ακμών (στις περισσότερες περιπτώσεις) ανίχνευσης διασταύρωσης μηδενικών Ας ορίσουμε J = [J(i, j)] να είναι το αποτέλεσμα του φιλτραρίσματος LoG Ένα ZC είναι μια διασταύρωση του μηδενικού επιπέδου: αυτό σημαίνει ότι ο αλγόριθμος πρέπει να ψάξει να βρει στίγματα της μορφής: Συνήθως (με την εθιμοτυπικό) ένα πρόσημο ή το άλλο σημαδεύεται σαν την τοποθεσία της ακμής αν δεν υπάρχει ανάγκη για μεγαλύτερη (υπό-στίγματος) ακρίβεια
652
Έννοια της Κλίμακας Όσο μεγαλύτερη είναι η τιμή των σ που χρησιμοποιούνται, τόσο μεγαλύτερος και ο βαθμός της εξομαλύνσεις από το κατωδιάβατο προ-φίλτρο G Αν το σ είναι μεγάλο, τότε κάποιος θόρυβος θα εξομαλυνθεί σημαντικά – αλλά έτσι θα μειώσει σημαντικές ακμές Η ευαισθησία του θορύβου μεγαλώνει με την μείωση του σ – αλλά ο ανιχνευτής Άκμων LoG τότε ανιχνεύει περισσότερη λεπτομέρεια
653
Ψηφιακή Κατασκευή του Ανιχνευτή Ακμών LoG
Υπάρχουν ειδικοί κανόνες οι οποίοι πρέπει να ακολουθηθούν: Αρκετά 2G(i, j) πρέπει να δειγματολειφθούν. Το LoG δεν θα δουλέψει καλά δεν περιέχει και τις δυο κύριες και ασήμαντες περιοχές. Στην πράξη, η ακτίνα R του LoG (στο χώρο) πρέπει να ικανοποιεί R ≥ 4s (in pixels) Ñ
654
Ψηφιακή Κατασκευή του Ανιχνευτή Ακμών LoG
Αυτό γίνεται με την αφαίρεση του (μέσου) ολικού αθροίσματος συντελεστών από το καθένα Το LoG δεν θα δουλεύει καλά αν το σ δεν είναι ≥ 1 (στίγμα)!
655
Κατωφλίωση των ZCs Η κατωφλίωση δεν είναι συνήθως αναγκαία αν ένας αρκετά μεγάλος χειριστής λειτουργίας χρησιμοποιηθεί Ωστόσο, μερικές φορές είναι επιθυμητό να ανιχνεύσουμε λεπτομέρειες και να μην ανιχνεύσουμε θόρυβο Αυτό μπορεί να επιτευχθεί με αποτελεσματικότητα από την κατωφλίωση
656
Κατωφλίωση των ZCs Ας ορίσουμε το J(i, j) να είναι η LoG φιλτραρισμένη εικόνα και E(i, j) να είναι ο χάρτης ακμών Τότε, βρίσκουμε το μέγεθος της κλίσης |J(i, j)| (η μορφή Roberts θα είναι ικανοποιητική αφού η J έχει εξομαλυνθεί) If J(i, j)| > t = threshold και E(i, j) = 1 (ένα ZC υπάρχει στο (i, j)) τότε αφήνουμε τα ZC. Αλλιώς τα αφαιρούμε Ñ Ñ
657
Διπλή Κατωφλίωση Πρόβλημα: Η απλή κατωφλίωση μπορεί να δημιουργήσει σπασμένες ZC διαδρομές Προσέγγιση: Ορίζουμε δυο κατώφλια tlo και thi όπου tlo < thi Συχνά παίρνοντας thi = 2tlo είναι αποτελεσματικό Σε κάθε τοποθεσία ZC (όπου E(i, j) = 1) κάνουμε τα ακόλουθα (α) Αν J(i, j)| < tlo απόρριψε το ZC (απορρίπτουμε το ZC) (β) Αν J(i, j)| > thi δέκτου το ZC (αποδεχόμαστε το ZC) (γ) Αν tlo ≤ J(i, j)| ≤ thi (τότε αποφασίζουμε σύμφωνα με τα γειτονικά ZCs) Ñ Ñ
658
Διπλή Κατωφλίωση Η τελευταία στρατηγική (γ) μπορεί να πάρει πολλές μορφές. Για παράδειγμα, μπορούμε να αποφασίσουμε να δεχτούμε το τρέχων ZC ικανοποιώντας το (γ) αν κάποια από τα γειτονικά ZCs ικανοποιούν το (β) Ή, αν ένα από τα γειτονικά ZCs είτε ικανοποιεί το (β), ή ικανοποιεί το (γ) και έχει γείτονα που ικανοποιεί το (β) Αυτή η προσέγγιση προωθεί την σύνδεση
659
Κατωφλίωση Διαδρομών Ñ Ñ
Προσέγγιση: Συγκρίνουμε όλα τα στίγματα ZC σε μια ZC διαδρομή με ένα κατώφλι. Αν αρκετά ZC είναι πάνω από την κατωφλίωση, αποδεχόμαστε την διαδρομή, διαφορετικά την απορρίπτουμε Υποθέτουμε ότι (i1, j1), (i2, j2), (i3, j3) ,..., (iL, jL) είναι σημεία σε μια 8-συνδεδεμένη διαδρομή ZC Υπολογίζουμε το J(in, jn)| για n = 1 ,..., L. Ας ορίσουμε το Q = # σημείων όπου το J(in, jn)| > t. If Q/L > PERCENT (τότε αποδεχόμαστε ολόκληρη την ZC διαδρομή) Q/L ≤ PERCENT (τότε απορρίπτουμε ολόκληρη την ZC διαδρομή) Τυπικά PERCENT > 0.75 Ñ Ñ
660
DOG και Προσέγγιση Διαφοράς των Κιβωτίων
Πίσω στο Κεφάλαιο 5 είχε παρατηρηθεί ότι η διαφορά των Gaussians ή DOG είναι χρήσιμη: (u, v) = exp [-2π 2s(u2 + v2) / N2 ] - exp [-2π 2s(u2 + v2) / N2 ]; 0 ≤ |u|, |v| ≤ N/2 -1 Είναι γεγονός ότι το DOG ζωνοδιάβατο φίλτρο είναι σχεδόν ακριβώς το ίδιο με το LoG αν s1 ≈ 1.5s2 Για αυτό τον λόγο το DOG χρησιμοποιείτε για τον υπολογισμό του LoG (π.χ., αν ένα Gaussian σχεδιαστεί σαν μέρος του συστήματος) Άλλες διάφορες των κατωδιάβατων φίλτρων μπορούν να χρησιμοποιηθούν επίσης: ένα παροδικό παράδειγμα είναι η διαφορά των κιβωτίων, το οποίο στο πεδίο ορισμού του χώρου δίνετε από J = AVE[I, B1] - AVE[I, B2] όπου B1 και B2 είναι παράθυρα του ίδιου σχήματος αλλά διαφορετικών μεγεθών Αυτό έχει το πλεονέκτημα της απλοποίησης του υπολογισμού αλλά τείνει να οδηγήσει σε λίγο πιο πολλές λανθασμένες ακμές
661
Πλεονεκτήματα του LoG Συνήθως δεν χρειάζεται κατωφλίωση
Οδηγεί πάντα σε ακμές πάχους ενός στίγματος (δεν χρειάζεται λέπτυνση!) Οδηγεί σε συνδεδεμένες ακμές (δεν χρειάζεται σύνδεση ακμών!) Μπορεί να αποδειχθεί να είναι η καταλληλότερη (κάτω από κάποιο κριτήριο) Φαίνεται να είναι παρόμοιο με το τι γίνεται στην βιολογική όραση Μειονεκτήματα του LoG Υπολογιστικά δαπανηρό – μεγάλου-μεγέθους DFT
662
Ανιχνευτής Ακμών Canny
Επιχειρεί να καλυτερεύσει το LoG Θεωρούμαι μια ιδανική εικόνα ιστό-ακμή: Επίσης το Laplacian 2 είναι ισοτροπικό, είναι ισοδύναμο με να πάρουμε: Μια διπλή-παράγωγο σε κατεύθυνση κάθετη με την ακμή . Αυτή μεταφέρει την πληροφορία ακμής Μια διπλή-παραγωγός σε κατεύθυνση παράλληλη με την ακμή. Αυτή δεν μεταφέρει πληροφορία ακμής! Ñ
663
Ανιχνευτής Ακμών Canny
Είναι γεγονός αν υπάρχει θόρυβος στην εικόνα, η παράλληλη διπλή παράγωγος θα δώσει μόνο άχρηστες πληροφορίες! Ο αλγόριθμος του Canny προσπαθεί να αφαιρέσει αυτό το ελάττωμα χρησιμοποιώντας μόνο τις πληροφορίες παραγωγού στην κατεύθυνση της ακμής
664
Ο Αλγόριθμος Canny Σχηματίζει την Gaussian-εξομαλυσμένη εικόνα:
K(i, j) = G(i, j)*I(i, j) Υπολογίστε το μέγεθος της κλίσης και του προσανατολισμού: | K(i, j)| and K(i, j) Χρησιμοποιώντας ψηφιακή (διάφορης) προσέγγιση Ñ Ñ
665
Ο Αλγόριθμος Canny Ñ Ñ Ñ Ñ Ñ
Ας ορίσουμε το n να είναι ένα διάνυσμα μονάδας στην κατεύθυνση direction K(i, j). Υπολογίστε την δεύτερη-παραγωγό του K(i, j) στην κατεύθυνση του n: Βρέστε τα ZCs στην εικόνα. Αυτά είναι ακριβώς οι διασταυρώσεις-μηδενικών: K × ( K × K), οι οποίες είναι πιο εύκολο να σχεδιαστούν. Μειονεκτήματα: μη-γραμμικό, έτσι οι συνδεδεμένες ακμές δεν είναι εγγυημένες. Ωστόσο, η διπλή-κατωφλίωση συνήθως δουλεύει κάπως καλά. Ñ Ñ Ñ Ñ Ñ
666
Ψηφιακή Επεξεργασία Εικόνας
Τέλος Θεωρίας Ψηφιακή Επεξεργασία Εικόνας ΕΠΛ 445
Παρόμοιες παρουσιάσεις
© 2025 SlidePlayer.gr Inc.
All rights reserved.