ChromaSubsampling

=Chroma Subsampling=

Grundidee
Das menschliche Auge ist etwa doppelt so empfindlich für Änderungen der Helligkeit wie für Änderungen von Farben. So ist es dann auch nur folgerichtig, die Helligkeitsinformationen getrennt von den Farbinformationen zu speichern, um Speicherplatz und Übertragungsraten zu sparen.

Chroma Subsampling
Das Chroma Subsampling (deutsch: Farbunterabtastung) dient der Reduktion der Videodatenmenge. Die Helligkeitsinformationen des Gesamtbildes (Luminanz) werden bei diesem Verfahren zumeist komplett gepeichert. Die Farbinformationen werden reduziert, indem man die Farben nur für einen Teil der Bildpunkte (Pixel) erfasst. Die Farben der nun fehlenden Bildpunkte müssen für die Anzeige solcher Bilder auf dem Display ergänzt und aus den noch vorhandenen Werten interpoliert (errechnet) werden, denn Displays erwarten die kompletten Bilddaten zur Ansteuerung der Subpixel im RGB-Format. Die Interpolation der fehlenden Punkte gelingt unterschiedlich gut, so dass die Darstellung der gleichen Videodaten auf verschiedenen Displays im Detail Unterschiede aufweisen kann.

Erfassung der Bildpunkte
Alle Bildpunkte werden von einem guten CCD-Sensor als Helligkeiten der Grundfarben Rot, Grün und Blau erfasst. Kombiniert ergeben diese erfassten Lichtintensitäten bei der Anzeige auf einem Display (RGB-Subpixel) dann wieder einen Farbton (Farbmischung). Die folgende Abbildung stellt die 16 Bildpunkte eines kleinen 4x4 Bildausschnitts dar. Es handelt sich hier um RGB 4:4:4. Für jeden Pixel werden die Helligkeiten der Farben rot, grün und blau erfasst.
 * @http://www.mikroskopie.de/pfad/dokumentation/zwei.html
 * @http://www.techniklexikon.net/d/ccd-bildsensor/ccd-bildsensor.htm
 * @http://de.wikipedia.org/wiki/Bayer-Sensor

Wie wird aus den erfassten RGB-Daten Y Cr Cb?
Um entsprechend unserer obigen Vorüberlegungen zur Wahrnehmung des Auges die Helligkeits- und Farbinformationen voneinander zu trennen, geht man bei der Abtaststruktur 4:2:2 wie folgt vor: > Die Daten für die Y-Komponente enthalten die komplette Helligkeitsinformation des Bildes (Luminanz) entsprechend einem s/w-Bild. Entsprechend der zur Verfügung stehenden Bits (Bittiefe, z.B. 8; Anzahl der möglichen Graustufen, z.B. 2 hoch 8) wird für jeden Pixel ein Helligkeitswert ermittelt. Die ermittelten Helligkeitswerte aller Pixel des Bildes werden (in Y) gespeichert.//Ergänzung:// > //Der Gesamt-Helligkeitswert Y eines Pixels berechnet sich aus Anteilen des Helligkeitswertes der RGB-Sensorwerte des Pixels entsprechend der Empfindlichkeit des Auges für rot, grün und blau, z.B. wie folgt: Y=// //R*0,299+G*0,587+B*0,114.// > Das menschliche Auge nimmt die Helligkeit des Farbtons grün deutlich stärker wahr als die Helligkeit der Farben rot und blau. Es überwiegt also in den bereits gespeicherten Helligkeitswerten der Anteil der Farbe grün. Diese Feststellung macht man sich mathematisch zunutze und verzichtet auf das Speichern der grünen Helligkeitsinformationen, indem man in so genannten Farbdifferenzkomponenten Informationen speichert, welche es ermöglichen, die ursprünglichen Helligkeitswerte des RGB-Signals durch einfache Berechnungen wiederherzustellen. //Mathematisch betrachtet: Wenn man von drei Variablen einer festen Formel zwei Werte kennt, so kann man den fehlenden Wert daraus jederzeit berechnen; siehe Formel weiter oben.// > Die obigen Betrachtungen zu Y-, Cr-, und Cb-Komponente führen zu einer Darstellung im Format YCrCb 4:4:4. Es wurden allerdings damit noch keine Daten reduziert! > Die Farbinformationen können aber deutlich reduziert werden, ohne dass der ungeübte Betrachter dieses bemerkt. Wir werfen jetzt einfach jeden zweiten Wert der Cr- und der Cb-Komponente weg und reduzieren damit die Datenmenge des ursprünglichen RGB-Bildpunktes um ein Drittel. Die fehlenden Werte können für die Anzeige jeweils durch den Mittelwert der beiden benachbarten Werte ersetzt werden.
 * Y-Komponente :
 * Cr-Kanal, Cb-Kanal :
 * 4:2:2 :

Das YCrCb-Verfahren kann man ebenfalls gut auf der Basis eines kleinen Bildausschnitts veranschaulichen. Die in den Luminanz- und Chroma-Komponenten vorhandenen Bildpunkte werden wieder in einem 4x4 Raster dargestellt anstelle der Helligkeitswerte für rot, grün und blau. Die Möglichkeiten zur Darstellung der bei verschiedenen Abtaststrukturen verwendeten Bildpunkte für die Komponenten finden Sie hier ... Chroma Subsampling - Bilder im Netz zum Thema // Hinweise, weitere Infos: //
 * // Anstelle von Komponenten könnte man in den obigen Absätzen auch von Kanälen oder Signalen sprechen. Hiermit ist in der Regel das Gleiche gemeint. //
 * // @http://de.wikipedia.org/wiki/YCbCr-Farbmodell //

Der Alphakanal
Die so genannte Farbtiefe kommt oft mit der Bezeichnung 'True Color' daher: Die Bit-Angabe 32Bit ist dabei etwas irritierend, denn dreimal 8Bit (für die Kanäle Rot, Grün und Blau / RGB) sind bekanntlich nur 24Bit. Wofür werden die letzten 8 Bit verwendet?

Wenn ein Bild zusätzlich zu den eigentlichen Bildinformationen auch Transparenzinformationen enthalten soll, so wird zusätzlich ein so genannter Alphakanal benötigt. Im Alphakanal werden die Informationen zur Transparenz des Bildes in der gleichen Auflösung (z.B. 8Bit = 256 Stufen) in der die Farbkanäle des Bildes vorliegen (Farbtiefe) gespeichert. Grafikformate wie z.B. PNG oder TIFF enthalten Transparenzinformationen. Ein Alphawert von 0 entspricht einem „transparenten“ Bild, d.h. dahinter liegende Objekte scheinen zu 100% durch.

Wenn ein Videoformat einen Alphakanal enthält, so muß dieser beim Chroma-Subsampling auch angegeben werden. Das sieht dann z.B. wie folgt aus: 4:4:4:4 oder 4:2:2:4. Der Chroma-Subsampling-Faktor für die Datenratenberechnung ist dann wie folgt zu ermitteln: (4+4+4+4)/4 bzw (4+2+2+4)/4.

Weitere Infos:
 * @http://gimp-handbuch.de/index.php/fortgeschrittene-bildbearbeitung/11-filter/87-der-alphakanal
 * @http://de.wikipedia.org/wiki/Alphakanal

=Aufgaben=

Aufgabe 1 - Qualität verschiedener Abtaststrukturen
Sortieren Sie die folgenden Abtaststrukturen entsprechend ihrer Qualitäten! 4:2:2, 4:2:0, 3:1:1, 4:1:1, 4:4:4

Aufgabe 2 - Erläutern Sie, wie die Abtaststruktur 3:1:1 funktioniert!

 * @http://wolfcrow.com/blog/chroma-subsampling-numbers-explained/

Aufgabe 3 - 4:2:2 8bit vs. 4:2:0 10bit

 * Welches Format erzeugt eine größere Datenrate/Datenmenge (bei gleicher Auflösung, fps etc.)?
 * Berechnen Sie die Datenraten der beiden Formate für 1080p25!
 * Berechnen Sie die Datenmengen der beiden Formate für 1080p25 bei 100Sek. Aufnahme!
 * Welche Qualität würden Sie bevorzugen und warum?
 * Hier gibt es scheinbar für beide Formate Argumente! Welche?
 * Welche Anwendungen erfordern welches Format?
 * Computerspiele
 * Landschaftsaufnahmen
 * Actionfilme
 * Portrait-Fotos
 * Sportübertragung

Diskussion zum Thema

