ファイヤープロジェクト
動画の符号化技術について
2003-07-20T15:13+09:00   matsu
単純に考えて,静止画に時間の概念が加わればそれが動画である.したがって,動画の符号化技術は静止画の符号化技術の拡張と考えていけばよいだろうか.
静止画では,空間的な圧縮のためにDCT変換を行った.動画ではさらに時間的な圧縮を行う.動き補償である.
動画の二つの時点での画像(フレーム)は似通っていることが多い.よって,ある時点tの画像があれば,t+1の画像はtの画像からの差分があれば再現できる.差分なら通信したり保存したりするデータの量を小さくできる.単純に考えて,ある二つの時点tとt+2dの画像があれば,時点t+dの画像が予測できるはずである.ここで問題になるのは,時点tのある画素がある対象aのYUV情報を保持していたとして,その対象aのYUV情報はt+2dではどの画素で保持されているか,である.これが分からなければ,当然時点t+dでは対象aのYUV情報がどの画素で保持されているかも分からない.すなわち,画像データは単なるYUV情報の羅列であり,それがどんな「意味」(これは手だ,とかこれは木だ,という人間の「解釈」)についての情報は無いということである.そこで,各画素に「動きベクトル値」というデータを埋め込む.これによって,t+dとt+2dで表現している「モノ」の動きがわかる,らしい.
フレームには,動き予測の基準となるフレームと,それから動き予測して生成したフレームとがある.動き予測には,時間的に順方向に予測する順方向予測と,前後のフレームから時間的に双方向に予測する双方向予測がある.
動き予測をするために,以下の三つのフレームが定義されている.
Iフレーム(Intra picture)
動き予測の基準となるフレーム.ランダムアクセス(早送り,逆も度しなど)で表示できるのはIフレームのみである.
Pフレーム(Predictive picture)
他のIフレームやPフレームから順方向予測して生成したフレーム
Bフレーム(Bidirectionally predictive picture)
前後のIフレームやPフレームから双方向予測して生成したフレーム
すなわちフレームの流れは,
IPPPPIPPPPIPPPPIPPPP...
とか
IBBBPBBBPBBBIBBBPBBBPBBBI
などとなる.Bフレームは前後のIフレームやPフレームを受信した後にデコードされ表示されるので,Bフレームの数だけ遅延が生じる.Iフレームから次のIフレームまでの画面の集合をGOP(Group of Pictures)という.
サンプリング周波数を4,動きベクトル値をCnとすると,色分解能力Y:Cr(Cb):Cnには以下のように表現される.
4:4:4
4つの画素に4組ののCr,Cbがある.
4:2:2
4つの画素に2組のCr,Cbがある.
4:2:0
4つの画素に1組のCr,Cbがある.
MPEGでは8x8の画素ブロックを縦横2づつ,合計4つをあわせてマクロブロックで処理をおこなう.
matsu(C)
Since 2002
Mail to matsu