ピクセルあたりのビット数(bpp)の概念
デジタル画像のすべてのカラーピクセルは、赤、緑、青の 3 原色の組み合わせによって生成されます。各原色はしばしば「カラーチャンネル」または「カラーコンポーネント」と呼ばれ、そのbit深度で指定された強度値の範囲を持っています。各原色のbit深度は「チャンネルあたりのビット数」と呼ばれ、一般的には 8 ビットから 16 ビットの範囲です。ピクセルあたりのビット数」(bpp)とは、「カラーチャンネルあたりのビット数」の合計、すなわちピクセルの色情報をコード化するのに必要な総ビット数のことです。
1 色あたり 8 ビットのbit深度の非圧縮RGB画像は、1 ピクセルあたり 24 bpp または 24 ビット(赤は 8 ビット、緑は 8 ビット、青は 8 ビット)となります。
色信号の基本となるRGB
異なる強度を持つ原色を組み合わせて、他のすべての色を生成することが可能です。RGB (Red, Green Blue) フォーマットでは、ピクセルの情報を 3 つの値に分割することを提案しています:1つを赤強度コード、もう1つを緑、そして最後に青。RGBビデオストリームの各画像は、実際には3つのサブ画像の合計であり、スクリーン上の各ピクセルは3つのサブピクセルで構成されています。
そのため、パネルには赤、緑、青の画像が同時に表示され、人間の目はそれを「色が詰まった画像」と解釈します。このように、各サブピクセルの強度を変化させることで、RGBカラーの大きなパレットを再現することができます。
信号分離輝度とクロミナンスのYCbCr
カラーテレビの登場により、歴史的な輝度(白黒)信号にクロミナンス(色)情報を1つの信号に加える必要が出てきました。
YCbCrは画像を3つの成分に分割しています。
- Y=白黒画像(輝度)
- U/Cb=青/緑の画像(Y-青で得られるクロミナンス)
- V/Cr=黄色/赤色の画像(Y-赤色で得られるクロミナンス)
デジタルの世界では、RGB画像をYCbCrカラーフォーマットに変換するために、リバーシブル(RCT)または非リバーシブル(ICT)カラートランスフォームを使用することができ、その逆もまた同様です。
クロマサブサンプリングで帯域幅を削減
ほとんどの映像信号は、輝度とクロミナンスを分離しています。人間の目は色(クロミナンス)よりも白黒(輝度)の方がはるかに敏感であることが確立されています。帯域幅を節約するために、視聴者に見えないカラー情報を減らしてはどうでしょうか?
最終的な画像の各ピクセルは、実際には3つの成分から再構成されます。Y、Cb、Crの3つの成分から再構成されます。クロマサブサンプリングは、実際の圧縮を導入することなく、CbとCrの色成分の解像度を下げることで構成されています。輝度(Y)は変化せず、人間の目に映る主な情報であるため、自然なコンテンツでは非常に印象的な結果を得ることができます。適切なダウンサンプリングフォーマットを使用している場合は、サブサンプリングされた画像とオリジナル画像の違いを見ることができないことがよくあります。
サンプリング構造は、8ピクセル(4x2)のマトリックス上の3つの数字で定義されています。最初の桁は行ごとの輝度サンプル数(Y)、2番目はピクセルの1行目のクロミナンスサンプル数(Cb / Cr)、3番目はピクセルの2行目のクロミナンスサンプル数(Cb / Cr)を表しています。
The4:4:4フォーマットは、raw 形式に対応しており、圧縮、サブサンプリング、品質の低下はありません。最終的な画像の各ピクセルは、Yの輝度ピクセル、Cbのクロミナンスピクセル、Crのクロミナンスピクセル(RGBの場合は赤ピクセル、緑ピクセル、青ピクセル)から生成されます。この構成では、RGB信号とYCbCr信号の違いはありません。この構成は、ProAVやコンピューターディスプレイだけでなく、映画のプロの世界でも使用されています。帯域幅が非常に広いため、かなりのコストがかかります。
4:2:2フォーマットでは、クロマの水平解像度が半分になります。つまり、2つの画素の最終レンダリングに同じCb色が使われます(Cr色も同じ)。処理能力が33%低下し、肉眼では見えないほどの差があるため、テレビの世界ではこのフォーマットが主流となっています。
4:2:0フォーマットは、一般的に使用されているサブサンプリングです。テレビ番組、映画、ビデオゲーム、ビデオストリーミング...。この場合、カラー画像(CbとCr)は、水平方向と垂直方向の解像度が2で割られています。
ここでは、4:4:4と比較して帯域幅が50%削減されています。人間の目は色よりも光に敏感なので、4:2:0であっても視覚的品質は優れています。
クロマサブサンプリングとは、例えば4:4:4フォーマットから4:2:2フォーマットに変更することで、実際には圧縮せずに1ピクセルあたりのビット数(bpp)を減らす効果があることを意味します。 つまり、4:4:4フォーマットの場合は 24bpp(3色×8ビット)であるのに対し 16bpp (2色×8ビット)で済むことになります。
1 秒あたりのビット数 (Mbps) を計算するには? 何ビット/ピクセル(bpp)を持っていますか? ビデオビットレートは何ですか?
Mbps=解像度(ピクセル)×フレーム(数/秒)× bpp
ビデオ ストリームのサイズを計算する方法を理解するために、いくつかの例を見てみましょう。
例:4K@24fps 444 8ビット非圧縮
解像度 : 4K = 3840 x 2160 = 8 294 400 ピクセル
ブランキングありの解像度 : 4K = 4400 x 2250 = 9 900 000 ピクセル
フレーム/秒(fps) : 24
フォーマット:444 8bit = 24 bpp (3色×8ビット=8+8+8)
9,900,000ピクセル×24fps×24bpp=5,702 400,000bps=5,702 Mbps=5,7Gbps
例:4K@60fps 444 8ビット非圧縮
解像度 : 4K = 3840 x 2160 = 8 294 400 ピクセル
ブランキングありの解像度 : 4K = 4400 x 2250 = 9 900 000 ピクセル
フレーム/秒(fps) : 60
フォーマット:444 8bit=24bpp(3色×8bits= 8+8+8)
9,900,000ピクセル×60fps×24bpp=14 256000 bps =14 256 Mbps=14,2Gbps
例:フル HD@24fps 444 8ビット非圧縮
解像度 : FHD = 1920 x 1080 = 2 073 600 ピクセル=1920 x 1080 = 2 073 600 ピクセル
ブランキングありの解像度 :FHD = 2200 x 1125 = 2 475 000 ピクセル
フレーム/秒(fps) : 24
フォーマット:444 8bit=24bpp(3色×8bits = 8+8+8)
2,475,000ピクセル×24fps×24bpp=1,425 600,000bps=1,425 Mbps=1,4Gbps
例:4K@60fps 422 8bit非圧縮
解像度 : 4K = 3840 x 2160 = 8 294 400 ピクセル
ブランキングあり解像度 : 4K = 4400 x 2 250 = 9 900,000 ピクセル
フレーム/秒(fps) : 60
Format : 422 8bit = 16 bpp (3 colors with 4:2:2 sub-sampling = 8bits + 4bits +4bits)
9,900,000ピクセル×60fps×16bpp=9,504 000 000=9,504 Mbps = 9,5Gbps
ここでは、4K60-4:4:4フォーマットから4K60-4:2:2フォーマットにすることで、Mbpsが減少(約33%)しており、これはサブサンプリングのおかげであることがわかります。圧縮アルゴリズムは適用していません。
圧縮のおかげで"bpp"が減りました!
共有されるデータ、特に動画の数は大幅に増加しています。SD、HDから4K、8Kへと移行し、進化を続けています:
フレームレートが高く、解像度が高く、精度が高く、ダイナミックレンジが高い(HDR)ため、ネットワーク上で伝送されるデータ量が大幅に増加しています。
圧縮技術は、既存のデバイスやインフラストラクチャを使用して、限られた帯域幅でより多くのピクセル、より多くの品質を管理するのに役立ちます。
簡単な例です:標準的なCAT5Eイーサネットケーブルは、簡単に1Gbpsの伝送が可能です。 しかし、非圧縮ビデオは4Kで10~16Gbpsに達することがよくあります。.HDストリーム(720p)はCAT5Eで伝送できますが、4K伝送が必要になるとすぐに, 圧縮が要求されます! intoPIXのコーデックはbppを1.5に下げると、4Kを1Gbps以下の746 Mbpsで伝送することができます。
Discover the intoPIX Video Compression Calculator !
Our Video Compression Calculator is built to help you compute the compression rate you need. You can use it for any application and any codec.
Select your video format parameters, and determine the compression rate required to transport your video stream. This can even help you configure your compression rate with any intoPIX IP-cores or Fast SDK.