article

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. Bei der Umstellung auf Farbfernsehen wurde nach technischen Wegen gesucht, 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. Das YUV-Farbmodell der analogen Fernsehtechnik wird häufig mit seinem Verwandten YPbPr verwechselt, aus dem das YCbCr-Farbmodell entwickelt wurde, 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. Zudem werden die an entsprechenden Geräten vorhandenen analogen Component Video-Anschlüsse oft falsch mit YUV beschriftet, obwohl das bei diesen genutzte Farbmodell das analoge YCbCr-Pendant YPbPr ist. Dies sorgt oft für Verwirrung. Tatsächlich werden jedoch PAL-Übertragungen per Composite Video, S-Video, analoger TV-Antenne, analogem Sat-Fernsehen und analogem Kabelfernsehen mit Hilfe des YUV-Farbmodells kodiert.

Die NTSC-Fernsehnorm benutzt ein anderes Farbmodell namens YIQ.

Prinzip des Farbmodells


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, dieses wiederum heller als Blau. Diese unterschiedliche Gewichtung wird in folgender Umrechnungsformel berücksichtigt:

Y = 0,299·R + 0,587·G + 0,114·B

Weiterhin wird bei einigen Systemen zunächst eine Gammakorrektur der Grundfarben vorgenommen.

Die Chrominanzsignale (auch Farbdifferenzsignale) enthalten die Farbinformation. Sie entstehen aus der Differenz zwischen Blauanteil und Luma bzw. Rotanteil und 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 ) = B
Y + V = Y + ( R - Y ) = 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).

Die folgenden Angaben beziehen sich nicht auf das beim analogen PAL verwendete Farbmodell YUV sondern auf die im digitalen Bereich genutzten YCbCr-Farbmodellvarianten.

Formeln zur Umrechnung zwischen digitalem RGB- und YCbCr-Format


Das u. a. im Computerbereich verwendete RGB-Modell (auch "full-scale"-RGB) benutzt 8 Bits für jeden einzelnen der roten, grünen und blauen Kanäle. Im Full-Scale-RGB das bei Computern benutzt wird erhält man Schwarz aus R=G=B=0 und Weiß aus R=G=B=255. Die nachfolgenden Formeln beziehen sich auf den YCbCr-Farbraum, der bei CCIR-601-basierten digitalen Aufzeichnungen und Übertragungen benutzt wird und nur Y-Werte im Bereich von 16 bis 235 vorsieht. In diesem Farbraum erhält man Schwarz bei Y=16 und Weiß bei Y=235. In der Umrechnungsformel für den Wert Y bei YCbCr wird daher die gewichtete Gesamthelligkeit Y (aus YPbPr, entspricht Y bei YUV) mit 235-16 \over 255 multipliziert und anschließend der Schwarzpegel 16 addiert.

Das YCbCr-4:4:4-Format benutzt für Y, Cb und Cr jeweils 8 Bits. Der Cb-Kanal reicht von Gelb bis Blau und der Cr-Kanal von Türkis bzw. Cyan bis Rot.

Formeln für die Konvertierung von 8-Bit RGB zu YCbCr 4:4:4 nach (ITU-R Recommendation BT.601):
Y=\mbox{round}(0{,}256788\cdot R+0{,}504129\cdot G+0{,}097906\cdot B)+16
U=\mbox{round}(-0{,}148223\cdot R-0{,}290993\cdot G+0{,}439216\cdot B)+128
V=\mbox{round}(0{,}439216\cdot R-0{,}367788\cdot G-0{,}071427\cdot B)+128

In guter Näherung kann man auch folgende Formel verwenden:
Y=((66\cdot R+129\cdot G+25\cdot B+128)>>8)+16
U=((-38\cdot R-74\cdot G+112\cdot B+128)>>8)+128
V=((112\cdot R-94\cdot G-18\cdot B+128)>>8)+128

Die Rückkonvertierung von YCbCr 4:4:4 zu 8-Bit RGB lässt sich wie folgt ableiten. Dabei wird zunächst eine Vereinfachung vorgenommen:
C = Y - 16\qquad\qquad D = Cb - 128\qquad\qquad E = Cr - 128

Durch Umformung gewinnt man:
R=\mbox{clip}(\mbox{round}(1{,}164383\cdot C+1{,}596027\cdot E))
G=\mbox{clip}(\mbox{round}(1{,}164383\cdot C-(0{,}391762\cdot D)-(0{,}812968 \cdot E)))
B=\mbox{clip}(\mbox{round}(1{,}164383\cdot C+2{,}017232\cdot D))

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:
R=\mbox{clip}((298\cdot C+409\cdot E+128)>>8)
G=\mbox{clip}((298\cdot C-100\cdot D-208\cdot E+128)>>8)
B=\mbox{clip}((298\cdot C+516\cdot D+128)>>8)

YCbCr Abtastfrequenz für Luma und Chrominanz


Einer der großen Vorteile von YCbCr 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).

  • YCbCr 4:4:4 Chrominanz-Auflösung identisch zur Luma-Aufloesung
  • YCbCr 4:1:1 Chrominanz-Auflösung horizontal geviertelt und vertikal unverändert

4:2:2

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

4:2:0

Bei YCbCr 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 Cb und Cr im Vergleich zu Y abgetastet werden.

yuvformats444sampling.svg
YCbCr 4:4:4
yuvformats422sampling.svg
YCbCr 4:2:2

-
yuvformats420sampling.svg
YCbCr 4:2:0
yuvformats420samplingMPEG-2.svg
YCbCr 4:2:0 MPEG-2-Abtastpositionen
Weiße Kreise symbolisieren hier die Abtastpositionen für die Luminanz, graue Kreise die Positionen für die Chrominanz.

Weblinks


  • Unterschied zwischen den verschiedenen Abtastraten bei YCbCr

  • Ein YCbCr-4:2:0-Viewer unter GPL, lauffähig unter Java mit Java Native Interface (JNI)

Farbsystem

YUV | YUV | YUV | YUV | YUV | YUV | YUV

 

This article is licensed under the GNU Free Documentation License. It uses material from the "YUV-Farbmodell".

Home Pageartsbusinesscomputersgameshealthhospitalshomekids & teensnewsphysiciansrecreationreferenceregionalscienceshoppingsocietysportsworld