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

Σχετικά έγγραφα
Ψηφιακή Επεξεργασία Εικόνας

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

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

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

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

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

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

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

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

Μάθημα: Ακουστική και Ψυχοακουστική

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

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

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

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

Συστήματα Πολυμέσων. Ενότητα 16: Διαμορφώσεις και Πρότυπα Ψηφιακού Βίντεο. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής

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

Ενότητα: Ασκήσεις Rendering

Υδραυλικά & Πνευματικά ΣΑΕ

ΤΕΙ ΚΡΗΤΗΣ ΤΜ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡ/ΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΔΙΔΑΣΚΩΝ: Δρ. Γ. ΓΑΡΔΙΚΗΣ. MPEG 2 bitstream και πολυπλεξία

Πληροφορική. Εργαστηριακή Ενότητα 3 η : Επεξεργασία Κελιών Γραμμών & Στηλών. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

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

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

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

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

Ψηφιακή Επεξεργασία Σήματος

Πληροφορική. Εργαστηριακή Ενότητα 1 η : Εισαγωγή στα Λογιστικά Φύλλα με το MS Excel. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: Εισαγωγή ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

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

Λογιστικές Εφαρμογές Εργαστήριο

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

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

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

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

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

Σχεδιασμός Υπαιθρίων Εκμεταλλεύσεων

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

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

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

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

Δημιουργία Περιλήψεων από Ακολουθίες Βίντεο στο Συμπιεσμένο Πεδίο

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

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

Πληροφορική. Εργαστηριακή Ενότητα 2 η : Το βιβλίο εργασίας του MS Excel. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: Χρήση εργαλείων Εικόνων, Εντολών και Ετικετών ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

Ασφάλεια Υπολογιστικών Συστημάτων

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

Σενάριο Χρήσης Moodle

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

Αναπαραγωγή και stop/pause έτοιμων ηχητικών clips

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

Η ανάγκη για συμπίεση

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

ΕΛΕΓΧΟΣ ΠΑΡΑΓΩΓΙΚΩΝ ΔΙΕΡΓΑΣΙΩΝ

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

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

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

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία

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

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

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 6 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

Ψηφιακή Τεχνολογία σε Ακαδημαϊκό Περιβάλλον

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 2 - Εργαστήριο

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

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR KTEC

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

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

Τίτλος Μαθήματος: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Ενότητα: Εισαγωγή στους Επεξεργαστές Κειμένου-Μέρος 2

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

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

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

Πληροφορική. Εργαστηριακή Ενότητα 5 η : Μαθηματικοί Τύποι. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

7 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

Στατιστική Επιχειρήσεων Ι

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

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

Ηχογραφώντας με το CUBASE

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: ΔΟΜΕΣ ΕΠΑΝΑΛΗΨΗΣ ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II

WORDPRESS. Εικόνα 1. Πατώντας στη «Σύνδεση» γράψτε το Username (όνομα χρήστη) και το Password (συνθηματικό) (εικόνα 2) που σας έδωσε ο διαχειριστής

Cubitech Hellas Ακροπόλεως 24, Καλλιθέα, Αθήνα Τ.Κ , Ελλάδα, Τηλ Φαξ

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

Διαχείριση Χρόνου & Δίκτυα στη Διοίκηση Έργων. Κηρυττόπουλος Κωνσταντίνος Επ. Καθηγητής ΕΜΠ

Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word

Παλέτα Κίνηση. Καλό είναι πριν ξεκινήσετε το παρακάτω φυλλάδιο να έχετε παρακολουθήσει τα παρακάτω δύο videos: a) Εισαγωγή στο περιβάλλον του Scratch

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

Στατιστική Επιχειρήσεων Ι

Συμπίεση Βίντεο: Αρχές και Πρότυπα Συμπίεσης

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

1 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

Αναπαραγωγή με αρχεία ήχου

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

Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Transcript:

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 2

