Ακολουθεί μια ανάλυση των βασικών στοιχείων και των κοινών αλγορίθμων που εμπλέκονται:
1. Χωρική συμπίεση (κωδικοποίηση ενδο-πλαισίου): Αυτό ασχολείται με τη συμπίεση μεμονωμένων πλαισίων. Οι τεχνικές που χρησιμοποιούνται περιλαμβάνουν:
* Μετασχηματισμός διακριτού συνημίτονου (DCT): Πρόκειται για ένα βασικό συστατικό πολλών κωδικοποιητών όπως το MPEG, H.264 και H.265. Μετατρέπει τα χωρικά δεδομένα (τιμές εικονοστοιχείων) σε συντελεστές συχνότητας. Οι συντελεστές υψηλής συχνότητας, που αντιπροσωπεύουν λεπτές λεπτομέρειες, είναι συχνά λιγότερο σημαντικοί και μπορούν να κβαντιστούν (μειωμένοι σε ακρίβεια) ή να απορριφθούν, οδηγώντας σε συμπίεση.
* Μετασχηματισμός Wavelet: Μια εναλλακτική λύση στο DCT, προσφέροντας πιθανώς καλύτερη συμπίεση σε ορισμένες περιπτώσεις.
* συμπίεση fractal: Εκμεταλλεύεται την αυτο-ομοιότητα μέσα σε μια εικόνα για να επιτύχει συμπίεση. Λιγότερο κοινό στη συμπίεση βίντεο λόγω υψηλότερου υπολογιστικού κόστους.
2. Χρονική συμπίεση (κωδικοποίηση μεταξύ πλαισίων): Αυτό εκμεταλλεύεται την απόλυση μεταξύ διαδοχικών πλαισίων. Οι τεχνικές περιλαμβάνουν:
* Εκτίμηση και αποζημίωση κίνησης (MEC): Αυτό προσδιορίζει τομείς κίνησης μεταξύ των πλαισίων. Αντί να κωδικοποιούνται ολόκληρο το νέο πλαίσιο, κωδικοποιούνται μόνο οι διαφορές (διανύσματα κίνησης και υπολειμματικά δεδομένα). Αυτό μειώνει σημαντικά την ποσότητα των απαιτούμενων δεδομένων.
* Προγνωστική κωδικοποίηση: Προβλέπει το επόμενο πλαίσιο με βάση προηγούμενα πλαίσια και κωδικοποιεί μόνο το σφάλμα πρόβλεψης.
3. Κωδικοποίηση εντροπίας: Αυτό είναι το τελικό βήμα, μειώνοντας περαιτέρω το μέγεθος των συμπιεσμένων δεδομένων, αναθέτοντας τους μικρότερους κωδικούς σε πιο συχνή σύμβολα (π.χ. χρησιμοποιώντας κωδικοποίηση ή αριθμητική κωδικοποίηση Huffman).
Δημοφιλείς κωδικοποιητές βίντεο και αλγόριθμοι τους:
* MPEG-1, MPEG-2: Παλαιότερα πρότυπα, χρησιμοποιώντας αντιστάθμιση DCT και κίνησης. Το MPEG-2 εξακολουθεί να χρησιμοποιείται για τηλεόραση εκπομπής.
* MPEG-4 Μέρος 2 (divx, xvid): Βελτιώθηκε στο MPEG-1/2, χρησιμοποιώντας πιο εξελιγμένη εκτίμηση κίνησης και καλύτερες τεχνικές ποσοτικοποίησης.
* H.264/AVC (προηγμένη κωδικοποίηση βίντεο): Ένας εξαιρετικά αποτελεσματικός κωδικοποιητής, που χρησιμοποιείται ευρέως σε δίσκους Blu-ray, σε απευθείας σύνδεση βίντεο και πολλές άλλες εφαρμογές. Χρησιμοποιεί το DCT, την εκλεπτυσμένη εκτίμηση κίνησης και άλλες προηγμένες τεχνικές.
* H.265/HEVC (κωδικοποίηση βίντεο υψηλής απόδοσης): Ο διάδοχος του H.264, προσφέροντας ακόμα καλύτερους λόγους συμπίεσης με το κόστος υψηλότερης υπολογιστικής πολυπλοκότητας.
* VP8, VP9, AV1: Οι κωδικοποιητές χωρίς δικαιώματα που αναπτύχθηκαν από την Google (VP8, VP9) και μια συμμαχία ανοιχτού κώδικα (AV1). Το AV1 θεωρείται ισχυρός ανταγωνιστής του Η.265.
αποσυμπίεση: Η διαδικασία αποσυμπίεσης ουσιαστικά αντιστρέφει αυτά τα βήματα. Περιλαμβάνει την αποκωδικοποίηση των δεδομένων που έχουν κωδικοποιηθεί από την εντροπία, την εκτέλεση μετασχηματισμού αντίστροφης DCT ή Wavelet, εφαρμόζοντας αντιστάθμιση κίνησης (εάν ισχύει) και ανακατασκευάζοντας τα πλαίσια.
Συνοπτικά, η συμπίεση βίντεο είναι μια πολύπλευρη διαδικασία που περιλαμβάνει συνδυασμό τεχνικών χωρικής και χρονικής συμπίεσης, μαζί με την κωδικοποίηση εντροπίας. Οι ακριβείς αλγόριθμοι που χρησιμοποιούνται εξαρτώνται σε μεγάλο βαθμό από τον επιλεγμένο κωδικοποιητή, ο οποίος υπαγορεύει τις ειδικές συμβιβασμούς μεταξύ της αποτελεσματικότητας της συμπίεσης, της ποιότητας και των υπολογιστικών απαιτήσεων.
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα