Zum Inhalt springen

YUV-Farbmodell

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 23. März 2005 um 22:57 Uhr durch Paddy (Diskussion | Beiträge) (Grundprinzip). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Das YUV-Farbmodell verwendet zur Darstellung der Farbinformation zwei Komponenten, die Luma (Lichtstärke pro Fläche) und die Chrominanz oder Farbanteil (chroma), wobei die Chrominanz wiederum aus zwei Komponenten besteht. Die Entwicklung des YUV-Farbmodells geht auf die Entwicklung des Farbfernsehens (PAL) zurück, wo nach Wegen gesucht wurde, zusätzlich zum Schwarz/Weiß-Signal die Farbinformation zu übertragen, um eine Abwärtskompatibilität mit alten Schwarz/Weiß-Fernsehgeräten zu erreichen ohne die zur verfügung stehende Übertragungsbandbreite erhöhen zu müssen. Aus dem YUV-Farbmodell der analogen Fernsehtechnik wurde das YCbCr-Farbmodell entwickelt, das bei den meisten Arten der digitalen Bild- und Videokompression eingesetzt wird. Fälschlicherweise wird in jenem Bereich auch oft vom YUV-Farbmodell gesprochen, obwohl eigentlich das YCbCr-Modell benutzt wird. Dies sorgt oft für Verwirrung.

Die NTSC-Fernsehnorm benutzt ein anderes Farbmodell, welches YIQ genannt wird.

Grundprinzip

Zur Berechnung des Luma-Signals auch Leuchtdichte-Signal werden die zugrundeliegenden RGB-Daten zunächst mit dem Gamma-Wert des Ausgabegerätes verrechnet, man erhält ein R'G'B'-Signal. Die drei Einzelkomponenten werden mit unterschiedlicher Gewichtung addiert, um die Helligkeitsinformation zu bilden, die als BAS-Signal auch bei alten Schwarz/Weiß-Fernsehgeräten funktioniert.

Y=R+G+B

Die genaue Berechnung ist jedoch komplizierter, da einige Aspekte des Farbensehens des menschlichen Auges berücksichtigt werden müssen. So wird Beispielsweise Grün heller wahrgenommen, als Rot, und dieses heller als Blau. Weiterhin wird bei einigen Systemen zunächst eine Gammakorrektur der Grundfarben vorgenommen.

Die Crominanzsignale, auch Farbdifferenzsignale enthalten die Farbinformation. Sie entstehen aus der Differenz Blau minus Luma bzw. Rot minus Luma.

U=B-Y
V=R-Y

Aus den drei erzeugten Komponenten Y, U und V können später wieder die einzelnen Farbanteile der Grundfarben berechnet werden:

Y + U = Y + ( B - Y ) = Y - Y + B = B
Y + V = Y + ( R - Y ) = Y - Y + R = R
Y - B - R = ( R + G + B ) - B - R = G

Weiterhin ergibt sich durch den Aufbau der Netzhaut des menschlichen Auges, dass die Helligkeitsinformation in einer höheren Auflösung wahrgenommen wird als die Farbe, sodass viele auf dem YUV-Farbmodell aufbauende Formate eine Komprimierung der Chrominanz vornehmen, um Bandbreite bei der Übertragung einsparen zu können.

Die Bildauflösung ist standardisiert durch das Common Intermediate Format (CIF).

Formeln zur Umrechnung zwischen RGB- und YUV-Format

Computer RGB oder auch "full-scale" RGB, benutzt 8 Bits für jeden einzelnen der roten, grünen und blauen Kanäle. Schwarz erhält man somit aus R=G=B=0 und Weiß aus R=G=B=255. Das 4:4:4 YUV Format benutzt 8 Bits für jeden der Y, U und V Kanäle.

Der U Kanal reicht von Blau bis Gelb und der V Kanal von Rot bis Gelb. Weil Gelb aus Rot und Grün besteht werden Grün und Rot jeweils mehrfach und Blau nur einfach gesendet.

foreman iso referenz stream 4:2:0 YUV

foreman iso referenz stream 4:2:0 YUV luma only
foreman iso referenz stream 4:2:0 YUV luma plus chroma U foreman iso referenz stream 4:2:0 YUV luma plus chroma V

Foreman YUV 4:2:0 a alle Kanäle b 4:2:0 nur Y-Kanal c YU-Kanal d YV-Kanal

Formeln für die Konvertierung von 8-Bit RGB zu YUV 4:4:4 nach (ITU-R Recommendation BT.601):

In guter Näherung kann man auch folgende Formel verwenden:

Die Rückkonvertierung von YUV 4:4:4 zu 8-Bit RGB läßt sich wie folgt ableiten. Dabei wird zunächst eine Vereinfachung vorgenommen:

Durch Umformung gewinnt man:

Wobei clip() bedeutet, dass nur Werte aus dem Bereich von 0 bis 255 vorkommen dürfen. Negative Werte werden zu 0 und Werte größer als 255 zu 255. Wieder kann die Konvertierung mit guter Näherung vereinfacht werden:

YUV Abtastfrequenz für Luma und Chrominanz

Einer der großen Vorteile von YUV ist, dass die Abtastrate der Chrominanz Kanäle niedriger als die des Y Kanals sein kann, ohne dass es zu einer spürbaren Verringerung der zu gewährleistenden Qualität kommt (Chroma Subsampling).

  • YUV 4:4:4 Chrominanz-Auflösung identisch zur Luma-Aufloesung
  • YUV 4:1:1 Chrominanz-Auflösung horizontal geviertelt und vertikal unveraendert

4:2:2

Bei YUV 4:2:2 handelt es sich um horizontale Unterabtastung der Farbinformation (Chrominanz) um den Faktor 2 somit wurde die Chrominanz-Auflösung horizontal halbiert. 4:2:2-Kodierung entspricht "Studioqualität" für digitales Video (ITU-R 601-4) und wird von professioneller Aufnahme- und Schnitthardware verwendet.

4:2:0

Bei YUV 4:2:0 wird die Chrominanz-Auflösung sowohl horizontal als auch vertikal halbiert. Für Übertragung und für den Heimgebrauch wird typischerweise 4:2:0 verwendet.

A:B:C Notation

Es gibt weiterhin noch Unterschiede über das Zentrum der Chrominanzwerte. Diese können zentriert oder nicht zentriert sein:

Zur Beschreibung wird eine so genannte A:B:C Notation verwendet. Sie gibt wieder wie oft U und V im Vergleich zu Y abgetastet werden.

A:B:C Notation 4:4:4 Abtastung
YUV 4:4:4
A:B:C Notation 4:2:2 Abtastung
YUV 4:2:2
A:B:C Notation 4:2:0 Abtastung
YUV 4:2:0
A:B:C Notation 4:2:0 Abtastung MPEG-2
YUV 4:2:0 MPEG-2 Abtastpositionen

Unterschied zwischen den verschiedenen Abtastraten

YUV 4:2:0 Streams

Open Source YUV Viewer

License: GNU General Public License (GPL)