1. Σκοποί ενότητας... 4 2. Περιεχόμενα ενότητας... 4 3. Συνοπτική θεωρία... 5 3.1 Εκτίμηση κίνησης (Motion Estimation)... 5 3.1.1 Εικόνα 9.1: Επιφάνεια εργασίας VCDemo.... 6 3.1.2 Εικόνα 9.2: Motion estimation menu.... 6 3.1.3 Εικόνα 9.3: Επιφάνεια εργασίας στο motion estimation.... 8 3.1.4 Εικόνα 9.4: Τέσσερα διαδοχικά frames αντισταθμισμένα με την εκτίμηση κίνησης.... 8 3.1.5 Εικόνα 9.5: Τα διανύσματα των macroblock στο backround είναι σχεδόν μηδενικά... 9 3.2 Κωδικοποιητής MPEG... 9 3.2.1 Εικόνα 9.6: Επιλογές κωδικοποίησης... 10 3.2.2 Εικόνα 9.7: Κωδικοποίηση ασυμπίεστου βίντεο με MPEG.... 11 3.2.3 Επεξηγηματικός Πίνακας 1... 11 3.2.4 Εικόνα 9.8: I/P/B frames.... 12 3.2.5 Εικόνα 9.9: I/P frames.... 13 3.2.6 Εικόνα 9.10: intra-coded video.... 14 3.3 Αποκωδικοποιητής MPEG... 14 3.3.1 Εικόνα 9.11: Eπιλογές αποκωδικοποιητή.... 15 3.3.2 Εικόνα 9.12: Μενού αποκωδικοποιητή MPEG.... 16 3.3.3 Εικόνα 9.13: Αποκωδικοποίηση stream σε κανονική λειτουργία.... 17 3.3.4 Εικόνα 9.14: H πρόβλεψη για το βίντεο της Εικόνας 9.13.... 18 3.3.5 Εικόνα 9.15: Κανονική αποκωδικοποίηση.... 19 4. Ασκήσεις... 20 4.1 Άσκηση 1... 20 4.1.1 Πίνακας 9.1 : Συμπιεσμένη εικόνα.... 20 4.2 Άσκηση 2... 21 4.2.1 Πίνακας 9.2 : Συμπιεσμένη εικόνα... 22 4.3 Άσκηση 3... 22 4.4 Άσκηση 4... 23 4.4.1 Πίνακας 9.3 : Συμπιεσμένη εικόνα.... 23 4.5 Άσκηση 5... 24 4.5.1 Πίνακας 9.4 : Συμπιεσμένη εικόνα.... 24 4.6 Άσκηση 6... 25 3

1. Σκοποί ενότητας Σκοπός της ενότητας είναι να περιγραφεί το πρότυπο συμπίεσης βίντεο MPEG και να κληθεί ο εκπαιδευόμενος να λύσει πρακτικές ασκήσεις. 2. Περιεχόμενα ενότητας H ενότητα αυτή καλύπτει τις ακόλουθες βασικές έννοιες: Κωδικοποίηση βίντεο Ψηφιακό βίντεο Συμπίεση βίντεο Εκτίμηση κίνησης Τεχνικές ταιριάσματος μπλοκ Γενική μορφή ενός video codec Το πρότυπο συμπίεσης MPEG-1 Με τις αντίστοιχες 6 ασκήσεις για λύση που καλύπτουν τις παραπάνω θεματικές. 4

