Kodierung

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Bilder und Videos werden in Binärform gespeichert und haben fast immer eine integrierte Komprimierung. Ausnahmen wären hier .bmp und .wav um mal ein Beispiel zu nennen.

Binärform bedeutet, dass möglichst alle möglichen Zustände eines Byte (Dateneinheit) genutzt werden um Informationen zu speichern. Ein Byte kann ein Wert zw. 0 und 255 haben. Damit kann ein Byte 256 Zustände haben.

Was ist jetzt Text? Der Computer hat Zeichensätze (Unicode, ASCII, etc). Ein Zeichensatz ist sowas wie ein Wörterbuch, dass einen Bytezustand mit einem Buchstaben assoziiert (s. ASCII/Unicode-Tabelle). Der Zeichensatz umfasst zwar alle möglichen Bytezustände, aber nicht alle Einträge eines Zeichensatzes sind auch Buchstaben. Bei Unicode können sogar mehrere Byte ein Zeichen bedeuten. Würdest du also 256 Zustände textkodieren bräuchtest du plötzlich mehrere Byte um 256 verschiedene Informationen zu speichern, weil (wie gesagt) nicht alle Bytezustände laut Zeichensatz auch Buchstaben sind bzw. ein Buchstabe selbst mehrere Byte an Platz brauchen kann. Durch Textkodierung nutzt du den Speicherplatz also sehr ineffizient. Das ist auch der Grund warum Textdateien beim zippen eine extrem gute Komprimierungsrate haben. Da wird der Text auf intelligente Art und Weise binär kodiert und so versucht jedes Bit zu nutzen.

Eine Binärkodierung ist aber trotzdem noch keine Komprimierung. Nehmen wir mal *.bmp. Das Dateiformat speichert im Prinzip die Rot/Grün/Blau Werte eines jeden Pixels in Binärform ab (256 Werte pro Farbkanal). Bei einem 5 Megapixel-Foto (5 Millionen Pixel) wären das 5.000.000 * 3 Byte = 15 MB. JPEGs mit der selben Auflösung sind aber deutlich kleiner (ein paar 100KB vielleicht). JPEG hat ein mehrstufiges Verfahren um die Bilddaten in eine bestimmte Darstellungsform zu bringen (Frequenzraum) der anschließend mit einer Huffman-Komprimierung verkleinert wird. Das ist speziell für Fotos entwickelt worden und arbeitet daher mit Bildern besonders effizient (mit einigen Einschränkungen bei der Bildqualität). Bei Videos gibt es wieder eine andere, spezialisierte Form der Komprimierung die die Eigenschaften des Videos nutzt (bei MPEG z.B. wird bei Bildbereichen die sich kaum ändern Platz gespart). Und da das alles schon so stark komprimiert ist gewinnt man praktisch nichts wenn man Bilder und Videos zippt, manchmal steigt sogar der Speicherbedarf, da das Zip-Format ja selber noch Speicher braucht.

Also nein, es bringt nichts ein Bild/Video in Textform zu speichern.

nickk  24.02.2015, 01:45

Interessant, davon hatte ich gar keines Info :)

0

Speicherplatz würdest bei Umcodierung auf Textzeilen eher nicht gewinnen. Vielmehr wären die Datenmengen größer als das Bild selbst.Es muss ja nicht X und Y Koordinate festgehalten werden für das betreffende Pixel ,sondern auch die Bildgröße und auch für jedes Pixel die betreffende Farbe. Bei Videos wäre noch mehr an Informationen zu speichern wie z.B. die Art des Videoformates ,welche Auflösung, Hintergrund Informationen wie Copyright geschütztes Material JA / NEIN ,etc.