(57)【特許請求の範囲】
【請求項１】
小数精度の動き補償型画面間予測を用いる映像符号化方法において，
符号化または予測の単位となるブロックごとに符号化情報を取得するステップと，
得られた符号化情報からブロック単位で領域分類を行うステップと，
領域分類の結果から，水平方向もしくは垂直方向またはその双方の領域分割線を移動させて，特定の前記領域分類に属するブロックの密度が所定の閾値以上となる領域分割線を決定する領域分割再定義処理を実施するステップと，
前記領域分割線によって分割された分割領域ごとに小数精度画素の補間方法を切り替えるステップと，
前記分割領域単位で小数精度画素の補間を実行するステップと，
補間された画像を対象とする小数精度の動き補償型画面間予測を用いて画像を符号化するステップと，
領域分割に関する情報を符号化するステップとを有する
ことを特徴とする映像符号化方法。
【請求項２】
請求項１に記載の映像符号化方法において，
前記小数精度画素の補間方法を切り替えるステップでは，
事前に定義された複数の固定補間フィルタ係数のセットの中から１つのインデックスを選択し，インデックスが示す固定補間フィルタ係数のセットごとに，処理対象領域に対するレート歪みコストを算出して，そのコストを格納するステップと，
与えられた固定補間フィルタ係数セットに対するインデックスを全て試行して最小のコストを実現する固定補間フィルタ係数セットを算出し，その固定補間フィルタ係数セットに対するインデックスを符号化するステップとを有する
ことを特徴とする映像符号化方法。
【請求項３】
請求項２に記載の映像符号化方法において，
固定補間フィルタ係数を切り替えると同時に，補間処理に用いる輝度信号のオフセット成分を前記分割領域単位で計算するステップと，
求めたオフセットを当該分割領域に適用して符号化を実施するステップと，
求めたオフセット情報を符号化するステップとを有する
ことを特徴とする映像符号化方法。
【請求項４】
請求項２または請求項３に記載の映像符号化方法において，
前記小数精度画素の補間方法を切り替えるステップでは，
符号化済みフレームの情報を収集するステップと，
前記固定補間フィルタ係数セットに対するインデックスの生起確率を計算するステップと，
得られた確率に基づいて，インデックスの符号化時に符号語を選択して割り当てるステップとを有する
ことを特徴とする映像符号化方法。
【請求項５】
小数精度の動き補償型画面間予測を用いる映像復号方法において，
符号化データから領域分割に関する情報を復号するステップと，
符号化データを復号して得られた符号化情報からブロック単位で領域分類を行うステップと，
領域分類の結果から，水平方向もしくは垂直方向またはその双方の領域分割線を移動させて，特定の前記領域分類に属するブロックの密度が所定の閾値以上となる領域分割線を決定する領域分割再定義処理を実施するステップと，
前記領域分割線によって分割された分割領域ごとに小数精度画素の補間方法を切り替えるステップと，
前記分割領域単位で小数精度画素の補間を実行するステップと，
補間された画像を対象とする小数精度の動き補償型画面間予測を用いて画像を復号するステップとを有する
ことを特徴とする映像復号方法。
【請求項６】
請求項５に記載の映像復号方法において，
前記小数精度画素の補間方法を切り替えるステップでは，
固定補間フィルタ係数セットのインデックスを復号し，得られたインデックスから対応する固定補間フィルタ係数セットを用いて補間を行うステップを有する
ことを特徴とする映像復号方法。
【請求項７】
請求項６に記載の映像復号方法において，
固定補間フィルタ係数を切り替えると同時に，補間処理に用いる輝度信号のオフセット成分を領域単位で復号して適用し，補間を実行するステップを有する
ことを特徴とする映像復号方法。
【請求項８】
請求項６または請求項７に記載の映像復号方法において，
前記小数精度画素の補間方法を切り替えるステップでは，
復号済みフレームの情報を収集するステップと，
固定補間フィルタ係数セットのインデックスの生起確率を計算するステップと，
得られた確率に基づいて，インデックスの復号時にインデックスに対する符号語を選択するステップとを有する
ことを特徴とする映像復号方法。
【請求項９】
小数精度の動き補償型画面間予測を用いる映像符号化装置において，
符号化または予測の単位となるブロックごとに符号化情報を取得する手段と，
得られた符号化情報からブロック単位で領域分類を行う手段と，
領域分類の結果から，水平方向もしくは垂直方向またはその双方の領域分割線を移動させて，特定の前記領域分類に属するブロックの密度が所定の閾値以上となる領域分割線を決定する領域分割再定義処理を実施する手段と，
前記領域分割線によって分割された分割領域ごとに小数精度画素の補間方法を切り替える手段と，
前記分割領域単位で小数精度画素の補間を実行する手段と，
補間された画像を対象とする小数精度の動き補償型画面間予測を用いて画像を符号化する手段と，
領域分割に関する情報を符号化する手段とを備える
ことを特徴とする映像符号化装置。
【請求項１０】
請求項９に記載の映像符号化装置において，
前記小数精度画素の補間方法を切り替える手段は，
事前に定義された複数の固定補間フィルタ係数のセットの中から１つのインデックスを選択し，インデックスが示す固定補間フィルタ係数のセットごとに，処理対象領域に対するレート歪みコストを算出して，そのコストを格納する手段と，
与えられた固定補間フィルタ係数セットに対するインデックスを全て試行して最小のコストを実現する固定補間フィルタ係数セットを算出し，その固定補間フィルタ係数セットに対するインデックスを符号化する手段とを備える
ことを特徴とする映像符号化装置。
【請求項１１】
請求項１０に記載の映像符号化装置において，
固定補間フィルタ係数を切り替えると同時に，補間処理に用いる輝度信号のオフセット成分を前記分割領域単位で計算する手段と，
求めたオフセットを当該分割領域に適用して符号化を実施する手段と，
求めたオフセット情報を符号化する手段とを備える
ことを特徴とする映像符号化装置。
【請求項１２】
請求項１０または請求項１１に記載の映像符号化装置において，
前記小数精度画素の補間方法を切り替える手段は，
符号化済みフレームの情報を収集する手段と，
前記固定補間フィルタ係数セットに対するインデックスの生起確率を計算する手段と，
得られた確率に基づいて，インデックスの符号化時に符号語を選択して割り当てる手段とを備える
ことを特徴とする映像符号化装置。
【請求項１３】
小数精度の動き補償型画面間予測を用いる映像復号装置において，
符号化データから領域分割に関する情報を復号する手段と，
符号化データを復号して得られた符号化情報からブロック単位で領域分類を行う手段と，
領域分類の結果から，水平方向もしくは垂直方向またはその双方の領域分割線を移動させて，特定の前記領域分類に属するブロックの密度が所定の閾値以上となる領域分割線を決定する領域分割再定義処理を実施する手段と，
前記領域分割線によって分割された分割領域ごとに小数精度画素の補間方法を切り替える手段と，
前記分割領域単位で小数精度画素の補間を実行する手段と，
補間された画像を対象とする小数精度の動き補償型画面間予測を用いて画像を復号する手段とを備える
ことを特徴とする映像復号装置。
【請求項１４】
請求項１３に記載の映像復号装置において，
前記小数精度画素の補間方法を切り替える手段は，
固定補間フィルタ係数セットのインデックスを復号し，得られたインデックスから対応する固定補間フィルタ係数セットを用いて補間を行う手段を備える
ことを特徴とする映像復号装置。
【請求項１５】
請求項１４に記載の映像復号装置において，
固定補間フィルタ係数を切り替えると同時に，補間処理に用いる輝度信号のオフセット成分を領域単位で復号して適用し，補間を実行する手段を備える
ことを特徴とする映像復号装置。
【請求項１６】
請求項１４または請求項１５に記載の映像復号装置において，
前記小数精度画素の補間方法を切り替える手段は，
復号済みフレームの情報を収集する手段と，
固定補間フィルタ係数セットのインデックスの生起確率を計算する手段と，
得られた確率に基づいて，インデックスの復号時にインデックスに対する符号語を選択する手段とを備える
ことを特徴とする映像復号装置。
【請求項１７】
請求項１から請求項４までのいずれか１項に記載の映像符号化方法を，コンピュータに実行させるための映像符号化プログラム。
【請求項１８】
請求項５から請求項８までのいずれか１項に記載の映像復号方法を，コンピュータに実行させるための映像復号プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，小数精度の動き補償型画面間予測を用いる映像符号化における補間フィルタの性能改善を図り，符号化効率を改善する映像符号化，復号技術に関するものである。
【背景技術】
【０００２】
映像符号化において，異なる画面間で予測を実行する画面間予測（動き補償）符号化では，すでに復号されたフレームを参照して，予測誤差エネルギーなどを最小にするように動きベクトルが求められ，その残差信号が直交変換され，量子化が施され，エントロピー符号化を経て，バイナリーデータとなる。符号化効率を高めるためには予測誤差エネルギーの低減が不可欠であり，より予測精度の高い予測方式が求められる。
【０００３】
映像符号化標準方式には，数多くの画面間予測の精度を高めるためのツールが導入されている。例えばＨ．２６４／ＡＶＣでは，直近のフレームにオクルージョンが存在する場合は，時間的に少し離れたフレームを参照したほうが予測誤差エネルギーを低減できるため，複数のフレームを参照可能としている。本ツールを複数参照フレーム予測と呼ぶ。
【０００４】
また，複雑な形状の動きにも対応可能とするために，１６×１６および８×８に加えて，１６×８，８×１６，８×４，４×８，４×４というように，ブロックサイズを細かく分割可能としている。本ツールを可変ブロックサイズ予測と呼ぶ。
【０００５】
これらと同様に，参照フレームの整数精度画素から６タップ（ｔａｐ）のフィルタを用いて１／２精度の画素を補間し，さらにその画素を利用して１／４精度の画素を線形補間で生成する。これにより，小数精度の動きに対して予測が当たるようになる。本ツールを１／４画素精度予測と呼ぶ。この明細書において「小数精度」とは，動きベクトルを画素間隔の整数倍よりも高精度な小数画素単位で，あるいは，整数倍の位置に配置することをいう。例えば，各画素間隔を２等分する位置を１／２精度，各画素間隔を３等分する位置を１／３精度という。
【０００６】
Ｈ．２６４／ＡＶＣよりも符号化効率の高い次世代映像符号化標準方式の策定に向け，国際標準化組織ＩＳＯ／ＩＥＣ“ＭＰＥＧ”やＩＴＵ−Ｔ“ＶＣＥＧ”において，現在世界各国から様々な提案が集められている。その中で特に画面間予測（動き補償）に関連する提案は多くなされており，ＶＣＥＧが主導で作成している次世代映像符号化向けソフトウェア（以下，ＫＴＡ（Key Technical Area）ソフトウェア）には，動きベクトルの符号量を削減するツールや，ブロックサイズを１６×１６以上に拡張するツールが採用されている。
【０００７】
特に，小数精度画素の補間フィルタ係数を適応的に変化させるツールは適応補間フィルタと呼ばれ，ほぼ全ての画像で効果があり，最初にＫＴＡソフトウェアに採用された。ＭＰＥＧとＶＣＥＧで共同で進めている次世代映像符号化標準策定のためのグループＪＣＴ−ＶＣ（Joint Collaborative Team on Video Coding）が発行した次世代映像符号化テストモデルの募集(Call for Proposal) に対しての寄書にも，本技術は数多く採用されている。
【０００８】
また，適応補間フィルタ以外にも，複数の固定補間フィルタ係数のセットを用意し，その中から最適なセットを選択して補間を実行する固定補間フィルタの改善方法も提案されており，それらはＪＣＴ−ＶＣの暫定テストモデルＴＭｕＣ（Test Model under Consideration）の中に導入されている。上述の補間フィルタの改善方法は，符号化効率向上の寄与が高いため，同様に効果が高いインループフィルタ，ブロックサイズ拡張（従来の１６×１６サイズ以上の例えば３２×３２，６４×６４を用いる方法）と並んで，非常に期待される領域の１つである。
【０００９】
〔固定的補間〕
Ｈ．２６４／ＡＶＣ  においては，図１４に示すように１／２画素位置の補間時は，対象となる補間画素の左右３点ずつ計６整数画素を用いて補間を行う。垂直方向については上下３点ずつ計６整数画素を用いて補間する。フィルタ係数は，それぞれ［（１，−５，２０，２０，−５，１）／３２］となっている。１／２画素位置が補間された後，１／４画素位置は，［１／２，１／２］の平均値フィルタを用いて補間を行う。一度，１／２画素位置を全て補間して求める必要があるため，計算複雑度は高いものの，性能の高い補間が可能となり，符号化効率向上を導いている。以上の固定的補間フィルタの詳細は，非特許文献１，非特許文献２に示されている。
【００１０】
Ｈ．２６４／ＡＶＣの補間フィルタ性能を改善するために，複数の固定補間フィルタ係数のセットを用意し，フレーム単位で柔軟に補間フィルタ係数を切り替える技術が提案されている。本方式は，オフセット付き切替型補間フィルタ（Switched Interpolation Filter with Offset （以下，ＳＩＦＯ）と呼ばれ，補間フィルタだけでなく，輝度信号を調整するためのオフセットも別途計算して伝送することで，符号化効率を改善する技術である。本機構の改善として，補間フィルタ切り替えの演算コストを削減するために過去の符号化済みフレームの情報を用いて，当該フレームで用いる補間フィルタを決定し，シングルパスで実行する技術も提案されている。以上のことは，非特許文献３および非特許文献４に示されている。
【００１１】
〔適応的補間〕
Ｈ．２６４／ＡＶＣでは，入力画像条件（シーケンス種類／画像サイズ／フレームレート）や符号化条件（ブロックサイズ／ＧＯＰ構造／ＱＰ）に関わらず，フィルタ係数値は一定である。フィルタ係数値が固定である場合，例えば，エイリアシング，量子化誤差，動き推定による誤差，カメラノイズといった時間的に変化する効果が考慮されていない。したがって，符号化効率の点で性能向上に限界があると考えられる。そこで，補間フィルタ係数を適応的に変化させる方式が非特許文献５では提案されており，非分離型の適応補間フィルタと呼ばれている。
【００１２】
本方式では，２次元の補間フィルタ（６×６の計３６フィルタ係数）を考えており，予測誤差エネルギーを最小にするようにフィルタ係数が決定される。Ｈ．２６４／ＡＶＣに用いられている１次元６タップの固定補間フィルタを用いるよりも高い符号化効率が実現できたが，フィルタ係数を求める上での計算複雑度が非常に高いため，その計算複雑度を低減するための提案が非特許文献６で紹介されている。
【００１３】
この非特許文献６で紹介されている手法は，分離型適応補間フィルタ（ＳＡＩＦ：Separable Adaptive Interpolation Filter ）と呼ばれ，２次元の補間フィルタを用いるのではなく，１次元の６タップ補間フィルタを用いる。
【００１４】
図１５は，分離型適応補間フィルタ（ＳＡＩＦ）における非整数精度の画素補間方法を示す図である。手順としては，図１５（Ｂ）のＳｔｅｐ１に示すように，まず水平方向の画素（ａ，ｂ，ｃ）を補間する。フィルタ係数の決定には，整数精度画素Ｃ１からＣ６が用いられる。式（１）の予測誤差エネルギー関数Ｅx 2 を最小化するような水平方向フィルタ係数が，一般に知られた最小二乗法（非特許文献５参照）により，解析的に決定される。
【００１５】
【数１】
0005485851.tif 000002
【００１６】
ここで，Ｓは原画像，Ｐは復号済み参照画像，ｘおよびｙはそれぞれ画像中の水平および垂直方向の位置を示す。また，〜ｘ（〜はｘの上に付く記号；他も同様）は，
〜ｘ＝ｘ＋ＭＶx − FilterOffset 
であり，ＭＶx は事前に得られた動きベクトルの水平成分，FilterOffsetは，調整のためのオフセット（水平方向フィルタ長を２で割った値）を示している。垂直方向については，〜ｙ＝ｙ＋ＭＶy となり，ＭＶy は動きベクトルの垂直成分を示す。ｗciは求めるべき水平方向フィルタ係数群ｃi （０≦ｃi ＜６）を示す。
【００１７】
式（１）を求めるフィルタ係数と同じ数の一次方程式が得られることになり，最小化処理は，水平方向の各小数画素位置ごとに独立に実施される。この最小化処理を経て，３種類の６タップフィルタ係数群が求まり，そのフィルタ係数を用いて小数精度画素ａ，ｂ，ｃが補間される。
【００１８】
水平方向の画素補間が完了した後，図１５（Ｃ）のＳｔｅｐ２に示すように，垂直方向の補間処理を実施する。水平方向と同様の線形問題を解くことで垂直方向のフィルタ係数を決定する。具体的には，式（２）の予測誤差エネルギー関数Ｅy 2 を最小化するような垂直方向フィルタ係数が，解析的に決定される。
【００１９】
【数２】
0005485851.tif 000003
【００２０】
ここで，Ｓは原画像，＾Ｐ（＾はＰの上に付く記号）は復号後に水平方向に補間処理された画像，ｘおよびｙはそれぞれ画像中の水平および垂直方向の位置を示す。また，〜ｘ＝４・（ｘ＋ＭＶx ）で表現され，ＭＶx は丸められた動きベクトルの水平成分を示す。垂直方向については，〜ｙ＝ｙ＋ＭＶy − FilterOffset で表現され，ＭＶy は動きベクトルの垂直成分，FilterOffsetは，調整のためのオフセット（フィルタ長を２で割った値）を示す。ｗcjは求めるべき垂直方向フィルタ係数群ｃj （０≦ｃj ＜６）を示す。
【００２１】
最小化処理は，各小数精度画素ごとに独立に実施され，１２種類の６タップフィルタが得られる。このフィルタ係数を用いて，残りの小数精度画素が補間される。
【００２２】
以上により，合計９０（＝６×１５）のフィルタ係数を符号化して復号側に伝送する必要がある。特に低解像度の符号化については，このオーバーヘッドが大きくなるため，フィルタの対称性を用いて，伝送すべきフィルタ係数を削減している。例えば，図１５（Ａ）に示すとおり，ｂ，ｈ，ｉ，ｊ，ｋの位置は補間方向に対する中心に位置しており，水平方向であれば，左３点に用いる係数を反転させて右３点に適用できる。同様に，垂直方向であれば，上３点に用いる係数を反転させて下３点に適用できる（ｃ1 ＝ｃ6 ，ｃ2 ＝ｃ5 ，ｃ3 ＝ｃ4 ）。
【００２３】
他にもｄとｌの関係はｈを挟んで対称となっているため，フィルタ係数もそれぞれ反転して利用できる。すなわち，ｄの６係数を伝送すれば，その値をｌにも適用できる。ｃ（ｄ）1 ＝ｃ（ｌ）6 ，ｃ（ｄ）2 ＝ｃ（ｌ）5 ，ｃ（ｄ）3 ＝ｃ（ｌ）4 ，ｃ（ｄ）4 ＝ｃ（ｌ）3 ，ｃ（ｄ）5 ＝ｃ（ｌ）2 ，ｃ（ｄ）6 ＝ｃ（ｌ）1 となる。この対称性は，ｅとｍ，ｆとｎ，そしてｇとｏにも利用可能となる。ａとｃについても同様の理論が成立するが，水平方向は垂直方向の補間にも結果が影響を及ぼすため，対称性は用いずに，ａとｃはそれぞれ別々に伝送を行う。以上の対称性を利用した結果，フレームごとに伝送すべきフィルタ係数は５１（水平方向が１５，垂直方向が３６）となる。
【００２４】
以上の非特許文献６の適応補間フィルタは，予測誤差エネルギーの最小化処理の単位がフレームで固定されていた。１枚のフレームに対して，５１のフィルタ係数が決定される。符号化対象フレームが仮に大きな２種類（もしくは複数種類の）テクスチャ領域に分けられる場合，最適なフィルタ係数はその両者（全てのテクスチャ）を考慮した係数群になる。Ａの領域では本来垂直方向のみ特徴的なフィルタ係数が出ていたとして，Ｂの領域で水平方向のみフィルタ係数が得られるような状況では，その両方が平均化された形でフィルタ係数が導出される。
【００２５】
１枚のフレームにつき１つのフィルタ係数群（５１係数）に限定されずに，画像の局所的性質に応じて，複数のフィルタ係数群を用意して切り替えることで予測誤差エネルギーの低減を達成し，符号化効率の改善を実現する方法が非特許文献７および非特許文献８にて提案されている。
【００２６】
図１６に示されるように，符号化対象フレームが性質の異なるテクスチャを含む場合を想定する。図１６（Ａ）に示すように，フレーム全体として１つのフィルタ係数群を最適化して送る場合，各テクスチャの性質全てを考慮することになる。テクスチャがあまり変わらない場合，全体最適化によるフィルタ係数が最良と考えられるが，相反する性質を有するテクスチャであった場合，図１６（Ｂ）に示すように，テクスチャごとに最適化したフィルタ係数を用いるほうが，フレーム全体の符号量を削減できる。
【００２７】
領域分割の手法として，非特許文献７および非特許文献８では，動きベクトル（水平垂直成分，向き）や空間座標（マクロブロック位置，ブロックのｘ座標やｙ座標）を採用しており，様々な画像の性質を考慮して領域分割を実施している。
【００２８】
上述のことは適応補間フィルタをベースとしているが，適応補間フィルタに限らず，画像の有する性質が画面内で異なる場合には，非特許文献３および非特許文献４で示したような固定補間フィルタ係数の中から選択する場合においても，同様の議論が成立する。すわなち，領域に適する固定補間フィルタを選択できれば，フレーム全体で１種の固定補間フィルタを施す場合よりも符号化効率改善が実現可能となる。
【先行技術文献】
【非特許文献】
【００２９】
【非特許文献１】大久保榮, 角野眞也, 菊池義浩, 鈴木輝彦: “Ｈ．２６４／ＡＶＣ教科書改訂三版”，インプレス, pp.119-123, 2009
【非特許文献２】I. E. G. Richardson, G. J. Sullivan:“H.264 and MPEG-4 VIDEO COMPRESSION”, WILEY, pp.172-175, 2003
【非特許文献３】Marta Karczewicz, Yan Ye, Peisong Chen:“Switched Interpolation Filter with Offset ”,  ITU-T SG16 Q.6 VCEG, VCEG-AI35, Berlin, Germany, Jul. 2008
【非特許文献４】Marta Karczewicz, Yan Ye, Peisong Chen, Giovanni Motta:“Single Pass Encoding using Switched Interpolation Filters with Offset ”, ITU-T SG16 Q.6 VCEG, VCEG-AJ29, San Diego, California, USA, Oct. 2008
【非特許文献５】Y. Vatis, B. Edler, D. T. Nguyen , J. Ostermann:“Moiton-and aliasingcompensated prediction using a two-dimensional non-separable adaptive Wiener interpolation filter”, Proc. ICIP2005, IEEE International Conference on Image Processing, pp. II 894-897, Genova, Italy, Sep. 2005
【非特許文献６】S. Wittmann, T. Wedi:“Separable adaptive interpolation filter for video coding”，Proc. ICIP2008, IEEE International Conference on Image Processing, pp.2500-2503, San Diego, California, USA, Oct. 2008
【非特許文献７】松尾翔平，高村誠之，如澤裕尚: “領域分割機能を有する分離型適応補間フィルタに関する検討”, 電子情報通信学会画像工学研究会, pp.113-116, Nov. 2009
【非特許文献８】Shohei Matsuo, Yukihiro Bandoh, Seishi Takamura, Hirohisa Jozawa: “Region-Based Adaptive Interpolation Filter”, ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 JCT-VC, JCTVC-B051, Jul. 2010
【発明の概要】
【発明が解決しようとする課題】
【００３０】
非特許文献７および非特許文献８に記載の領域分割型適応補間フィルタは，画像の有する局所的性質を考慮して，フレーム内で複数のフィルタ係数群を切り替えることで予測誤差エネルギーを削減して，符号化効率の向上を図っている。
【００３１】
領域分割時に，動きベクトルおよび空間座標に着目しているが，残差信号のテクスチャ情報を考慮できていない。また，動きベクトルや空間座標による領域分割が，完全に画像の性質に応じて領域分割できているとは言えない。例えば，非特許文献８では，空間分割の際に水平方向二等分割，三等分割，四等分割（垂直方向も同様に実施）もしくは田の字分割を実施しているが，領域の範囲は固定されている。同様に動きベクトルを用いた分割についてもブロック単位で切り替わるため，同じテクスチャ領域に含まれていても，動きが異なることで違う領域に含まれてしまう場合が発生し得る。領域分割の結果から，領域情報の更新を行い，実際の画像の有する性質が切り替わる領域に近づけることで，符号化効率の更なる改善が見込めると考えられる。
【００３２】
また，非特許文献３および非特許文献４にて記載されるような固定補間フィルタ係数およびオフセットを領域単位で切り替える場合においては，非特許文献７および非特許文献８の考え方を適用しても，フィルタインデックスの発生符号量については分割領域単位で発生し，削減することができない。
【００３３】
本発明は，この点に鑑み，従来技術よりもさらに，動き補償画面間予測の残差エネルギー低減による符号化効率の改善，より具体的には，画面内で動きやテクスチャが大きく異なる画像に対して，符号化効率の改善を実現することを目的とする。
【課題を解決するための手段】
【００３４】
上記目的を達成するための方法として，残差信号の有する情報が原画像のテクスチャ情報を反映しているという想定に基づき，残差信号のエネルギーを算出して，領域分割（領域分類ともいう）を実施する。また，特定の符号化情報に基づいて得られた領域分割結果に対して，領域分割の範囲を調整する処理（本発明では，これを領域分割再定義処理という）を実行し，レート歪みコストが最良となる分割を選択することで予測誤差エネルギーの低減を実現し，符号化効率を改善する。さらに符号化済みフレームの情報を用いてフィルタインデックスに対する符号語割り当てを変更し，オーバーヘッド削減を実現する。
【００３５】
本発明による映像符号化処理の概要は，以下のとおりである。
（１）動き補償のブロック単位で，動きベクトルやテクスチャ（エッジ）情報などの符号化情報から性質の類似する複数領域に分割（分類）する。すなわち，ブロックごとに領域分割番号を決定する。
（２）上記の処理（１）で得られた領域分割情報に対して，領域分割再定義処理を施す。ここで，領域分割再定義処理とは，例えば符号化情報によって得られた領域分割情報を入力として，水平方向または垂直方向の領域分割線を移動させて，各領域分割線の位置における特定の領域分割番号を持つブロックのブロック密度を算出する処理とブロック密度が閾値を超えるか否かの判定処理を行い，最適な領域分割線の位置を決定して，領域分割情報を更新し出力する処理である。
（３）更新された領域分割情報による各分割領域に最適な補間フィルタ係数セットを選択する。このとき，レート歪みコストの観点から最良となる補間フィルタ係数セットを生成ないしは選択する。
（４）各分割領域に対して，上記の処理（３）で得られた補間フィルタ係数セットによる補間フィルタを適用する。
（５）各分割領域に必要となる補間フィルタ係数ないしはフィルタインデックス情報を符号化する。
（６）ＤＣＴ係数などのその他の情報を全て符号化する。
【００３６】
本発明による映像復号処理の概要は，以下のとおりである。
（１）補間フィルタ係数ないしはフィルタインデックスを復号する。
（２）ブロックごとに動きベクトルなどの符号化情報を復号する。
（３）符号化情報をもとに，領域分割情報を決定する。
（４）上記の（２）で得られた符号化情報と上記の（３）で得られた領域分割情報から，エンコーダにおける領域分割再定義処理と同じ処理を行う。
（５）得られた補間フィルタ係数セットから画像補間を実施し，参照画像を復元する。
（６）上記の（５）で得られた参照画像を用いて動き補償を行い，復号画像を得る。
【００３７】
本発明の作用は，以下のとおりである。従来の領域分割方法を用いる補間フィルタでは，動きベクトルと空間座標を用いた領域分割手法を採用しており，残差信号に関する情報を用いた領域分割ができず，画像の局所性を十分に考慮できていなかった。さらに，一度定められた分割領域の範囲を変更することができなかった。また，符号化済みフレームの統計情報から符号量割り当てを適応的に変更し，オーバーヘッドを削減する機構はなかった。
【００３８】
一方，本発明では，残差信号の特徴量に応じた領域分割も可能となり，符号化情報による領域分割された領域範囲の調整も可能となることにより，符号化効率を改善することができる。また，分割領域ごとに適応的に補間フィルタ係数を導出するのではなく，複数の固定補間フィルタ係数セットの中から最適な係数セットを選択する処理を行えば，フィルタインデックスに関するオーバーヘッド削減も可能となる。特に，補間フィルタに併せて，補間処理に用いる輝度信号のオフセット成分を分割領域単位で計算し，求めたオフセットを当該分割領域に適用して符号化し，求めたオフセット情報を符号化することにより，更なる符号化効率改善が達成できる。さらに，符号化済みフレームの情報を収集し，固定補間フィルタ係数セットに対するインデックスの生起確率を計算し，得られた確率に基づいて，インデックスの符号化時に符号語を選択して割り当てることにより，ヘッダ情報の増加を抑えることができる。
【００３９】
特に，本発明の最も特徴とするところは，画像中の動きベクトルやテクスチャ（エッジ）情報などの符号化情報から領域を分割するが，単にそれだけでは，分割の粒度は予測に用いるブロック単位となり，実際の動きやテクスチャに沿っているとは限らないことを考慮し，符号化情報から得られた領域分割情報に基づいて，領域分割再定義処理を施すことで，フィルタ係数の切り替える領域を調整可能にし，画像の局所性に対して，より柔軟に対応できるようにした点にある。
【発明の効果】
【００４０】
本発明によれば，領域を分割して領域ごとに補間フィルタを適用する際に，残差信号のエネルギー情報を利用した領域分割が可能となり，領域分割の種類に幅を持たせ，画像局所性に対する柔軟性を拡張できる。また，符号化情報を用いた領域分類による領域分割された領域範囲の調整が可能となり，フィルタ切り替えの領域範囲に幅を持たせ，画像局所性に対する柔軟性を高めることができる。さらに，オーバーヘッド削減のための機構を導入している。以上の要因により，本発明によって符号化効率を改善することができる。
【図面の簡単な説明】
【００４１】
【図１】映像符号化装置の構成例を示す図である。
【図２】領域分割再定義処理部の構成例を示す図である。
【図３】映像符号化処理（例１）のフローチャートである。
【図４】領域分割の例を示す図である。
【図５】領域分割の例を示す図である。
【図６】領域分割再定義処理のフローチャートである。
【図７】分割線位置決定処理のフローチャートである。
【図８】領域分割再定義処理結果の例を示す図である。
【図９】映像符号化処理（例２）のフローチャートである。
【図１０】映像符号化処理（例３）のフローチャートである。
【図１１】映像符号化処理（例４）のフローチャートである。
【図１２】映像復号装置の構成例を示す図である。
【図１３】映像復号処理のフローチャートである。
【図１４】従来の映像符号化標準方式における非整数精度の画素補間方法の例を示す図である。
【図１５】分離型適応補間フィルタ（ＳＡＩＦ）における非整数精度の画素補間方法を示す図である。
【図１６】従来の適応補間フィルタと領域分割型適応補間フィルタの比較を示す図である。
【発明を実施するための形態】
【００４２】
以下，図面を用いながら，本発明の実施の形態を説明する。
【００４３】
〔映像符号化装置〕
図１は，本発明に係る映像符号化装置の構成例を示す図である。映像符号化装置１０は，動きベクトルやエッジ等の画像テクスチャ情報を利用する領域分割型補間フィルタを用いて，小数精度画素の補間を行い，小数精度の動き補償によって符号化を行う装置であり，補間フィルタを切り替える単位となる領域の分割を，領域の分類に基づく仮の分割（グルーピング）を行った後に，再定義することにより，効率のよい補間フィルタの切り替えを可能にした機構を備えている。
【００４４】
映像符号化装置１０において，領域分割部１１は，入力した映像信号の符号化対象フレームを，エッジ計算部１２が算出したエッジ情報を用いて，適応的に補間フィルタ係数を切り替える単位となる複数ブロックからなる複数の領域に分割するにあたって，まず，エッジ計算部１２から得たエッジ情報を用いて，各ブロックを類似した画像特徴を有する領域に分類し，その分類を示す領域分割情報を出力する。エッジ計算部１２は，動き補償時の参照画像からエッジ情報を抽出する処理を行う。なお，詳しくは後述するが，動きベクトルなどの他の符号化情報を抽出して用いることもできる。
【００４５】
領域分割再定義処理部１３は，領域分割部１１の出力である領域分割情報を再定義するため，水平方向もしくは垂直方向またはその双方の領域分割線を移動させて，特定の領域分割番号を持つブロックの密度が所定の閾値以上となる領域分割線を選択することにより，領域分割部１１が仮に分割した領域分割を調整し，実際に補間フィルタ係数を切り替える単位となる領域分割を再定義する。
【００４６】
補間フィルタ係数切り替え部１４は，領域分割再定義処理部１３により再分割された領域ごとに，予測符号化における参照画像に対して用いる小数精度画素の補間フィルタ係数を切り替える。この切り替え対象となる補間フィルタ係数としては，領域ごとに，原画像と補間後の参照画像との予測誤差の符号化において，二乗誤差エネルギーが最小となる補間フィルタ係数またはレート歪みコストが最小となる補間フィルタ係数を選択して用いる。
【００４７】
予測信号生成部１５は，参照画像補間部１５１と動き検出部１５２とを備える。参照画像補間部１５１は，参照画像メモリ１９に格納された復号済み参照画像に，補間フィルタ係数切り替え部１４が選択した補間フィルタ係数による補間フィルタを適用し，動き検出部１５２は，補間後の参照画像に対して動き探索を行うことにより，動きベクトルを算出する。予測信号生成部１５は，動き検出部１５２によって算出された小数精度の動きベクトルによる動き補償により予測信号を生成する。
【００４８】
予測符号化部１６は，入力映像信号と予測信号との残差信号を算出し，それを直交変換し，変換係数の量子化などによって予測符号化を行う。また，復号部１８は，予測符号化の結果を復号し，復号信号を後の予測符号化のために参照画像メモリ１９に格納する。
【００４９】
可変長符号化部１７は，量子化された変換係数，動きベクトルを可変長符号化するとともに，領域分割に関する情報を符号化し，これらを符号化ビットストリームとして出力する。
【００５０】
図２は，映像符号化装置１０における領域分割再定義処理部１３の構成例を示している。領域分割再定義処理部１３において，分割情報保存部１３１は，入力した領域分割情報を保存する。この領域分割情報は，例えば各ブロックに対して付与された領域分割番号である。この領域分割番号は，各ブロックがどの領域に属するかを示す領域の分類情報である。対象領域設定部１３２は，どの領域分割番号の領域について処理するかを設定する。分割線位置初期化部１３３は，領域分割再定義のための水平方向もしくは垂直方向またはその双方の領域分割線の初期位置を設定する。ブロック密度計算部１３４は，領域分割線で仕切られた領域についての対象領域設定部１３２で設定された領域分割番号を持つブロックの密度を計算する。閾値設定部１３５は，ブロック密度の条件判定に用いる閾値α，βを設定する。条件判定部１３６は，ブロック密度計算部１３４が算出したブロック密度および閾値設定部１３５が設定した閾値α，βに基づき，領域分割線によって仕切られた領域が所定の条件に該当するかどうかを判定する。所定の条件を満足しない場合には，領域分割線を移動させて，同様にブロック密度計算部１３４によるブロック密度の計算および条件判定部１３６による条件の判定を繰り返す。なお，これらの処理の詳細については，フローチャートを用いて後述する。最終的に，条件を満足する領域分割線によって分割された領域分割情報が，再定義済み領域分割情報として，領域分割再定義処理部１３から出力される。
【００５１】
〔符号化処理（例１）〕
図３は，映像符号化装置１０が実行する映像符号化処理のフローチャートである。以下では，特に断りがない限り，輝度信号での処理を仮定して説明するが，輝度信号だけでなく，色差信号にも適用可能である。この例では，領域分割後に領域分割再定義処理により領域範囲の修正を行い，領域単位で最適な補間フィルタを導出して符号化を実施する。
【００５２】
まず，ステップＳ１０１では，符号化対象のフレームを入力する。
【００５３】
次に，ステップＳ１０２では，事前に定義された分割モードから１つを選択する。分割モードは，どのような情報に基づいて領域を分割（分類）するかを定めるものであり，動きベクトルや空間座標やテクスチャ（エッジ）情報などの符号化情報は，領域分割を行うための情報として全て利用することができる。この分割モードは，例えば，モード１が動きベクトルの方向に基づく分割，モード２が動きベクトルの長さに基づく分割，モード３が動きベクトルの水平成分の大きさに基づく分割，モード４が動きベクトルの垂直成分の大きさに基づく分割，モード５が参照画像から抽出したエッジの方向に基づく分割，モード６が参照画像から抽出したエッジの水平成分の大きさに基づく分割，モード７が参照画像から抽出したエッジの垂直成分の大きさに基づく分割，モード８が予測誤差画像から抽出したエッジの方向に基づく分割，…というように，各種のモードが予め定められている。分割モードに応じた分割手法は，以上の例に限らず，符号化情報から得られる種々の情報をもとにした手法を用いることができ，前述した複数のモードを組み合わせたモードを，さらに一つのモードとして定めてもよい。
【００５４】
続いて，ステップＳ１０３では，フレームをブロック，例えば，ｍ×ｎ（ｍ，ｎは正の整数）の動き予測のブロックサイズに分割し，ブロック単位で動きベクトルや画像テクスチャ（エッジ情報）などの符号化情報を導出する。例えば，分割モードが動きベクトルを用いるものである場合，最適な動きベクトルを算出する。ステップＳ１０３において動きベクトルを算出するための参照画像の小数精度画素の補間には，例えば，従来のＨ．２６４／ＡＶＣによる固定６タップフィルタを用いる。また，動き探索処理節約のため，前フレームと同位置のブロックが指し示す動きベクトルを用いてもよい。
【００５５】
続いて，ステップＳ１０４では，ステップＳ１０３にて得られた符号化情報，例えば１本もしくは複数の動きベクトルを用いて，当該ブロックに領域分割番号を付与する。すなわち，領域分割を実施する。このとき，例えば，Ｐピクチャで符号化される場合には１本の動きベクトルが取得でき，Ｂピクチャで符号化される場合には２本の動きベクトルが得られる。
【００５６】
Ｂピクチャの場合，２種類の領域分割手法を用いることが可能となる。１つはそれぞれの動きベクトルが指し示すフレームに対して，異なるフィルタを用いる場合であり，もう１つは２本の動きベクトルの情報から予測ベクトルにつき１つのフィルタを統一して用いる場合である。前者の場合，２本の動きベクトルの指す方向に従って，ｋ（ｋは任意の正の整数）種の番号を付与する。すなわち，Ｐピクチャと同様の処理を２回繰り返すことになる。後者の場合，参照するフレーム番号（ｒｅｆ＿ｉｄｘ）が異なっているなら，例えば１本目が時間的に離れているフレーム（ｒｅｆ＿ｉｄｘ≠０）で，かつ２本目のベクトルが時間的な直近フレーム（ｒｅｆ＿ｉｄｘ＝０）を示す場合，時間的に近い方を優先して，同じ補間フィルタを用いるといった処理も可能である。
【００５７】
前述のように分割モードに応じて，動きベクトルの方向だけでなく，動きベクトルの長さ，成分なども領域分割判定に利用できる。動きベクトルの長さ（水平／垂直成分の絶対値）を用いて，４領域に分割する事例を図４に示す。また，動きベクトルの成分そのものを用いて，４領域に分割する事例を図５に示す。図４および図５において，閾値としてＴx およびＴy を示しているが，これらは後のステップＳ１０９における補間フィルタ情報の一部として，別途符号化して伝送する。閾値は固定値として全フレーム同じ値を用いてもよいし，各領域の比率が同率（領域１から領域４がほぼ同じ面積比になる場合）ないしは一定の値になるように，フレーム単位で調整することも可能である。ただし，フレーム単位で可変にする場合，フレーム単位で符号化する必要がある。また，Ｔx とＴy は異なるように設定してもよいし，オーバーヘッド情報削減のため，同じ値（Ｔx ＝Ｔy ）を設定してもよい。この処理において，フレームは複数の領域に分割される。
【００５８】
続いて，ステップＳ１０５では，領域分割再定義処理部１３が，ステップＳ１０４にて得られた領域分割情報から，領域分割再定義処理を実施する。領域分割再定義処理の詳細は，図６を用いて後述する。
【００５９】
続いて，ステップＳ１０６では，ステップＳ１０５の再定義後の領域分割の結果から，領域ごとに補間フィルタの最適化処理を行う。適応補間フィルタの場合，領域ごとに二乗誤差エネルギーを最小化する補間フィルタ係数を算出する。
【００６０】
続いて，ステップＳ１０７では，ステップＳ１０６で得られた補間フィルタ係数を用いて，参照画像の補間を実行する。
【００６１】
続いて，ステップＳ１０８では，ステップＳ１０７で得られた補間画像に対して動きベクトルを導出する。
【００６２】
続いて，ステップＳ１０９では，ステップＳ１０６で得られた補間に関する情報，すなわち補間フィルタ係数を符号化する。また，補間に必要となる情報，領域分割に必要となる閾値関連の情報などは全てこのステップで符号化する。
【００６３】
続いて，ステップＳ１１０では，残された符号化すべき情報（テクスチャ情報すなわち量子化係数値や動きベクトルなど）を全て符号化する。
【００６４】
続いて，ステップＳ１１１にて，ステップＳ１０２で選択した分割モード以外にも探索すべき分割モードがあるかどうかを確認する。もし探索すべき分割モードがあれば，ステップＳ１０２へ戻り，次の分割モードについて同様に処理を繰り返す。全て終わっていれば，ステップＳ１１２へ移る。
【００６５】
続いて，ステップＳ１１２では，ステップＳ１１１に対するループの結果からレート歪みコストを最小化する分割モードを確定する。この情報は符号化して伝送する。
【００６６】
続いて，ステップＳ１１３では，入力画像フレームが全て終わったかの判定を行う。もし，終わってなければ，ステップＳ１０１へ戻り，次のフレームに処理を移す。全てのフレームの符号化が終わっていれば，エンコード処理を終了する。
【００６７】
図６は，領域分割再定義処理のフローチャート，図７は，領域分割再定義処理における分割線位置決定処理のフローチャートである。以下では，図３のステップＳ１０５における領域分割再定義処理の詳細を，図６および図７を用いて説明する。
【００６８】
ステップＳ１２１では，ステップＳ１０４にて得られた領域分割情報を取得する。例えば，符号化対象のフレームが，図８（Ａ）のように領域１および領域２の領域に分割された結果が得られたとする。
【００６９】
続いて，ステップＳ１２２では，分割再定義に必要となる閾値αおよびβを設定する。αは水平方向の分割線決定に関する閾値であり，βは垂直方向の分割線決定に関する閾値となる。これらの値は，実験的に求めてもよいし，例えば０．９などの固定値を用いることもできる。
【００７０】
続いて，ステップＳ１２３では，ステップＳ１２１で取得した領域分割情報と，ステップＳ１２２で設定した閾値αから水平方向の分割線の位置決定を行う。詳細フローについては図７にて後述する。
【００７１】
続いて，ステップＳ１２４では，ステップＳ１２１で取得した領域分割情報と，ステップＳ１２２で設定した閾値βから垂直方向の分割線の位置決定を行う。詳細フローについては図７で説明する処理と同様になる。
【００７２】
ステップＳ１２３における分割線位置の決定は，図７に示すように行われる。まず，ステップＳ１３１では，分割線の位置ｉを初期位置にセットする。水平方向の分割線決定の場合であれば，図８（Ａ）に示されるように，左から最初のブロックを含むラインを初期位置とし，ｉ＝１として設定する。
【００７３】
続いて，ステップＳ１３２では，分割された領域が２種の場合，領域１と領域２のそれぞれのブロック総数をカウントする。このとき，総数が少ないほうを対象領域として設定する。図８（Ａ）の場合，領域１のブロック数が７８個，領域２のブロック数が５０個であるので，領域２を対象領域として設定する。
【００７４】
続いて，ステップＳ１３３では，分割位置ｉにおける各対象領域のブロック密度ＤL およびＤR を算出する。ＤL は領域分割線の左領域におけるブロック密度，ＤR は右領域におけるブロック密度を示す。ブロック密度ＤL の定義は，以下のようになる。
【００７５】
ブロック密度ＤL 
＝左領域における対象ブロックの数／左領域に含まれるブロック総数
ブロック密度ＤR は，上記について左領域の代わりに右領域をとることになる。
【００７６】
図８（Ｂ）は，領域分割線がｉ＝１２まで移動したときの例を示しているが，この場合のブロック密度ＤL ，ＤR は，それぞれ，
ＤL ＝２０／９６≒０．２０８
ＤR ＝３０／３２≒０．９３８
となる。
【００７７】
続いて，ステップＳ１３４では，ステップＳ１３３にて算出されたブロック密度が閾値を超えるかどうかの判定を実施する。例えば，閾値α＝０．９とした図８の領域分割例の場合，ｉ＝１２にて条件を満たすため，この位置に領域分割線が決定される。もし，条件を満たさない場合，i をインクリメントし，ステップＳ１３２へ戻る。
【００７８】
以上の処理によって，水平方向の領域の再定義結果は，図８（Ｃ）に示すようになる。垂直方向についても，上記の処理と同様の流れで領域分割線を決定可能である。また，閾値に関しては，符号化対象映像の全フレームに対して同じ値を用いてもよいし，シーンチェンジを検出して，複数のフレームからなるシーンごとに切り替えてもよい。シーン単位で切り替える場合，閾値情報は，ステップＳ１０９においてシーンごとに符号化する必要がある。また，フレーム単位で切り替えてもよい。その場合には，フレーム単位で符号化が必要となる。
【００７９】
〔符号化処理（例２）〕
図９は，映像符号化装置１０が実行する映像符号化処理の第２の例を示す。以下では，特に断りがない限り，輝度信号での処理を仮定して説明するが，輝度信号だけでなく，色差信号にも適用可能である。この例では，領域分割後に領域分割再定義処理により領域範囲の修正を行い，領域単位で最適な固定補間フィルタを決定して符号化を実施する。
【００８０】
まず，ステップＳ２０１では，符号化対象画像のフレームを入力する。
【００８１】
続いて，ステップＳ２０２では，事前に定義された分割モードから１つを選択する。分割モードについては，符号化処理（例１）で説明したとおりである。
【００８２】
続いて，ステップＳ２０３では，フレームをブロック，例えば，ｍ×ｎ（ｍ，ｎは正の整数）の動き予測のブロックサイズに分割し，ブロック単位で最適な動きベクトルを算出する。ステップＳ２０３における参照画像の小数精度画素の補間には，例えば，従来のＨ．２６４／ＡＶＣによる固定６タップフィルタを用いる。また，動き探索処理節約のため，前フレームと同位置のブロックが指し示す動きベクトルを用いてもよい。
【００８３】
続いて，ステップＳ２０４では，ステップＳ２０３にて得られた１本もしくは複数の動きベクトルを用いて，当該ブロックに領域分割番号を付与する。符号化処理（例１）のステップＳ１０４と同様に，符号化情報（動きベクトルやテクスチャ情報など）を用いて領域分割を行う。
【００８４】
続いて，ステップＳ２０５では，ステップＳ２０４にて得られた領域分割情報から，領域分割再定義処理を実施する。領域分割再定義処理の詳細は，図６および図７を用いて詳述した処理となる。
【００８５】
続いて，ステップＳ２０６では，ステップＳ２０５の再定義後の領域分割の結果から，領域ごとに補間フィルタの最適化処理を行う。例えば，固定補間フィルタでは，用意された複数の固定補間フィルタのインデックスを順番に試行し，レート歪みコストを算出する。このように事前に定義されたフィルタセットを試行することにより，最適となるフィルタインデックスを取得する。本ステップでは，例えば二乗誤差エネルギーに基づくコスト関数などの既存のフィルタ決定方法を用いることが可能である。
【００８６】
続いて，ステップＳ２０７では，ステップＳ２０６で得られた補間フィルタインデックスを用いて，参照画像の補間を実行する。
【００８７】
続いて，ステップＳ２０８では，ステップＳ２０７で得られた補間画像に対して動きベクトル（ＭＶ）を導出する。
【００８８】
続いて，ステップＳ２０９では，ステップＳ２０６で得られた補間に関する情報である固定補間フィルタインデックスおよび領域分割に必要となる情報を符号化する。補間に関わる閾値などの情報も本ステップで符号化する。
【００８９】
続いて，ステップＳ２１０では，残された符号化すべき情報（テクスチャ情報すなわち量子化係数値や動きベクトルなど）を全て符号化する。
【００９０】
続いて，ステップＳ２１１では，ステップＳ２０２で選択した分割モード以外にも探索すべき分割モードがないかを確認する。もし探索すべき分割モードがあれば，ステップＳ２０２へ戻り，全て終わっていれば，ステップＳ２１２へ移る。
【００９１】
続いて，ステップＳ２１２では，ステップＳ２１１に対するループの結果からレート歪みコストを最小化する分割モードを確定する。この情報は符号化して伝送する。
【００９２】
続いて，ステップＳ２１３では，入力画像フレームが全て終わったかの判定を行う。もし終わっていなければ，ステップＳ２０１へ戻り，次のフレームに処理を移す。全てのフレームが終わっていれば，エンコード処理を終了する。
【００９３】
〔符号化処理（例３）〕
図１０は，映像符号化装置１０が実行する映像符号化処理の第３の例を示す。以下では，特に断りがない限り，輝度信号での処理を仮定して説明するが，輝度信号だけでなく，色差信号にも適用可能である。この例では，領域分割後に領域分割再定義処理により領域範囲の修正を行い，領域単位で最適な固定補間フィルタおよび最適なフィルタオフセットを決定して符号化を実施する。
【００９４】
まず，ステップＳ３０１では，符号化対象画像のフレームを入力する。
【００９５】
続いて，ステップＳ３０２では，事前に定義された分割モードから１つを選択する。
【００９６】
続いて，ステップＳ３０３では，フレームをブロック，例えば，ｍ×ｎ（ｍ，ｎは正の整数）の動き予測のブロックサイズに分割し，ブロック単位で最適な動きベクトルを算出する。ステップＳ３０３における参照画像の小数精度画素の補間には，例えば，従来のＨ．２６４／ＡＶＣによる固定６タップフィルタを用いる。また，動き探索処理節約のため，前フレームと同位置のブロックが指し示す動きベクトルを用いてもよい。
【００９７】
続いて，ステップＳ３０４では，ステップＳ３０３にて得られた１本もしくは複数の動きベクトルを用いて，当該ブロックに領域分割番号を付与する。符号化処理（例１）のステップＳ１０４と同様に，符号化情報（動きベクトルやテクスチャ情報など）を用いて領域分割を行う。
【００９８】
続いて，ステップＳ３０５では，ステップＳ３０４にて得られた領域分割情報から，領域分割再定義処理を実施する。領域分割再定義処理の詳細は，図６および図７を用いて詳述した処理となる。
【００９９】
続いて，ステップＳ３０６では，ステップＳ３０５の再定義後の領域分割の結果から，領域ごとに補間フィルタの最適化処理を行う。例えば，固定補間フィルタでは，用意された複数の固定補間フィルタのインデックスを順番に試行し，レート歪みコストを算出する。ここでは，事前に定義されたフィルタセットを試行することにより，最適となるフィルタインデックスを取得する。本ステップでは，例えば，二乗誤差エネルギーに基づくコスト関数などの既存フィルタ決定方法を用いることが可能である。
【０１００】
続いて，ステップＳ３０７では，再定義後の領域分割の結果から，領域ごとに補間フィルタオフセットの計算を行う。オフセットの算出方法は，既存の方法を用いることができる。すなわち，輝度値の変化量を領域ごとに計算し，フィルタオフセットを取得する。
【０１０１】
続いて，ステップＳ３０８では，ステップＳ３０６で得られた固定補間フィルタインデックスおよびステップＳ３０７で得られたフィルタオフセットを用いて，参照画像の補間を実行する。
【０１０２】
続いて，ステップＳ３０９では，ステップＳ３０８で得られた補間画像に対して動きベクトルを導出する。
【０１０３】
続いて，ステップＳ３１０では，ステップＳ３０６で得られた固定補間フィルタインデックスに関する情報と領域分割に必要となる情報，およびステップＳ３０７で得られたフィルタオフセットに関する情報をそれぞれ符号化する。
【０１０４】
続いて，ステップＳ３１１では，残された符号化すべき情報（テクスチャ情報すなわち量子化係数値や動きベクトルなど）を全て符号化する。
【０１０５】
続いて，ステップＳ３１２では，ステップＳ３０２で選択した分割モード以外にも探索すべき分割モードがないかを確認する。もし探索すべき分割モードがあれば，ステップＳ３０２へ戻り，同様に処理を繰り返し，全て終わっていれば，ステップＳ３１３へ移る。
【０１０６】
続いて，ステップＳ３１３では，ステップＳ３１２に対するループの結果からレート歪みコストを最小化する分割モードを確定する。この情報は符号化して伝送する。
【０１０７】
続いて，ステップＳ３１４では，入力画像フレームが全て終わったかの判定を行う。もし終わっていなければ，ステップＳ３０１へ戻り，次のフレームに処理を移す。全てのフレームが終わっていれば，エンコード処理を終了する。
【０１０８】
〔符号化処理（例４）〕
図１１は，映像符号化装置１０が実行する映像符号化処理の第４の例を示す。以下では，特に断りがない限り，輝度信号での処理を仮定して説明するが，輝度信号だけでなく，色差信号にも適用可能である。この例では，領域分割後に領域分割再定義処理により領域範囲の修正を行い，領域単位で最適な固定補間フィルタおよび最適なフィルタオフセットを決定し，符号化済みフレームの情報を分析して符号語割り当てを変更して符号化を実施する。
【０１０９】
まず，ステップＳ４０１では，符号化対象画像のフレームを入力する。
【０１１０】
続いて，ステップＳ４０２では，事前に定義された分割モードから１つを選択する。
【０１１１】
続いて，ステップＳ４０３では，フレームをブロック，例えば，ｍ×ｎ（ｍ，ｎは正の整数）の動き予測のブロックサイズに分割し，ブロック単位で最適な動きベクトルを算出する。ステップＳ４０３における参照画像の小数精度画素の補間には，例えば，従来のＨ．２６４／ＡＶＣによる固定６タップフィルタを用いる。また，動き探索処理節約のため，前フレームと同位置のブロックが指し示す動きベクトルを用いてもよい。
【０１１２】
続いて，ステップＳ４０４では，ステップＳ４０３にて得られた１本もしくは複数の動きベクトルを用いて，当該ブロックに領域分割番号を付与する。符号化処理（例１）のステップＳ１０４と同様に，符号化情報（動きベクトルやテクスチャ情報など）を用いて領域分割を行う。
【０１１３】
続いて，ステップＳ４０５では，ステップＳ４０４にて得られた領域分割情報から，領域分割再定義処理を実施する。領域分割再定義処理の詳細は，図６および図７を用いて詳述した処理となる。
【０１１４】
続いて，ステップＳ４０６では，ステップＳ４０５の再定義後の領域分割の結果から，領域ごとに補間フィルタの最適化処理を行う。用意された複数の固定補間フィルタのインデックスを順番に試行し，レート歪みコストを算出する。ここでは，事前に定義されたフィルタセットを試行することにより，最適となるフィルタインデックスを取得する。本ステップでは，例えば二乗誤差エネルギーに基づくコスト関数などの既存のフィルタ決定方法を用いることが可能である。
【０１１５】
続いて，ステップＳ４０７では，再定義後の領域分割の結果から，領域ごとに補間フィルタオフセットの計算を行う。オフセットの算出方法は，既存の方法を用いることができる。すなわち，輝度値の変化量を領域ごとに計算し，フィルタオフセットを取得する。
【０１１６】
続いて，ステップＳ４０８では，ステップＳ４０６で得られた固定補間フィルタインデックスおよびステップＳ４０７で得られたフィルタオフセットを用いて，参照画像の補間を実行する。
【０１１７】
続いて，ステップＳ４０９では，ステップＳ４０８で得られた補間画像に対して動きベクトルを導出する。
【０１１８】
続いて，ステップＳ４１０では，符号化済みフレームを解析し，選ばれた補間フィルタセットのインデックスの生起確率を計算する。
【０１１９】
続いて，ステップＳ４１１では，ステップＳ４１０にて得られた生起確率をもとに，インデックスを符号化する際に用いる符号語の割り当てを調整する。例えば，生起確率が最大のインデックスを最短の符号長となるように割り当てる。
【０１２０】
続いて，ステップＳ４１２では，ステップＳ４０６で得られた固定補間フィルタインデックスに関する情報およびステップＳ４０７で得られたフィルタオフセットに関する情報を，ステップＳ４１１にて選ばれた符号語を用いて，符号化する。
【０１２１】
続いて，ステップＳ４１３では，残された符号化すべき情報（テクスチャ情報すなわち量子化係数値や動きベクトルなど）を全て符号化する。
【０１２２】
続いて，ステップＳ４１４では，ステップＳ４０２で選択した分割モード以外にも探索すべき分割モードがないかを確認する。もし探索すべき分割モードがあれば，ステップＳ４０２へ戻り，同様に処理を繰り返し，全て終わっていれば，ステップＳ４１５へ移る。
【０１２３】
続いて，ステップＳ４１５では，ステップＳ４１４に対するループの結果からレート歪みコストを最小化する分割モードを確定する。この情報は符号化して伝送する。
【０１２４】
続いて，ステップＳ４１６では，入力画像フレームが全て終わったかの判定を行う。もし終わっていなければ，ステップＳ４０１へ戻り，次のフレームに処理を移す。全てのフレームが終わっていれば，エンコード処理を終了する。
【０１２５】
〔映像復号装置〕
図１２は，本発明に係る映像復号装置の構成例を示す図である。映像復号装置２０は，図１に示す映像符号化装置１０が符号化したビットストリームを入力し，動きベクトルやエッジ情報を利用した領域分割による領域ごとに補間フィルタを切り替えて，小数精度画素の補間を行い，小数精度の動き補償によって映像を復号する装置である。
【０１２６】
映像復号装置２０において，可変長復号部２１は，符号化ビットストリームを入力して，量子化変換係数，動きベクトル，補間フィルタ係数群などの復号を行う。エッジ算出部２２は，動き補償時の参照画像からエッジ角度またはさらにエッジ強度等のエッジ情報を抽出する処理を行う。領域判定部２３は，エッジ算出部２２が算出したエッジ情報を用いて，復号対象フレームについて補間フィルタ係数を切り替える単位となる領域を判定する。なお，この判定にエッジ情報ではなく，動きベクトルなどの他の符号化情報を用いることもできる。
【０１２７】
分割再定義部２４は，領域判定部２３が判定した領域分割情報から，領域の範囲を調整する領域分割再定義処理を実施する。補間フィルタ係数切り替え部２５は，分割再定義部２４が定義した再定義済み領域分割情報が示す領域ごとに，可変長復号部２１で復号した補間フィルタ係数を切り替える。
【０１２８】
予測信号生成部２６における参照画像補間部２６１は，参照画像メモリ２８に格納された復号済み参照画像に，補間フィルタ係数切り替え部２５から受け取った補間フィルタ係数による補間フィルタを適用し，参照画像の小数精度画素の復元を行う。予測信号生成部２６は，小数精度画素の復元が行われた参照画像から，復号対象ブロックの予測信号を生成する。
【０１２９】
予測復号部２７は，可変長復号部２１で復号した量子化係数の逆量子化，逆直交変換などを行い，それにより算出された予測誤差信号と，予測信号生成部２６が生成した予測信号とを足し合わせて復号信号を生成し，復号画像として出力する。また，予測復号部２７が復号した復号信号は，後の予測復号のために，参照画像メモリ２８に格納する。
【０１３０】
〔映像復号装置の処理フロー〕
図１３は，映像復号装置２０が実行する映像復号処理のフローチャートである。以下では，特に断りがない限り，輝度信号での処理を仮定して説明するが，輝度信号だけでなく，色差信号にも適用可能である。
【０１３１】
まず，ステップＳ５０１では，各種オーバーヘッド情報が含まれるフレームヘッダの情報を復号して取得する。
【０１３２】
続いて，ステップＳ５０２では，ステップＳ５０１のヘッダ情報から分割モード情報を復号する。
【０１３３】
続いて，ステップＳ５０３では，ステップＳ５０１のヘッダ情報から補間フィルタ情報を復号する。例えば，固定補間フィルタを用いる場合，補間フィルタインデックスおよびオフセットを復号する。適応補間フィルタの場合，補間フィルタ係数を復号する。
【０１３４】
続いて，ステップＳ５０４では，動きベクトル，参照インデックス，ＤＣＴ係数といった符号化情報を全て復号する。
【０１３５】
続いて，ステップＳ５０５では，参照画像のエッジ算出を行う。
【０１３６】
続いて，ステップＳ５０６では，領域判定部２３が，ステップＳ５０２にて復号された分割情報から映像符号化装置１０にて定義された分割モードに従って，領域判定処理を行う。例えば，符号化装置側で動きベクトルを用いて，領域分割を行った場合，同様の定義に従って，復号装置側でも分割を行う。
【０１３７】
続いて，ステップＳ５０７では，ステップＳ５０６にて得られた領域情報から，領域分割再定義処理を実施し，領域分割番号をブロック単位で修正する。フロー詳細については，図６および図７に示される処理と同じアルゴリズムを用いる。
【０１３８】
続いて，ステップＳ５０８では，ステップＳ５０７で得られた領域分割番号から，ステップＳ５０３で復号された最適な補間フィルタインデックスおよびオフセットないしは補間フィルタ係数を選択し，参照画像の小数精度画素の復元を行う。小数精度画素の復元後，ステップＳ５０４で復号した動きベクトルを用いて，復号対象ブロックの予測信号の生成を行う。
【０１３９】
続いて，ステップＳ５０９では，入力ビットストリームから復号対象ブロックの予測誤差信号の復号を行う。
【０１４０】
続いて，ステップＳ５１０では，ステップＳ５０８で得られた予測信号と，ステップＳ５０９で得られた予測誤差信号を足し合わせて，復号信号を生成する。
【０１４１】
続いて，ステップＳ５１１では，入力ビットストリームの全フレームに対するデコード処理が全て終わったかの判定を行う。もし終わっていなければ，ステップＳ５０１へ戻り，次のフレームに処理を移す。全てのフレームが終わっていれば，デコード処理を終了する。
【０１４２】
以上の映像符号化および映像復号の処理は，コンピュータとソフトウェアプログラムとによっても実現することができ，そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも，ネットワークを通して提供することも可能である。
【符号の説明】
【０１４３】
１０  映像符号化装置
１１  領域分割部
１２  エッジ計算部
１３  領域分割再定義処理部
１４  補間フィルタ係数切り替え部
１５  予測信号生成部
１５１  参照画像補間部
１５２  動き検出部
１６  予測符号化部
１７  可変長符号化部
１８  復号部
１９  参照画像メモリ
２０  映像復号装置
２１  可変長復号部
２２  エッジ算出部
２３  領域判定部
２４  分割再定義部
２５  補間フィルタ係数切り替え部
２６  予測信号生成部
２６１  参照画像補間部
２７  予測復号部
２８  参照画像メモリ
【図１】
0005485851.tif 000004
【図２】
0005485851.tif 000005
【図３】
0005485851.tif 000006
【図４】
0005485851.tif 000007
【図５】
0005485851.tif 000008
【図６】
0005485851.tif 000009
【図７】
0005485851.tif 000010
【図８】
0005485851.tif 000011
【図９】
0005485851.tif 000012
【図１０】
0005485851.tif 000013
【図１１】
0005485851.tif 000014
【図１２】
0005485851.tif 000015
【図１３】
0005485851.tif 000016
【図１４】
0005485851.tif 000017
【図１５】
0005485851.tif 000018
【図１６】
0005485851.tif 000019