3. Συνοπτική θεωρία Για το εργαστηριακό μέρος του MPEG-1 και MPEG-2 θα χρησιμοποιήσουμε το πρόγραμμα VCDemo 1. Το VCDemo είναι ένα εργαλείο εκμάθησης συμπίεσης εικόνας και βίντεο με πλήρες μενού, το οποίο μπορεί να τρέξει σε windows. Είναι πολύ εύχρηστο και δεν χρειάζεται καμία γνώση προγραμματισμού. Ο σκοπός του VCDemo είναι να μας δώσει τη δυνατότητα να πειραματιστούμε με διαφορετικούς αλγόριθμους συμπίεσης εικόνας, χωρίς να χρειάζεται να υλοποιήσουμε κάποιο κώδικα. Έτσι μόνο από τις επιλογές του μενού μπορούμε να αλλάξουμε διάφορες παραμέτρους στη συμπίεση της εικόνας ή του βίντεο. Αρχικά θα αναλύσουμε την εκτίμηση κίνησης με το VCDemo και μετά θα δούμε την κωδικοποίηση και αποκωδικοποίηση με MPEG-1. 3.1 Εκτίμηση κίνησης (Motion Estimation) Αρχικά θα πρέπει να ανοίξουμε μια αλληλουχία ασυμπίεστων εικόνων (sequences), που ουσιαστικά είναι ένα ασυμπίεστο βίντεο. Οι τύποι αρχείων που υποστηρίζονται από το VCDemo είναι bmp image sequences (.seq) και raw yuv (.yuv). Εμείς αρχικά θα ανοίξουμε το football.seq που βρίσκεται στην βιβλιοθήκη του VCDemo και στη συνέχεια θα το συγκρίνουμε και με άλλα sequences. Στην Eικόνα 9.1 φαίνεται η επιφάνεια εργασίας του VCDemo. Πατώντας το δεύτερο εικονίδιο από αριστερά μπορούμε να ανοίξουμε ένα image sequence και να το επεξεργαστούμε. 1 Πανεπιστήμιο TU-Delft (ICT Group) http://www-ict.its.tudelft.nl/vcdemo. 5

3.1.1 Εικόνα 9.1: Επιφάνεια εργασίας VCDemo. Ανοίγουμε λοιπόν το αρχείο football.seq και επιλέγουμε το Motion Estimation από το μενού του VCDemo, με αποτέλεσμα να μας εμφανιστεί το παράθυρο της Εικόνας 9.2 με τις παρακάτω επιλογές: 3.1.2 Εικόνα 9.2: Motion estimation menu. 6

Hierarchy: Μπορούμε να επιλέξουμε Standard Block Matching ή Hierarchical Block Matching (δυο ή τριών επιπέδων). Αναλόγως την επιλογή μας σ αυτήν την ετικέτα μπορεί να αλλάξουν οι επιλογές στις επόμενες. Search: Μπορούν να χρησιμοποιηθούν διαφορετικοί τύποι στρατηγικής εκτίμησης κίνησης, όπως: α) Πλήρης αναζήτηση (full search), β) Μια αναζήτηση τη φορά (one-at-a-time search) και γ) Αναζήτηση Ν βημάτων (N- Step search). Η πλήρης αναζήτηση μπορεί να καταναλώσει μεγάλη υπολογιστική ισχύ. Size: Επιλέγουμε το μέγεθος του μπλοκ που θα γίνει η εκτίμηση κίνησης. Στην ιεραρχική εκτίμηση, το μέγεθος του μπλοκ είναι στη μεγαλύτερη ανάλυση. Το μέγεθος της ανάλυσης στους άλλους τρόπους επιλέγεται από το πρόγραμμα. Max. Displ.: Η μέγιστη μετατόπιση μπορεί να επιλεγεί για Full search και One-at-a-time Search. Όσο μεγαλύτερη είναι η μέγιστη μετατόπιση τόσο περισσότερη υπολογιστική ισχύ χρειάζεται ο εκτιμητής κίνησης. Για την ιεραρχική εκτίμηση δίνετε η μέγιστη μετατόπιση για διαφορετικά επίπεδα ανάλυσης. N-Step: Για την εκτίμηση κίνησης τύπου N-Step μπορούμε να επιλέξουμε τον αριθμό των βημάτων. Όσο περισσότερα βήματα έχουμε τόσο μεγαλύτερη είναι η μέγιστη μετατόπιση. Video: Μπορούμε να επιλέξουμε διάφορους τύπους απεικόνισης του βίντεο. Τα αποτελέσματα της εκτίμησης κίνησης σώζονται εσωτερικά από το πρόγραμμα, έτσι μπορούμε να ξαναδούμε το αποτέλεσμα επιλέγοντας Display again χωρίς να χρειάζεται να γίνει ο υπολογισμός από την αρχή. Στην Εικόνα 9.3 βλέπουμε την επιφάνεια εργασίας του VCDemo αφού έχει τελειώσει η εκτίμηση κίνησης. Εδώ συγκεκριμένα έχουμε ανοίξει ένα seq αρχείο, μια διαδοχή δηλαδή από bmp εικόνες. Η κίνηση στις εικόνες εκτιμάται για όλα τα frames και δεν μπορεί να διακοπεί. Εμφανίζονται τέσσερα παράθυρα: Η αρχική εικόνα (επάνω αριστερά). Η διαφορά ανάμεσα σε διαδοχικές εικόνες (επάνω δεξιά). Η αρχική εικόνα αντισταθμισμένη με την εκτίμηση κίνησης, που καλύπτεται και με το πεδίο κίνησης (κάτω αριστερά). Το αρχικό σημείο εμφανίζετε με μια μαύρη κουκίδα. Η διαφορά της αντισταθμισμένης εικόνας (κάτω δεξιά). Το παράθυρο με το κείμενο μας δείχνει για κάθε εικόνα τη διασπορά ή ενέργεια (variance) της αρχικής εικόνας, τη διασπορά της εικόνας διαφοράς, τη διασπορά της αντισταθμισμένης εικόνας και μια εκτίμηση της διαφοροποιημένης εντροπίας του πεδίου εκτίμησης κίνησης (σε διάνυσμα / bit). Για το τελευταίο, ένας απλός μονοδιάστατος μη απωλεστικός DPCM πραγματοποιείται στο πεδίο εκτίμησης κίνησης και υπολογίζεται το ιστόγραμμα της διαφοράς DCPM. Από το ιστόγραμμα υπολογίζετε η τιμή της εντροπίας του διανύσματος. 7

