Wikipedia · einfach zusammengefasst · Stand
Prädiktive Kodierung
Die prädiktive Kodierung ist eine spezielle Form der Kodierung, die maßgeblich auf Vorhersagen und Mutmaßungen basiert. Anhand der bereits gelesenen …
Grundprinzip und Bedeutung
Prädiktive Kodierung ist eine Form der Kodierung, bei der aus bereits gelesenen, also bekannten Daten Vorhersagen über kommende Daten abgeleitet werden. Gespeichert wird nicht unmittelbar der neue Ausgangswert, sondern die Differenz zwischen Vorhersage und tatsächlichem Wert. Bewegt sich etwa ein Objekt in einem Bild, kann vorhergesagt werden, an welcher Stelle es oder Teile davon in den folgenden Bildern erscheinen.
Das Verfahren wird bei Video-, Audio- und Bildkomprimierung verwendet. Sein Nutzen liegt darin, dass eine gute Vorhersage nur eine kleine Abweichung erzeugt, die nahe bei Null liegt. Solche kleinen oder ähnlichen Werte lassen sich durch nachfolgende Verfahren wie Lauflängenkodierung oder Entropiekodierung besonders gut weiter komprimieren.
Prädiktive Kodierung reduziert dabei nicht selbst die Informationsmenge. Sie transformiert die Werte vielmehr in eine Form, die anderen Kodierverfahren einen günstigeren Ausgangspunkt bietet. Nachteile sind der höhere Dekodieraufwand und die feste Abhängigkeit von Kodierer und Dekodierer: Beim Dekodieren muss dieselbe Vorhersage gebildet und mit der gespeicherten Abweichung korrigiert werden. Ändert sich die Vorhersageart im Kodierer, muss daher auch der Dekodierer angepasst werden.
Weil die Werte relativ zu vorangegangenen Werten gespeichert werden, sind bei Streaming-Videos oder beim Spulen periodisch absolute Stützstellen nötig. Diese heißen I-Bilder. Sie werden vollständig gespeichert und bilden die Grundlage für die Vorhersage nachfolgender Bilder.
Vorhersagen bei Bildern
Bei einfachen Vorhersagealgorithmen für Bilder wird für den aktuellen Pixel ein möglicherweise gewichtetes Mittel bereits bekannter Pixel geschätzt. Rasterbildformate speichern Bilddaten meist zeilenweise von oben nach unten und innerhalb einer Zeile von links nach rechts. Im Dekoder sind deshalb insbesondere die Pixel links und oberhalb des aktuellen Pixels bekannt.
Das PNG-Dateiformat verwendet vier sogenannte Vorfilter. Welcher Filter das beste, also nach der Komprimierung kleinste Ergebnis liefert, hängt vom Bildinhalt ab. Da der Filter für jede Bildzeile wechseln kann, entstehen viele mögliche Filterkombinationen. Ein PNG-Optimierer kann diese Kombinationen ausprobieren, um die kleinste Dateigröße zu finden.
Viele Programme, die PNG-Dateien erzeugen, testen jedoch nicht alle Kombinationen. Sie verwenden einen festen Vorfilter für das gesamte Bild. Dieser kann unveränderlich festgelegt sein, von der Farbtiefe abhängen oder mithilfe einer einfachen Heuristik aus dem Bildinhalt ausgewählt werden.
Vorhersagen bei Videos
Bei der kontextfreien Prädiktion, einer Bewegungsvorhersage, werden ausschließlich Helligkeitsveränderungen im Bild ermittelt. Semantische Information wird nicht berücksichtigt: Ob sich beispielsweise ein Auto oder ein Ball bewegt, ist unwichtig; maßgeblich sind nur die Helligkeitsänderungen durch die Bewegung.
Die modellbasierte Prädiktion nimmt dargestellte Bildinhalte vorweg. Ein Beispiel ist Videotelefonie: Das Bild verändert sich dort meist nur wenig, weil der Hintergrund gleich bleibt und sich die telefonierende Person wenig bewegt.
Objekt- und regionenbasierte Prädiktion ist aufwändiger. Sie beruht auf Segmentierung sowie Objekterkennung und Objektverfolgung. Einzelne Objekte werden semantisch erkannt; anschließend wird ihre Bewegung über mehrere Bilder vorhergesagt, etwa wenn ein Ball an der Kamera vorbeirollt.
Bei der Bewegungskompensation durch Kamerabewegung verändern sich große Teile eines Bildes, weil sich die Kamera geradlinig bewegt, rotiert oder zoomt. Beispielsweise kann eine vorbeiziehende Straße aus einem Autoseitenfenster gefilmt werden. Viele Bildinhalte können in solchen Fällen wiederverwendet werden: Sie bleiben erhalten und werden lediglich mithilfe von Bewegungsvektoren verschoben.