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

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

Download "ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΙΟΝΙΩΝ ΝΗΣΩΝ ΠΑΡΑΡΤΗΜΑ ΛΕΥΚΑΔΑΣ ΤΜΗΜΑ: ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΤΗ ΔΙΟΙΚΗΣΗ ΚΑΙ ΤΗΝ ΟΙΚΟΝΟΜΙΑ"

Transcript

1 ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΙΟΝΙΩΝ ΝΗΣΩΝ ΠΑΡΑΡΤΗΜΑ ΛΕΥΚΑΔΑΣ ΤΜΗΜΑ: ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΤΗ ΔΙΟΙΚΗΣΗ ΚΑΙ ΤΗΝ ΟΙΚΟΝΟΜΙΑ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΤΟΥ ΣΠΟΥΔΑΣΤΗ ΜΙΜΗΓΙΑΝΝΗ ΧΡΗΣΤΟΥ ΘΕΜΑ Περιγραφή και Ανάλυση Προτύπων Ψηφιακών Οπτικών Δεδομένων ΛΕΥΚΑΔΑ 2011 i

2 ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ 1: ΣΥΜΠΙΕΣΗ ΔΕΔΟΜΕΝΩΝ ΕΙΣΑΓΩΓΗ 1.1 Εισαγωγή στη συμπίεση δεδομένων (εικόνα και βίντεο) Συμπίεση με απώλειες έναντι συμπίεσης χωρίς απώλειες Χωρίς απώλειες συμπίεση Συμπίεση με απώλειες 9 σελίδα 1.3 Επιλογή μεθόδου συμπίεσης 11 ΚΕΦΑΛΑΙΟ 2: ΣΥΜΠΙΕΣΗ ΧΩΡΙΣ ΑΠΩΛΕΙΕΣ 2.1 Εισαγωγή Βασικά της κωδικοποίησης εικόνας χωρίς απώλειες Μετασχηματισμός Αντιστοίχιση δεδομένων-σε-σύμβολα (data-to-symbol mapping) Χωρίς απώλειες κωδικοποίηση συμβόλων Χωρίς απώλειες κωδικοποίηση συμβόλων Βασικές έννοιες από τη θεωρία πληροφοριών Κωδικοποίηση Huffman Αριθμητική κωδικοποίηση Χωρίς απώλειες πρότυπα κωδικοποίησης Πρότυπα JBIG 38 ΚΕΦΑΛΑΙΟ 3: ΤΟ ΠΡΟΤΥΠΟ ΣΥΜΠΙΕΣΗΣ ΕΙΚΟΝΑΣ JPEG ΧΩΡΙΣ ΑΠΩΛΕΙΕΣ 3.1 Εισαγωγή Τα Αρχικά Πρότυπα JPEG Χωρίς Απώλεια Διαδικασίες κωδικοποίησης Huffman Διαδικασίες αριθμητικής κωδικοποίησης JPEG-LS Το νέο χωρίς απώλεια πρότυπο Το προβλεπτικό βήμα Σχηματισμός περιεχομένου Ακύρωση πόλλωσης (Bias Cancellation) Κωδικοποίηση Golomb Rice Αλφαβητική προέκταση Σχεδόν χωρίς απώλεια συμπίεση 57 ii

3 ΚΕΦΑΛΑΙΟ 4 - ΤΟ ΠΡΟΤΥΠΟ ΣΥΜΠΙΕΣΗΣ ΕΙΚΟΝΑΣ JPEG ΜΕ ΑΠΩΛΕΙΕΣ 4.1. Εισαγωγή Δομή του Κωδικοποιητή JPEG με απώλειες Δομή Κωδικοποιητή (Encoder structure) Μονάδα Μετατροπής Σήματος: DCT Κβαντοποιητής (quantizer) Μονάδα αντιστοίχισης συντελεστή σε σύμβολο Μονάδα κωδικοποίησης εντροπίας (Entropy coding unit) Δομή αποκωδικοποιητή Μετασχηματισμός Διακριτού Συνημιτόνου (Discrete Cosine Transform -DCT) 4.4. Κβαντοποίηση (Quantization) Σχέδιο πίνακα κβαντοποίησης Αντιστοίχιση και κωδικοποίηση συντελεστή σε σύμβολο Σύμβολα συντελεστή DC Αντιστοίχιση του συντελεστή AC σε σύμβολα Κωδικοποίηση εντροπίας Μορφοποιήσεις Δεδομένων Εικόνας και Συστατικά Εναλλακτικά Μοντέλα Λειτουργίας Προοδευτική μέθοδος (Progressive mode) Ιεραρχική μέθοδος JPEG Μέρος Μεταβλητή κβαντοποίηση Επίστρωση (Tiling) 88 ΚΕΦΑΛΑΙΟ 5: ΣΥΜΠΙΕΣΗ ΕΙΚΟΝΑΣ ΒΑΣΙΣΜΕΝΗ ΣΤΑ ΚΥΜΑΤΙΔΙΑ (WAVELETS) 5.1 Τι είναι wavelets: Γιατί είναι καλά για την κωδικοποίηση εικόνας; Το πρόβλημα της συμπίεσης Jasper 102 ΚΕΦΑΛΑΙΟ 6: ΠΡΟΤΥΠΑ ΣΥΜΠΙΕΣΗΣ ΒΙΝΤΕΟ 6.1 Εισαγωγή Εισαγωγή στη συμπίεση βίντεο 108 iii 65

4 6.3 Απαιτήσεις εφαρμογής συμπίεσης βίντεο Πρότυπο κωδικοποίησης βίντεο MPEG Απαιτήσεις και εφαρμογές που στοχεύει η συμπίεση βίντεο Πρότυπο κωδικοποίησης βίντεο MPEG Απαιτήσεις και εφαρμογές που στοχεύει MPEG προφίλ και επίπεδα Συμπερασματικά για το MPEG Πρότυπα MPEG-4 και MPEG Το πρότυπο MPEG Οπτικοακουστική αναπαράσταση Τεχνική περιγραφή του MPEG-4 οπτικού περιεχομένου Το MPEG-7 οπτικό πρότυπο Το MPEG-21 πρότυπο 133 ΜΕΛΕΤΗ ΠΕΡΙΠΤΩΣΗΣ 136 ΠΕΡΙΛΗΨΗ 140 ΣΥΜΠΕΡΑΣΜΑΤΑ 142 iv

5 Συμπίεση δεδομένων - Εισαγωγή ΚΕΦΑΛΑΙΟ 1 Συμπίεση δεδομένων Εισαγωγή 1.1 Εισαγωγή στη συμπίεση δεδομένων (εικόνα και βίντεο) Στόχος των επιστημών της πληροφόρησης είναι η εύκολη διάχυση της πληροφορίας. Το διαδίκτυο είναι ο μηχανισμός μέσω του οποίου η γνώση έγινε πλέον ένα δημόσιο αγαθό και εύκολα προσβάσιμο. Η πληροφορία έχει πλέον άυλη μορφή, η οποία δεν έχει φυσικούς και γεωγραφικούς περιορισμούς. Δημιουργήθηκε όμως ένα σημαντικό πρόβλημα για την διάδοση της πληροφορίας, καθώς άλλαξε τελείως το περιβάλλον της. Το πρόβλημα αυτό είναι η οργάνωση της πληροφορίας. Η πληθώρα του υλικού είναι αναγκαίο να ταξινομηθεί, έτσι ώστε να γίνει εύκολη η ανάκτηση και η διάχυση της πληροφορίας. Στο συμβατικό περιβάλλον το αντικείμενο ήταν το τεκμήριο, ο φυσικός δηλαδή φορέας πληροφορίας ως οργανικό σύνολο. Έτσι ζητούμενο ήταν για παράδειγμα ένα ολόκληρο βιβλίο. Σήμερα προσπάθεια γίνεται να εξάγουμε την πληροφορία από το τεκμήριο και όχι ολόκληρο το τεκμήριο. Το ζητούμενο δηλαδή είναι η πληροφορία. Οι ψηφιακές λοιπόν βιβλιοθήκες παρέχουν την πληροφορία σε ψηφιακή μορφή, ενσωματώνοντας την έννοια του υπερκειμένου και των πολυμέσων. Πλέον έχουμε την ευκαιρία, αν δεν κατανοούμε μια έννοια να μη περιοριστούμε στην λέξη αλλά να παρακολουθήσουμε ένα επεξηγηματικό βίντεο ή και ένα ηχητικό απόσπασμα, που θα εξηγήσει με πιο εύκολο τρόπο αυτή την δύσκολη έννοια. Σε συνάρτηση με τα προηγούμενα τίθεται το θέμα της χωρητικότητας της πληροφορίας. Ένα απλό κείμενο έχει μέγεθος κάποιων Kbytes,σε αντίθεση με ένα βίντεο ή έναν ήχο, που έχουν μεγαλύτερη χωρητικότητα. Όπως είπαμε σκοπός της επιστήμης της πληροφορίας είναι η εύκολη ανάκτηση της πληροφορίας. Για την επίτευξη του σκοπού αυτού πρέπει τα δεδομένα να έχουν μικρό μέγεθος για την εύκολη μεταφορά τους. Δημιουργήθηκαν λοιπόν κάποια πρότυπα συμπίεσης εικόνας και ήχου, τα οποία συνεχώς ανανεώνονται και εμπλουτίζονται με νέες δυνατότητες. Η διαδικασία αυτή που επανακωδικοποιεί την εκπεμπόμενη πληροφορία με στόχο να μεταδώσει το ίδιο περιεχόμενο αλλά με μικρότερη επιβάρυνση του καναλιού, δηλ, λιγότερα bit ανά σύμβολο, λέγεται συμπίεση. Το πρόβλημα της αποθήκευσης και μετάδοσης των ψηφιακών δεδομένων π.χ. εικόνα, βίντεο έχει αποτελέσει πεδίο έρευνας για περισσότερο από 40 χρόνια και όπως αρκετά ερευνητικά πεδία αρχικά αναπτύχθηκε για στρατιωτικές εφαρμογές και από τη γνωστή NASA. Το πρόβλημα τίθεται με απλό τρόπο ως εξής: Με ποιο τρόπο μπορεί κάποιος να 1

6 Συμπίεση δεδομένων - Εισαγωγή αναπαραστήσει σε δυαδική μορφή τα δεδομένα μας π.χ μία εικόνα; Ουσιαστικά έτσι ορίζεται το πρόβλημα της συμπίεσης των ψηφιακών δεδομένων. Στη συγκεκριμένη πτυχιακή εργασία θα ασχοληθούμε πιο συγκεκριμένα με το πρόβλημα των προτύπων συμπίεσης της ψηφιακής εικόνας και του ψηφιακού βίντεο. Η συμπίεση αποτελεί μία ειδική περίπτωση του προβλήματος της κωδικοποίησης που πρώτος αναφέρθηκε στη πολύ γνωστή του εργασία ο Shannon στο πρόβλημα των συστημάτων επικοινωνιών. Αυτό που κάνει διαφορετική τη συμπίεση των εικόνων είναι ότι οι τεχνικές που έχουν αναπτυχθεί εκμεταλλεύονται τη μοναδική φύση των εικόνων και των παρατηρητών τους, συμπεριλαμβάνοντας κατ αυτόν τον τρόπο τη χωρική φύση των δεδομένων και το ανθρώπινο οπτικό σύστημα. Η «επάρκεια» της αναπαράστασης εξαρτάται από δύο ιδιότητες κάθε τεχνικής συμπίεσης εικόνας: το ρυθμό δεδομένων (bit/pixel) και τη παραμόρφωση στις αποσυμπιεσμένες εικόνες. Ο ρυθμός δεδομένων είναι ένα μέτρο του πόσο εύρος απαιτεί κάποιος για να μεταδώσει μία εικόνα ή πόσο χώρο χρειάζεται για να μεταδώσει αυτή την εικόνα. Ιδανικά κάποιος θα ήθελε να είναι όσο το δυνατό πιο μικρός. Αν η αποσυμπιεσμένη εικόνα είναι ακριβώς η ίδια με την αρχική εικόνα, τότε η τεχνική ονομάζεται τεχνική χωρίς απώλειες (lossless). Διαφορετικά η τεχνική είναι με απώλειες και η αποσυμπιεσμένη εικόνα έχει παραμόρφωση ή συστατικά παραμόρφωσης που οφείλονται στη κωδικοποίηση. Ανάλογα με την εφαρμογή μπορεί κανείς να κάνει ένα είδος συμβιβασμού (trade-off) μεταξύ της παραμόρφωσης και του ρυθμού δεδομένων. Συνεπώς, αν ένας χρήστης επιθυμεί οι εικόνες του να έχουν περισσότερη παραμόρφωση τότε ο ρυθμός δεδομένων μπορεί πολύ συχνά να είναι χαμηλότερος. Οι στατιστικές και οι δομικές μέθοδοι που έχουν αναπτυχθεί για τη συμπίεση εικόνας βασίζονται οι μεν πρώτες στις αρχές της κωδικοποίησης πηγής (source coding) με έμφαση στην αλγεβρική δομή των pixel σε μία εικόνα ενώ οι δεύτερες στη γεωμετρική δομή των εικόνων. Τα τελευταία χρόνια έχει υπάρξει ιδιαίτερη δραστηριότητα στη κατασκευή προτύπων για τη συμπίεση εικόνων και βίντεο. Το βασικό αποτέλεσμα ήταν τα πρότυπα JPEG και MPEG. Οι περισσότερες στατιστικές μέθοδοι συμπίεσης έχουν υλοποιηθεί κάνοντας κατάτμηση της εικόνας σε μη-επικαλυπτόμενα τμήματα (blocks), λόγω του γεγονότος ότι η διαίρεση μίας εικόνας σε μη επικαλυπτόμενα τμήματα επιτρέπει στους αλγορίθμους συμπίεσης να προσαρμοστούν στις τοπικές στατιστικές ιδιότητες της εικόνας. Το μειονέκτημα βέβαια είναι ότι τα όρια των τμημάτων συχνά είναι ορατά στην αποκωδικοποιημένη εικόνα. 2

7 Συμπίεση δεδομένων - Εισαγωγή Στη παρούσα πτυχιακή περιγράφουμε τεχνικές συμπίεσης κυρίως χωρίς απώλειες αλλά και τεχνική JPEG συμπίεσης με απώλειες. Επίσης παρουσιάζουμε την εφαρμογή των wavelets (κυματιδίων) στη περίπτωση της συμπίεσης εικόνας. Κινούμενοι μέσα σε αυτό το πλαίσιο παρουσιάζουμε διάφορα πρότυπα συμπίεσης εικόνας και βίντεο όπως το JPEG πρότυπο συμπίεσης εικόνας και διάφορες εκδόσεις του MPEG προτύπου συμπίεσης, Η συμπίεση μας βοηθάει, ώστε να εξοικονομούμε χώρο σε αποθηκευτικά μέσα. Εκεί, όμως, που είναι απαραίτητη η συμπίεση είναι, όταν στέλνουμε δεδομένα μέσα από τηλεπικοινωνιακά κανάλια, όπως είναι το διαδίκτυο, Ανάλογα με το είδος των αρχείων που θέλουμε να συμπιέσουμε και να αποσυμπιέσουμε, χρησιμοποιούμε την αντίστοιχη μέθοδο συμπίεσης-αποσυμπίεσης. Κατά τη διαδικασία συμπίεσης αποσυμπίεσης των δεδομένων, άλλες μέθοδοι δημιουργούν απώλεια των δεδομένων των αρχείων και άλλες όχι. Επομένως, έχουμε συμπίεση με απώλεια δεδομένων και συμπίεση χωρίς απώλεια των δεδομένων. Από τα γνωστά αρχεία που δεν αποδέχονται απώλεια των δεδομένων είναι τα αρχεία κειμένου, και τα αρχεία δεδομένων Η/Υ. Αρχεία που επιδέχονται απώλειες των δεδομένων τους, με αντίτιμο τη μείωση της ποιότητάς τους, είναι τα αρχεία εικόνων, γραφικών, βίντεο, ήχου, animation, κ.α. Υπάρχουν απωλεστικές μέθοδοι συμπίεσης αποσυμπίεσης, όπου η απώλεια της πληροφορίας δεν είναι εμφανής σε χαμηλές συμπιέσεις. Τις περισσότερες φορές, όταν στέλνουμε αρχεία εικόνας ή ήχου σε πραγματικό χρόνο, μέσα π.χ. από το διαδίκτυο, προσφεύγουμε σε τεχνικές μείωσης της χρωματικής πληροφορίας και της ανάλυσης τους, ώστε να φτάνουν πιο γρήγορα στον προορισμό τους. Στην απωλεστική συμπίεση εφαρμόζονται αλγόριθμοι που αφαιρούν μέρος της πληροφορίας με επιλεκτικό τρόπο. Αυτό μπορεί να γίνει γιατί υπάρχουν είδη πληροφορίας που δεν αλλοιώνονται ουσιαστικά από την απώλεια κάποιων bit. Πχ. ένα αρχείο που περιέχει πληροφορία ήχου (ή της εικόνας, ή video clip) μπορεί να χάσει σημαντικό μέρος της αρχικής πληροφορίας χωρίς αυτό να επηρεάσει την συνολική αντίληψη του ήχου (ή της εικόνας, ή του video clip) από τον άνθρωπο-δείκτη μετά την αποσυμπίεση. Οι αλγόριθμοι αυτοί βασίζονται σε ψυχοφυσιολογικούς περιορισμούς των ανθρώπινων αισθητήριων οργάνων. Το ανθρώπινο αυτί και μάτι είναι πολύ λιγότερο ευαίσθητα στις σύντομες και παροδικές εκείνες μεταβολές του εισερχόμενου σήματος, που στο χώρο των συχνοτήτων αντιπροσωπεύονται από υψηλές συχνότητες. Έτσι από την πληροφορία μιας εικόνας ή ενός ήχου μπορούν να αφαιρεθούν οι μεταβολές υψηλότερων συχνοτήτων χωρίς αισθητή απώλεια στην τελική ποιότητα, καταλήγοντας σε σημαντικά μικρότερο μέγεθος αρχείου. Υπάρχει και η μη απωλεστική συμπίεση. Η μη απωλεστική συμπίεση εξαλείφει τον πλεονασμό της πληροφορίας χωρίς να χάσει κανένα δεδομένο. Διασφαλίζει ότι η διαδικασία αποκωδικοποίησης επαναφέρει την πληροφορία ακριβώς στη μορφή που είχε πριν 3

8 Συμπίεση δεδομένων - Εισαγωγή κωδικοποιηθεί. Κλασσικό μας παράδειγμα είναι ο γνωστός συμπιεστής WinZip. Όταν αποσυμπιέζουμε ένα συμπιεσμένο αρχείο zip τα αρχεία που περιέχει αναπαράγονται όπως ακριβώς ήταν στην αρχική τους μορφή. Δεν είναι αποδεκτή καμιά απώλεια ή αλλαγή ούτε σε ένα απλό bit. Έτσι οι αλγόριθμοι που εφαρμόζονται συμπιέζουν μεν την πληροφορία αλλά με τρόπο που να μπορεί αυτή να ανακτηθεί ακριβώς όπως ήταν. Στις εφαρμογές πολυμέσων τα δεδομένα πολυμέσων βρίσκονται σε ψηφιακή μορφή και τα αρχεία που δημιουργούν έχουν συνήθως μεγάλο όγκο. Αυτό δημιουργεί προβλήματα : Στην αποθήκευση Στη μεταφορά δεδομένων μέσα από δίκτυα Στη διαχείριση τους Για την αντιμετώπιση των παραπάνω προβλημάτων αναπτύχθηκαν αλγόριθμοι περιορισμού του μεγέθους των αρχείων αυτών. Στόχος της συμπίεσης μπορεί να είναι είτε ο περιορισμός του μεγέθους ενός αρχείου, είτε ο περιορισμός του ποσού της πληροφορίας που πρέπει να μεταδοθεί μέσα από ένα κανάλι. Η εικόνα, το βίντεο, και τα ακουστικά σήματα είναι υποκείμενες στη συμπίεση λόγω κυρίως των ακόλουθων παραγόντων: υπάρχει ιδιαίτερος στατιστικός πλεονασμός στο σήμα. 1. μέσα σε μια ενιαία εικόνα ή ένα ενιαίο τηλεοπτικό πλαίσιο, υπάρχει ο σημαντικός συσχετισμός μεταξύ των κοντινών δειγμάτων. Αυτός ο συσχετισμός αναφέρεται ως χωρικός συσχετισμός. 2. για τα δεδομένα που αποκτιούνται από τους πολλαπλάσιους αισθητήρες (όπως οι δορυφορικές εικόνες), υπάρχει ο σημαντικός συσχετισμός μεταξύ των δειγμάτων από αυτούς τους αισθητήρες. Αυτός ο συσχετισμός αναφέρεται ως φασματικός συσχετισμός. 3. για τα χρονικά δεδομένα (όπως το βίντεο), υπάρχει σημαντικός συσχετισμός μεταξύ των δειγμάτων στα διαφορετικά τμήματα του χρόνου. Αυτό αναφέρεται ως χρονικός συσχετισμός. υπάρχουν ιδιαίτερες πληροφορίες στο σήμα που είναι άσχετο από αντιληπτική άποψη. 1. κάποιο στοιχείο τείνει να έχει τα υψηλού επιπέδου χαρακτηριστικά γνωρίσματα που είναι περιττά με την παρέλευση του διαστήματος και του χρόνου δηλαδή το στοιχείο είναι fractal φύσης. Για μία δεδομένα εφαρμογή, τα σχέδια συμπίεσης μπορεί να 4

9 Συμπίεση δεδομένων - Εισαγωγή εκμεταλλευτoύν οποιονδήποτε ή όλους τους πιο πάνω παράγοντες για να επιτύχει το επιθυμητό ποσοστό δεδομένων συμπίεσης. Υπάρχουν πολλές εφαρμογές που ωφελούνται από την τεχνολογία συμπίεσης δεδομένων. Ο πίνακας 1.1 απαριθμεί ένα αντιπροσωπευτικό σύνολο τέτοιων εφαρμογών για την εικόνα, το βίντεο, και τα ακουστικά δεδομένα, καθώς επίσης και τα χαρακτηριστικά ποσοστά δεδομένων των αντίστοιχων συμπιεσμένων ρευμάτων κομματιών. Παρουσιάζονται επίσης τα χαρακτηριστικά ποσοστά δεδομένων για τα ασυμπίεστα ρεύματα bit. Εφαρμογή Δεδομένα Ποσοστό Χωρίς συμπίεση Με συμπίεση Φωνή 64 kbps 2-4 kbps 8 ksamples/s, 8 bits/sample Αργό βίντεο κινήσεων (10fps) 5.07 Mbps 8-16 kbps framesize 176x120, 8bits/pixel Ακουστική διάσκεψη 64 kbps kbps 8 ksamples/s, 8 bits/sample Τηλεοπτική διάσκεψη (15fps) Mbps kbps framesize 352x240, 8bits/pixel Ψηφιακός ήχος 1.5 Mbps Mbps 44.1 ksamples/s, 16 bits/sample Τηλεοπτική μεταφορά αρχείων (15fps) Mbps 384 kbps framesize 352x240, 8bits/pixel Ψηφιακό βίντεο επάνω CD-ROM Mbps Mbps (30fps) framesize 352x240, 8bits/pixel Βίντεο ραδιοφωνικής μετάδοσης (30fps) Mbps 3-8 Mbps framesize 720x480, 8bits/pixel HDTV (59.94 fps) framesize 1280x720, 8bits/pixel 1.33 Gbps 20 Mbps Πίνακας 1.1: Εφαρμογές για την εικόνα, το βίντεο, και την ακουστική συμπίεση Ακολουθεί μία γενική άποψη των συστημάτων συμπίεσης με το κωδικοποιητή (encoder) όπου δέχεται ως είσοδο το αντίστοιχο μέσο (εικόνα, βίντεο ή ήχο) και στη συνέχει υπάρχει η ανάλογη κωδικοποίηση στη πηγή και στο κανάλι μετάδοσης. Υπάρχει επίσης και ο αποκωδικοποιητής ο οποίος υλοποιεί την αντίστροφη του κωδικοποιητή διαδικασία. 5

10 Συμπίεση δεδομένων - Εισαγωγή Κωδικοποιητής (encoder) Ψηφιακή εικόνα, ήχος, βίντεο Κωδικοποιητής πηγής (Source encoder) Κωδικοποιητής καναλιού (Channel encoder) Αποκωδικοποιητής (decoder) Ψηφιακή εικόνα, ήχος, βίντεο Αποκωδικοποιητής πηγής (Source decoder) Αποκωδικοποιητής καναλιού (Channel decoder) Εικόνα 1.1. Κωδικοποιητής και αποκωδικοποιητής (γενική άποψη) Ο πυρήνας του κωδικοποιητή είναι ο κωδικοποιητής πηγής. Ο κωδικοποιητής πηγής εκτελεί τη διαδικασία συμπίεσης με τη μείωση του ποσοστού των δεδομένων εισόδου σε ένα επίπεδο που μπορεί να υποστηριχθεί από το μέσο αποθήκευσης ή μετάδοσης. Η παραγωγή ποσοστού δυαδικών ψηφίων του κωδικοποιητή μετριέται σε bits ανά δείγμα ή τα bits ανά δευτερόλεπτο. Για την εικόνα ή τα δεδομένα βίντεο, ένα εικονοκύτταρο είναι το βασικό στοιχείο κατά συνέπεια, τα κομμάτια ανά δείγμα αναφέρονται επίσης ως bit ανά εικονοκύτταρο ή bit ανά pel. Στη σημειογραφία χρησιμοποιείται επίσης ο παράγοντας συμπίεσης, c r, αντί του ποσοστού δυαδικών ψηφίων για να χαρακτηρίσει την ικανότητα του συστήματος συμπίεσης. Ένας διαισθητικός καθορισμός c r είναι έ ό έ ή ή c r (1.1) έ ό έ ή ή Αυτός ο καθορισμός είναι κάπως διφορούμενος και εξαρτάται από τον τύπο δεδομένων και τη συγκεκριμένη μέθοδο συμπίεσης που υιοθετείται. Για μια εικόνα, το μέγεθος θα μπορούσε να αναφερθεί στα bits που απαιτήθηκαν για να αντιπροσωπεύσουν την ολόκληρη εικόνα. Για το βίντεο, το μέγεθος θα μπορούσε να αναφερθεί στα κομμάτια που απαιτήθηκαν για να αντιπροσωπεύσουν ένα πλαίσιο του βίντεο. Πολλές μέθοδοι συμπίεσης για το βίντεο δεν επεξεργάζονται κάθε πλαίσιο του βίντεο, ως εκ τούτου, μια συχνότερα χρησιμοποιημένη έννοια για το συγκεκριμένο μέγεθος είναι τα bits που απαιτούνται για να αντιπροσωπεύσουν ένα δευτερόλεπτο του βίντεο. 6

11 Συμπίεση δεδομένων - Εισαγωγή Σε ένα πρακτικό σύστημα, ο κωδικοποιητής πηγής ακολουθείται συνήθως από ένα δεύτερο επίπεδο κωδικοποίησης: το κωδικοποιητή καναλιών (Εικόνα 1). Ο κωδικοποιητής καναλιών μεταφράζει το συμπιεσμένο ρεύμα bits σε ένα σήμα κατάλληλο είτε για την αποθήκευση είτε για τη μετάδοση. Στα περισσότερα συστήματα, η κωδικοποίηση πηγής και η κωδικοποίηση καναλιών είναι ευδιάκριτες διαδικασίες. Τα τελευταία χρόνια, οι εφαρμοζόμενες μέθοδοι που συνδύασαν την πηγή και η κωδικοποίηση καναλιών έχει αναπτυχθεί επίσης. Πρέπει να σημειωθεί ότι, προκειμένου να αναδημιουργηθούν η εικόνα, το βίντεο, ή το ακουστικό σήμα, κάποιος πρέπει να αντιστρέψει τις διαδικασίες της κωδικοποίησης καναλιών και της κωδικοποίησης πηγής. Αυτό εκτελείται συνήθως στον αποκωδικοποιητή. Από μια άποψη σχεδίασης συστημάτων, κάποιος μπορεί να επαναδιατυπώσει το πρόβλημα συμπίεσης ως πρόβλημα ελαχιστοποίησης του ποσοστού δυαδικών ψηφίων, όπου διάφοροι περιορισμοί να πρέπει να ικανοποιηθούν, συμπεριλαμβανομένων των εξής: Καθορισμένο επίπεδο ποιότητας σημάτων. Αυτός ο περιορισμός εφαρμόζεται συνήθως στον αποκωδικοποιητή. πολυπλοκότητα εφαρμογής. Αυτός ο περιορισμός εφαρμόζεται συχνά στον αποκωδικοποιητή, και σε μερικές περιπτώσεις και στον κωδικοποιητή και στον αποκωδικοποιητή. καθυστέρηση επικοινωνίας. Αυτός ο περιορισμός αναφέρεται στην τέλος στη καθυστέρηση, και μετριέται από την έναρξη της κωδικοποίησης ενός δείγματος στην πλήρη αποκωδικοποίηση εκείνου του δείγματος. Σημειώστε ότι, αυτοί οι περιορισμοί έχουν τη διαφορετική σημασία στις διαφορετικές εφαρμογές. Παραδείγματος χάριν, σε ένα διπλής κατεύθυνσης σύστημα συστήματος τηλεσυνεδριάσεων, η καθυστέρηση επικοινωνίας να είναι ο σημαντικότερος περιορισμός, ενώ, σε ένα σύστημα τηλεοπτικής μετάδοσης, η ποιότητα σημάτων και η πολυπλοκότητα αποκωδικοποιητών να είναι οι κύριοι περιορισμοί. 1.2 Συμπίεση με απώλειες έναντι συμπίεσης χωρίς απώλειες Χωρίς απώλειες συμπίεση Σε πολλές εφαρμογές, ο αποκωδικοποιητής πρέπει να αναδημιουργήσει χωρίς οποιαδήποτε απώλεια τα αρχικά δεδομένα. Για μια χωρίς απώλειες διαδικασία συμπίεσης, τα αναδημιουργημένα δεδομένα και τα αρχικά δεδομένα πρέπει να είναι ίδια στην τιμή κάθε δείγματος δεδομένων. Αυτό αναφέρεται επίσης ως αντιστρέψιμη διαδικασία. Στη χωρίς απώλειες συμπίεση, για μια συγκεκριμένη εφαρμογή, η επιλογή μιας μεθόδου συμπίεσης 7

12 Συμπίεση δεδομένων - Εισαγωγή περιλαμβάνει συμβιβασμούς μεταξύ των διαφόρων συστατικών που απεικονίζονται στην Εικόνα 1.2, δηλαδή αποδοτικότητα κωδικοποίησης, πολυπλοκότητα κωδικοποίησης, και καθυστέρηση κωδικοποίησης Αποδοτικότητα κωδικοποίησης - Αναλογία συμπίεσης; Καθυστέρηση κωδικοποίησης Πολυπλοκότητα κωδικοποιητών - Απαιτήσεις μνήμης; - Απαιτήσεις δύναμης; - Διαδικασίες ανά δευτερόλεπτο; Εικόνα 1.2. Συμβιβασμοί στην χωρίς απώλειες συμπίεση Αποδοτικότητα κωδικοποίησης: Αυτό μετριέται συνήθως στα bits ανά δείγμα ή τα bits ανά δευτερόλεπτο (bps bits per second) αποδοτικότητα κωδικοποίησης περιορίζεται συνήθως από το περιεχόμενο πληροφοριών ή την εντροπία της πηγής. διαισθητικά, η εντροπία μιας πηγής Χ παρέχει ένα μέτρο για το "τυχαίο" του Χ. Από μια άποψη θεωρίας συμπίεσης, οι πηγές με τη μεγάλη εντροπία είναι δυσκολότερο να συμπιεστούν (παραδείγματος χάριν, ο τυχαίος θόρυβος είναι πολύ δύσκολο να συμπιεστεί). Πολυπλοκότητα κωδικοποίησης: Η πολυπλοκότητα μιας διαδικασίας συμπίεσης είναι ανάλογη με την υπολογιστική προσπάθεια που απαιτείται για να εφαρμόσει τις λειτουργίες κωδικοποιητών και αποκωδικοποιητών. Η υπολογιστική προσπάθεια μετριέται συνήθως από την άποψη των απαιτήσεων μνήμης και του αριθμού αριθμητικών διαδικασιών. Η αρίθμηση διαδικασιών χαρακτηρίζεται από τα εκατομμύρια των διαδικασιών ανά δευτερόλεπτο που πραγματοποιούνται και αναφέρεται συχνά ως MOP. Εδώ, από τη λειτουργία, υπονοούμε μια βασική αριθμητική λειτουργία που υποστηρίζεται από την υπολογιστική μηχανή. Στη λογοτεχνία συμπίεσης, ο όρος MIPS (εκατομμύρια των οδηγιών ανά δευτερόλεπτο) χρησιμοποιείται μερικές φορές. Αυτό είναι συγκεκριμένο για την αρχιτεκτονική μιας υπολογιστικής μηχανής κατά συνέπεια, σε αυτό το κείμενο που αναφερόμαστε στην πολυπλοκότητα κωδικοποίησης από την άποψη των MOP. Σε μερικές εφαρμογές, όπως οι φορητές συσκευές, η πολυπλοκότητα κωδικοποίησης μπορεί να χαρακτηριστεί από τις απαιτήσεις δύναμης μιας εφαρμογής υλικού. 8

13 Συμπίεση δεδομένων - Εισαγωγή Καθυστέρηση κωδικοποίησης: Μια σύνθετη διαδικασία συμπίεσης οδηγεί συχνά στις αυξανόμενες καθυστερήσεις κωδικοποίησης στον κωδικοποιητή και τον αποκωδικοποιητή. Οι καθυστερήσεις κωδικοποίησης μπορούν να ελαχιστοποιηθούν με την αύξηση της ισχύος επεξεργασίας της υπολογιστικής μηχανής εντούτοις, αυτό μπορεί να είναι μη πρακτικό στα περιβάλλοντα όπου υπάρχει ένας περιορισμός ισχύος ή η ελλοχεύουσα υπολογιστική μηχανή δεν μπορεί να βελτιωθεί. Επιπλέον, σε πολλές εφαρμογές, οι καθυστερήσεις κωδικοποίησης πρέπει να περιοριστούν παραδείγματος χάριν, στις διαλογικές επικοινωνίες (interactive communications). Η ανάγκη να περιοριστεί η καθυστέρηση κωδικοποίησης αναγκάζει συχνά το σχεδιαστή συστημάτων συμπίεσης για να χρησιμοποιήσει έναν λιγότερο περίπλοκο αλγόριθμο για τις διαδικασίες συμπίεσης Συμπίεση με απώλειες Η πλειοψηφία των εφαρμογών στην επεξεργασία εικόνας ή δεδομένων βίντεο δεν απαιτεί ότι τα αναδημιουργημένα δεδομένα και τα αρχικά δεδομένα έχουν την ίδια τιμή. Κατά συνέπεια, κάποιο ποσό απώλειας επιτρέπεται στα αναδημιουργημένα δεδομένα. Μια διαδικασία συμπίεσης που οδηγεί σε μια ατελή αναδημιουργία αναφέρεται ως με απώλειες διαδικασία συμπίεσης. Αυτή η διαδικασία συμπίεσης είναι αμετάκλητη. Στην πράξη, οι περισσότερες αμετάκλητες διαδικασίες συμπίεσης υποβιβάζουν γρήγορα την ποιότητα σημάτων όταν εφαρμόζονται επανειλημμένα στα προηγουμένως αποσυμπιεσμένα δεδομένα. Η επιλογή μιας συγκεκριμένης με απώλειες μεθόδου συμπίεσης περιλαμβάνει συμβιβασμούς μεταξύ των συστατικών που παρουσιάζονται στην εικόνα 1.3. Λόγω του πρόσθετου βαθμού ελευθερίας, (δηλαδή, στην ποιότητα σημάτων) μια με απώλειες διαδικασία συμπίεσης μπορεί να παραγάγει τις υψηλότερες αναλογίες συμπίεσης από ένα χωρίς απώλειες σχέδιο συμπίεσης. Ποιότητα σημάτων: αυτός ο όρος χρησιμοποιείται συχνά για να χαρακτηρίσει το σήμα στην παραγωγή του αποκωδικοποιητή. Δεν υπάρχει κανένα παγκοσμίως αποδεκτό μέτρο για την ποιότητα σημάτων. Ένα μέτρο που αναφέρεται συχνά είναι η ο λόγος σήματος προς θόρυβο (Signal To Noise Ratio) SNR 1, η οποία μπορεί να εκφραστεί ως: SNR 10 log 10 έ ή ό ή έ ή ό ή 1 SNR: Signal To Noise Ratio, δηλ, λόγος της ενέργειας του σήματος προς το θόρυβο 9

14 Συμπίεση δεδομένων - Εισαγωγή Η ενέργεια των σημάτων θορύβου ορίζεται ως η ενέργεια που μετριέται για ένα υποθετικό σήμα και είναι η διαφορά μεταξύ του σήματος εισαγωγής κωδικοποιητών και του σήματος παραγωγής αποκωδικοποιητών (όπως καθορίζεται εδώ δίνεται σε decibels-db). Στην περίπτωση των εικόνων ή του βίντεο, αντί του SNR, χρησιμοποιείται και το μέτρο του μέγιστου λόγου σήματος προς θόρυβο PSNR ). Οι υπολογισμοί είναι ουσιαστικά οι ίδιοι όπως στην περίπτωση SNR, εντούτοις, στον αριθμητή, αντί της χρησιμοποίησης του σήματος εισαγωγής κωδικοποιητών κάποιος χρησιμοποιεί ένα υποθετικό σήμα με μια δύναμη σημάτων 255 (η μέγιστη δεκαδική τιμή ενός οκτάμπιτου αριθμού, όπως σε ένα pixel). Υψηλές SNR ή PSNR τιμές όχι πάντα αντιστοιχούν στα σήματα με αντίληψη (perceptually) υψηλής ποιότητας. Ένα άλλο μέτρο της ποιότητας σημάτων είναι το μέσο αποτέλεσμα άποψης, όπου η απόδοση μιας διαδικασίας συμπίεσης χαρακτηρίζεται από την υποκειμενική ποιότητα του αποκωδικοποιημένου σήματος. Παραδείγματος χάριν, μια κλίμακα σημείου πέντε όπως η πολύ ενόχληση, η ενόχληση, η ελαφρώς ενόχληση, αντιληπτή αλλά η μη ενόχληση, και μη-αντιληπτό (imperceptible) να χρησιμοποιηθεί για να χαρακτηρίσει τα προβλήματα στην παραγωγή αποκωδικοποιητών. Είτε στα χωρίς απώλειες είτε με απώλειες σχέδια συμπίεσης, η ποιότητα των δεδομένων εισόδου έχει επιπτώσεις στην αναλογία συμπίεσης. Παραδείγματος χάριν, ο θόρυβος κατά την απόκτηση του σήματος, τα λάθη συγχρονισμού δειγματοληψίας δεδομένων, και ακόμη και η αναλογική σε ψηφιακό διαδικασία μετατροπής έχουν επιπτώσεις στην ποιότητα σημάτων και μειώνουν το χωρικό και χρονικό συσχετισμό. Μερικά σχέδια συμπίεσης είναι αρκετά ευαίσθητα στην απώλεια και μπορούν να παραγάγουν τη σημαντικά χειρότερη συμπίεση παρουσία του θορύβου. Ποιότητα σημάτων - Πιθανότητα λάθους bit; - SNR; Αποδοτικότητα κωδικοποίησης Καθυστέρηση κωδικοποίησης - Αναλογία συμπίεσης; Πολυπλοκότητα κωδικοποιητών - Απαιτήσεις μνήμης; - Απαιτήσεις δύναμης; - Διαδικασίες ανά δευτερόλεπτο Εικόνα 1.3. Συμβιβασμοί στη συμπίεση με απώλειες 10

15 Συμπίεση δεδομένων - Εισαγωγή 1.3 Επιλογή μεθόδου συμπίεσης Στη συγκεκριμένη ενότητα έχουμε εισαγάγει μερικές θεμελιώδεις έννοιες σχετικές με την εικόνα, το βίντεο, και την ακουστική συμπίεση. Κατά την επιλογή μιας συγκεκριμένης μεθόδου συμπίεσης, κάποιος θα πρέπει να εξετάσει τα ακόλουθα ζητήματα: Χωρίς απώλειες ή με απώλειες. Αυτό υπαγορεύεται συνήθως από τις απαιτήσεις αποδοτικότητας κωδικοποίησης. Αποδοτικότητα κωδικοποίησης. Ακόμη και σε μια με απώλειες διαδικασία συμπίεσης, η επιθυμητή αποδοτικότητα κωδικοποίησης μπορεί να μην είναι επιτεύξιμη. Αυτό είναι ειδικά η περίπτωση όταν υπάρχουν συγκεκριμένοι περιορισμοί στην ποιότητα σημάτων παραγωγής. Μεταβλητότητα στην αποδοτικότητα κωδικοποίησης. Σε μερικές εφαρμογές, οι μεγάλες παραλλαγές στην αποδοτικότητα κωδικοποίησης μεταξύ των διαφορετικών συνόλων δεδομένων μπορούν να μην είναι αποδεκτές. Ανθεκτικότητα στα λάθη μετάδοσης. Μερικές μέθοδοι συμπίεσης είναι πιο ανθεκτικές στα λάθη μετάδοσης από άλλες. Εάν οι αναμεταδόσεις δεν επιτρέπονται, κατόπιν αυτή η απαίτηση μπορεί να προσκρούσει στο γενικό κωδικοποιητή - σχέδιο αποκωδικοποιητών. Ανταλλαγές πολυπλοκότητας. Στις περισσότερες εφαρμογές, είναι σημαντικό να κρατηθεί η γενική πολυπλοκότητα κωδικοποιητής-αποκωδικοποιητών χαμηλή. Εντούτοις, ορισμένες εφαρμογές μπορούν να απαιτήσουν μόνο μια χαμηλή πολυπλοκότητα αποκωδικοποίησης. Φύση των υποβαθμίσεων στην παραγωγή αποκωδικοποιητών. Οι με απώλειες μέθοδοι συμπίεσης εισάγουν τα χειροποίητα αντικείμενα στο αποκωδικοποιημένο σήμα. Η φύση των χειροποίητων αντικειμένων εξαρτάται από τη μέθοδο συμπίεσης που υιοθετείται. Ο βαθμός στον οποίο αυτά τα χειροποίητα αντικείμενα κρίνονται επίσης ποικίλλει από την εφαρμογή στην εφαρμογή. Στα συστήματα επικοινωνιών, υπάρχει συχνά μια αλληλεπίδραση μεταξύ των λαθών μετάδοσης και των χειροποίητων αντικειμένων κωδικοποίησης που εισάγονται από τον κωδικοποιητή. Κατά συνέπεια, είναι σημαντικό να εξεταστούν όλοι οι τύποι λαθών σε ένα σχέδιο συστημάτων. Αντιπροσώπευση δεδομένων. Σε πολλές εφαρμογές, υπάρχει μια ανάγκη να υποστηριχθούν δύο φάσεις αποκωδικοποίησης. Στην πρώτη φάση, η αποκωδικοποίηση εκτελείται για να παραγάγει ένα καταληπτό σήμα αυτό συμβαίνει στο ξεφύλλισμα δεδομένων. Στη δεύτερη φάση, η αποκωδικοποίηση εκτελείται για να παραγάγει ένα υψηλότερο ποιοτικό σήμα. Κάποιος μπορεί να γενικεύσει αυτήν την έννοια για να προτείνει ότι μερικές εφαρμογές απαιτούν μια ιεραρχική αντιπροσώπευση των δεδομένων. Στο πλαίσιο 11

16 Συμπίεση δεδομένων - Εισαγωγή συμπίεσης, αναφερόμαστε σε τέτοια σχέδια συμπίεσης όπως τις εξελικτικές μεθόδους συμπίεσης. Η έννοια της εξελιξιμότητας έχει υιοθετηθεί στα πρότυπα συμπίεσης. Πολλαπλάσια χρήση της διαδοχικής κωδικοποίησης-αποκωδικοποίησης. Σε πολλές εφαρμογές, όπως η τηλεοπτική έκδοση, υπάρχει μια ανάγκη να εκτελεσθεί το πολλαπλάσιο κωδικοποιώ-αποκωδικοποιεί τις διαδικασίες που χρησιμοποιούν τα αποτελέσματα από έναν προηγούμενο κωδικοποιώ-αποκωδικοποιεί τη λειτουργία. Αυτό δεν είναι ένα ζήτημα για τη χωρίς απώλειες συμπίεση εντούτοις, για τα με απώλειες σχέδια, η ανθεκτικότητα στους πολλαπλάσιους κωδικοποιώ-αποκωδικοποιώντας κύκλους είναι ουσιαστική. Αλληλεπίδραση με άλλες μορφές δεδομένων, όπως ακουστικός και τηλεοπτικός. Σε ένα σύστημα όπου διάφορες μορφές δεδομένων πρέπει να υποστηριχθούν, οι μέθοδοι συμπίεσης για κάθε μορφή πρέπει να έχουν μερικά κοινά στοιχεία. Παραδείγματος χάριν, σε ένα διαλογικό σύστημα βιντεοφώνων, η ακουστική μέθοδος συμπίεσης πρέπει να έχει μια δομή πλαισίων που είναι σύμφωνη με την δομή πλαισίων σημάτων βίντεο. Διαφορετικά, θα υπάρξουν περιττές απαιτήσεις στους απομονωτές στον αποκωδικοποιητή και μια μειωμένη ανοχή στα λάθη συγχρονισμού. Αλληλεπίδραση με άλλα συστήματα. Σε ένα mass-market περιβάλλον, θα υπάρξουν πολλαπλάσιες μορφές δεδομένων και πολλαπλάσια συστήματα συμπίεσης. Σε ένα τέτοιο περιβάλλον, που διακωδικοποιεί από μια συμπίεση η μέθοδος σε άλλη μπορεί να απαιτηθεί. Παραδείγματος χάριν, η τηλεοπτική έκδοση να γίνει σε μια πλαίσιο από το πλαίσιο βάση ως εκ τούτου, μια μέθοδος συμπίεσης που δεν εκμεταλλεύεται τους χρονικούς πλεονασμούς να χρησιμοποιηθεί εδώ. Μετά από την τηλεοπτική έκδοση, να υπάρξει μια ανάγκη να μεταδοθεί ασύρματα αυτό το βίντεο. Σε αυτήν την περίπτωση, οι χρονικοί πλεονασμοί μπορούν να χρησιμοποιηθούν για να επιτύχουν μια υψηλότερη αποδοτικότητα κωδικοποίησης. Σε ένα τέτοιο σενάριο, είναι σημαντικό να επιλεχτούν οι μέθοδοι συμπίεσης που υποστηρίζουν τη διακωδικοποίηση από ένα συμπιεσμένο σχήμα ρευμάτων σε άλλο. Η αλληλεπίδραση είναι σημαντική σε πολλά περιβάλλοντα επικοινωνιών επίσης Διάρθρωση πτυχιακής εργασίας Στα επόμενα κεφάλαια θα αναπτύξουμε τις βασικές έννοιες στις οποίες βασίζονται τα διάφορα πρότυπα συμπίεσης που έχουν προταθεί και χρησιμοποιηθεί στη πράξη τα τελευταία χρόνια. Πιο συγκεκριμένα, θα περιγράψουμε τη συμπίεση χωρίς απώλειες αναφέροντας στοιχεία που σχετίζονται με τους μετασχηματισμούς, τη κωδικοποίηση Huffman και την αριθμητική κωδικοποίηση. Στη συνέχεια θα περιγράψουμε το πρότυπο συμπίεσης ακίνητης 12

17 Συμπίεση δεδομένων - Εισαγωγή εικόνας JPEG χωρίς απώλειες (lossless) καθώς και το ίδιο πρότυπο με απώλειες (lossy). Ακολουθεί η έννοια των κυματιδίων (wavelets) και η εφαρμογή τους στο πρόβλημα της συμπίεσης, ενώ τέλος περιγράφουμε βασικές αρχές που σχετίζονται με τα πρότυπα συμπίεσης που αφορούν τα σήματα βίντεο καθώς και τα συνεπαγόμενα πρότυπα όπως τα MPEG 1, 2 κ.τ.λ. Βιβλιογραφία 1. Abdul H. Sadka, Compressed Video Communications, John Wiley and Sons, K. Jain, Fundamentals of Digital Image Processing. Englewood Cliffs, NJ: Prentice Hall, R. C. Gonzalez and R. Woods, Digital Image Processing. Reading, MA: Addison-Wesley, Bernd Jahne, Digital Image Processing, Springer, Tinku Acharya, Ajoy K. Ray, Image Processing, Principles and Applications, John Wiley & Sons, Al Bovic, Handbook of Image and Video Processing, Academic Press, Bernd Jahne, Horst Haubecker, Computer Vision and Applications, A Guide for Students and Practitioners, Academic Press, M. Sonka, V. Hlavac, R. Boyle, Image Processing, Analysis and Machine Vision, J. W. Woods, Subband lmage Coding, Kluwer, Norwell, MA, M. Pagani, Encyclopedia of Multimedia Technology and Networking, Idea Group Reference, I. N. Bankman, Handbook of Medical Image Processing and Analysis, Academic Press, T. Bose, Digital Signal and Image Processing, John Willey and sons,

18 Συμπίεση χωρίς απώλειες ΚΕΦΑΛΑΙΟ 2 Συμπίεση χωρίς απώλειες 2.1 Εισαγωγή Ο στόχος της χωρίς απώλειες (lossless) συμπίεσης εικόνας είναι να αντιπροσωπευθεί ένα σήμα εικόνας με το μικρότερο πιθανό αριθμό bits χωρίς απώλεια οποιωνδήποτε πληροφοριών, επιταχύνοντας τη μετάδοση και ελαχιστοποιώντας τις απαιτήσεις αποθήκευσης. Ο αριθμός bit που αντιπροσωπεύουν το σήμα εκφράζεται χαρακτηριστικά ως μέσος αριθμός bit ανά δείγμα για τις εικόνες, και μέσος αριθμός bit ανά δευτερόλεπτο για το βίντεο. Ο στόχος της συμπίεσης με απώλειες (lossy compression) είναι να επιτευχθεί η καλύτερη δυνατή συμπίεση δεδομένης μιας διαθέσιμης ποιότητας επικοινωνίας ή αποθήκευσης, ή να ελαχιστοποιηθεί ο αριθμός bits που αντιπροσωπεύουν το σήμα εικόνας υποκείμενο σε κάποια επιτρεπόμενη απώλεια πληροφοριών. Κατ' αυτό τον τρόπο, μια πολύ μεγαλύτερη μείωση του ποσοστού bits μπορεί να επιτευχθεί σε σύγκριση με τη χωρίς απώλειες συμπίεση, η οποία είναι απαραίτητη για τη διευκόλυνση πολλών σε πραγματικό χρόνο εφαρμογών που περιλαμβάνουν το χειρισμό και τη μετάδοση οπτικοακουστικών πληροφοριών. Η λειτουργία της συμπίεσης αναφέρεται συχνά ως κωδικοποίηση (coding). Οι τεχνικές κωδικοποίησης είναι κρίσιμες για την αποτελεσματική μετάδοση ή την αποθήκευση των οπτικών πληροφοριών που στη πραγματικότητα είναι εφαρμογές με μεγάλες απαιτήσεις. Στην πραγματικότητα, μια ενιαία ασυμπίεστη εικόνα χρώματος ή ένα τηλεοπτικό καρέ 500x500 pixels απαιτεί 100 δευτερόλεπτα για τη μετάδοση σε μία ISDN σύνδεση (ψηφιακά δίκτυα ενοποιημένων υπηρεσιών) που έχει μια ικανότητα bits/s (64Kbps). Η καθυστέρηση που προκύπτει είναι ανυπόφορα μεγάλη, θεωρώντας ότι μια καθυστέρηση τόσο μικρή όπως 1-2 δευτερόλεπτα απαιτείται για να διευθύνει ένα διαλογικό "slide slow", και μια πολύ μικρότερη καθυστέρηση (της τάξης του 0,1 δευτερολέπτου) απαιτείται για την τηλεοπτική μετάδοση ή την αναπαραγωγή ήχου. Αν και μια συσκευή CD-ROM έχει μια ικανότητα αποθήκευσης λίγων gigabits, η καθαρή ρυθμοαπόδοσή της είναι μόνο ~1.5 Mbps. Κατά συνέπεια, η συμπίεση είναι ουσιαστική για λόγους αποθήκευσης καθώς και για τη μετάδοση ψηφιακών οπτικοακουστικών πληροφοριών σε πραγματικό χρόνο, όπου ο μεγάλος όγκος δεδομένων πρέπει να αντιμετωπιστεί από τις συσκευές που έχουν μια περιορισμένη ικανότητα εύρους ζώνης και αποθήκευσης. 14

19 Συμπίεση χωρίς απώλειες Η συμπίεση χωρίς απώλειες είναι δυνατή επειδή, γενικά, υπάρχει παρών σημαντικός πλεονασμός στα σήματα εικόνας. Αυτός ο πλεονασμός είναι ανάλογος προς το ποσό συσχετισμού μεταξύ των δειγμάτων στοιχείων εικόνας. Παραδείγματος χάριν, σε μια φυσική ακίνητη εικόνα, υπάρχει συνήθως ένας υψηλός βαθμός χωρικού συσχετισμού μεταξύ των γειτονικών δειγμάτων εικόνας. Επίσης, για το βίντεο, υπάρχει πρόσθετος χρονικός συσχετισμός μεταξύ των δειγμάτων στα διαδοχικά τηλεοπτικά πλαίσια. Στις εικόνες χρώματος και τις πολυφασματικές εικόνες υπάρχει συσχετισμός, γνωστός ως φασματικός συσχετισμός, μεταξύ των δειγμάτων εικόνας στα διαφορετικά φασματικά συστατικά. Στη χωρίς απώλειες κωδικοποίηση (lossless coding), τα αποκωδικοποιημένα συστατικά της εικόνας (pixels) πρέπει να είναι ίδια και ποσοτικά (αριθμητικά) και ποιοτικά (οπτικά) με την αρχική κωδικοποιημένη εικόνα. Αν και αυτή η απαίτηση συντηρεί επακριβώς την ακρίβεια της αντιπροσώπευσης, συχνά περιορίζει σοβαρά το ποσοστό συμπίεσης που μπορεί να επιτευχθεί σε έναν λόγο συμπίεσης (compression factor) 2 έως 3. Προκειμένου να επιτευχθούν υψηλότεροι λόγοι συμπίεσης, οι χωρίς απώλειες μέθοδοι κωδικοποίησης προσπαθούν να αναιρέσουν τις περιττές καθώς επίσης και τις άσχετες πληροφορίες που υπάρχουν στο προς εξέταση σήμα. Αυτές οι μέθοδοι απαιτούν ότι οι κωδικοποιημένες και αποκωδικοποιημένες εικόνες είναι μόνο οπτικά, και όχι απαραιτήτως αριθμητικά, ίδιες. Έτσι, σε αυτήν την περίπτωση, κάποια απώλεια πληροφοριών επιτρέπεται εφόσον η ανακτημένη εικόνα αντιληπτικά είναι ίδια με την αρχική εικόνα. Παρότι χρησιμοποιώντας τη συμπίεση με απώλειες μπορούμε να επιτύχουμε υψηλότερη μείωση του ρυθμού bits, υπάρχουν διάφορες εφαρμογές που απαιτούν τη χωρίς απώλειες κωδικοποίηση, όπως π.χ. η συμπίεση των ψηφιακών ιατρικών εικόνων ή η μετάδοση αντιγράφων διτονικών εικόνων. Αυτές οι εφαρμογές προκάλεσαν την ανάπτυξη διάφορων προτύπων για τη χωρίς απώλειες συμπίεση, συμπεριλαμβανομένων των χωρίς απώλειες προτύπων JPEG, πρότυπα συμπίεσης αντιγράφων και τα πρότυπα συμπίεσης JBIG. Επιπλέον, τα σχέδια κωδικοποίησης με απώλειες χρησιμοποιούν τα χωρίς απώλειες τμήματα κωδικοποίησης για να ελαχιστοποιήσουν τον πλεονασμό στο σήμα που συμπιέζεται. Στο συγκεκριμένο κεφάλαιο παρουσιάζονται βασικά στοιχεία της κωδικοποίησης χωρίς απώλειες και εν συνεχεία παρουσιάζονται κλασικές καθώς και πιο νέες μέθοδοι συμπίεσης χωρίς απώλειες. 15

20 Συμπίεση χωρίς απώλειες 2.2 Βασικά της κωδικοποίησης εικόνας χωρίς απώλειες Το σχεδιάγραμμα ενός χωρίς απώλειες συστήματος κωδικοποίησης παρουσιάζεται στην εικόνα 1. Ο κωδικοποιητής, εικόνα 2. 1 (α), παίρνει ως είσοδο μια εικόνα και παράγει ως αποτέλεσμα ένα συμπιεσμένο ρεύμα bits. Ο αποκωδικοποιητής στην Εικόνα 2.1 (β), παίρνει ως εισαγωγή το συμπιεσμένο ρεύμα bits και ανακτεί την αρχική ασυμπίεστη εικόνα. Γενικά, ο κωδικοποιητής και ο αποκωδικοποιητής μπορούν να ειδωθούν ως να αποτελούνται από τρία κύρια στάδια. Σε αυτό το τμήμα, μόνο τα κύρια δεδομένα του κωδικοποιητή θα συζητηθούν δεδομένου ότι ο αποκωδικοποιητής εκτελεί τις αντίστροφες διαδικασίες του κωδικοποιητή. Όπως παρουσιάζεται στην εικόνα 2.1 (α), η λειτουργία ενός χωρίς απώλειες κωδικοποιητή εικόνας μπορεί να ομαδοποιηθεί σε τρία στάδια: 1. μετασχηματισμός (transformation), 2. αντιστοίχιση δεδομένων σε σύμβολα (data-to-symbol mapping) και 3. χωρίς απώλειες κωδικοποίηση συμβόλων Εικόνα Γενικό σχήμα κωδικοποίησης χωρίς απώλειες α) κωδικοποιητής, β) αποκωδικοποιητής Μετασχηματισμός Αυτό το στάδιο εφαρμόζει έναν αντιστρέψιμο (ένα προς ένα) μετασχηματισμό στα δεδομένα της εικόνας εισόδου. Ο σκοπός αυτού του σταδίου είναι να μετατραπούν τα στοιχεία της εικόνας εισόδου f (n) σε μια μορφή f ˆ ( n ) που μπορεί να συμπιεστεί αποτελεσματικότερα. Για αυτόν το λόγο, ο επιλεγμένος μετασχηματισμός μπορεί να βοηθήσει στη μείωση του συσχετισμού στοιχείων (αλληλεξάρτηση, πλεονασμός), να αλλάξει τη στατιστική κατανομή των στοιχείων, ή/και να «πακετάρει» ένα μεγάλο όγκο πληροφοριών σε λίγα δείγματα δεδομένων ή περιοχές υποζωνών (subband regions). 16

21 Συμπίεση χωρίς απώλειες Οι τυπικοί μετασχηματισμοί περιλαμβάνουν τη διαφορική ή προβλεπτική αντιστοίχιση, τους unitary μετασχηματισμούς (όπως ο διακριτός Μετασχηματισμός Συνημιτόνου DCT), αποσυνθέσεις υποζωνών όπως οι μετασχηματισμοί κυματιδίων (wavelet transforms), και μετατροπές στο χώρο των χρωμάτων όπως η μετατροπή από την ιδιαίτερα συσχετισμένη RGB αντιπροσώπευση στη λιγότερο συσχετισμένη αντιπροσώπευση φωτεινότητα-χρωματισμός (luminance-chrominance). Ένας συνδυασμός αυτών των μετατροπών μπορεί να χρησιμοποιηθεί σε αυτή τη φάση. Για παράδειγμα, μια RGB έγχρωμη εικόνα μπορεί να μετασχηματιστεί στην αναπαράσταση φωτεινότητα-χρωματισμός, ακολουθούμενη από αποσύνθεση με DCT ή Wavelet Μετασχηματισμό που ακολουθείται από την προβλεπτική-διαφορική αντιστοίχιση. Σε μερικές εφαρμογές (π.χ., χαμηλής ενέργειας), μπορεί να είναι επιθυμητό να λειτουργήσουμε απευθείας στα αρχικά δεδομένα χωρίς να προκαλείται το συμπληρωματικό κόστος της εφαρμογής ενός μετασχηματισμού. Σε αυτήν την περίπτωση, ο μετασχηματισμός θα μπορούσε να τεθεί ως αντιστοίχιση ταυτότητα (identity mapping) Αντιστοίχιση δεδομένων-σε-σύμβολα (data-to-symbol mapping) Αυτό το στάδιο μετατρέπει τα δεδομένα εικόνας f ( n) σε οντότητες αποκαλούμενες σύμβολα (symbols) που μπορούν να κωδικοποιηθούν με αποδοτικό τρόπο από το τελικό στάδιο όπως αναφέρθηκε προηγουμένως. Η μετατροπή στα σύμβολα μπορεί να γίνει π.χ. μέσω κάποιου διαχωρισμού ή της κωδικοποίησης κωδικοποίηση μεταβλητού μήκους (runlength coding-rlc). Τα δεδομένα της εικόνας μπορεί να χωριστούν σε ομάδες (μπλοκς), ομαδοποιώντας τα γειτονικά δείγματα δεδομένων. Σε αυτήν την περίπτωση, κάθε μπλοκ δεδομένων είναι ένα σύμβολο. Η ομαδοποίηση μαζί διάφορων μπλοκ δεδομένων επιτρέπει την εκμετάλλευση οποιουδήποτε συσχετισμού που να είναι παρών μεταξύ των στοιχείων εικόνας, και μπορεί βέβαια να οδηγήσει σε υψηλότερο ρυθμό συμπίεσης εις βάρος της αύξησης της πολυπλοκότητας κωδικοποίησης. Από την άλλη, κάθε χωριστή μονάδα δεδομένων μπορεί να ληφθεί για να είναι ένα σύμβολο χωρίς περαιτέρω ομαδοποίηση ή χωρισμό. Η βασική ιδέα πίσω από τη κωδικοποίηση μεταβλητού μήκους (RLC) είναι να αντιστοιχηθεί μια ακολουθία αριθμών σε μια ακολουθία από ζεύγη συμβόλων (μήκος-run, τιμή-value), όπου η value είναι η τιμή ενός δείγματος δεδομένων στην ακολουθία δεδομένων εισόδου και run ή run length είναι το πλήθος ότι το δείγμα δεδομένων επαναλαμβάνεται συνεχώς. Σε αυτήν την περίπτωση, κάθε ζευγάρι (run, value) είναι ένα σύμβολο. Ένα 17

22 Συμπίεση χωρίς απώλειες παράδειγμα που επεξηγεί την RLC κωδικοποίηση για μια δυαδική ακολουθία παρουσιάζεται στην εικόνα 2.2. Διαφορετικές εφαρμογές μπορεί να χρησιμοποιήσουν ένα ελαφρώς διαφορετικό σχήμα. Για παράδειγμα, εάν η ακολουθία δεδομένων εισόδου έχει μεγάλα μήκη μηδενικών, μερικοί κωδικοποιητές όπως τα πρότυπα JPEG χρησιμοποιούν κάποια τιμή για να κωδικοποιήσουν μόνο την τιμή των μη-μηδενικών δεδομένων και τη run για να κωδικοποιήσουν τον αριθμό μηδενικών που προηγούνται κάθε μη-μηδενικού δείγματος δεδομένων. Εικόνα 2.2. Επίδειξη της κωδικοποίησης μεταβλητού μήκους για μία δυαδική ακολουθία εισόδου Η κατάλληλη αντιστοίχιση των δεδομένων εισόδου στα σύμβολα είναι πολύ σημαντική για τη βελτιστοποίηση της κωδικοποίησης. Παραδείγματος χάριν, ομαδοποιώντας τα δεδομένα σε μικρά σύνολα, όπου κάθε σύνολο κωδικοποιείται χωριστά ως σύμβολο, επιτρέπουν σε κάθε σχέδιο κωδικοποίησης να προσαρμοστεί στα μεταβαλλόμενα τοπικά χαρακτηριστικά των (μετασχηματισμένων) στοιχείων της εικόνας. Η κατάλληλη αντιστοίχιση στοιχείο-σε-σύμβολο εξαρτάται από την εξεταζόμενη εφαρμογή και τους περιορισμούς στην πολυπλοκότητα υλικού/λογισμικού Χωρίς απώλειες κωδικοποίηση συμβόλων Αυτό το στάδιο παράγει ένα δυαδικό ρεύμα από bits αναθέτοντας δυαδικές κωδικολέξεις ( κωδικολέξη codeword ) σε σύμβολα εισόδου. Η χωρίς απώλειες κωδικοποίηση συμβόλων, αναφέρεται συνήθως ως αθόρυβη κωδικοποίηση ή απλά χωρίς απώλειες κωδικοποίηση, δεδομένου ότι αυτό το στάδιο είναι όπου εκτελείται η πραγματική χωρίς απώλειες κωδικοποίηση στο τελικό συμπιεσμένο ρεύμα δεδομένων. Τα πρώτα δύο στάδια μπορούν να θεωρηθούν ως στάδια προεπεξεργασίας για την αντιστοίχιση των στοιχείων σε μια μορφή που μπορεί να κωδικοποιηθεί αποτελεσματικότερα από το χωρίς απώλειες στάδιο κωδικοποίησης. Η χωρίς απώλειες συμπίεση επιτυγχάνεται συνήθως με τη χρησιμοποίηση των κωδικολέξεων μεταβλητού-μήκους, όπου οι μικρότερες σε μήκος κωδικολέξεις ανατίθενται στα σύμβολα που εμφανίζονται συχνότερα. Αυτή η ανάθεση μεταβλητού-μήκους κωδικολέξης είναι γνωστή ως κωδικοποίηση μεταβλητού-μήκους (Variable Length Coding - VLC) και επίσης ως κωδικοποίηση εντροπίας (entropy coding). Οι κωδικοποιητές εντροπίας, 18

23 Συμπίεση χωρίς απώλειες όπως o Huffman και οι αριθμητικοί κωδικοποιητές, προσπαθούν να ελαχιστοποιήσουν το μέσο ποσοστό bit rate (μέσος αριθμός bits ανά σύμβολο) που απαιτείται για να αντιπροσωπεύσει μια ακολουθία συμβόλων, βασισμένη στην πιθανότητα εμφάνισης του συμβόλου. Ένας εναλλακτικός τρόπος να επιτευχθεί η συμπίεση είναι να κωδικοποιηθούν οι ακολουθίες συμβόλων μεταβλητού-μήκους που χρησιμοποιούν τις καθορισμένου μήκους δυαδικές κωδικολέξεις. Αυτή είναι η βασική στρατηγική πίσω από τους κώδικες λεξικών (Lempel- Ziv), οι οποίοι περιγράφονται στα επόμενα. Ο χωρίς απώλειες κώδικας που παράγεται πρέπει να είναι μοναδικά αποκωδικοποιήσιμος π.χ, το ρεύμα δεδομένων να μπορεί να αποκωδικοποιηθεί χωρίς ασάφεια έχοντας ως αποτέλεσμα μόνο μια μοναδική ακολουθία συμβόλων (αρχικό). Για VLC, η μοναδικότητα στην αποκωδικοποίηση επιτυγχάνεται με την επιβολή ενός όρου προθέματος που δηλώνει ότι καμία κωδικολέξη δεν μπορεί να είναι ένα πρόθεμα μίας άλλης κωδικολέξης. Οι κώδικες που ικανοποιούν τον όρο προθέματος ονομάζονται κώδικες προθέματος (prefix codes) ή στιγμιαία αποκωδικοποιήσιμοι κώδικες, και περιλαμβάνουν τη κωδικοποίηση Huffman και τους αριθμητικούς κώδικες. Οι δυαδικοί κώδικες προθέματος μπορούν να αντιπροσωπευθούν ως δυαδικό δέντρο, και καλούνται επίσης κώδικες δομημένοι σε δέντρο (tree-structured codes). Για τους κώδικες λεξικών, η μοναδικότητα στην αποκωδικοποίηση μπορεί να επιτευχθεί εύκολα δεδομένου ότι οι παραγόμενες κωδικολέξεις είναι σταθερού μήκους. H επιλογή του ποια μέθοδο κωδικοποίησης να χρησιμοποιήσουμε εξαρτάται από την εφαρμογή και περιλαμβάνει συνήθως ένα είδος συμβιβασμού μεταξύ διάφορων παραγόντων, συμπεριλαμβανομένου του υλικού ή του λογισμικού εφαρμογής, της επιτρεπόμενης καθυστέρησης κωδικοποίησης, και του απαραίτητου επιπέδου συμπίεσης. Μερικοί από τους παράγοντες που πρέπει να εξεταστούν κατά την επιλογή ή τη σχεδίαση ενός χωρίς απώλειες σχεδίου συμπίεσης παρατίθενται ως εξής. 1. Αποδοτικότητα συμπίεσης (compression efficiency): Η αποδοτικότητα συμπίεσης δίνεται συνήθως υπό μορφή λόγου συμπίεσης, C R : C R ό έ bits ή ό ό ό έ bits έ ύ έ ό έ bits ό ή ό έ bits ό ή (2.1) 19

24 Συμπίεση χωρίς απώλειες η οποία συγκρίνει το μέγεθος των αρχικών δεδομένων εικόνας εισόδου με το μέγεθος του παραγόμενου συμπιεσμένου ρεύματος δεδομένων. Η αποδοτικότητα συμπίεσης επίσης συνήθως εκφράζεται ως μέσο ποσοστό δυαδικών ψηφίων (average bit rate), B, σε bits ανά pixel, ή bpp: ό έ bits έ ύ έ B ό ό pixels ή ό ό ό έ bits ό ή ό έ pixels ό ή (2.2) Όπως συζητείται στα επόμενα, για τη χωρίς απώλειες κωδικοποίηση, η επιτεύξιμη αποδοτικότητα συμπίεσης έχει ως όριο την εντροπία του πεπερασμένου συνόλου συμβόλων που παράγονται ως παραγωγή της φάσης 2, υποθέτοντας αυτά τα σύμβολα κωδικοποιούνται χωριστά το κάθε ένα, σε μια βάση ένα-προς-ένα, από το στάδιο Καθυστέρηση κωδικοποίησης (Coding delay): Η καθυστέρηση κωδικοποίησης μπορεί να οριστεί ως ο ελάχιστος χρόνος που απαιτείται για να κωδικοποιήσει και να αποκωδικοποιήσει ένα δείγμα δεδομένων εισόδου. Η καθυστέρηση κωδικοποίησης αυξάνεται με το συνολικό αριθμό απαραίτητων αριθμητικών διαδικασιών. Επίσης συνήθως αυξάνεται με μια αύξηση στις απαιτήσεις μνήμης, δεδομένου ότι η χρήση μνήμης οδηγεί συνήθως στις καθυστερήσεις επικοινωνίας. Η ελαχιστοποίηση της καθυστέρησης κωδικοποίησης είναι ιδιαίτερα σημαντική για τις εφαρμογές που πραγματοποιούνται σε πραγματικό χρόνο. 3. Πολυπλοκότητα υλοποίησης (Implementation Complexity): Η πολυπλοκότητα υλοποίησης μετριέται βάσει του συνολικού αριθμού απαραίτητων αριθμητικών υλοποίησης και βάσει των απαιτήσεων μνήμης. Εναλλακτικά, η πολυπλοκότητα υλοποίησης μπορεί να μετρηθεί βάσει του απαραίτητου αριθμού αριθμητικών διαδικασιών ανά δευτερόλεπτο και των απαιτήσεων μνήμης για μια δεδομένη καθυστέρηση κωδικοποίησης ή επίδοση πραγματικού χρόνου. Για τις εφαρμογές που βάζουν ένα όριο στην κατανάλωση ισχύος, η πολυπλοκότητα υλοποίησης θα περιλάμβανε επίσης ένα μέτρο του επιπέδου κατανάλωσης ισχύος. Η υψηλότερη αποδοτικότητα συμπίεσης μπορεί συνήθως να επιτευχθεί με την αύξηση της πολυπλοκότητας υλοποίησης, η οποία θα οδηγούσε στη συνέχεια σε μια αύξηση στην καθυστέρηση κωδικοποίησης. Στην πράξη, είναι επιθυμητό να βελτιστοποιηθεί η αποδοτικότητα συμπίεσης κρατώντας τις απαιτήσεις εφαρμογής όσο το δυνατόν απλούστερες. Για μερικές εφαρμογές όπως το ξεφύλλισμα (browsing) εικόνων ή η 20

25 Συμπίεση χωρίς απώλειες ανάκτηση εικόνων από βάσεις δεδομένων, μόνο μια χαμηλή πολυπλοκότητα αποκωδικοποίησης απαιτείται δεδομένου ότι η κωδικοποίηση δεν εκτελείται τόσο συχνά όπως η αποκωδικοποίηση. 4. Ευρωστία (Robustness): Για τις εφαρμογές που απαιτούν τη μετάδοση του συμπιεσμένου ρεύματος δεδομένων σε περιβάλλοντα που εμφανίζουν συχνά λάθη, η ευρωστία (δηλαδή η ανθεκτικότητα) της μεθόδου κωδικοποίησης στα λάθη μετάδοσης γίνεται ένα θέμα με ιδιαίτερη σημασία. 5. Κλιμάκωση (Scalability): Οι κωδικοποιητές με ικανότητα κλιμάκωσης παράγουν ένα στρωματοποιημένο ρεύμα δεδομένων ενσωματώνοντας μια ιεραρχική αντιπροσώπευση των δεδομένων της εικόνας εισόδου. Κατ' αυτό τον τρόπο, τα δεδομένα εισόδου μπορούν να ανακτηθούν σε διαφορετικές αναλύσεις κατά τρόπο ιεραρχικό (κλιμάκωση στην ανάλυση), και ο ρυθμός δεδομένων (bit rate) μπορεί να μεταβάλλεται ανάλογα με τους διαθέσιμους πόρους χρησιμοποιώντας τον ίδιο κωδικοποιητή ρεύματος δεδομένων (κλιμάκωση στο ρυθμό δεδομένων). H κωδικοποίηση δεν είναι απαραίτητο να επαναληφθεί για να παραγάγει τους διαφορετικούς ρυθμούς δεδομένων. 2.3 Χωρίς απώλειες κωδικοποίηση συμβόλων Όπως αναφέρεται στην προηγούμενη ενότητα, η χωρίς απώλειες κωδικοποίηση συμβόλων αναφέρεται συνήθως ως χωρίς απώλειες κωδικοποίηση ή χωρίς απώλειες συμπίεση. Τα δημοφιλή χωρίς απώλειες σχήματα κωδικοποίησης συμβόλων εμπίπτουν σε μια από τις ακόλουθες κύριες κατηγορίες: 1. στατιστικά σχήματα (statistical schemes) και 2. σχήματα βασισμένα σε λεξικό (dictionary based schemes). Τα στατιστικά σχήματα (Huffman, Αριθμητικά) απαιτούν τη γνώση της κατανομής πιθανότητας των συμβόλων πηγής. Μικρότερες κωδικολέξεις ανατίθενται στα σύμβολα με την υψηλότερη πιθανότητα εμφάνισης (VLC). Ένα στατιστικό μοντέλο πηγής (επίσης αποκαλούμενο μοντέλο πιθανοτήτων) δίνει τις πιθανότητες συμβόλων. Το στατιστικό μοντέλο της πηγής μπορεί να καθοριστεί, οπότε σ' αυτή την περίπτωση οι πιθανότητες συμβόλων καθορίζονται, ή προσαρμόζονται, με συνέπεια οι πιθανότητες συμβόλων να υπολογίζονται προσαρμοστικά. Τα περίπλοκα μοντέλα πηγής μπορούν να παρέχουν ακριβέστερη μοντελοποίηση των στατιστικών πηγής και, επομένως, να επιτύχουν την υψηλότερη συμπίεση με κόστος την αύξηση στην πολυπλοκότητα. 21

26 Συμπίεση χωρίς απώλειες Τα σχήματα που βασίζονται σε λεξικά (Lempel- Ziv) δεν απαιτούν την a priori γνώση της κατανομής πιθανότητας των συμβόλων της πηγής. Κατασκευάζουν δυναμικά τους πίνακες κωδικοποίησης και αποκωδικοποίησης (αποκαλούμενους λεξικό) των σειρών συμβόλων μεταβλητού-μήκους όπως εμφανίζονται στα δεδομένα εισόδου. Καθώς κατασκευάζεται ο πίνακας κωδικοποίησης, οι καθορισμένου μήκους δυαδικές κωδικολέξεις παράγονται με την ευρετηρίαση στον πίνακα κωδικοποίησης. Και οι στατιστικοί κώδικες και οι κώδικες που βασίζονται σε λεξικά προσπαθούν να ελαχιστοποιήσουν το μέσο ρυθμό δεδομένων χωρίς να υποστούν οποιαδήποτε απώλεια στην πιστότητα (fidelity). Ο τομέας της θεωρίας πληροφοριών δίνει κατώτερα φράγματα στα επιτεύξιμα bit rates Βασικές έννοιες από τη θεωρία πληροφοριών Η θεωρία πληροφοριών (Information Theory) κάνει εκτεταμένη χρήση της θεωρίας πιθανοτήτων δεδομένου ότι οι πληροφορίες συσχετίζονται με το βαθμό μη προβλεψιμότητας και τυχαιότητας στα παραγμένα μηνύματα. Εδώ, τα παραγμένα μηνύματα είναι η παραγωγή συμβόλων από τη φάση 2. Μία πηγή πληροφοριών χαρακτηρίζεται από το σύνολο συμβόλων S που έχει τη δυνατότητα να παράξει και τη πιθανότητα εμφάνισης αυτών των συμβόλων. Για την εξεταζόμενη εφαρμογή χωρίς απώλειες κωδικοποίησης εικόνας, η πηγή πληροφοριών είναι μια διακριτού-χρόνου πηγή, διακριτού πλάτους τιμών με ένα πεπερασμένο σύνολο μοναδικών συμβόλων Π.χ., Το s αποτελείται από έναν πεπερασμένο αριθμό συμβόλων και καλείται συνήθως αλφάβητο πηγής (source alphabet). Έστω S αποτελείται από N σύμβολα: S s0, s1,..., sn 1. (3) Κατόπιν η πηγή πληροφοριών εξάγει μια ακολουθία συμβόλων {x 1, x 2, x 3, x i, } προερχόμενη από το σύνολο συμβόλων S, όπου x 1 είναι το πρώτο δείγμα πηγής παραγωγής, x 2 είναι το δεύτερο δείγμα παραγωγής, και x i είναι το i-οστό δείγμα παραγωγής από το S. Οποιαδήποτε στιγμή (που δίνεται από το δείκτη ακολουθίας παραγωγής), η πιθανότητα η N 1 k 0 πηγή να μας δώσει το σύμβολο s k είναι p k =P(s k ), 0 k N 1. Σημειώστε ότι p 1 δεδομένου ότι είναι σίγουρο ότι η πηγή παράγει σύμβολα μόνο από το αλφάβητό του S. Οι πηγές λέγεται ότι είναι στάσιμες (stationary) εάν οι στατιστικές της (σύνολο πιθανοτήτων) δεν αλλάζουν με το χρόνο. Οι πληροφορίες που συνδέονται με ένα σύμβολο s k k 22

27 Συμπίεση χωρίς απώλειες 0 k N 1, οι αποκαλούμενες και πληροφορίες-για-τον_εαυτό_τους (self-information), ορίζονται ως: I sk log 2 (1/ pk )( bits) log 2 ( pk )( bits). (4) Από την εξίσωση μπορεί να φανεί ότι I k = 0 εάν p k = 1 (ορισμένο γεγονός) και I k εάν p k = 0 (αδύνατο γεγονός). Επίσης, όταν I k είναι μεγάλο, p k είναι μικρό (απίθανα σύμβολα), όπως αναμένεται. Το περιεχόμενο πληροφοριών της πηγής μπορεί να μετρηθεί με τη χρησιμοποίηση της εντροπίας πηγής H(S), που είναι ένα μέτρο του μέσου ποσού πληροφοριών ανά σύμβολο. Η εντροπία πηγής H(S), επίσης γνωστή ως εντροπία πρώτου βαθμού ή περιθώρια εντροπία, ορίζεται ως η αναμενόμενη τιμή (δηλ. μέση τιμή) των selfinformation και δίνεται από την: N I k k 1 H ( S) E p log ( p (bits ανά σύμβολο). (5) o k 2 k ) Σημειώστε ότι H(S) είναι μέγιστη εάν τα σύμβολα στο S είναι ίσων πιθανοτήτων (ομοιόμορφη κατανομή πιθανότητας), οπότε σ' αυτή την περίπτωση H(S) = log 2 (N) bits ανά σύμβολο. Μια λοξή κατανομή πιθανότητας οδηγεί σε μια μικρότερη εντροπία πηγής. Σε περίπτωση κωδικοποίησης χωρίς συγκράτηση μνήμης (memoryless), κάθε σύμβολο πηγής κωδικοποιείται χωριστά. Για έναν δεδομένο χωρίς απώλειες κώδικα C, έστω I k το μήκος (αριθμός bits) της κωδικολέξη που ανατίθεται στο κωδικό-σύμβολο s k 0 k N 1. Κατόπιν, το προκύπτον μέσο bit rate Bc που αντιστοιχεί Π.Χ. στον κώδικα C είναι N 1 k 0 B p I (bits per symbol). (6) C k k Για οποιοδήποτε μεμονωμένo αποκωδικοποιήσιμο χωρίς απώλειες κώδικα C, η εντροπία H(S) είναι ένα χαμηλό φράγμα στο μέσο ποσοστό δυαδικών ψηφίων B C : BC H ( S). (7) Συνεπώς, η H(S) βάζει ένα όριο στο επιτεύξιμο μέσο bit rate δεδομένου ότι κάθε σύμβολο κωδικοποιείται χωριστά σε έναν memoryless τρόπο. Επιπλέον, ένας μεμονωμένα αποκωδικοποιήσιμος κώδικας προθέματος C μπορεί πάντα να κατασκευαστεί (π.χ., κωδικοποίηση Huffman) έτσι ώστε H( S) B H( S) 1. (8) C Ένα σημαντικό αποτέλεσμα που μπορεί να χρησιμοποιηθεί στην κατασκευή των κωδίκων προθέματος είναι η ανισότητα του Kraft, 23

28 Συμπίεση χωρίς απώλειες N (9) k 0 Κάθε μεμονωμένος αποκωδικοποιήσιμος κώδικας έχει κωδικολέξεις με μήκος που ικανοποιούν την ανισότητα του Kraft, και οι κώδικες προθέματος μπορούν να κατασκευαστούν με οποιοδήποτε σύνολο μηκών που ικανοποιούν την ανισότητα. Η υψηλότερη συμπίεση μπορεί να επιτευχθεί με την κωδικοποίηση ενός μπλοκ (διάνυσμα ή υποακολουθία) M διαδοχικών συμβόλων από κοινού. Η κωδικοποίηση μπορεί να γίνει όπως στην περίπτωση της memoryless κωδικοποίησης με την εκτίμηση κάθε μπλοκ των M συμβόλων ως ένα σύνθετο σύμβολο s (M), που προέρχεται από το αλφάβητο ( M ) S S S S..., (10) M times όπου x στην εξίσωση (10) υποδηλώνει ένα καρτεσιανό γινόμενο, και το M δείχνει το μέγεθος κάθε σύνθετου μπλοκ συμβόλων. Επομένως, το S (M) είναι το σύνολο όλων των πιθανών σύνθετων συμβόλων της μορφής x1, x2,... x M όπου S, 1 i M. Δεδομένου ότι το S αποτελείται από N σύμβολα, το S (M) περιέχει L = N M S x i σύνθετα σύμβολα: ( M ) ( M ) ( ) s, s,... s ; L = N M. (11) ( M ) M 0 1 L 1 Τα προηγούμενοι αποτελέσματα και οι ορισμοί γενικεύουν άμεσα με την αντικατάσταση του s με το S (M) και την αντικατάσταση των πιθανοτήτων συμβόλων p P( s ),(0 k N 1) με τις κοινές πιθανότητες (από κοινού πιθανότητες συμβόλων) k k p P( s ),(0 k L 1). Έτσι, η εντροπία του καθορισμένου S (M), το οποίο είναι το ( M) ( M) k k σύνολο όλων των σύνθετων συμβόλων ( M s ),(0 k L 1), δίνεται από k Ο όρος L 1 ( M ) ( M ) ( M ) k 2 k k 0 H ( S ) p log ( p ). (12) ( M ) H( S ) της εξίσωσης (12) καλείται επίσης εντροπία Μ-στού βαθμού της S. Εάν το S αντιστοιχεί σε μια στάσιμη πηγή (δηλ., οι πιθανότητες συμβόλων δεν αλλάζουν κατά τη διάρκεια του χρόνου), ( M ) H( S ) συσχετίζεται με την εντροπία πηγής H(S) ως εξής: H S ( M ) ( ) M H( S), (13) με την ισότητα εάν και μόνο εάν τα σύμβολα στο S είναι στατιστικά ανεξάρτητα (memoryless πηγή). Η ποσότητα lim M H S ( M ) ( ) M (14) 24

29 Συμπίεση χωρίς απώλειες καλείται ρυθμός εντροπίας (entropy rate) της πηγής S και δίνει τις μέσες πληροφορίες ανά σύμβολο παραγωγής που προέρχεται από το S. Για μια στάσιμη πηγή, το όριο στην ποσότητα (14) πάντα υπάρχει. Επίσης, από τη σχέση (13), το ποσοστό εντροπίας είναι ίσο με την εντροπία πηγής για την περίπτωση μιας memoryless πηγής. Όπως πριν, κάθε σύμβολο παραγωγής (ένωση) μπορεί να κωδικοποιηθεί χωριστά. Για έναν δεδομένο χωρίς απώλειες κώδικα C, εάν l είναι το μήκος του κωδικολέξη ( ( M ) k κωδικολέξη (codeword)) που ανατίθεται στο σύμβολο κώδικα ( M s ) (0 k L 1), το k προκύπτων μέσο bit rate B σε code bits ανά σύνθετο σύμβολο είναι ( M ) C L 1 ( M ) ( M ) ( M ) C k k k 0 B P l (bits ανά σύνθετο σύμβολο). (15) Επίσης, όπως πριν, ένας κώδικας C προθέματος μπορεί να κατασκευαστεί έτσι ώστε H S B H S (16) ( M ) ( M ) ( M ) ( ) C ( ) 1, όπου B είναι το προκύπτον μέσο ποσοστό δυαδικών ψηφίων ανά σύνθετο σύμβολο. Το ( M ) C επιθυμητό μέσο bit rate ( M ) B στα bits ανά σύμβολο πηγής είναι ίσο με B /.. Συνεπώς, C διαιρώντας τους όρους στη σχέση (16) με το M, λαμβάνουμε H ( S M ( M ) ( M ) ) H ( S ) 1 BC. (17) M M Από τη σχέση (17), ακολουθεί ότι, εάν κωδικοποιήσουμε από κοινού τα πολύ μεγάλα τμήματα των συμβόλων πηγής (M πολύ μεγάλο), μπορούμε να βρούμε έναν κώδικα πηγής C με ένα μέσο bit rate B C πλησιάζοντας μονότονα το ρυθμό εντροπίας της πηγής καθώς το M πηγαίνει στο άπειρο. Για μια δίχως μνήμη (memoryless) πηγή, η σχέση (17) γίνεται όπου ( M B B ) / M. C C 1 H ( S) BC H ( S), (18) M Από αυτήν την ανάλυση, βλέπουμε ότι οι στατιστικές της εξεταζόμενης πηγής (που δίνεται από τις πιθανότητες συμβόλων) πρέπει να γίνουν γνωστές προκειμένου να υπολογιστούν τα χαμηλότερα όρια στο επιτεύξιμο bit rate. Στην πράξη, οι στατιστικές πηγής μπορεί να εκτιμηθούν από το ιστόγραμμα ενός συνόλου συμβόλων της πηγής δειγμάτων. Για μια μη-στάσιμη πηγή, οι πιθανότητες συμβόλων πρέπει να υπολογιστούν προσαρμοστικά δεδομένου ότι οι στατιστικές πηγής αλλάζουν κατά τη διάρκεια του χρόνου. C 25

30 Συμπίεση χωρίς απώλειες Κωδικοποίηση Huffman Στην εργασία του ο D. Huffman παρουσίασε μια απλή τεχνική για τους κώδικες προθέματος που οδηγεί σε ένα μέσο ρυθμό bit που ικανοποιεί τη σχέση (8) όταν κωδικοποιούνται χωριστά τα σύμβολα πηγής, ή τη σχέση (17) στην περίπτωση της κοινής διανυσματικής κωδικοποίησης M-συμβόλων. Ο αλγόριθμος κωδικοποίησης Huffman είναι βασισμένος στις ακόλουθες συνθήκες βελτιστοποίησης για έναν κώδικα προθέματος : (1) εάν P( sk ) P( s j ) (σύμβολο s k πιθανότερο από το σύμβολο s j, k j ) κατόπιν lk l j, όπου l k και l j είναι τα μήκη των κωδικολέξη ( κωδικολέξη (codeword))s που ορίζονται στα σύμβολα κώδικα αντίστοιχα. Αν s k και τα σύμβολα παρατίθενται σε σειρά μειούμενης πιθανότητας, τα δύο τελευταία σύμβολα στο διατεταγμένο σύνολο ανατίθενται κωδικολέξεις που έχουν το ίδιο μήκος και είναι όμοια εκτός από το τελικό bit. k Λαμβάνοντας υπόψη μια πηγή με το αλφάβητο S που αποτελείται από N σύμβολα s με τις πιθανότητες pk P( sk )(0 k ( N 1)), μπορούμε να κατασκευάσουμε έναν κώδικα Huffman που αντιστοιχεί στην πηγή S κατασκευάζοντας επαναληπτικά ένα δυαδικό δέντρο ως εξής. 1. Τακτοποιήστε τα σύμβολα του s έτσι ώστε οι πιθανότητες p k είναι κατά s j, φθίνουσα αρίθμηση Π.χ., p0 P1... p( N 1), (19) και εξετάστε τα διατεταγμένα σύμβολα s, 0 k ( N 1), σαν κόμβους φύλλων ενός k δέντρου. Αφήστε το T να είναι το σύνολο των κόμβων φύλλων που αντιστοιχούν στα διατεταγμένα σύμβολα του S. 2. Πάρτε τους δύο κόμβους στο Τ με τις μικρότερες πιθανότητες και συγχωνεύστε τις σε έναν νέο κόμβο που η πιθανότητά του είναι το άθροισμα των πιθανοτήτων αυτών των δύο κόμβων. Για την κατασκευή δέντρων, κάνετε το νέο προκύπτοντα κόμβο το "γονέα" των δύο πιό ελάχιστα πιθανών κόμβων του T με τη σύνδεση του νέου κόμβου με κάθε έναν από τους δύο πιο ελάχιστα πιθανούς κόμβους. Κάθε σύνδεση μεταξύ δύο κόμβων διαμορφώνει έναν "κλάδο" του δέντρου έτσι, δύο νέοι κλάδοι παράγονται. Ορίστε μια τιμή 1 στον ένα κλάδο και 0 στον άλλο κλάδο. 26

31 Συμπίεση χωρίς απώλειες 3. Ενημερώστε το Τ με την αντικατάσταση των δύο πιό ελάχιστα πιθανών κόμβων στο T με τον κόμβο γονέων τους, και επαναδιατάξτε τους κόμβους (με τα υποδένδρα τους) εάν είναι απαραίτητο. Εάν το Τ περιέχει περισσότερους από έναν κόμβους, επαναλάβετε από το βήμα 2 διαφορετικά, ο τελευταίος κόμβος στο T είναι ο κόμβος "ρίζας" του δέντρου. 4. Η κωδικολέξη (codeword) ενός συμβόλου s S(0 k ( N 1)) μπορεί να εξαχθεί διασχίζοντας τη συνδεδεμένο μονοπάτι του δέντρου από τον κόμβο ρίζας στον κόμβο φύλλων που αντιστοιχεί στο s (0 k ( N 1)) διαβάζοντας διαδοχικά τις τιμές k κομματιών που ορίζονται στους κλάδους δέντρων της πορείας που διανύετε. Η διαδικασία κατασκευής κώδικα Huffman εμφανίζεται στο παράδειγμα που παρουσιάζεται στην Εικόνα 2.3. k Εικόνα 2.3. Παράδειγμα παραγωγής του Huffman κώδικα για το αλφάβητο πηγής του Πίνακα 1 a) πρώτη επανάληψη, b) δεύτερη επανάληψη και c) τρίτη και τελευταία επανάληψη. Το αλφάβητο πηγής S s, s, s, s με τις πιθανότητες συμβόλων όπως δίνεται στον Πίνακα 1. Οι κωδικολέξεις συμβόλων κατάληξης παρατίθενται στη τρίτη στήλη του Πίνακα 1. Για αυτό το παράδειγμα, η εντροπία πηγής είναι H(S)= και το προκύπτον μέσο ποσοστό δυαδικών ψηφίων είναι B H 3 p 1.9 k 0 kl k (bits ανά σύμβολο), όπου k l είναι το 27

32 Συμπίεση χωρίς απώλειες μήκος της κωδικολέξης που ανατίθεται στο σύμβολο s k του S. Οι κωδικολέξεις συμβόλων αποθηκεύονται συνήθως σε έναν πίνακα αντιστοίχισης σύμβολο-σε-κωδικολέξη που τίθεται στην διάθεση και του κωδικοποιητή και του αποκωδικοποιητή. Εάν οι πιθανότητες συμβόλων μπορούν να υπολογιστούν ακριβώς, η ανωτέρω διαδικασία κωδικοποίησης Huffman είναι βέλτιστη υπό την έννοια ότι οδηγεί στο ελάχιστο μέσο bit rate μεταξύ όλων των μεμονωμένα αποκωδικοποιήσιμων κωδίκων υποθέτοντας την memoryless κωδικοποίηση. Σημειώστε ότι, για μια δεδομένη πηγή S, περισσότεροι από ένας κώδικες Huffman είναι δυνατοί αλλά είναι όλοι βέλτιστοι υπό την ανωτέρω έννοια. Στην πραγματικότητα, ένας άλλος βέλτιστος κώδικας Huffman μπορεί να ληφθεί όταν απλά πάρουμε το συμπλήρωμα των δυαδικών κωδικολέξεων (codeword) κατάληξης. Ως αποτέλεσμα της δίχως απώλειες κωδικοποίησης, το προκύπτον μέσο bit rate είναι μέσα σε ένα bit της εντροπίας πηγής δεδομένου ότι οι κωδικολέξεις ακέραιου μήκους ανατίθονται σε κάθε σύμβολο χωριστά. Η περιγραφόμενη διαδικασία κωδικοποίησης Huffman μπορεί να εφαρμοστεί άμεσα για να κωδικοποιήσει μια ομάδα M συμβόλων από κοινού αντικαθιστώντας το S με S (M) της εξίσωσης (10). Σε αυτήν την περίπτωση, η υψηλότερη συμπίεση μπορεί να επιτευχθεί αλλά εις βάρος μιας αύξησης στη μνήμη και την πολυπλοκότητα, δεδομένου ότι το αλφάβητο γίνεται πολύ μεγαλύτερο και οι κοινές πιθανότητες πρέπει να υπολογιστούν. Ενώ η κωδικοποίηση μπορεί να γίνει απλά με τη χρησιμοποίηση του πίνακα αντιστοίχισης σύμβολο-σε-κωδικολέξη, η πραγματοποίηση της λειτουργίας αποκωδικοποίησης περιλαμβάνεται περισσότερο. Ένας τρόπος αποκωδικοποίησης του bitstream που παράγεται από έναν κώδικα Huffman είναι να αναδημιουργήσει αρχικά το δυαδικό δέντρο από το σύμβολο-στη-κωδικολέξη του πίνακα αντιστοίχισης. Κατόπιν, δεδομένου ότι η ροή δεδομένων (bitstream) διαβάζεται ένα bit τη φορά, το δέντρο διασχίζεται αρχικά από τη ρίζα έως ότου φθάσουμε ένα κόμβο φύλλων. Το σύμβολο που αντιστοιχεί στον επιτευγμένο κόμβο φύλλων είναι έπειτα έξοδος από τον αποκωδικοποιητή. Ξαναξεκινώντας από τη ρίζα του δέντρου, το πιο πάνω βήμα διάσχισης των δέντρων επαναλαμβάνεται έως ότου αποκωδικοποιείται όλο το bitstream. Αυτή η μέθοδος αποκωδικοποίησης παράγει ένα μεταβλητό ρυθμό συμβόλων στην έξοδο του αποκωδικοποιητή δεδομένου ότι οι κωδικολέξεις (codeword) ποικίλλουν στο μήκος. Ένας άλλος τρόπος να εκτελεσθεί η αποκωδικοποίηση είναι να κατασκευαστεί ένας πίνακας αντιστοίχισης (look-up table) από το πίνακα αντιστοίχισης σύμβολο-σε-κωδικολέξη. 28

33 Συμπίεση χωρίς απώλειες Σύμβολο πηγής ( s k ) Πιθανότητα ( p k ) Κωδικολέξη που ανατίθεται s s s s Πίνακας 2.1. Παράδειγμα ανάθεσης κωδικολέξεων ( κωδικολέξη (codeword)s) στη κωδικοποίηση Huffman Ο κατασκευασμένος πίνακας αντιστοίχισης έχει 2 l max καταχωρήσεις, όπου l max είναι το μήκος της πιο μεγάλης κωδικολέξης. Οι δυαδικές κωδικολέξεις χρησιμοποιούνται για να δείξουν στο πίνακα αντιστοίχισης. Ο πίνακας αντιστοίχισης μπορεί να κατασκευαστεί ως εξής. Έστω l k το μήκος της κωδικολέξης που αντιστοιχεί στο σύμβολο s k. Για κάθε σύμβολο s k στον πίνακα αντιστοίχισης, τοποθετήστε το ζευγάρι των τιμών (s k, l k ) σε όλες τις επιτραπέζιες καταχωρήσεις, για τις οποίες τα πιο αριστερά l k bit διευθύνσεων είναι ίσα με τη κωδικολέξη που ορίζεται ως s k. Κατά συνέπεια, θα υπάρξουν ( l max lk ) 2 καταχωρήσεις που αντιστοιχούν στο σύμβολο s k. Για την αποκωδικοποίηση, l max bits διαβάζονται από τη ροή των δεδομένων. Διαβάζοντας l max bits χρησιμοποιούντται στο δείκτη στον πίνακα αντιστοίχισης για να λάβουμε το αποκωδικοποιημένο σύμβολο s k, το όποιο παράγεται μετά από τον αποκωδικοποιητή, και η αντίστοιχο κωδικολέξη με μήκος l k. Κατόπιν ο επόμενος δείκτης του πίνακα διαμορφώνεται με την απόρριψη των πρώτων l k κομματιών του τρέχοντος δείκτη και την επισύναψη στο δικαίωμα των επόμενων l k κομμάτια που διαβάζονται από το bitstream. Αυτή η διαδικασία επαναλαμβάνεται έως ότου αποκωδικοποιείται όλο το bitstream. Αυτή η προσέγγιση οδηγεί σε μια σχετικά γρήγορη αποκωδικοποίηση και σε ένα σταθερό ποσοστό συμβόλων παραγωγής. Εντούτοις, το μέγεθος μνήμης και η πολυπλοκότητα αυξάνονται εκθετικά με l max, όποιος μπορεί να είναι πολύ μεγάλος. 29

34 Συμπίεση χωρίς απώλειες Προκειμένου να περιοριστεί η πολυπλοκότητα, οι διαδικασίες στους κώδικες Huffman περιορίζω-μήκους κατασκευάσματος έχουν αναπτυχθεί. Οι κώδικες Huffman περιορισμένου-μήκους είναι κώδικες Huffman που σχεδιάζονται περιοριστικοί το μέγιστο επιτρεπόμενο μήκος κωδικολέξη ( κωδικολέξη (codeword)) σε μια διευκρινισμένη αξία l max. Οι μικρότεροι κώδικες Huffman οδηγούν σε ένα υψηλότερο μέσο ποσοστό δυαδικών ψηφίων έναντι του κώδικα Huffman αβίαστος-μήκους. Δεδομένου ότι τα σύμβολα με τις χαμηλότερες πιθανότητες οδηγούν σε μακρύτερες κωδικολέξεις, ένας τρόπος για να κατασκευαστούν μικρότερου μήκους κώδικες Huffman είναι να ομαδοποιηθούν τα σύμβολα χαμηλής-πιθανότητας σε ένα σύνθετο σύμβολο. Τα σύμβολα χαμηλής-πιθανότητας λαμβάνονται για να είναι τα σύμβολα στο S με μια πιθανότητα max 2 l. Η πιθανότητα του σύνθετου συμβόλου είναι το άθροισμα των πιθανοτήτων των μεμονωμένων συμβόλων χαμηλός-πιθανότητας. Κατόπιν η αρχική διαδικασία κωδικοποίησης Huffman εφαρμόζεται σε ένα σύνολο εισαγωγής συμβόλων που διαμορφώνονται με τη λήψη του αρχικού συνόλου συμβόλων και την αντικατάσταση των συμβόλων χαμηλής-πιθανότητας με το σύνθετο σύμβολο s c. Όταν ένα από τα σύμβολα χαμηλής-πιθανότητας παράγεται από την πηγή, κωδικοποιείται με το κωδικολέξη ( κωδικολέξη (codeword)) που αντιστοιχεί στο s c ακολουθούμενος από έναν δεύτερο σταθερού μήκους δυαδικό κωδικολέξη ( κωδικολέξη (codeword)) μήκους που αντιστοιχεί σε εκείνο το ιδιαίτερο σύμβολο. Τα άλλα σύμβολα "υψηλής πιθανότητας" κωδικοποιούνται ως συνήθως με τη χρησιμοποίηση του Huffman σύμβολο- στον πίνακα χαρτογράφησης. Προκειμένου να αποφύγουμε να στείλουμε μία πρόσθετη κωδικολέξη για τα σύμβολα χαμηλής-πιθανότητας, μια εναλλακτική προσέγγιση είναι να χρησιμοποιηθεί η αρχική αβίαστη διαδικασία σχεδίου κώδικα Huffman στο αρχικό σύνολο συμβόλων S με τις πιθανότητες των συμβόλων χαμηλής-πιθανότητας που αλλάζουν για να είναι ίση με max 2 l Άλλες μέθοδοι περιλαμβάνουν την επίλυση ενός περιορισμένου προβλήματος βελτιστοποίησης για να βρούν τα βέλτιστα μήκη κωδικολέξεων l k ( 0 k N 1) που ελαχιστοποιούν το μέσο ποσοστό δυαδικών ψηφίων υποκείμενο στους περιορισμούς l lk l (0 k N 1). Μόλις βρεθούν τα βέλτιστα μήκη κωδικολέξη ( κωδικολέξη max (codeword)), ένας κώδικας προθέματος μπορεί να κατασκευαστεί με τη χρησιμοποίηση της ανισότητας του Kraft. Σε αυτήν την περίπτωση, οι κωδικολέξεις μήκους l k που αντιστοιχούν στο s k δίνονται από l k bits δεξιά του δυαδικού σημείου στη δυαδική li αντιπροσώπευση του μέρους i 2. 0 k 30

35 Συμπίεση χωρίς απώλειες Αυτή η συζήτηση υποθέτει ότι οι στατιστικές πηγής περιγράφονται από ένα σταθερό σύνολο πιθανοτήτων συμβόλων πηγής. Κατά συνέπεια, μόνο ένα σταθερό σύνολο κωδικολέξεων πρέπει να υπολογιστεί και να παρασχεθεί μιά φορά στον κωδικοποιητήαποκωδικοποιητή. Αυτό το σταθερό πρότυπο αποτυγχάνει εάν οι στατιστικές πηγής ποικίλλουν δεδομένου ότι η απόδοση της κωδικοποίησης Huffman εξαρτάται από πόσο ακριβώς οι στατιστικές πηγής διαμορφώνονται. Παραδείγματος χάριν, οι εικόνες μπορούν να περιέχουν τους διαφορετικούς τύπους στοιχείων, όπως το κείμενο και τα συστατικά εικόνων, με τα διαφορετικά στατιστικά χαρακτηριστικά. Η προσαρμοστική κωδικοποίηση Huffman αλλάζει τη κωδικολέξη που τίθεται ως στόχος να ταιριάξει με τις τοπικά κατ' εκτίμηση στατιστικές πηγής. Δεδομένου ότι οι στατιστικές πηγής αλλάζουν, ο κώδικας αλλάζει παραμένοντας βέλτιστος για την τρέχουσα εκτίμηση των πιθανοτήτων συμβόλων πηγής. Ένας απλός τρόπος για προσαρμοστικό υπολογισμό των πιθανοτήτων συμβόλων είναι να διατηρηθεί μια αρίθμηση του αριθμού εμφανίσεων κάθε συμβόλου. Ο κώδικας Huffman μπορεί να αλλάζει δυναμικά εάν με μία off-line διαδικασία προυπολογίζουμε τους κώδικες που αντιστοιχούν στις διαφορετικές στατιστικές πηγής. Τότε οι προϋπολογισμένοι κώδικες αποθηκεύονται μέσα σε πίνακες αντιστοίχισης συμβόλου-σε-κωδικολέξη και τίθενται στην διάθεση του κωδικοποιητή και του αποκωδικοποιητή. Ο κώδικας αλλάζει επιλέγοντας δυναμικά να μία αντιστοίχιση από τους διαθέσιμους πίνακες βασισμένους στις συχνότητες των συμβόλων που εμφανίστηκαν μέχρι τώρα. Εντούτοις, εκτός από την αποθήκευση και το χρόνο εκτέλεσης που υφίσταται από πάνω για την επιλογή ενός πίνακα κωδικοποίησης, αυτή η προσέγγιση απαιτεί την a priori γνώση των πιθανών στατιστικών πηγής προκειμένου να προσψεδιαστούν οι κώδικες. Μια άλλη προσέγγιση είναι να ξανασχεδιαστεί δυναμικά ο κώδικας Huffman κωδικοποιώντας βασισμένος στις τοπικές εκτιμήσεις πιθανότητας που υπολογίζονται από το παρεχόμενο πρότυπο πηγής. Αυτό το πρότυπο είναι επίσης διαθέσιμο στον αποκωδικοποιητή, που επιτρέπει να αλλάξει το δένδρο αποκωδικοποίησης ή το πίνακα κωδικοποίησης σε συμφωνία με το κωδικοποιητή. Οι λεπτομέρειες της εκτέλεσης των προσαρμοστικών αλγορίθμων κωδικοποίησης Huffman μπορούν να βρεθούν στην εργασία Αριθμητική κωδικοποίηση Όπως υποδεικνύεται στην προηγούμενη ενότητα, το κύριο μειονέκτημα της κωδικοποίησης Huffman είναι ότι ορίζει μία κωδικολέξη ακέραιου-μήκους ξεχωριστά σε κάθε σύμβολο. Κατά συνέπεια, το ποσοστό ο ρυθμός των δυαδικών ψηφίων (bit rate) δεν μπορεί να είναι λιγότερο από 1 bit ανά σύμβολο εκτός αν τα σύμβολα κωδικοποιούνται από κοινού. Εντούτοις, η κοινή κωδικοποίηση συμβόλων, που κωδικοποιεί μία ομάδα συμβόλων 31

36 Συμπίεση χωρίς απώλειες από κοινού ως ένα σύνθετο σύμβολο, οδηγεί σε καθυστέρηση και σε μια αυξανόμενη πολυπλοκότητα ως προς τη μοντελοποίηση της πηγής, τους υπολογισμούς και τη μνήμη. Ένα άλλο μειονέκτημα της κωδικοποίησης Huffman είναι ότι η πραγματοποίηση και η δομή των αλγορίθμων κωδικοποίησης και αποκωδικοποίησης εξαρτώνται από τις στατιστικές ιδιότητες πηγής. Κάτι τέτοιο συνεπάγεται ότι οποιαδήποτε αλλαγή στις στατιστικές ιδιότητες της πηγής απαιτεί την επανασχεδίαση στους κώδικες Huffman και την αλλαγή της των δέντρων που έχουν προκύψει από την κωδικοποίηση και την απολωδικοποίηση, στοιχεία που καθιστούν την προσαρμοστική κωδικοποίηση δυσκολότερη. Η αριθμητική κωδικοποίηση είναι μια χωρίς απώλειες μέθοδος κωδικοποίησης που δεν πάσχει από τα προαναφερθέντα μειονεκτήματα και που τείνει να επιτύχει υψηλότερους ρυθμούς συμπίεσης από την κωδικοποίηση Huffman. Από την άλλη, η κωδικοποίηση Huffman μπορεί γενικά να πραγματοποιηθεί με απλούστερο λογισμικό και υλικό. Στην αριθμητική κωδικοποίηση, κάθε σύμβολο δεν ειναι απαραίτητο να αντιστοιχηθεί σε έναν ακέραιο αριθμό από bits. Κατά συνέπεια, ένα μέσο κλασματικό ποσοστό bits (που μετριέται σε bits/sec) μπορεί να επιτευχθεί χωρίς την ανάγκη της από κοινού αντιμετώπισης πολλών συμβόλων ως ένα. Επιπρόσθετα, η αριθμητική κωδικοποίηση επιτρέπει στο στατιστικό μοντέλο της πηγής να διαφέρει από τη δομή των διαδικασιών κωδικοποίησης και αποκωδικοποίησης δηλ., οι στατιστικές ιδιότητες της πηγής μπορούν να αλλάξουν χωρίς να πρέπει να αλλαχτούν αναγκαστικά τα υπολογιστικά βήματα στις ενότητες κωδικοποίησης και αποκωδικοποίησης. Αυτός ο διαχωρισμός καθιστά την αριθμητική κωδικοποίηση ελκυστικότερη από τη Huffman για λόγους προσαρμοστικής κωδικοποίησης. Η βασική ιδέα πίσω από την αριθμητική κωδικοποίηση είναι να αντιστοιχηθούν τα σύμβολα της ακολουθίας συμβόλων σε μία μοναδική κωδικολέξη. Η ομαδοποίηση (blocking) των συμβόλων δεν απαιτείται δεδομένου ότι, η κωδικολέξη μπορεί να καθοριστεί και να ενημερωθεί αυξητικά καθώς εισάγεται ένα νέο σύμβολο (κωδικοποίηση σύμβολοσυμβόλο). Οποιαδήποτε στιγμή, μία συγκεκριμένη κωδικολέξη αντιπροσωπεύει μοναδικά όλα τα σύμβολα που εμφανίστηκαν πιο πριν. Αν και η τελική κωδικολέξη αναπαρίσταται με τη χρησιμοποίηση ενός ακέραιου αριθμού bits, ο προκύπτων μέσος αριθμός κομματιών ανά σύμβολο λαμβάνεται με τη διαίρεση του μήκους της κωδικολέξης με τον αριθμό των κωδικοποιημένων συμβόλων. Για μια ακολουθία συμβόλων M, το προκύπτον μέσο ποσοστό bits ικανοποιεί την απαιτούμενη σχέση και, επομένως, πλησιάζει τη βέλτιστη ποσότητα καθώς το μήκος M της κωδικοποιημένης ακολουθίας γίνεται πολύ μεγάλο. 32

37 Συμπίεση χωρίς απώλειες Στα πραγματικά αριθμητικά βήματα κωδικοποίησης, η κωδικολέξη αντιπροσωπεύεται από ένα ανοικτό από αριστερά διάστημα [ L, ) [0,1). Το διάστημα αυτό δίνει το σύνολο c H c όλων των κωδικολέξεων που μπορούν να χρησιμοποιηθούν για να κωδικοποιήσουν την ακολουθία συμβόλων εισαγωγής, η οποία αποτελείται από όλα τα προηγούμενα σύμβολα εισαγωγής. Έτσι, οποιοσδήποτε πραγματικός αριθμός μέσα στο υποδιάστημα L, H ) [ c c μπορεί να οριστεί ως κωδικολέξη που αντιπροσωπεύει όλα τα σύμβολα που εμφανίστηκαν νωρίτερα. Στη συνέχεια, η επιλεγόμενη πραγματική κωδικολέξη μεταδίδεται έπειτα σε δυαδική μορφή (κλασματική δυαδική αντιπροσώπευση, όπου το 1 αντιπροσωπεύει ½,.01 αντιπροσωπεύει ¼, το.11 αντιπροσωπεύει τα ¾, και τα λοιπά). Όταν ένα νέο σύμβολο εμφανίζεται, το τρέχων υποδιάστημα L, H ) ενημερώνεται με την εύρεση νέου [ c c υποδιαστήματος L, H ) [ L, H ) για να αντιπροσωπεύσει τη νέα αλλαγή στην [ c c c c κωδικοποιημένη ακολουθία. Το υποδιάστημα της κωδικολέξης επιλέγεται και ενημερώνεται έτσι ώστε το μήκος του είναι ίσο με την πιθανότητα της αντίστοιχης κωδικοποιημένης ακολουθίας εισόδου. Ακολουθεί ότι τα λιγότερο πιθανά γεγονότα (που δίνονται από τις ακολουθίες συμβόλων εισόδου) αντιπροσωπεύονται με τα πιό σύντομα διαστήματα και, επομένως, απαιτούν τις μακρύτερες κωδικολέξεις δεδομένου ότι περισσότερα bit ακρίβειας απαιτούνται για να αντιπροσωπεύσουν στενότερα υποδιαστήματα. Έτσι, η αριθμητική διαδικασία κωδικοποίησης κατασκευάζει, με ιεραρχικό τρόπο, ένα υποδιάστημα κώδικα που αντιπροσωπεύει μεμονωμένα μια ακολουθία διαδοχικών συμβόλων. Στην αναλογία με τη κωδικοποίηση Huffman, όπου ο κόμβος-ρίζα του δέντρου αντιπροσωπεύει όλα τα πιθανά σύμβολα εμφάνισης, το διάστημα [ 0.1) εδώ αντιπροσωπεύει όλες τις πιθανές εμφανιζόμενες ακολουθίες συμβόλων (όλα τα πιθανά μηνύματα συμπεριλαμβανομένων των μοναδικών συμβόλων). Επίσης, εξετάζοντας το σύνολο όλων των πιθανών ακολουθιών Μ-συμβόλων που έχουν το ίδιο μήκος M, το συνολικό διάστημα [ 0.1) μπορεί να υποδιαιρεθεί Σύμβολο πηγής ( s k ) Πιθανότητα ( p k ) Υποδιάστημα συμβόλου [Lsk, Hsk) s 0.1 [0,0.1) 1 s 0.3 [0.1,0.4) 2 s 0.4 [0.4,0.8) 3 s 0.2 [0.8,1) 4 33

38 Συμπίεση χωρίς απώλειες Πίνακας 2. Παράδειγμα ανάθεσης κωδικού σε υποδιάστημα στην αριθμητική κωδικοποίηση Σε μη επικαλυπτόμενα υποδιαστήματα έτσι ώστε κάθε ακολουθία Μ-συμβόλων να αναπαρίσταται μεμονωμένα από ένα και μόνο ένα υποδιάστημα του οποίου το μήκος είναι ίσο με την πιθανότητα εμφάνισής του. Έστω S το αλφάβητο πηγής που αποτελείται από N σύμβολα s 0,..., s( N 1). Έστω επίσης ότι, p P s ) η πιθανότητα του συμβόλου s k, 0 k ( N 1). Από τη στιγμή που, k ( k αρχικά, η ακολουθία εισαγωγής θα αποτελείται από το πρώτο σύμβολο εμφάνισης (M=1), η αριθμητική κωδικοποίηση αρχίζει με την υποδιαίρεση του διαστήματος [ 0.1) σε N μηεπικαλυπτόμενα διαστήματα, όπου κάθε διάστημα ανατίθεται σε ένα ξεχωριστό σύμβολο s k S και έχει ένα μήκος ίσο με την πιθανότητα συμβόλων p. Έστω ότι L, H ) δηλώνει το διάστημα που ανατίθεται στο σύμβολο s k, όπου p k k H sk L sk [ sk sk. Αυτή η ανάθεση διευκρινίζεται στον πίνακα 2. Το ίδιο αλφάβητο πηγής και οι πιθανότητες πηγής όπως στο παράδειγμα της Εικόνας 3 χρησιμοποιείται για τη σύγκριση με τη κωδικοποίηση Huffman. Στην πράξη, τα όρια των υποδιαστημάτων L sk και H sk για το σύμβολο s k μπορεί άμεσα να υπολογιστούν από τις διαθέσιμες πιθανότητες συμβόλων και είναι ίσα με τις συσσωρευτικές πιθανότητες P k όπως αυτές δίνονται εδώ: k 1 i 0 L P P 0 k ( N 1), (20) sk k ; k 1 H sk k i 0 P k P ; 0 k ( N 1). (21) k Έστω ότι το L, H ) δηλώνει το διάστημα κώδικα που αντιστοιχεί στην ακολουθία [ c c εισαγωγής που αποτελείται από τα σύμβολα που εμφανίστηκαν μέχρι τώρα. Αρχικά, L 0 και H 1οπότε το αρχικό διάστημα κώδικα τίθεται σε [ 0.1). Λαμβάνοντας υπόψη c c μια ακολουθία συμβόλων εισόδου, ο υπολογισμός του L, H ) εκτελείται βασισμένος στον ακόλουθο αλγόριθμο κωδικοποίησης: [ c c 1. L 0; H 1. c c 2. Υπολογίστε το μήκος του υποδιαστήματος του κώδικα: 34

39 Συμπίεση χωρίς απώλειες 3. Πάρτε το επόμενο σύμβολο εισόδου s k. 4. Ενημερώστε το υποδιάστημα του κώδικα: μήκος = H c L c. (22) L c = L c + μήκος x L sk, H c = L c + μήκος x H sk. (23) 5. Επαναλάβετε από το βήμα 2 έως ότου κωδικοποιηθεί όλη η ακολουθία εισόδου κωδικοποίηση Αριθμός επανάληψης (Ι) Κωδικοποιημένο σύμβολο ( s k ) 1 s [0.1, 0.4) 1 2 s [0.1,0.13) 0 Κωδικοποιημένο υποδιάστημα [ L, H ) 3 s [0.112, 0.124) 2 4 s [0.1216, 0.124) 3 5 s [ , 0.124) 3 Πίνακας 3. Παράδειγμα κατασκευής υποδιαστημάτων κώδικα στην αριθμητική c c Όπως υποδεικνύεται πριν, οποιοσδήποτε πραγματικός αριθμός μέσα στο τελικό διάστημα [L c, H c ) μπορέστε να χρησιμοποιηθείτε ως έγκυρο κωδικολέξη ( κωδικολέξη (codeword)) για μεμονωμένα να κωδικοποιήσει την εξεταζόμενη ακολουθία εισαγωγής. Η δυαδική αντιπροσώπευση επιλεγμένη κωδικολέξη ( κωδικολέξη (codeword)) διαβιβάζεται έπειτα. Η ανωτέρω αριθμητική διαδικασία κωδικοποίησης είναι διευκρινισμένη στον Πίνακα 3 για την κωδικοποίηση της ακολουθίας συμβόλων s 0 s 1 s 2 s 3 s 3. Μια άλλη αντιπροσώπευση της διαδικασίας κωδικοποίησης μέσα στο πλαίσιο του εξεταζόμενου παραδείγματος παρουσιάζεται μέσα Fig. 4. Σημειώστε ότι η αριθμητική κωδικοποίηση μπορεί να αντιμετωπισθεί όπως remapping, σε κάθε επανάληψη, subintervals συμβόλων [ Lsk, H sk )(0 k ( N 1)) to τρέχον subinterval κώδικα L, H ). Η χαρτογράφηση γίνεται [ c c με subintervals συμβόλων για να εγκαταστήσει μέσα L, H ), κρατώντας τους στις ίδιες [ c c 35

40 Συμπίεση χωρίς απώλειες σχετικές θέσεις. Έτσι, όταν εμφανίζεται το επόμενο σύμβολο εισαγωγής, subinterval συμβόλων του γίνεται νέο subinterval κώδικα, και η διαδικασία επαναλαμβάνει έως ότου κωδικοποιούνται όλα τα σύμβολα εισαγωγής. Στην αριθμητική διαδικασία κωδικοποίησης, το μήκος subinterval κώδικα, "μήκος" σε Eq. (22), είναι πάντα ίσος με το προϊόν των πιθανοτήτων των μεμονωμένων συμβόλων που κωδικοποιούνται μέχρι τώρα, και μειώνεται monotonically σε κάθε επανάληψη. Κατά συνέπεια, το διάστημα κώδικα στενεύει σε κάθε επανάληψη. Έτσι, οι πιό μακροχρόνιες ακολουθίες οδηγούν στενότερα subintervals κώδικα, τα οποία θα απαιτούσαν τη χρήση της μεγάλης ακρίβειας αριθμητικής. Επίσης, μια άμεση εφαρμογή της παρουσιασμένης αριθμητικής διαδικασίας κωδικοποίησης παράγει μια παραγωγή μόνο αφού έχουν κωδικοποιηθεί όλα τα σύμβολα εισαγωγής. Οι εφαρμογές που υπερνικούν αυτά τα προβλήματα παρουσιάζονται μέσα [ 6.7 ]. Η βασική ιδέα είναι να αρχίσει το κύριο κομμάτι του αποτελέσματος μόλις μπορεί να καθοριστεί (επαυξητική κωδικοποίηση), και έπειτα να μετατοπιστεί έξω αυτό το κομμάτι (που ανέρχεται σε ξελέπιασμα τρέχοντος subinterval κώδικα από 2). Προκειμένου να διευκρινιστεί πώς η επαυξητική κωδικοποίηση θα ήταν δυνατή, θεωρήστε το παράδειγμα στον πίνακα 3. στη δεύτερη επανάληψη, το κύριο μέρος "0,1" μπορεί να είναι παραγωγή δεδομένου ότι δεν πρόκειται να αλλαχτεί από τα μελλοντικά κωδικοποιώντας βήματα. Μια απλή δοκιμή για να ελέγξει εάν ένα κύριο μέρος μπορεί να είναι παραγωγή είναι να συγκριθούν τα κύρια μέρη L και H τα κύρια ψηφία που είναι τα ίδια μπορεί έπειτα να είναι παραγωγή και παραμένουν αμετάβλητοι δεδομένου ότι επόμενο subinterval κώδικα θα γίνει μικρότερο. Για τους υπολογισμούς σταθερών σημείων, τα λάθη υπερχείλισης και υποχείλισης μπορούν να αποφευχθούν με τον περιορισμό του μεγέθους αλφάβητου πηγής. c c 36

41 Συμπίεση χωρίς απώλειες 1. Λαμβάνοντας υπόψη την αξία του κωδικολέξη ( κωδικολέξη (codeword)), η αριθμητική αποκωδικοποίηση μπορεί να εκτελεσθεί ως εξής: 2. L 0; H 1. c c 3. Υπολογίστε subinterval κώδικα το μήκος: μήκος = H c L c. Βρείτε τα υποδιαστήματα συμβόλων [ Lsk, H sk )(0 k N 1) έτσι ώστε L sk codeword L length c H sk. 4. Σύμβολο παραγωγής s k. 5. Ενημερώστε subinterval κώδικα L c = L c + μήκος x L sk, H c = L c + μήκος x H sk. Επαναλάβετε από το βήμα 2 έως ότου αποκωδικοποιείται το τελευταίο σύμβολο. Προκειμένου να καθοριστεί πότε για να σταματήσει την αποκωδικοποίηση (δηλ., η οποία το σύμβολο είναι το τελευταίο σύμβολο), ένα ειδικό σύμβολο τέλος-$$$- 37

42 Συμπίεση χωρίς απώλειες ΑΚΟΛΟΥΘΙΑΣ προστίθεται συνήθως στο αλφάβητο s πηγής και αντιμετωπίζεται όπως τα άλλα σύμβολα. Στην περίπτωση στην οποία οι καθορισμένου μήκους φραγμοί των συμβόλων κωδικοποιούνται, ο αποκωδικοποιητής μπορεί απλά να κρατήσει μια αρίθμηση του αριθμού αποκωδικοποιημένων συμβόλων και το αριθ. τέλος- του συμβόλου ακολουθίας απαιτείται. 2.4 Χωρίς απώλειες πρότυπα κωδικοποίησης Η ανάγκη για τη διαλειτουργικότητα μεταξύ του διάφορου συστήματος έχει οδηγήσει στη διατύπωση διάφορων διεθνών προτύπων για τους χωρίς απώλειες αλγορίθμους συμπίεσης απευθυνόμενος στις διαφορετικές εφαρμογές. Τα παραδείγματα περιλαμβάνουν τα πρότυπα που διατυπώνονται από Οργάνωση Διεθνών Προτύπων (ISO), η Διεθνής Hλεκτροτεχνική Επιτροπή (IEC), και η Διεθνής Ένωση Τηλεπικοινωνιών (ITU), όποιος ήταν γνωστός στο παρελθόν ως Διεθνής Συμβουλευτική Επιτροπή για το Τηλέφωνο και τον Τηλέγραφο (CCITT). Μια σύγκριση των χωρίς απώλειες ακόμα προτύπων συμπίεσης εικόνας παρουσιάζεται μέσα Πρότυπα JBIG Τα JBIG (Joint Binary Image Experts Group) πρότυπα αναπτύχθηκαν από κοινού από ITU και ISO/IEC με το στόχο να βελτιώσει τη χωρίς απώλειες απόδοση συμπίεσης, και για τα έγγραφα επιχείρηση-τύπων και για τις δυαδικές εικόνες, σε σύγκριση με τα υπάρχοντα πρότυπα. Ένας άλλος στόχος ήταν να υποστηριχθεί η προοδευτική μετάδοση. Οι εικόνες κλίμακας του γκρι υποστηρίζονται επίσης με το να κωδικοποιήσουν χωριστά κάθε επίπεδο bit. Τα πρότυπα JBIG αποτελούνται από έναν πλαίσιο-βασισμένο στο αριθμητικό κωδικοποιητή που παίρνει ως εισαγωγή την αρχική δυαδική εικόνα. Ο αριθμητικός κωδικοποιητής χρησιμοποιεί πλαίσιο-βασισμένη στο μοντελοποιητή ότι οι υπό συνθήκες πιθανότητες εκτιμήσεων βασισμένες στα αιτιώδη πρότυπα. Ένα αιτιώδες πρότυπο αποτελείται από ένα σύνολο ήδη κωδικοποιημένων γειτονικών εικονοκυττάρων και χρησιμοποιείται ως πλαίσιο για το πρότυπο για να υπολογίσει τις πιθανότητες συμβόλων. Η αιτιότητα απαιτείται για να επιτρέψει τον αποκωδικοποιητή στον επαναυπολογισμό οι ίδιες πιθανότητες χωρίς την ανάγκη να διαβιβαστούν οι δευτερεύουσες πληροφορίες. Η προοδευτική μετάδοση υποστηρίζεται με τη χρησιμοποίηση ενός τιθέμενου σε στρώσεις σχεδίου κωδικοποίησης. Σε αυτό το σχέδιο, μια αρχική έκδοση χαμηλής-ανάλυσης της εικόνας (αρχικό στρώμα) κωδικοποιείται αρχικά. Τα στρώματα υψηλής-ανάλυσης μπορούν έπειτα να κωδικοποιηθούν και να διαβιβαστούν της τάξεως της αυξανόμενης 38

43 Συμπίεση χωρίς απώλειες ανάλυσης. Σε αυτήν την περίπτωση, τα αιτιώδη πρότυπα που χρησιμοποιούνται από το μοντελοποιητή μπορούν να περιλάβουν τα εικονοκύτταρα από τα προηγουμένως κωδικοποιημένα στρώματα εκτός από τα ήδη κωδικοποιημένα εικονοκύτταρα που ανήκουν στο τρέχον στρώμα. Έναντι της ομάδας 3 ITU και της ομάδας 4 τα πρότυπα συμπίεσης αντιγράφων, τα πρότυπα JBIG οδηγούν σε 20-50% περισσότερη συμπίεση για τα έγγραφα επιχείρηση-τύπων. Για τις εικόνες, JBIG οδηγεί στις αναλογίες συμπίεσης που είναι δύο έως πέντε φορές μεγαλύτερη από εκείνοι που λαμβάνονται από την ομάδα 3 ITU και την ομάδα 4 τα πρότυπα αντιγράφων. a Χωρίς απώλειες πρότυπα JPEG Tα JPEG (Joint Photographic Experts Group) πρότυπα αναπτύχθηκαν από κοινού από ITU και ISO/IEC για τη με απώλειες και χωρίς απώλειες συμπίεση του συνεχής-τόνου, του χρώματος ή της κλίμακας του γκρι, εικόνες. Αυτό το τμήμα συζητά πολύ εν συντομία τα κύρια συστατικά του χωρίς απώλειες τρόπου των προτύπων JPEG (γνωστών ως χωρίς απώλειες JPEG). Τα χωρίς απώλειες πρότυπα κωδικοποίησης JPEG μπορούν να αντιπροσωπευθούν από την άποψη της γενικής δομής κωδικοποίησης του σχεδίου ως εξής. Στάδιο 1: η γραμμική πρόβλεψη-διαφορική κωδικοποίηση (DPCM) χρησιμοποιείται για να διαμορφώσει τα υπόλοιπα πρόβλεψης. Τα υπόλοιπα πρόβλεψης έχουν συνήθως μια χαμηλότερη εντροπία από την αρχική εικόνα εισαγωγής. Κατά συνέπεια, οι υψηλότερες αναλογίες συμπίεσης μπορούν να επιτευχθούν. Στάδιο 2: το υπόλοιπο πρόβλεψης χαρτογραφείται σε ένα ζευγάρι των συμβόλων (κατηγορία, μέγεθος), όπου η κατηγορία συμβόλων δίνει τον αριθμό κομματιών που απαιτούνται για να κωδικοποιήσουν το μέγεθος. Στάδιο 3: για κάθε ζευγάρι των συμβόλων (κατηγορία, μέγεθος), η κωδικοποίηση Huffman χρησιμοποιείται για να κωδικοποιήσει την κατηγορία συμβόλων. Το μέγεθος συμβόλων κωδικοποιείται έπειτα χρησιμοποιώντας ένα δυαδικό κωδικολέξη ( κωδικολέξη (codeword)) του οποίου μήκος δίνεται από την κατηγορία αξίας. Η αριθμητική κωδικοποίηση μπορεί επίσης να χρησιμοποιηθεί αντί της κωδικοποίησης Huffman. 39

44 Συμπίεση χωρίς απώλειες ΒΙΒΛΙΟΓΡΑΦΙΑ 1. Yun Q. Shi, Huifang Sun, Image and Video Compression for Multimedia Engineering, Fundamentals, Algorihms and Standards, Second Edition, CRC Press, Atul Puri, Tsuhan Chen, Multimedia, Systems, Standards and Networks, Marcel Dekker, Document and Image Compression, Mauro Barni, CRC-Taylor and Francis 40

45 JPEG πρότυπο συμπίεσης χωρίς απώλειες ΚΕΦΑΛΑΙΟ 3 Το πρότυπο συμπίεσης εικόνας JPEG χωρίς απώλειες 3.1 Εισαγωγή Παρόλο που η επιτροπή (JPEG) του Οργανισμού Διεθνών Προτύπων είναι καλύτερα γνωστή για την ανάπτυξη της πανταχού παρούσας συμπίεσης με απώλεια, η οποία είναι γνωστή σήμερα σαν συμπίεσης JPEG, ανέπτυξε επίσης μερικά σημαντικά πρότυπα συμπίεσης εικόνας χωρίς απώλεια. Ο πρώτος αλγόριθμος χωρίς απώλεια υιοθετήθηκε από την επιτροπή JPEG, που είναι γνωστός σαν JPEG χωρίς απώλεια (JPEG lossless), αναπτύχθηκε και τυποποιήθηκε μαζί με το πολύ γνωστό πρότυπο με απώλειες. Ωστόσο, είχε πολύ λίγα κοινά με το πρότυπο απώλειας που βασίζεται στο διακριτό μετασχηματισμό συνημιτόνου (DCT). Οι αρχικοί στόχοι που τέθηκαν από την επιτροπή JPEG το 1988 δήλωσαν ότι το πρότυπο με απώλεια πρέπει να έχει επίσης μια μέθοδο χωρίς απώλεια η οποία να δίνει περίπου 2 προς 1 συμπίεση σε εικόνες παρόμοιες με την ομάδα αρχικών δοκιμών. Ίσως να θεωρήθηκε επίσης ότι τόσο η με απώλεια όσο και η χωρίς απώλεια συμπίεση μπορούν να επιτευχθούν από έναν και μόνο αλγόριθμο που θα δουλεύει με διαφορετικές παραμέτρους. Στην πραγματικότητα, μερικές από τις προτάσεις που υποβλήθηκαν είχαν αυτή ακριβώς την ίδια δυνατότητα. Ωστόσο, με δεδομένη την ανώτερη απόδοση των αλγορίθμων που βασίζονταν στον DCT για την συμπίεση με απώλεια, και δεδομένου του γεγονότος ότι λάθη προκλήθηκαν από την εφαρμογή της DCT με αριθμητική πεπερασμένης ακρίβειας απέκλεισαν την πιθανότητα της συμπίεσης χωρίς απώλειες, οπότε υιοθετήθηκε ένας τελείως διαφορετικός αλγόριθμος για την συμπίεση χωρίς απώλεια. Ο αλγόριθμος που επιλέχθηκε ήταν μια πολύ απλή τεχνική που χρησιμοποιεί διαφορική διαμόρφωση παλμικού κώδικα (DPCM-differential pulse code modulation) μαζί με κωδικοποίηση Huffman ή αριθμητική κωδικοποίηση για να κωδικοποιήσει τα λάθη πρόβλεψης. Παρόλο που ο JPEG αλγόριθμος χωρίς απώλεια που χρησιμοποιεί κωδικοποίηση Huffman έχει υιοθετηθεί κατά ένα μικρό μέρος και κάποιες δημόσιες εφαρμογές αυτού είναι διαθέσιμες παντού, ο JPEG αλγόριθμος χωρίς απώλειες με βάση την αριθμητική κωδικοποίηση δεν έχει χρησιμοποιηθεί σχεδόν καθόλου μέχρι σήμερα, παρά το γεγονός ότι 41

46 JPEG πρότυπο συμπίεσης χωρίς απώλειες παρέχει περίπου 10% έως 15% καλύτερη συμπίεση. Ίσως αυτό να οφείλεται στα θέματα πνευματικής ιδιοκτησίας που περιβάλλουν την αριθμητική κωδικοποίηση και με τα θέματα πολυπλοκότητας υπολογισμών και κατανόησης που σχετίζονται με αυτή. Για να ασχοληθεί με αυτό το πρόβλημα, η επιτροπή JPEG ξαναείδε το θέμα το 1994 και ξεκίνησε την ανάπτυξη ενός νέου προτύπου συμπίεσης εικόνας χωρίς απώλειες. Μια πρόταση για ένα νέο αντικείμενο εγκρίθηκε στις αρχές του 1994, και ονομάστηκε Επόμενης Γενιάς Συμπίεση Χωρίς Απώλεια των Σταθερών Εικόνων Συνεχούς Τόνου (Next Generation Lossless Compression of Continuous-Tone Still Pictures). Το Μάρτιο του 1994 προσκλήθηκαν προτάσεις καθορισμού των αλγορίθμων για συμπίεση με απώλειες και σχεδόν χωρίς απώλειες. Ανακοινώθηκε ότι οι αλγόριθμοι πρέπει να: παρέχουν χωρίς απώλεια και σχεδόν χωρίς απώλεια συμπίεση. στοχεύουν σε ακίνητες εικόνες των 2 έως 16 bit. εφαρμόζονται σε μια μεγάλη ποικιλία περιεχομένων, μην επιβάλλουν περιορισμούς μεγέθους και βάθους, εφαρμόζονται σε πεδία όπως ιατρικά, δορυφορικά, αρχειακά κ.λ.π. υπάγονται σε εφαρμογή με λογικά χαμηλή πολυπλοκότητα, βελτιώνουν σημαντικά την απόδοση των τρεχόντων χωρίς απώλεια προτύπων, και να δουλεύουν με ένα και μόνο πέρασμα μέσω των δεδομένων. Τον Ιούλιο του 1995, υποβλήθηκε ένα σύνολο εννέα προτάσεων. Οι εννέα υποβαλλόμενες προτάσεις εκτιμήθηκαν από τον Οργανισμό Διεθνών Προτύπων (ISO) σε ένα μεγάλο σύνολο εικόνων χρησιμοποιώντας ένα αντικειμενικό μέτρο απόδοσης το οποίο είχε ανακοινωθεί πριν τον διαγωνισμό. Οι επτά από τους εννιά προτάσεις που υποβλήθηκαν χρησιμοποιούσαν μια παραδοσιακή προσέγγιση με βάση την DPCM προσέγγιση που έμοιαζε πολύ με το αρχικό πρότυπο JPEG χωρίς απώλεια, παρόλο που περιείχαν πιο εξεζητημένες τεχνικές απεικόνισης του περιεχομένου για την κωδικοποίηση λαθών πρόβλεψης. Οι άλλες δύο προτάσεις ήταν βασισμένες σε αντιστρέψιμη κωδικοποίηση ακέραιου μετασχηματισμού wavelet. Ωστόσο, από τον πρώτο γύρο των εκτιμήσεων, ήταν ξεκάθαρο ότι οι προτάσεις που ήταν βασισμένες σε κωδικοποίηση μετατροπής δεν παρείχαν αναλογίες συμπίεσης τόσο καλές όσο εκείνες των προτεινόμενων αλγορίθμων που ήταν βασισμένοι στις τεχνικές DPCM με βάση την πρόβλεψη. Ο καλύτερος αλγόριθμος στον πρώτο γύρο ήταν ο CALIC, μια τεχνική πρόβλεψης με βάση του περιεχόμενο. Μετά από μερικούς γύρους σύγκλισης ο τελικός βασικός αλγόριθμος που υιοθετήθηκε για τυποποίηση ήταν βασισμένος στην πρόταση Hewlett Packard LOCO I 1p, και ένα DIS (Προσχέδιο Διεθνούς Προτύπου) εγκρίθηκε από την επιτροπή το Το νέο πρότυπο 42

47 JPEG πρότυπο συμπίεσης χωρίς απώλειες σχεδίου ονομάστηκε JPEG-LS ώστε να το διαχωρίζουν από τα προηγούμενα με απώλεια και χωρίς απώλεια πρότυπα. Η βάση του JPEG-LS είναι ένας μοντέρνος και πολύπλοκος αλγόριθμος συμπίεσης εικόνας χωρίς απώλεια, ο οποίος παρά την υπολογιστική απλότητά του, δίνει μια απόδοση η οποία βρίσκεται πολύ κοντά σε αυτή των καλύτερων γνωστών τεχνικών όπως είναι η CALIC. Το JPEG-LS περιέχει τον πυρήνα του αλγόριθμου και πολλές επεκτάσεις αυτού τώρα είναι υπό τυποποίηση. Στο υπόλοιπο μέρος αυτού του κεφαλαίου τα διαφορετικά πρότυπα συμπίεσης εικόνας χωρίς απώλεια που αναπτύχθηκαν από την επιτροπή JPEG περιγράφονται με μεγαλύτερη λεπτομέρεια. Στο τμήμα 2 παρουσιάζονται και η κωδικοποίηση Huffman και η αριθμητική κωδικοποίηση του αρχικού προτύπου JPEG χωρίς απώλεια. Στο τμήμα 3 περιγράφεται το JPEG-LS. Στο ίδιο τμήμα συζητάμε εν συντομία διαφορετικές επεκτάσεις που έχουν προταθεί στον βασικό αλγόριθμο JPEG-LS και τώρα υπόκεινται στη διαδικασία τυποποίησης. Τέλος, στο τμήμα 4 συζητούμε την ολοκλήρωση της με απώλεια και χωρίς απώλεια συμπίεσης που προτάθηκε στο JPEG 2000, ένα νέο πρότυπο που βρίσκεται υπό ανάπτυξη από την επιτροπή JPEG Τα Αρχικά Πρότυπα JPEG Χωρίς Απώλεια Όπως αναφέρθηκε προηγουμένως, τα αρχικά πρότυπα JPEG χωρίς απώλεια που βασίζονται είτε σε κωδικοποίηση Huffman είτε αριθμητική κωδικοποίηση χρησιμοποιούν μια προσέγγιση πρόβλεψης. Αυτό σημαίνει, ότι ο αλγόριθμος σαρώνει μια εικόνα εισαγωγής, κατά γραμμή, από αριστερά προς τα δεξιά, προβλέποντας κάθε κουκίδα σαν ένα γραμμικό συνδυασμό των προηγουμένων επεξεργασμένων κουκίδων και κωδικοποιεί το λάθος πρόβλεψης. Εφόσον ο αποκωδικοποιητής επεξεργάζεται επίσης της εικόνα με την ίδια σειρά, μπορεί να κάνει την ίδια πρόβλεψη και να ανακτήσει την πραγματική τιμή κουκίδας με βάση το λάθος πρόβλεψης. Το πρότυπο επιτρέπει στον χρήστη να επιλέξει ανάμεσα σε οκτώ διαφορετικούς προβλέποντες (predictors) οι οποίοι είναι ταξινομημένοι στον πίνακα 1. Η σημείωση που χρησιμοποιήθηκε για τον ορισμό των γειτονικών κουκίδων που χρησιμοποιήθηκαν κατά την άφιξη σε μια πρόβλεψη φαίνονται στο σχήμα 1 με τη μορφή δισδιάστατων γειτονικών κουκίδων. Μια υποομάδα αυτής της «γειτονιάς» χρησιμοποιείται γειτονικά για πρόβλεψη ή για ορισμό περιεχομένου από τις περισσότερες τεχνικές συμπίεσης εικόνας χωρίς απώλεια. Στο υπόλοιπο μέρος της εργασίας πρέπει με συνέπεια να χρησιμοποιήσουμε αυτή τη σημείωση για να δείξουμε τους συγκεκριμένους γείτονες της κουκίδας Ρ(i,j) στην iοστή γραμμή και στην jστή στήλη. 43

48 JPEG πρότυπο συμπίεσης χωρίς απώλειες Η πρόβλεψη βασικά προσπαθεί να συλλάβει την διαισθητική ιδέα ότι η συνάρτηση της έντασης των τυπικών εικόνων είναι συνήθως αρκετά «λεία» σε μια δεδομένη τοπική περιοχή και συνεπώς η τιμή σε οποιαδήποτε δεδομένη κουκίδα είναι αρκετά παρόμοια με τους γείτονές της. Σε κάθε περίπτωση, αν η πρόβλεψη που έγινε είναι λογικά ακριβής τότε το προβλεπτικό λάθος έχει σημαντικά μικρότερο μέγεθος και διαφοροποίηση όταν συγκρίνεται με το αρχικό σήμα, και μπορεί να κωδικοποιηθεί αποδοτικά με μια κατάλληλη μεταβλητού μήκους τεχνική κωδικοποίησης. Στο JPEG χωρίς απώλεια, τα προβλεπτικά λάθη μπορούν να κωδικοποιηθούν είτε με κωδικοποίηση Huffman είτε με αριθμητική κωδικοποίηση, με τους κώδικες και για τις δύο να παρέχονται από το πρότυπο. Στο υπόλοιπο μέρος αυτού του τμήματος επεξεργαζόμαστε τις διαφορετικές τεχνικές που απαιτούνται ή προτείνονται από το πρότυπο για την κωδικοποίηση Huffman και για την αριθμητική κωδικοποίηση Διαδικασίες κωδικοποίησης Huffman Στην εκδοχή της κωδικοποίησης Huffman, βασικά δεν χρησιμοποιείται κανένα μοντέλο λάθους. Τα προβλεπτικά λάθη υποτίθεται ότι είναι ανεξάρτητα και κατανέμονται πανομοιότυπα (i.i.d independent and identically distributed) και κωδικοποιούνται με τον πίνακα Huffman που παρέχεται στη σειρά των bit χρησιμοποιώντας το συγκεκριμένο συντακτικό. Η διαδικασία κωδικοποίησης Huffman που ορίζεται από το πρότυπο για την κωδικοποίηση προβλεπτικών λαθών είναι πανομοιότυπη με αυτή που χρησιμοποιείται για την κωδικοποίηση των διαφορών του συντελεστή DC στον κωδικό χωρίς απώλεια. 44

49 JPEG πρότυπο συμπίεσης χωρίς απώλειες Εικόνα 4. Σημειολογία που χρησιμοποιείται για τοπροσδιορισμό της γειτονιάς των pixels του τρέχοντος pixel στη θέση P[i,j]. Εφόσον το μέγεθος του αλφάβητου για τα προβλεπτικά λάθη είναι το διπλάσιο του μεγέθους του αρχικού αλφάβητου, ένας κωδικός Huffman για ολόκληρο το αλφάβητο θα απαιτούσε έναν ατόπως μεγάλο πίνακα κωδικού. Ένας πολύ μεγάλος πίνακας Huffman μπορεί να οδηγήσει σε πολλαπλά προβλήματα. Πρώτον, ένας μεγαλύτερος κώδικας θα απαιτούσε περισσότερα bits για αναπαράσταση. Στο JPEG, αυτό δεν είναι πρόβλημα, καθώς ένας ειδικός περιορισμένος όσον αφορά το μήκος κωδικός Huffman χρησιμοποιείται που μπορεί να οριστεί από έναν μικρό και καθορισμένο αριθμό bits. Αυτό που είναι πιο σημαντικό, ωστόσο, είναι ότι οι μεγάλοι πίνακες Huffman μπορεί να οδηγήσουν σε σοβαρές δυσκολίες όσον αφορά την εφαρμογή του κωδικού. Για να μπορέσει να μειωθεί το μέγεθος του πίνακα Huffman, το κάθε προβλεπτικό λάθος (ή η διαφορά DC στον κωδικό με απώλεια) κατηγοριοποιείται σε μια «κατηγορία μεγέθους» και η ετικέτα της κατηγορίας κωδικοποιείται με κωδικοποίηση Huffman. Εφόσον η κάθε κατηγορία απαρτίζεται από έναν πολλαπλό αριθμό συμβόλων, τα μη κωδικοποιημένα «επιπλέον bits» εκπέμπονται επίσης που αναγνωρίζουν το ακριβές σύμβολο (προβλεπτικό λάθος στον χωρίς απώλεια κωδικό και διαφορά DC στον με απώλεια κωδικό) μέσα στην κατηγορία. Ο πίνακας 2 δείχνει 17 διαφορετικές κατηγορίες που ορίζονται. Όπως μπορεί να φανεί, εκτός από την δεκάτη έβδομη (τελευταία) κατηγορία, η κάθε κατηγορία k περιέχει 2 k μέλη ( 2 k-1,, 2 k ) και συνεπώς k επιπλέον bits θα απαιτηθούν για να ορίσουν ένα συγκεκριμένο σύμβολο μέσα στη κατηγορία. 45

50 JPEG πρότυπο συμπίεσης χωρίς απώλειες Τα επιπλέον bits για τον ορισμό του προβλεπτικού λάθους e στην κατηγορία k δίνονται από τον αριθμό k bit αν από e την 0 χαρτογράφηση e e 0 n k 2 1 e e 0 Για παράδειγμα, το προβλεπτικό λάθος 155 θα κωδικοποιηθεί από τον κωδικό Huffman για την κατηγορία 8 και τα οκτώ επιπλέον bits ( ) (ακέραιος 100) θα μεταδοθεί για να ορίσει το 155 μέσα στα 256 διαφορετικά στοιχεία που βρίσκονται μέσα στην ίδια κατηγορία. Αν το προβλεπτικό λάθος ήταν 155, τότε ( ), ακέραιος 155, θα μεταδοθεί σαν επιπλέον bits. Στην πράξη, η παραπάνω χαρτογράφηση μπορεί επίσης να εφαρμοστεί χρησιμοποιώντας αναπαράσταση k-bit του e αν το e είναι θετικό και το συμπλήρωμά του αν είναι αρνητικό. Ο κωδικός Huffman που χρησιμοποιήθηκε για να κωδικοποιήσει την ετικέτα της κατηγορίας πρέπει να εκπληρώσει τις ακόλουθες συνθήκες: 1. Ο κωδικός Huffman είναι ένας κώδικας περιορισμένου μήκους. Το μέγιστο μήκος του κώδικα για ένα σύμβολο είναι 16 bits. 2. Ο κωδικός Huffman είναι ένας κανονικός κώδικας. Οι k λέξεις κλειδιά του δεδομένου μήκους n αναπαριστώνται από τους αριθμούς των n-bit x+1, x+2,, x+k, όπου το x εξάγεται από αριστερή μετατόπιση της μεγαλύτερης αριθμητικής τιμής που αναπαριστάται από μια λέξη κωδικό των (n-1) bit. Οι παραπάνω δύο συνθήκες διευκολύνουν κατά πολύ τον ορισμό ενός πίνακα Huffman και μια γρήγορη εφαρμογή των διαδικασιών κωδικοποίησης και αποκωδικοποίησης. Σε μια σειρά bit του JPEG, ένας πίνακας Huffman ορίζεται από δύο λίστες, τις BITS και HUFFVAL. H ΒΙΤS είναι μια σειρά των 16 bit που περιέχεται στη σειρά των λέξεων κωδικών, όπου το byte n απλά δίνει των αριθμών των λέξεων κωδικών που έχουν μήκος n και είναι παρούσες στον πίνακα Huffman. Η HUFFVAL είναι μια λίστα με τιμές συμβόλων με σειρά αυξανόμενου μήκους. Αν δύο σύμβολα έχουν το ίδιος μήκος κωδικού, τότε το σύμβολο που αντιστοιχεί στην μικρότερη αριθμητική τιμή γράφεται πρώτο. Με δεδομένους αυτούς τους δύο πίνακες, ο πίνακας του κωδικού Huffman μπορεί να αναδομηθεί με ένα σχετικά απλό τρόπο. Το πρότυπο παρέχει μια παραδειγματική διαδικασία για να το κάνει αυτό στους πληροφοριακούς τομείς του αλλά δεν προστάζει τη χρήση του εκτός από την λειτουργική έννοια. Δηλαδή, δεδομένου των λιστών BITS και HUFFVAL, πρέπει να αφιχθούν διαφορετικοί αποκωδικοποιητές στην ίδια ανακατασκευή, ανεξάρτητα από την διαδικασία που 46

51 JPEG πρότυπο συμπίεσης χωρίς απώλειες χρησιμοποιείται. Στην πράξη, πολλές εφαρμογές του με απώλεια κωδικού δεν εφαρμόζουν την διαδικασία αναδόμησης και απ ευθείας εισάγουν τον πίνακα Huffman. Επιπλέον, το πρότυπο καθορίζει μόνο το συντακτικό που χρησιμοποιείται για την αναπαράσταση ενός κωδικού Huffman. Δεν ορίζει πως θα φθάσουμε στον συγκεκριμένο περιορισμένου μήκους κωδικό που θα χρησιμοποιηθεί. Ένας απλός τρόπος για να φθάσουμε σε έναν περιορισμένου μήκους κωδικό είναι να επιβάλλουμε οι πιθανότητες συμβάντος για οποιοδήποτε συγκεκριμένο σύμβολο να μην είναι μικρότερες από 2 l και στη συνέχεια να «τρέξουμε» των κανονικό αλγόριθμο Huffman. Αυτό θα εξασφαλίσει ότι οποιαδήποτε λέξη κωδικός δεν περιέχει περισσότερα από l bits. Πρέπει να σημειωθεί ότι παρόλο που αυτή η διαδικασία είναι απλή, δεν δημιουργεί απαραίτητα έναν βέλτιστο περιορισμένου μήκους κωδικό. Αλγόριθμοι για την κατασκευή ενός βέλτιστου περιορισμένου μήκους κωδικοί έχουν προταθεί στη βιβλιογραφία. Στην πράξη, ωστόσο, η παραπάνω απλή διαδικασία δουλεύει ικανοποιητικά με δεδομένο το μικρό μέγεθος αλφάβητου για τον πίνακα Huffman που χρησιμοποιείται στο JPEG. Επιπλέον, το πρότυπο επίσης απαιτεί η ακολουθία των bit όλων των 1 δεν είναι λέξη κωδικός για οποιοδήποτε σύμβολο. Όταν μια εικόνα απαρτίζεται από πολλαπλά συστατικά, όπως οι έγχρωμες εικόνες, ξεχωριστοί πίνακες Huffman μπορεί να ορισθούν για κάθε συστατικό. Τα πληροφοριακά τμήματα του προτύπου παρέχουν παραδείγματα πινάκων Huffman για συστατικά φωτεινότητας (luminance) και χρωματότητας (chrominance). Δουλεύουν αρκετά καλά για συμπίεση με απώλεια σε μια μεγάλη ποικιλία εικόνων και συχνά χρησιμοποιούνται στην πράξη. Οι περισσότερες λογισμικές εφαρμογές του με απώλεια προτύπου επιτρέπουν την χρήση αυτών των «εξ-ορισμού - default» πινάκων, επιτρέποντας σε μια εικόνα να κωδικοποιηθεί σε ένα και μόνο πέρασμα. Ωστόσο, εφόσον αυτοί οι πίνακες κύρια σχεδιάστηκαν για την κωδικοποίηση των διαφορών του συντελεστή DC για τον με απώλεια κωδικό, μπορεί να μην λειτουργούν καλά με την χωρίς απώλεια συμπίεση. Για την χωρίς απώλεια συμπίεση, ένας συνηθισμένος πίνακας κωδικού Huffman μπορεί να οριστεί στη σειρά των bit μαζί με την συμπιεσμένη εικόνα. Παρόλο που αυτή η προσέγγιση απαιτεί δύο περάσματα μέσω των δεδομένων, δεν δίνει σημαντικά καλύτερη συμπίεση. Τέλος πρέπει να σημειωθεί ότι οι διαδικασίες για την κωδικοποίηση Huffman είναι κοινές τόσο στα με απώλεια όσο και στα χωρίς απώλεια πρότυπα Διαδικασίες αριθμητικής κωδικοποίησης Αντίθετα με την εκδοχή που βασίζεται στην κωδικοποίηση Huffman, η οποία υποθέτει τα δείγματα των προβλεπτικών λαθών να είναι ανεξάρτητα και πανομοιότυπα κατανεμημένα, η 47

52 JPEG πρότυπο συμπίεσης χωρίς απώλειες εκδοχή της αριθμητικής κωδικοποίησης χρησιμοποιεί κβαντοποιημένα προβλεπτικά λάθη σε γειτονικές κουκίδες σαν περιεχόμενα για υπό συνθήκη κωδικοποίηση του προβλεπτικού λάθους. Αυτό είναι απλοποιημένη μορφή της απεικόνισης λάθους που προσπαθεί να συλλάβει την εναπομείνασα δομή στο προβλεπτικό υπόλοιπο. Η κωδικοποίηση μέσα σε κάθε περιεχόμενο γίνεται με έναν δυαδικό αριθμητικό κωδικοποιητή μέσω της ανάλυσης του προβλεπτικού λάθους σε μια ακολουθία δυαδικών αποφάσεων. Η πρώτη δυαδική απόφαση καθορίζει αν το προβλεπτικό λάθος είναι μηδέν. Αν δεν είναι μηδέν, τότε το δεύτερο βήμα καθορίζει το σημάδι του λάθους. Τα επακόλουθα βήματα βοηθούν στην κατηγοριοποίηση του μεγέθους του προβλεπτικού λάθους σε μια από τις ομάδες της εμβέλειας και τα τελικά bits που καθορίζουν το ακριβές μέγεθος του προβλεπτικού λάθους μέσα στην εμβέλεια στέλνονται μη κωδικοποιημένα. Ο κωδικοποιητής QM χρησιμοποιείται για την κωδικοποίηση κάθε δυαδικής απόφασης. Εφόσον η εκδοχή αριθμητικής κωδικοποίησης του προτύπου σπάνια χρησιμοποιείται, δεν μένουμε στις λεπτομέρειες των διαδικασιών που χρησιμοποιούνται για την αριθμητική κωδικοποίηση και παρέχουμε μόνο μια σύντομη περίληψη. Ο κωδικοποιητής QM είναι μια τροποποίηση ενός προσαρμόσιμου δυαδικού αριθμητικού κωδικοποιητή που ονομάζεται κωδικοποιητής Q, ο οποίος με τη σειρά του είναι μια προέκταση ενός άλλου δυαδικού προσαρμόσιμου αριθμητικού κωδικοποιητή που ονομάζεται λοξός (skew) κωδικοποιητής. Αντί να ασχολείται άμεσα με τα 0 και τα 1 ο κωδικοποιητής QM τα χαρτογραφεί σε ένα πιο πιθανό σύμβολο (MPS) και σε ένα λιγότερο πιθανό σύμβολο (LPS). Αν το 1 αναπαριστά μαύρες κουκίδες και ο 0 αναπαριστά λευκές κουκίδες, τότε σε μια κυρίως μαύρη εικόνα, το 1 θα είναι το περισσότερο πιθανό σύμβολο, ενώ σε μια εικόνα με κυρίως λευκές περιοχές το 0 θα είναι το περισσότερο πιθανό σύμβολο. Για να μπορέσει η εφαρμογή να γίνει απλή, η επιτροπή συνέστησε αρκετές αποκλίσεις από τον πρότυπο αλγόριθμο αριθμητικής κωδικοποίησης. Οι ενημερωμένες εξισώσεις στην αριθμητική κωδικοποίηση που θα χρησιμοποιηθούν για την αναπαράσταση της τρέχουσας σειράς των συμβόλων περιλαμβάνουν πολλαπλασιασμούς που είναι ακριβοί τόσο σε υλικό όσο και σε λογισμικό. Στον κωδικοποιητή QM, αυτές αποφεύγονται και επανακλιμακώσεις του διαστήματος παίρνουν τη μορφή επαναλαμβανόμενου διπλασιασμού, που αντιστοιχεί σε μια αριστερή μετακίνηση στην δυαδική αναπαράσταση. Η πιθανότητα q c του λιγότερου πιθανού συμβόλου για το περιεχόμενο C αναβαθμίζεται κάθε φορά που πραγματοποιείται μια επανακλιμάκωση και το περιεχόμενο C είναι ενεργό. Μια παραγγελμένη λίστα τιμών της q c κρατείται σε ένα πίνακα. Κάθε φορά που γίνεται μια επανακλιμάκωση, η τιμή της q c αλλάζει στην επόμενη υψηλότερη ή χαμηλότερη τιμή στον πίνακα, με βάση το αν η επανακλιμάκωση 48

53 JPEG πρότυπο συμπίεσης χωρίς απώλειες προκαλείται από την εμφάνιση ενός λιγότερο πιθανού συμβόλου ή ενός περισσότερο πιθανού συμβόλου. Σε μια μη σταθερή περίσταση, μπορεί το σύμβολο που έχει αποδοθεί σε ένα λιγότερο πιθανό σύμβολο στην πραγματικότητα να εμφανίζεται περισσότερο συχνά απ ότι το σύμβολο που αποδόθηκε σε ένα περισσότερο πιθανό σύμβολο. Σε αυτή την περίσταση, οι αποδόσεις αντιστρέφονται. Η δοκιμή γίνεται κάθε φορά που πραγματοποιείται μια επανακλιμάκωση. Ο αποκωδικοποιητής για τον κωδικοποιητή QM λειτουργεί με περίπου τον ίδιο τρόπο όπως και ο κωδικοποιητής, μιμούμενος την λειτουργία του κωδικοποιητή JPEG-LS Το νέο χωρίς απώλεια πρότυπο Όπως αναφέρθηκε νωρίτερα, ο αλγόριθμος του JPEG-LS, όπως και ο πρόγονός του, είναι μια προβλεπτική τεχνική. Ωστόσο, υπάρχουν σημαντικές διαφορές, όπως περιγράφεται παρακάτω. 1. Αντί να χρησιμοποιεί έναν απλό γραμμικό predictor, το JPEG-LS χρησιμοποιεί έναν μη γραμμικό predictor που προσπαθεί να ανιχνεύσει την παρουσία ακμών περνώντας μέσω της τρέχουσας κουκίδας και ρυθμίζει την πρόβλεψη. Αυτό έχει σαν αποτέλεσμα μια σημαντική βελτίωση στην απόδοση του προβλεπτικού βήματος. 2. Όπως και το αριθμητικό χωρίς απώλεια JPEG, το JPEG-LS χρησιμοποιεί κάποια απλή αλλά πολύ αποδοτική απεικόνιση περιεχομένου των προβλεπτικών λαθών πριν από την κωδικοποίηση. 3. Το βασικό JPEG-LS χρησιμοποιεί κωδικούς Golomb Rice και κωδικούς Huffman για συγκεκριμένες γεωμετρικές κατανομές οι οποίες εξυπηρετούν καλά όσον αφορά τον χαρακτηρισμό της διανομής των προβλεπτικών λαθών. Παρόλο που οι κωδικοί JPEG-LS είναι γνωστοί για αρκετό καιρό, το JPEG-LS χρησιμοποιεί μερικές πολύ αποδοτικές τεχνικές για να υπολογίσει προσαρμοστικά την παράμετρο για να χρησιμοποιηθεί ο κώδικας Golomb Rice σε ένα δεδομένο περιεχόμενο. 4. Για να μπορέσει αποδοτικά να κωδικοποιήσει χαμηλής εντροπίας εικόνες ή περιοχές, το JPEG-LS χρησιμοποιεί έναν απλό αλφαβητικό μηχανισμό προέκτασης γυρίζοντας σε μια μέθοδο μήκους όταν συναντάται μια ομοιόμορφη περιοχή. Η κωδικοποίηση μακριού μήκους που χρησιμοποιείται είναι και πάλι μια προέκταση των κωδικών Golomb και παρέχει σημαντική βελτίωση στην απόδοση για υψηλά συμπιεσμένες εικόνες. 5. Για εφαρμογές που απαιτούν υψηλότερες αναλογίες συμπίεσης, το JPEG-LS παρέχει μια σχεδόν χωρίς απώλεια μέθοδο η οποία εγγυάται ότι κάθε αναδομημένη κουκίδα θα βρίσκεται μέσα σε μια απόσταση k από την αρχική της τιμή. Η σχεδόν χωρίς απώλεια συμπίεση επιτυγχάνεται από μια απλή ομοιόμορφη κβαντοποίηση του προβλεπτικού λάθους. 49

54 JPEG πρότυπο συμπίεσης χωρίς απώλειες Μια περίληψη του βασικού αλγορίθμου JPEG-LS, φαίνεται στο σχήμα 2. Στο υπόλοιπο μέρος αυτού του τμήματος περιγράφουμε με περισσότερη λεπτομέρεια κάθε ένα από τα βήματα που περιλαμβάνονται στον αλγόριθμο και μερικές από τις προεκτάσεις οι οποίες είναι τώρα υπό επεξεργασία τυποποίησης. Εικόνα 5. Επισκόπηση του βασικού JPEG-LS 50

55 JPEG πρότυπο συμπίεσης χωρίς απώλειες Το προβλεπτικό βήμα Το JPEG-LS χρησιμοποιεί έναν πολύ απλό και αποδοτικό predictor. Ο predictors ανίχνευσης μέσης άκρης (MED-Median Edge Detection), ο οποίος προσαρμόζεται όταν υπάρχει παρουσία τοπικών ακmών. Ο ΜED ανιχνεύει οριζόντιες ή κάθετες ακμές εξετάζοντας τους Βόρειος Β, Δυτικούς Δ, και Βορειοδυτικούς ΒΔ «γείτονες» του τρέχοντος pixel Ρ(i,j). Η Βόρεια (Δυτική) κουκίδα χρησιμοποιείται σαν μια πρόβλεψη μια κάθετης (οριζόντιας) ακμής. Στην περίπτωση που δεν ισχύει κανένα από τα δύο, χρησιμοποιείται επίπεδη παρεμβολή για να υπολογίσει την προβλεπτική τιμή. Συγκεκριμένα, η πρόβλεψη εκτελείται σύμφωνα με τις ακόλουθες εξισώσεις: (, W ) NW max( N, W ) ^ P[ i, j].(, W ) NW min( N, W ) N W NW ά Ο predictors MED είναι βασικά μια ειδική περίπτωση του μέσου προσαρμόσιμου predictor (ΜΑΡ-Median Adaptive Predictor), που προτάθηκε πρώτα από τον Martucci το Ο Martucci πρότεινε τον predictor ΜΑΡ σαν έναν μη γραμμικό προσαρμόσιμο predictor που επιλέγει το μέσο σαν μια ομάδα τριών προβλέψεων ώστε να προβλέψει την τρέχουσα κουκίδα. Ένας τρόπος ερμηνείας ενός τέτοιου predictor είναι ότι πάντα επιλέγει είτε τον καλύτερο είτε τον δεύτερο καλύτερο predictor ανάμεσα στους τρεις υποψήφιους προλογείς. Ο Martucci ανέφερε τα καλύτερα αποτελέσματα με τους ακόλουθους τρεις προλογείς, στην οποία περίπτωση είναι εύκολο να δούμε ότι ο MAP καταλήγει να είναι ο predictors ΜΕD. 1. ^ P[ i, j] N 2. P ^ [ i, j] W 3. P ^ [ i, j] N W NW 51

56 JPEG πρότυπο συμπίεσης χωρίς απώλειες Σε μια εκτεταμένη εκτίμηση, οι Memon και ο Wu παρατήρησαν ότι ο predictor MED δίνει μια απόδοση που είναι ανώτερη ή σχεδόν τόσο καλή όπως εκείνη των αρκετών πρότυπων προβλεπτικών τεχνικών, πολλές από τις οποίες είναι σημαντικά πιο πολύπλοκες Σχηματισμός περιεχομένου Οι κλίσεις από μόνες τους δεν μπορούν επαρκώς να χαρακτηρίσουν μερικές από τις πιο πολύπλοκες σχέσεις ανάμεσα στην προβλεπόμενη κουκίδα P [ i, j] και τη περιβάλλουσα περιοχή. Η απεικόνιση του περιεχομένου του προβλεπτικού λάθους e = P [ i, j ] Ρ[i,j] μπορεί να εκμεταλλευτεί υψηλότερης διάταξης δομές όπως είναι τα σχέδια υφής και η τοπική δραστηριότητα στην εικόνα για παραπέρα οφέλη συμπίεσης. Τα περιεχόμενα στην JPEG-LS σχηματίζονται μέσω πρώτα υπολογισμού των ακόλουθων διαφορών: D 1 = NE N, D 2 = N NW D 3 = NW W, όπου η σημείωση για τον ορισμό των γειτόνων είναι όπως φαίνεται στο σχήμα 1. Οι διαφορές D 1, D 2 και D 3 στη συνέχεια κβαντοποιούνται σε εννέα περιοχές (από 4 έως +4) συμμετρικές σχετικά με την προέλευση της μιας από τις κβαντοποιημένες περιοχές (περιοχή 0) περιέχοντας μόνο την τιμή διαφοράς 0. Επιπλέον, τα περιεχόμενα του τύπου (q 1, q 2, q 3 ) και (-q 1, -q 2, -q 3 ) συγχωνεύονται με βάση την υπόθεση ότι Ρ (e q 1, q 2, q 3 ) = P (-e -q 1, -q 2, -q 3 ). Ο συνολικός αριθμός τω περιεχομένων καταλήγουν να είναι 9 3 ½ = 364. Αυτά τα περιεχόμενα στη συνέχεια χαρτογραφούνται στην ομάδα των ακεραίων [0,363] με έναν τρόπο ένας προς ένα. Το πρότυπο δεν ορίζει πως τα περιεχόμενα χαρτογραφούνται σε δείκτες και το αντίστροφο, αφήνοντάς το εξ ολοκλήρου στην εφαρμογή. Στην πραγματικότητα, δύο διαφορετικές εφαρμογές μπορεί να χρησιμοποιήσουν διαφορετικές λειτουργίες χαρτογράφησης και ακόμα και μια διαφορετική ομάδα δεικτών αλλά παρόλα αυτά η μια μπορεί να αποκωδικοποιήσει αρχεία που κωδικοποιήθηκαν από την άλλη. Το πρότυπο μόνο απαιτεί η αντιστοίχιση να γίνει μια προς μια Ακύρωση πόλλωσης (Bias Cancellation) Όπως περιγράφηκε νωρίτερα, στο αριθμητικό JPEG, τα περιεχόμενα χρησιμοποιούνται σαν υπό συνθήκη στάδια για την κωδικοποίηση προβλεπτικών λαθών. Μέσα σε κάθε στάδιο 52

57 JPEG πρότυπο συμπίεσης χωρίς απώλειες η συνάρτηση πυκνότητας πιθανότητας της σχετιζόμενης ομάδας των γεγονότων προσαρμοστικά υπολογίζεται από τα γεγονότα κρατώντας μετρήσεις εμφάνισης για κάθε περιεχόμενο. Ξεκάθαρα, για να συλληφθούν καλύτερα το προσχέδιο της δομής στα προβλεπτικά υπόλοιπα, κάποιος θα ήθελε να χρησιμοποιήσει έναν μεγάλο αριθμό περιεχομένων ή υπό συνθήκη σταδίων. Ωστόσο, όσο μεγαλύτερος είναι ο αριθμός των περιεχομένων, τόσο μεγαλύτερος είναι ο αριθμός των παραμέτρων (υπό συνθήκη πιθανότητες σε αυτή την περίπτωση) που πρέπει να υπολογιστούν με βάση την ίδια ομάδα δεδομένων. Αυτό μπορεί να οδηγήσει στο πρόβλημα του «σποραδικού περιεχόμενου» ή στο πρόβλημα «του υψηλού κόστους μοντέλου». Στο αριθμητικό χωρίς απώλεια JPEG αυτό το πρόβλημα λύνεται κρατώντας τον αριθμό των περιεχομένων μικρό και αναλύοντας το προβλεπτικό λάθος σε μια σειρά δυαδικών αποφάσεων, η κάθε μια από τις οποίες απαιτεί υπολογισμό μιας και μόνο τιμής πιθανότητας. Παρόλο που αυτό έχει σαν αποτέλεσμα στην ανακούφιση του προβλήματος του σποραδικού περιεχομένου, υπάρχουν δύο προβλήματα που προκαλούνται από μια τέτοια προσέγγιση. Πρώτον, η διατήρηση του αριθμού των υπό συνθήκη σταδίων σε ένα μικρό αριθμό αποτυγχάνει να συλλάβει αποδοτικά την δομή που είναι παρούσα στα προβλεπτικά λάθη και έχει σαν αποτέλεσμα την φτωχή απόδοση. Δεύτερον, η δυαδικότητα του προβλεπτικού λάθους απαιτεί τη χρήση ενός αριθμητικού κωδικοποιητή, που προσθέτει στην πολυπλοκότητα του κωδικοποιητή. Ο βασικός αλγόριθμος JPEG-LS χρησιμοποιεί μια διαφορετική λύση γι αυτό το πρόβλημα. Πρώτα απ όλα χρησιμοποιεί έναν σχετικά μεγάλο αριθμό περιεχομένων για να συλλάβει την δομή που είναι παρούσα στα προβλεπτικά λάθη. Ωστόσο, αντί να υπολογίζει την pdf των προβλεπτικών λαθών, μέσα σε κάθε περιεχόμενο C, μόνο η υπό συνθήκη προσδοκία Ε {e C} εκτιμάται, χρησιμοποιώντας τα αντίστοιχα δειγματικά μέσα ec _ μέσα σε κάθε περιεχόμενο. Αυτοί οι υπολογισμοί στη συνέχεια χρησιμοποιούνται για να ραφινάρουν περαιτέρω την πρόβλεψη πριν από την κωδικοποίηση εντροπίας, από έναν μηχανισμό τροφοδοσίας λάθους που ακυρώνει της προκαταλήψεις της πρόβλεψης σε διαφορετικά περιεχόμενα. Αυτή η διαδικασία ονομάζεται ακύρωση πολλώσεων (bias cancellation).. Επιπλέον, για την κωδικοποίηση των προβλεπτικών λαθών των οποίων έχουν ακυρωθεί οι πoλώσειεις, αντί να υπολογίσουν τις πιθανότητες κάθε πιθανού προβλεπτικού λάθους, το βασικό JPEG-LS βασικά υπολογίζει μια παράμετρο που εξυπηρετεί στο χαρακτηρισμό της συγκεκριμένης pdf που θα χρησιμοποιηθεί από μια καθορισμένη ομάδα pdfs. Αυτό εξηγείται με περισσότερη λεπτομέρεια στο επόμενο υποτμήμα. 53

58 JPEG πρότυπο συμπίεσης χωρίς απώλειες Μια ευθεία εφαρμογή της ακύρωσης των πολώσεων θα απαιτούσε συγκέντρωση των προβλεπτικών λαθών μέσα σε κάθε περιεχόμενο και τη διατήρηση των μετρήσεων της συχνότητας του αριθμού των εμφανίσεων για κάθε περιεχόμενο. Το συγκεντρωμένο προβλεπτικό λάθος μέσα σε ένα περιεχόμενο διαιρεμένο από τον αριθμό της συχνότητάς του στη συνέχεια θα χρησιμοποιηθεί σαν ένας υπολογισμός της προκατάληψης της πρόβλεψης μέσα στο περιεχόμενο. Ωστόσο, αυτή η λειτουργία διαίρεσης μπορεί να αποφευχθεί από μια απλή και έξυπνη λειτουργία που αναβαθμίζει τις μεταβλητές με ένα κατάλληλο τρόπο παράγοντας μέσα προβλεπτικά υπόλοιπα στο εσωδιάστημα [-0.5, 0.5]. Επίσης, εφόσον το JPEG-LS χρησιμοποιεί κώδικες Golomb Rice, οι οποίοι αποδίδουν μικρότερους κώδικες σε αρνητικές τιμές υπολοίπου απ ότι σε θετικές, η προκατάληψη ρυθμίζεται έτσι ώστε να παράγει μέσα προβλεπτικά υπόλοιπα στο εσωδιάστημα [-1,0] Κωδικοποίηση Golomb Rice Πριν από την ανάπτυξη του JPEG-LS, τα πιο δημοφιλή πρότυπα συμπίεσης, όπως είναι το JPEG, το MPEG, το H263, και το CCITT Ομάδα 4, βασικά χρησιμοποιούσαν στατικούς κώδικες Huffman στο στάδιο κωδικοποίησης εντροπίας. Αυτό συμβαίνει επειδή η προσαρμόσιμη κωδικοποίηση Huffman δεν παρέχει αρκετή βελτίωση συμπίεσης ώστε να μπορέσει να δικαιολογήσει την επιπρόσθετη πολυπλοκότητα. Η προσαρμόσιμη αριθμητική κωδικοποίηση, αντίθετα, παρά το ότι χρησιμοποιήθηκε σε πρότυπα όπως το JBIG και το JPEG αριθμητικό, δεν έχει μεγάλη χρήση εξαιτίας των ανησυχιών σχετικά με τους περιορισμούς πνευματικής ιδιοκτησίας και επίσης ίσως εξαιτίας των επιπρόσθετων υπολογιστών πηγών που απαιτούνται. Το JPEG-LS είναι το πρώτο διεθνές πρότυπο συμπίεσης που χρησιμοποιεί μια τεχνική προσαρμόσιμης κωδικοποίησης εντροπίας που απαιτεί μόνο ένα και μοναδικό πέρασμα μέσω των δεδομένων και απαιτεί υπολογιστικές πηγές που είναι αναμφισβήτητα λιγότερες απ αυτές που απαιτούνται από τους στατικούς κώδικες Huffman. Στο JPEG-LS, τα προβλεπτικά λάθη κωδικοποιούνται χρησιμοποιώντας μια ειδική περίπτωση κωδικών Golomb, η οποία είναι επίσης γνωστή σαν κωδικοποίηση Rice. Οι κωδικοί Golomb παραμέτρου m κωδικοποιούν ένα θετικό ακέραιο n μέσω κωδικοποίησης n mod m σε δυαδικό ακολουθούμενη από μια κωδικοποίηση του n δια m. Αυτή η κωδικοποίηση του n είναι μια σειρά n 0 bits, ακολουθούμενη από ένα τερματικό 1 bit. Όταν m = 2 k, οι κώδικες Golomb έχουν μια πολύ απλή πραγματοποίηση και αναφέρονται σαν κωδικοποίηση Rice στην φιλολογία. Σε αυτή την περίπτωση το n mod m δίνεται από τα λιγότερο σημαντικά k bits και το n div m από τα εναπομείναντα bits. Έτσι, για παράδειγμα ο 54

59 JPEG πρότυπο συμπίεσης χωρίς απώλειες κωδικός Rice της παραμέτρου 3 για τον αριθμό 42 των 8 bit ( σε δυαδικό) δίνεται από το , όπου τα τρία πρώτα bits 010 είναι τα τρία λιγότερο σημαντικά bits του 42 και τα εναπομείναντα 6 bits αναπαριστούν την κωδικοποίηση του 42 div 8 = 5, που αντιπροσωπεύεται από τα εναπομείναντα 5 bits στην δυαδική αναπαράσταση του 42. Ξεκάθαρα, ο αριθμός των bits που απαιτούνται για την κωδικοποίηση ενός αριθμού n εξαρτώνται από την παράμετρο k που χρησιμοποιείται. Για το παραπάνω παράδειγμα, αν k = 2 χρησιμοποιούνταν θα παίρναμε ένα κώδικα μήκους 13 bits και η παράμετρος 4 θα απέρρεε σε 7 bits που χρησιμοποιήθηκαν. Καταλήγουμε ότι με δεδομένο έναν ακέραιο n η παράμετρος Golomb Rice που απορρέει στο ελάχιστο μήκος κωδικού n είναι [log 2 n]. Από αυτά τα γεγονότα, είναι ξεκάθαρο ότι ο παράγοντας κλειδί πίσω από την αποδοτική χρήση των κωδικών Rice είναι ο υπολογισμός της παραμέτρου k να χρησιμοποιηθεί για ένα δεδομένο δείγμα ή τετράγωνο δειγμάτων. Ο αλγόριθμος Rice δοκιμάζει κωδικούς με κάθε παράμετρο σε ένα τετράγωνο συμβόλων και επιλέγει τον ένα που έχει σαν αποτέλεσμα τον μικρότερο κωδικό όπως υποδείχθηκε. Αυτή η παράμετρος στέλνεται στον αποκωδικοποιητή σαν πλάγια πληροφορία. Ωστόσο, στο JPEG-LS η παράμετρος κωδικοποίησης k υπολογίζεται για κάθε προβλεπτικό λάθος χρησιμοποιώντας τεχνικές που προτάθηκαν από τον Weinberger κ.α. Ειδικότερα, η παράμετρος Golomb υπολογίζεται από την διατήρηση σε κάθε περιεχομένου της αρίθμησης Ν των προβλεπτικών λαθών που είδαμε μέχρι τώρα και το συγκεντρωμένο άθροισμα του μεγέθους των προβλεπτικών λαθών Α που είδαμε ως τώρα. Το περιεχόμενο κωδικοποίησης k στη συνέχεια υπολογίζεται σαν k = ελαχ. { k Ν Α) H στρατηγική που χρησιμοποιήθηκε είναι μια προσέγγιση στην βέλτιστη επιλογή παραμέτρου γι αυτόν τον κωδικοποιητή εντροπίας. Παρά την απλότητα των διαδικασιών κωδικοποίησης και υπολογισμού, η απόδοση της συμπίεσης που επιτυγχάνεται βρίσκεται πολύ κοντά σε αυτή που αποκτήθηκε από την αριθμητική κωδικοποίηση. Επίσης, εφόσον οι κώδικες Golomb Rice ορίζονται για θετική ακέραιοι, τα προβλεπτικά λάθη πρέπει αντίστοιχα να χαρτογραφηθούν. Στο JPEG-LS, τα προβλεπτικά λάθη πρώτα μειώνονται στην κλίμακα [-128,128] από την λειτουργία e = y x mod 256 και στη συνέχεια χαρτογραφούνται σε θετικές τιμές κατά m = 2e 2e 1 αν e 0 αν e < 0 55

60 JPEG πρότυπο συμπίεσης χωρίς απώλειες Αλφαβητική προέκταση Η χρήση των κωδικών Golomb Rice είναι πολύ μη αποδοτική όταν γίνεται κωδικοποίηση χαμηλής εντροπίας διανομών επειδή ο καλύτερος ρυθμός κωδικοποίησης που μπορεί να επιτευχθεί σαν 1 bit για κάθε σύμβολο. Προφανώς για τιμές εντροπίας λιγότερες του 1 bit για κάθε σύμβολο, τέτοιες σαν εκείνες που μπορεί να βρεθούν σε λείες περιοχές μιας εικόνας, αυτό μπορεί να είναι χάσιμο χρόνου και να οδηγήσει σε σημαντική χειροτέρευση της απόδοσης. Αυτό το πρόβλημα μπορεί να ανακουφιστεί χρησιμοποιώντας αλφαβητική προέκταση, όπου μέσα τετράγωνα συμβόλων παρά ξεχωριστά σύμβολα κωδικοποιούνται, διαδίδοντας συνεπώς το πλεονάζων μήκος κωδικοποίησης σε πολλά σύμβολα. Η διαδικασία τετραγωνισμού αρκετών συμβόλων πριν από την κωδικοποίηση παράγει λιγότερο λοξές διανομές, κάτι που είναι επιθυμητό. Για να εφαρμοστεί η αλφαβητική προέκταση, το JPEG-LS πρώτα ανιχνεύει λείες περιοχές στην εικόνα. Τέτοιες περιοχές στην εικόνα χαρακτηρίζονται από τις κλίσεις D 1, D 2 και D 3, όπως ορίζονται στο 1, αλλά είναι μηδέν. Με άλλα λόγια, αυτό είναι το περιεχόμενο (0,0,0) το οποίο εμείς ονομάζουμε μηδενικό περιεχόμενο. Όταν ανιχνευθεί ένα μηδενικό περιεχόμενο, ο κωδικοποιητής εισέρχεται σε μια μέθοδο τρεξίματος όπου ένα «τρέξιμο» του δυτικού συμβόλου Β υποθέτεται. Το τέλος του σταδίου «τρεξίματος» δείχνεται από ένα νέο σύμβολο x B και το νέο σύμβολο κωδικοποιείται χρησιμοποιώντας το δικό του περιεχόμενο και ειδικές τεχνικές που περιγράφηκαν στο πρότυπο (2). Ένα «τρέξιμο» μπορεί επίσης να τερματισθεί από το τέλος της γραμμής, στην οποία περίπτωση μόνο το συνολικό μήκος του τρεξίματος κωδικοποιείται. Το συγκεκριμένο σχέδιο κωδικοποίησης που χρησιμοποιήθηκε είναι o ΚΩΔΙΚΟΣMEL που περιγράφεται στο (9). Αυτός ο κωδικός είναι ένα σχέδιο δυαδικής κωδικοποίησης στον οποίο οι ακολουθίες περιέχουν ένα λιγότερο και ένα περισσότερο πιθανό σύμβολο. Στο JPEG-LS, αν το τρέχον σύμβολο είναι το ίδιο με το προηγούμενο, ένα περισσότερο πιθανό σύμβολο κωδικοποιείται. Αλλιώς κωδικοποιείται ένα λιγότερο πιθανό σύμβολο. Οι γύροι του περισσότερο πιθανού συμβόλου που έχουν μήκος n κωδικοποιούνται χρησιμοποιώντας μόνο ένα bit. Αν ο γύρος έχει μήκος λιγότερο από n (συμπεριλαμβανομένου του 0), κωδικοποιείται από ένα μηδενικό bit ακολουθούμενο από την δυαδική τιμή. Η παράμετρος k πρέπει να είναι του τύπου 2 k και προσαρμοστικά αναβαθμίζεται ενώ κωδικοποιείται ένας γύρος. 56

61 JPEG πρότυπο συμπίεσης χωρίς απώλειες Σχεδόν χωρίς απώλεια συμπίεση Παρόλο που η χωρίς απώλεια συμπίεση απαιτείται σε πολλές εφαρμογές, οι αναλογίες συμπίεσης που αποκτήθηκαν με τεχνικές χωρίς απώλεια είναι σημαντικά χαμηλότερες από εκείνες που είναι πιθανές με την με απώλεια συμπίεση. Τυπικά, από τη μια πλευρά, ανάλογα με την εικόνα, οι αναλογίες της χωρίς απώλεια συμπίεσης κυμαίνονται από 1.5 έως 1 έως 3 έως 1. Από την άλλη πλευρά, η εκπληκτικές τεχνικές της με απώλεια συμπίεσης δίνουν αναλογίες συμπίεσης που υπερβαίνουν το 20 προς 1, χωρίς στην πραγματικότητα καμία απώλεια σε οπτική πιστότητα. Ωστόσο, σε πολλές εφαρμογές, η τελική χρήση της εικόνας δεν είναι η ανθρώπινη αντίληψη. Σε τέτοιες εφαρμογές, η εικόνα υπόκεινται σε μετα-επεξεργασία ώστε να εξαχθούν παράμετροι που μας ενδιαφέρουν όπως είναι η βασική θερμοκρασία. Η αβεβαιότητα σχετικά με τα λάθη αναδόμησης που εισάγεται από μια τεχνική με απώλεια συμπίεσης είναι ανεπιθύμητη. Αυτό οδηγεί στην ένδειξη μιας τεχνικής με σχεδόν χωρίς απώλεια συμπίεσης που δίνει ποιοτικές εγγυήσεις σχετικά με τον τύπο και τον ποσό της διαστρέβλωσης που εισάγεται. Με βάση αυτές τις εγγυήσεις, ένας επιστήμονας μπορεί να είναι εξασφαλισμένος ότι οι εξαγόμενες παράμετροι που τον ενδιαφέρουν είτε δεν θα επηρεαστούν είτε θα επηρεαστούν μόνο σε μια περιορισμένη περιοχή λάθους. Η συμπίεση με σχεδόν χωρίς απώλεια μπορεί πιθανά να οδηγήσει σε σημαντική αύξηση στην συμπίεση, δίνοντας έτσι πιο αποδοτική χρήση του προηγούμενου πλάτους ζώνης ενώ διατηρείται η ακεραιότητα των εικόνων όσον αφορά τις μετα-επεξεργαστικές λειτουργίες που εκτελούνται. Το JPEG-LS έχει μια σχεδόν χωρίς απώλεια μέθοδο που εγγυάται ένα k λάθος αναδόμησης για κάθε κουκίδα. Η προέκταση του χωρίς απώλεια βασικού αλγορίθμου στην περίπτωση της σχεδόν χωρίς απώλεια συμπίεσης επιτυγχάνεται από κβαντοποίηση του προβλεπτικού λάθους σύμφωνα με την ορισμένη αντοχή κουκίδας. Για να μπορέσει ο predictors στον δέκτη να ανιχνεύσει τον predictor στον κωδικοποιητή, οι αναδομημένες τιμές της εικόνας χρησιμοποιήθηκαν για να δημιουργήσουν την πρόβλεψη τόσο στον κωδικοποιητή όσο και στον δέκτη. Αυτή είναι η κλασσική δομή DPCM. Ειδικότερα, το προβλεπτικό λάθος κβαντοποιείται σύμφωνα με τον ακόλουθο κανόνα: Q[e]= e k (2k+1) 2k 1 57

62 JPEG πρότυπο συμπίεσης χωρίς απώλειες όπου το e είναι το προβλεπτικό λάθος, το k είναι το μέγιστο λάθος αναδόμησης που επιτρέπεται σε οποιαδήποτε δεδομένη κουκίδα, και. δείχνει το ακέραιο μέρος του επιχειρήματος. Στον κωδικοποιητή, μια ετικέτα l δημιουργείται σύμφωνα με l = e k 2k 1 Αυτή η ετικέτα κωδικοποιείται, και στον αποκωδικοποιητή το προβλεπτικό λάθος αναδομείται σύμφωνα με e = l (2k + 1) Αυτός ο τύπος κβαντοποίησης, όπου όλες οι τιμές στο εσωδιάστημα [nk - k, nk + 2 k ] χαρτογραφούνται προς το nk, είναι μια ειδική περίπτωση ομοιόμορφης κβαντοποίησης. 2 Είναι πολύ γνωστό ότι η ομοιόμορφη κβαντοποίηση οδηγεί σε μια ελάχιστη εντροπία της εισαγωγής, με δεδομένο ότι το μέγεθος βήματος είναι αρκετά μικρό για να διατηρηθεί η σταθερή υπόθεση pdf. Για μικρές τιμές του k, όπως θα ανέμενε κάποιος να χρησιμοποιηθεί σε σχεδόν χωρίς απώλεια συμπίεση, η υπόθεση είναι λογική. Παρατηρήθηκε πειραματικά ότι για ρυθμούς bit που υπερβαίνουν τα 1.5 bpp, το JPEG-LS με σχεδόν χωρίς απώλεια στην πραγματικότητα δίνει καλύτερη απόδοση απ ότι το βασικό με απώλεια JPEG. Ωστόσο, πρέπει να σημειωθεί ότι η ομοιόμορφη κβαντοποίηση που εκτελείται στο JPEG-LS με σχεδόν χωρίς απώλεια συχνά δημιουργεί ενοχλητικά «περιφερειακά» τεχνουργήματα. Τέτοια τεχνουργήματα είναι περισσότερο οπτικά προφανή σε λείες περιοχές της εικόνας. Στο Κεφάλαιο 1.1 αυτού του τόμου, τέτοια «ψευδή περιφέρεια» εξετάζεται με περισσότερη λεπτομέρεια και δείχνεται ότι πιθανά συμβαίνει ακόμα και σε κβαντοποίηση απλής εικόνας. Σε πολλές περιπτώσεις αυτά τα τεχνουργήματα μπορούν να μειωθούν από κάποιες απλές μετα-επεξεργαστικές λειτουργίες. Όπως εξηγείται, στο επόμενο τμήμα, το JPEG-LS Μέρος 2 επιτρέπει τη διαφοροποίηση του μεγέθους του βήματος κβαντοποίησης χωρητικά με έναν περιορισμένο τρόπο, κάνοντας έτσι δυνατή κάποια πιθανή μείωσε στα τεχνουργήματα. Τέλος, μπορεί να φανεί ότι η τεχνική κβαντοποίησης που χρησιμοποιήθηκε στο JPEG-LS είναι απλούστατη. Στην πραγματικότητα, υπάρχει μια πολύπλοκη εξάρτηση ανάμεσα στο 58

63 JPEG πρότυπο συμπίεσης χωρίς απώλειες λάθος κβαντοποίησης που εισάγεται και στα επακόλουθα προβλεπτικά λάθη. Παρόλο που κάποιος μπορεί να ποικίλει την κβαντοποίησει με έναν βέλτιστο τρόπο χρησιμοποιώντας μια τεχνική που βασίζεται σε δικτύωμα και τον αλγόριθμο Viterbi, παρατηρήθηκε ότι τέτοιες υπολογιστικά ακριβές και εξεζητημένης βελτιστοποίησης στρατηγικές προσφέρουν λίγα πλεονεκτήματα, σε σχέση με την απλά ομοιόμορφη κβαντοποίηση που χρησιμοποιήθηκε στο JPEG-LS. Βιβλιογραφία 1. R.G. Gonzales, R. E. Woods, Digital Image Processing, 2nd edition, Prentice Hall, G. K. Wallace, The JPEG still picture compression standard, Comm. ACM 34, pp , April R.G. Gonzales, R. E. Woods, Digital Image Processing, 2nd edition, Prentice Hall, P. Marziliano, F. Dufaux, S. Winkler, and T. Ebrahimi, Perceptual blur and ringing metrics: Application to JPEG2000, Signal Processing: Image Communication 19, pp , Feb M. Rabbani and R. Joshi, An overview of the JPEG2000 still image compression standard, Signal Processing:Image Communication 17, pp. 3 48, Jan Adobe Photoshop

64 JPEG πρότυπο συμπίεσης με απώλειες ΚΕΦΑΛΑΙΟ 4 Το πρότυπο συμπίεσης εικόνας JPEG με απώλειες 4.1. Εισαγωγή Το JPEG είναι ένα παγκόσμιο πρότυπο για την συμπίεση ψηφιακών εικόνων. Το πρότυπο πήρε το όνομά του από την επιτροπή που το δημιούργησε και που συνεχίζει να οδηγεί την εξέλιξή του. Αυτή η ομάδα, η Κοινή Ομάδα Φωτογραφικών Ειδικών (JPEG-Joint Photographic Experts Group), απαρτίζεται από ειδικούς εθνικών επιτροπών και από ηγετικές εταιρείες σε εργασίες που σχετίζονται με τις εικόνες. Η επιτροπή του JPEG έχει έναν επίσημο τίτλο της Εργασιακής Ομάδας 1 ISO/IECJTC1 SC29 και η ιστοσελίδα της είναι: Η επιτροπή είναι επιφορτισμένη με την ευθύνη της συγκέντρωσης των προσπαθειών ώστε να ακολουθηθούν οι υποσχόμενες προσεγγίσεις όσον αφορά την συμπίεση και να προκύψει μία αποδοτική ομάδα προτύπων για την συμπίεση σταθερής εικόνας. Η διαδικασία συμπίεσης εικόνας με απώλειες JPEG που περιγράφεται σε αυτό το κεφάλαιο είναι ένα μέρος του συνόλου των προτύπων ISO IS ,2,3 (ITU-T Recommnedations T.81, T.83, T.84). Η δραστηριότητα προτυποποίησης JPEG ξεκίνησε το 1986, οπότε δημιουργήθηκαν 12 προτάσεις για μελέτη από την επιτροπή τον Μάρτιο του Η αρχική προσπάθεια παρήγαγε ομόφωνα την απόφαση ότι η συμπίεση πρέπει να βασίζεται διακριτό μετασχηματισμό συνημιτόνου (DCT). Το επακόλουθο ραφινάρισμα και η βελτίωση οδήγησαν στο Προσχέδιο της Επιτροπής το Διαβουλεύσεις πάνω στο Προσχέδιο του Διεθνούς Προτύπου JPEG (DIS) υποβλήθηκαν το 1991 και κορυφώθηκαν με την αποδοχή του Διεθνούς Προτύπου (IS) το Παρόλο που το Πρότυπο JPEG ορίζει αλγορίθμους τόσο για συμπίεση απώλειας όσο και γι αυτή που δεν έχει απώλεια, το επίκεντρο σε αυτό το κεφάλαιο βρίσκεται στο συστατικό της συμπίεσης με απώλειες του προτύπου JPEG. Τα χωρίς απώλεια πρότυπα JPEG περιγράφονται λεπτομερώς στο επόμενο κεφάλαιο. Η συμπίεση απώλειας JPEG συνεπάγεται μια μη αναστρέψιμη χαρτογράφηση της εικόνας σε μια συμπιεσμένη ροή bit, αλλά το πρότυπο παρέχει μηχανισμούς για μια ελεγχόμενη απώλεια πληροφοριών. Η συμπίεσης 60

65 JPEG πρότυπο συμπίεσης με απώλειες απώλειας παράγει μια σειρά bit που συχνά είναι πολύ μικρότερη σε μέγεθος από αυτή που παράγεται με την συμπίεση χωρίς απώλεια. Τα βασικά χαρακτηριστικά του προτύπου απώλειας JPEG είναι τα ακόλουθα: Επιτρέπονται τόσο διαδοχικές όσο και προοδευτικές μέθοδοι κωδικοποίησης. Αυτές οι μέθοδοι αναφέρονται στον τρόπο με τον οποίο οι κβαντοποιημένοι συντελεστές DCT κωδικοποιούνται. Στην διαδοχική κωδικοποίηση (sequential coding), οι συντελεστές κωδικοποιούνται σε μια βάση τμήμα-τμήμα (blockby-block) σε μια και μόνο σάρωση από τα αριστερά προς τα δεξιά και από την κορυφή προς τα κάτω. Αντίθετα, στην προοδευτική κωδικοποίηση κωδικοποιούνται μόνο μερικές πληροφορίες σχετικά με τους συντελεστές στην πρώτη σάρωση οπότε ακολουθεί κωδικοποίηση των εναπομεινάντων πληροφοριών σε διαδοχικές σαρώσεις. Είναι δυνατές οι εφαρμογές μικρής πολυπλοκότητας τόσο σε υλικό όσο και σε λογισμικό. Επιτρέπονται όλα τα είδη εικόνας, ανεξάρτητα από την πηγή, το περιεχόμενο, την ανάλυση, τα χρώματα κ.λ.π.. Εκτός από πολύ χαμηλούς ρυθμούς bit, προσφέρεται ένας καλός συμβιβασμός (trade-off) σε ρυθμό bit (bit-rate) και ποιότητα. Επιτρέπεται μία ιεραρχική μέθοδος με πολλαπλά επίπεδα ανάλυσης. Επιτρέπεται η ανάλυση των bit σε 8-12 bits. Ένα προτεινόμενο σχήμα αρχείου, Σχέδιο Ανταλλαγής Αρχείων JPEG (JPEG File Interchange Format) κάνει δυνατή την ανταλλαγή των σειρών bit JPEG σε μια ποικιλία από πλατφόρμες. Ένας αποκωδικοποιητής JPEG πρέπει να υποστηρίζει μια ελάχιστη ομάδα απαιτήσεων, η εφαρμογή των οποίων συλλογικά αναφέρεται σαν βασική εφαρμογή (baseline implementation). Επιπλέον χαρακτηριστικά υποστηρίζονται στην επεκτάσιμη εφαρμογή του προτύπου. Τα χαρακτηριστικά που υποστηρίζονται στην βασική εφαρμογή περιλαμβάνουν την δυνατότητα παροχής: μιας σειριακής δόμησης προσαρμοζόμενους ή εξ ορισμού πίνακες Huffman ακρίβεια 8 bit για κάθε pixel του κάθε συστατικού, σαρώσεις εικόνας με 1-4 συστατικά, και τόσο διαστρωματωμένες όσο και μη σαρώσεις 61

66 JPEG πρότυπο συμπίεσης με απώλειες Ένα εκτεταμένο σύστημα JPEG περιλαμβάνει όλα τα χαρακτηριστικά σε μια βασική εφαρμογή και υποστηρίζει πολλά επιπλέον χαρακτηριστικά. Επιτρέπει την σειριακή δόμηση καθώς επίσης και μια προαιρετική προοδευτική δόμηση. Μπορεί να χρησιμοποιηθεί είτε κωδικοποίηση Huffman, είτε αριθμητική κωδικοποίηση στην μονάδα κωδικοποίησης εντροπίας. Επιτρέπεται η ακρίβεια μέχρι και 12 bits για κάθε pixel. Το εκτεταμένο σύστημα περιλαμβάνει μια επιλογή για κωδικοποίηση χωρίς απώλεια Δομή του Κωδικοποιητή JPEG με απώλειες Πρέπει να σημειωθεί ότι επιπρόσθετα στον ορισμό ενός κωδικοποιητή και αποκωδικοποιητή, το πρότυπο JPEG ορίζει επίσης ένα συντακτικό για την αναπαράσταση των συμπιεσμένων δεδομένων μαζί με τους σχετικούς πίνακες και τις παραμέτρους. Σε αυτό το κεφάλαιο, ωστόσο, αγνοούμε πολύ αυτά τα συντακτικά θέματα και αντίθετα επικεντρωνόμαστε στις διαδικασίες κωδικοποίησης και αποκωδικοποίησης. Ξεκινάμε εξετάζοντας την δομή των συστημάτων κωδικοποίησης και αποκωδικοποίησης JPEG. Η συζήτηση επικεντρώνεται στην δομή του αποκωδικοποιητή και τα βασικά δομικά μπλοκς από τα οποία είναι φτιαγμένος ένας αποκωδικοποιητής. Ο αποκωδικοποιητής βασικά απαρτίζεται από τις αντίστροφες λειτουργίες της διαδικασίας κωδικοποίησης που εκτελούνται με την ανάποδη σειρά Δομή Κωδικοποιητή (Encoder structure) Ο κωδικοποιητής και ο αποκωδικοποιητής JPEG συμβατικά απαρτίζονται από τις μονάδες που φαίνονται στο σχήμα 1. Σημειώστε ότι ο κωδικοποιητής που φαίνεται στο Σχήμα 1 εφαρμόζεται σε περιβάλλοντα στα οποία το σύστημα δεν λειτουργεί υπό τον περιορισμό ενός συγκεκριμένου ρυθμού bit. Οι μονάδες που αποτελούν τον κωδικοποιητή περιγράφονται στη συνέχεια Μονάδα Μετατροπής Σήματος: DCT Στην συμπίεση εικόνας JPEG, κάθε πίνακας συστατικού στην εικόνα εισαγωγής πρώτα τμηματοποιείται σε 8 Χ 8 ορθογώνια τετράγωνα δεδομένων. Μια μονάδα μετασχηματισμού σήματος υπολογίζει το DCT κάθε τετραγώνου 8 Χ 8 ώστε να χαρτογραφήσει το σήμα αντίστροφα σε μια αναπαράσταση που ταιριάζει καλύτερα για συμπίεση. Το αντικείμενο της μετατροπής είναι να επαναδιαμορφώσει τις πληροφορίες στο σήμα για να συλλάβει τις απώλειες, και για να παρουσιάσει τις πληροφορίες σε μια «φιλική προς το μηχάνημα» μορφή που είναι βολική για να αγνοήσει το αντιληπτικά λιγότερο σχετικό 62

67 JPEG πρότυπο συμπίεσης με απώλειες περιεχόμενο. Ο μετασχηματισμός DCT συλλαμβάνει την χωρητική απώλεια και πακετάρει την ενέργεια του σήματος σε μερικούς συντελεστές DCT. Ο συντελεστής στη θέση (0,0) στην σειρά DCT 8 Χ 8 αναφέρεται ως ο συντελεστής DC. Οι εναπομείναντες 63 συντελεστές ονομάζονται συντελεστές AC Κβαντοποιητής (quantizer) Αν θέλουμε να ανακτήσουμε την αρχική εικόνα ακριβώς από την σειρά των συντελεστών DCT τότε είναι απαραίτητο να αναπαραστήσουμε τους συντελεστές DCT με υψηλή ακρίβεια. Μια τέτοια αναπαράσταση απαιτεί έναν μεγάλο αριθμό bits. Στην συμπίεση με απώλειες οι συντελεστές DCT χαρτογραφούνται σε μια σχετικά μικρή ομάδα πιθανών τιμών που αναπαριστώνται συμπαγώς μέσω του ορισμού και της κωδικοποίησης κατάλληλων συμβόλων. Η μονάδα κβαντοποίησης εκτελεί αυτή την εργασία της πολλά προς ένα αντιστοίχισηςς των συντελεστών DCT, έτσι ώστε οι τα πιθανά αποτελέσματα να περιορίζονται όσον αφορά τον αριθμό. Ένα βασικό χαρακτηριστικό των κβαντοποιημένων συντελεστών DCT είναι ότι πολλοί από αυτούς είναι μηδενικοί, και έτσι είναι κατάλληλοι για αποδοτική κωδικοποίηση Μονάδα αντιστοίχισης συντελεστή σε σύμβολο Οι κβαντοποιημένοι συντελεστές DCT χαρτογραφούνται σε νέα σύμβολα για να διευκολύνουν μια συμπαγή αναπαράσταση στην μονάδα κωδικοποίησης συμβόλου που ακολουθεί. Η μονάδα ορισμού συμβόλου μπορεί επίσης να θεωρηθεί ως μέρος της μονάδας κωδικοποίησης συμβόλου. Ωστόσο, εδώ εμφανίζεται σαν μια ξεχωριστή μονάδα για να δώσει έμφαση στο γεγονός ότι ο ορισμός των συμβόλων που πρέπει να κωδικοποιηθούν είναι μια σημαντική εργασία. Ένας αποδοτικός ορισμός των συμβόλων για την αναπαράσταση των συντελεστών AC σε JPEG είναι τα «runs» των μηδενικών συντελεστών που ακολουθούνται από έναν μη μηδενικό τερματικό συντελεστή. Για την αναπαράσταση των συντελεστών DC, τα σύμβολα ορίζονται από τον υπολογισμό της διαφοράς ανάμεσα στον συντελεστή DC στο τρέχον μπλοκ και σε εκείνον στο προηγούμενο μπλοκ. 63

68 JPEG πρότυπο συμπίεσης με απώλειες Εικόνα 6. Συστατική μονάδα του JPEG κωδικοποιητή Εικόνα 7. Συστατική μονάδα του JPEG αποκωδικοποιητή Μονάδα κωδικοποίησης εντροπίας (Entropy coding unit) Αυτή η μονάδα ορίζει μια κωδικολέξη στα σύμβολα που εμφανίζονται στην εισαγωγή του, και αυτή δημιουργεί τη σειρά του bit που πρέπει να μεταδοθούν ή να αποθηκευτούν. Η κωδικοποίηση Huffman συχνά χρησιμοποιείται για μεταβλητού μήκους κωδικοποίηση των συμβόλων, με την αριθμητική κωδικοποίηση να επιτρέπεται ως επιλογή Δομή αποκωδικοποιητή Σε έναν αποκωδικοποιητή οι αντίστροφες λειτουργίες εκτελούνται και σε μια διάταξη που είναι αντίστροφη από αυτή του κωδικοποιητή. Η κωδικοποιημένη σειρά bit περιέχει κωδικοποίηση και πίνακες κβαντοποίησης, τα οποία πρώτα εξάγονται. Τα κωδικοποιημένα δεδομένα στη συνέχεια εφαρμόζονται στον αποκωδικοποιητή εντροπίας, ο οποίος καθορίζει τα σύμβολα που κωδικοποιούνται. Τα σύμβολα στη συνέχεια αντιστοιχίζονται σε μια σειρά κβαντοποιημένων συντελεστών DCT, τα οποία στη συνέχεια αποκβαντοποιούνται» μέσω 64

69 JPEG πρότυπο συμπίεσης με απώλειες του πολλαπλασιασμού του κάθε συντελεστή με την αντίστοιχη εισαγωγή στον πίνακα κβαντοποίησης. Η αποκωδικοποιημένη εικόνα στη συνέχεια αποκτάται μέσω της εφαρμογής του αντίστροφου δισδιάστατου DCT στον πίνακα των ανακτώμενων συντελεστών DCT. Στα επόμενα τρία τμήματα βλέπουμε κάθε μια από τις παραπάνω λειτουργίες κωδικοποίησης, το DCT, την κβαντοποίηση, και την αντιστοίχιση των συμβόλων και τη κωδικοποίηση, με περισσότερη λεπτομέρεια Μετασχηματισμός Διακριτού Συνημιτόνου (Discrete Cosine Transform - DCT) Η συμπίεση JPEG με απώλεια βασίζεται στην κωδικοποίηση μετασχηματισμού που χρησιμοποιεί το DCT. Στην κωδικοποίηση του DCT, το κάθε συστατικό της εικόνας υποδιαιρείται σε τετράγωνα των 8Χ8 pixels. Ένα δισδιάστατο DCT εφαρμόζεται σε κάθε μπλοκ δεδομένων για να αποκτηθεί μια σειρά 8 Χ 8 συντελεστών. Αν x [m, n] αναπαριστά τις τιμές του pixel της εικόνας σε ένα μπλοκ, στη συνέχεια o DCT υπολογίζεται για κάθε μπλοκ των δεδομένων της εικόνας ως εξής: όπου 7 7 C[ u] C[ v] (2m 1) u X [ u, v] x[ m, n]cos 4 16 m 0 n 0 x (2n 1) n cos, 16 0 u, v 7 1 Cu [ ] 2 u u 7 Τα αρχικά δείγματα της εικόνας μπορούν να ανακτηθούν από τους συντελεστές DCT μέσω της εφαρμογής του αντίστροφου μετασχηματισμού συνημιτόνου (IDCT) ως ακολούθως: 7 7 C[ u] C[ v] (2m 1) u x[ m, n] X [ u, v]cos 4 16 u 0 v 0 (2n 1) n x cos, 0 m, n

70 JPEG πρότυπο συμπίεσης με απώλειες Ο μετασχηματισμός DCT ο οποίος ανήκει στην οικογένεια των ημιτονοειδών μετασχηματισμών, έχει λάβει ιδιαίτερη προσοχή εξαιτίας της επιτυχίας του στην συμπίεση των πραγματικών εικόνων. Φαίνεται από τον ορισμό της DCT ότι ένα 8Χ8 μπλοκ εικόνας που έχει μετατραπεί αναπαριστάται σαν ένας γραμμικός συνδυασμός διανθυσμάτων βάσης με πραγματικές τιμές που απαρτίζονται από δείγματα ενός γινομένου μονοδιάστατων ημισυνημιτονοειδών συναρτήσεων. Η δισδιάστατη μετατροπή μπορεί να εκφραστεί ως ένα γινόμενο μονοδιάστατου μετασχηματισμού DCT που εφαρμόζεται ξεχωριστά στις γραμμές και τις στήλες του μπλοκ της εικόνας. Οι συντελεστές Χ (u,v) του γραμμικού συνδυασμού αναφέρονται σαν συντελεστές DCT. Για τις ψηφιακές εικόνες του πραγματικού κόσμου στις οποίες η συσχέτιση μεταξύ των pixel είναι λογικά υψηλή και μπορεί να χαρακτηριστεί με πρώτης τάξης μοντέλα αυστοσυσχέτισης, η απόδοση του DCT βρίσκεται πολύ κοντά σε αυτή του μετασχηματισμού Karhunen-Loeve. Ο διακριτός μετασχηματισμός Fourier (DFT) δεν είναι τόσο αποδοτικός όσο ο DCT όσον αφορά την αναπαράσταση ενός 8 Χ 8 τετραγώνου εικόνας. Αυτό συμβαίνει επειδή όταν εφαρμόζεται o DFT σε κάθε σειρά της εικόνας, μια περιοδική επέκταση δεδομένων, παράγει υψηλής συχνότητας συντελεστές DFT που είναι μεγαλύτεροι από τους συντελεστές DCT της αντίστοιχης διάταξης. Αντίθετα, υπάρχει μια αντίστροφη περιοδικότητα που συνάγεται από την DCT που αποφεύγει τις ασυνέχειες στις άκρες όταν επαναλαμβάνονται τα τετράγωνα της εικόνας. Ως αποτέλεσμα, οι «υψηλής συχνότητας» ή «η υψηλής διάταξης AC» συντελεστές είναι κατά μέσο όρον μικρότεροι από τους αντίστοιχους συντελεστές DFT. Ας θεωρήσουμε ένα παράδειγμα του υπολογισμού του δισδιάστατου DCT ενός 8x8 τετραγώνου στην 512 Χ 512 εικόνας εικόνας επιπέδων του γκρι Lena. Το συγκεκριμένο μπλοκ που επιλέχθηκε φαίνεται στην εικόνα στο σχήμα 2(α) όπου το μπλοκ σημειώνεται με ένα μαύρο πλαίσιο με μια γωνία στo σημείο [208,296]. Οι τιμές της κουκίδας των 8 bit του τετραγώνου που επιλέχθηκε φαίνονται στο σχήμα 3. Μετά την εφαρμογή του DCT σε αυτό το μπλοκ, ο προκύπτων πίνακας συντελεστών DCT 8 X 8 φαίνεται στο σχήμα 2 (β). Το πλάτος των συντελεστών DCT επιδεικνύει ένα πρότυπο όσον αφορά τη συχνότητά τους στον πίνακα συντελεστών. Επίσης, η συνεισφορά τους όσον αφορά την αντίληψη των πληροφοριών δεν είναι ομοιόμορφη κατά μήκος της σειράς. Οι συντελεστές DCT που αντιστοιχούν στις συναρτήσεις βάσης χαμηλότερης συχνότητας συνήθως είναι μεγάλοι σε μέγεθος, και επίσης θεωρούνται ότι είναι περισσότερο σημαντικοί. Αυτά τα χαρακτηριστικά των συντελεστών DCT εκμεταλλευόμαστε όσον αφορά την ανάπτυξη μεθόδων κβαντοποίησης και της κωδικοποίησης συμβόλου. Το μεγαλύτερο μέρος της συμπίεσης που 66

71 JPEG πρότυπο συμπίεσης με απώλειες επιτυγχάνεται στην κωδικοποίηση μετασχηματισμού συμβαίνει στο βήμα κβαντοποίησης. Το επίπεδο συμπίεσης ελέγχεται μέσω της αλλαγής του συνολικού αριθμού των bits που είναι διαθέσιμων για την κωδικοποίηση των μπλοκς. Οι συντελεστές κβαντοποιούνται πιο τραχιά όταν απαιτείται ένας μεγάλος παράγοντας συμπίεσης. Εικόνα 2. Αριστερά είναι αρχική εικόνα της Lena (γνωστή εικόνα που χρησιμοποιείται στο πεδίο της ψηφιακής επεξεργασίας εικόνας) και δεξιά ένα μπλοκ 8x8 όπου αναγνωρίζεται από ένα μαύρο όριο και με μία γωνία στη θέση [208, 296]. Εικόνα 8. Το 8x8 μπλοκ που αναγνωρίστηκε στην Εικόνα 2 67

72 JPEG πρότυπο συμπίεσης με απώλειες Εικόνα 9. Ο DCT μετασχηματισμός του 8x8 μπλοκ στην Εικόνα 3. Εικόνα 10. Παραδείγματα πινάκων κβαντοποίησης (quantization tables) για τα συστατικά luminance (αριστερά) και chrominance (δεξιά) όπως αυτοί δίνονται στο τμήμα πληροφοριών του standard 4.4.Κβαντοποίηση (Quantization) Ο κάθε συντελεστής DCT X [m,n], 0 m,n 7, αντιστοιχίζεται σε έναν πεπερασμένο αριθμό επιπέδων που καθορίζεται από τον παράγοντα συμπίεσης που επιθυμούμε. Αυτό γίνεται μέσω της διαίρεσης κάθε στοιχείου του πίνακα τωνσυντελεστών DCT από ένα αντίστοιχο συστατικό σε ένα 8Χ8 πίνακα κβανοποίησης (quantization matrix). Συνεπώς αν η είσοδος q[m,n], 0 m,n 7 στην m σειρά και στη n στήλη του πλαισίου κβαντοποίησης είναι μεγάλη, στη συνέχεια ο αντίστοιχος συντελεστής DCT κβαντοποιείται τραχιά. Οι τιμές q[m,n] πρέπει να είναι ακέραιοι με 1 q[m,n] 255, και αυτές καθορίζουν το βήμα κβαντοποίησης για τον αντίστοιχο συντελεστή. Ο κβαντοποιημένος συντελεστής δίνεται από q X[m,n] = X [ m, n] q[ m, n] round 68

73 JPEG πρότυπο συμπίεσης με απώλειες Ένα πίνακας κβαντοποίησης (ή μήτρα) απαιτείται για κάθε συστατικό εικόνας. Ωστόσο, ένας πίνακας κβαντοποίησης μπορεί να μοιράζεται από πολλαπλά συστατικά. Για παράδειγμα, σε μια αναπαράσταση φωτεινότητας χρωματισμού Υ Cr Cb, τα δύο συστατικά chrominance συνήθως μοιράζονται ένα κοινό πλαίσιο κβαντοποίησης. Οι πίνακες κβαντοποίησης JPEG που δίνονται σε ένα Προσάρτημα Κ του προτύπου για φωτεινότητα και τα συστατικά φαίνονται στο Σχήμα 5. Αυτοί οι πίνακες αποκτήθηκαν από μια σειρά ψυχοοπτικών πειραμάτων για να καθορίσει τις αρχικές τιμές ορατότητας για τις λειτουργίες της βάσης DCT για μια εικόνα 760 Χ 576 με συστατικά χρωματότητας που υποδειγματίζονται κατά 2 στην οριζόντια διάταξη και σε μια οπτική απόσταση ίση με έξι φορές το πλάτος της οθόνης. Στην εξέταση των πινάκων θα δείτε ότι ο πίνακας κβαντοποίησης για τα συστατικά χρωματότητας έχει μεγαλύτερες τιμές γενικά που δηλώνει μια πιο τραχιά κβαντοποίηση των επιπέδων χρωματότητας εν συγκρίσει με το επίπεδο φωτεινότητας. Αυτό γίνεται για την εκμετάλλευση της σχετικής αναισθησίας που έχει το ανθρώπινο οπτικό σύστημα στα συστατικά χρωματότητας εν συγκρίσει με τα συστατικά φωτεινότητας. Οι πίνακες που φαίνονται είναι γνωστό ότι προσφέρουν λογική απόδοση, κατά μέσο όρο, σε μια μεγάλη ποικιλία εφαρμογών και συνθηκών. Συνεπώς έχουν γίνει ευρέως αποδεκτοί και με τα χρόνια έχουν γίνει γνωστοί σαν οι «εξ ορισμού- default» πίνακες κβαντοποίησης. Εικόνα 11. 8x8 DCT μετασχηματισμός στην εικόνα 4 μετά και την κβαντοποίηση με τον luminance πίνακα που φαίνεται στην Εικόνα 5 Οι πίνακες κβαντοποίησης μπορούν επίσης να δομηθούν θέτοντας το πρόβλημα της βέλτιστης εκχώρησης ενός δεδομένου προϋπολογισμού bits με βάση τις στατιστικές των συντελεστών. Η γενική αρχή είναι να υπολογίσουμε τις διαφοροποιήσεις των συντελεστών DCT που δίνονται στο σχήμα 4 χρησιμοποιώντας των πίνακα κβαντοποίησης φωτεινότητας στο σχήμα 5 (α). Ο κάθε συντελεστής DCT διαιρείται από την αντίστοιχη εισαγωγή στον 69

74 JPEG πρότυπο συμπίεσης με απώλειες πίνακα κβαντοποίησης, και το αποτέλεσμα στρογγυλοποιείται για να αποδώσει την σειρά των κβαντοποιημένων συντελεστών DCT στο σχήμα 6. Παρατηρούμε ότι ένας μεγάλος αριθμός κβαντοποιημένων συντελεστών DCT είναι μηδέν, κάνοντας έτσι την σειρά κατάλληλη για μακρού μήκους κωδικοποίηση η οποία περιγράφεται στο Τμήμα 6. Το μπλοκ που ανακτήθηκε μετά την αποκωδικοποίηση φαίνεται στο σχήμα 7. Εικόνα 12. Το μπλοκ που επιλέχθηκε από την εικόνα Lena επανακτημένο μετά την αποκωδικοποίηση Σχέδιο πίνακα κβαντοποίησης Με την συμπίεση με απώλεια, το ποσό της παραμόρφωσης που εισάγεται στην εικόνα είναι αντίστροφο ως προς τον αριθμό των bits (ρυθμός bit) που χρησιμοποιήθηκαν για την κωδικοποίηση της εικόνας. Όσο υψηλότερος είναι ο ρυθμός τόσο χαμηλότερη είναι η παραμόρφωση. Φυσικά, για ένα δεδομένο ρυθμό θα θέλαμε να έχουμε την ελάχιστη δυνατή παραμόρφωση. Παρόμοια, για ένα δεδομένο επίπεδο παραμόρφωσης, θα θέλαμε να κωδικοποιήσουμε μια εικόνα με τον ελάχιστο δυνατό ρυθμό. Συνεπώς οι τεχνικές συμπίεσης με απώλεια συχνά μελετώνται όσον αφορά την απόδοσή του ρυθμού και της παραμόρφωσης, π.χ. την παραμόρφωση που προκαλούν σε διαφορετικούς ρυθμούς. Η απόδοση του ρυθμού παραμόρφωσης της JPEG καθορίζεται κύρια από τους πίνακες κβαντοποίησης. Όπως αναφέρθηκε προηγουμένως το πρότυπο δεν συστήνει κάποιον συγκεκριμένο πίνακα ή ομάδα πινάκων και αφήνει το σχέδιο αυτών αποκλειστικά στο χρήστη. Ενώ η ποιότητα της εικόνας που αποκτήθηκε από την χρήση των «default» πινάκων κβαντοποίησης που περιγράφηκαν παραπάνω είναι πολύ καλή, υπάρχει η ανάγκη για παροχή ευελιξίας για να προσαρμοστεί η ποιότητα της εικόνας μέσω της αλλαγής του συνολικού αριθμού των bit. Στην πράξη, οι κλιμακωτές εκδοχές των «εκ προοιμίου» πινάκων κβαντοποίησης χρησιμοποιούνται πολύ συχνά για να ποικίλλει η ποιότητα και η απόδοση του JPEG. Για παράδειγμα, η δημοφιλής ΙJPEG εφαρμογή που είναι δωρεάν διαθέσιμη στο κοινό, επιτρέπει αυτή η προσαρμογή να γίνει μέσω της χρήσης του παράγοντα ποιότητας Q για την κλιμάκωση όλων των στοιχείων 70

75 JPEG πρότυπο συμπίεσης με απώλειες του πίνακα κβαντοποίησης. Ο παράγοντας κλιμάκωσης (scale factor) στη συνέχεια υπολογίζεται ως 5000 για 1 Q < 5 Q scale factor 200-2*Q για 50 Q 99 1 Q 100 Παρόλo που μπορούμε να μεταβάλλουμε το ρυθμό μέσω της κλιμάκωσης ενός βασικού πίνακα κβαντοποίησης σύμφωνα με μερικά καθορισμένα σχήματα είναι βολική, είναι ξεκάθαρο ότι δεν είναι βέλτιστη. Με δεδομένη μια εικόνα και ένα ρυθμό bit, υπάρχει ένας πίνακας κβαντοποίησης που παρέχει την «βέλτιστη» παραμόρφωση σε ένα δεδομένο ρυθμό. Ξεκάθαρα, ο «βέλτιστος» πίνακας θα ποικίλει με διαφορετικές εικόνες και με διαφορετικούς ρυθμούς bit και ακόμη με διαφορετικούς ορισμούς παραμόρφωσης (για παράδειγμα MSE, αντιληπτική παραμόρφωση κ.λ.π.). Για να μπορέσουμε να πάρουμε την καλύτερη απόδοση από το JPEG σε μια δεδομένη εφαρμογή, υποστηρικτικοί πίνακες κβαντοποίησης μπορεί να χρειαστεί να σχεδιαστούν. Στην πραγματικότητα, έχει αναφερθεί πολλή εργασία όσον αφορά το θέμα του σχεδίου πινάκων κβαντοποίησης για το JPEG. Αυτή η δουλειά μπορεί να κατηγοριοποιηθεί σε τρεις κατηγορίες. Η πρώτη ασχολείται με την βελτιστοποίηση της απόδοσης ρυθμού παραμόρφωσης του JPEG με βάση τα στατιστικά μοντέλα για τις κατανομές των συντελεστών DCT. Η δεύτερη προσπαθεί να βελτιστοποιήσει την οπτική ποιότητα της αναδομημένης εικόνας σε ένα δεδομένο ρυθμό bit, με δεδομένη μια ομάδα συνθηκών εμφάνισης και ένα αντιληπτικό μοντέλο. Ένα παράδειγμα της πρώτης προσέγγισης παρέχεται από την εργασία των Ratnakar και Livny, οι οποίοι πρότειναν έναν αποδοτικό αλγόριθμο για την κατασκευή πινάκων κβαντοποίησης με βέλτιστη απόδοση ρυθμού παραμόρφωσης για μια δεδομένη εικόνα. Ο αλγόριθμος RD-OPT χρησιμοποιεί κατανομή συντελεστών DCT από οποιαδήποτε δεδομένη εικόνα για να βελτιστοποιήσει τους πίνακες κβαντοποίησης ταυτόχρονα για ολόκληρη την πιθανή κλίμακα των συναλλαγών συμπίεσης ποιότητας. Ο αλγόριθμος περιορίζεται στα μέτρα παραμόρφωσης που σχετίζονται με τη MSE καθώς εκμεταλλεύεται την ιδιότητα ότι ο DCT είναι ένας unitary Μετασχηματισμός. Ο RD-OPT βασικά απαρτίζεται από τα ακόλουθα τρία στάδια. 71

76 JPEG πρότυπο συμπίεσης με απώλειες 1. Συλλογή των στατιστικών DCT για μια δεδομένη εικόνα ή για μια ομάδα εικόνων. Βασικά αυτό το βήμα περιλαμβάνει μέτρημα για το πόσες φορές κβαντοποιείται ο συντελεστής n στην τιμή v όταν το μέγεθος του βήματος κβαντοποίησης είναι q και τον υπολογισμό της MSE για τον συντελεστή n σε αυτό το μέγεθος βήματος. 2. Χρήση στατιστικών που συλλέχθηκαν παραπάνω για να υπολογίσει το Rn(q) το ρυθμό για τον συντελεστή n όταν το μέγεθος βήματος κβαντοποίησης είναι q και Dn(q), η αντίστοιχη παραμόρφωση για κάθε πιθανό q. 3. Υπολογισμό των RQ) και D(Q) το ρυθμό και τις παραμορφώσεις για ένα πίνακα κβαντοποίησης Q σαν 63 R(Q) = Rn ( Q[ n]), D(Q) = Dn ( Q[ n]) n 0 63 n 0 αντίστοιχα. Χρησιμοποιήστε δυναμικό προγραμματισμό για να βελτιστοποιήστε το R(Q) έναντι του D(Q). H βελτιστοποίηση των πινάκων κβαντοποίησης αναφορικά με το MSE μπορεί να μην είναι η καλύτερη στρατηγική όταν την τελική εικόνα θα την δει ένας άνθρωπος. Μια καλύτερη προσέγγιση είναι να ταιριάξουμε τον πίνακα κβαντοποίησης στο μοντέλο του Ανθρώπινου Οπτικού Συστήματος (HVS Human Visual System). Όπως αναφέρθηκε παραπάνω, οι «default» πίνακες κβαντοποίησης ήρθαν με έναν τρόπο ανεξάρτητο από την εικόνα, με βάση την ορατότητα των λειτουργιών της βάσης DCT. Ξεκάθαρα, καλύτερη απόδοση μπορεί να επιτευχθεί από μια ανεξάρτητη της εικόνας προσέγγιση που εκμεταλλεύεται τις ιδιότητες του Ανθρώπινου Οπτικού Συστήματος όπως είναι η συχνότητα, η αντίθεση, η υφή και η ευαισθησία. Ένας αριθμός τεχνικών που βασίζονται σε μοντέλα Ανθρώπινου Οπτικού Συστήματος για σχέδιο πινάκων κβαντοποίησης προτάθηκε. Τέτοιες τεχνικές εκτελούν μια ανάλυση της δεδομένης εικόνας και φθάνει σε μια ομάδα αρχικών τιμών, μια κάθε συντελεστή, που ονομάζονται αρχικές τιμές μικρής παραμόρφωσης. Η ιδέα είναι ότι αν η παραμόρφωση που εισάγεται είναι ακριβώς ή κάτω από αυτές τις αρχικές τιμές, η αναδομημένη εικόνα δεν θα έχει παραμόρφωση. Η βελτιστοποίηση των πινάκων κβαντοποίησης αναφορικά με την MSE μπορεί επίσης να μην είναι κατάλληλη όταν υπάρχουν περιορισμοί στον τύπο της παραμόρφωσης που μπορεί να γίνει ανεκτή. Για παράδειγμα, εξετάζοντας το σχήμα 5, βρίσκουμε ότι οι «υψηλής συχνότητας» παράγοντες κβαντοποίησης AC, π.χ. το q(m,n) για μεγαλύτερες τιμές των m και n είναι σημαντικά μεγαλύτερο απ ότι ο συντελεστής DC q(0,0) και οι «χαμηλής συχνότητας» 72

77 JPEG πρότυπο συμπίεσης με απώλειες παράγοντες κβαντοποίησης AC. Για παράδειγμα, στην συμπίεση των ραδιογραφικών εικόνων οι κρίσιμες διαγνωστικές πληροφορίες συχνά βρίσκονται στα υψηλής συχνότητας συστατικά. Το μέγεθος των. Στις μαστογραφίες συχνά είναι τόσο μικρό που μια τραχιά κβαντοποίηση των υψηλότερων συντελεστών AC θα ήταν μη αποδεκτή. Σε τέτοιες περιπτώσεις το JPEG επιτρέπει υποστηρικτικούς πίνακες να παρασχεθούν σε σειρές bit. Τέλος, οι πίνακες κβαντοποίησης μπορούν επίσης να βελτιστοποιηθούν για συσκευές αντιγραφής όπως είναι οι εκτυπωτές. Το JPEG σχεδιάστηκε για την συμπίεση εικόνων που πρόκειται να εμφανιστούν σε συσκευές εμφάνισης CRT που μπορεί να αναπαριστούν μια μεγάλη κλίμακα εντάσεων κουκίδας. Συνεπώς, όταν μια εικόνα αποδίδεται μέσω μιας συσκευής μισού τόνου όπως είναι ο εκτυπωτής, η ποιότητα της εικόνας μπορεί να απέχει πολύ από την βέλτιστη. Ο Vander Kam και ο Wong δίνουν μια διαδικασία για τον σχεδιασμό ενός πίνακα κβαντοποίησης που είναι βέλτιστος για μια δεδομένη μέθοδο μισού τόνου και κλιμάκωσης που έχει επιλεχθεί. Η βασική ιδέα πίσω από τον αλγόριθμό τους είναι να κωδικοποιήσει πιο τραχιάς συχνότητας συστατικά τα οποία διαφθείρονται και να κωδικοποιήσει πιο τέλεια συστατικά τα οποία δεν τα αγγίζει ο μισός τόνος. Παρόμοια, για να ληφθούν υπόψη οι επιδράσεις της κλιμάκωσης, η διαδικασία σχεδιασμού τους ορίζει έναν υψηλότερο ρυθμό bit στα συστατικά συχνότητας που αντιστοιχούν σε ένα μεγάλο όφελος και σε ένα χαμηλότερο ρυθμό bit στα συστατικά Αντιστοίχιση και κωδικοποίηση συντελεστή σε σύμβολο Ο κβαντοποιητής κάνει την κωδικοποίηση να έχει απώλεια, αλλά παρέχει την μεγαλύτερη συνεισφορά στην συμπίεση. Ωστόσο, η φύση των κβαντοποιημένων συντελεστών DCT και η υπεροχή των μηδενικών στην σειρά οδηγεί σε περαιτέρω συμπίεση με την χρήση της κωδικοποίησης χωρίς απώλειας. Αυτό απαιτεί οι κβαντοποιημένες συντελεστές να χαρτογραφηθούν σε σύμβολα με τέτοιο τρόπο που τα σύμβολα να οδηγούν τους εαυτούς τους σε αποδοτική κωδικοποίηση. Γι αυτό το σκοπό, το JPEG αντιμετωπίζει τους συντελεστές DC και την ομάδα των συντελεστών AC με ένα διαφορετικό τρόπο. Μόλις τα σύμβολα οριστούν, στη συνέχεια αναπαριστώνται με κωδικοποίηση Huffman ή με αριθμητική κωδικοποίηση. Στον ορισμό των συμβόλων για κωδικοποίηση, οι συντελεστές DCT σαρώνονται μέσω της διάσχισης της κβαντοποιημένης σειράς συντελεστών με ένα τρόπο ζιγκ ζαγκ που φαίνεται στο σχήμα 18. Η σάρωση ζιγκ ζαγκ επεξεργάζεται τους συντελεστές DCT με αυξανόμενη διάταξη χωρητικής συχνότητας. Θυμηθείτε ότι οι κβαντοποιημένοι υψηλής συχνότητας συντελεστές είναι μηδέν με υψηλή πιθανότητα. Συνεπώς η σάρωση με αυτή τη 73

78 JPEG πρότυπο συμπίεσης με απώλειες διάταξη οδηγεί σε μια ακολουθία που περιέχει έναν μεγάλο αριθμό μηδενικών τιμών και αυτές μπορούν να κωδικοποιηθούν αποδοτικά όπως περιγράφεται αργότερα. Το στοιχείο [0,0] ή ο κβαντοποιημένος συντελεστής DC διαχωρίζεται από την εναπομείνασα σειρά των 63 συντελεστών AC, και τα σύμβολα ορίζονται στην συνέχεια όπως φαίνεται στο σχήμα 1. Εικόνα 13. Διαδικασία zig-zag σάρωσης Σύμβολα συντελεστή DC Οι συντελεστές DC σε γειτονικά τετράγωνα σχετίζονται πολύ. Αυτό το γεγονός βοηθάει στο να κωδικοποιηθούν διαφορετικά. Τα qx i [0,0] και qx i-1 [0,0] δείχνουν τον κβαντοποιημένο συντελεστή DC σε τετράγωνα i και i-1. Η διαφορά δi = qx i [0,0] - qx i-1 [0,0] υπολογίζεται. Ας υποθέσουμε μια ακρίβεια των 8 bits για κάθε κουκίδα για κάθε συστατικό, ακολουθεί ότι η μεγαλύτερη τιμή του συντελεστή DC, με q[0,0]=1, είναι λιγότερο από 2048, έτσι ώστε οι τιμές του δi βρίσκονται στην κλίμακα [-2047,2047]. Αν χρησιμοποιηθεί η κωδικοποίηση Huffman, τότε αυτές οι πιθανές τιμές θα απαιτούσαν ένα μεγάλο πίνακα κωδικοποίησης. Για να μειωθεί το μέγεθος του πίνακα κωδικοποίησης, οι τιμές σε αυτή την κλίμακα ομαδοποιούνται σε κατηγορίες μεγέθους 12, στις οποίες αποδίδονται ετικέτες 0 μέσω 11. Η κατηγορία k περιέχει 2 k στοιχεία ( 2 k 1,..., 2 k 1). Η διαφορά δi χαρτογραφείται σε ένα σύμβολο που περιγράφεται από ένα ζεύγος (κατηγορία, εύρος). Οι 12 κατηγορίες κωδικοποιούνται με την κωδικοποίηση Huffman. Για να μπορέσουν να ξεχωριστούν οι τιμές στην ίδια κατηγορία, επιπλέον k bits χρησιμοποιούνται ένα από τα πιθανά 2 k «εύρη» των συμβόλων μέσα στην κατηγορία k. Από τη μια πλευρά, το εύρος του 74

79 JPEG πρότυπο συμπίεσης με απώλειες δi, {2 k-1 di 2 k -1) δίνεται απλά από αυτό. Από την άλλη πλευρά το εύρος του δi, {-2 k -1 di -2 k-1 ) από την ολοκλήρωση της απόλυτης τιμής i, ή απλά από την δυαδική αναπαράσταση του δi+2 k Αντιστοίχιση του συντελεστή AC σε σύμβολα Όπως παρατηρήθηκε πριν, οι περισσότεροι από τους κβαντοποιημένους συντελεστές είναι μηδέν. Η σαρωμένη ζιγκ ζαγκ σειρά των 63 συντελεστών περιέχει πολλές συνεχείς εμφανίσεις «μηδέν» κάνοντας τους κβαντοποιημένους συντελεστές AC κατάλληλους για μακρού μεγέθους κωδικοποίηση. Τα σύμβολα σε αυτή την περίπτωση μπορούν να οριστούν σαν [μη μηδενική τελική τιμή] η οποία στη συνέχεια μπορεί να κωδικοποιηθεί με εντροπία. Ωστόσο ο αριθμός των πιθανών τιμών των συντελεστών AC είναι μεγάλος όπως είναι προφανές από τον ορισμό της DCT. Για κουκίδες των 8 bit, η επιτρεπόμενη κλίμακα της τιμής του συντελεστή AC είναι [-1023, 1023]. Όσον αφορά τους μεγάλους πίνακες κωδικοποίησης αυτό περιλαμβάνει μια διαδικασία παρόμοια με αυτή που συζητήθηκε παραπάνω για τους συντελεστές DC που χρησιμοποιήθηκαν. Οι κατηγορίες ορίζονται για κατάλληλες ομαδοποιημένες τιμές που ολοκληρώνουν ένα γύρο. Συνεπώς ένα ζεύγος γύρου/κατηγορίας μαζί με το εύρος μέσα σε μια κατηγορία χρησιμοποιείται για να ορίσει ένα σύμβολο. Η γενιά των bit ορισμών της κατηγορίας και του εύρους χρησιμοποιούν την ίδια διαδικασία όπως στην κωδικοποίηση DC. Συνεπώς μια τιμή κατηγορίας 4 bit συνδέεται αλυσιδωτά με ένα μήκος γύρου 4 bit για να παρθεί ένα σύμβολο των 8 bit. Αυτό το σύμβολο στη συνέχεια κωδικοποιείται μέσω κωδικοποίησης Huffman είτε μέσω αριθμητικής κωδικοποίησης. Υπάρχουν δύο ειδικές περιπτώσεις που δημιουργούνται όταν κωδικοποιείται το σύμβολο. Πρώτον εφόσον η τιμή περιορίζεται στο 15, το σύμβολο (15,0) που χρησιμοποιείται δείχνει 15 μηδενικά που ακολουθούνται από ένα μηδέν. Ένας αριθμός από αυτά μπορεί να διαταχθούν κατά φθίνουσα σειρά για να σχηματίσουν συγκεκριμένους μεγαλύτερους γύρους. Δεύτερον, αν μετά από έναν μη μηδενικό συντελεστή AC όλοι οι εναπομείναντες συντελεστές είναι μηδέν τότε ένα ειδικό σύμβολο (0/0) που δείχνει το τέλος των τετραγώνων κωδικοποιείται. Το σχήμα 1 συνεχίζει το παράδειγμά μας και δείχνει τη σειρά των συμβόλων που δημιουργούνται για κωδικοποίηση του κβαντοποιημένου τετραγώνου DCT στο σχήμα 6. 75

80 JPEG πρότυπο συμπίεσης με απώλειες Κωδικοποίηση εντροπίας Τα σύμβολα που ορίζονται για τους συντελεστές DC και AC μπορεί να κωδικοποιηθούν με εντροπία χρησιμοποιώντας κυρίως τη μέθοδο Huffman, ή επιλεκτικά και λιγότερο συχνά, αριθμητική κωδικοποίηση με βάση τους υπολογισμούς πιθανότητας των συμβόλων. Η κωδικοποίηση Huffman είναι μια μέθοδος κωδικοποίησης μεταβλητού μήκους (VLC) στην οποία μικρότερες λέξεις κλειδιά αποδίδονται στα πιο συχνά απαντώμενα σύμβολα ώστε να επιτευχθεί μια μέση κωδική λέξη συμβόλου που είναι όσο το δυνατόν πιο κοντά στην πηγή του συμβόλου. Η κωδικοποίηση Huffman είναι βέλτιστη (απαντά το όριο εντροπίας) μόνο όταν οι πιθανότητες του συμβόλου είναι ακέραιες δυνάμεις του ½. Η τεχνική της <αριθμητικής κωδικοποίησης παρέχει μια λύση για να αποκτηθεί το θεωρητικό όριο της εντροπίας πηγής. Η βασική εφαρμογή του προτύπου JPEG χρησιμοποιεί μόνο κωδικοποίηση Huffman. Αν χρησιμοποιηθεί κωδικοποίηση Huffman, τότε οι πίνακες Huffman μέχρι το ελάχιστο του οκτώ τον αριθμό, ορίζονται στη σειρά των bit. Οι πίνακες που κατασκευάστηκαν δεν πρέπει να περιέχουν λέξεις κλειδιά που (Α) έχουν μήκος μεγαλύτερο από 16 bits ή (β) αποτελούνται μόνο από μονάδες. Προτεινόμενοι πίνακες υπάρχουν στο παράρτημα Κ του προτύπου. Αν αυτοί οι πίνακες εφαρμοστούν στην έξοδο του κβαντοποιητή που φαίνεται στις δύο πρώτες στήλες του σχήματος 1 τότε ο αλγόριθμος παράγει bits εξόδου που φαίνονται στις ακόλουθες στήλες του σχήματος. Οι διαδικασίες για τον ορισμό και τη δημιουργία των πινάκων Huffman είναι πανομοιότυπες με αυτές που χρησιμοποιήθηκαν στο πρότυπο χωρίς απώλεια το οποίο εξηγήθηκε στο συνοδευτικό Κεφάλαιο 7. 76

81 JPEG πρότυπο συμπίεσης με απώλειες Μορφοποιήσεις Δεδομένων Εικόνας και Συστατικά Το πρότυπο JPEG προτείνεται για συμπίεση τόσο ασπρόμαυρων όσο και έγχρωμων εικόνων. Σε μια ασπρόμαυρη εικόνα υπάρχει ένα μοναδικό συστατικό «φωτεινότητας». Ωστόσο, μια έγχρωμη εικόνα αναπαριστάται από πολλαπλά συστατικά και τα πρότυπο JPEG θέτει όρους στην επιτρεπόμενο αριθμό των συστατικών και τις μορφοποιήσεις των δεδομένων. Το πρότυπο επιτρέπει το πολύ 255 έγχρωμα συστατικά, τα οποία είναι ορθογώνιες σειρές από τιμές pixels που αναπαριστώνται με μια ακρίβεια των 8 ή των 12 bit. Για κάθε έγχρωμο συστατικό, η μεγαλύτερη διάσταση που υποστηρίζεται τόσο σε οριζόντια όσο και σε κάθετη διάσταση είναι 2 16 = Όλες οι σειρές έγχρωμου συστατικού δεν έχουν απαραίτητα τις ίδιες διαστάσεις. Υποθέστε ότι μια εικόνα περιέχει Κ έγχρωμα συστατικά που δείχνονται από C n, n = 1,2,, K. Οι οριζόντιες και κάθετες διαστάσεις του συστατικού n είναι ίσες με το Xn και Yn, αντίστοιχα. Ορίζουμε τις διαστάσεις Χ μεγ., Υ μεγ. και Χ ελαχ., Υ ελαχ. σαν 77

82 JPEG πρότυπο συμπίεσης με απώλειες Χ μεγ. =.{ Xn } Υ μεγ. =.{ Υn } n 1 n 1 Χ ελαχ,. =.{ Xn } Υ ελαχ,. =.{ Υn } n 1 n 1 Με κάθε έγχρωμο συστατικό C n, n = 1,2,,K, κάποιος συσχετίζει σχετικούς οριζόντιους και κάθετους δειγματικούς παράγοντες, που δείχνονται από το H n και V n αντίστοιχα, όπου Η n = X n X V n = n Το πρότυπο περιορίζει τις πιθανές τιμές H n και V n να στο σύνολο τεσσάρων ακεραίων 1,2,3,4. Οι μεγαλύτερες τιμές των σχετικών δειγματικών παραγόντων δίνονται από Η μεγ. = μεγ. {H n ) και V μεγ. = μεγ. (V n ). Σύμφωνα με σχέδιο της μορφής του αρχείου JPEG οι έγχρωμες πληροφορίες ορίζονται από [X μεγ., Υ μεγ., H n και V n, n = 1,2,, K, Η μεγ., V μεγ. ). Οι οριζόντιες διαστάσεις των συστατικών υπολογίζονται από τον αποκωδικοποιητή σαν Hn Χ n = X. x H. Παράδειγμα 1. Θεωρείστε μια ακατέργαστη εικόνα σε μια αναπαράσταση φωτεινότητας και χρωματότητας που απαρτίζεται από Κ = 3 συστατικά, C 1 =Y, C 2 =C r, και C 3 =C b. Οι διαστάσεις του πλαισίου φωτεινότητας (Υ) θα είναι Χ 1 = 720 και Υ 1 = 480, και οι διαστάσεις των δύο πλαισίων χρωματότητας (C r και C b ) θα είναι Χ 2 = Χ 3 = 360 και Υ 2= Υ 3 = 240. Σε αυτή την περίπτωση Χ μεγ. =720 και Υ μεγ. = 480. Οι παράγοντες του σχετικού δείγματος είναι Η 2 =V 1 =2 και Η 2 =V 2 = Η 3 =V 3 =1. Όταν οι εικόνες έχουν πολλαπλά συστατικά, το πρότυπο περιγράφει σχέδια για την οργάνωση των δεδομένων για το σκοπό της αποθήκευσης. 78

83 JPEG πρότυπο συμπίεσης με απώλειες Εικόνα 9. Οργάνωση των μονάδων δεδομένων των Υ, Cr, Cb συστατικών σε μηδιαστρωματωμένα (Non-interleaved) και διαστρωματωμένα (interleaved) μορφές Στην αποθήκευση των συστατικών, το πρότυπο παρέχει την επιλογή της χρήσης είτε διαστρωματωμένων είτε μη-διαστρωματωμένων μορφών. Η αποδοτικότητα όσον αφορά την επεξεργασία και την αποθήκευση βοηθάται, ωστόσο, από την εσωτερική απόθεση των συστατικών όπου τα δεδομένα διαβάζονται σε μια και μόνο σάρωση. Η εσωτερική απόθεση εκτελείται μέσω του ορισμού μιας μονάδας δεδομένων για κωδικοποίηση με απώλεια σαν ένα και μόνο μπλοκ με 8 Χ 8 pixels σε κάθε έγχρωμο συστατικό. Αυτός ο ορισμός μπορεί να χρησιμοποιηθεί για να διαιρέσει το n-οστό έγχρωμο συστατικό C n, n= 1,2,, K σε ορθογώνια τετράγωνα το καθένα από τα οποία περιέχει H n X V n μονάδες δεδομένων. Μια μονάδα ελάχιστης κωδικοποίησης (MCU-minimum coded unit) στη συνέχεια ορίζεται σαν η μικρότερη συλλογή από μονάδες δεδομένων που αποκτήθηκε από την διαδοχική διαλογή των 79

84 JPEG πρότυπο συμπίεσης με απώλειες μονάδων δεδομένων H n X V n από το n-οστό έγχρωμο συστατικό. Ορισμένοι περιορισμοί επιβάλλονται στα δεδομένα ώστε να αποθηκευτούν στο σχέδιο εσωτερικής απόθεσης. Ο αριθμός των εσωτερικών συστατικών δεν πρέπει να υπερβαίνει τους τέσσερις και μια μονάδα ελάχιστης κωδικοποίησης (MCU) δεν πρέπει να περιέχει περισσότερες από 10 μονάδες δεδομένων, π.χ. K n 1 HnVn 10 Αν αυτοί οι περιορισμοί δεν εκπληρωθούν, τότε τα δεδομένα αποθηκεύονται σε μια εξωτερική μορφή όπου κάθε συστατικό επεξεργάζεται με διαδοχικές σαρώσεις. Παράδειγμα 2. Ας δούμε την περίπτωση αποθήκευσης των συστατικών Υ, C r, C b στο παράδειγμα 1. Το συστατικό φωτεινότητας περιέχει 90 Χ 60 μονάδες δεδομένων, και το κάθε ένα από τα δύο συστατικά χρωματότητας περιέχει 45 Χ 30 μονάδες δεδομένων. Το σχήμα 9 δείχνει τόσο εσωτερική όσο και εξωτερική τακτοποίηση των δεδομένων για τα Κ = 3 συστατικά, C 1 = Y, C 2 = C r και C 3 = C b με H 1 = V 1 = 2, και H 2 = V 2 = H 3 = V 3 =1. Η MCU σε αυτή την περίπτωση περιέχει έξι μονάδες δεδομένων, που απαρτίζονται από H 1 X V 1 = 4 μονάδες δεδομένων του συστατικού Υ και Η 2 Χ V 2 = H 3 X V 3 =1 κάθε ένα από τα συστατικά C r και C b Εναλλακτικά Μοντέλα Λειτουργίας Αυτό που περιγράφηκε μέχρι στιγμής σε αυτό το κεφάλαιο αναπαριστά το JPEG σειριακής κατάστασης DCT (sequential DCT mode). H σειριακή κατάσταση DCT είναι αυτή που χρησιμοποιείται συνήθως για τη λειτουργία του JPEG και απαιτείται να υποστηρίζεται από οποιαδήποτε βασική εφαρμογή του προτύπου. Ωστόσο, μαζί με την σειριακή μέθοδο DCT το JPEG ορίζει επίσης μια προοδευτική μέθοδο DCT (progressive DCT mode),, σειριακή μέθοδο χωρίς απώλειες (sequential lossless mode), και μια ιεραρχική μέθοδο (hierarchical mode). 80

85 JPEG πρότυπο συμπίεσης με απώλειες Εικόνα 10. JPEG modes λειτουργίας Στο σχήμα 10 δείχνουμε πως οι διαφορετικές μέθοδοι μπορούν να χρησιμοποιηθούν. Για παράδειγμα, η ιεραρχική μέθοδος μπορεί να χρησιμοποιηθεί σε συνδυασμό με οποιαδήποτε από τις άλλες μεθόδους όπως φαίνεται στο σχήμα. Στην μέθοδο χωρίς απώλειες, το JPEG χρησιμοποιεί έναν τελείως διαφορετικό αλγόριθμο που βασίζεται στην προβλέψιμη κωδικοποίηση όπως περιγράφεται με λεπτομέρεια στο επόμενο κεφάλαιο. Σε αυτό το τμήμα περιοριζόμαστε στην συμπίεση με απώλεια και περιγράφουμε με περισσότερη λεπτομέρεια την βασισμένη στην DCT προοδευτική και ιεραρχική μέθοδο λειτουργίας Προοδευτική μέθοδος (Progressive mode) Σε μερικές εφαρμογές μπορεί να είναι πλεονέκτημα η εκπομπή μιας εικόνας σε πολλαπλά περάσματα, τέτοια ώστε μετά από κάθε πέρασμα μια αυξανόμενης ακρίβειας προσέγγιση προς την τελική εικόνα να μπορεί να δομηθεί στον δέκτη. Στο πρώτο πέρασμα εκπέμπονται πολύ λίγα bits και η αναδομημένη εικόνα είναι ίση με εκείνη που αποκτήθηκε μια πολύ χαμηλής ρύθμιση ποιότητας. Το κάθε ένα από τα ακόλουθα περάσματα παρέχει επιπλέον bits, τα οποία χρησιμοποιούνται για να ραφινάρουν την ποιότητα της αναδομημένης εικόνας. Ο συνολικός αριθμός των bits που εκπέμπονται είναι περίπου ο ίδιος που θα απαιτούνταν για να σταλεί η τελική εικόνα σε μια σειριακή μέθοδο DCT. Ένα παράδειγμα μιας εφαρμογής η οποία θα ωφελούνταν από την προοδευτική εκπομπή δίνεται στο Διαδίκτυο, όπου ένας χρήστης μπορεί να θέλει να αρχίσει εξετάζοντας τα περιεχόμενα ολόκληρης της σελίδας χωρίς να περιμένει μέχρις ότου κάθε εικόνα που υπάρχει στην σελίδα να «φορτωθεί» πλήρως. Άλλα παραδείγματα αφορούν την απομακρυσμένη περιήγηση μέσα σε μία βάση δεδομένων εικόνων, την τηλεϊατρική, και τα δίκτυα γενικότερα. Το JPEG 81

86 JPEG πρότυπο συμπίεσης με απώλειες περιέχει μια προοδευτική μέθοδο κωδικοποίησης που ταιριάζει πολύ σε τέτοιες εφαρμογές. Το μειονέκτημα της προοδευτικής εκπομπής, φυσικά, είναι ότι η εικόνα πρέπει να αποκωδικοποιηθεί πάρα πολλές φορές και αφού έχει ουσία μόνο όταν ο αποκωδικοποιητής είναι ταχύτερος από την σύνδεση επικοινωνίας. Στην προοδευτική μέθοδο, οι συντελεστές DCT κωδικοποιούνται σε μια σειρά από σαρώσεις. Το JPEG ορίζει δύο τρόπους με τους οποίους μπορεί να γίνει αυτό: φασματική επιλογή (spectral selection) και διαδοχική προσέγγιση (successive approximation). Στην μέθοδο της φασματικής επιλογής, οι συντελεστές DCT αποδίδονται σε διαφορετικές ομάδες σύμφωνα με την θέση τους στο μπλοκ DCT και κατά τη διάρκεια του κάθε περάσματος, οι συντελεστές DCT που ανήκουν σε μια και μοναδική ομάδα εκπέμπονται. Για παράδειγμα, ας δούμε την ακόλουθη ομάδα των 64 συντελεστών DCT που αριθμούνται από το 0 έως το 63 στην διάταξη σάρωσης ζιγκ ζαγκ {0}, {1,2,3}, {4,5,6,7}, {8,,63} Εδώ, μόνο οι συντελεστές DC κωδικοποιούνται στην πρώτη σάρωση. Αυτή είναι μια απαίτηση που επιβάλλεται από το πρότυπο. Στην προοδευτική DCT μέθοδο, οι συντελεστές DC στέλνονται πάντα σε μια ξεχωριστή σάρωση. Η δεύτερη σάρωση του παραδείγματος κωδικοποιεί τους πρώτους τρεις συντελεστές AC στην ζιγκ-ζαγκ διάταξη, η τρίτη σάρωση κωδικοποιεί τους επόμενους τέσσερις συντελεστές AC και η τέταρτη και τελευταία σάρωση κωδικοποιεί τους εναπομείναντες συντελεστές. Το JPEG παρέχει το συντακτικό για τον ορισμό του αρχικού αριθμού συντελεστή και του τελικού που έχουν κωδικοποιηθεί σε μια συγκεκριμένη σάρωση. Αυτό περιορίζει μια ομάδα συντελεστών που θα κωδικοποιηθούν σε μια δεδομένη σάρωση στο ότι πρέπει να είναι διαδοχικοί στην ζιγκ ζαγκ διάταξη. Οι πρώτοι συντελεστές DCT συχνά είναι συχνά επαρκείς για να δώσουν μια λογική απόδοση της εικόνας. Στην πραγματικότητα, μόνο οι συντελεστές DC εξυπηρετούν ώστε βασικά να αναγνωριστούν τα περιεχόμενα μιας εικόνας, παρόλο που η αναδομημένη εικόνα περιέχει αυστηρά τεχνουργήματα. Πρέπει να σημειωθεί ότι αφού αποκωδικοποιηθούν όλες οι σαρώσεις, η ποιότητα της τελικής εικόνας είναι ίδια με εκείνη που αποκτήθηκε από μια σειριακή μέθοδο λειτουργίας. Ο ρυθμός των bit, ωστόσο, μπορεί να είναι διαφορετικός, καθώς οι διαδικασίες της κωδικοποίησης εντροπίας για την προοδευτική μέθοδο είναι διαφορετικές όπως περιγράφεται παρακάτω. Στην κωδικοποίηση διαδοχικής προσέγγισης, οι συντελεστές DCT στέλνονται σε διαδοχικές σαρώσεις με ένα αυξανόμενο επίπεδο ακρίβειας. Ο συντελεστής DC, ωστόσο, στέλνεται στην πρώτη σάρωση με πλήρη ακρίβεια, ακριβώς όπως στην κωδικοποίηση 82

87 JPEG πρότυπο συμπίεσης με απώλειες φασματικής επιλογής. Οι συντελεστές AC στέλνονται κατά επίπεδο bit, ξεκινώντας από το πιο σημαντικό επίπεδο bit προς το πιο ασήμαντο. Οι τεχνικές κωδικοποίησης εντροπίας που χρησιμοποιούνται στην προοδευτική μέθοδο είναι ελαφρώς διαφορετικές από εκείνες που χρησιμοποιούνται στην σειριακή μέθοδο. Εφόσον ο συντελεστής DC στέλνεται πάντα σαν μια ξεχωριστή σάρωση, οι διαδικασίες της κωδικοποίησης Huffman και της αριθμητικής κωδικοποίησης που χρησιμοποιούνται παραμένουν οι ίδιες με εκείνες στην σειριακή μέθοδο. Ωστόσο, η κωδικοποίηση των συντελεστών AC γίνεται λίγο διαφορετικά. Στην κωδικοποίηση φασματικής επιλογής (χωρίς επιλεκτικό ραφινάρισμα) και στο πρώτο στάδιο της κωδικοποίησης διαδοχικής προσέγγισης, μια νέα ομάδα συμβόλων ορίζονται για να δείξουν τους γύρους των κωδικών του τέλους του μπλοκ (ΕΟΒ- End Of Block). Θυμηθείτε, στην σειριακή μέθοδο, ο κώδικας ΕΟΒ δείχνει ότι το υπόλοιπο του μπλοκ περιέχει μηδενικούς συντελεστές. Με την φασματική επιλογή, η κάθε σάρωση περιέχει μόνο μερικούς συντελεστές AC και η πιθανότητα να βρούμε την ΕΟΒ είναι αρκετά υψηλότερη. Παρόμοια, στην κωδικοποίηση διαδοχικής προσέγγισης κάθε μπλοκ απαρτίζεται από μειωμένης ακρίβειας συντελεστές, που οδηγούν και πάλι στην κωδικοποίηση ενός μεγάλου αριθμού συμβόλων ΕΟΒ. Συνεπώς, για να εκμεταλλευτεί αυτό το γεγονός και για να επιτύχει περαιτέρω μείωση όσον αφορά τον ρυθμό των bit, το JPEG ορίζει μια επιπλέον ομάδα 15 συμβόλων σαν ΕΟΒ, το καθένα από τα οποία αναπαριστά έναν γύρο 2 n κωδικών ΕΟΒ. Μετά από κάθε ΕΟΒιανό κωδικό, επιπλέον i bits προσαρτώνται για να ορίσουν το ακριβές μήκος του γύρου. Πρέπει να σημειωθεί ότι οι δύο προοδευτικές μέθοδοι, η φασματική επιλογή και το διαδοχικό ραφινάρισμα, μπορούν να συνδυαστούν για να δώσουν διαδοχική προσέγγιση σε κάθε φασματική ζώνη που κωδικοποιείται. Αυτό έχει σαν αποτέλεσμα έναν αρκετά πολύπλοκο κώδικα, ο οποίος σύμφωνα με όσα γνωρίζουμε σπάνια χρησιμοποιείται. Είναι πιθανό να γίνει ανταλλαγή κωδικοποίησης ανάμεσα στο προοδευτικό JPEG και στο σειριακό JPEG χωρίς καμία απώλεια στην ποιότητα και περίπου με την ίδια διατήρηση του ρυθμού των bit. Η φασματική επιλογή έχει σαν αποτέλεσμα ελαφρώς υψηλότερους ρυθμούς bit απ ότι στην σειριακή μέθοδο, ενώ η διαδοχική προσέγγιση συχνά έχει σαν αποτέλεσμα χαμηλότερους ρυθμούς bit. Οι διαφορές, ωστόσο, είναι μικρές. Παρά τα πλεονεκτήματα της προοδευτικής εκπομπής, δεν έχουν υπάρξει πολλές εφαρμογές των διαδοχικών κωδικών JPEG. Υπήρξε κάποιο ενδιαφέρον γι αυτούς πρόσφατα εξαιτίας της εξάπλωσης των εικόνων στο Διαδίκτυο. Αναμένεται ότι πολλοί περισσότεροι δημόσιας χρήσης προοδευτικοί κωδικοί JPEG θα είναι διαθέσιμοι στο μέλλον. 83

88 JPEG πρότυπο συμπίεσης με απώλειες Ιεραρχική μέθοδος Η ιεραρχική μέθοδος ορίζει έναν ακόμη τύπο προοδευτικής εκπομπής στην οποία η εικόνα αναλύεται σε μια πυραμιδική δομή αυξανόμενης ανάλυσης. Το ανώτερο μέρος στην πυραμίδα αναπαριστά την εικόνα και το χαμηλότερο την ανάλυση, και η βάση της πυραμίδας αναπαριστά την εικόνα σε πλήρη ανάλυση. Υπάρχει ένας διπλασιασμός αναλύσεων τόσο σε οριζόντια όσο και σε κάθετη διάσταση, ανάμεσα στα διαδοχικά επίπεδα στην πυραμίδα. Η ιεραρχική κωδικοποίηση είναι χρήσιμη σε εφαρμογές όπου μια εικόνα πρέπει να εμφανιστεί σε διαφορετικές αναλύσεις σε μονάδες όπως είναι οι συσκευές χειρός, οι οθόνες υπολογιστών διαφόρων αναλύσεων, και οι υψηλής ανάλυσης υπολογιστές. Σε ένα τέτοιο σενάριο, μια πολυαναλυτική αναπαράσταση επιτρέπει την εκπομπή του κατάλληλου επιπέδου σε κάθε συσκευή, κάνοντας έτσι πλήρη χρήση του διαθέσιμου πλάτους ζώνης. Στην ιεραρχική μέθοδο JPEG, κάθε συστατικό της εικόνας κωδικοποιείται σαν μια σειρά από πλαίσια. Το πλαίσιο χαμηλότερης ανάλυσης (επίπεδο 1) κωδικοποιείται χρησιμοποιώντας μια από την διαδοχική ή σειριακή μέθοδο. Τα εναπομείναντα επίπεδα κωδικοποιούνται διαφορετικά. Δηλαδή, μία εκτίμηση ' I i της εικόνας I i, στο iοστό επίπεδο (i 2) σχηματίζεται πρώτα δειγματίζοντας την εικόνα χαμηλής ανάλυσης Ι i-1 από το επίπεδο που βρίσκεται ακριβώς από πάνω. Η διαφορά ανάμεσα στο ' I i και στο I i στη συνέχεια κωδικοποιείται χρησιμοποιώντας τροποποιήσεις των μεθόδων που βασίζονται στη DCT ή της μεθόδου χωρίς απώλεια. Αν χρησιμοποιηθεί η μέθοδος χωρίς απώλεια για να κωδικοποιηθεί το κάθε ραφινάρισμα, τότε η τελική αναδόμηση στο βασικό στρώμα είναι χωρίς απώλεια. Το φίλτρο που χρησιμοποιείται είναι διγραμμικό που ορίζεται από το πρότυπο και δεν μπορεί να οριστεί από τον χρήστη. Ξεκινώντας από την εικόνα υψηλής ανάλυσης, δημιουργούνται διαδοχικές εικόνες χαμηλής ανάλυσης υποδειγματίζοντας κατά 2 προς κάθε κατεύθυνση. Το ακριβές φίλτρο που θα χρησιμοποιηθεί δεν ορίζεται, αλλά το πρότυπο JPEG προειδοποιεί το φίλτρο που θα χρησιμοποιηθεί να είναι συνεπές με το καθορισμένο φίλτρο. Σημειώστε ότι ο αποκωδικοποιητής δεν χρειάζεται να ξέρει ποιο φίλτρο χρησιμοποιείται ώστε να αποκωδικοποιήσει μια σειρά bit. Το σχήμα 11 δείχνει τη σειρά των λειτουργιών που εκτελούνται σε κάθε επίπεδο τα ιεραρχίας. Επίσης ο συντελεστής DC κωδικοποιείται απ ευθείας και όχι διαφορικά. Εκτός από αυτά τα δύο γεγονότα, το μοντέλο κωδικοποίησης Huffman στην προοδευτική μέθοδο είναι ίδιο με εκείνο που χρησιμοποιείται στην σειριακή μέθοδο. Η αριθμητική κωδικοποίηση, 84

89 JPEG πρότυπο συμπίεσης με απώλειες ωστόσο, γίνεται λίγο διαφορετικά, με στάδια που βασίζονται σε διαφορές με το pixel αριστερά καθώς επίσης και με αυτό πιο πάνω να χρησιμοποιούνται. Εικόνα 11. JPEG Hierarchical mode 4.8. JPEG Μέρος 3 Το JPEG πρόσφατα έκανε κάποιες επεκτάσεις στο αρχικό πρότυπο που περιγράφηκε στο 1. Αυτές οι επεκτάσεις συλλογικά είναι γνωστές σαν JPEG Μέρος 3. Τα πιο σημαντικά στοιχεία του JPEG Μέρος 3 είναι η μεταβλητή κβαντοποίηση και η επίστρωση, όπως περιγράφεται με περισσότερη λεπτομέρεια παρακάτω Μεταβλητή κβαντοποίηση Ένας από τους κύριους περιορισμούς του αρχικού προτύπου JPEG ήταν το γεγονός ότι τα ορατά τεχνουργήματα (visible artifacts) μπορούν συχνά να εμφανιστούν στην αναλυμένη εικόνα σε μέσες έως υψηλές αναλογίες συμπίεσης. Αυτό ισχύει ιδιαίτερα για μέρη της εικόνας που περιέχουν γραφικά, κείμενο ή κάποιο άλλο τέτοιο σύνθετο συστατικό. Τα τεχνουργήματα είναι επίσης κοινά σε λείες περιοχές και σε τετράγωνα της εικόνας που περιέχουν μια και μοναδική κυρίαρχη άκρη. Βλέπουμε την συμπίεση των 24 bits/κουκίδα της έγχρωμης εκδοχής της εικόνας Lena. Στο σχήμα 12 βλέπουμε την αναδομημένη εικόνα Lena με διαφορετικές αναλογίες συμπίεσης. Στην συμπίεση 24 προς 1 βλέπουμε λίγα τεχνουργήματα. Αλλά καθώς η αναλογία συμπίεσης αυξάνεται στα 96 προς 1, αξιοσημείωτα τεχνουργήματα αρχίζουν να εμφανίζονται. Ιδιαίτερα ενοχλητική είναι το «blocking artifact» σε λείες περιοχές της εικόνας. 85

90 JPEG πρότυπο συμπίεσης με απώλειες Μια προσέγγιση για να αντιμετωπιστεί αυτό το πρόβλημα είναι να αλλάξει η «τραχύτητα» της κβαντοποίησης σαν μια λειτουργία των χαρακτηριστικών της εικόνας στο μπλοκ που συμπιέζεται. Η τελευταία προέκταση του προτύπου JPEG, που ονομάζεται JPEG Μέρος 3, επιτρέπει την επανακλιμάκωση του κβαντοποιημένου πλαισίου Q σε μια βάση μπλοκ προς μπλοκ, αλλάζοντας πιθανώς τον τρόπο με τον οποίο εκτελείται η κβαντοποίηση για κάθε μπλοκ. Η λειτουργία κλιμάκωσης δεν γίνεται στον συντελεστή DC Υ[0,0], η οποία κβαντοποιείται με τον ίδιο τρόπο όπως το βασικό JPEG. Οι εναπομείναντες 63 συντελεστές DC Y [u,v] κβαντοποιούνται ως εξής: y[ u, v] x16 Y[ u, v] [ ] Q[ u, v] xq ί Εδώ η κλίμακα Q (Qκλίμακα) είναι μια παράμετρος που μπορεί να πάρει τιμές από 1 έως 112 (εξ ορισμού 16). Για να μπορέσει ο αποκωδικοποιητής σωστά να ανακτήσει τους κβαντοποιημένους συντελεστές AC πρέπει να γνωρίζει την τιμή της κλίμακας Q που χρησιμοποιήθηκε από την διαδικασία κωδικοποίησης. Το πρότυπο ορίζει το ακριβές συντακτικό με το οποίο ο κωδικοποιητής μπορεί να ορίσει την αλλαγή στις τιμές της κλίμακας Q. Αν δε δοθεί σήμα για μια τέτοια αλλαγή, τότε ο αποκωδικοποιητής συνεχίζει χρησιμοποιώντας την τιμή της Κλίμακας Q η οποία χρησιμοποιείται. Το overhead που υφίσταται στην σηματοδότηση μιας αλλαγής στον παράγοντα της κλίμακας είναι περίπου 15 bits, ανάλογα με τον πίνακα Huffman που χρησιμοποιείται. Εικόνα 12. Η εικόνα της Lena με ρυθμό συμπίεσης 24 προς 1 και 96 προς 1. 86

91 JPEG πρότυπο συμπίεσης με απώλειες Πρέπει να σημειωθεί ότι το πρότυπο ορίζει μόνο το συντακτικό μέσω του οποίου η κωδικοποιητική διαδικασία μπορεί να σηματοδοτήσει αλλαγές που γίνονται στην τιμή της Κλίμακας Q. Δεν ορίζει πως ο κωδικοποιητής μπορεί να καθορίσει αν μια αλλαγή στην Κλίμακα Q είναι επιθυμητή και ποια πρέπει να είναι η νέα τιμή της Κλίμακας Q. Οι τυπικές μέθοδοι για μεταβλητή κβαντοποίηση στην φιλολογία χρησιμοποιούν το γεγονός ότι το ανθρώπινο οπτικό σύστημα είναι λιγότερο ευαίσθητο σε κβαντοποιητικά λάθη σε υψηλά ενεργές περιοχές της εικόνας. Τα κβαντοποιητικά λάθη είναι συχνά περισσότερο αντιληπτά σε μπλοκς που είναι λεία ή περιέχουν μια και μόνο κυρίαρχη άκρη. Συνεπώς, πριν από την κβαντοποίηση, υπολογίζουν μερικά απλά χαρακτηριστικά για κάθε μπλοκ. Αυτά τα χαρακτηριστικά χρησιμοποιούνται για να κατηγοριοποιήσουν τα μπλοκ είτε σαν λείο, ή υφή κ.λ.π. Με βάση αυτή την κατηγοριοποίηση και ένα απλό μέτρο δραστηριότητας που έχει υπολογιστεί για το μπλοκ, υπολογίζεται μια τιμή Κλίμακας Q. Για παράδειγμα, οι Κωνσταντινίδης και Tretter στην εργασία τους δίνουν έναν αλγόριθμο για τον υπολογισμό των παραγόντων της Κλίμακας Q για την βελτίωση της ποιότητας του κειμένου σε σύνθετα έγγραφα. Υπολογίζουν ένα μέτρο δραστηριότητας Mi για κάθε μπλοκ εικόνας σαν μια λειτουργία των συντελεστών DCT ως εξής: 1 Μi = 64 log2 Yi[0,0] Yi -1 [0,0] log 2 Yi [ j, k] j,k Η τιμή της Κλίμακας Q για το μπλοκ στη συνέχεια υπολογίζεται ως ΚλίμακαQ = α x Mi + b 0,4 2 αν 2 > α x Mi + b α x Mi b 0,4 α x Mi b 2 0,4 Η τεχνική σχεδιάζεται μόνο για να ανιχνεύσει περιοχές κειμένου και θα κβαντοποιήσει υψηλής δραστηριότητας περιοχές υφής στην εικόνα μέρος στην ίδια κλίμακα όπως οι περιοχές κειμένου. Ξεκάθαρα, αυτό δεν είναι βέλτιστο, καθώς οι υψηλής δραστηριότητας περιοχές υφής μπορούν να κβαντοποιηθούν πολύ τραχιά, οδηγώντας έτσι σε μια βελτιωμένη συμπίεση. Επιπλέον, η τεχνική δεν διαχωρίζει τα λεία μπλοκς, όπου τα τεχνουργήματα είναι συχνά τα πρώτα που εμφανίζονται. 87

92 JPEG πρότυπο συμπίεσης με απώλειες Οι αλγόριθμοι για την μεταβλητή κβαντοποίηση που εκτελεί μια πιο εκτεταμένη κατηγοριοποίηση έχουν προταθεί για κωδικοποίηση βίντεο αλλά παρόλα αυτά εφαρμόζονται επίσης σε κωδικοποίηση σταθερής εικόνας. Μια τέτοια τεχνική έχει προταθεί από τον Chun κ.α., ο οποίος κατηγοριοποιεί μπλοκς σαν να είναι είτε λεία, είτε υφής, με βάση αρκετές παραμέτρους που ορίζονται στην περιοχή DCT όπως φαίνεται παρακάτω. Ε h : οριζόντια ενέργεια Ε α : μέσος όρος (Ε h, Ε v, E d ) E m/m : αναλογία των Ε m και Ε Μ Ε v : κάθετη ενέργεια Ε m : ελαχ. (Ε h, Ε v, E d )) Ε d : διαγώνια ενέργεια Ε Μ : μεγ. (Ε h, Ε v, E d ) Εδώ το E α αντιπροσωπεύει τη μέση υψηλής συχνότητας ενέργεια του μπλοκ και χρησιμοποιείται για να κάνει το διαχωρισμό ανάμεσα στα μπλοκς χαμηλής δραστηριότητας και στα μπλοκς υψηλής δραστηριότητας. Τα μπλοκς χαμηλής δραστηριότητας (λεία) ικανοποιούν τη σχέση Ε α Τ 1, όπου το Τ 1 είναι μια μικρή σταθερά. Τα μπλοκς υψηλής δραστηριότητας κατηγοριοποιούνται περαιτέρω σε τετράγωνα υφής και σε τετράγωνα ακμών. Τα μπλοκς υφής ανιχνεύονται υπό την υπόθεση ότι έχουν σχετικά ομοιόμορφη διανομή ενέργειας σε σχέση με τα μπλοκς άκρης. Ειδικότερα, ένα μπλοκ θεωρείται ότι είναι μπλοκ υφής αν ικανοποιεί τις συνθήκες Ε α > Τ 1, Ε ελαχ. > Τ 2, και Ε m/m > T 3, όπου Τ 1, Τ 2 και Τ 3 είναι πειραματικά καθορισμένες μεταβλητές. Όλα τα μπλοκς που δεν ικανοποιούν τις δοκιμές ομαλότητας και υφής κατηγοριοποιούνται σαν μπλοκς ακμών Επίστρωση (Tiling) Το JPEG Μέρος 3 ορίζει μια δυνατότητα επίστρωσης όπου μια εικόνα υποδιαιρείται σε μπλοκ ή πλακίδια, κάθε ένα από τα οποία κωδικοποιείται ανεξάρτητα. Η επίστρωση διευκολύνει τα ακόλουθα χαρακτηριστικά: εμφάνιση μια περιοχής της εικόνας σε ένα δεδομένο μέγεθος οθόνης, γρήγορη πρόσβαση σε υποπεριοχές της εικόνας, ραφινάρισμα της περιοχής που μας ενδιαφέρει και προστασία των μεγάλων εικόνων από την αντιγραφή δίνοντας πρόσβαση μόνο σε ένα μέρος αυτών. Όπως φάνηκε στο σχήμα 13, οι διαφορετικοί τύποι επίστρωσης που επιτρέπονται από το JPEG είναι οι ακόλουθοι: 88

93 JPEG πρότυπο συμπίεσης με απώλειες - Απλή επίστρωση (Simple tiling): αυτή η μορφή επίστρωσης χρησιμοποιείται βασικά για την διαίρεση μια μεγάλης εικόνας σε πολλαπλές υποεικόνες, οι οποίες έχουν το ίδιο μέγεθος (εκτός από τις ακμές) και δεν επικαλύπτονται. Σε αυτή τη μέθοδο, όλα τα πλακίδια απαιτούνται να έχουν τους ίδιους παράγοντες και συστατικά. Άλλοι παράμετροι όπως είναι οι πίνακες κβαντοποίησης και οι πίνακες Huffman επιτρέπεται να αλλάζουν από πλακίδιο σε πλακίδιο. - Πυραμιδική επίστρωση (Pyramidal tiling): Αυτή χρησιμοποιείται για την αποθήκευση πολλαπλών αναλύσεων μιας εικόνας. Η απλή επίστρωση όπως περιγράφηκε παραπάνω χρησιμοποιείται σε κάθε ανάλυση. Τα πλακίδια αποθηκεύονται σε διάταξη ράστερ, από αριστερά προς τα δεξιά, από την κορυφή προς τα κάτω, και από υψηλής ανάλυσης προς χαμηλής ανάλυσης. - Σύνθετη επίστρωση (Composite tiling): Αυτή επιτρέπει πολλαπλές αναλύσεις σε ένα επίπεδο εμφάνισης μιας και μόνο εικόνας. Τα πλακίδια μπορεί να επικαλύπτονται μέσα σε ένα επίπεδο. Μια άλλη επέκταση του Μέρους 3 είναι το επιλεκτικό ραφινάρισμα (selective refinement). Αυτό το χαρακτηριστικό επιτρέπει μια σάρωση σε μια προοδευτική μέθοδο, ή ένα συγκεκριμένο επίπεδο μια ιεραρχικής ακολουθίας, να καλύψει μόνο μέρος της συνολικής περιοχής της εικόνας. Το επιλεκτικό ραφινάρισμα μπορεί να είναι χρήσιμο, για παράδειγμα, σε εφαρμογές τηλεϊατρικής στην οποία ένας ραδιολόγος μπορεί να απαιτήσει ραφιναρίσματα σε συγκεκριμένες περιοχές ενδιαφέροντος της εικόνας. 89

94 JPEG πρότυπο συμπίεσης με απώλειες Εικόνα 14. Διαφορετικοί τύποι tiling που επιτρέπονται στο JPEG Μέρος 3 (α) απλό simple (b) composite (σύνθετο) και (γ) πυραμιδικό (pyramidal) Βιβλιογραφία 1. R.G. Gonzales, R. E. Woods, Digital Image Processing, 2nd edition, Prentice Hall, Skodras, C. Christopoulos and T. Ebrahimi The JPEG 2000 still image compression standard, IEEE Signal Processing Magazine, vol. 18, no. 5, pp , Sept D. Taubman and M. Marcellin, JPEG 2000: Image Compression Fundamentals, Standards and Practice, Kluwer Academic Publishers, D. Santa-Cruz, R. Grosbois and T. Ebrahimi, JPEG 2000 performance evaluation and assessment, Signal Processing: Image Communication, vol. 17, no. 1, pp , January Moccagatta, S. Soudagar, J. Liang and H. Chen, Error-Resilient Coding in JPEG-2000 and MPEG-4, IEEE Journal on Selected Areas in Communications, vol. 18, no. 6, pp , June

95 Συμπίεση βασισμένη στα wavelets ΚΕΦΑΛΑΙΟ 5 Συμπίεση εικόνας βασισμένη στα κυματίδια (wavelets) 5.1 Τι είναι wavelets: Γιατί είναι καλά για την κωδικοποίηση εικόνας; Κατά τη διάρκεια των προηγούμενων δεκαετιών, τα wavelets (στα ελληνικά αποδίδονται κυματίδια αλλά προτιμούμε να αναφερόμαστε με τον αγγλικό όρο) αποτέλεσαν ιδιαίτερη καινοτομία στον τομέα της συμπίεσης εικόνας. Στην πράξη, το FBI έχει ήδη υιοθετήσει πρότυπα συμπίεσης εικόνων δακτυλικών αποτυπωμάτων βασισμένα στα κυματίδια ενώ το εξελισσόμενο νέας γενιάς πρότυπο συμπίεσης εικόνων που αναφέρεται ως JPEG-2000, βασίζεται επίσης στα wavelets Λαμβάνοντας υπόψη αυτές τις συναρπαστικές εξελίξεις, είναι φυσικό να αναρωτηθεί κανείς γιατί τα wavelets έχουν έναν τέτοιο αντίκτυπο στη συμπίεση εικόνας. Τα wavelets είναι εργαλεία αποσύνθεσης σημάτων όπως οι εικόνες, σε μια ιεραρχία αυξανόμενων αναλύσεων: δεδομένου ότι εξετάζουμε όλο και περισσότερα επίπεδα αναλύσεων, ουσιαστικά εξετάζουμε με όλο και περισσότερη λεπτομέρεια την εικόνα μας. Η εικόνα 1 παρουσιάζει μία wavelet αποσύνθεση σε ιεραρχία τριών επιπέδων της δημοφιλούς εικόνας του τομέα της ψηφιακής επεξεργασίας εικόνας Lena ξεκινώντας από μικρή ανάλυση καταλήγοντας σε μεγαλύτερη ανάλυση. Τα wavelets μπορούν να θεωρηθούν ως "μαθηματικά μικροσκόπια" που επιτρέπουν σε κάποιον "να μεγεθύνουν" και "σμικρύνουν" τις εικόνες σε διάφορες αναλύσεις. Το αξιοπρόσεκτο στοιχείο στη wavelet αποσύνθεση είναι ότι επιτρέπει το χαρακτηριστικό γνώρισμα της μεγέθυνσης χωρίς απολύτως κανένα κόστος από την άποψη του υπερβολικού πλεονασμού: για εικόνα M x N, υπάρχουν ακριβώς M x N wavelet συντελεστές ακριβώς ο ίδιος αριθμός όπως το πλήθος των pixel της αρχικής εικόνας. Ως βασικά εργαλεία αποσύνθεσης σημάτων, τα wavelets μπορούν να θεωρηθούν ως δυικές των παραδοσιακών μορφών που βασίζονται στις μεθόδους Fourier ανάλυσης. Η ανάλυση Fourier συνδέεται με την πολύ διαισθητική έννοια της μηχανικής, "του φάσματος" ή του "περιεχομένου συχνότητας" ενός σήματος. Η wavelet ανάλυση, αντίθετα, συνδέεται με την εξίσου διαισθητική έννοια "της ανάλυσης " ή "της κλίμακας " του σήματος. Σε 91

96 Συμπίεση βασισμένη στα wavelets λειτουργικό επίπεδο, η ανάλυση Fourier είναι για τη wavelet ανάλυση ότι είναι οι φασματικοί αναλυτές για τα μικροσκόπια. Στο παρόν κεφάλαιο στοχεύουμε στο να παράσχουμε μια ανεξάρτητη παρουσίαση των wavelets και του ρόλου τους στο πλαίσιο της συμπίεσης εικόνας. Το πιο σημαντικό, στοχεύουμε να δώσουμε μια υψηλού επιπέδου ερμηνεία γιατί έχουν έναν τέτοιο αντίκτυπο στη συμπίεση εικόνας. Τα wavelets έχουν αποσπάσει από την παραδοσιακότερη Fourier μέθοδο με τη μορφή του μετασχηματισμού συνημιτόνου (DCT) που εφαρμόζεται αυτήν την περίοδο στα δημοφιλή πρότυπα συμπίεσης εικόνας JPEG. Τα JPEG-2000 πρότυπα θα αποτελέσουν μία σημαντική βελτίωση σε σχέση με τα τρέχοντα πρότυπα JPEG. Ενώ οι λεπτομέρειες για το πώς θα εξελιχθεί, και ποια χαρακτηριστικά γνωρίσματα θα υποστηριχθούν είναι θέματα που δεν μας αφορούν στη συγκεκριμένη πτυχιακή εργασία, υπάρχει μόνο ένα στοιχείο που δεν επιδέχεται αμφιβολίας: το πρότυπο JPEG-2000 βασίζεται στα wavelets. Στο παρόν κεφάλαιο θα καλύψουμε επίσης τις επεκτάσεις των wavelets, γνωστές ως πακέτα wavelets (wavelet packets), τα οποία έχουν ήδη έναν αντίκτυπο στον κόσμο τυποποίησης: τα πρότυπα συμπίεσης δακτυλικών αποτυπωμάτων FBI είναι βασισμένα στα πακέτα wavelets. 92

97 Συμπίεση βασισμένη στα wavelets Εικόνα 15. Wavelet ανάλυση τριών επιπέδων της εικόνας Lena μεγέθους 512x512. Το πρώτο επίπεδο (512x512) είναι η ενός επιπέδου wavelet αναπαράσταση της αρχικής εικόνας της Lena στο επίπεδο 0 (level 0). Το επίπεδο 2 (level 2) (256x256) δείχνει την ενός-επιπέδου wavelet αναπαράσταση της χαμηλοπερατής εικόνας στο επίπεδο 1. Το επίπεδο 3 (128x128) μας δίνει την ενός επιπέδου wavelet αναπαράσταση της χαμηλοπερατής εικόνας που βρίσκεται στο επίπεδο 2 93

98 Συμπίεση βασισμένη στα wavelets Αν και αυτό το κεφάλαιο αναφέρεται στη συμπίεση εικόνας, 1 που περιλαμβάνει ουσιαστικά διδιάστατα σήματα (2D)-εικόνες, είναι πολύ ευκολότερο για κάποιον να καταλάβει το ρόλο των wavelets στην κωδικοποίηση εικόνας που χρησιμοποιεί ένα μονοδιάστατο πλαίσιο (1-D), δεδομένου ότι η εννοιολογική επέκταση στο διδιάστατο (2Δ) πεδίο είναι απλή διαδικασία. Για λόγους κατανόησης θα εξετάσουμε μια μονοδιάστατη επεξεργασία σήματος. Εικόνα 2. Wavelet αναπαράσταση τριών επιπέδων της εικόνας Lena δημιουργημένη από την επάνω πλευρά της τριών επιπέδων ιεραρχίας της wavelet αναπαράστασης στην Εικόνα 1. Έχει ακριβώς τον ίδιο αριθμό δειγμάτων όπως στο αρχικό πεδίο των pixel της εικόνας. Η ιστορία αρχίζει με αυτό που είναι γνωστό ως ανάλυση χρόνου-συχνότητας του μονοδιάστατου (1Δ) σήματος. Όπως αναφέρεται, τα wavelets είναι ένα εργαλείο αλλαγής του συστήματος συντεταγμένων που χρησιμοποιούμε για την αναπαράσταση του σήματος: μετασχηματίζουμε το σήμα σε μια άλλη περιοχή που βολεύει πολύ καλύτερα για την επεξεργασία που θέλουμε, π.χ., συμπίεση. Τι είναι όμως αυτό που κάνει ένα εργαλείο μετατροπής ή ανάλυσης να είναι καλό; Σε βασικό επίπεδο, ο στόχος είναι να είσαι σε θέση να αναπαραστήσεις όλα τα χρήσιμα χαρακτηριστικά γνωρίσματα των σημάτων και τα σημαντικά φαινόμενα κατά τρόπο όσο το δυνατόν πιο συμπαγή. Είναι σημαντικό να μπορούμε να συμπιέσουμε τον όγκο της ενέργειας των σημάτων σε ένα μικρό αριθμό συντελεστών μετασχηματισμού: με αυτό τον τρόπο μπορούμε να απορρίψουμε ένα μεγάλο 94

99 Συμπίεση βασισμένη στα wavelets όγκο δεδομένων από το πεδίο μετασχηματισμού χωρίς το κίνδυνο απώλειας πολλών πληροφοριών. Παραδείγματος χάριν, εάν το σήμα μας αποτελείται από χρονικούς παλμούς, τότε το καλύτερο πράγμα είναι να μη γίνει καμία μετατροπή καθόλου! Συνεπώς κρατάμε τις πληροφορίες των σημάτων στην αρχική έκδοση στο πεδίο του χρόνου, από τη στιγμή που κάτι τέτοιο θα μεγιστοποιήσει τη συγκέντρωση της χρονικής ενέργειας ή της ανάλυσης χρόνου. Τι συμβαίνει όμως στη περίπτωση που το σήμα έχει ένα κρίσιμο τμήμα συχνότητας (π.χ., ένα χαμηλής συχνότητας υπόβαθρο ημιτόνου) που διαρκεί για μεγάλη χρονική διάρκεια; Σε αυτήν την περίπτωση, η ενέργεια διαδίδεται πέρα από τα όρια κάποιας χρονικής περιοχής, αλλά εάν κάποιος έκανε μια ανάλυση Fourier του σήματος, θα συλλαμβανόταν περιληπτικά σε έναν συντελεστή συχνότητας σημάτων. Εάν ξέρουμε ότι τα σήματα ενδιαφέροντος είναι καθαρά ημιτονοειδή, κατόπιν η ανάλυση Fourier είναι ο τρόπος για να κυλήσουν τα πράγματα. Αλλά τι θα συμβεί, εάν θέλουμε να συλλάβουμε και τους χρονικούς παλμούς και τους παλμούς συχνότητας με καλή ανάλυση; Μπορούμε να πάρουμε αυθαίρετα καλή ανάλυση και στο χρόνο και στη συχνότητα; Η απάντηση είναι βέβαια πως όχι δε μπορούμε. Υπάρχει ένα θεώρημα αβεβαιότητας (σαν αυτό που μαθαίνουμε στην κβαντική φυσική), το οποίο απαγορεύει την ύπαρξη της αυθαίρετης ανάλυσης και στο χρόνο και τη συχνότητα. Ένας καλός τρόπος να αντιληφθούμε αυτές τις ιδέες καθώς και το ρόλο των συναρτήσεων βάσης wavelets είναι μέσω αυτού που είναι γνωστού ως δομές πλακιδίων («tiling»), όπως φαίνεται στην Εικόνα 3, η οποία παρουσιάζει που «ζουν» οι συναρτήσει βάσης στο επίπεδο χρόνου-συχνότητας δηλ., που εντοπίζεται ο όγκος της ενέργειας των στοιχειωδών συναρτήσεων βάσης; 95

100 Συμπίεση βασισμένη στα wavelets Εικόνα 3. Διάγραμμα που δείχνει τα πλακίδια (tiling) συσχετισμένα με τις STFT βάσεις και τις wavelet βάσεις α) STFT βάσεις και διάγραμμα πλακιδίων συσχετισμένο με το STFT ανάπτυγμα. Οι STFT βάσεις διαφορετικών συχνοτήτων έχουν την ίδια ανάλυση (ή μήκος) στο χρόνο. (β) Οι Wavelet βάσεις και το διάγραμμα των πλακιδίων συσχετίζεται με το wavelet ανάπτυγμα. Η ανάλυση χρόνου είναι αντιστρόφως ανάλογη ως προς τη συχνότητα για τη wavelet βάση. Ας εξετάσουμε πρώτα τη περίπτωση του Fourier μετασχηματισμού. Δεδομένου ότι οι χρονικοί παλμοί διαδίδονται σε όλο το φάσμα συχνότητας, η ιδιότητα του εντοπισμού χάνεται με την ανάλυση Fourier. Για να αποφύγουμε αυτό το πρόβλημα, αποσυνθέτουμε το σήμα σε χοντροκομμένα κομμάτια πεπερασμένου-μήκους χρησιμοποιώντας το παραθυρικό ή τον αποκαλούμενο και μετασχηματισμό Fourier μικρής διάρκειας (STFT Short Time Fourier Transform). Κάτι τέτοιο έχει ως συνέπεια η ανάλυση χρόνου-συχνότητας να καθορίζεται από το μέγεθος των παραθύρων. Ένα ανάπτυγμα ενός STFT αποτελείται από τις συναρτήσεις βάσης που είναι μετατοπισμένες εκδόσεις η μία της άλλης στο χρόνο και στη συχνότητα: μερικά στοιχεία συλλαμβάνουν τα χαμηλής συχνότητας γεγονότα που εντοπίζονται στο χρόνο, και άλλες συλλαμβάνουν τα υψηλής συχνότητας γεγονότα που εντοπίζονται στο 96

101 Συμπίεση βασισμένη στα wavelets χρόνο, αλλά η ανάλυση ή το μέγεθος των παραθύρων είναι σταθερό και στο χρόνο και στη συχνότητα (εικόνα 3(α)). Πρέπει να σημειώσουμε ότι το θεώρημα αβεβαιότητας λέει ότι η περιοχή αυτών των πλακιδίων θα πρέπει να είναι διάφορη του μηδενός. Στην εικόνα 3(β) εμφανίζεται το αντίστοιχο διάγραμμα πλακιδίων που σχετίζεται με το wavelet ανάπτυγμα. Η βασική διαφορά μεταξύ αυτού του αναπτύγματος και της περίπτωσης του Fourier, που είναι το κρίσιμο σημείο, είναι ότι τα πλακίδια δεν έχουν όλα το ίδιο μέγεθος στο χρόνο (ή τη συχνότητα). Μερικά στοιχεία βάσης έχουν μικρού-χρόνου παράθυρα ενώ άλλα έχουν παράθυρα μικρής συχνότητας. Φυσικά, το θεώρημα αβεβαιότητας εξασφαλίζει ότι η περιοχή κάθε πλακιδίου είναι σταθερή και διαφορετική από το μηδέν. Μπορεί να αποδειχθεί ότι οι συναρτήσεις βάσης σχετίζονται μεταξύ τους με μετατοπίσεις και κλιμακώσεις στοιχείο-κλειδί στη wavelet ανάλυση. Γιατί όμως τα wavelets ταιριάζουν καλά για τη συμπίεση εικόνας; Η απάντηση βρίσκεται στα χαρακτηριστικά χρόνου-συχνότητας (ή σωστότερα, χώρου-συχνότητας) των χαρακτηριστικών των τυπικών φυσικών εικόνων, οι οποίες συλλαμβάνονται ιδιαίτερα καλά από τις wavelet συναρτήσεις βάσης που παρουσιάζονται στο σχήμα 3(β). Σημειώστε ότι το διάγραμμα πλακιδίων του STFT του σχήματος 3 (α) είναι εννοιολογικά παρόμοιο με τις τρέχουσες εμπορικές μεθόδους κωδικοποίησης βασισμένες στο DCT μετασχηματισμό εικόνας όπως το πρότυπο JPEG τις χρησιμοποιεί. Γιατί όμως τα wavelets είναι εγγενώς μια καλύτερη επιλογή; Εξετάζοντας το σχήμα 3 (β), κάποιος μπορεί να σημειώσει ότι η wavelet βάση προσφέρει στοιχεία που έχουν καλή ανάλυση συχνότητας σε χαμηλές συχνότητες (τα σύντομα και παχιά συστατικά βάσης) προσφέροντας ταυτόχρονα στοιχεία που έχουν καλή ανάλυση χρόνου στις υψηλότερες συχνότητες (τα ψηλά και αιχμηρά συστατικά βάσης). Αυτός ο συμβιβασμός λειτουργεί καλά για τις φυσικές εικόνες και τις σκηνές που αποτελούνται τυπικά από ένα μείγμα σημαντικών μακροπρόθεσμων χαμηλής συχνότητας τάσεων που έχουν τη μεγαλύτερη χωρική διάρκεια (όπως τα αργά μεταβαλλόμενα υπόβαθρα όπως ο μπλε ουρανός και η επιφάνεια των λιμνών, κ.λπ...) όπως και τα σημαντικά παροδικά υψηλής συχνότητας φαινόμενα μικρής-διάρκειας όπως οι αιχμηρές ακμές. Η wavelet αναπαράσταση τείνει να ταιριάζει εξειδικευμένα στη σύλληψη και των παροδικών υψηλής συχνότητας φαινομένων όπως οι ακμές της εικόνας (χρησιμοποιώντας τα ψηλά και λεπτά κεραμίδια) καθώς επίσης και των χαμηλής συχνότητας φαινομένων μακράς-χωρικήςδιάρκειας όπως τα υπόβαθρα εικόνας (τα κοντά και παχιά πλακάκια). Δεδομένου ότι στις φυσικές εικόνες κυριαρχεί ένα μείγμα αυτών των ειδών γεγονότων, 2 τα wavelets υπόσχονται να είναι πολύ αποδοτικά στη σύλληψη του όγκου της ενέργειας της εικόνας σε ένα μικρό κλάσμα του συνόλου των συντελεστών. 97

102 Συμπίεση βασισμένη στα wavelets Για να συνοψίσουμε, ο στόχος του διαχωρισμού της παροδικής συμπεριφοράς από τις μακροπρόθεσμες τάσεις είναι ένας πολύ δύσκολος στόχος στην ανάλυση εικόνας και τη συμπίεση. Στην περίπτωση των εικόνων, η δυσκολία προέρχεται από το γεγονός ότι οι στατιστικές μέθοδοι ανάλυσης απαιτούν συχνά την εισαγωγή τουλάχιστον κάποιας τοπικής στάσιμης υπόθεσης, δηλ., ότι οι στατιστικές εικόνας δεν αλλάζουν απότομα κατά τη διάρκεια του χρόνου. Στην πράξη, αυτή η υπόθεση μεταφράζει συνήθως στις ειδικές μεθόδους για να εμποδίσει τα δείγματα στοιχείων για την ανάλυση, μέθοδοι που μπορούν ενδεχομένως να κρύψουν τα σημαντικά χαρακτηριστικά γνωρίσματα των σημάτων: π.χ., εάν ένα μπλοκ είναι επιλεγμένο πάρα πολύ μεγάλο, ένα παροδικό συστατικό μπορεί ολοκληρωτικά να παραμεληθεί συνολικά κατά την υπολογισμό των μέσων όρων. Τα τεχνουργήματα λόγω των μπλοκς (blocking artifacts) στις JPEG αποκωδικοποιημένες εικόνες στους χαμηλούς ρυθμούς είναι ένα αποτέλεσμα της προσέγγισης που βασίζεται στην εφαρμογή του μετασχηματισμού DCT σε μπλοκ. Μια θεμελιώδης συμβολή της θεωρίας των wavelets είναι ότι παρέχει ένα ενοποιημένο πλαίσιο στο οποίο οι μεταβάσεις και οι τάσεις μπορεί να αναλυθούν ταυτόχρονα χωρίς την ανάγκη να προσφύγουν σε μεθόδους ομαδοποίησης των δεδομένων σε μπλοκς. Προσπαθώντας να αναδείξουμε εκείνα τα θετικά στοιχεία του να έχουμε μία αραιαή αναπαράσταση, όπως αυτή που παρέχεται από την αποσύνθεση wavelets, ας θεωρήσουμε τη μπάντα χαμηλότερης συχνότητας στο κορυφαίο επίπεδο (επίπεδο 3) της τριών επιπέδων ιεραρχίας wavelets στην Lena στο σχήμα 1. Αυτή η μπάντα είναι απλά μία υποδειγματοληπτημένη (από έναν παράγοντα 8 2 = 64) και ομαλοποιημένη έκδοση της αρχικής εικόνας. Ένας πολύ απλός τρόπος να επιτευχθεί συμπίεση είναι απλά να διατηρηθεί αυτή η χμηλοπερατή έκδοση και να απομακρυνθεί το υπόλοιπο των wavelet δεδομένων, επιτυγχάνοντας αμέσως μια αναλογία συμπίεσης 64:1. Σημειώστε ότι εάν θέλουμε μια πλήρους μεγέθους προσέγγιση στην αρχική, θα έπρεπε να κάνουμε παρεμβολή στη χαμηλής διέλευσης μπάντα από έναν παράγοντα 64 αυτό μπορεί να γίνει αποτελεσματικά με τη χρησιμοποίηση μιας τράπεζας φίλτρων σύνθεσης με τρεις φάσεις. Μπορούμε επίσης να επιθυμούμε καλύτερη πιστότητα εικόνας, αφού μπορούμε να συμβιβάσουμε την υψηλής συχνότητας λεπτομέρεια εικόνας, ιδιαίτερα τις αντιληπτικά σημαντικές υψηλής συχνότητας πληροφορίες των ακμών. Αυτό είναι το σημείο όπου τα wavelets είναι ιδιαίτερα ελκυστικά, δεδομένου ότι είναι ικανά στη σύλληψη των περισσότερων πληροφοριών εικόνας ιδιαίτερα στην υψηλά υποδειγματοληπτημένη χαμηλής συχνότητας μπάντα, και τις επιπρόσθετες εντοπισμένες πληροφορίες ακμών στις χωρικές συστάδες των συντελεστών στις υψηλής συχνότητας ζώνες (Σχήμα 1). Ο όγκος των wavelet δεδομένων είναι ασήμαντος και μπορεί να απορριφθεί ή κβαντοποιηθεί ακόμα και με κάποια χοντροκομμένη μέθοδο. 98

103 Συμπίεση βασισμένη στα wavelets Μια άλλη ελκυστική πτυχή της wavelet αναπαράστασης προς τα πιο λεπτομερή στοιχεία είναι ότι με φυσικό τρόπο διευκολύνει τα σχήματα μετάδοσης προοδευτικά να βελτιώνουν τη ποιότητα της λαμβανόμενης εικόνας. Δηλαδή θα ήταν ιδιαίτερα ευεργετικό να υπάρξει κωδικοποιημένο ένα ρεύμα δεδομένων (bitstream) που να μπορεί να τεμαχιστεί σε οποιοδήποτε επιθυμητό σημείο για να παρέχει μια ισόμετρη ποιότητα εικόνας αναδημιουργίας. Αυτό είναι γνωστό ως προοδευτικό χαρακτηριστικό γνώρισμα μετάδοσης (progressive transmission feature) ή ως ενσωματωμένo bitstream (Σχήμα 4). Πολλοί σύγχρονοι wavelet κωδικοποιητές εικόνας έχουν αυτό το χαρακτηριστικό γνώρισμα, Όπως είναι ευρέως γνωστό, το Διαδίκτυο είναι ένα ετερογενές σύνολο από την άποψη του αριθμού χρηστών και των υπολογιστικών ικανοτήτων τους καθώς και των αποτελεσματικών ευρών ζώνης που διατίθονται. Τα wavelets παρέχουν έναν φυσικό τρόπο να ικανοποιηθούν οι χρήστες που έχουν ανόμοιο εύρος ζώνης και υπολογιστικές ικανότητες: οι low-end χρήστες μπορούν να παρασχεθούν μια χονδροειδή ποιοτική προσέγγιση, ενώ οι higher-end χρήστες μπορούν να χρησιμοποιήσουν το αυξανόμενο εύρος ζώνης τους για να έχουν καλύτερη πιστότητα. Αυτό είναι επίσης πολύ χρήσιμο για τις εφαρμογές περιήγησης Ιστού, όπου η κατοχή μιας χονδροειδούς ποιοτικά εικόνας σε σύντομο χρόνο αναμονής μπορεί να είναι προτιμητέα από τη κατοχή μιας λεπτομερούς ποιότητας εικόνας αλλά με απαράδεκτη καθυστέρηση. Αυτοί είναι μερικοί από τους υψηλού επιπέδου λόγους για τους οποίους τα wavelets αντιπροσωπεύουν μια ανώτερη εναλλακτική λύση στις παραδοσιακές μεθόδους βασισμένες στο Fourier μετασχηματισμό για τη συμπίεση φυσικών εικόνων: γι αυτό τα εξελισσόμενο JPEG-2000 πρότυπo θα χρησιμοποιεί τα wavelets αντί του βασισμένου στο Fourier DCT μετασχηματισμό. 5.2 Το πρόβλημα της συμπίεσης Η συμπίεση εικόνας εμπίπτει στη γενικότερη κατηγορία της συμπίεσης δεδομένων, η οποία έχει μελετηθεί θεωρητικά στον τομέα της θεωρίας πληροφοριών, ξεκινώντας από την εργασία του Claude Shannon το Η θεωρία πληροφοριών θέτει τα θεμελιώδη όρια στην απόδοση της συμπίεσης που θεωρητικά είναι εφικτή για ορισμένες κατηγορίες πηγών. Αυτό είναι πολύ χρήσιμο επειδή παρέχει μια θεωρητική συγκριτική μέτρηση επιδόσεων ενάντια στην οποία κάποιος μπορεί να συγκρίνει την απόδοση των πρακτικότερων αλλά υποβέλτιστων αλγορίθμων κωδικοποίησης. 99

104 Συμπίεση βασισμένη στα wavelets Εικόνα 4. Πολυαναλυτική wavelet αναπαράσταση εικόνας διευκολύνει με φυσικό τρόπο τη προοδευτική μετάδοση ένα επιθυμητό χαρακτηριστικό για τη μετάδοση συμπιεσμένων εικόνων σε ετερογενή δίκτυα πακέτων και ασύρματα κανάλια. Ιστορικά, το χωρίς απώλειες (lossless) πρόβλημα συμπίεσης προέκυψε ως πρώτη ανάγκη. Εδώ ο στόχος είναι να συμπιεστεί η πηγή χωρίς την απώλεια πληροφοριών. Ο Shannon έδειξε ότι σε οποιαδήποτε διακριτή πηγή με έναν καθορισμένο με σαφήνεια στατιστικό χαρακτηρισμό (δηλ., μια συνάρτηση μάζας πιθανότητας), υπάρχει ένα θεμελιώδες θεωρητικό όριο πόσο καλά μπορούμε να συμπιέσουμε την πηγή πριν αρχίσουμε να χάνουμε τις πληροφορίες. Αυτό το όριο καλείται εντροπία (entropy) της πηγής. Χωρίς να είμαστε αυστηροί μπορούμε να υποθέσουμε ότι η εντροπία αναφέρεται στην αβεβαιότητα της πηγής. Παραδείγματος χάριν, μια πηγή που παίρνει οποιεσδήποτε από τις Ν διακριτές τιμές a 1, a 2,., a N με ίση πιθανότητα έχει εντροπία που δίνεται από την log 2 N bits ανά σύμβολο πηγής. Εάν τα σύμβολα δεν είναι εξίσου πιθανά, εντούτοις, μπορούμε να πετύχουμε περισσότερα επειδή στα πιο προβλέψιμα σύμβολα πρέπει να ανατεθούν λιγότερα bit. Το θεμελιώδες όριο είναι η εντροπία Shannon της πηγής. 100

105 Συμπίεση βασισμένη στα wavelets Για την κωδικοποίηση εικόνας, οι χαρακτηριστικές χωρίς απώλειες ρυθμοί συμπίεσης είναι της τάξης 2:1 ή το πολύ 3:1. Για μία 512x512 8-bit εικόνα γκρίζας-κλίμακας, η ασυμπίεστη αντιπροσώπευση είναι 256 Kbytes. Η χωρίς απώλειες συμπίεση θα μείωνε αυτό στην καλύτερη περίπτωση ~80 Kbytes, όπου μπορεί ακόμα να είναι υπερβολικό για πολλές πρακτικές εφαρμογές μετάδοσης χαμηλού-εύρους ζώνης. Επιπλέον, η χωρίς απώλειες συμπίεση εικόνας είναι ως επί το πλείστον υπερβολική, δεδομένου ότι το ανθρώπινο οπτικό σύστημά μας είναι ιδιαίτερα ανεκτικό στις απώλειες στις οπτικές πληροφορίες. Για ρυθμούς συμπίεσης στο εύρος 10:1 εώς 40:1 ή περισσότερο, η χωρίς απώλειες συμπίεση δεν μπορεί να κάνει την εργασία, και κάποιος πρέπει να προσφύγει στις μεθόδους συμπίεσης με απώλειες. Τη διατύπωση του πλαισίου που περιγράφει τη συμπίεση με απώλειες δεδομένων έκανε και εδώ ο Shannon στην εργασία του για τη θεωρία της παραμόρφωσης του ρυθμού (R-D, rate-distortion), στην οποία τυποποίησε τη θεωρία της συμπίεσης κάποιων περιορισμένων κατηγοριών πηγών που έχουν καλά ορισμένες στατιστικές ιδιότητες, π.χ., ανεξάρτητες και ισόνομα κατανεμημένες (i.i.d.) που ακολουθούν μία Γκαουσσιανή κατανομή υποκείμενη σε ένα κριτήριο πιστότητας, δηλ., είναι αντικείμενο σε ανοχές στη μέγιστη επιτρεπόμενη απώλεια ή τη διαστρέβλωση που μπορούν να υπομένουν. Τα χαρακτηριστικά μέτρα διαστρεβλώσεων χρησιμοποιούμενα είναι το μέσο τετραγωνικό λάθος (MSE) ή το (PSNR) 3 μεταξύ των αρχικών και συμπιεσμένων εκδόσεων. Αυτά τα θεμελιώδη όρια απόδοσης συμπίεσης καλούνται θεωρητικά R-D όρια για την πηγή: υπαγορεύουν το ελάχιστο ρυθμό R που απαιτείται για να συμπιέσει την πηγή εάν το ανεκτό επίπεδο παραμορφώσεων είναι D (ή εναλλακτικά, ποια είναι η ελάχιστη παραμόρφωση D υποκείμενη σε ένα ρυθμό bit R). Αυτά τα όρια δεν είναι δυστυχώς εποικοδομητικά I.e., Shannon δεν έδωσε έναν πραγματικό αλγόριθμο για αυτά τα όρια, και επιπλέον είναι βασισμένοι στα επιχειρήματα που υποθέτουν την άπειρη πολυπλοκότητα και την καθυστέρηση, προφανώς μη πρακτικές στην πραγματική ζωή. Εντούτοις, αυτά τα όρια είναι χρήσιμα στο μέτρο που παρέχουν τις πολύτιμες συγκριτικές μετρήσεις επιδόσεων για την αξιολόγηση της απόδοσης των πρακτικότερων αλγορίθμων κωδικοποίησης. Το σημαντικότερο εμπόδιο φυσικά, όπως στη χωρίς απώλειες περίπτωση, είναι ότι αυτά τα θεωρητικά όρια είναι διαθέσιμα μόνο για μια στενή κατηγορία πηγών, και είναι δύσκολο να γίνει η σύνδεση στις πραγματικές πηγές παγκόσμιας εικόνας που είναι δύσκολο να διαμορφωθούν ακριβώς με τα απλοϊκά στατιστικά πρότυπα. Το Shannon "s που το θεωρητικό πλαίσιο R-D έχει εμπνεύσει το σχέδιο των πρακτικότερων λειτουργικών πλαισίων R-D, στα οποία ο στόχος είναι παρόμοιος αλλά το πλαίσιο περιορίζεται για να είναι πρακτικότερο. Μέσα στους λειτουργικούς περιορισμούς του επιλεγμένου πλαισίου κωδικοποίησης, ο στόχος της λειτουργικής θεωρίας R-D είναι να 101

106 Συμπίεση βασισμένη στα wavelets ελαχιστοποιηθεί το ποσοστό R υποκείμενο σε έναν περιορισμό D διαστρεβλώσεων, ή αντίστροφα. Το μήνυμα της θεωρίας R-D Shannon είναι ότι κάποια μπορεί να έρθει κοντά στο θεωρητικό όριο συμπίεσης της πηγής, εάν το ένα εξετάζει τα διανύσματα των συμβόλων πηγής που παίρνουν απείρως μεγάλα στη διάσταση στο όριο i.e., είναι μια καλή ιδέα να μην κωδικοποιηθούν τα σύμβολα πηγής ένα σε έναν χρόνο, αλλά να εξεταστούν τα χοντρά κομμάτια τους σε έναν χρόνο, και όσο μεγαλύτερα τα χοντρά κομμάτια ο καλύτερος. Αυτή η σκέψη έχει ωοτοκήσει έναν σημαντικό τομέα γνωστό ως διανυσματική κβαντοποίηση, ή VQ, όποιος, όπως το όνομα δείχνει, ενδιαφέρεται για τη θεωρία και την πρακτική να κβαντοποιήσει τις πηγές που χρησιμοποιούν την υψηλός-διαστατική διανυσματική κβαντοποίηση (χρησιμοποίηση κωδικοποίησης εικόνας VQ καλύπτεται στο κεφάλαιο (5.3). Υπάρχουν πρακτικές δυσκολίες που προκύπτουν από να καταστήσουν αυτά τα διανύσματα πάρα πολύ υψηλό διαστατικό λόγω των περιορισμών πολυπλοκότητας, τόσο τα πρακτικά πλαίσια περιλαμβάνουν τα σχετικά μικρά διαστατικά διανύσματα που είναι επομένως περαιτέρω από το θεωρητικό συνδεδεμένο. Λόγω αυτού του λόγου, έχει υπάρξει ένα δημοφιλέστερο πλαίσιο συμπίεσης εικόνας που έχει απογειωθεί στην πράξη: αυτό είναι το πλαίσιο κωδικοποίησης μετατροπής που αποτελεί τη βάση της τρέχουσας εμπορικής εικόνας και των τηλεοπτικών προτύπων συμπίεσης όπως JPEG και MPEG (βλ. τα κεφάλαια 6.4 και 6.5) το παράδειγμα κωδικοποίησης μετατροπής μπορεί να αναλυθεί ως πρακτική ειδική περίπτωση VQ που μπορεί να επιτύχει τα υποσχόμενα κέρδη των συμβόλων πηγής επεξεργασίας στα διανύσματα μέσω της χρήσης των αποτελεσματικά εφαρμοσμένων υψηλών-διαστατικών μετατροπών πηγής. 5.3 Jasper To Jasper Project είναι μια ανοιχτή πρωτοβουλία για την παροχή δωρεάν λογισμικού που βασίζεται στην εφαρμογή αναφοράς του κωδικοποιητή που καθορίζεται στο πρότυπο JPEG-2000 (δηλαδή, το πρότυπο ISO / IEC ). Το έργο αυτό ξεκίνησε ως μια συνεργατική προσπάθεια μεταξύ του Image Power, Inc και το Πανεπιστήμιο της Βρετανικής Κολομβίας. Επί του παρόντος, οι τρέχουσες εργασίες συντήρησης και ανάπτυξης του λογισμικού Jasper συντονίζεται από τον κύριο δημιουργό της, Μάικλ Ανταμς, ο οποίος είναι μέλος του Digital Signal Processing Group (DSPG) στο Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών στο Πανεπιστήμιο της Victoria. Το Jasper περιλαμβάνει ένα λογισμικό με βάση την εφαρμογή του κωδικοποιητή που καθορίζεται στο πρότυπο JPEG-2000 (δηλαδή, το πρότυπο ISO / IEC 15444). Το λογισμικό 102

107 Συμπίεση βασισμένη στα wavelets Jasper είναι γραμμένο στη γλώσσα προγραμματισμού C. Περισσότερες λεπτομέρειες σχετικά με αυτό το λογισμικό μπορεί να βρεθεί στο Jasper Software εγχειρίδιο αναφοράς. Με απλά λόγια, το Jasper είναι ένα σύνολο εργαλείων λογισμικού για την επεξεργασία των δεδομένων εικόνας. Το λογισμικό παρέχει ένα μέσο για την αναπαράσταση εικόνων, και διευκολύνει τη χειραγώγηση των στοιχείων εικόνας, καθώς και την εισαγωγή και εξαγωγή τέτοιων δεδομένων σε πολλές μορφές (π.χ., JPEG- 2000, JPEG, PNM, BMP, η Sun Rasterfile, και PGX). Η λειτουργικότητα εισαγωγής υποστηρίζει τη λειτουργία αυτόματης ανίχνευσης (δηλ., αυτόματου προσδιορισμού) στη μορφή εικόνας, εξαλείφοντας την ανάγκη να εντοπίζει επακριβώς τη μορφή κωδικοποιημένων δεδομένων εισόδου. Επίσης παρέχεται μια απλή μηχανή για τη διαχείριση χρωμάτων ώστε να καταστεί δυνατή η ακριβής αναπαράσταση του χρώματος. Περιλαμβάνεται επίσης μερική υποστήριξη για την μορφή αρχείου με προφίλ χρώματος ICC, ένα βιομηχανικό πρότυπο για τον καθορισμό του χρώματος. Το λογισμικό Jasper αποτελείται από μια βιβλιοθήκη και πολλά προγράμματα εφαρμογής. Ο κώδικας είναι γραμμένος σε γλώσσα προγραμματισμού C. Αυτή η γλώσσα επιλέχθηκε κυρίως λόγω της διαθεσιμότητας των περιβαλλόντων που αναπτύχθηκαν σε γλώσσα προγραμματισμού C για τις περισσότερες από τις πλατφόρμες υπολογιστών σήμερα. Επί του παρόντος, το Jasper αποτελείται από περίπου γραμμές κώδικα. Αν και γραμμένο σε C, η βιβλιοθήκη Jasper μπορεί εύκολα να ενσωματωθεί σε εφαρμογές γραμμένες σε γλώσσα προγραμματισμού C++. Το λογισμικό Jasper πήρε εν μέρει το όνομα του από το Jasper National Park, το μεγαλύτερο εθνικό πάρκο στα Καναδικά Βραχώδη Όρη με τετραγωνικά χιλιόμετρα άγριας φύσης. Συμπίπτει, Jasper να είναι επίσης το όνομα μιας ποικιλίας αδιαφανούς κρυπτοκρυσταλλικού χαλαζία που χρησιμοποιείται στη διακόσμηση ή ως πολύτιμος λίθος. Τέλος, η ονομασία Jasper επιλέχθηκε επειδή περιέχει το γράμμα "J", ακολουθούμενο από το γράμμα «P», όπως με τη συντομογραφία "JP", το οποίο σχετίζεται με το JPEG-2000 πρότυπο. Η καρδιά του λογισμικού Jasper είναι η βιβλιοθήκη Jasper. Στην πραγματικότητα, τα περισσότερα από τον κώδικα Jasper σχετίζονται με αυτή τη βιβλιοθήκη. Η βιβλιοθήκη Jasper παρέχει κατηγορίες για να εκπροσωπούν τις εικόνες, το χρώμα προφίλ, καθώς και άλλων συναφών φορέων. Καθεμία από αυτές τις κατηγορίες έχει ένα καλά καθορισμένο περιβάλλον μέσω του οποίου η αίτηση μπορεί να αλληλεπιδράσει με την κατηγορία αντικειμένων. Η βιβλιοθήκη μπορεί να χρησιμοποιηθεί για να διαχειριστείτε εικόνες, εισαγωγή και εξαγωγή 103

108 Συμπίεση βασισμένη στα wavelets δεδομένων εικόνας σε διάφορα σχήματα, καθώς και την εκτέλεση βασικών χρωμάτων πράξεις διαχείρισης. Εννοιολογικά, η βιβλιοθήκη Jasper είναι δομημένη όπως φαίνεται στην εικόνα. Η βιβλιοθήκη αποτελείται από δύο διακριτούς τύπους κώδικα: 1) βασικός κώδικας, και 2) οδηγούς κωδικοποίησης. Ο βασικός κώδικας προβλέπει το βασικό πλαίσιο επί των οποίων η βιβλιοθήκη είναι χτισμένη, ενώ οι οδηγοί κωδικοποίησης παρέχουν μόνο τα μέσα για την κωδικοποίηση ή αποκωδικοποίηση των δεδομένων εικόνας σε διάφορες μορφές. Όλες οι διασυνδέσεις της αίτησης είναι μέσα στον βασικό κώδικα. Οι οδηγοί κωδικοποίησης χρησιμοποιούνται μόνο άμεσα από τον βασικό κώδικα, και ποτέ από μια εφαρμογή. Η δυνατότητα κωδικοποίησης στη βιβλιοθήκη Jasper είναι αφενός σπονδυλωτή και επεκτάσιμη. Το περιβάλλον μεταξύ του βασικού κώδικα και των οδηγών κωδικοποίησης είναι σαφώς καθορισμένο. Εξάλλου, η υποστήριξη για ένα νέο σχήμα εικόνας μπορεί εύκολα να προστεθεί χωρίς να χρειάζεται να τροποποιηθεί η βιβλιοθήκη με οποιονδήποτε τρόπο. Για να το κάνετε αυτό, θα πρέπει να εισαχθεί ο οδηγός κωδικοποίησης για τη νέα μορφή εικόνας. Επιπλέον, η εφαρμογή πρέπει να περιλαμβάνει μόνο οδηγούς κωδικοποίησης για τις μορφές εικόνας που θα χρησιμοποιηθούν. Με τον τρόπο αυτό, η εφαρμογή μπορεί να αποφύγει το κόστος της αύξησης της κατανάλωσης μνήμης για τους οδηγούς κωδικοποίησης που δεν θα χρησιμοποιηθούν ποτέ. Βασικός κώδικας Ο βασικός κώδικας παρέχει ορισμένες βασικές κατηγορίες, όπως περιγράφεται παρακάτω. (Για την αποφυγή συγκρούσεων χώρο ονόματος, όλα τα αναγνωριστικά που χρησιμοποιούνται από τον βασικό κώδικα είναι με πρόθεμα είτε jas_ ή JAS_.) 1. Κατηγορία εικόνας (π.χ., jas_image_t). Η κατηγορία αυτή χρησιμοποιείται για να αναπαραστήσει μια εικόνα. Παρέχονται μέθοδοι για εργασίες όπως: δημιουργία ή καταστροφή εικόνας, δημιουργία ερωτημάτων για τις γενικές ιδιότητες εικόνας (π.χ., αναφοράς, το πλάτος και το ύψος του δικτύου, το προφίλ των χρωμάτων), δημιουργία ερωτημάτων για τις ιδιότητες συστατικών (π.χ., πλάτος, ύψος, μετατόπιση καννάβου, διάστημα στο δίκτυο, επικύρωση, ακρίβεια δείγματος), καθορισμός διάφορων ιδιοτήτων της 104

Συστήματα Πολυμέσων. Ενότητα 3: Εισαγωγικά θέματα Συμπίεσης. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Συστήματα Πολυμέσων. Ενότητα 3: Εισαγωγικά θέματα Συμπίεσης. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 3: Εισαγωγικά θέματα Συμπίεσης Θρασύβουλος Γ. Τσιάτσος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Αρχές κωδικοποίησης. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 08-1

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

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

Ψηφιακή Επεξεργασία Εικόνας

Ψηφιακή Επεξεργασία Εικόνας ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Ψηφιακή Επεξεργασία Εικόνας Ενότητα 6 : Κωδικοποίηση & Συμπίεση εικόνας Ιωάννης Έλληνας Τμήμα Η/ΥΣ Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

Τεχνολογία Πολυμέσων. Ενότητα # 8: Αρχές κωδικοποίησης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Πολυμέσων. Ενότητα # 8: Αρχές κωδικοποίησης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Τεχνολογία Πολυμέσων Ενότητα # 8: Αρχές κωδικοποίησης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του

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

Μοντέλο Επικοινωνίας Δεδομένων. Επικοινωνίες Δεδομένων Μάθημα 6 ο

Μοντέλο Επικοινωνίας Δεδομένων. Επικοινωνίες Δεδομένων Μάθημα 6 ο Μοντέλο Επικοινωνίας Δεδομένων Επικοινωνίες Δεδομένων Μάθημα 6 ο Εισαγωγή Με τη βοήθεια επικοινωνιακού σήματος, κάθε μορφή πληροφορίας (κείμενο, μορφή, εικόνα) είναι δυνατόν να μεταδοθεί σε απόσταση. Ανάλογα

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

Αρχές κωδικοποίησης. Τεχνολογία Πολυµέσων 08-1

Αρχές κωδικοποίησης. Τεχνολογία Πολυµέσων 08-1 Αρχές κωδικοποίησης Απαιτήσεις κωδικοποίησης Είδη κωδικοποίησης Βασικές τεχνικές κωδικοποίησης Κωδικοποίηση Huffman Κωδικοποίηση µετασχηµατισµών Κβαντοποίηση διανυσµάτων ιαφορική κωδικοποίηση Τεχνολογία

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

Τεχνολογία Πολυμέσων. Ενότητα # 11: Κωδικοποίηση εικόνων: JPEG Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Πολυμέσων. Ενότητα # 11: Κωδικοποίηση εικόνων: JPEG Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Τεχνολογία Πολυμέσων Ενότητα # 11: Κωδικοποίηση εικόνων: JPEG Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου

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

DIP_06 Συμπίεση εικόνας - JPEG. ΤΕΙ Κρήτης

DIP_06 Συμπίεση εικόνας - JPEG. ΤΕΙ Κρήτης DIP_06 Συμπίεση εικόνας - JPEG ΤΕΙ Κρήτης Συμπίεση εικόνας Το μέγεθος μιας εικόνας είναι πολύ μεγάλο π.χ. Εικόνα μεγέθους Α4 δημιουργημένη από ένα σαρωτή με 300 pixels ανά ίντσα και με χρήση του RGB μοντέλου

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

Πληροφορική Ι. Μάθημα 9 ο Συμπίεση δεδομένων. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Δρ.

Πληροφορική Ι. Μάθημα 9 ο Συμπίεση δεδομένων. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Δρ. Οι διαφάνειες έχουν βασιστεί στο βιβλίο «Εισαγωγή στην επιστήμη των υπολογιστών» του B. Forouzanκαι Firoyz Mosharraf(2 η έκδοση-2010) Εκδόσεις Κλειδάριθμος Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου

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

Κωδικοποίηση βίντεο (MPEG)

Κωδικοποίηση βίντεο (MPEG) Κωδικοποίηση βίντεο (MPEG) Εισαγωγή στο MPEG-2 Κωδικοποίηση βίντεο Κωδικοποίηση ήχου Ροή δεδοµένων Εισαγωγή στο MPEG-4 οµή σκηνών Κωδικοποίηση ήχου και βίντεο Τεχνολογία Πολυµέσων 11-1 Εισαγωγή στο MPEG-2

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

Τεράστιες ανάγκες σε αποθηκευτικό χώρο

Τεράστιες ανάγκες σε αποθηκευτικό χώρο ΣΥΜΠΙΕΣΗ Τεράστιες ανάγκες σε αποθηκευτικό χώρο Παράδειγμα: CD-ROM έχει χωρητικότητα 650MB, χωρά 75 λεπτά ασυμπίεστου στερεοφωνικού ήχου, αλλά 30 sec ασυμπίεστου βίντεο. Μαγνητικοί δίσκοι χωρητικότητας

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

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ΗΜΥ 100 Εισαγωγή στην Τεχνολογία Δρ. Στέλιος Τιμοθέου ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΑ ΘΕΜΑΤΑ ΜΑΣ ΣΗΜΕΡΑ Αναλογικά και ψηφιακά συστήματα Μετατροπή

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

ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ. Κεφάλαιο 3 : Πηγές Πληροφορίας Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων

ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ. Κεφάλαιο 3 : Πηγές Πληροφορίας Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ Κεφάλαιο 3 : Πηγές Πληροφορίας Χρήστος Ξενάκης Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων Περιεχόμενα Διακριτές Πηγές Πληροφορίας χωρίς μνήμη Ποσότητα πληροφορίας της πηγής Κωδικοποίηση

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

Ψηφιακή Επεξεργασία Εικόνας

Ψηφιακή Επεξεργασία Εικόνας ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Ψηφιακή Επεξεργασία Εικόνας Ενότητα 8 : Πρότυπο συμπίεσης JPEG2000 Ιωάννης Έλληνας Τμήμα Η/ΥΣ Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

Επεξεργασία Χαρτογραφικής Εικόνας

Επεξεργασία Χαρτογραφικής Εικόνας Επεξεργασία Χαρτογραφικής Εικόνας ιδάσκων: Αναγνωστόπουλος Χρήστος Αρχές συµπίεσης δεδοµένων Ήδη συµπίεσης Συµπίεση εικόνων Αλγόριθµος JPEG Γιατί χρειαζόµαστε συµπίεση; Τα σηµερινά αποθηκευτικά µέσα αδυνατούν

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

3. ΤΕΧΝΙΚΕΣ ΣΥΜΠΙΕΣΗΣ ΠΟΛΥΜΕΣΩΝ

3. ΤΕΧΝΙΚΕΣ ΣΥΜΠΙΕΣΗΣ ΠΟΛΥΜΕΣΩΝ 3. ΤΕΧΝΙΚΕΣ ΣΥΜΠΙΕΣΗΣ ΠΟΛΥΜΕΣΩΝ ΑΝΑΓΚΗ ΣΥΜΠΙΕΣΗΣ ΔΕΔΟΜΕΝΩΝ Local Multimedia Π.χ. Μία ταινία 90 min απαιτεί 120 GB, και τα σημερινά μέσα αποθήκευσης < 25 GB. Άρα σήμερα είναι αδύνατη η αποθήκευση και η

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

Συστήματα Πολυμέσων. Ενότητα 2: Εισαγωγικά θέματα Ψηφιοποίησης. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Συστήματα Πολυμέσων. Ενότητα 2: Εισαγωγικά θέματα Ψηφιοποίησης. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 2: Εισαγωγικά θέματα Ψηφιοποίησης Θρασύβουλος Γ. Τσιάτσος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

Συμπίεση Δεδομένων

Συμπίεση Δεδομένων Συμπίεση Δεδομένων 2013-2014 JPEG 2000 Δρ. Ν. Π. Σγούρος 2 JPEG 2000 Βασικά χαρακτηριστικά Επιτρέπει συμπίεση σε εξαιρετικά χαμηλούς ρυθμούς όπου η συμπίεση με το JPEG εισάγει μεγάλες παραμορφώσεις Ενσωμάτωση

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

Αναλογικά & Ψηφιακά Κυκλώματα ιαφάνειες Μαθήματος ρ. Μηχ. Μαραβελάκης Εμ.

Αναλογικά & Ψηφιακά Κυκλώματα ιαφάνειες Μαθήματος ρ. Μηχ. Μαραβελάκης Εμ. Αναλογικά & Ψηφιακά Κυκλώματα ιαφάνειες Μαθήματος ρ. Μηχ. Μαραβελάκης Εμ. 1 Εισαγωγή Αναλογικό σήμα (analog signal): συνεχής συνάρτηση στην οποία η ανεξάρτητη μεταβλητή και η εξαρτημένη μεταβλητή (π.χ.

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

Ανάκτηση Πληροφορίας

Ανάκτηση Πληροφορίας Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ανάκτηση Πληροφορίας Διδάσκων: Φοίβος Μυλωνάς fmylonas@ionio.gr Διάλεξη #08 Συµπίεση Κειµένων Φοίβος Μυλωνάς fmylonas@ionio.gr Ανάκτηση Πληροφορίας 1 Άδεια χρήσης

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

ΕΙΔΗ ΠΛΑΙΣΙΩΝ Ενδο-πλαισιακή κωδικοποίηση (Intra- frame Coding): Δια-πλαισιακή κωδικοποίηση (Inter-frame Coding):

ΕΙΔΗ ΠΛΑΙΣΙΩΝ Ενδο-πλαισιακή κωδικοποίηση (Intra- frame Coding): Δια-πλαισιακή κωδικοποίηση (Inter-frame Coding): ΕΙΔΗ ΠΛΑΙΣΙΩΝ Ενδο-πλαισιακή κωδικοποίηση (Intraframe Coding): κάθε εικόνα αντιμετωπίζεται και κωδικοποιείται ανεξάρτητα από τις υπόλοιπες (όπως στο JPEG) Δια-πλαισιακή κωδικοποίηση (Inter-frame Coding):

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

Συµπίεση Εικόνας: Το πρότυπο JPEG

Συµπίεση Εικόνας: Το πρότυπο JPEG ΒΕΣ : Συµπίεση και Μετάδοση Πολυµέσων ΒΕΣ Συµπίεση και Μετάδοση Πολυµέσων Συµπίεση Εικόνας: Το πρότυπο JPEG ΒΕΣ : Συµπίεση και Μετάδοση Πολυµέσων Εισαγωγή Σχεδιάστηκε από την οµάδα Joint Photographic Experts

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

Κωδικοποίηση εικόνων κατά JPEG

Κωδικοποίηση εικόνων κατά JPEG Κωδικοποίηση εικόνων κατά JPEG Εισαγωγή Προετοιµασία της εικόνας ρυθµός Ακολουθιακός απωλεστικός ρυθµός Εκτεταµένος απωλεστικός ρυθµός Μη απωλεστικός ρυθµός Ιεραρχικός ρυθµός Τεχνολογία Πολυµέσων 09-1

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

Συµπίεση Ψηφιακών Εικόνων: Συµπίεση µε Απώλειες. Πρότυπα Συµπίεσης Εικόνων

Συµπίεση Ψηφιακών Εικόνων: Συµπίεση µε Απώλειες. Πρότυπα Συµπίεσης Εικόνων ΤΨΣ 5: Ψηφιακή Επεξεργασία Εικόνας ΤΨΣ 5 Ψηφιακή Επεξεργασία Εικόνας Συµπίεση Ψηφιακών Εικόνων: Συµπίεση µε απώλειες Πρότυπα Συµπίεσης Εικόνων Τµήµα ιδακτικής της Τεχνολογίας και Ψηφιακών Συστηµάτων Πανεπιστήµιο

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

ΤΕΙ ΚΡΗΤΗΣ ΤΜ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡ/ΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΔΙΔΑΣΚΩΝ: Δρ. Γ. ΓΑΡΔΙΚΗΣ. Κωδικοποίηση εικόνας

ΤΕΙ ΚΡΗΤΗΣ ΤΜ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡ/ΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΔΙΔΑΣΚΩΝ: Δρ. Γ. ΓΑΡΔΙΚΗΣ. Κωδικοποίηση εικόνας ΤΕΙ ΚΡΗΤΗΣ ΤΜ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡ/ΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΔΙΔΑΣΚΩΝ: Δρ. Γ. ΓΑΡΔΙΚΗΣ 2 Κωδικοποίηση εικόνας Ακολουθία από ψηφιοποιημένα καρέ (frames) που έχουν συλληφθεί σε συγκεκριμένο ρυθμό frame rate (π.χ. 10fps,

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

Τεχνολογία Πολυμέσων. Ενότητα # 12: Κωδικοποίηση βίντεο: H.26x Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Πολυμέσων. Ενότητα # 12: Κωδικοποίηση βίντεο: H.26x Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Τεχνολογία Πολυμέσων Ενότητα # 12: Κωδικοποίηση βίντεο: H.26x Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου

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

Κωδικοποίηση βίντεο (H.261 / DVI)

Κωδικοποίηση βίντεο (H.261 / DVI) Κωδικοποίηση βίντεο (H.261 / DVI) Αρχές κωδικοποίησης βίντεο Εισαγωγή στο H.261 Κωδικοποίηση βίντεο Ροή δεδοµένων Εισαγωγή στο DVI Κωδικοποίηση ήχου και εικόνων Κωδικοποίηση βίντεο Ροή δεδοµένων Τεχνολογία

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

Τηλεπικοινωνιακά Συστήματα ΙΙ

Τηλεπικοινωνιακά Συστήματα ΙΙ Τηλεπικοινωνιακά Συστήματα ΙΙ Διάλεξη 1: Χωρητικότητα Καναλιών Το θεώρημα Shannon - Hartley Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Ατζέντα 1. Δυαδική σηματοδοσία 2. Μορφές δυαδικής σηματοδοσίας 3.

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

Περιεχόµενα. ΕΠΛ 422: Συστήµατα Πολυµέσων. Γιατί Συµπίεση; Βιβλιογραφία

Περιεχόµενα. ΕΠΛ 422: Συστήµατα Πολυµέσων. Γιατί Συµπίεση; Βιβλιογραφία Περιεχόµενα ΕΠΛ 422: Συστήµατα Πολυµέσων Συµπίεση εδοµένων: Εισαγωγή, Κατηγορίες Τεχνικών Συµπίεσης Βιβλιογραφία Γιατί Συµπίεση εδοµένων; Μερικά παραδείγµατα Ορισµός Συµπίεσης Συµπίεση και Πολυµεσικές

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

ΒΕΣ 04: Συµπίεση και Μετάδοση Πολυµέσων. Περιεχόµενα. Βιβλιογραφία. Συµπίεση εικόνων: Το πρότυπο JPEG. Εισαγωγή. Ευθύς µετασχηµατισµός DCT

ΒΕΣ 04: Συµπίεση και Μετάδοση Πολυµέσων. Περιεχόµενα. Βιβλιογραφία. Συµπίεση εικόνων: Το πρότυπο JPEG. Εισαγωγή. Ευθύς µετασχηµατισµός DCT ΒΕΣ : Συµπίεση και Μετάδοση Πολυµέσων Συµπίεση εικόνων: Το πρότυπο JPEG Περιεχόµενα Εισαγωγή Ο µετασχηµατισµός DCT Το πρότυπο JPEG Προετοιµασία εικόνας / µπλοκ Ευθύς µετασχηµατισµός DCT Κβαντισµός Κωδικοποίηση

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

Συμπίεση Πολυμεσικών Δεδομένων

Συμπίεση Πολυμεσικών Δεδομένων Συμπίεση Πολυμεσικών Δεδομένων Εισαγωγή στο πρόβλημα και επιλεγμένες εφαρμογές Παράδειγμα 2: Συμπίεση Εικόνας ΔΠΜΣ ΜΥΑ, Ιούνιος 2011 Εισαγωγή (1) Οι τεχνικές συμπίεσης βασίζονται στην απόρριψη της πλεονάζουσας

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

Τεχνολογία Πολυμέσων. Ενότητα # 4: Ήχος Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Πολυμέσων. Ενότητα # 4: Ήχος Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Τεχνολογία Πολυμέσων Ενότητα # 4: Ήχος Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το

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

Περιεχόµενα. ΕΠΛ 422: Συστήµατα Πολυµέσων. Βιβλιογραφία. Εισαγωγή. Συµπίεση εικόνων: Το πρότυπο JPEG. Εισαγωγή. Ευθύς µετασχηµατισµός DCT

Περιεχόµενα. ΕΠΛ 422: Συστήµατα Πολυµέσων. Βιβλιογραφία. Εισαγωγή. Συµπίεση εικόνων: Το πρότυπο JPEG. Εισαγωγή. Ευθύς µετασχηµατισµός DCT Περιεχόµενα ΕΠΛ : Συστήµατα Πολυµέσων Συµπίεση εικόνων: Το πρότυπο JPEG Εισαγωγή Ο µετασχηµατισµός DCT Το πρότυπο JPEG Προετοιµασία εικόνας / µπλοκ Ευθύς µετασχηµατισµός DCT Κβαντισµός Κωδικοποίηση ηµιουργία

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

Ένα αναλογικό σήμα περιέχει άπειρες πιθανές τιμές. Για παράδειγμα ένας απλός ήχος αν τον βλέπαμε σε ένα παλμογράφο θα έμοιαζε με το παρακάτω:

Ένα αναλογικό σήμα περιέχει άπειρες πιθανές τιμές. Για παράδειγμα ένας απλός ήχος αν τον βλέπαμε σε ένα παλμογράφο θα έμοιαζε με το παρακάτω: Σημειώσεις Δικτύων Αναλογικά και ψηφιακά σήματα Ένα αναλογικό σήμα περιέχει άπειρες πιθανές τιμές. Για παράδειγμα ένας απλός ήχος αν τον βλέπαμε σε ένα παλμογράφο θα έμοιαζε με το παρακάτω: Χαρακτηριστικά

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

ΠΛΗ21 Κεφάλαιο 1. ΠΛΗ21 Ψηφιακά Συστήματα: Τόμος Α Κεφάλαιο: 1 Εισαγωγή

ΠΛΗ21 Κεφάλαιο 1. ΠΛΗ21 Ψηφιακά Συστήματα: Τόμος Α Κεφάλαιο: 1 Εισαγωγή Ψηφιακά Συστήματα: Τόμος Α Κεφάλαιο: 1 Εισαγωγή Στόχοι του κεφαλαίου είναι να γνωρίσουμε: Τι είναι τα Αναλογικά κ τι τα Ψηφιακά Μεγέθη Τι είναι Σήμα, Αναλογικό Σήμα, Ψηφιακό Σήμα Τι είναι Δυαδικό Σήμα

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

Συμπίεση Δεδομένων

Συμπίεση Δεδομένων Συμπίεση Δεδομένων 2014-2015 Ρυθμός κωδικοποίησης Ένας κώδικας που απαιτεί L bits για την κωδικοποίηση μίας συμβολοσειράς N συμβόλων που εκπέμπει μία πηγή έχει ρυθμό κωδικοποίησης (μέσο μήκος λέξης) L

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

Θέματα Συστημάτων Πολυμέσων

Θέματα Συστημάτων Πολυμέσων Θέματα Συστημάτων Πολυμέσων Ενότητα # 6: Στοιχεία Θεωρίας Πληροφορίας Διδάσκων: Γεώργιος K. Πολύζος Τμήμα: Μεταπτυχιακό Πρόγραμμα Σπουδών Επιστήμη των Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

Ψηφιακή Επεξεργασία Εικόνας

Ψηφιακή Επεξεργασία Εικόνας ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Ψηφιακή Επεξεργασία Εικόνας Ενότητα 7 : Πρότυπο συμπίεσης JPEG Ιωάννης Έλληνας Τμήμα Η/ΥΣ Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

Παλμοκωδική Διαμόρφωση. Pulse Code Modulation (PCM)

Παλμοκωδική Διαμόρφωση. Pulse Code Modulation (PCM) Παλμοκωδική Διαμόρφωση Pulse Code Modulation (PCM) Pulse-code modulation (PCM) Η PCM είναι ένας στοιχειώδης τρόπος διαμόρφωσης που δεν χρησιμοποιεί φέρον! Το μεταδιδόμενο (διαμορφωμένο) σήμα PCM είναι

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

Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων

Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ Κεφάλαιο 9 : Κανάλι-Σύστημα Χρήστος Ξενάκης Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων Περιεχόμενα Ομιλίας Χωρητικότητα Χ ό καναλιού Το Gaussian κανάλι επικοινωνίας Τα διακριτά

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

ιαφορική εντροπία Σεραφείµ Καραµπογιάς

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

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

Ήχος. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 04-1

Ήχος. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 04-1 Ήχος Χαρακτηριστικά του ήχου Ψηφιοποίηση με μετασχηματισμό Ψηφιοποίηση με δειγματοληψία Κβαντοποίηση δειγμάτων Παλμοκωδική διαμόρφωση Συμβολική αναπαράσταση μουσικής Τεχνολογία Πολυμέσων και Πολυμεσικές

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

Θέματα Συστημάτων Πολυμέσων. Ενότητα # 7: JPEG Διδάσκων: Γεώργιος Πολύζος Τμήμα: Μεταπτυχιακό Πρόγραμμα Σπουδών Επιστήμη των Υπολογιστών

Θέματα Συστημάτων Πολυμέσων. Ενότητα # 7: JPEG Διδάσκων: Γεώργιος Πολύζος Τμήμα: Μεταπτυχιακό Πρόγραμμα Σπουδών Επιστήμη των Υπολογιστών Θέματα Συστημάτων Πολυμέσων Ενότητα # 7: JPEG Διδάσκων: Γεώργιος Πολύζος Τμήμα: Μεταπτυχιακό Πρόγραμμα Σπουδών Επιστήμη των Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

Εισαγωγή στις Τηλεπικοινωνίες

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

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

Συστήµατα και Αλγόριθµοι Πολυµέσων

Συστήµατα και Αλγόριθµοι Πολυµέσων Συστήµατα και Αλγόριθµοι Πολυµέσων Ιωάννης Χαρ. Κατσαβουνίδης Οµιλία #5: Αρχές Επεξεργασίας Σηµάτων Πολυµέσων 7 Νοεµβρίου 2005 Επανάληψη Θεωρία Πληροφορίας Εντροπία: H ( P) i= 0 Κωδικοποίηση Huffman 3

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

Ψηφιακές Τηλεπικοινωνίες

Ψηφιακές Τηλεπικοινωνίες Ψηφιακές Τηλεπικοινωνίες Θεωρία Πληροφορίας: Κωδικοποίηση Πηγής Ψηφιακή Μετάδοση Υπάρχουν ιδιαίτερα εξελιγμένες τεχνικές αναλογικής μετάδοσης (που ακόμη χρησιμοποιούνται σε ορισμένες εφαρμογές) Επίσης,

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

Ψηφιακή Επεξεργασία Εικόνας

Ψηφιακή Επεξεργασία Εικόνας ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Ψηφιακή Επεξεργασία Εικόνας Ενότητα 9 : Κωδικοποίηση βίντεο Πρότυπο συμπίεσης MPEG Ιωάννης Έλληνας Τμήμα Η/ΥΣ Άδειες Χρήσης Το

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 4: ΣΥΣΤΗΜΑΤΑ ΠΟΛΥΜΕΣΩΝ Ακαδηµαϊκό Έτος 004 005, Χειµερινό Εξάµηνο Καθ.: Νίκος Τσαπατσούλης ΤΕΛΙΚΗ ΕΞΕΤΑΣΗ Η εξέταση αποτελείται από δύο µέρη. Το πρώτο περιλαµβάνει

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

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΠΑΛΜΟΚΩΔΙΚΗ ΔΙΑΜΟΡΦΩΣΗ - PCM (ΜΕΡΟΣ Α)

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΠΑΛΜΟΚΩΔΙΚΗ ΔΙΑΜΟΡΦΩΣΗ - PCM (ΜΕΡΟΣ Α) ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΠΑΛΜΟΚΩΔΙΚΗ ΔΙΑΜΟΡΦΩΣΗ - PCM (ΜΕΡΟΣ Α) 3.1. ΣΚΟΠΟΣ ΑΣΚΗΣΗΣ Σκοπός της εργαστηριακής αυτής άσκησης είναι η μελέτη της παλμοκωδικής διαμόρφωσης που χρησιμοποιείται στα σύγχρονα τηλεπικοινωνιακά

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

Τεχνολογία Πολυμέσων. Ενότητα # 14: Κωδικοποίηση βίντεο: Η.264 Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Πολυμέσων. Ενότητα # 14: Κωδικοποίηση βίντεο: Η.264 Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Τεχνολογία Πολυμέσων Ενότητα # 14: Κωδικοποίηση βίντεο: Η.264 Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου

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

Group (JPEG) το 1992.

Group (JPEG) το 1992. Μέθοδοι Συμπίεσης Εικόνας Πρωτόκολλο JPEG Συμπίεση Εικόνας: Μείωση αποθηκευτικού χώρου Ευκολία στη μεταφορά αρχείων Δημιουργήθηκε από την ομάδα Joint Photographic Experts Group (JPEG) το 1992. Ονομάστηκε

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

Συστήματα Πολυμέσων. Ενότητα 8: Συμπίεση Εικόνας κατά JPEG Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Συστήματα Πολυμέσων. Ενότητα 8: Συμπίεση Εικόνας κατά JPEG Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 8: Συμπίεση Εικόνας κατά JPEG 2000 Θρασύβουλος Γ. Τσιάτσος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

Βίντεο. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 06-1

Βίντεο. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 06-1 Βίντεο Εισαγωγή Χαρακτηριστικά του βίντεο Απόσταση θέασης Μετάδοση τηλεοπτικού σήματος Συμβατικά τηλεοπτικά συστήματα Ψηφιακό βίντεο Εναλλακτικά μορφότυπα Τηλεόραση υψηλής ευκρίνειας Κινούμενες εικόνες

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

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 9 : Συμπίεση δεδομένων. Δρ. Γκόγκος Χρήστος

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 9 : Συμπίεση δεδομένων. Δρ. Γκόγκος Χρήστος Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Πληροφορική Ι Ενότητα 9 : Συμπίεση δεδομένων Δρ. Γκόγκος Χρήστος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Χρηματοοικονομικής & Ελεγκτικής

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

Ψηφιακή Επεξεργασία και Ανάλυση Εικόνας Ενότητα 6 η : Συμπίεση Εικόνας. Καθ. Κωνσταντίνος Μπερμπερίδης Πολυτεχνική Σχολή Μηχανικών Η/Υ & Πληροφορικής

Ψηφιακή Επεξεργασία και Ανάλυση Εικόνας Ενότητα 6 η : Συμπίεση Εικόνας. Καθ. Κωνσταντίνος Μπερμπερίδης Πολυτεχνική Σχολή Μηχανικών Η/Υ & Πληροφορικής Ψηφιακή Επεξεργασία και Ανάλυση Εικόνας Ενότητα 6 η : Συμπίεση Εικόνας Καθ. Κωνσταντίνος Μπερμπερίδης Πολυτεχνική Σχολή Μηχανικών Η/Υ & Πληροφορικής Σκοποί ενότητας Εισαγωγή στη συμπίεση εικόνας Μη απωλεστικες

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

Ευρυζωνικά δίκτυα (2) Αγγελική Αλεξίου

Ευρυζωνικά δίκτυα (2) Αγγελική Αλεξίου Ευρυζωνικά δίκτυα (2) Αγγελική Αλεξίου alexiou@unipi.gr 1 Σήματα και πληροφορία Βασικές έννοιες 2 Αναλογικά και Ψηφιακά Σήματα Στις τηλεπικοινωνίες συνήθως χρησιμοποιούμε περιοδικά αναλογικά σήματα και

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

Συµπίεση Δεδοµένων: Συµπίεση Ψηφιακού Βίντεο

Συµπίεση Δεδοµένων: Συµπίεση Ψηφιακού Βίντεο Συµπίεση Δεδοµένων: Συµπίεση Ψηφιακού Βίντεο Αλέξανδρος Ελευθεριάδης Αναπ. Καθηγητής & Marie Curie Chair Τµήµα Πληροφορικής και Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών eleft@di.uoa.gr,

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

Πολυμέσα. Συμπίεση δεδομένων Κωδικοποίηση JPEG. Δρ. Γεώργιος Π. Παυλίδης ΔΗΜΟΚΡΙΤΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΡΑΚΗΣ

Πολυμέσα. Συμπίεση δεδομένων Κωδικοποίηση JPEG. Δρ. Γεώργιος Π. Παυλίδης ΔΗΜΟΚΡΙΤΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΡΑΚΗΣ Πολυμέσα Συμπίεση δεδομένων Δρ. Γεώργιος Π. Παυλίδης Συμπίεση Δεδομένων Περιεχόμενα Γνωστοίαλγόριθμοισυμπίεσης JPEG, Οικογένεια H.26x, H.32x Χρησιμοποίηση Εφαρμογές Εκμάθηση Σχεδίαση Διασύνδεση χρήστη

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΠΕΞΕΡΓΑΣΙΑ ΕΙΚΟΝΑΣ. Ενότητα 6: Κωδικοποίηση & Συμπίεση Εικόνας

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΠΕΞΕΡΓΑΣΙΑ ΕΙΚΟΝΑΣ. Ενότητα 6: Κωδικοποίηση & Συμπίεση Εικόνας ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΠΕΞΕΡΓΑΣΙΑ ΕΙΚΟΝΑΣ Ενότητα 6: Κωδικοποίηση & Συμπίεση Εικόνας Ιωάννης Έλληνας Τμήμα Υπολογιστικών Συστημάτων Άδειες Χρήσης Το

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

Μάθημα 7 ο. Συμπίεση Εικόνας ΤΜΗΥΠ / ΕΕΣΤ 1

Μάθημα 7 ο. Συμπίεση Εικόνας ΤΜΗΥΠ / ΕΕΣΤ 1 Μάθημα 7 ο Συμπίεση Εικόνας ΤΜΗΥΠ / ΕΕΣΤ 1 Εισαγωγή (1) Οι τεχνικές συμπίεσης βασίζονται στην απόρριψη της πλεονάζουσας πληροφορίας Ανάγκες που καλύπτονται Εξοικονόμηση μνήμης Ελάττωση χρόνου και εύρους

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

ITU-T : H.261 (1990), H.262 (1996), H.263 (1995) MPEG-1, MPEG-2, MPEG-4. Αποθήκευση, Μετάδοση, Επικοινωνίες, ίκτυα

ITU-T : H.261 (1990), H.262 (1996), H.263 (1995) MPEG-1, MPEG-2, MPEG-4. Αποθήκευση, Μετάδοση, Επικοινωνίες, ίκτυα Συµπίεση/κωδικοποίηση βίντεο ITU-T : H.261 (1990), H.262 (1996), H.263 (1995) Συνδιάσκεψη : ISDN, ATM, LANs, Internet, PSTN MPEG-1, MPEG-2, MPEG-4 Αποθήκευση, Μετάδοση, Επικοινωνίες, ίκτυα 1 H.261 : εισαγωγή

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

MPEG-4 : Διαδραστικές εφαρμογές πολυμέσων

MPEG-4 : Διαδραστικές εφαρμογές πολυμέσων MPEG-4 : Διαδραστικές εφαρμογές πολυμέσων Συμπίεση οπτικοακουστικών δεδομένων για το Διαδίκτυο Οπτικοί δίσκοι Ψηφιακή τηλεόραση (επίγεια, δορυφορική) Συμβατότητα με MPEG-1 και MPEG-2 Συνθετική σκηνή Εισαγωγή

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

Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων

Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣΟΡ Κεφάλαιο 1 : Εισαγωγή στη Θεωρία ωία Πληροφορίας Χρήστος Ξενάκης Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων Περιεχόμενα Ομιλίας Έννοια της πληροφορίας Άλλες βασικές έννοιες Στόχος

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

Πολυμέσα πάνω από κινητά δίκτυα

Πολυμέσα πάνω από κινητά δίκτυα Πολυμέσα πάνω από κινητά δίκτυα Γιώργος Τζιρίτας Τμήμα Επιστήμης Υπολογιστών http://www.csd.uoc.gr/~tziritas Άνοιξη 2016 1 Πολυμέσα σε ασύρματα δίκτυα Οι πολυμεσικές επικοινωνίες μέσω φορητών συσκευών

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

Επεξεργασία Πολυµέσων. Δρ. Μαρία Κοζύρη Π.Μ.Σ. «Εφαρµοσµένη Πληροφορική» Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο Θεσσαλίας

Επεξεργασία Πολυµέσων. Δρ. Μαρία Κοζύρη Π.Μ.Σ. «Εφαρµοσµένη Πληροφορική» Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο Θεσσαλίας Π.Μ.Σ. «Εφαρµοσµένη Πληροφορική» Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο Θεσσαλίας Ενότητα 4: Συµπίεση Εικόνας 2 Συµπίεση Εικόνας Μείωση Πλεονασµού: Το σήµα εικόνας παρουσιάζει

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

Ραδιοτηλεοπτικά Συστήματα Ενότητα 5: Ψηφιοποίηση και συμπίεση σημάτων ήχου

Ραδιοτηλεοπτικά Συστήματα Ενότητα 5: Ψηφιοποίηση και συμπίεση σημάτων ήχου ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Ραδιοτηλεοπτικά Συστήματα Ενότητα 5: Ψηφιοποίηση και συμπίεση σημάτων ήχου Δρ. Νικόλαος- Αλέξανδρος Τάτλας Τμήμα Ηλεκτρονικών

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

Επεξεργασία Πολυµέσων. Δρ. Μαρία Κοζύρη Π.Μ.Σ. «Εφαρµοσµένη Πληροφορική» Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο Θεσσαλίας

Επεξεργασία Πολυµέσων. Δρ. Μαρία Κοζύρη Π.Μ.Σ. «Εφαρµοσµένη Πληροφορική» Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο Θεσσαλίας Π.Μ.Σ. «Εφαρµοσµένη Πληροφορική» Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο Θεσσαλίας Ενότητα 3: Επισκόπηση Συµπίεσης 2 Θεωρία Πληροφορίας Κωδικοποίηση Θεµελιώθηκε απο τον Claude

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

Ψηφιακή Επεξεργασία Σηµμάτων

Ψηφιακή Επεξεργασία Σηµμάτων Ψηφιακή Επεξεργασία Σηµμάτων Διάλεξη 3: DSP for Audio ΚΩΔΙΚΟΠΟΙΗΣΗ ΚΑΙ ΣΥΜΠΙΕΣΗ ΗΧΗΤΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ΤΟ ΠΡΟΤΥΠΟ ISO/IEC 11172-3 MPEG-1 Δρ. Θωµμάς Ζαρούχας Επιστηµμονικός Συνεργάτης Μεταπτυχιακό Πρόγραµμµμα:

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

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 18

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 18 ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 18 14 Νοεµβρίου, 2006 Γεώργιος Έλληνας Επίκουρος Καθηγητής ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΑ ΘΕΜΑΤΑ

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

MPEG-4: Βασικά Χαρακτηριστικά

MPEG-4: Βασικά Χαρακτηριστικά MPEG-4 MPEG-4: Βασικά Χαρακτηριστικά Σχεδιάστηκε ώστε να καλύπτει ευρύ φάσμα ρυθμών, από 5 kbps εώς 10 Mbps Εκτός από τη συμπίεση δίνει έμφαση και στην αλληλεπίδραση με το χρήστη Χρησιμοποιεί αντικείμενα

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

Δ11 Δ12. Συμπίεση Δεδομένων

Δ11 Δ12. Συμπίεση Δεδομένων Συμπίεση Δεδομένων 2013-2014 Κωδικοποιητές εικονοροής (Video) Δρ. Ν. Π. Σγούρος 2 Κωδικοποιητές Εικονοροών ITU-T VCEG H.261 (1990) ISO/IEC MPEG H.263 (1995/9 6) MPEG-2 (H.262) (1994/9 5) H.263+ (1997/98)

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

Συστήματα Πολυμέσων. Ενότητα 6: Συμπίεση Ψηφιακής Εικόνας. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Συστήματα Πολυμέσων. Ενότητα 6: Συμπίεση Ψηφιακής Εικόνας. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 6: Συμπίεση Ψηφιακής Εικόνας Θρασύβουλος Γ. Τσιάτσος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Κωδικοποίηση βίντεο (MPEG)

Κωδικοποίηση βίντεο (MPEG) (MEG) Εισαγωγή στο MEG-1 Κωδικοποίηση βίντεο οµή βίντεο Κωδικοποίηση ήχου Ροή δεδοµένων Τεχνολογία Πολυµέσων 11-1 Εισαγωγή στο MEG-1 MEG (Motion ictures Experts Group) ίντεο και ήχος υψηλής ποιότητας ιανοµή

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

Συστήματα Επικοινωνιών ΙI

Συστήματα Επικοινωνιών ΙI + Διδάσκων: Δρ. Κ. Δεμέστιχας e-mail: cdemestichas@uowm.gr Συστήματα Επικοινωνιών ΙI Παλμοκωδική διαμόρφωση (PCM) I + Ιστοσελίδα nιστοσελίδα του μαθήματος: n https://eclass.uowm.gr/courses/icte302/ + Περιεχόμενα

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

Συστήµατα Πολυµέσων Ενδιάµεση Εξέταση: Οκτώβριος 2004

Συστήµατα Πολυµέσων Ενδιάµεση Εξέταση: Οκτώβριος 2004 Ενδιάµεση Εξέταση: Οκτώβριος 4 ΜΕΡΟΣ Β: ΑΣΚΗΣΕΙΣ Άσκηση (25 µονάδες): Μια εικόνα αποχρώσεων του γκρι και διαστάσεων 25 x pixel έχει κωδικοποιηθεί κατά PCM µε βάθος χρώµατος 3 bits /pixel. Οι τιµές φωτεινότητας

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

Τι συσχετίζεται με τον ήχο

Τι συσχετίζεται με τον ήχο ΗΧΟΣ Τι συσχετίζεται με τον ήχο Υλικό Κάρτα ήχου Προενυσχιτής Equalizer Ενισχυτής Ηχεία Χώρος Ανθρώπινη ακοή Ψυχοακουστικά φαινόμενα Ηχητική πληροφορία Σημείο αναφοράς 20 μpa Εύρος συχνοτήτων Δειγματοληψία

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

Περιεχόµενα. ΕΠΛ 422: Συστήµατα Πολυµέσων. Βιβλιογραφία. Κατηγορίες τεχνικών συµπίεσης. Τεχνικές Συµπίεσης

Περιεχόµενα. ΕΠΛ 422: Συστήµατα Πολυµέσων. Βιβλιογραφία. Κατηγορίες τεχνικών συµπίεσης. Τεχνικές Συµπίεσης Περιεχόµενα ΕΠΛ : Συστήµατα Πολυµέσων Συµπίεση εδοµένων: Τεχνικές Συµπίεσης Βιβλιογραφία Κατηγορίες Τεχνικών Συµπίεσης Τεχνικές Εντροπίας Τεχνικές Μήκους ιαδροµής Στατιστικές Κωδικοποίηση Πηγής Μετασχηµατισµού

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

Ανάλυση Διατάξεων Εκπομπής σε Συστήματα Ψηφιακής Τηλεόρασης Υψηλής Ευκρίνειας

Ανάλυση Διατάξεων Εκπομπής σε Συστήματα Ψηφιακής Τηλεόρασης Υψηλής Ευκρίνειας ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΑΥΤΟΜΑΤΙΣΜΟΥ Ανάλυση Διατάξεων Εκπομπής σε Συστήματα Ψηφιακής Τηλεόρασης Υψηλής Ευκρίνειας Φλώρος Άγγελος ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

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

Συστήµατα και Αλγόριθµοι Πολυµέσων

Συστήµατα και Αλγόριθµοι Πολυµέσων Συστήµατα και Αλγόριθµοι Πολυµέσων Ιωάννης Χαρ. Κατσαβουνίδης Οµιλία #3: Αρχές Επεξεργασίας Σηµάτων Πολυµέσων 10 Οκτωβρίου 005 Επανάλειψη (1) ειγµατοληψία επανα-δειγµατοληψία Τεχνικές φίλτρων (συνέλειξη)

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

Εισαγωγή στις Τηλεπικοινωνίες / Εργαστήριο

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

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

Θεώρημα κωδικοποίησης πηγής

Θεώρημα κωδικοποίησης πηγής Κωδικοποίηση Kωδικοποίηση πηγής Θεώρημα κωδικοποίησης πηγής Καθορίζει ένα θεμελιώδες όριο στον ρυθμό με τον οποίο η έξοδος μιας πηγής πληροφορίας μπορεί να συμπιεσθεί χωρίς να προκληθεί μεγάλη πιθανότητα

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

Θέμα: «ΣΥΜΠΙΕΣΗ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΠΟΛΥΜΕΣΑ» Εισηγητής: Παναγιώτης Γιώτης 20 Μαϊου 2007 Αθήνα

Θέμα: «ΣΥΜΠΙΕΣΗ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΠΟΛΥΜΕΣΑ» Εισηγητής: Παναγιώτης Γιώτης 20 Μαϊου 2007 Αθήνα Θέμα: «ΣΥΜΠΙΕΣΗ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΠΟΛΥΜΕΣΑ» Εισηγητής: Παναγιώτης Γιώτης 20 Μαϊου 2007 Αθήνα Βασικοί άξονες της παρουσίασης ΜΕΡΟΣ Ι: Τι είναι η συμπίεση και γιατί είναι απαραίτητη ΜΕΡΟΣ ΙΙ: Τεχνικές Συμπίεσης

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

Μάθημα Εισαγωγή στις Τηλεπικοινωνίες Κωδικοποίηση πηγής- καναλιού Μάθημα 9o

Μάθημα Εισαγωγή στις Τηλεπικοινωνίες Κωδικοποίηση πηγής- καναλιού Μάθημα 9o Μάθημα Εισαγωγή στις Τηλεπικοινωνίες Κωδικοποίηση πηγής- καναλιού Μάθημα 9o ΕΘΝΙΚΟ & ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ Τομέας Επικοινωνιών και Επεξεργασίας Σήματος Τμήμα Πληροφορικής & Τηλεπικοινωνιών

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

Δ10. Συμπίεση Δεδομένων

Δ10. Συμπίεση Δεδομένων Συμπίεση Δεδομένων 203-204 Κωδικοποίηση εικονοροής (Video) Δρ. Ν. Π. Σγούρος 2 Ανάλυση Οθονών Δρ. Ν. Π. Σγούρος 3 Πρωτόκολλα μετάδοσης εικονοροών Πρωτόκολλο Ρυθμός (Hz) Φίλμ 23.976 ATSC 24 PAL,DVB-SD,DVB-HD

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

MPEG-4: Διαδραστικές εφαρμογές πολυμέσων

MPEG-4: Διαδραστικές εφαρμογές πολυμέσων MPEG-4: Διαδραστικές εφαρμογές πολυμέσων Γιώργος Τζιρίτας Τμήμα Επιστήμης Υπολογιστών http://www.csd.uoc.gr/~tziritas Άνοιξη 2016 1 Εισαγωγή Δημοσίευση 1998 (Intern. Telecom. Union) Επικοινωνίες με πολυμέσα,

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 4: ΣΥΣΤΗΜΑΤΑ ΠΟΛΥΜΕΣΩΝ Θεωρητικές Ασκήσεις (# ): ειγµατοληψία, κβαντοποίηση και συµπίεση σηµάτων. Στην τηλεφωνία θεωρείται ότι το ουσιαστικό περιεχόµενο της

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

Πολυμέσα. Συμπίεση δεδομένων Κωδικοποίηση MPEG. Δρ. Γεώργιος Π. Παυλίδης ΔΗΜΟΚΡΙΤΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΡΑΚΗΣ

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

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

Δομές Δεδομένων και Αλγόριθμοι

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 20 Huffman codes 1 / 12 Κωδικοποίηση σταθερού μήκους Αν χρησιμοποιηθεί κωδικοποίηση σταθερού μήκους δηλαδή

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

Τεχνολογία Πολυμέσων. Ενότητα 4: Συμπίεση Δεδομένων. Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ

Τεχνολογία Πολυμέσων. Ενότητα 4: Συμπίεση Δεδομένων. Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ Τεχνολογία Πολυμέσων Ενότητα 4: Συμπίεση Δεδομένων Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Συστήματα Πολυμέσων. Ενότητα 7: Συμπίεση Εικόνας κατά JPEG. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Συστήματα Πολυμέσων. Ενότητα 7: Συμπίεση Εικόνας κατά JPEG. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 7: Συμπίεση Εικόνας κατά JPEG Θρασύβουλος Γ. Τσιάτσος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Παλμοκωδική Διαμόρφωση. Pulse Code Modulation (PCM)

Παλμοκωδική Διαμόρφωση. Pulse Code Modulation (PCM) Παλμοκωδική Διαμόρφωση Pulse Code Modulation (PCM) Pulse-code modulation (PCM) Η PCM είναι ένας στοιχειώδης τρόπος διαμόρφωσης που δεν χρησιμοποιεί φέρον! Το μεταδιδόμενο (διαμορφωμένο) σήμα PCM είναι

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

Τεχνολογία Πολυμέσων. Ενότητα # 13: Κωδικοποίηση βίντεο: MPEG Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Πολυμέσων. Ενότητα # 13: Κωδικοποίηση βίντεο: MPEG Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Τεχνολογία Πολυμέσων Ενότητα # 13: Κωδικοποίηση βίντεο: MPEG Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου

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

Κωδικοποίηση ήχου. Σύστημα ακοής MP3 / MP4 Κωδικοποίηση φωνής

Κωδικοποίηση ήχου. Σύστημα ακοής MP3 / MP4 Κωδικοποίηση φωνής Κωδικοποίηση ήχου Σύστημα ακοής MP3 / MP4 Κωδικοποίηση φωνής T. Painter and A. Spanias, Perceptual Coding of Digital Audio, Proceedings of the IEEE, pp. 451-513, April 2000. P. Noll, MPEG digital audio

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

Ψηφιακές Τηλεπικοινωνίες. Θεωρία Ρυθμού Παραμόρφωσης

Ψηφιακές Τηλεπικοινωνίες. Θεωρία Ρυθμού Παραμόρφωσης Ψηφιακές Τηλεπικοινωνίες Θεωρία Ρυθμού Παραμόρφωσης Θεωρία Ρυθμού-Παραμόρφωσης Θεώρημα Κωδικοποίησης Πηγής: αν έχω αρκετά μεγάλο μπλοκ δεδομένων, μπορώ να φτάσω κοντά στην εντροπία Πιθανά Προβλήματα: >

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

Παναγιώτης Μαθιόπουλος Ph.D.

Παναγιώτης Μαθιόπουλος Ph.D. ΨΗΦΙΑΚΕΣ ΕΠΙΚΟΙΝΩΝΙΕΣ Παναγιώτης Μαθιόπουλος Ph.D. Καθηγητής Ψηφιακών Επικοινωνιών Τμήμα Πληροφορικής και Τηλεπικοινωνιών ΕΚΠΑ Professor (1989 2003) Department of Electrical and Computer Engineering The

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

Η κωδικοποίηση των συντελεστών DC

Η κωδικοποίηση των συντελεστών DC Η κωδικοποίηση των συντελεστών DC Γιακάθευποπίνακαηδιαφορά, d,του DC συντελεστήτουαπότοσυντελεστή DC τουπροηγούµενουυποπίνακαοδηγούνταιστονκωδικοποιητήεντροπίας (variable length coding VLC). Στονκωδικοποιητήηδιαφοράκατατάσσεταιανάλογαµετοµέγεθόςτηςστοακόλουθοπίνακα,

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

19/3/2007 Πολυµέσα και Συµπίεση εδοµένων

19/3/2007 Πολυµέσα και Συµπίεση εδοµένων ΓΤΠ 61 Ηλεκτρονικοί Υπολογιστές στις Γραφικές Τέχνες Πολυµέσα και Συµπίεση εδοµένων Εισαγωγή Βασικές Έννοιες Ταξινόµηση Τεχνικών Συµπίεσης Συµπίεση Κειµένου Συµπίεση Εικόνας Συµπίεση Ήχου Συµπίεση Video

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

Πληροφορική Εφαρμογές Πολυμέσων

Πληροφορική Εφαρμογές Πολυμέσων ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Πληροφορική Εφαρμογές Πολυμέσων Ενότητα 2: Ψηφιοποίηση και Συμπίεση Ζαχαρούλα Ανδρεοπούλου Τμήμα Δασολογίας & Φυσικού Περιβάλλοντος Άδειες

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

Nέες Τεχνολογίες. στις Επικοινωνίες

Nέες Τεχνολογίες. στις Επικοινωνίες Τεχνολογικό Εκπαιδευτικό Ίδρυμα Σερρών Τμήμα Πληροφορικής & Επικοινωνιών Nέες Τεχνολογίες στις Επικοινωνίες Δρ. Δημήτριος Ευσταθίου Επίκουρος Καθηγητής Κώδικες Διόρθωσης Λαθών Τεχνολογικό Εκπαιδευτικό

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

Συστήματα Επικοινωνιών ΙI

Συστήματα Επικοινωνιών ΙI + Διδάσκων: Δρ. Κ. Δεμέστιχας e-mail: cdemestichas@uowm.gr Συστήματα Επικοινωνιών ΙI Ψηφιακή μετάδοση στη βασική ζώνη + Ιστοσελίδα nιστοσελίδα του μαθήματος: n https://eclass.uowm.gr/courses/icte302/ +

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