3.1.3 Εικόνα 9.3: Επιφάνεια εργασίας στο motion estimation. Στην παρακάτω εικόνα 9.4 βλέπουμε τέσσερα διαδoχικά frames αντισταθμισμένα με την εκτίμηση κίνησης. Αν προσέξουμε τα διανύσματα έχουν την κατεύθυνση που πάει το κάθε αντικείμενο ( στην συγκεκριμένη περίπτωση ο κάθε παίκτης ). 3.1.4 Εικόνα 9.4: Τέσσερα διαδοχικά frames αντισταθμισμένα με την εκτίμηση κίνησης. 8

Για να καταλάβουμε καλύτερα πως λειτουργεί η εκτίμηση κίνησης βλέπουμε το παρακάτω βίντεο, Εικόνα 9.5, στο οποίο απεικονίζεται ένα σπίτι. Όπως προχωράει το πλάνο, το σπίτι μετακινείται ελάχιστα ενώ το δέντρο που περνάει μπροστά κινείται γρήγορα. Έτσι, ο αλγόριθμος βλέπει τη διαφορά στη φωτεινότητα ανάμεσα στα pixel και την κωδικοποιεί. Γενικά και στα δύο παραδείγματα μπορεί να φαίνεται ότι ο αλγόριθμος αναγνωρίζει αντικείμενα, δεν συμβαίνει όμως αυτό. Το μόνο που μπορεί ουσιαστικά να καταλάβει είναι αλλαγές στη φωτεινότητα του κάθε macroblock. Στα δύο προηγούμενα παραδείγματα έχουμε χρησιμοποιήσει εκτίμηση κίνησης σε blocks 8 x 8. Είναι καλή επιλογή αφού χρειάζεται μέτρια υπολογιστική ισχύ. 3.1.5 Εικόνα 9.5: Τα διανύσματα των macroblock στο backround είναι σχεδόν μηδενικά 3.2 Κωδικοποιητής MPEG. Ο MPEG κωδικοποιητής του VCDemo συνδυάζει ένα MPEG-1 και MPEG-2 κωδικοποιητή και παράγει ένα κανονικό MPEG stream, χωρίς να έχει τα καλύτερα αποτελέσματα σε ταχύτητα και bit rate SNR. Γι αυτό, καλό είναι να χρησιμοποιείται μόνο για να μελετήσουμε τις βασικές ιδιότητες του προτύπου MPEG, όπως το GOP, 9

