YUVカラーシステム

YUVはカラー画像パイプラインの一部として典型的に使用されるカラーコード化システムである。 それは、人間の知覚を考慮したカラー画像またはビデオを符号化し、クロミナンス成分の帯域幅を減少させ、それにより、典型的には「直接」RGB表現よりも人間の知覚によって伝送エラーま​​たは圧縮アーチファクトをより効率的にマスクすることができる。 他のカラーエンコーディングは同様の特性を持ち、Y’UVの特性を実装または調査する主な理由は、特定のY’UV標準に準拠するアナログまたはデジタルテレビまたは写真機器とのインターフェースになります。

Y’UV、YUV、YCbCr、YPbPrなどの用語の範囲は、あいまいで重複することがあります。 歴史的に、YUVおよびY’UVという用語は、テレビジョンシステムにおける特定の色情報のアナログ符号化に使用され、YCbCrは、MPEGおよびJPEGなどのビデオおよび静止画像圧縮および伝送に適した色情報のデジタル符号化に使用された。 現在、YUVという用語は、コンピュータ業界では、YCbCrを使用してエンコードされたファイル形式を記述するために一般的に使用されています。

Y’UVモデルは、1つの輝度(Y ‘)および2つの色差(UV)成分に関して色空間を定義する。 Y’UVカラーモデルは、PALコンポジットカラービデオ(PAL-Nを除く)規格で使用されます。 以前の白黒システムでは、輝度(Y ‘)情報のみが使用されていました。 カラー情報(UおよびV)は、サブキャリアを介して別々に加えられたので、モノクロ受信機は受信機のネイティブ白黒フォーマットでカラー画像送信を受信して​​表示することができる。

Y ‘は輝度成分(輝度)を表し、UおよびVは色成分(色成分)を表す。 輝度はYで示され、lumaはY ‘で表され、素の記号(’)はガンマ圧縮を表し、輝度は物理的な線空間輝度を意味し、「輝度」は(非線形)知覚輝度である。

アナログコンポーネントビデオで使用されるYPbPrカラーモデルと、デジタルビデオで使用されるデジタルバージョンのYCbCrは、多かれ少なかれそれから派生し、Y’UVと呼ばれることもあります。 (CB / PBおよびCR / PRは青 – 黄および赤 – シアン軸上のグレーからの偏差であり、UおよびVは青 – 輝度および赤 – 輝度の差である)。アナログNTSCテレビで使用されるY’IQ色空間放送システムはそれに関連しているが、より複雑な方法である。 アナログSECAMおよびPAL-Nテレビジョン放送システムで使用されるYDbDr色空間も関連している。

語源に関しては、Y、Y ‘、U、およびVは略語ではない。 輝度に文字Yを使用することは、XYZ原色の選択にさかのぼることができる。 これは、輝度の知覚的に一様な相関に近似するルマ(Y ‘)内の同じ文字の使用に自然に役立つ。 同様に、U及びV軸は、x及びy色度空間のような他の空間におけるU及びV軸と区別するために選択された。 以下の式を参照するか、数学の歴史的発展を比較してください。

歴史
技術者がモノクロのインフラストラクチャでカラーテレビを求めていた時に、Y’UVが発明されました。 彼らは、白黒(B&W)TVと互換性があり、色を追加できる信号伝送方法が必要でした。 輝度成分は既に白黒信号として存在していたが、 彼らはこれに解決策としてUV信号を加えました。

UとVは色差信号であるため、クロミナンスのUV表現はストレートR信号とB信号よりも選択されました。 言い換えれば、UおよびV信号は、輝度を変更することなく、ある画素の色をシフトするようにテレビに指示する。 または、UとV信号は、モニターに、ある色を他の色のコストで明るくし、どれだけシフトさせるべきかを指示します。 U値とV値が高いほど(または負の値が小さいほど)、ピクセルはより彩度が高くなります。 UとVの値がゼロに近づくほど、赤、緑、青の光がより明るくなり、灰色のピクセルが生成されることを意味する色がシフトします。 これは、色差信号を使用する利点です。つまり、色がどれだけ赤色であるかを伝える代わりに、緑色または青色よりも赤色であるかどうかを示します。 このことは、UおよびV信号がゼロまたは不在である場合、グレースケール画像を表示するだけであることを意味する。 RとBを使用した場合、B&Wシーンでも非ゼロの値を持ち、3つのデータ搬送信号をすべて必要とします。 これはカラーテレビの初期には重要でした。なぜなら、古い黒と白のテレビ信号にはUとVの信号がないからです。つまり、カラーテレビはB&W TVとしてそのまま表示します。さらに、黒と白のレシーバはY ‘信号を取り、UとVの色信号を無視することができ、Y’UVは既存のすべての白黒機器、入力および出力と下位互換性があります。カラーTV規格が色差信号を使用していなかった場合、カラーテレビが白黒放送から面白い色を作るか、または白黒信号を色に変換するための追加の回路が必要になる可能性があります。 利用可能な追加の帯域幅がなかったため、クロミナンスチャネルに狭い帯域幅を割り当てる必要がありました。 ルミナンス情報の一部がクロミナンスチャネルを介して到着した場合(RB信号が差分UV信号の代わりに使用された場合のように)、B&W解像度が損なわれていました。

RGBとの変換
BT.601を持つSDTV
Y’UV信号は、通常、RGB(赤、緑、青)ソースから作成されます。 R、G、Bの加重値を合計して、全体の輝度または輝度の尺度であるY ‘を生成する。 UおよびVは、Y ‘とBおよびR値との間のスケールされた差として計算される。

BT.601は以下の定数を定義します:


Y’UVは次のようにRGBから計算されます。


結果として得られるY ‘、U、Vの範囲は[0,1]、[ – Umax、Umax]、[ – Vmax、Vmax]です。

上記の変換を反転すると、Y’UVがRGBに変換されます。


同様に、定数に値を代入し、それらを行列として表現すると、BT.601の次の式が得られます。


BT.709を搭載したHDTV

HDTVの場合、ATSCはSDTVシステムの以前に選択された値と比較してWRとWBの基本値を変更することに決めました。 HDTVの場合、これらの値はRec。 この決定はY’UV↔RGB変換のマトリックスにも影響を及ぼし、そのメンバ値もわずかに異なっていました。 その結果、SDTVとHDTVには、一般に、RGBトリプルで可能な2つの異なるY’UV表現があります。SDTV-Y’UVとHDTV-Y’UVです。 これは、SDTVとHDTVとの間で直接変換するとき、輝度(Y ‘)情報はおおよそ同じであるが、彩度(U&V)チャネル情報の表現は変換が必要であるということを詳細に意味する。 依然としてCIE 1931カラースペースをカバーしています。 709の色空間はRecとほとんど同じです。 601と35.9%をカバーしています。 このUHDTVとは対照的に、Rec。 2020ははるかに広い領域をカバーしており、YUV / Y’UV用の独自のマトリックスセットをさらに見ることができます。

BT.709は、これらの重み値を定義します。


BT.709の変換行列と公式は次のとおりです。


ノート
Y ‘(行列の最上行)を計算するために使用される重みは、Y’IQ色空間で使用される重みと同じです。
赤、緑、青の等しい値(つまりグレーのレベル)は、UとVに対して0を生成します。黒、RGB =(0、0、0)は、YUV =(0、0、0)を生成します。 白、RGB =(1,1,1)とすると、YUV =(1,0,0)となる。
これらの式は、従来、アナログテレビや機器で使用されていました。 HDTVやデジタルビデオカメラなどのデジタル機器はY’CbCrを使用します。

数値近似
高速SIMD浮動小数点プロセッサの開発に先立ち、RGB→Y’UVのほとんどのデジタル実装では、整数計算、特に固定小数点近似が使用されていました。 近似とは、使用される数値(入力データ、出力データ、および定数値)の精度が限定されていることを意味します。したがって、一般的に最後の2進数の正確な損失は、そのオプションを一般的なトレードオフ計算速度が向上しました。

以下の例では、演算子 ”  “はaの右シフトをbバイナリ位置で示す。 説明のために、変数は2つの接尾辞文字を使用しています。「u」は符号なし最終表現に使用され、「t」は縮小された中間値に使用されます。 以下の例は、BT.601についてのみ示されています。 同じ原則は、BT.709または他の同等の標準に従うデータに対して許容可能な一致を行う値を使用して機能的に同等の操作を行うために使用できます。

[0,255]のフルレンジ(「フルスイング」または「PCレベル」と呼ばれる)を使用するのではなく、通常、Y ‘値が範囲[16,235](スタジオスイングまたは「TVレベル」と呼ばれる) “)。 このプラクティスは、フィルタリングによる信号オーバーシュート(「リンギング」)に対応するために、SMPTE-125Mで標準化されています。 値235は255-235 = 20、または20 /(235-16)= 9.1%という最大の黒から白へのオーバーシュートに対応し、理論上の最大オーバーシュート(ギブス現象)の約8.9%よりわずかに大きい最大ステップ。 トールームは小さく、わずか16/219 = 7.3%のオーバーシュートしか許されず、これは理論上の最大オーバーシュート8.9%未満である。 これがY ‘に16が追加され、なぜ基本変換のY’係数が255ではなく220になるのですか?正と負のUとVの値は128で合計され、常に正になります。 (これらの範囲は、誤った範囲を使用すると、黒と白がクリッピングされた画像、またはコントラストの低い画像になるため、ビデオ編集や制作では重要です)。

BT.601のスタジオスイング
従来のSDTV / BT.601用のY’UVの従来の「スタジオスイング」8ビット表示を得るには、以下の操作を使用できます。

1. 8ビットRGBから16ビット値への基本変換(Y ‘:符号なし、U / V:符号付き、行列値は、後でY [16.235]のY’範囲とU / V [16..240]の範囲に達する):


2.丸め(「+128」)(Y ‘:符号なし、U / V:符号付き)で8ビットに縮小(「>> 8」)する:


3.値にオフセットを加えて負の値を除去する(すべての結果は8ビット符号なし)。


BT.601のフルスイング
SDTV / BT.601のY’UVの “フルスイング” 8ビット表現を得るために、以下の操作を使用することができます。

1. 8ビットRGBから16ビット値への基本変換(Y ‘:符号なし、U / V:符号付き、各[0..255]の後の所望のY’UV範囲になるように丸められた値)オーバーフローは発生しません)。


2.丸め( “+128″)(Y ‘:符号なし、U / V:符号付き)で8ビット値に縮小( “>> 8″)する:


3.値にオフセットを加えて負の値を除去する(すべての結果は8ビット符号なし)。


ルミナンス/クロミナンスシステム全般

Y’UVやその親族Y’IQやYDbDrなどのルマ/クロマシステムの主な利点は、(主にジョルジュ・ヴァレンシの仕事のために)黒と白のアナログテレビと互換性があることです。 Y ‘チャンネルは、白黒カメラで記録されたすべてのデータを保存するため、古いモノクロディスプレイでの受信に適した信号を生成します。 この場合、UとVは単に破棄されます。 色を表示すると、3つのチャンネルがすべて使用され、元のRGB情報をデコードすることができます。

Y’UVのもう1つの利点は、帯域幅を減らすために情報の一部を破棄できることです。 人間の目は、色に対する空間的感度はほとんどない。輝度チャネルの輝度情報の精度は、他の2つの画像よりもはるかに大きな影響を与える。 この人間の欠点を理解すると、NTSCやPALのような標準では、クロミナンスチャネルの帯域幅が大幅に縮小されます。 (帯域幅は時間領域にありますが、イメージがスキャンされると、空間領域に変換されます)。

したがって、結果として生じるUおよびV信号は、実質的に「圧縮」され得る。 NTSC(Y’IQ)およびPALシステムでは、クロミナンス信号は輝度の信号よりもかなり狭い帯域幅を有していた。 初期のバージョンのNTSCは、同じ画像領域内の特定の色を急速に交互にして人間の目に見えるようにしましたが、現代のアナログやほとんどのデジタルビデオ標準でも、画像の色情報を低解像度で記録することにより、 輝度情報と比較して水平解像度の半分だけが保持され(4:2:2クロマサブサンプリングと呼ばれる)、しばしば垂直解像度もまた半減される(4:2:0を与える)。 4:1:1のクロマサブサンプリング(水平解像度は4倍、垂直解像度は4倍)を使用した、最も早いカラーのNTSC規格のために、4:x:x規格が採用されました。輝度分解能に比べて色分解能が4分の1になります。 今日では、非圧縮信号を処理するハイエンド機器のみが、明るさ情報と色情報の両方について同じ解像度の4:4:4のクロマサブサンプリングを使用しています。

