YUV色空間の仕組み
RGB値の算出
YUVデータを生成するには、事前にセンサーの生データからRGB値を算出しておく必要があります。
RGB変換
RGB変換では、専用のアルゴリズムを使用して各画素のRGB値を算出します。もちろん、緑のフィルターからは緑の色情報しか得られませんが、周辺にある赤と青の画素に基づいて補間処理を行えば、3色すべての情報を生成することができます。なお、処理の時間・精度、色忠実性(現実世界の色との違い)は、アルゴリズムの種類によって異なります。
一方、RGB変換にはデメリットもあり、変換前に1ピクセル当たり8ビットであったデータ量が、変換後は赤・青・緑の色情報が加わることで、1ピクセル当たり24ビットにまで増大してしまいます。
YUV変換
RGBデータをYUVデータへ変換すると、輝度を示すY値と色差を示すU値、V値が生成されます。
YUV 4:4:4
RGBデータからYUVデータへの変換は、線形変換であるため、データロスがなく、カメラなどのハードウェアの影響も受けません。一般的な変換式は、以下の通りです。
Y=0.299 R+0.587 G+0.114 B
U=0.493×(B-Y)
V=0.877×(R-Y)
上記の変換式の係数は、センサーのダイナミックレンジによって多少異なります。各カメラモデルの仕様については、製品ドキュメントをご覧ください。
なお、信号に含まれるY値、U値、V値の比率が4:4:4になることから、この変換形式は「YUV 4:4:4」と呼ばれることもあります。
YUV 4:2:2
YUV 4:4:4以外の変換形式として、2ピクセルごとに色情報を読み取ることで、1ピクセル当たりのデータ量を24ビットから16ビットに削減する「YUV 4:2:2」も非常に一般的です。人間の目は色の変化に鈍感で、色情報が減少しても画質に大きな変化はありませんが、それでもデータロスは発生するため、注意が必要です。
Baslerカラーカメラには、高度な変換アルゴリズムが内蔵されており、センサーの生データ、高画質のYUV 4:2:2データはもちろん、一部モデルはRGBデータ、BGRデータの出力にも対応しています。なお、YUV 4:2:2データのビット深度は8~24ビット(平均16ビット)となります。
詳細情報
Baslerカメラの詳細や画像形式については、製品ドキュメントをご覧ください。