bit rate και την εκτίμηση κίνησης. Υπάρχουν άλλα εύχρηστα προγράμματα κωδικοποίησης/αποκωδικοποίησης που κάνουν αποτελεσματική συμπίεση. Όταν ενεργοποιούμε το παράθυρου του MPEG κωδικοποιητή καμία επιλογή δεν είναι διαθέσιμη μέχρι να διαλέξουμε το αρχείο που θα αποθηκευτούν τα αποτελέσματα (δηλαδή το συμπιεσμένο stream). Αναλόγως το πρότυπο που διαλέγουμε (MPEG-1 ή 2) μερικές επιλογές είναι απενεργοποιημένες. Στην Εικόνα 9.6 βλέπουμε το μενού για την MPEG κωδικοποίηση: 3.2.1 Εικόνα 9.6: Επιλογές κωδικοποίησης File: Θέτουμε το όνομα του MPEG αρχείου που θα παραχθεί και επιλέγουμε πρότυπο (MPEG 1 ή 2). Rate: Ορίζουμε το bit rate του συμπιεσμένου αρχείου σε Mbit / sec. GOP: Μπορούμε να επιλέξουμε διαφορετικές δομές για το Group-Of-Pictures. Αν και υπάρχουν πολλές δομές, εδώ έχουμε τις πιο καθιερωμένες (μη προσαρμοζόμενες). Motion: Διαλέγουμε τη μέγιστη μετατόπιση. Ο κωδικοποιητής χρησιμοποιεί ιεραρχική εκτίμηση κίνησης για συμπίεση που βασίζεται σε frames (πλαίσιαπροοδευτική σάρωση) ή fields (πεδία-πεπλεγμένη σάρωση). Format: Για το πρότυπο ΜPEG-2 μπορούμε να διαλέξουμε το format για το βίντεο. Αν επιλέξουμε το πεπλεγμένο (interlaced) format, τότε θα πρέπει να ορίσουμε τη θέση του πρώτου πεδίου. Field/Frame: Στην περίπτωση που έχουμε πεπλεγμένο format, μπορούμε να χρησιμοποιήσουμε την πλήρη ισχύ του MPEG-2. Υπάρχουν διάφορες επιλογές λειτουργίας του κωδικοποιητή. Για παράδειγμα μπορούμε να επιλέξουμε ο κωδικοποιητής να χρησιμοποιεί πάντα εκτίμηση κίνησης στο επίπεδο των frames και DCT σε περίπτωση που χρησιμοποιείται frame κωδικοποίηση. 10

O κωδικοποιητής εμφανίζει την εικόνα που μόλις κωδικοποιήθηκε. Επειδή τα frames δεν κωδικοποιούνται με την ίδια χρονική συνέχεια που έχουν στο βίντεο, μπορεί να δούμε μερικά περίεργα αποτελέσματα κατά την κωδικοποίηση, όπως η ταινία να πηγαίνει μπρος ή πίσω. Οι πιο χρήσιμες πληροφορίες εμφανίζονται στο παράθυρο δεξιά. Μπορούμε να δούμε το bit rate ανά frame, τον τρόπο που κωδικοποιήθηκε το frame (I/P/B) και τον τρόπο με τον οποίο συμπιέστηκε το κάθε macroblock. 3.2.2 Εικόνα 9.7: Κωδικοποίηση ασυμπίεστου βίντεο με MPEG. 3.2.3 Επεξηγηματικός Πίνακας 1 S: skipped I: Intra-coded 0: Μπροστινή πρόβλεψη χωρίς αντιστάθμιση κίνησης F: Μπροστινό frame / πρόβλεψη 16x8 f: Μπροστινή πρόβλεψη πεδίου 11

p: Διπλή πρόβλεψη Β: Αναδρομικό frame / πρόβλεψη 16x8 b: Αναδρομική πρόβλεψη πεδίου D: Frame / 16x8 Interpolation d: Field Interpolation Στη συνέχεια, θα δούμε τρεις διαφορετικές κωδικοποιήσεις του ίδιου βίντεο. Αρχικά με μπροστινή και αναδρομική πρόβλεψη (I/P/B frames), μόνο με μπροστινή (Ι/Ρ frames) και intra-coded (χωρίς δηλαδή καθόλου πρόβλεψη). Χρησιμοποιούμε το ίδιο bit rate, οπότε κάθε διαφορά στην ποιότητα εξαρτάται μόνο από την δομή του GOP. 3.2.4 Εικόνα 9.8: I/P/B frames. 12

