(57)【要約】【課題】精度よく符号化効率の高いマクロブロックパーティションを決定可能な技術を提供する。【解決手段】動画像符号化装置であって、動きベクトル検出のためのブロックの分割パターンを複数パターン中から選択し、選択分割パターンに応じて分割されたマクロブロックにつき、参照画像の探索範囲内においてマッチング誤差を算出する。マッチング誤差が最小の位置に基づき動きベクトルを検出し、各パターンについて検出された動きベクトルに対応するマッチング誤差を比較して、最小となるマッチング誤差に基づき符号化に用いるマクロブロックの分割パターンを決定する。その際、符号化対象画像の種類に基づきパターン毎にマッチング誤差に重み付けする。【選択図】  図１
2011035677.tif 000002
【特許請求の範囲】
【請求項１】
符号化対象の画像をマクロブロックに分割し、該マクロブロックについて参照画像とのマッチング誤差を算出して動きベクトルを検出し、予測符号化を行う動画像符号化装置であって、
前記マクロブロックについて前記動きベクトルの検出を行うためのブロックの分割パターンを、複数の分割パターンのうちから選択する選択手段と、
選択された分割パターンに応じて分割されたマクロブロックにつき、参照画像の探索範囲内において前記マッチング誤差を算出し、該マッチング誤差が最小となる位置に基づき動きベクトルを検出する動きベクトル探索手段と、
前記複数の分割パターンのそれぞれについて検出された動きベクトルに対応する前記マッチング誤差を比較して、最小となるマッチング誤差に基づき符号化に用いるマクロブロックの分割パターンを決定する決定手段と
を備え、
前記決定手段は、
各マッチング誤差に対応する分割パターンに応じた重み付けを与えて前記比較を行い、
前記重み付けは、前記符号化対象の画像がフレーム画像の場合には前記複数の分割パターンについて均等であって、
前記重み付けは、前記符号化対象の画像がフィールド画像の場合には、前記複数の分割パターンのうち前記マクロブロックを横長に分割するパターンについて最も小さな重み付けを与える
ことを特徴とする動画像符号化装置。
【請求項２】
前記決定手段は、前記符号化対象の画像がフィールド画像の場合に、前記マクロブロックを縦長に分割するパターンについて最も大きな重み付けを与えることを特徴とする請求項１に記載の動画像符号化装置。
【請求項３】
前記選択手段は、前記符号化対象の画像がフィールド画像の場合に、前記複数の分割パターンのうち、前記決定手段の重み付けの小さいものから所定数のみを選択することを特徴とする請求項１または２に記載の動画像符号化装置。
【請求項４】
符号化対象の画像をマクロブロックに分割し、該マクロブロックについて参照画像とのマッチング誤差を算出して動きベクトルを検出し、予測符号化を行う動画像符号化方法であって、
選択手段が、前記マクロブロックについて前記動きベクトルの検出を行うためのブロックの分割パターンを、複数の分割パターンのうちから選択する選択工程と、
動きベクトル探索手段が、選択された分割パターンに応じて分割されたマクロブロックにつき、参照画像の探索範囲内において前記マッチング誤差を算出し、該マッチング誤差が最小となる位置に基づき動きベクトルを検出する動きベクトル探索工程と、
決定手段が、前記複数の分割パターンのそれぞれについて検出された動きベクトルに対応する前記マッチング誤差を比較して、最小となるマッチング誤差に基づき符号化に用いるマクロブロックの分割パターンを決定する決定工程と
を備え、
前記決定工程では、
各マッチング誤差に対応する分割パターンに応じた重み付けを与えて前記比較を行い、
前記重み付けは、前記符号化対象の画像がフレーム画像の場合には前記複数の分割パターンについて均等であって、
前記重み付けは、前記符号化対象の画像がフィールド画像の場合には、前記複数の分割パターンのうち前記マクロブロックを横長に分割するパターンについて最も小さな重み付けを与える
ことを特徴とする動画像符号化方法。
【請求項５】
前記決定工程では、前記符号化対象の画像がフィールド画像の場合に、前記マクロブロックを縦長に分割するパターンについて最も大きな重み付けが与えられることを特徴とする請求項４に記載の動画像符号化方法。
【請求項６】
前記選択工程では、前記符号化対象の画像がフィールド画像の場合に、前記複数の分割パターンのうち、前記決定工程における重み付けの小さいものから所定数のみを選択することを特徴とする請求項４または５に記載の動画像符号化方法。
【請求項７】
コンピュータに請求項４乃至６のいずれか１項に記載の動画像符号化方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像符号化装置、動画像符号化方法及びコンピュータプログラムに関する。
【背景技術】
【０００２】
近年、マルチメディアに関連する情報のデジタル化が急進しており、それに伴い映像情報の高画質化に向けた要求が高まっている。具体的な例として放送メディアの従来の７２０×４８０画素のＳＤから、１９２０×１０８０画素のＨＤへの移行を挙げることができる。しかしながら、この高画質への要求は同時にデジタルデータの増大を招き、従来性能を上回る圧縮符号化技術及び復号化技術が求められている。
【０００３】
これらの要求に対し、ITU-T SG16やISO/IEC  JTC1/SC29/WG11の活動で画像間の相関を利用したフレーム間予測を用いた符号化圧縮方式の標準化作業が進められている。この中でも、現状最も高能率符号化を実現しているといわれる符号化方式に、Ｈ．264/MPEG-4  PART10（AVC）（以下、Ｈ．２６４と呼ぶ）がある。なお、Ｈ．２６４の符号化・復号化の仕様については特許文献１に記載されている。
【０００４】
このＨ．２６４で新たに導入された技術のひとつとして、可変ブロックサイズ動き補償がある。この動き補償技術技術では、符号化単位である符号化ブロック（以下、マクロブロックと呼ぶ）を分割した動き補償ブロック（以下、マクロブロックパーティションと呼ぶ）を複数種類用意する。そして、この動き補償ブロックを用いて細かい画像単位の動き量を検出し、符号量をより低減することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５-１６７７２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
Ｈ.２６４では可変ブロックサイズ動き補償により動き補償ブロックの細分化を行うことができる。そうした選択の自由度がある一方で、Ｈ．２６４画像符号化の実装の際には、符号化効率の高いマクロブロックパーティションをいかにして選択するかという問題がある。そこで、本発明は精度よく符号化効率の高いマクロブロックパーティションを決定可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するための本発明は、
符号化対象の画像をマクロブロックに分割し、該マクロブロックについて参照画像とのマッチング誤差を算出して動きベクトルを検出し、予測符号化を行う動画像符号化装置であって、
前記マクロブロックについて前記動きベクトルの検出を行うためのブロックの分割パターンを、複数の分割パターンのうちから選択する選択手段と、
選択された分割パターンに応じて分割されたマクロブロックにつき、参照画像の探索範囲内において前記マッチング誤差を算出し、該マッチング誤差が最小となる位置に基づき動きベクトルを検出する動きベクトル探索手段と、
前記複数の分割パターンのそれぞれについて検出された動きベクトルに対応する前記マッチング誤差を比較して、最小となるマッチング誤差に基づき符号化に用いるマクロブロックの分割パターンを決定する決定手段と
を備え、
前記決定手段は、
各マッチング誤差に対応する分割パターンに応じた重み付けを与えて前記比較を行い、
前記重み付けは、前記符号化対象の画像がフレーム画像の場合には前記複数の分割パターンについて均等であって、
前記重み付けは、前記符号化対象の画像がフィールド画像の場合には、前記複数の分割パターンのうち前記マクロブロックを横長に分割するパターンについて最も小さな重み付けを与える
ことを特徴とする動画像符号化装置。
【発明の効果】
【０００８】
本発明によれば、Ｈ.２６４画像符号化の動き予測におけるマクロブロックパーティションを適応的に選択し、符号化効率を向上させることができる。
【図面の簡単な説明】
【０００９】
【図１】実施形態１の画像符号化装置の概略の構成を示すブロック図。
【図２】実施形態に係るマクロブロックパーティションを説明するための図。
【図３】実施形態１の画像符号化装置のインター予測部の概略の構成を示すブロック図。
【図４】実施形態１の画像符号化装置のインター予測部の動作を説明するフローチャート。
【図５】実施形態２の画像符号化装置のインター予測部の概略の構成を示すブロック図。
【発明を実施するための形態】
【００１０】
以下に添付の図面を参照しながら、動き補償符号化装置の実施形態を詳細に説明する。
【００１１】
［実施形態１］
図１は発明の実施形態１に対応する動画像償符号化装置の構成の一例を示す。図１の動画像符号化装置１００において、各ブロックは専用ロジック回路やメモリを用いてハードウェア的に構成されてもよい。或いは、メモリに記憶されている処理プログラムをＣＰＵが実行することにより、ソフトウェア的に構成されてもよい。
【００１２】
フレームメモリ１０１には、表示順に従って入力画像（原画像）がフレーム単位に入力され、これを保存する。フレームメモリ１０１からは、符号化順に符号化対象ブロックがインター予測部１０３、イントラ予測部１０５、減算器１１２に順次提供される。フィルタ後参照フレームメモリ１０２は、ループフィルタ１１５でフィルタ処理された符号化済み画像を参照画像として保存し、符号化順に符号化対象ブロックの参照画像をインター予測部１０３、動き補償部１０４に順次提供する。フィルタ前参照フレームメモリ１１４は、ループフィルタ１１５がフィルタ処理する前の符号化済み画像を参照画像として保存し、符号化順に符号化対象ブロックの参照画像をイントラ予測部１０５に順次提供する。
【００１３】
減算器１１２はフレームメモリ１０１からの符号化対象ブロックから、イントラ／インター判定部１１１からの予測画像ブロックを減算し、画像残差データを直交変換部１０６へ出力する。なお、予測画像ブロックの生成方法については後述する。直交変換部１０６では減算器１１２から出力された画像残差データを直交変換処理して、変換係数を量子化部１０７に提供する。量子化部１０７は直交変換部変換係数を所定の量子化パラメータを用いて量子化し、エントロピー符号化部１０８および逆量子化部１０９に提供する。エントロピー符号化部１０８は量子化部１０７で量子化された変換係数の入力に、CAVLC、CABACなどのエントロピー符号化を施して、符号化データを出力する。
【００１４】
続いて、量子化部１０７で量子化された変換係数を用いて参照画像データが生成される。具体的に、逆量子化部１０９は、量子化部１０７からの量子化された変換係数を逆量子化する。逆直交変換部１１０は、逆量子化部１０９で逆量子化された変換係数を逆直交変換し、復号残差データを生成し加算器１１３に提供する。加算器１１３は復号残差データと後述する予測画像データとを加算し、参照画像データを生成し、フィルタ前参照フレームメモリ１１４に保存する。参照画像データは、フィルタ前参照フレームメモリ１１４を介してループフィルタ１１５にも提供される。ループフィルタ１１５は参照画像データをフィルタリングしてノイズを除去し、フィルタ後の参照画像データをフィルタ後参照フレームメモリ１０２に保存する。
【００１５】
続いて、入力画像データおよびフィルタ前参照画像データ、フィルタ後参照画像データを用いた予測画像データの生成方法を説明する。インター予測部１０３は、フレームメモリ１０１から提供される符号化対象ブロックおよびフィルタ後参照フレームメモリ１０２から提供されるフィルタ後参照画像データから動きベクトルを検出する。検出された動きベクトルは、フィルタ後参照フレーム画像データ番号と共に動き補償部１０４に提供される。動きベクトル検出方法の詳細については後述する。動き補償部１０４はインター予測部１０３から送られた動きベクトルを用いて、フィルタ後参照フレームメモリ１０２中のフィルタ後参照フレーム画像データ番号で示される参照フレーム画像を参照して、各ブロックの予測画像データを生成する。生成された予測画像データは、イントラ／インター判定部１１１に提供する。
【００１６】
一方、イントラ予測部１０５は符号化対象ブロック周辺の復号化済みデータを用いてイントラ予測モード別にイントラ予測画像を生成する。そしてフレームメモリ１０１から提供される符号化対象ブロックと生成した予測画像とを用いてイントラ予測を行い、適切なイントラ予測モードを選択し、予測画像をイントラ／インター判定部１１１に提供する。イントラ／インター判定部１１１は動き補償部１０４およびイントラ予測部１０５から提供されてくる予測画像データのうち適切な予測画像を選択して減算器１１２に提供する。
【００１７】
続いて、本発明に係る動きベクトルの検出方法およびマクロブロックパーティション（以下、「ＭＢＰ」）の決定方法について述べる。なお、本実施形態では複数種類のＭＢＰとして図２（a）の１６×１６、１６×８、８×１６、８×８が選択できる場合を例に挙げて説明する。また、本実施形態における画素アスペクトは正方形であるものとする。
【００１８】
ここで、図２を参照してＭＢＰについて詳細に説明する。Ｈ.２６４は図２（a）に示すようにＭＰＥＧ２で用いられているサイズである１６×１６画素を最大のマクロブロックタイプ（以下、「ＭＢタイプ」）とする。そして、最小８×８画素のＭＢタイプまでの４種類の分割パターンに応じた予測符号化ブロックを選ぶことができる。さらに、最小８×８画素の各ＭＢタイプは、図２（ｂ）に示すようなより細かいサブマクロブロックパーティション（以下、「ＳＭＢＰ」）に分割でき、最小４×４画素までの４種類のＳＭＢＰのいずれかに分割可能である。つまり、予測符号化ブロックは、３（ＳＭＢＰの対象外のＭＢＰ数）＋４（ＳＭＢＰ対象のＭＢ数）×４（ＳＭＢＰ数）＝１９種類のパーティション中から選ぶことになる。この結果、より細かい画像単位で動き情報を探索し、動き情報の精度の向上を実現している。
【００１９】
図３及び図４を参照して、実施形態におけるインター予測部１０３の動作を説明する。まず、Ｓ４０１において探索ＭＢＰ選択部３０５は、全ＭＢＰのうち未探索のパーティションを選択し、動きベクトル探索位置決定部３０４に提供する。次にＳ４０２では、動きベクトル探索位置決定部３０４が探索ＭＢＰ選択部３０５からのＭＢＰにつき動きベクトル探索位置を決定し、参照画像保存部３０２に通知する。動きベクトル探索位置は、符号化対象マクロブロックと同位置、或いは、符号化済み周辺マクロブロックの動きベクトルと同位置等に決定できるが、特に方法は問わない。参照画像保存部３０２は、符号化後に局部復号化された画像信号が参照画像データとして入力され保存されている。参照画像保存部３０２は、動きベクトル探索位置決定部３０４から指示された探索位置の所定の探索範囲の参照画像を動きベクトル探索部３０１に提供する。
【００２０】
Ｓ４０３で、動きベクトル探索部３０１は探索ＭＢＰでの動きベクトル（ＭＶ）を探索する。具体的に、動きベクトル探索部３０１には符号化対象画像データと参照画像保存部３０２からの参照画像データとが入力される。動きベクトル探索部３０１は探索範囲におけるマッチング誤差ＳＡＤを算出し、探索範囲内でＳＡＤが最も小さくなる動きベクトルを求める。なお、ＳＡＤ（Sum of Absolute Difference）は、符号化対象画素と参照画素の差分の絶対値和である。動きベクトル探索部３０１は動きベクトルとその時のＳＡＤをＭＢＰ決定部３０３に提供する。Ｓ４０４では、全てのＭＢＰでの探索が終了したか否かを判定し、終了していなければ（Ｓ４０４で「ＮＯ」）ＭＢＰを変更してＳ４０１に戻って処理を繰り返す。
【００２１】
全ＭＢＰでの探索が終了したら（Ｓ４０４で「ＹＥＳ」）、Ｓ４０５で動きベクトルＭＢＰを決定する。具体的に、ＭＢＰ決定部３０３は予め入力されている符号化対象画像の解像度の縦横比と各々のＭＢＰのＳＡＤとを、式１を用いてＭＢＰごとのInter_Costpartを求める。Inter_Costpartは、動きベクトルとＭＢＰを決定するためのパラメータであり、この値を比較して最も小さくなるＭＢＰ及びその時の動きベクトルを最終的な動きベクトル及びＭＢＰとして決定する。
【００２２】
Inter_Costpart ＝  SADpart + part_weightresolution・・・（式１）
なお、SADpartはＭＢＰのごとのＳＡＤ、part_weightresolutionはＭＢＰと符号化対象画像の解像度の縦横比によって決定するＭＢＰごとに異なる重み付けである。
【００２３】
本実施形態では、符号化対象画像の解像度の縦横比を、フィールド画像とフレーム画像との場合で説明する。以下、フィールド符号化時の解像度とフレーム符号化時の解像度とを例に挙げ、part_weightresolutionの決定法を説明する。フィールド符号化時は縦方向の解像度がフレーム符号化の場合の半分になる。
よって、同内容の画像を取り込んで符号化した場合、フィールドの方が１マクロブロックに表現される画像の内容（対象物が表現される領域）が、解像度との関連で縦方向に２倍広くなる。そのため、同一マクロブロックサイズの場合、画像の大きな信号変化も多くなり、情報量が多くなる。
【００２４】
例えば、フレーム符号化で１６×１６のＭＢサイズに含まれる情報量が、フィールド符号化で横長の１６×８のＭＢサイズに含まれることになる。ここでフレーム符号化時のpart_weightresolutionをＭＢＰごとに
１６×１６時  part_weightresolution  = α
１６×  ８時  part_weightresolution  = α
８×１６時  part_weightresolution  = α
８×  ８時  part_weightresolution  = α
のように均等な値とする。これはフレーム符号化の場合にはＭＢＰのパターンによって情報量が異なることはないからである。これに対して、フィールド符号化時のpart_weightresolutionは、
１６×１６時  part_weightresolution  = α
１６×  ８時  part_weightresolution  = β
８×１６時  part_weightresolution  = γ
８×  ８時  part_weightresolution  = α
として、重み付けに偏りを持たせている（但し、β＜α＜γ）。
【００２５】
上記の通り同一のマクロブロックサイズに含まれる情報量が縦方向にフレーム符号化時の２倍となり、フレーム符号化時に縦長のマクロブロックで探索を行うのと同等となる。そのため縦、横のバランスを考慮すると
１６×８＞１６×１６＝８×８＞８×１６
の順に適切なブロックサイズとなる確率が高くなる。そこで、フィールド符号化時にpart_weightresolutionにβ＜α＜γとなる差をつけている。このように各ＭＢＰに含まれる画像情報の縦横比が１：１に近いほどpart_weightresolutionが小さくなるようにpart_weightresolutionは設定される。
【００２６】
以上の本実施形態によれば、解像度に関する情報に応じて、適切なＭＢＰを適応的に選択し高能率な符号化を実現できる。なお、パーティション分割として１６×１６、１６×８、８×１６、８×８を用いて説明したが更に小さいパーティションにまで適用しても良い。
【００２７】
［実施形態２］
次に図５を参照しながら、本発明にかかる動画像符号化装置１００の別実施形態を詳細に説明する。ただし、図５に示す実施形態２に係るインター予測部１０３は実施形態１とほぼ同じ構造を有するが、符号化対象画像の解像度がＭＢＰ決定部３０３では無く探索ＭＢＰ決定部５０５に入力されている点が異なる。なお、探索ＭＢＰ決定部５０５、ＭＢＰ決定部３０３以外の構成の動作については実施形態１と同様のため説明を省く。なお、本実施形態における画素アスペクトは正方形であるものとする。また、本実施形態では、１６×１６、１６×８、８×１６、８×８のＭＢＰのうち所定数のパーティションのみを探索できる性能の動画像符号化装置であるものとする。所定数としては例えば、２つとすることができるが、これに限定されるものではない。
【００２８】
探索ＭＢＰ決定部５０５は符号化対象画像の解像度に応じて、１６×１６、１６×８、８×１６、８×８、４つのＭＢＰのうち、どの２つのＭＢＰで動き探索を行うかを選択する。そして選択されたＭＢＰのうち探索を行っていないパーティションを選択し、動きベクトル探索位置決定部３０４に提供する。
【００２９】
ここでフィールド符号化を行った場合の解像度とフレーム符号化を行った場合の解像度を例に挙げて探索を行うＭＢＰをどのように決定するか説明する。フィールド符号化の場合は縦方向の解像度がフレーム符号化の場合の半分になるため、同じ内容の画像を取り込んで符号化した場合、フィールドの方が１マクロブロックに表現される画像の内容（対象物が表現される領域）が縦方向に２倍広くなる。そのため、同一マクロブロックサイズの場合、画像の大きな信号変化も多くなり、情報量が多くなる。例えば、フレーム符号化で１６×１６のマクロブロックサイズに含まれる情報量がフレーム符号化で１６×８のマクロブロックサイズに含まれることになる。
【００３０】
ここで画素アスペクトが正方形であることを考慮し、フレーム符号化時に探索するＭＢＰとして１６×１６、８×８を選択したとすると、フィールド符号化時に探索するＭＢＰは１６×１６、１６×８となる。
【００３１】
前述の通り同一のマクロブロックサイズに含まれる情報量が縦方向にフレーム符号化時の２倍となり、フレーム符号化時に縦長のマクロブロックで探索を行うのと同等となる。そのため縦、横のバランスを考慮すると
１６×８＞１６×１６＝８×８＞８×１６
の順に適切なブロックサイズとなる確率が高くなる。そこで、フィールド符号化時にはまず１６×８を探索し、次に適切なブロックサイズになると思われる１６×１６を探索するよう設定している。このように動きベクトル探索を行う対象となるＭＢＰはＭＢＰに含まれる画像情報の縦横比が１：１に近いものから順に選択される。
【００３２】
このように、実施形態の構成では動画像符号化装置の処理性能が低く、全てのＭＢＰで探索が行えない場合においても、解像度に関する情報に応じて、適切なＭＢＰを適応的に選択し高能率な符号化を実現できる。また、パーティション分割として１６×１６、１６×８、８×１６、８×８を用いて説明したが更に小さいパーティションにまで適用しても良い。更に探索できるＭＢＰ数として二つの場合を例に挙げたが、異なる数のＭＢＰを探索できる場合にも適用可能である。
【００３３】
［その他の実施形態］
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2011035677.tif 000003
【図２】
2011035677.tif 000004
【図３】
2011035677.tif 000005
【図４】
2011035677.tif 000006
【図５】
2011035677.tif 000007