Download - Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

Transcript
Page 1: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

Συμπίεση Ψηφιακών Εικόνων:

Συμπίεση χωρίς απώλειες

Τμήμα Διδακτικής της Τεχνολογίας και Ψηφιακών Συστημάτων

Πανεπιστήμιο Πειραιώς

ΔΤΨΣ 150 – Ψηφιακή Επεξεργασία Εικόνας

Page 2: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

◊ Περιεχόμενα Ενότητας

◊ Εισαγωγή - Βασικά Στοιχεία Συμπίεσης Ψηφιακών Εικόνων

◊ Κατηγορίες Τεχνικών Συμπίεσης

◊ Μοντέλο Συμπίεσης Εικόνων

◊ Συμπίεση χωρίς Απώλειες (lossless compression)

◊ Κωδικοποίηση Huffman

◊ Κωδικοποίηση Μήκους Διαδρομής

◊ Προβλεπτική Κωδικοποίηση

◊ Βιβλιογραφία:

◊ Πήτας [1999]: Κεφάλαιο 9, Ενότητες 9.1-9.6

◊ Gonzales [2002]: Chapter 8, Sections 8.1-8.4

◊ Gonzales [2004]: Chapter 8, Sections 8.1-8.3

Περιεχόμενα – Βιβλιογραφία

Page 3: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Συμπίεση ονομάζουμε τη διαδικασία ελάττωσης των δεδομένων που χρειάζονται για την αναπαράσταση μιας μορφής πληροφορίας (όπως εικόνες, ήχος, κείμενο, βίντεο κλπ)

◊ Δεδομένα ονομάζουμε το μέσο απεικόνισης - αναπαράστασης της πληροφορίας.

◊ Για παράδειγμα θεωρήστε δύο αφηγητές που διηγούνται την ίδια ιστορία

◊ Η πληροφορία που πρέπει να μεταδοθεί είναι η ιστορία

◊ Τα δεδομένα μέσω των οποίων μεταφέρεται η πληροφορία στους ακροατές είναι οι λέξεις

