Αρχές κωδικοποίησης Απαιτήσεις κωδικοποίησης Είδη κωδικοποίησης Βασικές τεχνικές κωδικοποίησης Κωδικοποίηση Huffman Κωδικοποίηση µετασχηµατισµών Κβαντοποίηση διανυσµάτων ιαφορική κωδικοποίηση Τεχνολογία Πολυµέσων 08-1
Απαιτήσεις κωδικοποίησης Απαιτήσεις πολυµέσων Φωνή PCM: 64 Kbps (8 KHz, 8 bits) Μουσικό CD: 705,6x2 Kbps (44,1 KHz, 16 bits) Βίντεο PAL: 216 Mbps (13,5 MHz, 4:2:2, 8 bits) Συµπίεση και αποσυµπίεση Αποθήκευση (δίσκοι) Μετάδοση (δίκτυο) Ενταµίευση (µνήµη) Περιορισµοί Υψηλή πιστότητα Χαµηλή πολυπλοκότητα Χρονικά όρια επεξεργασίας Τεχνολογία Πολυµέσων 08-2
Απαιτήσεις κωδικοποίησης Απαιτήσεις διαλογικού ρυθµού Καθυστέρηση συµπίεσης / αποσυµπίεσης κάτω από 50 ms Καθυστέρηση από άκρο σε άκρο κάτω από 150 ms Απαιτήσεις ρυθµού ανάκτησης Γρήγορη ανάκτηση πληροφοριών (εµπρός / πίσω) Τυχαία προσπέλαση σε λιγότερο από 500 ms Αποσυµπίεση χωρίς πρόσθετα δεδοµένα Απαιτήσεις όλων των ρυθµών Μορφότυπα γενικής φύσης Πολλαπλοί ρυθµοί µετάδοσης Συγχρονισµός ήχου, βίντεο και άλλων µέσων Υλοποίηση µε λογισµικό ή VLSI Τυποποιηµένες τεχνικές συµπίεσης / αποσυµπίεσης Τεχνολογία Πολυµέσων 08-3
Είδη κωδικοποίησης Μη απωλεστική (lossless) Κείµενο, προγράµµατα, ιατρικές εικόνες Απωλεστική (lossy) Ήχος, βίντεο Κωδικοποίηση εντροπίας εν κατανοεί το περιεχόµενο των µέσων Μη απωλεστική Κωδικοποίησης πηγής Κατανοεί το περιεχόµενο των µέσων Μπορεί να είναι απωλεστική ή µη απωλεστική Πρόβλεψη ή/και µετασχηµατισµός δεδοµένων Υβριδική κωδικοποίηση Συνδυασµός κωδικοποίησης πηγής και εντροπίας Τεχνολογία Πολυµέσων 08-4
Είδη κωδικοποίησης Κωδικοποίηση εντροπίας Κωδικοποίηση µήκους σειρών Κωδικοποίηση Huffman Αριθµητική κωδικοποίηση Κωδικοποίηση πηγής ιαφορική κωδικοποίηση DPCM DM Κωδικοποίηση µετασχηµατισµών FFT DCT Στρωµατοποιηµένη κωδικοποίηση Subsampling Sub-band Κβαντοποίηση διανυσµάτων Υβριδική Κωδικοποίηση JPEG MPEG H.261/3/4 DVI Τεχνολογία Πολυµέσων 08-5
Είδη κωδικοποίησης Ασυµπίεστη Εικόνα Προετοιµασία Επεξεργασία Κβαντοποίηση Προετοιµασία Μετατροπή σήµατος από αναλογικό σε ψηφιακό Ψηφιακή αναπαράσταση της πληροφορίας Επεξεργασία Κωδικοποίηση Εντροπίας Συµπιεσµένη Εικόνα Μετασχηµατισµός από πεδίο χρόνου σε πεδίο συχνοτήτων Πρόβλεψη κίνησης ανάµεσα στα πλαίσια Τεχνολογία Πολυµέσων 08-6
Είδη κωδικοποίησης Κβαντοποίηση Μετατροπή δειγµάτων σε ακέραιες τιµές Μεταβαλλόµενη ακρίβεια ανάλογα µε τη σηµασία Κωδικοποίηση εντροπίας Συµπίεση ψηφιακής ροής χωρίς απώλειες Συµµετρικές τεχνικές Ίδια πολυπλοκότητα συµπίεσης και αποσυµπίεσης Κατάλληλες για διαλογικές εφαρµογές Ασύµµετρες τεχνικές Αποσυµπίεση πολύ πιο απλή από συµπίεση Κατάλληλες για εφαρµογές ανάκτησης Συµπίεση µία φορά / αποσυµπίεση πολλές φορές Τεχνολογία Πολυµέσων 08-7
Βασικές τεχνικές κωδικοποίησης Υποδειγµατοληψία και παρεµβολή Φωτεινότητα και χρωµικότητα: (4:2:2) ή (4:1:1) Ανακατασκευή δειγµάτων χρωµικότητας Κωδικοποίηση µήκους σειρών (RLE) Αντικατάσταση σειρών όµοιων bytes Byte, σηµαία!, µήκος σειράς-4 ιπλασιασµός σηµαίας όπου εµφανίζεται Παράδειγµα ABCCCCCCCCDE!FGGG > ABC!4DE!!FGGG Κωδικοποίηση συχνών λέξεων Κατάλληλη για γλώσσες προγραµµατισµού Κωδικοποίηση ζευγών χαρακτήρων Κατάλληλη για φυσική γλώσσα Τεχνολογία Πολυµέσων 08-8
Κωδικοποίηση Huffman Βέλτιστη κωδικοποίηση Τόσα bits ανά σύµβολο όσο η εσωτερική πληροφορία Πρέπει να έχει κωδικούς µεταβλητού µήκους Απαιτεί γνώση των πιθανοτήτων εισόδου Κωδικοποίηση Huffman υαδικό δένδρο κωδικοποίησης / αποκωδικοποίησης Φύλλα: χαρακτήρες και πιθανότητες Κόµβοι: σύνολα χαρακτήρων και πιθανοτήτων Κατασκευή Επιλογή κόµβων µε ελάχιστες πιθανότητες Αντικατάσταση κόµβων µε υποδένδρο Άθροισµα πιθανοτήτων παιδιών στον πατέρα Αντιστοίχιση 0 και 1 στα δύο παιδιά Τεχνολογία Πολυµέσων 08-9
Κωδικοποίηση Huffman p(adceb) = 1.00 0 1 p(adce) = 0.49 p(b) = 0.51 1 0 p(ce) = 0.20 p(ad) = 0.29 1 0 0 1 p(c) = 0.09 p(e) = 0.11 p(d) = 0.13 p(a) = 0.16 Είσοδος P(A)=0,16, P(B)=0,51, P(C)=0,09, P(D)=0,13, P(E)=0,11 Έξοδος w(a)=001, w(b)=1, w(c)=011, w(d)=000, w(e)=010 Τεχνολογία Πολυµέσων 08-10
Κωδικοποίηση Huffman Κωδικοποίηση: Αντικατάσταση xµε w(x) Αποκωδικοποίηση Απαιτείται γνώση του δένδρου κωδικοποίησης Εναλλακτικά, γνώση πιθανοτήτων και κανόνων κατασκευής Αντιστοίχιση bits εισόδου µε µονοπάτια δένδρου Κάθε πρόθεµα αντιστοιχεί σε διαφορετικό µονοπάτι Κωδικοποίηση LZ/LZW/LZSS εν απαιτεί γνώση των πιθανοτήτων της εισόδου Αντικαθιστά συµβολοσειρές µε κωδικούς Ο πίνακας κωδικών αναδηµιουργείται στον παραλήπτη ύο παραλλαγές Χρήση βιβλίου κωδικών (λεξικού) Χρήση παραθύρου στην είσοδο Τεχνολογία Πολυµέσων 08-11
Κωδικοποίηση µετασχηµατισµών Μετασχηµατισµός πεδίου εισόδου σε νέο πεδίο Αντίστροφος µετασχηµατισµός για αποκωδικοποίηση Το νέο πεδίο προσφέρεται για απωλεστική κωδικοποίηση Μετασχηµατισµός διακριτού συνηµιτόνου (DCT) Κατάλληλος για εικόνες Χρησιµοποιείται στο πρότυπο JPEG Γρήγορος µετασχηµατισµός Fourier (FFT) Είσοδος: σήµα σε κάθε χρονική στιγµή f(t) ιάσπαση f(t) σε αρµονικές µε συντελεστές g(l) Έξοδος: συντελεστής κάθε συχνότητας g(l) Αποµόνωση πλέον σηµαντικών συντελεστών Κβαντοποίηση συντελεστών αναλόγως σηµασίας Παράλειψη ασήµαντων συντελεστών Τεχνολογία Πολυµέσων 08-12
Κωδικοποίηση µετασχηµατισµών Πεδίο χώρου ή χρόνου Πεδίο Συχνοτήτων a c Τ x ή t t Κωδικοποίηση υποπεριοχών ιάκριση συχνοτήτων σε περιοχές ιαφορετική µεταχείριση κάθε περιοχής Προσέγγιση σήµατος µε λίγες περιοχές Κωδικοποίηση υποδειγµατοληψίας ιαφορετική δειγµατοληψία κάθε συνιστώσας Τεχνολογία Πολυµέσων 08-13
Κβαντοποίηση διανυσµάτων Αρχική Ροή εδοµένων ιάνυσµα 0 της ροής δεδοµένων ιάνυσµα 1 της ροής δεδοµένων ιάνυσµα της ροής δεδοµένων ιάνυσµα της ροής δεδοµένων ιάνυσµα n της ροής δεδοµένων Βιβλίο Κωδίκων Πρότυπο 0 Πρότυπο i Πρότυπο k Πρότυπο p Συµπιεσµένη Ροή εδοµένων k 0 i Βιβλίο κωδικών (διανυσµάτων) Η έξοδος περιέχει δείκτες στο βιβλίο κωδικών Απωλεστική µέθοδος Πίνακας µε κωδικές λέξεις των n bytes Τεµαχισµός εισόδου σε διανύσµατα των nbytes Κβαντοποίηση µε την πλησιέστερη κωδική λέξη Ο πίνακας δεν περιέχει όλες τις δυνατές λέξεις Τεχνολογία Πολυµέσων 08-14
Κβαντοποίηση διανυσµάτων Αρχική Ροή εδοµένων Βιβλίο Κωδίκων Συµπιεσµένη Ροή εδοµένων ιάνυσµα 0 της ροής δεδοµένων ιάνυσµα 1 της ροής δεδοµένων ιάνυσµα της ροής δεδοµένων ιάνυσµα της ροής δεδοµένων ιάνυσµα n της ροής δεδοµένων Πρότυπο 0 Πρότυπο i Πρότυπο k Πρότυπο p k 0 i Err 0 Err 1 Err n Μη απωλεστική µέθοδος Μετάδοση και της διαφοράς από την κωδική λέξη Απαιτήσεις βιβλίου κωδικών Μικρό πλήθος κωδικών λέξεων Μικροί δείκτες στην έξοδο Παρόµοιος µε τα διανύσµατα εισόδου Μικρές απώλειες κβαντοποίησης Τεχνολογία Πολυµέσων 08-15
ιαφορική κωδικοποίηση Χρήση της διαφοράς των διαδοχικών τιµών Μικρές διαφορές µεταξύ τιµών Μεγάλες διαφορές από το µηδέν ιαµόρφωση δέλτα (DM): ένα bit ανά δείγµα (+1 ή 1) ιαφορική κωδικοποίηση χωρίς προσαρµογή (DPCM) Έστω 4 bits ανά δείγµα Μικρές διαφορές: [-8,+7] ανά 1 βήµα Μεγάλες διαφορές: [-128,+127] ανά 16 βήµατα ιαφορική κωδικοποίηση µε προσαρµογή (ADPCM) Συντελεστής προσαρµογής Υψηλές διαφορές: αύξηση συντελεστή Χαµηλές διαφορές: µείωση συντελεστή Κωδικοποίηση: διαφορά / τρέχων συντελεστής Αποκωδικοποίηση: διαφορές * τρέχων συντελεστής Τεχνολογία Πολυµέσων 08-16