Aufgabe 4 - Beantworten Sie folgende Verständisfragen!

 * 1) Gibt es Chroma-Subsampling auch beim RGB-Format?
 * 2) Wie kommt man auf die Idee, Farbinformationen gegenüber den Gesamt-Helligkeitswerten des Bildes reduzieren zu können?
 * 3) Wie viel Datenmenge in Prozent spare ich ein bei Nutzung der Abtaststruktur 4:2:2 gegenüber RGB 4:4:4?
 * 4) Ist solch eine Datenreduktion von RGB nach YCrCb 4:2:2 verlustfrei oder verlustbehaftet?
 * 5) Was gibt eine Abtaststruktur an? Welche Informationen kann ich aus ihr entnehmen?
 * 6) Welches ist die hochwertigste Abtaststruktur?
 * 7) Was ist der Unterschied zwischen 4:4:4-RGB und 4:4:4-YCrCb?
 * 8) Wie erkennt man eine vorgenommene Farbreduktion im angezeigten Bild auf dem Display?

Weitere Infos

 * @http://en.wikipedia.org/wiki/Chroma_subsampling
 * @http://de.wikipedia.org/wiki/Farbunterabtastung
 * @http://wolfcrow.com/blog/chroma-subsampling-numbers-explained/
 * @http://www.pcmag.com/encyclopedia/term/57460/chroma-subsampling
 * @http://www.dvxuser.com/articles/colorspace/
 * @http://w.poynton.com/PDFs/Chroma_subsampling_notation.pdf
 * @http://www.dvxuser.com/articles/colorspace/
 * @http://www.medien.ifi.lmu.de/lehre/ss03/mt/Videoaufnahmetechnik.pdf
 * https://documentation.apple.com/en/finalcutpro/usermanual/index.html#chapter=C%26section=11%26tasks=true
 * @http://www.yourdictionary.com/chroma-subsampling
 * @http://www.dvxuser.com/articles/colorspace/
 * @https://www.youtube.com/watch?v=RK8Xv1LTItM How codecs work (mit einem Teil zum Chroma Subsampling)

Aufgabe 1)

 * 4:4:4, 4:2:2, 4:2:0, 4:1:1, 3:1:1

Aufgabe 2)

 * siehe auch http://en.wikipedia.org/wiki/Chroma_subsampling#mediaviewer/File:Colorcomp.jpg

Aufgabe 3)
dr = fps * PixelBreite * PixelHoehe * BitProKanal * SubSamplFaktor [Bit/s] dm = dr*t / 8 [Byte] a) 25 * 1920 * 1080 * 8 * 2 DR=829MBit/s DM=10.3GB bei 100 Sekunden b) 25 * 1920 * 1080 * 10 * 1,5 DR=778MBit/s DM=9.7GB bei 100 Sekunden
 * 1) Wenn eine höhere Farbauflösung benötigt wird, dann ist die 10-Bit Variante zu bevorzugen - z.B. Sonnenuntergang in der Serengeti (sehr feine Gelb-, Orange und Rottöne).
 * 2) Wenn eine höhere Genauigkeit bzgl. der genauen Farbpositionen gefordert ist, dann ist es sinnvoller das Chroma-Subsampling 4:2:2 zu bevorzugen - z.B. starke Farbkontraste mit andersfarbigen Details, z.B. kleiner roter Schalter auf blauem Hintergrund.

Beispiele:
> (es stehen nur die beiden genannten zur Verfügung)
 * Welche Anwendungen erfordern welches Format?
 * Computerspiele 10Bit wären wahrscheinlich sinnvoller
 * Landschaftsaufnahmen es gibt Argumente für beides
 * Actionfilme z.B. im Heimkino wahrscheinlich eher 4:2:2 wegen gr. Bild
 * Portrait-Fotos der Fotograf nimmt die 10Bit wenn möglich
 * Sportübertragung ? Argumente für beides

Aufgabe 4)
> siehe > siehe @http://www.xdcam-user.com/wp-content/uploads/2012/07/420-422.jpg
 * 1) Nein. Es gibt aber ein 4:4:4 Chroma Subsampling welches 1:1 in ein RGB-Signal umgerechnet werden kann.
 * 2) Das menschliche Sehen funktioniert so. ...
 * 3) 1/3
 * 4) verlustbehaftet
 * 5) ... wieviel Farbpixel gespeichert werden im Verhältnis zu s/w - Daten im Y-Kanal ...
 * 4:4:4
 * 1) ... gleiche Datenmenge, aber anderes Farbmodell, 1:1 ineinander umrechenbar ...
 * 2) ... einzelne Pixel werden möglicherweise nicht im Originalfarbton angezeigt (Interpolation),