(57)【要約】【課題】  補間フィルタリングに必要なメモリ帯域幅を削減することができ且つ少数動き探索に適した補間方法を提供する。【解決手段】  補間フィルタリング処理を行うために必要なデータ領域を読み込み領域及び推測領域に区分するステップと、読み込み領域内のデータを読み込むステップと、読み込み領域のデータを用いて推測領域内にデータを生成するステップと、データ領域を入力データとして用いて補間フィルタリング処理を行うステップとを備える。【選択図】図２
2010259116.tif 000002
【特許請求の範囲】
【請求項１】
リードブロックのデータ領域に小数動き推定を行う補間方法であって、
補間フィルタリング処理を行うために必要な前記データ領域を、前記補間フィルタリング処理に対応する現在のブロックよりも大きく且つ前記データ領域よりも小さい読み込み領域及び推測領域に区分するステップと、
前記読み込み領域内のデータを読み込むステップと、
前記読み込み領域の前記データを用いて前記推測領域内にデータを生成するステップと、
前記データ領域を入力データとして用いて前記補間フィルタリング処理を行い、基準フレームブロックを生成するステップと、を備えることを特徴とする補間方法。
【請求項２】
前記読み込み領域は長方形をなしていることを特徴とする請求項１に記載の補間方法。
【請求項３】
前記読み込み領域は、前記基準フレームブロックを覆い、前記推測領域は、前記データ領域内で前記読み込み領域の外側であることを特徴とする請求項１に記載の補間方法。
【請求項４】
前記推測領域内にデータを生成するステップは、前記読み込み領域内の前記データを直接用いて前記推測領域に書き込み、前記推測領域の各位置で、該位置に最も近い位置にある前記読み込み領域の前記データを用いて前記位置に書き込むことを特徴とする請求項１
に記載の補間方法。
【請求項５】
リードブロックのデータ領域に小数動き推定を行うコスト関数演算方法であって、
補間フィルタリング処理が必要とする前記データ領域を、前記補間フィルタリング処理に対応する現在のブロックよりも大きく且つ前記データ領域よりも小さい読み込み領域及び推測領域に区分するステップと、
前記読み込み領域内のデータを読み込むステップと、
前記読み込み領域の前記データを用いて前記推測領域内にデータを生成するステップと、
前記データ領域を入力データとして用いて前記補間フィルタリング処理を行い、基準フレームブロックを生成するステップと、
コスト関数を演算処理するために、前記補間フィルタリング処理に対応する現在のブロックを、前記補間フィルタリング処理を行うステップで形成された基準フレーム信号と比較するステップと、を備えることを特徴とするコスト関数演算方法。
【請求項６】
前記読み込み領域は、長方形をなしていることを特徴とする請求項５に記載のコスト関数演算方法。
【請求項７】
前記読み込み領域は、前記推測領域を覆い、前記推測領域は、前記データ領域内で前記読み込み領域の外側であることを特徴とする請求項５に記載のコスト関数演算方法。
【請求項８】
前記推測領域内にデータを生成する方法は、前記読み込み領域内の前記データを直接用いて前記推測領域に書き込み、前記推測領域の各位置で、該位置に最も近い位置にある前記読み込み領域の前記データを用いて前記位置に書き込むことを特徴とする請求項５に記載のコスト関数演算方法。
【請求項９】
リードブロックのデータ領域に小数動き推定を行うコスト関数演算装置あって、
補間フィルタリング処理を行うために必要な前記データ領域を、前記補間フィルタリング処理に対応する現在のブロックよりも大きく且つ前記データ領域よりも小さい読み込み領域及び推測領域に区分し、前記読み込み領域内のデータを読み込み、前記読み込み領域の前記データを用いて前記推測領域内にデータを生成し、前記データ領域を入力データとして用いて前記補間フィルタリング処理を行い、基準フレームブロックを生成する補間器と、
コスト関数を演算処理するために、前記補間フィルタリング処理に対応する現在のブロックを前記補間器により形成された基準フレーム信号と比較する演算ユニットと、を備えることを特徴とするコスト関数演算装置。
【請求項１０】
前記読み込み領域は長方形をなしていることを特徴とする請求項９に記載のコスト関数演算装置。
【請求項１１】
前記読み込み領域は、前記推測領域を覆い、前記推測領域は、前記データ領域内で前記読み込み領域の外側であることを特徴とする請求項９に記載のコスト関数演算装置。
【請求項１２】
前記補間器は、前記推測領域に書き込むために、前記読み込み領域内の前記データを直接用いることを特徴とする請求項９に記載のコスト関数演算装置。
【請求項１３】
前記補間器は、前記推測領域の各位置で、該位置に書き込むために、該位置に最も近い前記読み込み領域の前記データを用いることを特徴とする請求項１２に記載のコスト関数演算装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動き推定のための補間方法、コスト関数演算方法及びコスト関数演算装置に関する。特に、本発明は、小数動き推定（decimal motion estimation）に適した補間方法、コスト関数演算方法及びコスト関数演算装置に関する。
【背景技術】
【０００２】
画像圧縮及びコード化では、動き推定は、主に、一定範囲内での運動ベクトルのコスト関数の演算及び比較を含む。小数動き推定の初期の技術を２つの主要タイプに分けることができる。第１の方法では、小数位置での運動ベクトルのために、小数点位置の予測信号を得るように、基準フレームに補間フィルタリングを行う。その後、コスト関数を生成するために、予測信号とオリジナルフレームとの比較が行われる。しかしながら、この方法は補間フィルタリング演算処理を必要とする。更に、補間フィルタリングを適切に行うべく、ブロックの端で補間フィルタリングのためのデータを提供するために、オリジナルブロックよりもより多くのデータが読み込まれる必要がある。
【０００３】
例えば、図１は、補間フィルタリングの従来技術を示す図である。図１に示すように、４×４の拡張を有する現在のブロックに完全な（２．５，２．５）運動ベクトルのための基準ブロック１０１を生成するために、４×４のブロックよりも多くのデータを読み込む必要がある。補間フィルタの長さが４である場合、運動ベクトルに中心がある７×７の整数ブロックのデータ（図１の小さなブロック）を読み込む必要がある。その後、小数点位置信号（図１の十字形）を得るために、読み込まれたデータを補間する必要がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許５６２３３１３号
【特許文献２】米国特許５６９４１７９号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
この方法の一つの大きな欠点は、小数点位置のための基準ブロックを生成するために、オリジナルブロックよりも多くのデータを読み込まなければならないことである。その結果、メモリ帯域幅は増大する。図１に示す例では、７×７のブロックは、オリジナルの４×４のブロックのおよそ３倍のメモリ帯域幅を有する。なお、メモリ帯域幅は、補間フィルタの長さと共に増大する。更に、可変長ブロックの動き推定を支持するために、ブロックサイズに対する読み込みデータ量の比率は、ブロックサイズが減少するにつれて増大する。その結果、メモリ帯域幅は劇的に増大する。
【０００６】
第２の従来の小数動き推定方法は、特許文献１及び特許文献２に開示された方法に似ている。積分点運動ベクトルから得られたコスト関数により、小数点運動ベクトルの推測コスト関数が得られる。この方法では、補間演算処理及びメモリ帯域幅の量を大幅に削減することができる。しかしながら、その推測コスト関数は、正確ではなく、従って、圧縮品質に深刻な損害をもたらす。  
【０００７】
即ち、従来技術では、少ないメモリ帯域幅と高い圧縮品質とを同時に提供することができない。
【０００８】
従って、本発明の少なくとも一つの目的は、補間フィルタリングに必要なメモリ帯域幅を削減することができ且つ小数動き推定に適した補間方法を提供することである。
【０００９】
本発明の少なくとも別の目的は、コスト関数演算方法及びコスト関数演算装置を提供することであり、特に、補間フィルタリングに必要なメモリ帯域幅を削減することができるように、小数動き推定に適したコスト関数演算方法及びコスト関数演算装置を提供することである。更に、より高いコスト関数精度及び圧縮品質を提供することができる。
【課題を解決するための手段】
【００１０】
本発明の目的に応じて上述及び他の効果を達成するために、ここで実施され広く記載されているように、本発明は、小数動き推定に適した補間方法を提供する。この補間方法は次のステップを含む。まず、（ａ）補間フィルタリング処理に必要なデータ領域を読み込み領域と推測領域とに区分する。（ｂ）読み込み領域のデータを読み込み、その後、（ｃ）読み込み領域のデータに基づき推測領域にデータを生成する。最後に、（ｄ）データ領域を入力データとして用いて補間フィルタリング処理を行う。  
【００１１】
上述の補間方法の一つの実施例では、読み込み領域の大きさは、対応する補間フィルタリング処理の現在のブロックよりも大きく且つデータ領域よりも小さい。
【００１２】
補間方法の一つの実施例では、ステップ（ｃ）は、読み込み領域のデータを直接用いて推測領域を満たす。
【００１３】
補間方法の一つの実施例では、ステップ（ｃ）は、推測領域内の各位置で、この位置に一番近い位置に配置された読み込み領域内のデータを用いて前記位置を満たす。
【００１４】
別の見方をすると、本発明は、小数動き推定に適したコスト関数演算方法を提供する。コスト関数演算は、上述の補間方法の全てのステップと、次の追加のステップとを含み、（ｅ）コスト関数を演算するために、補間フィルタリング処理に対応する現在のブロックと、ステップ（ｄ）で形成された基準フレーム信号とを比較する。
【００１５】
別の見方をすると、本発明は、小数動き推定に適したコスト関数演算装置を提供する。この装置は、補間器ユニット及び演算ユニットを備える。補間フィルタリングに必要なデータ領域は、読み込み領域及び推測領域に区分される。読み込み領域内のデータは読み込まれる。その後、推測領域内のデータが読み込み領域からのデータを用いて形成される。最後に、データ領域を入力データとして用いて補間フィルタリングが実行される。演算ユニットは、コスト関数を演算するために、補間フィルタリングに対応する現在のブロックと補間フィルタリングにより生成された基準フレーム信号とを比較する。
【発明の効果】
【００１６】
本発明の一つの重大な一面は、補間フィルタリング処理に必要な全てのデータを読み込むのではなく、該データの一部を読み込むことである。その後、そのデータの読み込まれた部分を用いてそのデータの残りの部分を生成する。少ないデータを読み込むため、補間フィルタリングを行うために必要なメモリ帯域幅を減らすことができる。更に、補間フィルタリング処理のほとんどのデータは、オリジナルの基準フレームデータのままである。その結果、本発明は、精密なコスト関数を提供し、高い圧縮品質をもたらすことができる。
【図面の簡単な説明】
【００１７】
【図１】補間フィルタリングの従来技術を示す図である。
【図２】本発明の一つの実施例による補間方法を示す図である。
【図３】本発明の一つの実施例による補間方法及びコスト関数演算方法を示すフローチャートである。
【図４】本発明の一つの実施例によるコスト関数演算装置のブロック図である。
【発明を実施するための形態】
【００１８】
上述の一般的な説明及び以下の詳細な説明は、例示的なものであり、請求の範囲に記載された発明の更なる説明を提供することを意図とする。
【００１９】
添付図面は、本発明の更なる理解を提供するために含まれ、この明細書の一部を構成するために組み込まれる。図面は、本発明の実施例を示し、説明と共に、本発明の原理を説明する役割を果たす。
【００２０】
本発明の好ましい実施例を詳細に説明するために、添付図面に示される例に符号を用いる。同一又は同様の部分を可能な限り参照するために、同一符号を、図面及び説明に用いる。
【実施例】
【００２１】
図２は、本発明の一つの実施例による補間方法を示す図である。図２の例は、４×４の拡張を有する現在のブロックに完全な（２．５，２．５）運動ベクトルのための基準ブロック２０１の生成を示す。補間フィルタの長さが４である場合、従来の方法は、７×７のデータ領域２０３の読み込みを必要とする。本発明では、データ領域２０３の一部のみが読み込まれる。
【００２２】
図３は、本発明の一つの実施例による補間方法及びコスト関数演算方法を示すフローチャートである。まず、ステップ３１０では、補間フィルタリングに必要なデータ領域２０３が、５×５の読み込み領域２０４と残りの部分を占める推測領域２０５とに区分される。図２に示す読み込み領域２０４は、推測領域２０５よりも基準フレームブロック２０１の中心の近くに設けられた５×５の正方形である。明らかに、本発明の読み込み領域は、図２に示す形、位置及びサイズに限定されない。本発明の読み込み領域の形を、長方形又は他の形とすることができ、位置を基準フレームブロックの中心から多少ずらすことができる。更に、読み込み領域のサイズが、現在のブロック（本実施例では４×４）より大きく且つデータ領域（本実施例では７×７）よりも小さい限り、コスト関数の精度を維持しながらメモリ帯域幅を小さくすることができる。
【００２３】
領域を区分した後、読み込み領域２０４内のデータ（図２の小さなブロック）を読み込むためにステップ３２０が実行される。その後、読み込み領域２０４からデータを用いて推測領域２０５内にデータ（図２に示す小さい丸）を生成するために、ステップ３３０が実行される。本実施例では、ステップ３３０は、読み込み領域２０４内のデータを直接用いて推測領域２０５を満たす。即ち、推測領域２０５の各位置は、それらの位置に最も近い読み込み領域２０４のデータを用いて満たされる。例えば、位置２１１のデータは、図２の２１２〜２１４の３つの位置を満たす。
【００２４】
その後、ステップ３４０では、補間基準フレームブロック２０１（図２に示す交差点）を形成するために、全体のデータ領域２０３を入力データとして用いて補間フィルタリング処理が行われる。これにより、本実施例による補間フィルタリングは終了する。
【００２５】
また、コスト関数演算方法は、本実施例の補間方法から由来する。上述の補間方法との大きな違いは、コスト関数演算方法が更なるステップを含むことである。即ち、ステップ３４０の実行後、現在のブロックをステップ３４０で生成された基準フレーム信号２０１と比較し、その後、コスト関数を演算処理するために、別のステップ３５０が実行される。
【００２６】
本実施例では、必要なメモリ帯域幅がオリジナルの７×７ブロックの５１％のみとなるように、読み込み領域２０４は５×５ブロックのみである。補間フィルタリングのためのデータのほとんどは、基準フレームからもたらされるため、本実施例は、小数運動ベクトルのための基準ブロックの非常に精密な判断を得ることができる。更に、本発明は、メモリ帯域幅と基準ブロックの精度との間の歩み寄りを認める。例えば、本実施例では、動き推定のより良い品質と引き換えに、より大きなメモリ帯域幅が用いられるように、読み込み領域２０４を６×６ブロックに拡大することができる。
【００２７】
また、本発明は、上述の補間方法及びコスト関数演算方法の他に、コスト関数演算装置を提供する。図４は、本発明の一つの実施例によるコスト関数演算装置のブロック図である。図４に示すように、コスト関数演算装置は、補間記４０１及び演算ユニット４０２を備える。補間器４０１は、補間フィルタリングのためのデータ領域２０３を読み込み領域２０４と推測領域２０５とに区分する。その後、読み込み領域２０４内のデータは読み込まれる。その後、読み込み領域２０４内のデータは、推測領域２０５内にデータを生成するために用いられる。最後に、全体のデータ領域２０３を入力データとして用いて、補間基準フレーム信号２０１を形成するために、補間フィルタリングが行われる。演算ユニット４０２は、補間フィルタリング処理に対応する現在のブロックと補間器４０１により形成された基準フレーム信号２０１とを比較し、コスト関数を演算処理する。
【００２８】
要約すると、本発明の重大な一面は、補間フィルタリング処理に必要な全てのデータを読み込まないことである。データの一部のみを読み込み、読み込まれた部分は、残りのデータを生成するために用いられる。読み込まれたデータの量は少ないため、補間フィルタリング処理のメモリ帯域幅は削減される。更に、補間フィルタリング処理のデータのほとんどは、オリジナル基準フレームから由来する。これにより、本発明は、正確なコスト関数及び高い圧縮品質を提供することができる。
【００２９】
本発明の範囲又は精神から逸脱しない限り、本発明の構造に種々の改良及び変形が施されることは、当業者にとって明らかである。上記を考慮して、本発明は、以下の請求項及びその均等の範囲に含まれる変形例や改良例を含む。
【符号の説明】
【００３０】
２０１    基準フレームブロック
２０３    データ領域
２０４    読み込み領域
２０５    推測領域
４０１    補間器
４０２    演算ユニット
【図１】
2010259116.tif 000003
【図２】
2010259116.tif 000004
【図３】
2010259116.tif 000005
【図４】
2010259116.tif 000006