Πολυμέσα Συμπίεση δεδομένων Κωδικοποίηση MPEG Δρ. Γεώργιος Π. Παυλίδης
Συμπίεση Δεδομένων Περιεχόμενα Γνωστοίαλγόριθμοισυμπίεσης MPEG Χρησιμοποίηση Εφαρμογές Εκμάθηση Σχεδίαση Διασύνδεση χρήστη Υπηρεσίες Ανάλυση περιεχομένου Έγγραφα Ασφάλεια... Συγχρονισμός Επικοινωνία ομάδας Βάσεις δεδομένων Προγραμματισμός Συστήματα Server Μέσων Λειτουργικά Συστήματα Επικοινωνία Οπτική αποθήκευση Ποιότητα υπηρεσιών Δίκτυα Βασικά Αρχιτεκτονική υπολογιστών Γραφικά & Εικόνες Συμπίεση Κίνηση Βίντεο Ήχος Πολυμέσα Γεώργιος Π. Παυλίδης 2/30
MPEG συμπίεση MPEG: Motion Picture Expert Group Πρώτο πρότυπο συμπίεσης: MPEG-1 Επιτρέπει συμπίεση οπτικοακουστικών δεδομένων σε περίπου 1.5 Mbps Βασίζεται σε τεχνογνωσία αποκτημένη από τα πρότυπα JPEG και H.261 Επόμενα πρότυπα MPEG-2 MPEG-4 MPEG-7 MPEG-21 Πολυμέσα Γεώργιος Π. Παυλίδης 3/30
MPEG - χαρακτηριστικά Συμμετρική και ασύμμετρη συμπίεση Σταθερόςρυθμόςδεδομένων Πρέπει να είναι μικρότερος από 1856 kbit/s Αρχικός στόχος για ρυθμό δεδομένων 1.2 Mbps μαζί με τον ήχο Δηλαδή 1CD-ROM, για αποθήκευση ταινιών σε CDs ή για τοπική αποθήκευση Πολυμέσα Γεώργιος Π. Παυλίδης 4/30
MPEG Βίντεο: βήμα προετοιμασίας Σταθερό format εικόνας Δειγματοληψεία χρώματος Y, Cb, Cr 4:2:0 Ανάλυση Πρέπει να είναι το μέγιστο 768 x 576 pixels 8 bit/pixel σε κάθε χρωματική συνιστώσα 14 pixel aspect ratios 8 frame rates Πολυμέσα Γεώργιος Π. Παυλίδης 5/30
MPEG Βίντεο: βήμα επεξεργασίας 4 τύποι frames Ι-frames Αντίστοιχα με JPEG εικόνες Απαίτηση για αποκωδικοποίηση σε πραγματικό χρόνο P-frames (predictive coded frames) Αναφορά σε προηγούμενα I- ή P-frames Διάνυσμα κίνησης Δεν καθορίζεται πως θα υπολογιστεί το διάνυσμα κίνησης Η διαφορά των όμοιων macroblocks κωδικοποιείται κατά DCT Οι συντελεστές DC και AC κωδικοποιούνται κατά μήκος B-frames (bi-directional predictive coded frames) Αναφορά σε προηγούμενα και επόμενα (I ή P) frames Παρεμβολή μεταξύ των macroblocks D-frames (DC-coded frames) Μόνο οι DC συντελεστές κωδικοποιούνται κατά DCT Επιτρέπουν γρήγορες διαδικασίες forward και rewind Πολυμέσα Γεώργιος Π. Παυλίδης 6/30
Ι-frames MPEG Κωδικοποίηση Βίντεο Κωδικοποιημένα χωρικά P-frames Κωδικοποιημένα με πρόβλεψη B-frames Κωδικοποιημένα και προς τις 2 κατευθύνσεις D-frames Κωδικοποίηση των DC Εικονοσειρά (Sequence) Ορίζεται από την εφαρμογή Π.χ. IBBPBBPBBIBBPBBPBB Η διάταξη της μετάδοσης είναι διαφορετική IPBBPBBIPBB Πολυμέσα Γεώργιος Π. Παυλίδης 7/30
MPEG Βίντεο Τυχαία πρόσβαση Σε I-frames Σε P-frames, αφού αποκωδικοποιηθεί το προηγούμενο I-frame πρώτα Σε B-frames, αφού αποκωδικοποιηθούν τα προηγούμενα I- και P- frames Editing Σε αποκωδικοποιημένα δεδομένα Απώλεια ποιότητας (συμπίεση-αποσυμπίεση-συμπίεση ) Ωστόσο εφαρμογή όλων των λειτουργιών editing Σε συμπιεσμένα δεδομένα (πριν την κωδικοποίηση εντροπίας) Διατήρηση της ποιότητας Εφφέ μετάβασης: συνάρτηση στο πεδίο του DCT Σε συμπιεσμένα δεδομένα Διατήρηση της ποιότητας Πολύ πολύπλοκο Πολυμέσα Γεώργιος Π. Παυλίδης 8/30
MPEG Συμπίεση ήχου: Βασικά Χρήση απόκρυψης στην συχνότητα Κατώφλι απόκρυψης Τυχαίος θόρυβος μικρού εύρους ζώνης Εξαρτάται από την συχνότητα Χρήση απόκρυψης στον χρόνο Πριν και μετά το γεγονός Εξαρτάται ως ένα βαθμό από το πλάτος Πολυμέσα Γεώργιος Π. Παυλίδης 9/30
MPEG Συμπίεση ήχου Κανάλι ήχου Ανάμεσα στα 32 και 448 kbit/s Σε βήματα των 16 kbit/s Ορισμός τριών επιπέδων ποιότητας Υψηλότερο επίπεδο: πιο πολύπλοκο, μπορεί να διαχειριστεί και χαμηλότερα επίπεδα Επίπεδο 1 (layer 1): μέγιστο 448 Kbit/s (περίπου 1:4 συμπίεση) Επίπεδο 2(layer 2): μέγιστο 384 Kbit/s (περίπου 1:6-8 συμπίεση) Επίπεδο 3(layer 3): μέγιστο 320 Kbit/s (περίπου 1:10-12 συμπίεση) MP3 Πολυμέσα Γεώργιος Π. Παυλίδης 10/30
MPEG Συμπίεση ήχου Δειγματοληψία Ρυθμοί: 32 KHz, 44.1 KHz, 48 KHz Ακρίβεια δειγματοληψίας: 16 bit/δείγμα Κανάλια ήχου Μονοφωνικός: ένα κανάλι Στέρεο: 2 κανάλια Παράδειγμα εφαρμογής: DAB - Digital Audio Broadcasting Χρησιμοποιεί MPEG layer 2 (η συμπίεσηείναιγνωστήκαιωςmusicam) Καθυστερήσεις σε VLSI υλοποιήσεις Μέγιστο 30 ms κωδικοποίηση Μέγιστο 10 ms αποκωδικοποίηση Οι υλοποιήσεις σε λογισμικό οδηγούν σε καθυστερήσεις που ποικίλουν για διαφορετικά επίπεδα, υλοποιήσεις και υπολογιστές Πολυμέσα Γεώργιος Π. Παυλίδης 11/30
MPEG Ρεύματα δεδομένων ήχου και βίντεο Ρεύματα δεδομένων ήχου Frames (ήχου) Ηχητικές μονάδες πρόσβασης (Audio Access Units) Slots Ρεύματα δεδομένων βίντεο Στρώμα εικονοσειράς (video sequence) Στρώμα ομάδας εικόνων (Group of pictures) Στρώμα μεμονωμένης εικόνας (single picture) Στρώμα οριζόντιας σειράς macroblock (slice) Στρώμα macroblock Στρώμα block Πολυμέσα Γεώργιος Π. Παυλίδης 12/30
MPEG-2, MPEG-2 Για υψηλότερους ρυθμούς δεδομένων και μεγαλύτερη ποιότητα ήχου και εικόνας Για πολλαπλά levels και profiles συμπίεσης MPEG-3 Αρχικά ορίστηκε για HDTV συμπίεση Ενσωματώθηκε στο MPEG-2 MPEG-4 Αρχικά για χαμηλούς ρυθμούς δεδομένων π.χ. για κινητές επικοινωνίες Μετά εστίαση σε κωδικοποίηση και επιπρόσθετες λειτουργίες βασισμένες στα περιεχόμενα της εικόνας MPEG-7 Περιγραφή περιεχομένου Βάση για αναζήτηση και ανάκτηση MPEG-21 Πλαίσιο για όλη την αλυσίδα εμπορικών πολυμεσικών εφαρμογών και την μετάδοση πολυμεσικών δεδομένων σε αυτές Πολυμέσα Γεώργιος Π. Παυλίδης 13/30
MPEG-2 Από το MPEG-1 στο MPEG-2 Βελτίωση στην ποιότητα Δεν υπάρχουν πλέον οι περιορισμοί αποθήκευσης σε CD-ROM Υψηλότεροι ρυθμοί δεδομένων MPEG-1: 1.5 Mbit/s MPEG-2: 2-100 Mbit/s Το χρησιμοποιούμενο πρότυπο για ψηφιακή τηλεόραση σε DVB (Digital Video Broadcasting) δίκτυα Διαθέσιμες εμπορικές υλοποιήσεις MPEG-2 Πολυμέσα Γεώργιος Π. Παυλίδης 14/30
MPEG-2 Βίντεο Συμπερίληψη του διαπλεκόμενου (Interlaced) format Άρτιες και περιττές γραμμές, 2 πεδία ανά frame Αύξηση της χωρικής ανάλυσης Μεγαλύτερη από την CCIR 601 Ορίζει 5 προφίλ (απλό, κύριο, κτλ.) 4 επίπεδα (με αυξανόμενη χωρική ανάλυση) Πολυμέσα Γεώργιος Π. Παυλίδης 15/30
MPEG-2 Βίντεο: βαθμοποίηση (scaling) Κίνητρο Ανάγκη ανοχής σε σφάλματα μετάδοσης Χωρικό scaling Μείωση της χωρικής ανάλυσης Προσέγγιση Η εικόνα δειγματοληπτείται με μισή χωρική ανάλυση Εφαρμόζονται οι MPEG αλγόριθμοι Το αποτέλεσμα επεξεργάζεται με καλύτερο FEC BASE LAYER! Η εικόνα αποκωδικοποιείται Αφαιρείται από την αρχική Εφαρμόζονται οι MPEG αλγόριθμοι στην διαφορά Το αποτέλεσμα επεξεργάζεται με χειρότερο FEC ENHANCEMENT LAYER! Πολυμέσα Γεώργιος Π. Παυλίδης 16/30
MPEG-2 Βίντεο: βαθμοποίηση (scaling) SNR scaling Εισαγωγή θορύβου από Λάθη κβάντισης και ορατές μπλοκ δομές Προσέγγιση Base layer: τα πιο σημαντικά bits της DCT εξόδου κωδικοποιούνται με καλύτερο FEC Enhancement layer: τα λιγότερα σημαντικά bits της DCT εξόδου κωδικοποιούνται με χειρότερο FEC Πολυμέσα Γεώργιος Π. Παυλίδης 17/30
MPEG-2 Βίντεο: επίπεδα και προφίλ Πολυμέσα Γεώργιος Π. Παυλίδης 18/30
MPEG-2 Ήχος Μικρές επεκτάσεις σε σχέση με τον MPEG-1 ήχο Χαμηλές συχνότητες δειγματοληψίας ½ των MPEG-1: 16, 22.05, 24kHz Κβαντισμός σε 8 bits/δείγμα Περισσότερα από 2 κανάλια 5 κανάλια (surround σύστημα) Αριστερό και δεξί μπροστά Κεντρικό μπροστά Αριστερό και δεξί πίσω Πολυγλωσσική επέκταση: μέχρι 12 κανάλια (για διαφορετικές γλώσσες) Πολυμέσα Γεώργιος Π. Παυλίδης 19/30
MPEG-2 Σύστημα Βήματα Ο ήχος και το βίντεο συνδυάζονται σε Packetized Elementary Stream (PES) Τα PES συνδυάζονται σε Program Stream ήσεtransport Stream Program Stream Σε περιβάλλον χωρίς λάθη Πακέτα μεταβλητού μήκους Ένα μεμονωμένο ρεύμα δεδομένων με μια χρονική αναφορά Transport Stream Σε περιβάλλον με θόρυβο Πολύπλεξη πολλών προγραμμάτων με ένα ή περισσότερες βάσεις χρόνου Πακέτα των 188 bytes ΔυνατήημετατροπήμεταξύProgram και Transport Streams Πολυμέσα Γεώργιος Π. Παυλίδης 20/30
MPEG-4 Στόχοι Για την υποστήριξη αρχικά εφαρμογών όπως κινητές επικοινωνίες, βιντεοτηλέφωνα Μέγιστοι ρυθμοί δεδομένων και διαστάσεις Ανάμεσα σε 4800 και 64000 bits/s 176 στήλες x 144 γραμμές x 10 frames/s Πλέον παροχή εξελιγμένης λειτουργικότητας για την ανάλυση και διαχείριση του περιεχομένου των εικόνων Υποστήριξη σύνθετων πολυμέσων, τυποποιημένοι τρόποι για: Την αναπαράσταση μονάδων ηχητικού, οπτικού ή οπτικοακουστικού περιεχομένου Ορισμός audio/visual objects (AVOs) Πολυμέσα Γεώργιος Π. Παυλίδης 21/30
MPEG-4 Στόχοι Κωδικοποίηση σε επίπεδο αντικειμένου ανεξάρτητα από τα άλλα αντικείμενα, περιβάλλον και φόντο Σύνθεση των αντικειμένων μεταξύ τους Δημιουργία σύνθετων αντικειμένων που ορίζουν οπτικοακουστικές σκηνές Πολύπλεξη και συγχρονισμός των δεδομένων κάθε AVO Για την μετάδοση σε δικτυακά κανάλια και την παροχή QoS (Quality of Service) Υποστήριξη συνθετικών αντικειμένων Δημιουργημένων με υπολογιστή, συνθετικών, ήβάσειμοντέλων(πχ. πρόσωπο) Υποστήριξη πραγματικά διαδραστικών εφαρμογών Διάδραση με την οπτικοακουστική σκηνή που αναπαράγεται στον αποκωδικοποιητή Πολυμέσα Γεώργιος Π. Παυλίδης 22/30
MPEG-4: Κωδικοποίηση βίντεο και εικόνας Κωδικοποίηση/αποκωδικοποίηση Eικόνων και βίντεο με ορθογώνιο σχήμα Παρόμοια με MPEG-1/2 κωδικοποίηση Πρόβλεψη κίνησης Κωδικοποίηση υφής Εικόνων και βίντεο με τυχαίο σχήμα Με τον συμβατικό τρόπο, χρησιμοποιώντας 8x8 DCT ή προσαρμοζόμενο στο σχήμα DCT Κωδικοποίηση του σχήματος και της πληροφορίας διαφάνειας Πολυμέσα Γεώργιος Π. Παυλίδης 23/30
MPEG-4: Κωδικοποίηση βίντεο και εικόνας Κωδικοποίηση/αποκωδικοποίηση Κωδικοποιητής Πρέπει να παράγει πληροφορία χρόνου Η ταχύτητα του ρολογιού του κωδικοποιητή = βάση χρόνου Ορισμός επιθυμητού χρόνου αποκωδικοποίησης Με χρήση time stamps προσαρμοσμένων στο ρεύμα δεδομένων Μπορεί να ορίσει τις ελάχιστες απαιτήσεις σε μνήμη για την αποκωδικοποίηση Πολυμέσα Γεώργιος Π. Παυλίδης 24/30
MPEG-4: Σύνθεση σκηνών Η περιγραφή σκηνής περιλαμβάνει Δέντρο για τον ορισμό ιεραρχικών σχέσεων ανάμεσα στα αντικείμενα Θέσεις των αντικειμένων στο χώρο και στον χρόνο Μετασχηματίζοντας των χώρο συντεταγμένων του αντικειμένου σε ολικό χώρο συντεταγμένων Επιλογή της τιμής ιδιοτήτων π.χ. κύρια συχνότητα ήχου, χρώμα, υφή, παράμετροι animation Η περιγραφή βασίζεται σε βασικές έννοιες της VRML Υποστήριξη διάδρασης με σκηνές Π.χ. αλλαγή οπτικής γωνίας, μετακίνηση ενός αντικειμένου, επιλογή γλώσσας Πολυμέσα Γεώργιος Π. Παυλίδης 25/30
MPEG-4: Παράδειγμα σύνθεσης Πολυμέσα Γεώργιος Π. Παυλίδης 26/30
MPEG-4: Scaling Τρεις προσεγγίσεις Χωρική scalability Ο αποκωδικοποιητής προβάλει τις υφές και τα οπτικά αντικείμενα σε μειωμένη χωρική ανάλυση Αποκωδικοποιώντας μόνο ένα υποσύνολο του συνολικού συρμού δεδομένων Μέγιστο 32 επίπεδα για υφές και ακίνητες εικόνες Μέγιστο 3 επίπεδα για εικονοσειρές βίντεο Χρονική scalability Ο αποκωδικοποιητής προβάλει το βίντεο σε μειωμένη χρονική ανάλυση Αποκωδικοποιώντας μόνο ένα υποσύνολο του συνολικού συρμού δεδομένων Μέγιστο 3 επίπεδα Scalability ποιότητας Ο συρμός δεδομένων (bitstream) διαβάζεται σε έναν αριθμό από στρώματα συρμών δεδομένων με διαφορετικούς ρυθμούς δεδομένων Είτε κατά την μετάδοση είτε στον αποκωδικοποιητή Ένα υποσύνολο αυτών των στρωμάτων καταφέρνει να διατηρήσει το αρχικό περιεχόμενο Πολυμέσα Γεώργιος Π. Παυλίδης 27/30
MPEG-4: Συνθετικά αντικείμενα Οπτικά αντικείμενα Ανθρώπινο πρόσωπο Αντικείμενο αρχής: πρόσωπο με ουδέτερη έκφραση Το animation επιτυγχάνεται με χρήση των FDPs και/ή FAPs FAP (facial animation parameters): ορίζουν την σύνθεση της τρέχουσας προβολής FDP (facial definition parameters): επιδέχονται διάφορα σχήματα και υφές Αντιστοίχιση υφής και πλέγματος: για 2Δ και3δ πλέγματα Ένα 2Δ πλέγμα μπορεί να χρησιμοποιηθεί για την σύνθεση και το animation ενός προσώπου Χρήση μόνο τριγωνικών πλεγμάτων, με κίνηση των κόμβων της Η εικόνα υφής μετασχηματίζεται ανάλογα με την κίνηση Πολυμέσα Γεώργιος Π. Παυλίδης 28/30
MPEG-4: Συνθετικά αντικείμενα Ηχητικά αντικείμενα Κείμενο-σε-ομιλία Παραγωγή ομιλίας από δοσμένο κείμενο και με χρήση προσοδικών παραμέτρων Έλεγχος του animation του προσώπου Σύνθεση βάσει παρτιτούρας Για την παραγωγή μουσικής από αυτή Πιο γενική από το MIDI Πολυμέσα Γεώργιος Π. Παυλίδης 29/30
MPEG-4: Ιεραρχική δικτυακή δομή Πολυμέσα Γεώργιος Π. Παυλίδης 30/30