3.2.5 Εικόνα 9.9: I/P frames. Αν παρατηρήσουμε στο τρίτο frame της Εικόνας 9.9, τα διανύσματα είναι σχεδόν μηδενικά, ενώ στην Εικόνα 9.8 δεν είναι. Αυτό συμβαίνει γιατί η κάμερα σταματάει να κινείται, οπότε δεν μπορούμε να έχουμε μπροστινή πρόβλεψη (μεταδίδεται το ίδιο frame). Επίσης, κατά την κωδικοποίηση του βίντεο της Εικόνας 9.9 δεν είχαμε αυτήν την περίεργη απεικόνιση που προαναφέραμε (εμφανιζόταν κανονική αναπαραγωγή βίντεο) και αυτό γιατί δεν επιλέξαμε να υπάρχει αναδρομική πρόβλεψη (B frames). Παρακάτω θα δούμε ένα intra-coded βίντεο. Όπως φαίνεται, η ποιότητα της εικόνας είναι εμφανώς κατώτερη: 13

3.2.6 Εικόνα 9.10: intra-coded video. 3.3 Αποκωδικοποιητής MPEG Ο αποκωδικοποιητής MPEG είναι πλήρως συμβατός με τα πρότυπα MPEG 1 και MPEG -2. Μπορεί να αποκωδικοποιήσει κάθε βίντεο που έχουμε κατεβάσει από το Internet, όμως χωρίς ήχο. Το παράθυρο με τις επιλογές για την αποκωδικοποίηση φαίνονται στην Εικόνα 9.11: 14

3.3.1 Εικόνα 9.11: Eπιλογές αποκωδικοποιητή. Operation: Μπορούμε να επιλέξουμε τη λειτουργία του αποκωδικοποιητή και της εξόδου: α) Κανονική έξοδος: εμφανίζονται οι αποκωδικοποιημένες εικόνες όπως θα τις βλέπαμε σε κάθε άλλο αποκωδικοποιητή. β) Τα προβλεπόμενα frames, χωρίς να προσθέσουμε την κβαντισμένη διαφορά πρόβλεψης που στέλνεται από τον κωδικοποιητή στον αποκωδικοποιητή. Με αυτόν τον τρόπο μπορούμε να πάρουμε μια ιδέα της ποιότητας της πρόβλεψης. γ) Οι κωδικοποιημένες διαφορές πρόβλεψης, δηλαδή τα δεδομένα που στέλνονται από τον κωδικοποιητή στον αποκωδηκοποιητή μέσω του bit stream. Μ αυτόν τον τρόπο μπορούμε να εκτιμήσουμε την ποιότητα της πρόβλεψης και τον αριθμό τον intra-coded macroblocks. Display: Μπορούμε να ενεργοποιήσουμε τρεις επιλογές: α) έγχρωμη ή ασπρόμαυρη απεικόνιση. β) Να εμφανίζονται τα διανύσματα πρόβλεψης κίνησης και γ) παράκαμψη των Β-frames. Video: Διαλέγουμε διαφορετικούς τύπους απεικόνισης βίντεο. Η επιλογή frame-by-frame μας επιτρέπει να ελέγξουμε το κάθε αποκωδικοποιημένο frame. Wireless: Εξομοίωση ασύρματου καναλιού. Το πρόγραμμα εισάγει ρεαλιστικά bit packet errors πριν το σήμα φτάσει στον αποκωδικοποιητή. Save As: Μπορούμε να σώσουμε το αποκωδικοποιημένο βίντεο σε raw YUV format. Στην Εικόνα 9.12 βλέπουμε το κεντρικό μενού αφού έχουμε ανοίξει ένα MPEG stream. Στο παράθυρο αριστερά βλέπουμε το αποκωδικοποιημένο frame του βίντεο που έχουμε φορτώσει, το προβλεπόμενο frame ή τη διαφορά πρόβλεψης ανάλογα με τη λειτουργία που έχουμε θέσει στον αποκωδικοποιητή. Το δεξιό παράθυρο μας δίνει 15

