マクロブロック (英語: Macroblock, 略称: MB) とは、線形ブロック変換(通常は離散コサイン変換)に基づく画像及びビデオ圧縮形式の処理単位である[注釈 1]

マクロブロック(赤と青の枠線のこと)

マクロブロックは通常、16×16MBで構成し、変換ブロックにさらに分割し、予測されるブロックにさらに細分化される場合があること。

またマクロブロックに基づく形式はMUCブロックと呼ばれるJPEGH.261MPEG-1 Part2H.262/MPEG-2 Part2H.263MPEG-4 Part2H.264/MPEG-4 AVC[1][2][3][4]が含まれる。

H.265/HEVCでは、基本的な処理単位であるマクロブロックがコーディングツリーユニットに置き換えられている[5]

技術的な詳細

編集

ブロックの変換

編集

マクロブロックは、離散コサイン変換などの線形ブロック変換への入力として機能する変換ブロックに分割される。

マクロブロックを使用する最初のビデオ コーデックである H.261 での変換ブロックでは、8×8 サンプルの固定サイズを持つ。

4:2:0の彩度サンプリングYCbCr色空間では、16×16MBは16×16輝度(Y) サンプルと8×8彩度(Cb及びCr)サンプルで構成する。

これらのサンプルは4つのYブロック、1つのCbブロック及び1つのCrブロックに分割される。

この設計は、JPEGMPEG-1 Part 2H.262/MPEG-2 Part 2など、変換ブロックサイズが固定されている他のほとんどのマクロブロックベースのビデオコーデックでも使用される。

4:0:0、4:2:2、または4:4:4などのフォーマットでは、マクロブロック内のクロマサンプルの数が増減し、それに応じてクロマサンプルのブロックのグループ化が異なる。

H.263H.264/AVCなどの最新のマクロブロックベースのビデオコーディング標準では、変換ブロックは8×8サンプル以外のサイズに変更することが可能となる。

例として、H.264/AVCメインプロファイルでは、変換ブロックサイズは4×4である。

H.264/AVCハイプロファイルでは、変換ブロックサイズは4×4または8×8のいずれかであり、マクロブロックごとに調整される。

予測ブロック

編集

変換ブロックへの分割とは異なり、マクロブロックは予測ブロックに分割が可能。

H.261MPEG-1 Part 2H.262/MPEG-2 Part 2などの初期の規格では、動き補償はマクロブロックごとに1つの動きベクトルで実行される。

同様に、イントラ予測マクロブロック、隣接ブロックにのエッジから外接することによってサンプルが予測され、予想される方向はパーティションごとに指定される。

H.264/AVCでは、予測パーティションサイズはインター予測(動き補償)とイントラ予測の両方で4×から16×16サンプルの範囲である。

ビットストリーム表現

編集

動き補償変換符号化を使用するビデオコーデックでのマクロブロックの可能なビットストリーム表現を以下に示す。

H.261で使用される形式に類似している。

+------+------+-------+--------+-----+----+----+--------+
| ADDR | TYPE | QUANT | VECTOR | CBP | b0 | b1 | ... b5 |
+------+------+-------+--------+-----+----+----+--------+

説明

編集
  • ADDR:イメージ内のブロックのアドレス
  • TYPE:マクロブロックにのタイプを識別する(フレーム内、フレーム間双方向フレーム間)
  • QUANT:量子化を変換させる量子化値
  • VECTER:モーションベクトル
  • CBP:コード化されたブロックパターン。これは、どのブロック係数が存在するかを示すビットマスクである。
  • bN:ブロック(4Y,1Cr,1Cb)

マクロブロッキング

編集

マクロブロッキングとは、一般に、ブロックコーディングアーティファクトを指すために使用される。

脚注

編集

注釈

編集
  1. ^ 「ブロック変換」または「ブロック」とは映像内のブロックのことを指す。

出典

編集
  1. ^ H.261 : Video codec for audiovisual services at p x 64 kbit/s”. www.itu.int. 2022年11月18日閲覧。
  2. ^ ITU-T (February 2012). “Advanced video coding for generic audiovisual services”. 2013年4月28日閲覧。
  3. ^ ITU-T (January 2005). “Video coding for low bit rate communication”. 2013年4月28日閲覧。
  4. ^ ITU-T (April 2013). “Information technology — Generic coding of moving pictures and associated audio information: Video”. 2013年4月28日閲覧。
  5. ^ G.J. Sullivan; J.-R. Ohm; W.-J. Han; T. Wiegand (2012年5月25日). “Overview of the High Efficiency Video Coding (HEVC) Standard” (PDF). IEEE Transactions on Circuits and Systems for Video Technology. http://iphome.hhi.de/wiegand/assets/pdfs/2012_12_IEEE-HEVC-Overview.pdf 2013年4月26日閲覧。 

関連項目

編集