動画圧縮のしくみ
DESCRIPTION
2009.5.29動画技術勉強会@ESM石川さんの分の資料を代理公開TRANSCRIPT
JPEGに似ている
› (注)かなり簡略しています
動き補償IDCTVLD 逆量子化
フレーム間で差分を取る
› 時間的に順方向だけでなく逆方向、両方向もある。天野さんの資料参照
フレーム間で動きを検出する
› 動きベクトルの検索精度(範囲、正確性)が画質に影響を与える
フレーム間で発生符号量を制御する
› ビットレート制御(CBR/VBR)
ちょっと複雑
› これでもかなり簡略化してあります
画質へのインパクトがある部分だけ後述
動き予測 DCT 量子化 VLC
逆量子化IDCT動き補償
動き予測 DCT 量子化 VLC
逆量子化IDCT動き補償
352 156 -55 42 7 -5 0 0
134 -75 39 -10 4 -1 -3 0
80 -31 11 4 2 0 0 0
28 15 -2 1 2 1 0 0
17 2 -1 1 -1 0 0 0
1 2 0 0 0 0 0 0
3 1 -1 0 0 0 0 0
0 0 0 0 0 0 0 0
動き予測 DCT 量子化 VLC
逆量子化IDCT動き補償
35 15 -5 40 0 0 0 0
13 -7 3 -1 0 0 0 0
8 -3 1 0 0 0 0 0
2 1 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
10で除算
圧縮率が高い=量子化がんばりすぎ
ちなみにBitmap(24bit)だと 298,116 Bytes
3,087 Bytes 166,063 Bytes
フレーム内符号量割り当て› 注視部分に多くのデータ量を割り当てる 画面中央部
ゆっくり移動する物体
フレーム間符号量割り当て› ピクチャタイプごとに割り当てるデータ量を調整する キーフレームは多め
› VBRは調整の幅が広い 瞬間的なら多めに割り当てることが可能
MPEG2 4Mbps CBR
MPEG2 2Mbps CBR
MPEG2 2Mbps VBR
MPEG4AVC 2Mbps VBR
MPEG2 2Mbps CBR
MPEG2 2Mbps VBR
MPEG4AVC 2Mbps VBR
MPEG2 4Mbps CBR
2MbpsCBR 2MbpsVBR
4MbpsCBR
今のVBR動画は「2パス」で作成しています
2パスって?
1パス目で仮符号化処理を行う
› 画面内の発生符号量分布
› シーンごとの発生符号量分布
2パス目で実際の符号化処理を行う
› 1パス目で得られた分布に基づき符号量制御
MPEG2より高画質な理由は、› 可変ブロックサイズ 誤差の少ない動き予測が可能
› 周波数変換部が整数演算 Enc/Dec間で誤差がなくなる
› 参照フレームの選択 予測誤差の少ないフレームが選択できる
› 1/4画素予測› イントラ予測 キーフレームもフレーム内予測を行い発生符号量削減
› 算術符号化 ハフマン符号化より演算量が多いが符号化効率が良い
› デブロッキングフィルタ ブロックの境界を平滑化しノイズを抑制する
MPEG2 2Mbps CBR
気になる
同じ圧縮方式ならビットレートで画質が決まる
› MPEG2 2Mbps CBR < MPEG2 4Mbps CBR
符号量の割り当てを最適化することで画質が向上する
› MPEG2 2Mbps CBR < MPEG2 2Mbps VBR
MPEG4AVCはBlu-rayが枯れる頃まで戦えそう
› MPEG2 4Mbps CBR ≒ MPEG4AVC 2Mbps VBR
つまり
アイが全てではない
MPEG2 2Mbps CBR MPEG2 2Mbps VBR
MPEG4AVC 2Mbps VBR MPEG2 4Mbps CBR
1990 1992 1994 1996 1999
H.261 MPEG1
MPEG2
H.263
MPEG4
bitrate
H.261
› ISDN用TV電話向け
› メインターゲットはQCIF(176x144)、64kbps
H.263
› H.261より符号化効率を向上させた
半画素予測、PBフレーム、三次元VLC等
H.263 Ver.2
› H.263の拡張規格
MPEG(Moving Picture Experts Group)1› 蓄積媒体に記録する用途向け
› メインターゲットはSIF(352x240)、1.5Mbps
› H.261より符号化効率、ランダムアクセス性の向上 Bピクチャ、GOP構造、半画素予測等
MPEG2› インターレス画像を効率的に符号化する フィールド構造、フィールド予測
› プロファイルとレベルによる複数のサブセットあり MP@ML(DVD:720x480)
MP@HL(BS Digital:1920x1080)
MPEG4
› 超低ビットレートからスタジオレベルまでをカバー
› H.263のベースライン規格を包含する
› プロファイルとレベルによる複数のサブセットあり
› H.263を基に符号化効率、エラー耐性を向上
オブジェクト符号化、R-VLC等
GOP GOP GOP GOP GOPシーケンス層
I P B B P B BGOP層
Y Y
Y Y
Cr Cb
スライス層
マクロブロック層