(57)【要約】【課題】処理量を削減しつつ、精度の高い動きベクトルを検出することができる動きベクトル検出装置および動きベクトル検出方法を提供する。【解決手段】動画像符号化装置１００は、符号化対象ブロックを含む入力画像と複数の参照画像候補とから縮小符号化対象画像および複数の縮小参照候補画像を生成する画像縮小部１、縮小符号化対象画像を複数個の領域に分割する領域分割部３、領域ごとに各縮小参照候補画像に対する領域動きベクトルをそれぞれ検出する領域動きベクトル検出部４、各領域動きベクトルの相関度を領域ごとに算出する相関度算出部５、領域動きベクトルと領域動きベクトルの相関度とに基づいて、領域ごとに複数の参照画像候補の中から１つの参照画像を選択する参照画像選択部６、および、選択された参照画像を用いて符号化対象ブロックの動きベクトルを検出する動き検出部を有する符号化部７を備える。【選択図】図１
2007166038.tif 000002
【特許請求の範囲】
【請求項１】
符号化対象画像に含まれる符号化対象ブロックの参照画像に対する動きベクトルを検出する動きベクトル検出装置であって、
前記符号化対象画像および複数の参照画像候補からそれぞれ画素数を低減した縮小符号化対象画像および複数の縮小参照候補画像を生成する画像縮小手段と、
前記縮小符号化対象画像を複数の領域に分割する領域分割手段と、
前記領域分割手段によって分割された分割領域の前記縮小参照候補画像に対する動きベクトルである領域動きベクトルを、複数の前記縮小参照候補画像ごとに検出する領域動きベクトル検出手段と、
前記領域動きベクトルおよび前記縮小参照候補画像から生成される分割領域予測画像と、前記分割領域画像との相関度を、複数の前記縮小参照候補画像ごとに算出する相関度算出手段と、
複数の前記参照画像候補の中から少なくとも１つの参照画像を前記相関度に基づいて前記分割領域ごとに選択する参照画像選択手段と、
前記分割領域に対応する領域に含まれる前記符号化対象ブロックの動きベクトルを、当該分割領域に対して前記参照画像選択手段によって選択された前記参照画像を用いて検出する動き検出手段と
を備えることを特徴とする動きベクトル検出装置。
【請求項２】
前記参照画像選択手段は、複数の前記参照画像候補の中から、前記相関度が高い縮小参照候補画像に対応する参照画像を選択する
ことを特徴とする請求項１記載の動きベクトル検出装置。
【請求項３】
前記参照画像選択手段は、複数の前記参照画像候補の中から少なくとも１つの参照画像を前記相関度および前記領域動きベクトルに基づいて前記分割領域ごとに選択する
ことを特徴とする請求項１記載の動きベクトル検出装置。
【請求項４】
前記参照画像選択手段は、複数の前記縮小参照候補画像ごとに算出された前記相関度が所定の閾値以上であるか否かを判定し、前記相関度が前記閾値以上である縮小参照候補画像がある場合、前記閾値以上である縮小参照候補画像の中から前記相関度が高い縮小参照候補画像に対応する参照画像を選択し、前記相関度が前記閾値以上である縮小参照候補画像がない場合、前記領域動きベクトルが小さい縮小参照候補画像に対応する参照画像を選択する
ことを特徴とする請求項３記載の動きベクトル検出装置。
【請求項５】
前記動きベクトル検出装置は、さらに、
前記符号化対象ブロックの動きベクトル探索範囲に関する情報を前記領域動きベクトルに基づいて決定する探索範囲決定手段を備え、
前記動き検出手段は、前記探索範囲決定手段によって決定された前記動きベクトル探索範囲に関する情報に基づいて、前記参照画像決定手段によって決定された前記参照画像における前記動きベクトル探索範囲を決定し、決定した前記動きベクトル探索範囲内を探索することによって、前記符号化対象ブロックの動きベクトルを検出する
ことを特徴とする請求項１記載の動きベクトル検出装置。
【請求項６】
前記探索範囲決定手段は、前記領域動きベクトルおよび前記相関度に基づいて、前記動きベクトル探索範囲に関する情報を決定する
ことを特徴とする請求項３記載の動きベクトル検出装置。
【請求項７】
符号化対象画像に含まれる符号化対象ブロックの参照画像に対する動きベクトルを検出する動きベクトル検出方法であって、
前記符号化対象画像および複数の参照画像候補からそれぞれ画素数を低減した縮小符号化対象画像および複数の縮小参照候補画像を生成する画像縮小ステップと、
前記縮小符号化対象画像を複数の領域に分割する領域分割ステップと、
前記領域分割ステップにおいて分割された分割領域の前記縮小参照候補画像に対する動きベクトルである領域動きベクトルを、複数の前記縮小参照候補画像ごとに検出する領域動きベクトル検出ステップと、
前記領域動きベクトルおよび前記縮小参照候補画像から生成される分割領域予測画像と、前記分割領域画像との相関度を、複数の前記縮小参照候補画像ごとに算出する相関度算出ステップと、
複数の前記参照画像候補の中から少なくとも１つの参照画像を前記相関度に基づいて前記分割領域ごとに選択する参照画像選択ステップと、
前記分割領域に対応する領域に含まれる前記符号化対象ブロックの動きベクトルを、当該分割領域に対して前記参照画像選択ステップにおいて選択された前記参照画像を用いて検出する動き検出ステップと
を含むことを特徴とする動きベクトル検出方法。
【請求項８】
符号化対象画像に含まれる符号化対象ブロックの参照画像に対する動きベクトルを検出するための集積回路であって、
前記符号化対象画像および複数の参照画像候補からそれぞれ画素数を低減した縮小符号化対象画像および複数の縮小参照候補画像を生成する画像縮小手段と、
前記縮小符号化対象画像を複数の領域に分割する領域分割手段と、
前記領域分割手段によって分割された分割領域の前記縮小参照候補画像に対する動きベクトルである領域動きベクトルを、複数の前記縮小参照候補画像ごとに検出する領域動きベクトル検出手段と、
前記領域動きベクトルおよび前記縮小参照候補画像から生成される分割領域予測画像と、前記分割領域画像との相関度を、複数の前記縮小参照候補画像ごとに算出する相関度算出手段と、
複数の前記参照画像候補の中から少なくとも１つの参照画像を前記相関度に基づいて前記分割領域ごとに選択する参照画像選択手段と、
前記分割領域に対応する領域に含まれる前記符号化対象ブロックの動きベクトルを、当該分割領域に対して前記参照画像選択手段によって選択された前記参照画像を用いて検出する動き検出手段と
を備えることを特徴とする集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像をピクチャ間予測によって符号化する画像符号化装置で使用される動きベクトル検出装置および動きベクトル検出方法に関するものである。
【背景技術】
【０００２】
ＭＰＥＧ方式（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  ｉｍａｇｅ  ｃｏｄｉｎｇ  Ｅｘｐａｒｔｓ  Ｇｒｏｕｐ）のような動画像のピクチャ間相関を利用した画像圧縮方式では、動き補償を行うブロック単位で動きベクトルの検出が必要である。精度の高い動きベクトルを検出するには、探索範囲を広げることで動きベクトルの検出精度を高める方法が一般的である。しかしながら、処理量は処理ブロック数×探索範囲であるため、探索範囲を広げると処理量が増加し、かつメモリ量の増大につながる。そこで、探索範囲を広げずに動きベクトルを精度よく検出する必要がある。
【０００３】
このような探索範囲を広げずに動きベクトルを精度よく検出する方法として、過去に検出した動きベクトルの大きさとマクロブロックのタイプとから探索範囲を決定する動画像符号化装置が提案されている（例えば、特許文献１参照。）。
【特許文献１】特開平１１−１１２９９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のような過去に検出した動きベクトルの大きさとマクロブロックのタイプとから探索範囲を決定する場合、過去に検出した動きベクトルを記憶しておく必要があり、メモリ量が増大するという問題がある。
【０００５】
ところで、Ｈ．２６４規格では、ピクチャ間予測を行うときに、最大１６ピクチャを参照することが許されている。従来のＭＰＥＧ２規格では、最大２ピクチャの参照が許されているので、Ｈ．２６４規格のほうがより精度の高い動きベクトルを検出することが可能となる。しかしながら、Ｈ．２６４規格において、全ての参照ピクチャに対して動きベクトル検出を行うと、ＭＰＥＧ２規格に対して８倍の処理量が必要となり、処理量が膨大になってしまうという課題がある。
【０００６】
そこで、本発明は上記の事情に鑑みてなされたものであり、処理量を削減しつつ、精度の高い動きベクトルを検出することができる動きベクトル検出装置および動きベクトル検出方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明に係る動きベクトル検出装置は、符号化対象画像に含まれる符号化対象ブロックの参照画像に対する動きベクトルを検出する動きベクトル検出装置であって、前記符号化対象画像および複数の参照画像候補からそれぞれ画素数を低減した縮小符号化対象画像および複数の縮小参照候補画像を生成する画像縮小手段と、前記縮小符号化対象画像を複数の領域に分割する領域分割手段と、前記領域分割手段によって分割された分割領域の前記縮小参照候補画像に対する動きベクトルである領域動きベクトルを、複数の前記縮小参照候補画像ごとに検出する領域動きベクトル検出手段と、前記領域動きベクトルおよび前記縮小参照候補画像から生成される分割領域予測画像と、前記分割領域画像との相関度を、複数の前記縮小参照候補画像ごとに算出する相関度算出手段と、複数の前記参照画像候補の中から少なくとも１つの参照画像を前記相関度に基づいて前記分割領域ごとに選択する参照画像選択手段と、前記分割領域に対応する領域に含まれる前記符号化対象ブロックの動きベクトルを、当該分割領域に対して前記参照画像選択手段によって選択された前記参照画像を用いて検出する動き検出手段とを備えることを特徴とする。これによって、領域動きベクトルの相関度に基づいて参照画像を決定し、符号化対象ブロックの動きベクトルを探索する参照画像の枚数を効率よく減らすことで処理量を削減しつつ、符号化対象ブロックの動きベクトルを高い精度で検出することができる。
【０００８】
また、前記参照画像選択手段は、複数の前記参照画像候補の中から少なくとも１つの参照画像を前記相関度および前記領域動きベクトルに基づいて前記分割領域ごとに選択してもよい。これによって、領域動きベクトルおよび領域動きベクトルの相関度に基づいて参照画像を決定し、符号化対象ブロックの動きベクトルを探索する参照画像の枚数を効率よく減らすことで処理量を削減しつつ、符号化対象ブロックの動きベクトルを高い精度で検出することができる。
【０００９】
また、前記動きベクトル検出装置は、さらに、前記符号化対象ブロックの動きベクトル探索範囲に関する情報を前記領域動きベクトルに基づいて決定する探索範囲決定手段を備え、前記動き検出手段は、前記探索範囲決定手段によって決定された前記動きベクトル探索範囲に関する情報に基づいて、前記参照画像決定手段によって決定された前記参照画像における前記動きベクトル探索範囲を決定し、決定した前記動きベクトル探索範囲内を探索することによって、前記符号化対象ブロックの動きベクトルを検出してもよい。これによって、領域動きベクトルに基づいて、符号化対象ブロックの動きベクトル探索範囲の広さ、動きベクトル探索範囲のずらし量、動きベクトル探索時の位置間引き量、評価値計算の間引き量等の動きベクトル探索範囲に関する情報を決定しているので、動きベクトル探索範囲を効率よく決定することができる。このため、符号化対象ブロックの動きベクトルを高い精度で検出することができる。
【００１０】
また、前記探索範囲決定手段は、前記領域動きベクトルおよび前記相関度に基づいて、前記動きベクトル探索範囲に関する情報を決定してもよい。これによって、領域動きベクトルと領域動きベクトルの相関度に基づいて、動きベクトル探索範囲に関する情報を決定しているので、さらに動きベクトル探索範囲を効率よく決定することができる。このため、さらに符号化対象ブロックの動きベクトルを高い精度で検出することができる。
【００１１】
なお、本発明は、このような動きベクトル検出装置として実現することができるだけでなく、このような動きベクトル検出装置が備える特徴的な手段をステップとする動きベクトル検出方法として実現したり、それらのステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、ＣＤ−ＲＯＭ等の記録媒体やインターネット等の伝送媒体を介して配信することができるのは言うまでもない。
【発明の効果】
【００１２】
本発明に係る動きベクトル検出装置および動きベクトル検出方法によれば、符号化対象ブロックの動きベクトルを探索する参照画像の枚数を効率よく減らすことで処理量を削減しつつ、符号化対象ブロックの動きベクトルを高い精度で検出することが可能となる。これにより、動画像の符号化効率を改善することが可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の各実施の形態について、それぞれ図面を参照しながら説明する。
【００１４】
（実施の形態１）
図１は、本発明の実施の形態１に係る動きベクトル検出装置を備えた動画像符号化装置の構成を示すブロック図である。
【００１５】
動画像符号化装置１００は、入力される動画像をブロック単位で符号化するための装置であり、図１に示すように画像縮小部１、ピクチャメモリ２、領域分割部３、領域動きベクトル検出部４、相関度算出部５、参照画像選択部６、および符号化部７を備えている。なお、本実施の形態では、符号化部７ではＨ．２６４規格に従って符号化することを前提とする。また、符号化部７で実際に行われるマクロブロック単位の動きベクトル検出は、一つの矩形領域を探索することを前提とする。
【００１６】
画像縮小部１は、符号化すべきマクロブロック（符号化対象ブロック）を含む符号化対象画像（入力画像）と、符号化対象ブロックを符号化するための動きベクトルを検出するために参照することが可能な複数の参照画像候補とを受け取り、それぞれ周辺の画素を演算して画素数を低減した縮小符号化対象画像および複数の縮小参照候補画像を生成する。ここでは、画像縮小部１は、それぞれ周辺の画素を演算して縮小符号化対象画像および縮小参照候補画像を生成しているが、これに限られるものではなく、例えば、単に画素を間引くだけでもよい。ピクチャメモリ２には、画像縮小部１によって生成された縮小参照候補画像が格納される。
【００１７】
領域分割部３は、画像縮小部１によって生成された縮小符号化対象画像を複数個の領域（分割領域）に分割する。領域動きベクトル検出部４は、領域分割部３によって分割された領域ごとに、画像縮小部１によって生成された各縮小参照候補画像に対する領域動きベクトルをそれぞれ検出する。すなわち、領域動きベクトル検出部４は、対象とする領域に最も近い、対象とする縮小参照候補画像に含まれる画像領域の位置を求め、この位置を示す動きベクトルを、その縮小参照候補画像に対する領域動きベクトルとして検出する。そして、領域動きベクトル検出部４は、このような動作を各縮小参照候補画像に対して行って、その領域についての各縮小参照候補画像に対する領域動きベクトルを検出する。
【００１８】
相関度算出部５は、領域動きベクトル検出部４によって検出された各縮小参照候補画像に対する領域動きベクトルの確からしさを示す指数である相関度を領域ごとに算出する。すなわち、相関度算出部５は、領域ごとに、その領域およびその領域の領域動きベクトルで示される縮小参照候補画像に含まれる画像値の共分散を用いて、領域動きベクトルの相関度を算出する。そして、相関度算出部５は、このような動作を各縮小参照候補画像に対する領域動きベクトルに対して行って、その領域についての各領域動きベクトルに関する相関度を検出する。
【００１９】
参照画像選択部６は、領域動きベクトル検出部４によって検出された領域動きベクトルと、相関度算出部５によって算出された領域動きベクトルの相関度とに基づいて、領域ごとに、符号化対象ブロックの動きベクトルを検出するために参照することが可能な複数の参照画像候補の中から１つの参照画像を選択する。
【００２０】
図２は、動画像符号化装置１００の符号化部７の構成を示すブロック図である。
【００２１】
符号化部７は、動き検出部７０２、動き補償部７０３、差分演算部７０４、直交変換部７０５、量子化部７０６、逆量子化部７０７、逆直交変換部７０８、加算部７０９、ピクチャメモリ７１０、および可変長符号化部７１２を備えている。なお、Ｈ．２６４規格では、Ｉピクチャ、イントラマクロブロックの場合、イントラ予測を行うが、本実施の形態では動き補償の説明を中心とするため、ここでは説明を省略する。
【００２２】
入力画像は、動き検出部７０２、および差分演算部７０４に入力される。
【００２３】
動き検出部７０２は、参照画像選択部６によって選択された参照画像を用いて、符号化対象ブロックの動きベクトルを検出する。すなわち、動き検出部７０２は、参照画像選択部６によって選択された参照画像内で設定される所定の動きベクトル探索範囲を探索することによって、最も符号化対象ブロックに近い画像領域を検出してその位置を示す動きベクトルを検出する。ここで、最も符号化対象ブロックに近い画像領域は、例えば、参照画像に含まれる探索領域に存在する画素データと、符号化対象ブロックの画素データとの間の差分絶対値和を求め、差分絶対値和が最小となる画像領域である。なお、Ｈ．２６４規格では、符号化対象ブロックである１６画素×１６画素のマクロブロックについて、１６×１６、１６×８、８×１６、８×８、８×４、４×８、４×４等のブロックサイズで動きベクトル検出を行って、動き補償を行うことが可能である。
【００２４】
動き補償部７０３は、動き検出部７０２によって検出された動きベクトルを用いて、ピクチャメモリ７１０に格納されている復号化画像（参照画像）から予測画像に最適な画像領域を取り出し、予測画像を生成する。
【００２５】
一方、入力画像が入力された差分演算部７０４は、入力画像と予測画像の差分値を計算し、直交変換部７０５に出力する。直交変換部７０５は、差分値を周波数係数に変換し、量子化部７０６に出力する。量子化部７０６は、入力された周波数係数を量子化し、量子化値を可変長符号化部７１２に出力する。
【００２６】
逆量子化部７０７は、入力された量子化値を逆量子化して周波数係数に復元し、逆直交変換部７０８に出力する。逆直交変換部７０８は、周波数係数から画素差分値に逆周波数変換し、加算部７０９に出力する。加算部７０９は、画素差分値と、動き補償部７０３から出力される予測画像とを加算して復号化画像とする。可変長符号化部１１１は、量子化値および動きベクトル等を可変長符号化してストリームを出力する。
【００２７】
次に、このように構成された動きベクトル検出装置を備えた動画像符号化装置１００の動作について説明する。図３は参照することが可能な複数の参照画像候補の中から１つの参照画像を選択する際の動作の流れを示すフローチャートである。
【００２８】
まず、画像縮小部１は符号化対象画像を受け取る。符号化対象画像は、例えば１９２０画素×１０８０画素によって構成され、符号化すべき符号化対象ブロックを含んでいる。本実施の形態ではＨ．２６４規格に従って符号化することを前提としているので、符号化対象ブロックは、１６画素×１６画素によって構成されるマクロブロックである。画像縮小部１は、符号化対象画像を縮小し、縮小符号化対象画像を生成する。
【００２９】
また、画像縮小部１は、符号化部７によってローカルデコードされた、符号化対象ブロックを符号化するための動きベクトルを検出するために参照することが可能な複数の参照画像候補を受け取る。ローカルデコードされた参照画像候補は、符号化対象画像と同様に例えば１９２０画素×１０８０画素によって構成されている。画像縮小部１は、各参照画像候補を縮小し、それぞれ縮小参照候補画像を生成する（ステップＳ１０１）。そして、画像縮小部１によって生成された各縮小参照候補画像は、ピクチャメモリ２に格納される。
【００３０】
次に、領域分割部３は、画像縮小部１によって生成された縮小符号化対象画像を複数個の領域に分割する（ステップＳ１０２）。ここでは、例えば図４（ａ）に示すように縮小符号化対象画像を水平垂直それぞれ２分割し、領域Ａ、領域Ｂ、領域Ｃ、および領域Ｄの４個の領域に分割するものとする。
【００３１】
次に、領域動きベクトル検出部４は、領域分割部３によって分割された領域ごとに、画像縮小部１によって生成された各縮小参照候補画像に対する領域動きベクトルをそれぞれ検出する（ステップＳ１０３）。例えば、図４（ｂ）に示すように領域Ｂの領域動きベクトルＡＭＶを検出する時、対象とする縮小参照候補画像と重なっている部分のみでマッチングを行って評価値を算出する。このとき、重なっている部分が狭くなると評価値が小さくなるので、これを重なっている部分の大きさで補正した値を算出する。そして、領域動きベクトル検出部４は、補正した評価値が最も小さくなる位置を求め、この位置を示す動きベクトルをその縮小参照候補画像に対する領域動きベクトルＡＭＶとして検出する。ここで、例えば複数の参照画像候補が３つのピクチャであるとすると、まず、図５に示すように１つめの縮小参照候補画像５２に対する領域動きベクトルを検出する。なお、縮小参照候補画像と重なっている部分のみでマッチングを行うのではなく、例えば縮小参照候補画像の外の領域の画素データを補完した上で、領域全体でマッチングを行っても構わない。
【００３２】
次に、相関度算出部５は、領域動きベクトル検出部４によって検出された領域動きベクトルＡＭＶの確からしさを示す指数である相関度を算出する（ステップＳ１０４）。すなわち、相関度算出部５は、図４（ｂ）に示すように領域動きベクトルＡＭＶの確からしさに相当する重なり部分の相関度合いを、重なり部分の共分散を求め、図４（ｃ）に示す式を用いて相関度を算出する。なお、ここでは、重なり部分の共分散を求めているが、その他の指数、例えば重なり部分の画素の差分絶対値の総和などを用いても良い。
【００３３】
次に、参照画像選択部６は、相関度算出部５によって算出された領域動きベクトルＡＭＶの相関度が所定の閾値より高いか否かを判定する（ステップＳ１０５）。この結果、領域動きベクトルＡＭＶの相関度が所定の閾値より高い場合（ステップＳ１０５で高）、参照画像選択部６は、参照画像候補に関するカウントを行う（ステップＳ１０６）。一方、領域動きベクトルの相関度が所定の閾値より高くない場合（ステップＳ１０５で低）、参照画像候補に関するカウントを行わない。
【００３４】
この領域動きベクトルの検出処理（ステップＳ１０３）から参照画像候補に関するカウント処理（ステップＳ１０６）までの動作を、符号化対象ブロックの動きベクトルを検出するために参照することが可能な複数の参照画像候補の数だけ繰り返す。すなわち、上記の例では、図５に示すように２つめの縮小参照候補画像５３に対する領域動きベクトルを検出し、その相関度の算出、相関度の判定、および参照画像候補に関するカウント処理を行う。次に、３つめの縮小参照候補画像５４に対する領域動きベクトルを検出し、その相関度の算出、相関度の判定、および参照画像候補に関するカウント処理を行うことになる。
【００３５】
次に、参照画像選択部６は、参照画像候補に関するカウントがあるか否かを判定する（ステップＳ１０７）。この結果、参照画像候補に関するカウントがある場合（ステップＳ１０７でＹｅｓ）、参照画像選択部６は、所定の閾値より高い相関度を有するピクチャの中で、最も高い相関度を有するピクチャを参照画像として選択する（ステップＳ１０８）。一方、参照画像候補に関するカウントがない場合（ステップＳ１０７でＮｏ）、すなわち所定の閾値より高い相関度を有するピクチャがない場合、参照画像選択部６は、領域動きベクトルの大きさが最も小さい値であるピクチャを参照画像として選択する（ステップＳ１０９）。
【００３６】
次に、参照画像選択部６は、すべての領域に対して参照画像を選択したか否かを判定する（ステップＳ１１０）。この結果、すべての領域に対して参照画像を選択した場合（ステップＳ１１０でＹｅｓ）、１つの符号化対象画像に対する処理を終了する。一方、すべての領域に対して参照画像を選択していない場合（ステップＳ１１０でＮｏ）、領域動きベクトルの検出処理（ステップＳ１０３）から参照画像選択処理（ステップＳ１０８またはステップＳ１０９）までの動作を繰り返す。
【００３７】
このように動作することで、縮小符号化対象画像の各領域について、例えば図６に示すように領域Ａおよび領域Ｂに対して縮小参照候補画像５２に対応する参照画像が選択され、領域Ｃに対して縮小参照候補画像５４に対応する参照画像が選択され、領域Ｄに対して縮小参照候補画像５３に対応する参照画像が選択されるというように、参照画像が選択されることになる。
【００３８】
そして、符号化部７の動き検出部７０２は、上記のように参照画像選択部６によって選択された参照画像を用いて、符号化対象ブロックの動きベクトルを検出する。
【００３９】
以上のように、本実施の形態では、領域動きベクトル検出部４によって検出された領域動きベクトルと、相関度算出部５によって検出された領域動きベクトルの相関度とに基づいて、参照することが可能な複数の参照画像候補の中から１つの参照画像を選択している。よって、動きベクトルを探索する参照画像候補の枚数を減らしつつ、精度の高い動きベクトルを検出することが可能となり、符号化効率を改善することができる。
【００４０】
なお、本実施の形態では、参照することが可能な複数の参照画像候補の中から１つの参照画像を選択する際の動作について説明しているが、これに限られるものではない。例えば、２つの参照画像を選択してもよく、この場合は、上記の選択方法で１番目の参照画像を選択した後、２番目に相関度の高い参照画像候補を２番目の参照画像として選択する。または、所定の閾値より高い相関度の参照画像候補が１つであれば、相関度が所定の閾値以下である参照画像候補の中で領域動きベクトルの大きさが最も小さい値である参照画像候補を２番目の参照画像として選択する。さらに、参照することが可能な複数の参照画像候補が４つ以上で、３つ参照画像を選択する場合等であっても、上記同様の方法で選択することが可能である。
【００４１】
（実施の形態２）
図７は、本発明の実施の形態２に係る動きベクトル検出装置を備えた動画像符号化装置の構成を示すブロック図である。なお、実施の形態１と同じ構成については同じ符号を付し、説明を省略する。
【００４２】
動画像符号化装置２００は、実施の形態１の動画像符号化装置１００の構成に加えて、図７に示すように探索範囲決定部２０１を備えている。
【００４３】
探索範囲決定部２０１は、領域動きベクトル検出部４によって検出された領域動きベクトルと、相関度算出部５によって算出された領域動きベクトルの相関度とに基づいて、参照画像選択部６によって選択された参照画像に対する、動きベクトル探索範囲の広さ、動きベクトル探索範囲のずらし量、動きベクトル探索時の位置間引き量、評価値計算の間引き量等の動きベクトル探索範囲に関する情報を決定する。
【００４４】
また、符号化部７の構成についても実施の形態１と同様であるが、動き検出部７０２の動作が相違する。
【００４５】
動き検出部７０２は、探索範囲決定部２０１によって決定された動きベクトル探索範囲に関する情報を用いて、符号化対象ブロックの動きベクトル探索範囲を決定し、決定した動きベクトル探索範囲で、参照画像選択部６によって選択された参照画像を探索することによって、最も符号化対象ブロックに近い画像領域を検出してその位置を示す動きベクトルを検出する。
【００４６】
次に、このように構成された動きベクトル検出装置を備えた動画像符号化装置２００の動作について説明する。図８は参照画像を選択および動きベクトル探索範囲に関する情報を決定する際の動作の流れを示すフローチャートである。
【００４７】
縮小符号化対象画像および各縮小参照候補画像の生成処理（ステップＳ１０１）から参照画像選択処理（ステップＳ１０８またはステップＳ１０９）までの動作については実施の形態１と同じである。
【００４８】
参照画像が選択されると、探索範囲決定部２０１は、動きベクトル探索範囲に関する情報を決定する（ステップＳ２０１）。図９はこの動きベクトル探索範囲に関する情報を決定する際の動作の詳細な流れを示すフローチャートである。
【００４９】
まず、探索範囲決定部２０１は、選択された参照画像に対する領域動きベクトルの相関度が所定の閾値より高いか否かを判定する（ステップＳ３０１）。この結果、領域動きベクトルの相関度が所定の閾値より高い場合（ステップＳ３０１でＹｅｓ）、探索範囲決定部２０１は、選択された参照画像に対する領域動きベクトルが所定の閾値より大きいか否かを判定する（ステップＳ３０２）。この結果、領域動きベクトルが所定の閾値より大きい場合（ステップＳ３０２でＹｅｓ）には、探索範囲決定部２０１は、動きベクトル探索範囲のずらし量を大きく、間引き量を小さく、探索範囲を中にするように決定する（ステップＳ３０３）。一方、領域動きベクトルが所定の閾値より大きくない場合（ステップＳ３０２でＮｏ）には、探索範囲決定部２０１は、動きベクトル探索範囲のずらし量を小さく、間引き量を小さく、探索範囲を狭くするように決定する（ステップＳ３０４）。
【００５０】
また、領域動きベクトルの相関度が所定の閾値より高くない場合（ステップＳ３０１でＮｏ）、探索範囲決定部２０１は、選択された参照画像に対する領域動きベクトルが所定の閾値より大きいか否かを判定する（ステップＳ３０５）。この結果、領域動きベクトルが所定の閾値より大きい場合（ステップＳ３０５でＹｅｓ）には、探索範囲決定部２０１は、動きベクトル探索範囲のずらし量を中に、間引き量を大きく、探索範囲を広くするように決定する（ステップＳ３０６）。一方、領域動きベクトルが所定の閾値より大きくない場合（ステップＳ３０５でＮｏ）には、探索範囲決定部２０１は、動きベクトル探索範囲のずらし量を小さく、間引き量を大きく、探索範囲を中にするように決定する（ステップＳ３０７）。
【００５１】
相関度が高ければ、画像の一致度合いが高く、領域動きベクトルの精度が高いと判断できる。そして、領域動きベクトルの精度が高いと符号化対象ブロックの動きベクトルにばらつきが少ないと判断できるため、上記のように、相関度が高い場合には、相関度が低い場合に比べて探索範囲を狭めに決定している。また、この場合には、間引き量を小さく決定している。一方、相関度が低ければ、画像の一致度合いが低く、領域動きベクトルの精度が低いと判断できる。そして、領域動きベクトルの精度が低いと符号化対象ブロックの動きベクトルにばらつきが多いと判断できるため、上記のように、相関度が低い場合には、相関度が高い場合に比べて探索範囲を広めに決定している。また、探索範囲を広めにした場合には処理量が増加するので、間引き量を大きく決定している。
【００５２】
このように動きベクトル探索範囲に関する情報が決定されると、探索範囲決定部２０１は、すべての領域に対して処理が終了したか否かを判定する（ステップＳ１１０）。この結果、すべての領域に対して処理が終了した場合（ステップＳ１１０でＹｅｓ）、１つの符号化対象画像に対する処理を終了する。一方、すべての領域に対して処理が終了していない場合（ステップＳ１１０でＮｏ）、領域動きベクトルの検出処理（ステップＳ１０３）から動きベクトル探索範囲に関する情報の決定処理（ステップＳ２０１）までの動作を繰り返す。
【００５３】
次に、上記のように決定された動きベクトル探索範囲に関する情報を用いて、決定符号化部７の動き検出部７０２が行う動きベクトル探索範囲の決定、および動きベクトル探索について説明する。
【００５４】
まず、探索範囲のずらし方について説明する。図１０は動きベクトル探索範囲のずらし方について説明するための図である。
【００５５】
縮小符号化対象画像と同様に符号化対象画像を水平垂直それぞれ２分割し、４個の領域に分割する。それぞれの領域が縮小符号化対象画像の各領域Ａから領域Ｄに相当する。基準位置の探索範囲は、符号化対象ブロックを中心とした図１０に示す点線で囲まれた範囲である。動き検出部７０２は、探索範囲決定部２０１で決定された各領域での探索範囲のずらし量Ｒの分だけ、基準位置の探索範囲からずらし、図１０に示す実線で囲まれた範囲で動きベクトルを探索する。例えば、ずらし量Ｒがある場合は図１０に示す領域Ａ、領域Ｂ、領域Ｃのようにそれぞれずらし量Ｒの分だけ探索範囲をずらし、ずらし量Ｒが０の場合は図１０に示す領域Ｄのように基準位置の探索範囲と同じ探索範囲になる。
【００５６】
次に、動きベクトル探索範囲の広さについて説明する。図１１は動きベクトル探索範囲の広さおよびずらし方について説明するための図である。
【００５７】
上記と同様、基準位置の探索範囲は、符号化対象ブロックを中心とした図１１に示す点線で囲まれた範囲である。動き検出部７０２は、探索範囲決定部２０１で決定された各領域での動きベクトル探索範囲の広さで、基準位置の探索範囲を所定量拡大、そのまま、または所定量縮小した上で、探索範囲のずらし量Ｒ’の分だけずらし、図１１に示す実線で囲まれた範囲で動きベクトルを探索する。例えば、探索範囲が広く、ずらし量Ｒ’がある場合は図１１に示す領域Ａのように基準位置の探索範囲を所定量拡大し、拡大した探索範囲をずらし量Ｒ’の分だけずらす。また、探索範囲が中で、ずらし量Ｒ’がある場合は図１１に示す領域Ｂのように基準位置の探索範囲をそのままの広さで、ずらし量Ｒ’の分だけ探索範囲をずらす。探索範囲が狭く、ずらし量Ｒ’がある場合は図１１に示す領域Ｃのように基準位置の探索範囲を所定量縮小し、縮小した探索範囲をずらし量Ｒ’の分だけずらす。また、探索範囲が狭く、ずらし量Ｒ’が０の場合は図１１に示す領域Ｄのように基準位置の探索範囲を縮小した探索範囲になる。なお、ここでは、基準位置の探索範囲を拡大縮小するとしているが、これに限られるものではなく、あらかじめ決められた探索範囲の広さにした上で、探索範囲のずらし量の分だけずらしても構わない。
【００５８】
次に、探索位置の間引き量について説明する。図１２は動きベクトル探索位置の間引き量について説明するための図である。
【００５９】
探索範囲決定部２０１で探索範囲を広げた場合、全ての位置で評価値を算出し、動きベクトルを探索すると、探索範囲の広さに比例して処理量が増加する。処理量を抑えつつ探索範囲を広げる方法の一つとして、探索位置の間引きを行う。例えば、水平１／２間引きを行う場合、動き検出部７０２は、図１２に示すように水平方向に１画素とばした位置ごとに、最初の探索位置、２番目の探索位置、３番目の探索位置、…と順に探索する。
【００６０】
次に、評価値算出の間引き量について説明する。図１３は動きベクトル探索時の評価値算出の間引き量について説明するための図である。
【００６１】
動きベクトル探索時の評価値算出の間引き量も、探索位置の間引き量と目的は同じで、処理量を抑えつつ探索範囲を広げる方法の一つである。例えば、水平１／２間引きの場合、動き検出部７０２は、図１３に示すように水平方向に１画素とばした位置ごとの画素データを用いて評価値を算出する。一般的には、符号化対象ブロックと探索位置とのそれぞれの画素の差分絶対値和を算出するが、図１３に斜線で示す画素位置のみで差分絶対値和を算出する。
【００６２】
以上のように、本実施の形態では、領域動きベクトル検出部４によって検出された領域動きベクトルと、相関度算出部５によって検出された領域動きベクトルの相関度に基づいて、動きベクトル探索範囲の広さ、動きベクトル探索範囲のずらし量、動きベクトル探索時の位置間引き量、評価値計算の間引き量等の動きベクトル探索範囲に関する情報を決定している。よって、動きベクトル探索範囲を効率よく決定し、動きベクトルを精度よく検出することができる。
【００６３】
なお、本実施の形態では、領域動きベクトルの大きさおよび領域動きベクトルの相関度について、それぞれ所定の閾値より大きいか否かにより条件を２つに分け、合計４つの場合に分けて動きベクトル探索範囲に関する情報を決定しているが、これに限られるものではない。例えば、閾値を複数設けて条件を３つ以上に分けて場合分けをさらに詳細に行っても構わない。
【００６４】
（実施の形態３）
上記実施の形態２では、動き検出部７０２において動きベクトルを検出する際の動きベクトル探索領域が１つの場合について説明したが、本実施の形態では、動きベクトル探索領域を複数の有する場合について説明する。
【００６５】
図１４は、本発明の実施の形態３に係る動きベクトル検出装置における探索範囲の設定方法について説明するための図である。なお、構成は、実施の形態２と同様であるので、説明を省略する。
【００６６】
動き検出部７０２は、図１４に示すように、符号化対象ブロック（マクロブロック）を中心とした所定の広さの矩形領域の探索範囲９１と、領域動きベクトルＡＭＶの指す位置を中心とする矩形領域の探索範囲９２とを探索する。この探索範囲９２は、実施の形態１と同様に、相関度や領域動きベクトルの大きさから探索位置の間引き量、評価値算出の間引き量、探索範囲の広さを変えることも可能である。
【００６７】
なお、ここでは、２つの探索範囲を探索する事を前提としているが、Ｈ．２６４２規格で定められている予測ベクトルが指す位置を中心とする矩形領域を探索する事も可能である。この場合、動き検出部７０２は、図１５に示すように、符号化対象ブロック（マクロブロック）を中心とした所定の広さの矩形領域の探索範囲９１と、領域動きベクトルＡＭＶの指す位置を中心とする矩形領域の探索範囲９２とに加えて、予測ベクトルＰＭＶが指す位置を中心とする矩形領域の探索範囲９３を探索する。
【００６８】
以上のように、符号化対象ブロックを中心とした探索範囲９１と、領域動きベクトルＡＭＶに基づく探索範囲９２という複数の探索範囲を探索することによって、例えば、１つずつの探索範囲を狭く設定しても、動きベクトルを精度よく検出することができる。
【００６９】
（実施の形態４）
本実施の形態では、領域の境界部分に存在するマクロブロック（符号化対象ブロック）に対する動きベクトル探索範囲に関する情報を補正する場合について説明する。
【００７０】
図１６は、本発明の実施の形態４に係る動きベクトル検出装置における動きベクトル探索範囲に関する情報の補正方法について説明するための図である。なお、構成は、実施の形態１と同様であるので、説明を省略する。
【００７１】
探索範囲決定部２０１は、隣接する領域のそれぞれの相関度に応じて、領域の境界付近に位置するマクロブロックに対する動きベクトル探索範囲に関する情報を補正する。ここで、符号化対象画像の各領域Ａ〜Ｄについて、相関度の高さが図１６に示すように領域Ｂ、領域Ｄ、領域Ａ、領域Ｃの順であったとする。この場合、探索範囲決定部２０１は、相関度の低い側の領域にある領域の境界に存在するマクロブロックの参照画像と、領域動きベクトルまたは探索範囲ずらし量とを相関度の高い領域の値を用いるように補正を行う。例えば、領域Ｄ、領域Ａ、および領域Ｃに含まれ、領域Ｂに隣接する領域１１１については、領域Ｂの参照画像と、領域動きベクトルまたは探索範囲ずらし量とを用いるように補正される。また、領域Ｃに含まれ、領域Ａに隣接する領域１１２については、領域Ａの参照画像と、領域動きベクトルまたは探索範囲ずらし量とを用いるように補正される。また、領域Ｃに含まれ、領域Ｄに隣接する領域１１３については、領域Ｄの参照画像と、領域動きベクトルまたは探索範囲ずらし量とを用いるように補正される。
【００７２】
以上のように、領域の境界部分に存在するマクロブロックに対する参照画像と動きベクトル探索範囲に関する情報とを隣接する領域のそれぞれの相関度に応じて補正しているので、動きベクトル探索範囲を効率よく決定し、動きベクトルを精度よく検出することができる。
【００７３】
なお、ここでは、境界に存在する一列のマクロブロックを対象としているが、複数列のマクロブロックを対象とすることも可能である。また、相関度の差に基づいて補正するマクロブロックの数を変えても構わない。例えば、相関度が０〜１の間で設定されている場合、相関度の差が０．５以上の場合は２マクロブロック分、０．２５以上０．５未満の場合は１マクロブロック分の領域動きベクトルまたは探索範囲のずらし量を補正する。または、領域の境界近傍にあるマクロブロックの領域動きベクトルまたは探索範囲のずらし量を相関度により線形補間することで置き換えることも可能である。
【００７４】
また、図１、図２、図７に示したブロック図の各機能ブロックは典型的には集積回路であるＬＳＩとして実現される。このＬＳＩは１チップ化されても良いし、複数チップ化されても良い。（例えばメモリ以外の機能ブロックが１チップ化されていても良い。）ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【００７５】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
【００７６】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
【００７７】
また、各機能ブロックのうち、データを格納するユニットだけ１チップ化せずに、別構成としても良い。
【産業上の利用可能性】
【００７８】
本発明に係る動きベクトル検出装置および動きベクトル検出方法は、Ｈ．２６４規格に従ってピクチャ間予測を用いて画像圧縮を行い、ＴＶ放送の録画やムービー等の撮影を行う用途として有用であり、例えば、パーソナルコンピュータ、ＨＤＤレコーダ、ＤＶＤレコーダ、ビデオカメラ、およびカメラ付き携帯電話機等に適用できる。
【図面の簡単な説明】
【００７９】
【図１】本発明の実施の形態１に係る動きベクトル検出装置を備えた動画像符号化装置の構成を示すブロック図である。
【図２】動画像符号化装置の符号化部の構成を示すブロック図である。
【図３】複数の参照画像候補の中から１つの参照画像を選択する際の動作の流れを示すフローチャートである。
【図４】（ａ）縮小符号化対象画像の分割を示す図であり、（ｂ）領域Ｂと縮小参照候補画像とのマッチングを示す図であり、（ｃ）相関度を算出する式を示す図である。
【図５】各縮小参照候補画像に対する領域動きベクトルの検出について説明するための図である。
【図６】領域ごとの縮小参照候補画像に対する領域動きベクトルの検出について説明するための図である。
【図７】本発明の実施の形態２に係る動きベクトル検出装置を備えた動画像符号化装置の構成を示すブロック図である。
【図８】参照画像を選択および動きベクトル探索範囲に関する情報を決定する際の動作の流れを示すフローチャートである。
【図９】動きベクトル探索範囲に関する情報を決定する際の動作の流れを示すフローチャートである。
【図１０】動きベクトル探索範囲のずらし方について説明するための図である。
【図１１】動きベクトル探索範囲の広さおよびずらし方について説明するための図である。
【図１２】動きベクトル探索位置の間引き量について説明するための図である。
【図１３】動きベクトル探索時の評価値算出の間引き量について説明するための図である。
【図１４】本発明の実施の形態３に係る動きベクトル検出装置における探索範囲の設定方法について説明するための図である。
【図１５】本発明の実施の形態３に係る動きベクトル検出装置における他の探索範囲の設定方法について説明するための図である。
【図１６】本発明の実施の形態４に係る動きベクトル検出装置における動きベクトル探索範囲に関する情報の補正方法について説明するための図である。
【符号の説明】
【００８０】
１      画像縮小部
２      ピクチャメモリ
３      領域分割部
４      領域動きベクトル検出部
５      相関度算出部
６      参照画像選択部
７      符号化部
１００、２００  動画像符号化装置
２０１  探索範囲決定部
７０２  動き検出部
７０３  動き補償部
７０４  差分演算部
７０５  直交変換部
７０６  量子化部
７０７  逆量子化部
７０８  逆直交変換部
７０９  加算部
７１０  ピクチャメモリ
７１２  可変長符号化部
【図１】
2007166038.tif 000003
【図２】
2007166038.tif 000004
【図３】
2007166038.tif 000005
【図４】
2007166038.tif 000006
【図５】
2007166038.tif 000007
【図６】
2007166038.tif 000008
【図７】
2007166038.tif 000009
【図８】
2007166038.tif 000010
【図９】
2007166038.tif 000011
【図１０】
2007166038.tif 000012
【図１１】
2007166038.tif 000013
【図１２】
2007166038.tif 000014
【図１３】
2007166038.tif 000015
【図１４】
2007166038.tif 000016
【図１５】
2007166038.tif 000017
【図１６】
2007166038.tif 000018