πληροφορίες για το format και τις επιλογές κωδικοποίησης του MPEG stream. Κατά την αποκωδικοποίηση φαίνεται και η δομή του GOP. Η κόκκινη κουκίδα συμβολίζει το αρχικό σημείο του κάθε διανύσματος πρόβλεψης κίνησης που επικαλύπτει την εικόνα. Αν το Macroblock έχει μόνο την κόκκινη κουκίδα σημαίνει ότι το διάνυσμα έχει μηδενική τιμή ή ότι είναι intra-coded, δηλαδή χωρίς καθόλου πρόβλεψη. Αυτό μπορούμε να το καταλάβουμε βλέποντας την κωδικοποιημένη διαφορά πρόβλεψης. Τα διανύσματα κίνησης που φαίνονται είναι για μπροστινή πρόβλεψη (δηλαδή για τα Ρ πλαίσια), εκτός αν κάποιο macroblock σε B frame έχει προβλεφθεί με αναδρομικό τρόπο (forward prediction). Σ αυτήν την περίπτωση χρησιμοποιείται η αναδρομική πρόβλεψη. Μερικά macroblock χρησιμοποιούν πολλαπλά διανύσματα κίνησης, εδώ όμως εμφανίζεται μόνο ένα. 3.3.2 Εικόνα 9.12: Μενού αποκωδικοποιητή MPEG. Στη συνέχεια θα δούμε τέσσερα frames από το παραπάνω βίντεο (Εικόνα 9.13). Στην αρχή θέτουμε τον αποκωδικοποιητή σε κανονική λειτουργία, δηλαδή απλή αποκωδικοποίηση των frames: 16

3.3.3 Εικόνα 9.13: Αποκωδικοποίηση stream σε κανονική λειτουργία. 17

Στην παραπάνω εικόνα βλέπουμε τις πληροφορίες για το βίντεο και τη δομή του Group-Of Pictures (GOP). Όπως φαίνεται έχουμε ένα intra-coded frame και μετά δύο Β frames για κάθε ένα Ρ. Στην παρακάτω Εικόνα 9.14, θα δούμε την πρόβλεψη γι αυτά τα τέσσερα frames. Όπως φαίνεται, σε σημεία που αλλάζει απότομα η φωτεινότητα (όπως στην κίνηση του δέντρου ή στο σπίτι που εισέρχεται στην εικόνα) υπάρχουν λάθη στην πρόβλεψη. Στη συνέχεια θα δούμε ένα δεύτερο παράδειγμα για την αποκωδικοποίηση MPEG (Εικόνα 9.15). 3.3.4 Εικόνα 9.14: H πρόβλεψη για το βίντεο της Εικόνας 9.13. 18

3.3.5 Εικόνα 9.15: Κανονική αποκωδικοποίηση. 19

4. Ασκήσεις 4.1 1 η Άσκηση Ανοίξτε ένα βίντεο και επιλέξτε την εκτίμηση κίνησης από το μενού του προγράμματος (ΜΕ). Δείτε την εκτίμηση κίνησης σε ένα βίντεο επιλέγοντας block μεγέθους 4 x 4. Στην συνέχεια επιλέξτε 8 x 8. α) Τι διαφορές παρατηρείτε; Χρειάστηκε περισσότερος ή λιγότερος χρόνος για την κωδικοποίηση της εικόνας; β) Τοποθετήστε το αποτέλεσμα με block 4 x 4, κάνοντας alt PrintScreen στον Πίνακα 9.1. γ) Πειραματιστείτε με διάφορα μεγέθη block και επιλογές της εκτίμησης κίνησης και διατυπώστε τα συμπεράσματά σας. 4.1.1 Πίνακας 9.1 : Συμπιεσμένη εικόνα. 20