◊ Αν ο ένας εκ των δύο αφηγητών χρησιμοποιεί περισσότερες λέξεις για την αφήγηση της ιστορίας τότε χρησιμοποιεί πλεονασματικά δεδομένα (η ιστορία γίνεται αντιληπτή και χωρίς τις επιπλέον αυτές λέξεις.

◊ Στις ψηφιακές εικόνες πληροφορία θεωρούμε την εικόνα και δεδομένα των αριθμό των bits που χρειάζονται για την αναπαράσταση της

◊ Στη πραγματικότητα τα δεδομένα είναι οι τιμές χρώματος ή φωτεινότητας των pixel καθώς και οι διαστάσεις της εικόνας. Όμως και αυτά δεδομένα αναπαρίστανται τελικά ως bits

Εισαγωγή Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 4: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Αποθήκευση:

◊ Πόση διάρκεια ασυμπίεστου ψηφιακού βίντεο μπορεί να αποθηκευτεί σε ένα CD-ROM;

◊ Τι χωρητικότητα μνήμης χρειαζόμαστε για να αποθηκεύσουμε:

◊ Το ραδιοτηλεοπτικό αρχείο της ΕΡΤ;

◊ Απεικονιστικές εξετάσεις ασθενών (π.χ. υπέρηχοι) που παράγονται κατά εκατοντάδες την ημέρα σε ένα νοσοκομείο;

◊ Μετάδοση:

◊ Μπορώ να παρακολουθήσω ένα τηλεοπτικό πρόγραμμα που μεταδίδεται Διαδικτυακά:

◊ Αν έχω σύνδεση PSTN (modem 56kbs);

◊ Αν έχω σύνδεση ISDN (2x64 kbps);

◊ Aν έχω σύνδεση ADSL (256 kbps – 2 Mbps);

◊ Αν βρίσκομαι στο Πανεπιστήμιο και έχω σύνδεση LAN (10 Mbps, 100Mbps);

Γιατί χρειάζεται Συμπίεση; Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 5: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Κόστος:

◊ Πόσο θα πληρώσω αν έχω χρέωση με βάση τη διάρκεια σύνδεσης;

◊ Πόσο θα πληρώσω αν έχω χρέωση με τον όγκο της διακινούμενης πληροφορίας;

◊ Ικανοποίηση χρήσης εφαρμογών πολυμέσων:

◊ Πόσο πρέπει να περιμένει ο χρήστης για να ακούσει την απάντηση του συνομιλητή του σε περιβάλλον τηλεδιάσκεψης;

◊ Πόσο πρέπει να περιμένει ο χρήστης για να δει μια εικόνα στην ιστοσελίδα που έχει επισκεφθεί;

◊ Πόσο πρέπει να περιμένει ο χρήστης για να δει ένα βίντεο ή ένα animation στη ιστοσελίδα που έχει επισκεφθεί;

Γιατί χρειάζεται Συμπίεση (II);

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 6: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Κείμενο

◊ Μια σελίδα κειμένου περιέχει προσεγγιστικά 4800 χαρακτήρες =>

◊ ~4,8 kbytes σε κωδικοποίηση ASCII

◊ ~9,6 kbytes σε κωδικοποίηση Unicode

◊ Γραφικά

◊ Μια εικόνα γραφικών περιέχει προσεγγιστικά 500 γραμμές =>

◊ Για κάθε γραμμή ορίζονται οι συντεταγμένες της αρχής (2 x 10 bits), οι συντεταγμένες του τέλους (2 x 10 bits) και 8 bits για τον χαρακτηρισμό των ιδιοτήτων της γραμμής

◊ => 500 x 48 bits ~= 3 kbytes

◊ Eικόνες

◊ Μια εικόνα 640 x 480 pixels με 256 αποχρώσεις του γκρί => 640 x 480 x 1 byte ~= 307 kbytes

◊ Η ίδια εικόνα σε πραγματικό χρώμα (3 bytes per pixel) => 640 x 480 x 3 byte ~= 921 kbytes

Μερικά παραδείγματα Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 7: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Ήχος:

◊ Τηλεφωνική ποιότητα => ~ 8 kbyte / sec

◊ Ποιότητα CD => 1,411 Mbps => ~ 176 kbyte / sec

◊ Ένα τυπικό CD-ROM της αγοράς χωράει:

◊ 74 λεπτά μουσικής, ποιότητας CD

ή

... 20 δευτερόλεπτα ασυμπίεστου ψηφιακού βίντεο

◊ Βίντεο

◊ Τηλεοπτική ποιότητα (π.χ. ανάλογο του PAL system) =>

◊ 625 lines x 840 pixel /line x 3 bytes /pixel x 25 frames (εικόνες) /sec => 39 Mbyte / sec

◊ Τηλεόραση Υψηλής Ευκρίνειας (HDTV) (διπλάσιος αριθμός γραμμών, aspect ratio 16:9 αντί 4:3)=>

◊ 5.33 x Τηλεοπτική ποιότητα => 208 Mbyte / sec

◊ 120 GB δίσκος χωράει λιγότερο από 60 λεπτά ασυμπίεστου ψηφιακού βίντεο

Μερικά παραδείγματα (ΙΙ) Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 8: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Μέσα αποθήκευσης με μεγαλύτερη χωρητικότητα

◊ Δίκτυα μετάδοσης πληροφοριών με μεγαλύτερο bandwidth (ταχύτητα μετάδοσης)

◊ Ναι αλλά για ποιους;

◊ Μήπως συμπίεση;

◊ Μείωση του αριθμού bits ΑΛΛΑ με συμβιβασμό (π.χ. διαθεσιμότητα, ποιότητα της πληροφορίας)

◊ Συμπίεση:

◊ Μια συνάρτηση g εφαρμόζεται σε κάθε ενότητα δεδομένων di ώστε να παραχθούν δεδομένα mi g(di) = mi

◊ Στόχος:

◊ Ο περιορισμός του μεγέθους που καταλαμβάνει μια ποσότητα πληροφορίας

Ορισμός Συμπίεσης Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 9: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Αποσυμπίεση:

◊ Μια συνάρτηση gr εφαρμόζεται στα δεδομένα mi ώστε να παραχθούν τα δεδομένα dr gr(mi) = dr

◊ Trade-off: Ποσοστό Συμπίεσης vs. Παραποίηση Δεδομένων

◊ Ένας αλγόριθμος συμπίεσης προκαλεί μια σειρά μετασχηματισμών στο αρχικό σήμα οι οποίοι μπορεί να είναι:

◊ χωρίς απώλειες ή αντιστρεπτοί (lossless compression algorithms)

◊ με απώλειες ή μη αντιστρεπτοί (lossy compression algorithms)

◊ Η μορφή συμπίεσης που επιλέγουμε εξαρτάται από το είδος της πληροφορίας

Ορισμός Συμπίεσης (II) Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 10: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Εφαρμογές διαλογικού τύπου

◊ Η διαδικασία συμπίεσης / αποσυμπίεσης δεν πρέπει να διαρκεί πάνω από 150 msecs (end-to-end delay) για συνηθισμένες εφαρμογές

◊ Καθυστέρηση της τάξης των 50 msecs για “face-to-face” εφαρμογές

◊ Για τη συνολική end-to-end καθυστέρηση πρέπει να συνυπολογιστούν καθυστερήσεις που οφείλονται στο δίκτυο, το πρωτόκολλο επικοινωνίας, τις συσκευές Ι/Ο που χρησιμοποιούνται κλπ.

◊ Οι απαιτήσεις κατά τη συμπίεση και αποσυμπίεση κάποιας μορφής πληροφορίας διαφοροποιούνται από εφαρμογή σε εφαρμογή

◊ Εξαρτώνται άμεσα από το αν η εφαρμογή είναι διαλογικού τύπου ή τύπου ανάκλησης δεδομένων

Περιορισμοί Συμπίεσης Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 11: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

Περιορισμοί Συμπίεσης (ΙΙ) Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

• Εφαρμογές τύπου ανάκλησης δεδομένων (Retrieval Mode)

– Γρήγορη αναζήτηση και ανάκτηση πληροφοριών (forward and backward) και ταυτόχρονη προβολή τους

– Τυχαία προσπέλαση σε οποιοδήποτε πλαίσιο εικόνας ή ήχου, με χρόνο προσπέλασης μικρότερο από 0,5 sec

– Δυνατότητα αποσυμπίεσης σε τυχαία μεμονωμένα πλαίσια (έτσι ώστε να επιτρέπεται η επεξεργασία τους)

Page 12: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Η συμπίεση είναι εφικτή επειδή υπάρχει πλεονασμός δεδομένων όσον αφορά την αναπαράσταση της πληροφορίας. Στις εικόνες πλεονασμός αυτός μπορεί να προέρχεται από:

◊ Πλεονασμό κωδικοποίησης:

◊ Αναπαράσταση των τιμών φωτεινότητας ή χρώματος των pixel με κώδικες οι οποίοι απαιτούν μεγαλύτερο αριθμό bits από όσο χρειάζεται

◊ Πλεονασμό pixel

◊ Υπάρχει συσχέτιση μεταξύ των των τιμών των pixels (ή των αναπαραστάσεων τους). H τιμή φωτεινότητας ή χρώματος γειτονικών pixel συνήθως είναι παρόμοια ή έχει κάποια σχέση.

◊ Οι ομοιόμορφες περιοχές έχουν πολύ παρόμοια επίπεδα φωτεινότητας

◊ Για παράδειγμα οι τιμές φωτεινότητες των pixel κατά μήκος των ακμών έχουν παρόμοιες σχέσεις.

◊ Εικόνες υφής (texture - pattern) έχουν πλεονασμό εκ φύσεως λόγο της περιοδικής συμμετρίας, κλπ.

◊ Ψυχο-οπτικό πλεονασμό:

◊ Λαμβάνεται υπόψη η οπτική ικανότητα των ανθρώπων

Πλεονασμός δεδομένων Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 13: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Bits για κάθε pixel (ΒPΡ – Bits Per Pixel) είναι ο μέσος αριθμός των bits που χρειάζονται την αποθήκευση των επιπέδων φωτεινότητας για κάθε pixel της εικόνας

◊ Σε μια μη-συμπιεσμένη εικόνα BPP = log2(K) = B:

όπου K = ο αριθμός των επιτρεπόμενων επιπέδων φωτεινότητας (π.χ 256 – από [0 255].

Συνήθως B = log2(256) = 8.

◊ Ο αριθμός των bits που χρησιμοποιούνται για την κωδικοποίηση των pixel μπορεί να διαφέρει κατά μήκος της κωδικοποιημένης εικόνας (Variable Length Coding – VLC).

◊ Ας ορίσουμε το B(x, y) = ο αριθμός των bits που χρησιμοποιούνται για την κωδικοποίηση του pixel f(x,y).

Τότε:

όπου Μ,Ν οι γραμμές και οι στήλες της εικόνας f αντίστοιχα

Μετρήσεις Συμπίεσης Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

1

0

1

0

),(1 M

x

N

y

yxBMxN

BPP

Page 14: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ O ολικός αριθμός Btotal των bits που χρησιμοποιείται για την αναπαράσταση

της εικόνας f δεν απαρτίζεται μόνο από την περιγραφή των τιμών των pixel αλλά και από την επικεφαλίδα της εικόνας. Στην επικεφαλίδα (header) περιλαμβάνονται στοιχεία όπως:

◊ Οι διαστάσεις της εικόνας

◊ Η μορφή συμπίεσης της εικόνας

◊ Πληροφορία για την αναπαράσταση της εικόνας (έγχρωμη, παλέτας, αποχρώσεων του γκρι)

◊ Επομένως τελικά ο μέσος αριθμός BPP δίνεται από τη σχέση:

◊ Ο λόγος συμπίεσης CR (Compression Ratio) δίνεται από τη σχέση (Β είναι αριθμός bits per pixel της ασυμπίεστης εικόνας):

Μετρήσεις Συμπίεσης (II) Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

totalBMxN

BPP1

BPP

BCR

Page 15: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Η αξιολόγηση της ποιότητας μιας συμπιεσμένης εικόνας γίνεται με τη βοήθεια μιας ομάδας εμπειρογνωμόνων σε θέματα εικόνας.

◊ Πρόκειται προφανώς για υποκειμενική αξιολόγηση

◊ Η βαθμολόγηση της ποιότητας γίνεται με βάση την ταξινόμηση του επόμενου πίνακα.

Ποιότητα συμπίεσης Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 16: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Η αναπαράσταση των τιμών φωτεινότητας ή χρώματος μιας ασυμπίεστης εικόνα γίνεται με συγκεκριμένο και προκαθορισμένο αριθμό bits per pixel Β

◊ Συνήθως έχουμε Β=1 για μαυρόασπρες εικόνες (binary images), Β=8 για εικόνες αποχρώσεων του γκρι ή παλέτας χρωμάτων (indexed) και Β=24 για εικόνες πλήρους χρώματος (full color – RGB).

◊ Τι γίνεται αν έχουμε περιορισμένο πλήθος διαφορετικών τιμών φωτεινότητας ή αν ορισμένες τιμές φωτεινότητας είναι πολύ περισσότερο συχνές από άλλες;

Πλεονασμός Κωδικοποίησης

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 17: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Έστω μια εικόνα με οκτώ (8) διαφορετικές τιμές φωτεινότητας rk (k=0..7) όπως φαίνεται

στον επόμενο πίνακα.

◊ Για την κωδικοποίηση των τιμών αυτών με σταθερό μήκος λέξης χρειαζόμαστε B bits per pixel όπου

Β τ.ω.: 2Β ≥ 8. Προφανώς στη συγκεκριμένη περίπτωση Β=3.

◊ Η πιθανότητα εμφάνισης pr(rk) των τιμών φωτεινότητας δίνεται επίσης στον επόμενο πίνακα (Πως

υπολογίζεται αυτή η πιθανότητα;)

◊ Είναι φανερό ότι αν κωδικοποιήσουμε τις τιμές φωτεινότητας με μεγαλύτερη πιθανότητα εμφάνισης με λιγότερα bits θα επιτύχουμε αναπαράσταση της εικόνας με BPP<B. Άρα υπάρχει κάποιος κώδικας αναπαράστασης της εικόνας που κωδικοποιεί την εικόνα περισσότερο αποτελεσματικά.

◊ Πόσο είναι τo BPP στην συγκεκριμένη περίπτωση;

Πλεονασμός Κωδικοποίησης

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 18: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Οι τιμές φωτεινότητας ή χρώματος γειτονικών pixel σπάνια διαφέρουν σημαντικά.

◊ Ακόμα και αν οι συχνότητες εμφάνισης τιμών φωτεινότητας δεν παρουσιάζουν σημαντική διακύμανση (ώστε να υπάρχει πλεονασμός κωδικοποίησης) οι διαφορές ανάμεσα σε γειτονικά pixel θα έχουν παρόμοιες τιμές

◊ Επομένως αντί να κωδικοποιούμε τις ίδιες τις τιμές φωτεινότητας κωδικοποιούμε απλά τις διαφορές ανάμεσα σε γειτονικά pixel

◊ Οι διαφορές έχουν μικρότερο εύρος τιμών άρα μπορούν να κωδικοποιηθούν με λιγότερα bits.

Πλεονασμός pixel Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 19: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Υπάρχει πληροφορία στη εικόνα η οποία δεν μπορεί να γίνει αντιληπτή από το ανθρώπινο οπτικό σύστημα.

◊ Για παράδειγμα απότομες αλλαγές φωτεινότητας δεν γίνονται εύκολα αντιληπτές

◊ Για να γίνει αντιληπτή μια μεταβολή φωτεινότητας η μεταβολή αυτή πρέπει να είναι αρκετά μεγάλη σε σχέση με την τιμή φωτεινότητας πριν τη μεταβολή

◊ Το ανθρώπινο οπτικό σύστημα ενώ μπορεί να διαχωρίσει περισσότερα χρώματα από τιμές φωτεινότητας είναι περισσότερο ευαίσθητο στην ύπαρξη σωστού φωτισμού

◊ Η αξιοποίηση του ψυχοοπτικού πλεονασμού δεν είναι πάντα προφανής. Το πρότυπο JPEG χρωστά ένα μέρος από την αποτελεσματικότητα του, όσον αφορά την συμπίεση, στην αξιοποίηση του ψυχοοπτικού πλεονασμού χρησιμοποιώντας πιο ευρείες στάθμες κβαντισμού για τις υψηλές συχνότητες της εικόνας

Ψυχοοπτικός πλεονασμός(Psychvisual redundancy)

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 20: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Ανάλογα με τη σχέση που έχει η αρχική εικόνα µε το αποτέλεσμα της αποσυμπίεσης υπάρχουν δύο κατηγορίες μεθόδων συμπίεσης:

◊ Τεχνικές χωρίς απώλειες (lossless compression schemes):

◊ Δεν μεταβάλλουν τα χαρακτηριστικά της εικόνας κατά τη διάρκεια της συμπίεσης => η εικόνα που προκύπτει κατά την αποσυμπίεση είναι ακριβές αντίγραφο της αρχικής.

◊ Τεχνικές αυτής της μορφής χρησιμοποιούνται για τη συμπίεση εικόνων οι οποίες δε θα πρέπει να αλλοιωθούν κατά τη διαδικασία της συμπίεσης / αποσυμπίεσης (π.χ. ιατρικά εικόνες όπως υπερηχογραφήματα).

◊ Τεχνικές με απώλειες (lossy compression schemes):

◊ Αλλοιώνουν τα χαρακτηριστικά της εικόνας κατά τη διαδικασία της συμπίεσης.

◊ Τεχνικές αυτής της μορφής χρησιμοποιούνται για τη συμπίεση εικόνων στις περισσότερες εφαρμογές (όπως μετάδοση τηλεοπτικών προγραμμάτων, μεταφορά μέσω του Διαδικτύου κλπ).

◊ Οι αλλοιώσεις εισάγονται επιλεκτικά στην εικόνα ώστε να μην γίνονται εύκολα αντιληπτές.

Κατηγορίες Τεχνικών Συμπίεσης

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 21: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Ανάλογα με τη μέθοδο που ακολουθείται για τη συμπίεση εικόνων:

◊ Τεχνικές κωδικοποίησης εντροπίας (entropy encoding):

◊ Είναι τεχνικές χωρίς απώλειες οι οποίες δε λαμβάνουν υπόψη τους τη φύση των εικόνων στις οποίες εφαρμόζονται. Οι συγκεκριμένες μέθοδοι θεωρούν ότι η εικόνα που συμπιέζεται είναι απλά μία σειρά από δυαδικά ψηφία. Εκμετάλλευση του πλεονασμού κωδικοποίησης

◊ Τεχνικές κωδικοποίησης πηγής (source encoding):

◊ Λαμβάνουν υπόψη τους τη φύση της εικόνας που συμπιέζεται. Εκμετάλλευση του πλεονασμού pixel .

◊ Πετυχαίνουν μεγαλύτερους βαθμούς συμπίεσης από τις κωδικοποιήσεις εντροπίας αν και ο βαθμός συμπίεσης είναι μεταβλητός και εξαρτάται από τη μορφή της συγκεκριμένης εικόνας.

◊ Μπορεί να είναι τεχνικές με ή χωρίς απώλειες

◊ Υβριδικές τεχνικές (hybrid encoding):

◊ Αν και μερικές τεχνικές ανήκουν σε κάποια από τις παραπάνω δύο κατηγορίες, οι περισσότερες είναι υβριδικές (οι σχετικοί αλγόριθμοι χρησιμοποιούν ένα μίγμα τεχνικών εντροπίας και πηγής)

Κατηγορίες Τεχνικών Συμπίεσης (ΙΙ)

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 22: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Διακρίνονται σε:

◊ Τεχνικές Μήκους Διαδρομής (Run Length Encoding)

◊ RLC (Run Length Coding)

◊ Zero Suppression

◊ Στατιστικές:

◊ Huffman

◊ Αριθμητική

◊ Αντικατάσταση προτύπων – packbits encoding (π.χ. LZW, LUT)

Τεχνικές Κωδικοποίησης Εντροπίας

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 23: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Διακρίνονται σε:

◊ Προβλεπτικές

◊ DPCM (Difference Pulse Code Modulation)

◊ DM (Difference Modulation)

◊ Μετασχηματισμού

◊ FFT (Fast Fourier Transform)

◊ DCT (Discrete Cosine Transform)

◊ Στρωματοποίησης (Layered)

◊ Subband Coding

◊ Διανυσματικές

◊ Ταύτισης με προκαθορισμένα πρότυπα

◊ Quadtree

◊ Fractals

Τεχνικές Κωδικοποίησης Εντροπίας

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 24: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Αποτελούν συνδυασμό μεθόδων από τις άλλες κατηγορίες

◊ Έχουν υλοποιηθεί από πολύ επιτυχημένα πρότυπα κωδικοποίησης (coding standards)

◊ JPEG (Joint Photographic Experts Group)

◊ Συνδυάζει κωδικοποίηση μετασχηματισμού (DCT) και μήκους διαδρομής (RLC)

◊ H263 (συμπίεση βίντεο):

◊ Συνδυάζει κωδικοποίηση μετασχηματισμού (DCT), προβλεπτική (αντιστάθμιση κίνησης – MC: motion compensation) και μήκους διαδρομής (RLC)

◊ MPEG (Moving Pictures Expert Group) - (συμπίεση βίντεο, ήχου):

◊ Συνδυάζει κωδικοποίηση μετασχηματισμού (DCT), προβλεπτική (αντιστάθμιση κίνησης – MC: motion compensation), μήκους διαδρομής (RLC) και στρωματοποίησης (Subband Coding) για την συμπίεση του ήχου (MP3).

Υβριδικές Τεχνικές

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 25: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Το βασικό μοντέλο συμπίεσης εικόνων περιγράφεται από το επόμενο σχήμα. Περιλαμβάνει τρία βασικά στάδια:

◊ Ταύτιση (Mapping) – Έχουμε κάποιας μορφής μετασχηματισμό στις τιμές φωτεινότητας της εικόνας (π.χ. Μετασχηματισμό στο χώρο της συχνότητας, εύρεση διαφορών ανάμεσα γειτονικά pixel κλπ)

◊ Κβάντισμός (Quantization) –Περιορισμός των διακριτών τιμών της μετασχηματισμένης εικόνες οι οποίες θα αναπαρασταθούν

◊ Κωδικοποίηση (Encoder) – Αναπαράσταση με δυαδική συμβολοσειρά κάθε κβαντισμένης στάθμης (σύμβολο)

Μοντέλο Συμπίεσης Εικόνων

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 26: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Οι τεχνικές συμπίεσης χωρίς απώλειες επιτυγχάνουν συμπίεση της εικόνας έτσι ώστε η αρχική εικόνα να μπορεί να ανασκευαστεί ακριβώς από τη συμπιεσμένη εικόνα.

◊ Συνήθως στη συμπίεση χωρίς απώλειες δεν επιτυγχάνεται μεγάλος βαθμός συμπίεσης

◊ Ο λόγος συμπίεσης που επιτυγχάνεται κυμαίνεται συνήθως στο διάστημα 2:1 ≤ CR ≤ 3:1 αν και γενικά αλλάζει από εικόνα σε εικόνα

◊ Εφαρμογές:

◊ Αποθήκευση ιατρικών εικόνών

◊ Αποθήκευση σκανναρισμένων εγγράφων ή φωτογραφημένων έργων τέχνης.

◊ Βασικές Αρχές

◊ Χρησιμοποίηση μεταβλητού μήκους λέξης – variable length encoding (κώδικα) για κωδικοποίηση των επιπέδων φωτεινότητας.

◊ Χρήση μικρού μήκους λέξης για φωτεινότητες οι οποίες εμφανίζονται συχνά.

Συμπίεση χωρίς Απώλειες Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 27: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Τι είναι εντροπία (entropy) εικόνας

◊ Ο (θεωρητικά) ελάχιστος αριθμός από bits ανά pixel (τιμή φωτεινότητας ή χρώματος) που χρειάζεται για την κωδικοποίηση μιας εικόνας.

◊ Πως υπολογίζεται η εντροπία μιας εικόνας;

◊ Με βάση την εξίσωση Shannon:

όπου K o αριθμός των διακεκριμένων (διαφορετικών) τιμών φωτεινότητας που

υπάρχουν στη εικόνα και Pk η πιθανότητα εμφάνισης της τιμής φωτεινότητας k.

◊ Πως υπολογίζονται οι πιθανότητες Pk;

◊ Από το κανονικοποιημένο ιστόγραμμα της εικόνας

◊ Pk=HI(k) = n/(ΜxN),

για κάθε k = 0, ... K-1,

αν το επίπεδο φωτεινότητας k εμφανίζεται (ακριβώς) n φορές στην εικόνα I, (διάστασης ΜxN pixels) K τα διαφορετικά επίπεδα φωτεινότητας.

Τεχνικές Κωδικοποίησης Εντροπίας

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

K

kkk PPE

12log

Page 28: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Επειδή η εντροπία υποδεικνύει τη βέλτιστη συμπίεση (χωρίς απώλειες), που μπορεί να επιτευχθεί, η αποδοτικότητα κωδικοποίησης μιας μεθόδου συχνά συγκρίνεται με την εντροπία.

◊ Η αποδοτικότητα κωδικοποίησης υπολογίζεται με βάση τον μέσο αριθμό bits ανά pixel (BPP).

◊ H συνηθισμένη μέτρηση του BPP για τεχνικές χωρίς απώλειες (με μεταβλητό μήκος λέξης) δίνεται από τη σχέση:

όπου Κ o αριθμός των διακεκριμένων τιμών φωτεινότητας ή χρώματος στη

εικόνα, ΗI(k) η πιθανότητα εμφάνισης της τιμής k και Νk τα bits που

χρησιμοποιούνται για την κωδικοποίηση της τιμής φωτεινότητας k.

Τεχνικές Κωδικοποίησης Εντροπίας (II)

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

1

0

)(BK

kIk kHNPP

Page 29: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Η εντροπία είναι απλά μια μέτρηση η οποία μας παρέχει πληροφορίες για τη στρατηγική κωδικοποίησης της εικόνας.

◊ Η εντροπία μιας εικόνας Ι είναι μια μέτρηση της πολυπλοκότητας – του μεγέθους της πληροφορίας που περιλαμβάνει.

◊ Μπορεί να αποδειχτεί ότι η εντροπία έχει μέγιστη τιμή όταν

το οποίο αντιπροσωπεύει ένα επίπεδο ιστόγραμμα.

◊ Σε αυτή την περίπτωση και με δεδομένο ότι K = 2B

◊ Η εντροπία της εικόνας I αυξάνεται όταν το ιστόγραμμα της εικόνας ανοίγει.

◊ Πότε η εντροπίας μιας εικόνας I έχει ελάχιστη τιμή;

◊ Όταν υπάρχει μια και μόνη τιμή φωτεινότητας (ομοιόμορφη ή σταθερή εικόνα)

Ιδιότητες Εντροπίας Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

KkHP Ik

1)(

BKK

IEK

k

1

02 }

1{log

1}{

Page 30: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Ισχύει: 0 ≤ Ε{Ι} ≤ Β

◊ Ένα σημαντικό θεώρημα της θεωρίας κωδικοποίησης περιορίζει το πόσο καλά μπορούμε να κωδικοποιήσουμε μια εικόνα χωρίς απώλειες με τη χρήση μεταβλητού μήκους λέξης: BPP ≥ Ε{Ι}

◊ Αυτός είναι ο καλύτερος λόγος για την χρησιμοποίηση της εντροπίας σαν μέτρο κωδικοποίησης.

◊ Μας λέει π.χ. ότι για μια εικόνα με τέλειο επίπεδο ιστόγραμμα E{Ι} = B

δεν μπορεί να συμπιεστεί χρησιμοποιώντας ένα κώδικα μεταβλητών μήκων λέξεων.

◊ Ευτυχώς, συχνά μπορούμε να διορθώσουμε αυτή την κατάσταση (Πως;)

◊ Μείωση της εντροπίας της εικόνας μπορεί να επιτευχθεί με μετασχηματισμό των τιμών φωτεινότητας (αλλαγή συμβόλων) όπως π.χ. με χρήση των διαφορών ανάμεσα σε pixels

◊ Ο κώδικας μεταβλητού μήκους λέξης θεωρεί ότι οι πιθανότητες Pk είναι

γνωστές και έχουν διαβιβαστεί και στον παραλήπτη

◊ Με τη λέξη κώδικας, εννοούμε μοναδικά αποκωδικοποιημένο κώδικα

Ιδιότητες Εντροπίας (ΙΙ) Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 31: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Μια εικόνα έχει μόνα 5 διαφορετικές τιμές φωτεινότητας τις Α = 32, Β = 68, C =145, D =190, E = 225 των οποίων οι πιθανότητες εμφάνισης έχουν εκτιμηθεί ως P(A)=0.4, P(B)=0.08, P(C)=0.16, P(D)=0.16, P(E)=0.2.

◊ Να υπολογιστεί η εντροπία της εικόνας

◊ Να υπολογιστεί η αποδοτικότητα του βέλτιστου αλγορίθμου κωδικοποίησης του παραπάνω μηνύματος αν χρησιμοποιείται σταθερού μεγέθους μήκος λέξης.

Παράδειγμα Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 32: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Η τεχνική βασίζεται στη πιθανότητα εμφάνισης συμβόλων (για τη περίπτωση της εικόνας οι τιμές φωτεινότητας)

◊ Κατασκευή δυαδικού δέντρου, αρχίζοντας από τους σύμβολα με τη μικρότερη πιθανότητα εμφάνισης

◊ Η τεχνική μπορεί να χρησιμοποιηθεί και για κωδικοποίηση ομάδων συμβόλων, όπου η έννοια του «συμβόλου» αντικαθίσταται από εκείνη της «ομάδας συμβόλων»

Κωδικοποίηση Huffman Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 33: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Αλγόριθμος Huffman: Από ένα δυαδικό δέντρο με κλαδιά που έχουν

επιγραφή το επίπεδο φωτεινότητας ki και τις πιθανότητες Pki

◊ (0) Μας περιορίζει από την μελέτη κάθε ki όπου Pki = 0

◊ (1) Βρίσκει τις 2 μικρότερες πιθανότητες pi= Pki και pj= Pkj

◊ (2) Αντικαθιστά με pij = pi + pj (βάση σημάδι, μειώνει την λίστα κατά ένα)

◊ (3) Δίνει τιμές στα κλαδιά:

◊ για το ki '1' και για το kj '0'

◊ 4) Μέχρι έως ότου η λίστα να έχει μόνο 1 στοιχείο (ρίζα) επιστρέφουμε στο (1)

Κωδικοποίηση Huffman (ΙΙ) Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 34: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

Παράδειγμα Κωδικοποίησης Huffman (Ι)

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

P(ADCEB)=1.00

P(ADCE)=0.49

P(CE)=0.20

P(C)=0.09 P(E)=0.11

P(AD)=0.29

P(D)=0.13 P(A)=0.16

P(B)=0.51

0

1

010 1

0

1σύμβολο

Πιθανότητα εμφάνισης P

απεικόνιση

A P(A)=0.16

B P(B)=0.51

C P(C)=0.09

D P(D)=0.13

E P(E)=0.11

σύμβολοΠιθανότητα εμφάνισης P

απεικόνιση

A P(A)=0.16 011

B P(B)=0.51 1

C P(C)=0.09 000

D P(D)=0.13 010

E P(E)=0.11 001

Page 35: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

Παράδειγμα Κωδικοποίησης Huffman (ΙΙ)

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

• Έστω η εικόνα Ι με K = 8 τιμές {0 ,.., 7} που θα πρέπει να κωδικοποιηθούν. Οι αντίστοιχες πιθανότητες είναι:

p(0) = 1/2 p (4) = 1/16

p(1) = 1/8 p (5) = 1/32

p(2) = 1/8 p (6) = 1/32

p (3) = 1/8 p (7) = 0

• Να υπολογιστεί η εντροπία της εικόνας• Να βρεθούν οι κωδικές λέξεις Huffman• Να βρεθεί ο μέσος αριθμός bit ανά pixel BPP• Να υπολογιστεί ο βαθμός συμπίεσης

Page 36: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

Αποκωδικοποίηση δυαδικής συμβολοσειράς Huffman

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

◊ Ο κώδικας Huffman έχει μόνο ένα τρόπο αποκωδικοποίησης. Υπάρχει μόνο μια ερμηνεία για μια σειρά από bits

◊ Η αποκωδικοποίηση προχωρεί με τη σάρωση του δέντρου.

◊ Έστω στην περίπτωση του παραδείγματος ότι λαμβάνεται από το δέκτη η επόμενη σειρά από bits:

00010110101110000010000100010110111010

◊ Η παραπάνω σειρά αποκωδικοποιείται μοναδικά στα σύμβολα:

CBADBBBCECDEAABD σύμβολο

Πιθανότητα εμφάνισης P

απεικόνιση

A P(A)=0.16 011

B P(B)=0.51 1

C P(C)=0.09 000

D P(D)=0.13 010

E P(E)=0.11 001

Page 37: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

Παρατηρήσεις σχετικά με τον κώδικα Huffman

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

◊ Ο λόγος συμπίεσης που επιτυγχάνεται με τον κώδικα Huffman είναι συνήθως γύρω στο 2:1 ≤ CR ≤ 3:1

◊ Ο κώδικας Huffman μπορεί να προσβληθεί από θόρυβο στην μετάδοση (πολύ περισσότερο από την μετάδοση της αρχικής εικόνας)

◊ Σκεφτείτε τι μπορεί να συμβεί αν αλλάξει μια και μόνο τιμή σε ένα bit στο προηγούμενο παράδειγμα:

00010110100110000010000100010110111010

Ποια συμβολοσειρά θα αποκωδικοποιηθεί;

◊ Υπάρχουν κώδικες διόρθωσης λαθών οι οποίοι είναι πολύ λιγότερο ευαίσθητοι στο θόρυβο. Μεγαλώνουν κάπως το συντελεστή κωδικοποίησης.

◊ Σε πολλές περιπτώσεις σχήματα συμπίεσης με απώλειες μπορούν να συνδυαστούν με τον κώδικα Huffman, κωδικοποιώντας τις λέξεις κώδικα με απώλειες, με τον κώδικα Huffman.

◊ Ο τελικός λόγος συμπίεσης προκύπτει από το γινόμενο της συμπίεσης με απώλειες επί το λόγο της συμπίεσης Huffman.

Page 38: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

Άσκηση Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

– Να βρεθούν οι κωδικές λέξεις Huffman για την αναπαράσταση μηνυμάτων που απαρτίζονται από τα σύμβολα A,B,C,D,E και των οποίων οι πιθανότητες εμφάνισης στα μηνύματα είναι όπως υποδεικνύεται στο διπλανό πίνακα

– Να υπολογισθεί το μέσο μήκος λέξης της κωδικοποίησης και να συγκριθεί με την αντίστοιχη εντροπία των μηνυμάτων

σύμβολοΠιθανότητα

εμφάνισης P

A 0.4

Β 0.08

C 0.16

D 0.16

E 0.2

Page 39: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Ενώ το μοντέλο RGB προϋποθέτει την ύπαρξη μιας πηγής φωτός για τη δημιουργία χρώματος, το μοντέλο CMY βασίζεται στην απορροφητική ικανότητα της τυπωμένης μελάνης. Αποτελείται από τα συμπληρωματικά (ή δευτερεύοντα) χρώματα:

◊ Κυανό (Cyan) –συμπληρωματικό του Κόκκινου (απορρόφηση κόκκινου χρώματος και ανάκλαση πράσινου και μπλε => C = G+B),

Αριθμητική Κωδικοποίηση Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 40: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Ενώ το μοντέλο RGB προϋποθέτει την ύπαρξη μιας πηγής φωτός για τη δημιουργία χρώματος, το μοντέλο CMY βασίζεται στην απορροφητική ικανότητα της τυπωμένης μελάνης. Αποτελείται από τα συμπληρωματικά (ή δευτερεύοντα) χρώματα:

◊ Κυανό (Cyan) –συμπληρωματικό του Κόκκινου (απορρόφηση κόκκινου χρώματος και ανάκλαση πράσινου και μπλε => C = G+B),

◊ Ματζέντα (Magenta) –συμπληρωματικό του Πράσινου (απορρόφηση πράσινου χρώματος και ανάκλαση κόκκινου και μπλε => Μ = R+B)

◊ Κίτρινο (Yellow) –συμπληρωματικό του Μπλε, (απορρόφηση μπλε χρώματος και ανάκλαση κόκκινου και πράσινου => Y = R+G)

◊ Είναι αφαιρετικά χρώματα:

◊ η απουσία όλων των συνιστωσών είναι το λευκό.

Κωδικοποίηση Μήκους Διαδρομής

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 41: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

Κωδικοποίηση Μήκους Διαδρομής (II)

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 42: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

Αντικατάσταση Προτύπων(packbits encoding)

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

◊ Ενώ το μοντέλο RGB προϋποθέτει την ύπαρξη μιας πηγής φωτός για τη δημιουργία χρώματος, το μοντέλο CMY βασίζεται στην απορροφητική ικανότητα της τυπωμένης μελάνης. Αποτελείται από τα συμπληρωματικά (ή δευτερεύοντα) χρώματα:

Page 43: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Δύο βασικές κατηγορίες μοντέλων:

◊ Με βάση το πως δημιουργούνται από τις συσκευές εξόδου (οθόνες, εκτυπωτές)

◊ Με βάση το πως τα αντιλαμβάνεται το ανθρώπινο μάτι

Προβλεπτική Κωδικοποίηση

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 44: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

◊ Δύο βασικές κατηγορίες μοντέλων:

◊ Με βάση το πως δημιουργούνται από τις συσκευές εξόδου (οθόνες, εκτυπωτές)

◊ Με βάση το πως τα αντιλαμβάνεται το ανθρώπινο μάτι

Προβλεπτική Κωδικοποίηση (ΙΙ)

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

Page 45: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

Διαμόρφωση Δέλτα Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση

◊ Δύο βασικές κατηγορίες μοντέλων:

◊ Με βάση το πως δημιουργούνται από τις συσκευές εξόδου (οθόνες, εκτυπωτές)

◊ Με βάση το πως τα αντιλαμβάνεται το ανθρώπινο μάτι

Page 46: Συμπίεση Ψηφιακών Εικόνων: Συμπίεση χωρίς απώλειες

ΔΤΨΣ 150: Ψηφιακή Επεξεργασία ΕικόναςΔΤΨΣ 150: Ψηφιακή Επεξεργασία Εικόνας

© 2005 Nicolas Tsapatsoulis

Σύνοψη

◊ Το υλικό που παρουσιάστηκε σε αυτή την ενότητα αποτελεί μια εισαγωγή στις βασικές τεχνικές συμπίεσης χωρίς απώλειες.

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

◊ Οι βασικές τεχνικές συμπίεσης χωρίς απώλειες που εφαρμόζονται στις ψηφιακές εικόνες είναι:

◊ Η κωδικοποίηση Huffman

◊ Η αριθμητική κωδικοποίηση

◊ Η κωδικοποίηση μήκους διαδρομής

◊ Η αντικατάσταση προτύπων

◊ Η προβλεπτική κωδικοποίηση

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

Εισαγωγή - Βασικά Στοιχεία Κατηγορίες Τεχνικών Συμπίεσης Μοντέλο Συμπίεσης Εικόνων Συμπίεση χωρίς Απώλειες Κωδικοποίηση Ηuffman Κωδικοποίηση Μήκους Διαδρομής Προβλεπτική Κωδικοποίηση