動画像圧縮符号内の動きベクトルの応用 Application of Motion Vector in Video Compression Code
情報工学専攻 高寺 達也
TAKADERA Tatsuya
要約
:
動画像圧縮符号化方式の1
つであるH.264/MPEG-4 AVC
を 取り上げ,符号化される情報を整理し,その内の1
つである動きベク トルの画像解析への応用を検討した.キーワード
:
動画像圧縮符号, H.264/MPEG-4 AVC,
動きベクトル1
序論1.1
背景デジタル映像機器の普及に伴い,映像コンテンツ
(
以下では すべてデジタルコンテンツを対象とする)
の制作は容易にな り,世界中にはすでに相当量の映像コンテンツが蓄積されてい ると思われる.また映像機器の進歩に伴い,映像コンテンツ自 体も高精細になり大容量化している.それらの映像コンテンツは通常,動画像圧縮符号化技術を用 い圧縮され,伝送・蓄積されるが,映像コンテンツの増大,高 精細・大容量化に伴い,圧縮された動画像データを処理・解析 する手間も増す一方である.
1.2
目的本研究は,圧縮された動画像データの加工・解析を動画像圧 縮符号化技術に着目し高速に処理することを目的としている.
通常,動画像データの加工・解析を行うためには,符号化さ れた情報を復号してから解析を行う必要がある
(
加工の場合は 再符号化も必要となる).
高度に圧縮された動画像データほど,その復号や符号化に手間がかかるが,ある種の加工・解析では,
符号化情報を利用することでその手間を省略できるものと考え られる.
本稿では,近年普及が進みつつある動画像圧縮符号化方式
H.264/MPEG-4 AVC
を取り上げ,その符号化される情報の 整理を行うとともに,その中の1
つである動きベクトルについ て,画像解析への応用を検討する.2
動画像圧縮符号化方式[2]
2.1
概要映像コンテンツは,一定時間間隔の静止画像
(
ピクチャ)
の 連なりからなるが,単純にそれら1
枚1
枚の画像を保存し動画 像データとすると,容量面で非効率的である.標 準 テ レ ビ
(SDTV)
を 無 圧 縮 で 伝 送・蓄 積 し た 場 合 ,100Mbps
のFTTH
でも帯域が足りず,4.7GB
のDVD
に は約5
分程度しか記録できない.そこで,何らかの動画像圧縮符号化方式を用い,連続する画 像を圧縮符号化して動画像データとする方法が一般的にとら れる.
近年の動画像圧縮符号化方式は,予測,変換,可変長符号化 という主に
3
つの技術を中心に構成されている.次節以降で,この
3
つの技術について簡単に説明する.2.2
予測予測とは,画素を単位として処理する画素符号化
(pel-based coding)
技術の1
つで,符号化対象の画素値を周囲あるいは前 後から予測し,その予測方法と予測値との差分を符号化する技術である.
画素値を予測する方法はさまざまあり,単純なものには,
隣り合う画素値の差分を符号化する
DPCM(differential pulse code modulation)
や,前のピクチャから次のピクチャを予測す る単純フレーム間予測(simple interframe prediction)
がある.他に,動き補償フレーム間予測
(motion compensated inter- frame prediction)
では,映像の動き情報を利用して前後のピ クチャから符号化対象ピクチャを予測する.その際には,動き 情報を表すための動きベクトル(motion vector)
と画素値の差 分が符号化される.2.3
変換変換とは,複数の画素からなるブロックを単位として処理す るブロック符号化
(block-based coding)
技術の1
つで,画素 値そのものや予測によって生成された差分値に偏りがあること を利用し,それらの値をより圧縮効率を高められる表現形式へ 変換する技術である.代表的なものには,
DCT(discrete cosine transform :
離散 コサイン変換)
がある.自然画では,ある画素値とその周辺の 画素値は似通っていることが多いことから,DCT
を用いて周 波数表現に変換することで,情報の偏りを大きくして圧縮効率 を上げることができる.DCT
で変換した結果はDCT
係数と呼ばれ,DC(direct current :
直流)
成分とAC(alternate current :
交流)
成分か らなる.多くの場合,画素値がなだらかに変化するため,DCT
係数は低周波成分に集中する.2.4
可変長符号化可変長符号化とは,値の出現頻度に応じて長さの異なる符号 を割り当てることで,固定長符号化に比べ,情報を符号化した 際の符号長の総計を減らす技術である.
可変長符号化では値の出現頻度の偏りが大きいほど効率的な 符号化が可能であり,予測や変換によって値を偏らせること は,可変長符号化での効率を上げることにつながる.
2.5
代表的な動画像圧縮符号化方式代表的な動画像圧縮符号化方式を表
1
に示す.特に
H.262 | MPEG-2
は,DVD
への映像記録やBS/CS
・地 上デジタル放送に利用されており一般的な認知度も高く,現在 最も普及している動画像圧縮符号化方式の1
つである.また,最新の動画像圧縮符号化方式への影響も大きく,多くの技術が これを基本としている.
本 研 究 で は ,将 来 性 な ど の 観 点 か ら ,次 章 で 説 明 す る
H.264/MPEG-4 AVC
を研究対象として採用した.3 H.264/MPEG-4 AVC[1]
3.1
概要H.264/MPEG-4 AVC
は,ISO/IEC JTC-1
とITU-T
が合 同チームJVT (Joint Video Team)
を結成し策定した動画像 圧縮符号化標準である.Blu-ray Disc
の映像記録方式として採用され,またワンセグ表
1
代表的な動画像圧縮符号化方式名称 特徴 圧縮率
H.261 ⃝40KBPS 1
〜2Mbps
の 伝 送 速 度 で ,VHS
程度の画像品質 を 実 現⃝ 2
ノ ン・インターレース 方式を採用
1/20
〜1/200
H.262 | MPEG-2
ビデオ⃝4Mbps 1
〜
10Mbps
でSDTV
,15Mbps
〜
30Mbps
でHDTV
品 質 を 実現⃝ 2
ノン・イ ンターレースに 加え,インター レース方式も可 能1/12
〜1/50
H.263 ⃝ 1 H.261
の改良版 で 約
2
倍 の 圧 縮 効 率 を 実 現 .伝 送 速 度 は20kbps
〜2Mbps ⃝ 2
誤 り 耐性の向上が図 られている1/12
〜1/100
MPEG-4
ビジュアル⃝ 1
低伝送速度で オ ブ ジ ェ ク ト 単 位 の 動 画 像 圧 縮 符 号 化 を 実現⃝ 2
インター ネ ッ ト 上 や 携 帯 電 話 の マ ル チ メ デ ィ ア 圧 縮に適用⃝ 3
伝送 速 度 は10kbps
〜
40Mbps
1/20
〜1/200
H.264/MPEG-4 AVC ⃝H.263 1
に比べ2
倍 の 圧 縮 効 率を実現⃝ 2
伝送 速 度 は10kbps
〜
240Mbps
1/20
〜1/100
放送にも利用されるなど,近年急速に普及が進んでいる.
圧縮符号化の基本的な考え方は,現在広く利用されいる
H.262 | MPEG-2
と同様のものであり,また競合技術であるVC-1
とも類似点が多い.最大の特徴は圧縮効率の高さであり,
H.262 | MPEG-2
と比 較して同程度の画質で2
倍程度の圧縮率があるが,符号化・復 号処理にはより手間を要する.2005
年には,HDTV
や業務用向けの高精細・高画質・高精 度符号化に対応すべく,高忠実度化規格(FRExt : Fidelity Range Extensions)
がITU-T
で勧告となった.以 降 で は ,高 忠 実 度 化 規 格 か ら 導 入 さ れ た 要 素 も 含 め
H.264/MPEG-4 AVC
について説明をしていく.3.2
画像フォーマットH.264/MPEG-4 AVC
の符号化処理の対象となる,あるい は復号処理によって出力される画像フォーマットに関して,そ のカラー・フォーマットとインターレース画像の取り扱いにつ いて説明する.3.2.1
カラー・フォーマットH.264/MPEG-4 AVC
では,H.262 | MPEG-2
などの従来の 動画像圧縮符号化方式と同じく,画像信号を輝度信号と2
つの 色差信号に分けて符号化する.輝度信号に対し色差信号の解像度が縦横半分である
4:2:0
が 最も基本的な形式になる.他に,横方向の解像度のみが半分の4:2:2
,輝度信号と色差信号の解像度が同じ4:4:4
,色差信号を 持たないモノクロ(monochrome)
がある.ここで輝度信号・色差信号と呼んでいるものは,
3
刺激色(tri-stimulus colour)
なら特に決まりはなく,よく扱われる輝 度信号Y
と色差信号C
b, C
r で構成されるYC
bC
r の他に,YC
gC
o やRGB
として知られるGBR
などでも良い.本論文では簡単のため,代表して輝度信号を
Y
,2
つの色差 信号をC
b, C
r として記す.3.2.2
インターレース画像H.264/MPEG-4 AVC
では,H.262 | MPEG-2
と同様に,テ レビ信号の画像フォーマットとして広く使われている,画素ラ インごとに交互に時刻の異なる2
つのフィールド信号を並べた インターレース信号を扱える.インターレース画像は,
2
つのフィールドからなり,空間的 に上位に位置するトップ・フィールドと,下位に位置するボト ム・フィールドが交互に並んでいる.インターレース画像を符号化する際には,
2
つのフィール ドをまとめて1
つのフレームとして扱うフレーム・ピクチャ(frame picture)
と,2
つのフィールドを独立した2
つのピク チャとして扱うフィールド・ピクチャ(field picture)
をピク チャ単位に切り替えて符号化できる.フレームに対する符号化がフレーム符号化,同じくフィール ドに対する符号化がフィールド符号化となる.
さらに,
H.264/MPEG-4 AVC
では,フレーム・ピクチャ 中のマクロブロックを縦に2
つ合わせたマクロブロック・ペ アごとに,フレーム符号化とフィールド符号化を選択できるMBAFF
に対応している.ノン・インターレース信号に関しては,フレーム符号化と同 じ扱いになる.
3.3
主要技術H.264/MPEG-4 AVC
では,ピクチャをスライスと呼ばれる 領域に分ける.スライスはマクロブロックと呼ばれる16 × 16
画素の小領域からなり,このスライスとマクロブロックは符号 化の際に1
つの重要な単位となる.それらを踏まえて,
H.264/MPEG-4 AVC
における予測,変 換,可変長符号化の主要技術をまとめる.3.3.1
予測H.264/MPEG-4 AVC
の予測には,大きく2
つ,画面内予測 と動き補償予測が用いられる.画面内予測は,符号化対象ブロックに対し,その近傍の符号 化済みブロックを用いて画素値を予測する手法である.一方,
動き補償予測は,符号化済みピクチャから動き情報を指定して 符号化対象ブロックの画素値を予測する手法である.
■画面内予測
H.264/MPEG-4 AVC
における,輝度の画面 内予測では,マクロブロックを4 × 4
,8 × 8
に分割するか,16 × 16
のマクロブロックそのものを単位として予測する.4 × 4
ブロックの場合,符号化対象マクロブロックの左,上,右上,左上の符号化済みブロックから予測を行い,予測方向な どを表す予測モードは
9
通りある.8 × 8
ブロックの場合も同 様に4
つのブロックから予測を行い,予測モードは9
通りあ る.16 × 16
ブロックの場合は左のマクロブロックと上のマク ロブロックから予測を行い,予測モードは4
通りある.4 × 4
や9 × 8
のブロックに分割した場合,各ブロックの符 号化順序は決められており,各ブロックごとに予測モードを符 号化する.参照するブロックが存在しない条件では,その予測 モードの使用が禁止されているか,他のブロックの画素と同一 と見なすといった方法がとられる.隣接ブロックの予測モード が同じ場合には,続く予測モードは符号化しないその代わり,各ブロックで必ず予測モードが同じかどうかのフラグを符号化 する.
16 × 16
画素の場合,予測モードはマクロブロック・タイプ として符号化される.色差の画面内予測では,マクロブロック中に含まれる色差の サイズで予測を行い,予測モードは
4
通りある.色差の予測モードは輝度信号の予測モードと独立して選択で き,
2
つの色差それぞれに対して予測モードを符号化する.■動き補償予測
H.264/MPEG-4 AVC
の動き補償予測では,マクロブロックを
16 × 16
,16 × 8
,8 × 16
,8 × 8
,8 × 4
,4 × 8
,4 × 4
のブロックに適応的に分割し予測を行う,可変動き補償 予測が用いられ,各ブロックごと(ただし,最小で8 × 8
ブ ロックごと)に参照ピクチャを示す参照インデックスを符号化 し,全てのブロックに対して動きベクトルを符号化する.H.264/MPEG-4 AVC
では,1/4
画素精度での動き補償が行 われ,6
タップFIR
フィルタによって1/2
画素精度の,2
タッ プ平均値フィルタによって1/4
画素精度の予測信号が生成さ れる.参照ピクチャはブロックごとに異なってもよく,
P
スライス では,各ブロックに対して最大で1
つ参照ピクチャを指定で き,B
スライスでは,各ブロックに対して最大で2
つ参照ピク チャを指定できる.動きベクトルに対しても予測が行われれ,左,上,右上の動 きベクトルから中央値をとってその差分が符号化される.予測 された動きベクトルと符号化する動きベクトルが等しい場合,
スキップト・マクロブロックとして,スキップトであることを 示す以外の情報を符号化しないことができる.
この他に
B
スライスでは,参照ピクチャリストを2
つ持 ち,参照ピクチャL0
のみを使用するL0
予測,参照ピクチャL1
のみを使用するL1
予測,その両方を使用する双予測(Bi- prediction)
,そして,動き情報を参照ピクチャの動き情報か ら生成するダイレクト予測,という4
つの予測モードがある.さらに,ダイレクト予測には
2
種類のモードがあり,時間方 向の動きの相関を利用する時間ダイレクト・モードと,空間方 向の動きの相関を利用する空間ダイレクト・モードがある.ダ イレクト予測では動き情報が予測のみで生成できるため,動き ベクトルを符号化する必要はない.さらに,
H.264/MPEG-4 AVC
では動き補償予測に対して,参照ピクチャから予測信号を生成する際に重み付けを行う重み 付き予測が可能である.
3.3.2
変換H.264/MPEG-4 AVC
の変換には,整数精度DCT
と離散 アダマール変換(DHT)
が用いられる.マクロブロックを
4 × 4
または8 × 8
画素単位に分けて,整 数精度DCT
で変換し,直流成分はさらにそれらのみを集めてDHT
で変換する.表
2 NAL
ユニットの種類識別子 内容
1 · · · 5
各種ピクチャのスライス6 SEI (Supplemental Enhancement Information) 7 SPS (Sequence Parameter Set)
8 PPS (Picture Parameter Set)
従 来 は 実 数
DCT
が 用 い ら れ て い た が ,H.264/MPEG-4 AVC
で は 整 数 精 度DCT
に な り ,デ コーダの復号結果が一致するようになった.3.3.3
エントロピー符号化変換後の
DCT
係数値などにはCAVLC
やCABAC
が使わ れ,その他のシンタックス要素には指数ゴロム符号などが使わ れる.エントロピー符号化には,指数ゴロム符号,CAVLC
,CABAC
が中心に用いられる.■指数ゴロム符号 指数ゴロム符号
(Exp-Golomb codes)
は,プレフィクス
+
セパレータ+
サフィックス からなる符号で,セパレータが現れるまで続くプレフィクスの符号長と同じ長さ のサフィックスがあり,そのサフィックスの値が符号番号と なる.
符号番号は,そのものを値とする場合と,符号付き値にマッ ピングする場合,あるいは直接シンタックス要素の値にマッピ ングする場合などがある.
■
CAVLC CAVLC (context-adaptive variable length cod- ing :
コンテキスト適応型可変長符号化)
は,量子化しされたDCT
係数値の符号化にのみ用いられる.変換係数をジグザグ・スキャンによって
1
次元ベクトルとし た後,係数値やランなど復号に必要な情報を符号化する際に,いくつかの
VLC
テーブルを適応的に選択し符号化する.■
CABAC CABAC (context-adaptive binary arithmetic coding :
コンテキスト適応型2
値算術符号化)
は,2
値算 術符号化器と,シンタックス要素を2
値信号に変換する2
値化 部,そして2
値信号の発生確率を計算・更新するコンテキスト 計算部で構成される.シンタックス要素の
2
値化にもさまざまあり,シンタックス 要素に応じてどの2
値化方法をとるかが決められている.3.4
ビット・ストリームの構成3.4.1 NAL
ユニットH.264/MPEG-4 AVC
で 符 号 化 さ れ た ビ ッ ト 列 は ,NAL (Network Abstraction Layer)
ユニットと呼ばれる単位でまと められ,これは伝送・蓄積するための下位システムにマッピン グする単位となる.NAL
ユニットは,ピクチャのスライス情報を持つVCL (Video Coding Layer) NAL
ユニットと,それ以外の符号化に かかわる情報を持つ非VCL NAL
ユニットとに大別できる.NAL
ユニットの種類には主要なものに表2
にあげるものが あり,NAL
ユニットのヘッダには種類を表す識別子が収めら れている.このうち,
SPS
とPPS
には,一連のピクチャをまとめた シーケンスレベル,あるいはピクチャレベルでの符号化にかか わる情報が含まれている.ゆえに,復号に際しても重要な役割 を果たす.一方,
VCL NAL
ユニットに相当する識別子1 · · · 5
のNAL
ユニットには,画素値や差分値を変換・符号化したものと,ブ ロックサイズや予測に用いられる各種パラメータが含まれてい る.この中には,本研究で応用を検討する動きベクトルも含まれる.
3.4.2
アクセス・ユニットアクセス・ユニットは,ビット・ストリームにおいてピク チャ単位にアクセスできるよう,いくつかの
NAL
ユニットを まとめたものである.アクセス・ユニットにおける
NAL
ユニットの並び順には制 限があり,必ず存在するNAL
ユニットは,主ピクチャのスラ イスを持つNAL
ユニットのみである.アクセス・ユニットの境界は,パラメータを見極めることで 判断できるが,必要があれば,アクセス・ユニットの先頭にア クセス・ユニット・デリミタを置き,境界を明示することがで きる.下位システムがアクセス・ユニットを識別する仕組みを 持たない場合には特に有効である.
3.4.3
システム多重化H.264/MPEG-4 AVC
の ビ ッ ト・ス ト リ ー ム は 通 常 ,MPEG-2
システム,MP4
ファイル・フォーマット,RTP(Real- time Transport Protocol)
などによって,必要な付加情報が加 えられシステム多重化される.4
動きベクトルの応用4.1
概要H.264/MPEG-4 AVC
によって符号化される情報の中には,符号化前には直接得られない情報が含まれている.その中でも 特に動きベクトルに注目し,画像解析への応用を検討する.
4.2
動きベクトル動き補償予測では,マクロブロックを
16 × 16
から4 × 4
ま での可変サイズで分けて,各ブロックごとに相対的な参照位置 を示す動きベクトルを符号化する.参照するピクチャはマク ロブロックごとあるいはサブマクロブロックごとに符号化さ れる.H.264/MPEG-4 AVC
における動き補償予測は1/4
画素 精度で行われる.動きベクトルの水平成分が取り得る範囲は[ − 2048, 2047.75] (
単位は画素)
であり,動きベクトルの垂直成 分が取り得る範囲は,デコーダの性能を規定する各レベルご とに限界が定められており,最大で[ − 512, 511.75] (
同上)
で ある.動きベクトルの符号化には,動きベクトルに対する予測も用 いられる.隣接する符号化済みブロックの中央値を予測値とし て,求めた動きベクトルとの差分を符号化する.
また,予測値をそのまま動きベクトルとして扱うダイレク ト・モードと呼ばれる予測方法もある.この場合,動きベクト ルはいっさい符号化されない.ダイレクトモードには,時間ダ イレクト・モードと空間ダイレクト・モードがあり,いずれの 場合でも,表示順序で後方にある最も近い参照ピクチャをアン カー・ピクチャとして,符号化対象ブロックと同位置にあるア ンカー・ピクチャのアンカー・ブロックの動きベクトルを利用 する.
4.3
画像解析への応用符号化時に動きベクトルを決定するときは,一般的に符号化 対象マクロブロックの近傍から探索を行い決定する手法が用い られる.そのため,動きベクトルはおおよそ映像の動きを表し ていると考えられる.この仮定の下に,動きベクトルの画像解 析への応用を検討する.
特に,映像自身の動きが緩やかである場合,動きベクトルは オプティカルフローの代替として使える可能性がある.動画像 圧縮符号化に用いられる動きベクトル検出法は,オプティカル
フローのブロックマッチングに近く,符号内の動きベクトル情 報を代わりに利用できれば,復号・解析の手間を省くことがで きると考えられる.
また,固定カメラから取られた映像コンテンツの場合,動き ベクトルを移動体検出に利用できると考えられる.カメラ側が 映像をあらかじめ符号化して伝送する場合には,その復号・解 析の手間を省くことができる.他にも,固定カメラで長時間録 画された中から,映像の変化が大きい部分をピックアップする ことにも応用できると考えられる.
4.4
問題点動画像圧縮符号内の動きベクトルを画像解析に応用するには いくらか問題点がある.
まず,動きベクトルはすべてのピクチャに必ず存在するわけ ではない.動きベクトルは動き補償予測が用いられるマクロブ ロックにのみ存在する.
H.264/MPEG-4 AVC
では,ある程 度の間隔ごとにIDR (Instantaneous Decoding Refresh)
ピク チャがあり,IDR
ピクチャは画面内符号化のみで構成される ため,ある程度の間隔ごとに動きベクトルがまったく検出され ないピクチャが存在することになる.また,
H.264/MPEG-4 AVC
では,動き補償予測を基本と するスライスに画面内予測を取り入れることができ,マクロブ ロックによっては動きベクトルが存在しないものもある.さらに,根本的な問題になるが,動画像圧縮符号化方式は符 号に対する制約を定めているだけで,どのような手法で符号化 するかは完全にエンコーダ依存であり,動きベクトルが目的に 則したものであるという保証はない.
しかしながら,動きベクトルの応用が実用的に有効かどうか は,さまざまなソースで実験し,その相関を調べる必要がある.
5
まとめ近 年 の 実 用 的 な 動 画 像 圧 縮 符 号 化 方 式 ,特 に
H.264/MPEG-4 AVC
について符号化情報をまとめ,動きベ クトルの画像解析への応用を検討し,実験のためのプログラム を作成した.今後は,実際の動画像データを数多く解析しどの 程度の有用性があるのかを検証していく必要がある.謝辞
本研究を進めるにあたり研究室の同輩
,
後輩にはお世話に なった.
ここに記して感謝の意を表す.
参考文献