Σχόλια: 4.2 2 η Άσκηση Στο VCDemo μπορούμε να κωδικοποιήσουμε ένα MPEG βίντεο από μια σειρά ασυμπίεστων εικόνων bmp. Η διαδικασία είναι πολύ εύκολη. Απλώς βάζουμε τα frames (πλαίσια) σε ένα φάκελο, αντιγράφουμε μόνο το πρώτο πλαίσιο της σειράς στον αρχικό φάκελο του VCDemo και μετονομάζουμε το extension του αρχείου από bmp σε seq. Αν έχουν γίνει όλα σωστά, το πρόγραμμα θα πρέπει να έχει αναγνωρίσει τη σειρά εικόνων έτσι ώστε να μπορούμε να την κωδικοποιήσουμε. Χρειάζεται πολύ προσοχή όμως στην ονομασία του φακέλου και των πλαισίων. Όλα τα πλαίσια θα πρέπει να έχουν το ίδιο όνομα (πχ. Car), το οποίο ακολουθεί τη σειρά του πλαισίου στο βίντεο. Δηλαδή το πρώτο frame θα πρέπει να ονομάζεται Car1, το δεύτερο Car2 κοκ. Ο φάκελος θα πρέπει να έχει το όνομα της σειράς χωρίς τον αύξοντα αριθμό. Στη συγκεκριμένη περίπτωση Car. Το πρώτο πλαίσιο που υπάρχει έξω από τον φάκελο με τις εικόνες παίζει το ρόλο του header file. Πρέπει να έχει το ίδιο όνομα με το φάκελό μας και να έχει extension seq, δηλαδή Car.seq. Βρείτε λοιπόν μία σειρά εικόνων και με την παραπάνω διαδικασία δείτε και τοποθετήστε τα αποτελέσματα της εκτίμησης κίνησης στον Πίνακα 9.2. 21

4.2.1 Πίνακας 9.2 : Συμπιεσμένη εικόνα Σχόλια: 4.3 3 η Άσκηση Ανοίξτε το βίντεο που αποκωδικοποιήσαμε στην Εικόνα 9.15 (ultima04.mpg). Δοκιμάστε να το αποκωδικοποιήσετε και μόνοι σας. Μελετείστε τις πληροφορίες που εμφανίζονται στο δεξί μέρος της οθόνης. Μπορείτε να περιγράψετε συνοπτικά το GOP του βίντεο από αυτές τις πληροφορίες; 22

Σχόλια: 4.4 4 η Άσκηση Ανοίξτε πάλι το ίδιο βίντεο, αυτή τη φόρα όμως επιλέξτε την πρόβλεψη κίνησης (Frame Prediction) από τον αποκωδικοποιητή. Τοποθετείστε το αποτέλεσμα στον Πίνακα 9.3. Τι διαφορές βλέπετε σε σχέση με την κανονική αποκωδικοποίηση; Κατά την εργασία του προγράμματος παρατηρείστε το χρονόμετρο στο βίντεο. Αν προσέξετε δεν μετράει σωστά τον χρόνο. Μπορείτε να αναφέρετε χωρίς πολλές λεπτομέρειες γιατί συμβαίνει αυτό; 4.4.1 Πίνακας 9.3 : Συμπιεσμένη εικόνα. 23

Σχόλια: 4.5 5 η Άσκηση Ανοίξτε και αποκωδικοποιείστε το βίντεο balloo02.mpg και βάλτε το αποτέλεσμα στον Πίνακα 9.4. Τι παρατηρείτε; Υπάρχει εκτίμηση κίνησης σε αυτό το βίντεο κι αν όχι γιατί; 4.5.1 Πίνακας 9.4 : Συμπιεσμένη εικόνα. 24

Σχόλια: 4.6 6 η Άσκηση Χρησιμοποιώντας τον κωδικοποιητή ΜPEG του VCDemo κωδικοποιείστε μία σειρά ασυμπίεστων εικόνων και με δύο διαφορετικές δομές GOP: αναδρομική και μπροστινή πρόβλεψη (Ι/P/B frames) και χωρίς πρόβλεψη (Intra-coded). Παρατηρείστε τις πληροφορίες που μας δίνει το VCDemo για την ποιότητα (PSNR) και το σφάλμα (ΜSE). Στη συνέχεια ανοίξτε τα βίντεο που κωδικοποιήσατε με ένα τρίτο πρόγραμμα (για παράδειγμα τον Windows Media Player). Υπάρχουν εμφανείς διαφορές; Πειραματιστείτε και με διαφορετικά bit-rate και γράψτε τα συμπεράσματά σας Σχόλια: 25