I軸とQ軸は、人間の視覚に必要な帯域幅に応じて選択されました。一方の軸は最も帯域幅を必要とし、もう一方の軸は最小(90度で偶然)です。 しかし、真のIおよびQ復調は、比較的複雑であり、2つのアナログ遅延線を必要とし、NTSC受信機はほとんどそれを使用しなかった。

しかし、この色空間の変換は損失性があります。アナログ機器(デジタル信号を転送するRCAコネクタを含むアナログ、コンポジットビデオであるため、ルマからクロマキャリングワイヤへのクロストーク、特にその逆もあります)。 YUV、YIQ、またはCVBSのいずれかです)。 さらに、NTSCおよびPALは、白黒テレビ機器との下位互換性を維持するために、高帯域幅のクロマ信号およびルマ信号を互いに混ぜ合わせてドットクロールおよびクロスカラーアーチファクトをもたらすような方法でカラー信号を符号化した。 1950年代にNTSC規格が制定されたときには、画像の品質が限られた帯域幅の信号ではなくモニタ装置によって制限されていたため、これは本当の懸案ではありませんでした。 しかし、現代のテレビは、これらの損失信号に含まれるより多くの情報を表示することができる。新しいディスプレイ技術の能力に遅れをとらないために、SCART(1977)やS-Video(1987)コネクタなどの画像転送中にY’UV信号をより多く保存する試みが1970年代後半から行われました。

Y’UVの代わりに、Y’CbCrは、MPEG-2のような(デジタル)共通ビデオ圧縮アルゴリズムの標準フォーマットとして使用されました。 デジタルテレビジョンおよびDVDは、圧縮されたビデオストリームをMPEG-2フォーマットで保存します。これは、確立されたクロマサブサンプリングのプロセスを保持していますが、完全なY’CbCrカラースペースを使用します。 プロのCCIR 601デジタルビデオフォーマットは、従来のアナログビデオ規格との互換性のために、4:2:2の共通クロマサブサンプリングレートでY’CbCrも使用しています。 このストリームは、必要な出力形式に簡単に混合できます。

Y’UVは絶対色空間ではありません。 これはRGB情報をエンコードする方法で、表示される実際の色は信号を表示するために使用される実際のRGB色材に依存します。 したがって、Y’UVとして表される値は、標準RGB着色剤が使用される場合(すなわち、一次色度の固定セット、または赤、緑、および青の特定のセット)の場合にのみ予測可能である。

さらに、RGB(BT.601であろうとRec.709であろうと)の色と輝度の範囲(色域として知られる)は、Y’UVによって許容される色と輝度の範囲よりはるかに小さい。 これは、上記の式が0%を下回る値または100%を非常にはるかに超える値(つまり、値が0より大きい値)を生成する可能性があるため、Y’UV(またはY’CbCr)からRGBに変換するときに、 TVおよびHDコンテンツの場合は標準16-235ルマ範囲(および16-240クロマ範囲)外、PCでは標準画質の場合は0-255の範囲外です)。 これらの値が処理されない限り、通常、影響を受けるチャネルの有効範囲に「クリッピング」されます(つまり、制限されます)。 これは非常に望ましくない色の色相を変化させるので、RGB色域内に入るように不快な色を彩度を落とす方が良いと考えられることが多い。 同様に、あるビット深度のRGBを同じビット深度でYUVに変換すると、いくつかのRGBカラーが同じY’UVカラーになり、情報が失われる可能性があります。

Y’CbCrとの関係
Y’UVは、しばしばYCbCrの用語として使用されます。 ただし、スケールファクタの異なる完全に異なるフォーマットです。

それにもかかわらず、標準的なケースにおけるそれらの間の関係は単純である。 特に、Yチャンネルは両方とも同じで、CbとUの両方が(BY)に比例し、CrとVの両方が(RY)に比例する。

タグ: