(57)【要約】【課題】  投影画像データを用いた動きベクトルの生成を短時間で行うことができるデータ処理装置を提供する。【解決手段】    アクセス回路５１は、フレームデータＳ２３および参照画像データＲＥＦの各マクロブロックＭＢの垂直投影画像データＳ２３＿ＶＰ，ＲＥＦ＿ＶＰおよび水平投影画像データＳ２３＿ＨＰ，ＲＥＦ＿ＨＰをフレームメモリ３７内の連続したアドレスに格納する。これにより、これらを高速に読み出して投影指標データ生成回路５２に出力する。【選択図】  図４
2005184233.tif 000002
【特許請求の範囲】
【請求項１】
被符号化画像データ内の第１のブロックデータの第１の水平投影画像データおよび第１の垂直投影画像データを生成し、参照画像データ内の複数の第２のブロックデータの各々について第２の水平投影画像データおよび第２の垂直投影画像データを生成する投影画像生成手段と、
前記投影画像生成手段が生成した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データの各々を、記憶手段の連続したアドレスに書き込み、前記記憶手段の前記連続したアドレスから読み出す制御手段と、
前記制御手段が読み出した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データを基に、前記複数のブロックデータのうち、前記第１のブロックデータとの差異が最小の前記第２のブロックデータを特定して動きベクトルを生成する探索手段と
を有するデータ処理装置。
【請求項２】
前記探索手段は、前記第１のブロックデータと前記特定した第２のブロックデータとの位置関係を基に、前記第１のブロックデータの動きベクトルを生成する
請求項１に記載のデータ処理装置。
【請求項３】
前記探索手段は、前記参照画像データ内の前記特定した第２のブロックデータを基に規定した探索範囲内の前記第２のブロックデータのうち、前記第１のブロックデータとの間で画素データ毎の差分の総和が最小となる前記第２のブロックデータを特定する
請求項１に記載のデータ処理装置。
【請求項４】
前記投影画像生成手段は、前記第１のブロックデータ内の水平方向の位置が同じ連続した複数の画素位置の画素データを累積して第１の垂直投影画像データを生成し、前記第１のブロックデータ内の垂直方向の位置が同じ連続した複数の画素位置の画素データを累積して第１の水平投影画像データを生成し、前記第２のブロックデータ内の水平方向の位置が同じ連続した複数の画素位置の画素データを累積して第２の垂直投影画像データを生成し、前記第２のブロックデータ内の垂直方向の位置が同じ連続した複数の画素位置の画素データを累積して第２の水平投影画像データを生成し、
前記探索手段は、前記制御手段が前記記憶手段から読み出した前記第１の垂直投影画像
データと前記第２の垂直投影画像データとの第１の差分を前記水平方向の画素位置のそれぞれについて算出し、当該第１の差分を累積して第１の指標データを生成し、前記制御手段が前記記憶手段から読み出した前記第１の水平投影画像データと前記第２の水平投影画像データとの第２の差分を前記垂直方向の画素位置のそれぞれについて算出し、当該第２の差分を累積して第２の指標データを生成し、前記第１の指標データと前記第２の指標データとの総和を最小にする前記第２のブロックデータを特定する
請求項１に記載のデータ処理装置。
【請求項５】
前記制御回路が前記記憶手段から前記第１の垂直投影画像データを読み出す動作と、前記制御回路が前記記憶手段から前記第２の垂直投影画像データを読み出す動作と、前記探索手段が前記第１の差分を算出する動作とをパイプライン処理で行い、
前記制御回路が前記記憶手段から前記第１の水平投影画像データを読み出す動作と、前記制御回路が前記記憶手段から前記第２の水平投影画像データを読み出す動作と、前記探索手段が前記第２の差分を算出する動作とをパイプライン処理で行う
請求項４に記載のデータ処理装置。
【請求項６】
被符号化画像データを構成するブロックデータの動きベクトルを生成し、前記動きベクトルに応じた予測画像データを生成する動き補償回路と、
前記被符号化画像データと、前記動き補償回路が生成した前記予測画像データとの差分を符号化する符号化回路と
を有する符号化装置であって、
前記動き補償回路は、
前記被符号化画像データ内の第１のブロックデータの第１の水平投影画像データおよび第１の垂直投影画像データを生成し、参照画像データ内の複数の第２のブロックデータの各々について第２の水平投影画像データおよび第２の垂直投影画像データを生成する投影画像生成手段と、
前記投影画像生成手段が生成した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データの各々を、記憶手段の連続したアドレスに書き込み、前記記憶手段の前記連続したアドレスから読み出す制御手段と、
前記制御手段が読み出した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データを基に、前記複数の第２のブロックデータのうち前記第１のブロックデータとの差異が最小の前記第２のブロックデータを特定して動きベクトルを生成する動きベクトル生成回路と、
前記動きベクトル生成手段が生成した前記動きベクトルを基に前記予測画像データを生成する処理手段と
を有する符号化装置。
【請求項７】
被符号化画像データ内の第１のブロックデータの第１の水平投影画像データおよび第１の垂直投影画像データを生成し、参照画像データ内の複数の第２のブロックデータの各々について第２の水平投影画像データおよび第２の垂直投影画像データを生成する第１の工程と、
前記第１の工程で生成した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データの各々を、記憶手段の連続したアドレスに書き込む第２の工程と、
前記第２の工程で前記記憶手段の前記連続したアドレスに書き込んだ前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データを前記記憶手段から読み出す第３の工程と、
前記第３の工程で読み出した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データを基に、前記複数の第２のブロックデータのうち前記第１のブロックデータとの差異が最小の前記第２のブロックデータを特定して動きベクトルを生成する第４の工程と
を有するデータ処理方法。
【請求項８】
参照画像データの所定の探索基点を基準として規定された探索範囲内の異なる探索位置の複数のブロックデータのうち指定された探索位置のブロックデータと、被符号化画像データ内のブロックデータとの差異を検出する検出回路と、
前記検出回路が検出した前記差異が最小となる前記参照画像データ内の前記ブロックデータを特定して動きベクトルを生成する動きベクトル生成回路と、
前記探索基点を始点とした螺旋パターンに沿って前記始点から順に前記参照画像データ内の前記ブロックデータの前記探索位置を前記検出回路に指定し、当該指定する探索位置が前記探索基点から所定の距離以内にある場合に第１の距離間隔で前記位置を指定し、前記所定の距離内にない場合に前記第１の距離間隔より長い第２の距離間隔で前記探索位置を前記検出回路に指定する指定回路と
を有するデータ処理装置。
【請求項９】
前記指定回路は、前記第２の距離間隔で指定した前記探索位置の前記ブロックデータの動きベクトルを前記動きベクトル生成回路が前記差異が最小となる動きベクトルとして特定した場合に、前記特定した動きベクトルに対応する前記探索位置の周囲の前記探索位置を前記第１の距離間隔で指定する
請求項８に記載のデータ処理装置。
【請求項１０】
前記参照画像データ内の所定の探索範囲内のブロックデータと、前記被符号化画像データ内のブロックデータとを基に、前記検出回路による前記差異の検出よりの少ない演算量で、前記探索基点を特定する探索基点特定回路
をさらに有し、
前記検出回路は、前記探索基点特定回路が特定した前記探索基点を基準として、前記差異を検出する
請求項９に記載のデータ処理装置。
【請求項１１】
被符号化画像データを構成するブロックデータの動きベクトルを生成し、前記動きベクトルに応じた予測画像データを生成する動き補償回路と、
前記被符号化画像データと、前記動き補償回路が生成した前記予測画像データとの差分を符号化する符号化回路と
を有する符号化装置であって、
前記動き補償回路は、
参照画像データの所定の探索基点を基準として規定された探索範囲内の異なる探索位置の複数のブロックデータのうち指定された探索位置のブロックデータと、前記被符号化画像データ内のブロックデータとの差異を検出する検出回路と、
前記検出回路が検出した前記差異が最小となる前記参照画像データ内の前記ブロックデータを特定して動きベクトルを生成する動きベクトル生成回路と、
前記探索基点を始点とした螺旋パターンに沿って前記始点から順に前記参照画像データ内の前記ブロックデータの前記探索位置を前記検出回路に指定し、当該指定する探索位置が前記探索基点から所定の距離以内にある場合に第１の距離間隔で前記位置を指定し、前記所定の距離内にない場合に前記第１の距離間隔より長い第２の距離間隔で前記探索位置を前記検出回路に指定する指定回路と
を有する符号化装置。
【請求項１２】
参照画像データ内の探索基点を始点とした螺旋パターンに沿って前記始点から順に前記参照画像データ内のブロックデータの前記探索位置を指定し、当該指定する探索位置が前記探索基点から所定の距離以内にある場合に第１の距離間隔で前記位置を指定し、前記所定の距離内にない場合に前記第１の距離間隔より長い第２の距離間隔で前記探索位置を指定する第１の工程と、
前記参照画像データの前記探索基点を基準として規定された探索範囲内の異なる探索位置の複数のブロックデータのうち前記第１の工程で指定された探索位置のブロックデータと、前記被符号化画像データ内のブロックデータとの差異を検出する第２の工程と、
前記第２の工程で検出した前記差異が最小となる前記参照画像データ内の前記ブロックデータを特定して動きベクトルを生成する第３の工程と、
を有するデータ処理方法。
【請求項１３】
被符号化画像データ内の第１のブロックデータの投影画像データと参照画像データ内の複数の第２のブロックデータの投影画像データの各々との差異を検出し、当該検出した複数の差異のうち最小のものから所定数の複数の差異に対応した複数の候補動きベクトルを特定する候補動きベクトル特定回路と、
前記候補動きベクトル特定回路が特定した前記複数の候補動きベクトルのそれぞれについて、前記第１のブロックデータと、当該候補動きベクトルに対応した前記第２のブロックデータとの間の対応する画素データ間の差異の総和を示す指標データを算出する指標データ算出回路と、
前記指標データ算出回路が算出した前記指標データのうち最小の前記指標データに対応した前記候補動きベクトルを、前記第１のブロックデータの動きベクトルとして特定する動きベクトル特定回路と
を有するデータ処理装置。
【請求項１４】
被符号化画像データを構成するブロックデータの動きベクトルを生成し、前記動きベクトルに応じた予測画像データを生成する動き補償回路と、
前記被符号化画像データと、前記動き補償回路が生成した前記予測画像データとの差分を符号化する符号化回路と
を有する符号化装置であって、
前記動き補償回路は、
前記被符号化画像データ内の第１のブロックデータの投影画像データと参照画像データ内の複数の第２のブロックデータの投影画像データの各々との差異を検出し、当該検出した複数の差異のうち最小のものから所定数の複数の差異に対応した複数の候補動きベクトルを特定する候補動きベクトル特定回路と、
前記候補動きベクトル特定回路が特定した前記複数の候補動きベクトルのそれぞれについて、前記第１のブロックデータと、当該候補動きベクトルに対応した前記第２のブロックデータとの間の対応する画素データ間の差異の総和を示す指標データを算出する指標データ算出回路と、
前記指標データ算出回路が算出した前記指標データのうち最小の前記指標データに対応した前記候補動きベクトルを、前記第１のブロックデータの動きベクトルとして特定する動きベクトル特定回路と
を有する符号化装置。
【請求項１５】
被符号化画像データ内の第１のブロックデータの投影画像データと参照画像データ内の複数の第２のブロックデータの投影画像データの各々との差異を検出し、当該検出した複数の差異のうち最小のものから所定数の複数の差異に対応した複数の候補動きベクトルを特定する第１の工程と、
前記第１の工程で特定した前記複数の候補動きベクトルのそれぞれについて、前記第１のブロックデータと、当該候補動きベクトルに対応した前記第２のブロックデータとの間の対応する画素データ間の差異の総和を示す指標データを算出する第２の工程と、
前記第２の工程で算出した前記指標データのうち最小の前記指標データに対応した前記候補動きベクトルを、前記第１のブロックデータの動きベクトルとして特定する第３の工程と
を有するデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像データの動き補償を行うデータ処理装置およびその方法と符号化装置に関する。
【背景技術】
【０００２】
近年、画像データをデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮するＭＰＥＧ(Moving Picture Experts Group)などの方式に準拠した装置が、放送局などの情報配信、及び一般家庭における情報受信の双方において普及しつつある。      
【０００３】
ＭＰＥＧ方式に続いて、さらなる高圧縮率を実現するＪＶＴ(Joint Video Team)と呼ばれる符号化方式が提案されている。
ＪＶＴ方式では、ＭＰＥＧと同様に、動き予測・補償処理において、動きベクトルを基にした動き予測・補償を行う。
ところで、ＪＶＴ方式の符号化装置では、例えば、上記動き予測・補償処理において、各マクロブロックＭＢを単位として、動き補償の対象となるフレームデータとその参照画像データとの間の対応する画素データ間の差分の総和を示す指標データＣＯＳＴを最小にするマクロブロックＭＢを参照画像データ内で特定し、その位置に応じた動きベクトルを生成する。
このような符号化装置では、動き補償の対象となるフレームデータとその参照画像データとの各々について、マクロブロックを単位として当該マクロブロック内の行方向（垂直方向）の画素位置が同じ画素データを累積して水平投影画像データを生成し、列方向（水平方向）の画素位置が同じ画素データを累積して垂直投影画像データを生成する。
そして、上記符号化装置は、動き補償の対象となるフレームデータのマクロブロックと、参照画像データのマクロブロックとの間で、水平投影画像データおよび垂直投影画像データを基にした差分を示す投影指標データＰＪ＿ＣＯＳＴを生成する。
上記符号化装置は、参照画像データ内の複数のマクロブロックのうち投影指標データＰＪ＿ＣＯＳＴを最小にするマクロブロックＭＢを特定し、その位置を基に動きベクトルを生成する。
従来の符号化装置は、例えば、各マクロブロックＭＢの垂直投影画像データをメモリ内の連続したアドレス（水平方向のアドレス）に順に書き込み、水平投影画像データをメモリ内の非連続のアドレス（垂直方向のアドレス）に順に書き込んでいる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来の符号化装置では、上記マクロブロックの水平投影画像データをメモリ内の非連続のアドレス順に書き込むため、その読み出しに時間がかかり、パイプライン処理を効率的に行えず、処理時間が長くなるという問題がある。
また、従来の符号化装置では、参照画像データ内の所定の探索基点を中心として規定された探索範囲内のマクロブロックＭＢを基に上記動きベクトルを探索するが、この探索動作において、例えば、探索範囲全体において探索位置の間隔を同じにしている。当該探索動作の処理時間の短縮が要請されている。
また、従来の符号化装置では、上述した投影画像を用いた動きベクトルの探索において、例えば、画像パターンは異なるが、投影画像による指標データＰＪ＿ＣＯＳＴが同じになる画像パターンのマクロブロックＭＢについて、正確な動きベクトルＭＶを生成できないという問題がある。
【０００５】
本発明は上述した従来技術に鑑みて成され、投影画像データを用いた動きベクトルの生成を短時間で行うことができるデータ処理装置、その方法と符号化装置を提供することを第１の目的とする。
また、本発明は、投影画像データを用いた場合でも、動きベクトルを正確に生成できるデータ処理装置、その方法と符号化装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した従来技術の問題点を解決するために、第１の発明のデータ処理装置は、被符号化画像データ内の第１のブロックデータの第１の水平投影画像データおよび第１の垂直投影画像データを生成し、参照画像データ内の複数の第２のブロックデータの各々について第２の水平投影画像データおよび第２の垂直投影画像データを生成する投影画像生成手段と、前記投影画像生成手段が生成した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データの各々を、記憶手段の連続したアドレスに書き込み、前記記憶手段の前記連続したアドレスから読み出す制御手段と、前記制御手段が読み出した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データを基に、前記複数のブロックデータのうち、前記第１のブロックデータとの差異が最小の前記第２のブロックデータを特定して動きベクトルを生成する探索手段とを有する。
【０００７】
第１の発明のデータ処理装置の作用は以下のようになる。
先ず、投影画像生成手段が、被符号化画像データ内の第１のブロックデータの第１の水平投影画像データおよび第１の垂直投影画像データを生成し、参照画像データ内の複数の第２のブロックデータの各々について第２の水平投影画像データおよび第２の垂直投影画像データを生成する。
次に、制御手段が、前記投影画像生成手段が生成した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データの各々を、記憶手段の連続したアドレスに書き込む。
次、前記制御手段が、前記記憶手段の前記連続したアドレスから読み出す。
次に、探索手段が、前記制御手段が読み出した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データを基に、前記複数のブロックデータのうち、前記第１のブロックデータとの差異が最小の前記第２のブロックデータを特定して動きベクトルを生成する。
【０００８】
第２の発明の符号化装置は、被符号化画像データを構成するブロックデータの動きベクトルを生成し、前記動きベクトルに応じた予測画像データを生成する動き補償回路と、前記被符号化画像データと、前記動き補償回路が生成した前記予測画像データとの差分を符号化する符号化回路とを有する符号化装置であって、前記動き補償回路は、前記被符号化画像データ内の第１のブロックデータの第１の水平投影画像データおよび第１の垂直投影画像データを生成し、参照画像データ内の複数の第２のブロックデータの各々について第２の水平投影画像データおよび第２の垂直投影画像データを生成する投影画像生成手段と、前記投影画像生成手段が生成した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データの各々を、記憶手段の連続したアドレスに書き込み、前記記憶手段の前記連続したアドレスから読み出す制御手段と、前記制御手段が読み出した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データを基に、前記複数の第２のブロックデータのうち前記第１のブロックデータとの差異が最小の前記第２のブロックデータを特定して動きベクトルを生成する動きベクトル生成回路と、前記動きベクトル生成手段が生成した前記動きベクトルを基に前記予測画像データを生成する処理手段とを有する。
【０００９】
第２の発明の符号化装置の作用は以下のようになる。
動き補償回路が、第１の発明のデータ処理装置と同じ作用により、被符号化画像データを構成するブロックデータの動きベクトルを生成する。
そして、前記動き補償回路が、前記動きベクトルに応じた予測画像データを生成する。  次に、符号化回路が、前記被符号化画像データと、前記動き補償回路が生成した前記予測画像データとの差分を符号化する。
【００１０】
第３の発明のデータ処理方法は、被符号化画像データ内の第１のブロックデータの第１の水平投影画像データおよび第１の垂直投影画像データを生成し、参照画像データ内の複数の第２のブロックデータの各々について第２の水平投影画像データおよび第２の垂直投影画像データを生成する第１の工程と、前記第１の工程で生成した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データの各々を、記憶手段の連続したアドレスに書き込む第２の工程と、前記第２の工程で前記記憶手段の前記連続したアドレスに書き込んだ前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データを前記記憶手段から読み出す第３の工程と、前記第３の工程で読み出した前記第１の垂直投影画像データ、前記第１の水平投影画像データ、前記第２の垂直投影画像データおよび前記第２の水平投影画像データを基に、前記複数の第２のブロックデータのうち前記第１のブロックデータとの差異が最小の前記第２のブロックデータを特定して動きベクトルを生成する第４の工程とを有する。
【００１１】
第４の発明のデータ処理装置は、参照画像データの所定の探索基点を基準として規定された探索範囲内の異なる探索位置の複数のブロックデータのうち指定された探索位置のブロックデータと、被符号化画像データ内のブロックデータとの差異を検出する検出回路と、前記検出回路が検出した前記差異が最小となる前記参照画像データ内の前記ブロックデータを特定して動きベクトルを生成する動きベクトル生成回路と、前記探索基点を始点とした螺旋パターンに沿って前記始点から順に前記参照画像データ内の前記ブロックデータの前記探索位置を前記検出回路に指定し、当該指定する探索位置が前記探索基点から所定の距離以内にある場合に第１の距離間隔で前記位置を指定し、前記所定の距離内にない場合に前記第１の距離間隔より長い第２の距離間隔で前記探索位置を前記検出回路に指定する指定回路とを有する。
【００１２】
第４の発明のデータ処理装置の作用は以下のようになる。
検出回路が、参照画像データの所定の探索基点を基準として規定された探索範囲内の異なる探索位置の複数のブロックデータのうち指定回路によって指定された探索位置のブロックデータと、被符号化画像データ内のブロックデータとの差異を検出する。
次に、動きベクトル生成回路が、前記検出回路が検出した前記差異が最小となる前記参照画像データ内の前記ブロックデータを特定して動きベクトルを生成する。
また、前記指定回路が、前記探索基点を始点とした螺旋パターンに沿って前記始点から順に前記参照画像データ内の前記ブロックデータの前記探索位置を前記検出回路に指定し、当該指定する探索位置が前記探索基点から所定の距離以内にある場合に第１の距離間隔で前記位置を指定し、前記所定の距離内にない場合に前記第１の距離間隔より長い第２の距離間隔で前記探索位置を前記検出回路に指定する。
【００１３】
第５の発明の符号化装置は、被符号化画像データを構成するブロックデータの動きベクトルを生成し、前記動きベクトルに応じた予測画像データを生成する動き補償回路と、前記被符号化画像データと、前記動き補償回路が生成した前記予測画像データとの差分を符号化する符号化回路とを有する符号化装置であって、前記動き補償回路は、参照画像データの所定の探索基点を基準として規定された探索範囲内の異なる探索位置の複数のブロックデータのうち指定された探索位置のブロックデータと、前記被符号化画像データ内のブロックデータとの差異を検出する検出回路と、前記検出回路が検出した前記差異が最小となる前記参照画像データ内の前記ブロックデータを特定して動きベクトルを生成する動きベクトル生成回路と、前記探索基点を始点とした螺旋パターンに沿って前記始点から順に前記参照画像データ内の前記ブロックデータの前記探索位置を前記検出回路に指定し、当該指定する探索位置が前記探索基点から所定の距離以内にある場合に第１の距離間隔で前記位置を指定し、前記所定の距離内にない場合に前記第１の距離間隔より長い第２の距離間隔で前記探索位置を前記検出回路に指定する指定回路とを有する。
【００１４】
第５の発明の符号化装置の作用は以下のようになる。
動き補償回路が、第４の発明のデータ処理装置と同じ作用により、被符号化画像データを構成するブロックデータの動きベクトルを生成する。
そして、前記動き補償回路が、前記動きベクトルに応じた予測画像データを生成する。  次に、符号化回路が、前記被符号化画像データと、前記動き補償回路が生成した前記予測画像データとの差分を符号化する。
【００１５】
第６の発明のデータ処理方法は、参照画像データ内の探索基点を始点とした螺旋パターンに沿って前記始点から順に前記参照画像データ内のブロックデータの前記探索位置を指定し、当該指定する探索位置が前記探索基点から所定の距離以内にある場合に第１の距離間隔で前記位置を指定し、前記所定の距離内にない場合に前記第１の距離間隔より長い第２の距離間隔で前記探索位置を指定する第１の工程と、前記参照画像データの前記探索基点を基準として規定された探索範囲内の異なる探索位置の複数のブロックデータのうち前記第１の工程で指定された探索位置のブロックデータと、前記被符号化画像データ内のブロックデータとの差異を検出する第２の工程と、前記第２の工程で検出した前記差異が最小となる前記参照画像データ内の前記ブロックデータを特定して動きベクトルを生成する第３の工程とを有する。
【００１６】
第７の発明のデータ処理装置は、被符号化画像データ内の第１のブロックデータの投影画像データと参照画像データ内の複数の第２のブロックデータの投影画像データの各々との差異を検出し、当該検出した複数の差異のうち最小のものから所定数の複数の差異に対応した複数の候補動きベクトルを特定する候補動きベクトル特定回路と、前記候補動きベクトル特定回路が特定した前記複数の候補動きベクトルのそれぞれについて、前記第１のブロックデータと、当該候補動きベクトルに対応した前記第２のブロックデータとの間の対応する画素データ間の差異の総和を示す指標データを算出する指標データ算出回路と、前記指標データ算出回路が算出した前記指標データのうち最小の前記指標データに対応した前記候補動きベクトルを、前記第１のブロックデータの動きベクトルとして特定する動きベクトル特定回路とを有する。
【００１７】
第７の発明のデータ処理装置の作用は以下のようになる。
候補動きベクトル特定回路が、被符号化画像データ内の第１のブロックデータの投影画像データと参照画像データ内の複数の第２のブロックデータの投影画像データの各々との差異を検出し、当該検出した複数の差異のうち最小のものから所定数の複数の差異に対応した複数の候補動きベクトルを特定する。
次に、指標データ算出回路が、前記候補動きベクトル特定回路が特定した前記複数の候補動きベクトルのそれぞれについて、前記第１のブロックデータと、当該候補動きベクトルに対応した前記第２のブロックデータとの間の対応する画素データ間の差異の総和を示す指標データを算出する。
次に、動きベクトル特定回路が、前記指標データ算出回路が算出した前記指標データのうち最小の前記指標データに対応した前記候補動きベクトルを、前記第１のブロックデータの動きベクトルとして特定する。
【００１８】
第８の発明の符号化装置は、被符号化画像データを構成するブロックデータの動きベクトルを生成し、前記動きベクトルに応じた予測画像データを生成する動き補償回路と、前記被符号化画像データと、前記動き補償回路が生成した前記予測画像データとの差分を符号化する符号化回路とを有する符号化装置であって、前記動き補償回路は、前記被符号化画像データ内の第１のブロックデータの投影画像データと参照画像データ内の複数の第２のブロックデータの投影画像データの各々との差異を検出し、当該検出した複数の差異のうち最小のものから所定数の複数の差異に対応した複数の候補動きベクトルを特定する候補動きベクトル特定回路と、前記候補動きベクトル特定回路が特定した前記複数の候補動きベクトルのそれぞれについて、前記第１のブロックデータと、当該候補動きベクトルに対応した前記第２のブロックデータとの間の対応する画素データ間の差異の総和を示す指標データを算出する指標データ算出回路と、前記指標データ算出回路が算出した前記指標データのうち最小の前記指標データに対応した前記候補動きベクトルを、前記第１のブロックデータの動きベクトルとして特定する動きベクトル特定回路とを有する。
【００１９】
第８の発明の符号化装置の作用は以下のようになる。
動き補償回路が、第７の発明のデータ処理装置と同じ作用により、被符号化画像データを構成するブロックデータの動きベクトルを生成する。
そして、前記動き補償回路が、前記動きベクトルに応じた予測画像データを生成する。  次に、符号化回路が、前記被符号化画像データと、前記動き補償回路が生成した前記予測画像データとの差分を符号化する。
【００２０】
第９の発明のデータ処理方法は、被符号化画像データ内の第１のブロックデータの投影画像データと参照画像データ内の複数の第２のブロックデータの投影画像データの各々との差異を検出し、当該検出した複数の差異のうち最小のものから所定数の複数の差異に対応した複数の候補動きベクトルを特定する第１の工程と、前記第１の工程で特定した前記複数の候補動きベクトルのそれぞれについて、前記第１のブロックデータと、当該候補動きベクトルに対応した前記第２のブロックデータとの間の対応する画素データ間の差異の総和を示す指標データを算出する第２の工程と、前記第２の工程で算出した前記指標データのうち最小の前記指標データに対応した前記候補動きベクトルを、前記第１のブロックデータの動きベクトルとして特定する第３の工程とを有する。
【発明の効果】
【００２１】
第１〜３の発明によれば、投影画像データを用いた動きベクトルの生成を短時間で行うことができるデータ処理装置、その方法と符号化装置を提供することができる。
第４〜６の発明によれば、動きベクトルの生成を短時間で行うことができるデータ処理装置、その方法と符号化装置を提供することができる。
第７〜９の発明によれば、投影画像データを用いた場合でも、動きベクトルを正確に生成できるデータ処理装置、その方法と符号化装置を提供することができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の実施形態に係わるＪＶＴ方式の符号化装置について説明する。
第１実施形態
以下、図１〜図１３を参照して本発明の実施形態を説明する。
先ず、本発明と本実施形態との間の構成要素の対応関係を説明する。
本実施形態は、第１〜３の発明に対応した実施形態である。
図２および図４に示す動き予測・補償回路３９が第１の発明のデータ処理装置および第２の発明の動き補償回路に対応している。
また、図２に示すフレームメモリ３７が第１〜第３の発明の記憶手段に対応している。  また、図４に示す投影画像生成回路５０が第１および第２の発明の投影画像生成手段に対応し、アクセス回路５１が第１および第２の発明の制御手段に対応し、投影指標データ生成回路５２およびＭＶ探索回路５３が第１および第２の発明の探索手段に対応している。
【００２３】
以下、第１実施形態の通信システム１について詳細に説明する。
図１は、本実施形態の通信システム１の概念図である。
図１に示すように、通信システム１は、送信側に設けられた符号化装置２と、受信側に設けられた復号装置３とを有する。
通信システム１では、送信側の符号化装置２において、離散コサイン変換やカルーネン・レーベ変換などの直交変換と動き補償によって圧縮したフレーム画像データ（ビットストリーム）を生成し、当該フレーム画像データを変調した後に、衛星放送波、ケーブルＴＶ網、電話回線網、携帯電話回線網などの伝送媒体を介して送信する。
受信側では、受信した画像信号を復調した後に、上記変調時の直交変換の逆変換と動き補償によって伸張したフレーム画像データを生成して利用する。
なお、上記伝送媒体は、光ディスク、磁気ディスクおよび半導体メモリなどの記録媒体であってもよい。
図１に示す復号装置３は符号化装置２の符号化に対応した復号を行う。
【００２４】
以下、図１に示す符号化装置２について説明する。
図２は、図１に示す符号化装置２の全体構成図である。
図２に示すように、符号化装置２は、例えば、Ａ／Ｄ変換回路２２、画面並べ替え回路２３、演算回路２４、直交変換回路２５、量子化回路２６、可逆符号化回路２７、バッファ２８、逆量子化回路２９、逆直交変換回路３０、レート制御回路３２、フレームメモリ３４、フレームメモリ３７、デブロックフィルタ３８および動き予測・補償回路３９を有する。
【００２５】
以下、符号化装置２の構成要素について説明する。
Ａ／Ｄ変換回路２２は、入力されたアナログの輝度信号Ｙ、色差信号Ｃｂ，Ｃｒから構成される原画像信号Ｓ１０をデジタルのフレームデータＳ２２に変換し、これを画面並べ替え回路２３に出力する。
画面並べ替え回路２３は、Ａ／Ｄ変換回路２２から入力したフレームデータＳ２２を、そのピクチャタイプＩ，Ｐ，ＢからなるＧＯＰ(Group Of Pictures) 構造に応じて、符号化する順番に並べ替えたフレームデータＳ２３を演算回路２４およびレート制御回路３２に出力する。
また、画面並べ替え回路２３は、処理対象のフレームデータＳ２３をフレームメモリ３７に書き込む。
また、フレームメモリ３７に記憶されたフレームデータＳ２３は、動き予測・補償回路３９において他の画像データから参照される場合に参照画像データＲＥＦとなる。
【００２６】
演算回路２４は、フレームデータＳ２３内の処理対照の動き補償ブロックＭＣＢと、それに対応して動き予測・補償回路３９から入力した予測画像データＰＩの動き補償ブロックＭＣＢとの差分を示す画像データＳ２４を生成し、これを直交変換回路２５に出力する。
直交変換回路２５は、画像データＳ２４に離散コサイン変換やカルーネン・レーベ変換などの直交変換を施して画像データ（例えばＤＣＴ係数）Ｓ２５を生成し、これを量子化回路２６に出力する。
量子化回路２６は、レート制御回路３２から入力した量子化スケールで、画像データＳ２５を量子化して画像データＳ２６を生成し、これを可逆符号化回路２７および逆量子化回路２９に出力する。
【００２７】
可逆符号化回路２７は、画像データＳ２６を可変長符号化あるいは算術符号化した画像データをバッファ２８に格納する。
このとき、可逆符号化回路２７は、インター予測符号化が行われた場合には、動き予測・補償回路３９から入力した動きベクトルＭＶを符号化してヘッダデータに格納する。
【００２８】
バッファ２８に格納された画像データは、変調等された後に送信される。
逆量子化回路２９は、画像データＳ２６を逆量子化した信号を生成し、これをデブロックフィルタ３８に出力する。
デブロックフィルタ３８は、逆量子化された画像データＳ２６のブロック歪みを除去した画像データを、逆直交変換回路３０に出力する。
逆直交変換回路３０は、デブロックフィルタ３８から入力した画像データに、直交変換回路２５における直交変換の逆変換を施して生成した画像データＳ３０をフレームメモリ３４に書き込む。
レート制御回路３２は、例えば、画面並べ替え回路２３から入力したフレームデータＳ２３を基に、画像中の複雑度が高い部分は細かく量子化し、画像中の複雑度が低い部分は粗く量子化するように量子化パラメータＱＰを生成する。
そして、レート制御回路３２は、上記生成した量子化パラメータＱＰ、並びにバッファ２３から読み出した画像データを基に量子化スケールを生成し、これを量子化回路２６に出力する。
【００２９】
動き予測・補償回路３９は、フレームメモリ３７から読み出したフレームデータＳ２３と参照画像データＲＥＦとを基に、マクロブロックＭＢを単位として投影画像による動き予測・補償処理を行って動きベクトルＭＶ＿Ｐを算出する。
【００３０】
すなわち、動き予測・補償回路３９は、フレームデータＳ２３内の処理対象のマクロブロックＭＢ（本発明の第１のブロックデータ）との差異が最も小さいマクロブロックＭＢ（本発明の第２のブロックデータ）の位置を参照画像データＲＥＦの探索範囲ＳＲ内で特定し、これらの位置関係に対応した動きベクトルＭＶ＿Ｐを算出する。
このとき、動き予測・補償回路３９は、フレームデータＳ２３内の処理対象のマクロブロックＭＢと参照画像データＲＥＦ内のマクロブロックＭＢとの差異を示す投影指標データＰＪ＿ＣＯＳＴを、これらのマクロブロックＭＢの投影画像データを用いて検出する。
動き予測・補償回路３９は、図３に示すように、上記投影画像データを基に生成した動きベクトルＭＶ＿Ｐを基に、フレームメモリ３４から読み出した再構成の参照画像データＲＥＦ＿Ｒ内の探索範囲ＳＲを決定し、当該決定した探索範囲ＳＲ内で、処理対象のマクロブロックＭＢとの間の画素データ毎の差分の総和が最小となるマクロブロックＭＢを特定し、当該特定したマクロブロックＭＢの位置に応じた動きベクトルＭＶを生成する。
そして、動き予測・補償回路３９は、上記生成した動きベクトルＭＶを基に、予測画像データＰＩを生成する。
動き予測・補償回路３９は、上記選択した動きベクトルＭＶを可逆符号化回路２７に出力し、上記生成した予測画像データＰＩを演算回路２４に出力する。
【００３１】
図４は、図２に示す動き予測・補償回路３９の構成を説明するための図である。
図４に示すように、動き予測・補償回路３９は、例えば、投影画像生成回路５０、アクセス回路５１、投影指標データ生成回路５２、ＭＶ探索回路５３および処理回路５４を有する。
本実施形態では、フレームメモリ３７には、図５（Ａ），図６（Ａ），図７（Ａ），図１１（Ａ）に示すように、フレームデータＳ２３および参照画像データＲＥＦの何れのマクロブロックＭＢについても、当該マクロブロックＭＢを構成する１６ｘ１６の画素データｐｉｘのうち、同じ行（ｊ）に属する画素データは連続したアドレスに格納され、同じ列（ｉ）に属する画素データは不連続のアドレスに格納されている。
【００３２】
アクセス回路５１は、図５（Ａ）に示すようにフレームデータＳ２３を構成する各々のマクロブロックＭＢの各々の行（ｊ）について、同じ行（ｊ）に属しフレームメモリ３７内の連続したアドレスに記憶された（垂直方向の画素位置が同じ）１６個の画素データｐｉｘを順に読み出して投影画像生成回路５０に出力する。
投影画像生成回路５０は、上記各々の行（ｊ）についてアクセス回路５１が読み出した上記１６個の画素データｐｉｘを累積して水平投影画像データＰＪＨ＿ｃ（０）〜（１６）（本発明の第１の水平投影画像データ）を生成する。
そして、アクセス回路５１は、投影画像生成回路５０が生成した水平投影画像データＰＪＨ＿ｃ（０）〜（１６）を、図５（Ｂ）に示すように、フレームメモリ３７内の連続したアドレスに順に書き込む。これにより、フレームデータＳ２３の１マクロブロックＭＢ分の水平投影画像データがフレームメモリ３７に書き込まれる。
すなわち、本実施形態では、水平投影画像データＰＪＨ＿ｃ（０）〜（１６）の行と列を入れ換えてフレームメモリ３７に書き込む。そのため、水平投影画像データＰＪＨ＿ｃ（０）〜（１６）をフレームメモリ３７内の連続したアドレスに書き込むことができる。
アクセス回路５１および投影画像生成回路５０は、上記動作をフレームデータＳ２３内の全てのマクロブロックＭＢについて行い、フレームデータＳ２３に対応する水平投影画像データＳ２３＿ＨＰをフレームメモリ３７に書き込む。
【００３３】
アクセス回路５１は、図６（Ａ）に示すように参照画像データＲＥＦを構成する各々のマクロブロックＭＢの各々の行（ｊ）について、同じ行（ｊ）に属しフレームメモリ３７内の連続したアドレスに記憶された（垂直方向の画素位置が同じ）１６個の画素データｐｉｘを順に読み出して投影画像生成回路５０に出力する。
投影画像生成回路５０は、上記各々の行（ｊ）についてアクセス回路５１が読み出した上記１６個の画素データｐｉｘを累積して水平投影画像データＰＪＨ＿ｒ（０）〜（１６）（本発明の第２の水平投影画像データ）を生成する。
そして、アクセス回路５１は、投影画像生成回路５０が生成した水平投影画像データＰＪＨ＿ｒ（０）〜（１６）を、図６（Ｂ）に示すように、フレームメモリ３７内の連続したアドレスに順に書き込む。これにより、参照画像データＲＥＦの１マクロブロックＭＢ分の水平投影画像データがフレームメモリ３７に書き込まれる。
すなわち、本実施形態では、水平投影画像データＰＪＨ＿ｒ（０）〜（１６）の行と列を入れ換えてフレームメモリ３７に書き込む。そのため、水平投影画像データＰＪＨ＿ｒ（０）〜（１６）をフレームメモリ３７内の連続したアドレスに書き込むことができる。  アクセス回路５１および投影画像生成回路５０は、上記動作を参照画像データＲＥＦ内の全てのマクロブロックＭＢについて行い、参照画像データＲＥＦに対応する水平投影画像データＲＥＦ＿ＨＰをフレームメモリ３７に書き込む。
【００３４】
アクセス回路５１は、図７（Ａ）に示すようにフレームデータＳ２３を構成する各々のマクロブロックＭＢの各々の列（ｉ）について、同じ列（ｉ）に属しフレームメモリ３７内の非連続のアドレスに記憶された（水平方向の画素位置が同じ）１６個の画素データｐｉｘを順に読み出して投影画像生成回路５０に出力する。
投影画像生成回路５０は、上記各々の列（ｉ）についてアクセス回路５１が読み出した上記１６個の画素データｐｉｘを累積して垂直投影画像データＰＪＶ＿ｃ（０）〜（１６）（本発明の第１の垂直投影画像データ）を生成する。
そして、アクセス回路５１は、投影画像生成回路５０が生成した垂直投影画像データＰＪＶ＿ｃ（０）〜（１６）を、図７（Ｂ）に示すように、フレームメモリ３７内の連続したアドレスに順に書き込む。これにより、フレームデータＳ２３の１マクロブロックＭＢ分の垂直投影画像データがフレームメモリ３７に書き込まれる。
アクセス回路５１および投影画像生成回路５０は、上記動作をフレームデータＳ２３内の全てのマクロブロックＭＢについて行い、フレームデータＳ２３に対応する垂直投影画像データＳ２３＿ＶＰをフレームメモリ３７に書き込む。
【００３５】
アクセス回路５１は、図８（Ａ）に示すように参照画像データＲＥＦを構成する各々のマクロブロックＭＢの各々の列（ｉ）について、同じ列（ｉ）に属しフレームメモリ３７内の非連続のアドレスに記憶された（水平方向の画素位置が同じ）１６個の画素データｐｉｘを順に読み出して投影画像生成回路５０に出力する。
投影画像生成回路５０は、上記各々の列（ｉ）についてアクセス回路５１が読み出した上記１６個の画素データｐｉｘを累積して垂直投影画像データＰＪＶ＿ｒ（０）〜（１６）（本発明の第２の垂直投影画像データ）を生成する。
そして、アクセス回路５１は、投影画像生成回路５０が生成した垂直投影画像データＰＪＶ＿ｒ（０）〜（１６）を、図８（Ｂ）に示すように、フレームメモリ３７内の連続したアドレスに順に書き込む。これにより、参照画像データＲＥＦの１マクロブロックＭＢ分の垂直投影画像データがフレームメモリ３７に書き込まれる。
アクセス回路５１および投影画像生成回路５０は、上記動作を参照画像データＲＥＦ内の全てのマクロブロックＭＢについて行い、参照画像データＲＥＦに対応する垂直投影画像データＲＥＦ＿ＨＰをフレームメモリ３７に書き込む。
【００３６】
アクセス回路５１は、処理対象のマクロブロックＭＢの水平投影画像データＳ２３＿ＨＰをフレームメモリ３７から読み出して投影指標データ生成回路５２に出力する。
また、アクセス回路５１は、参照画像データＲＥＦ内の探索範囲内のマクロブロックＭＢの水平投影画像データＲＥＦ＿ＨＰをフレームメモリ３７から読み出して投影指標データ生成回路５２に出力する。
また、アクセス回路５１は、処理対象のマクロブロックＭＢの垂直投影画像データＳ２３＿ＶＰをフレームメモリ３７から読み出して投影指標データ生成回路５２に出力する。
また、アクセス回路５１は、参照画像データＲＥＦ内の探索範囲内のマクロブロックＭＢの垂直投影画像データＲＥＦ＿ＶＰをフレームメモリ３７から読み出して投影指標データ生成回路５２に出力する。
本実施形態では、前述したように、各マクロブロックＭＢの水平投影画像データＳ２３＿ＨＰ，ＲＥＦ＿ＨＰおよび垂直投影画像データＳ２３＿ＶＰ，ＲＥＦ＿ＶＰの各々が、フレームメモリ３７内の連続したアドレスに格納されるため、これらをパイプライン処理により短時間で読み出すことができる。
【００３７】
投影指標データ生成回路５２は、各マクロブロックＭＢ毎に、アクセス回路５１がフレームメモリ３７内の連続したアドレスから読み出した水平投影画像データＳ２３＿ＨＰと水平投影画像データＲＥＦ＿ＨＰとの差分（本発明の第２の差分）を、対応する画素位置毎に生成し、当該差分を総和を示す水平投影指標データＰＪＨ＿ＣＯＳＴ（本発明の第２の指標データ）を算出する。
本実施形態では、アクセス回路５１がフレームメモリ３７から水平投影画像データＲＥＦ＿ＨＰのマクロブロックＭＢを読み出す動作と、アクセス回路５１がフレームメモリ３７から水平投影画像データＲＥＦ＿ＨＰを読み出す動作と、投影指標データ生成回路５２がこれらの差分を算出する動作とがＳＩＭＤ(Single Instruction Multi Datastream) 命令を基にパイプラン処理により実行される。
このとき、水平投影画像データＳ２３＿ＨＰとＲＥＦ＿ＨＰとがフレームメモリ３７内の連続したアドレスに格納れているため、これらの読み出しを従来に比べて短時間で行え、上記パイプライン処理により上記差分を短時間で算出できる。
【００３８】
また、投影指標データ生成回路５２は、各マクロブロックＭＢ毎に、アクセス回路５１がフレームメモリ３７内の連続したアドレスから読み出した垂直投影画像データＲＥＦ＿ＶＰと垂直投影画像データＲＥＦ＿ＶＰとの差分（本発明の第１の差分）を、対応する画素位置毎に生成し、当該差分を総和を示す垂直投影指標データＰＪＶ＿ＣＯＳＴ（本発明の第１の指標データ）を算出する。
本実施形態では、アクセス回路５１がフレームメモリ３７から垂直投影画像データＳ２３＿ＶＰのマクロブロックＭＢを読み出す動作と、アクセス回路５１がフレームメモリ３７から垂直投影画像データＲＥＦ＿ＶＰを読み出す動作と、投影指標データ生成回路５２がこれらの差分を算出する動作とがＳＩＭＤ命令を基にパイプラン処理により実行される。
このとき、水平投影画像データＳ２３＿ＶＰとＲＥＦ＿ＶＰとがフレームメモリ３７内の連続したアドレスに格納れているため、これらの読み出しを短時間で行え、上記パイプライン処理により上記差分を短時間で算出できる。
【００３９】
そして、投影指標データ生成回路５２は、上記算出した水平投影指標データＰＪＨ＿ＣＯＳＴと垂直投影指標データＰＪＶ＿ＣＯＳＴとの総和を示す投影指標データＰＪ＿ＣＯＳＴを生成する。
投影指標データ生成回路５２は、参照画像データＲＥＦの探索範囲ＳＲ内の複数の上記第２のマクロブロックＭＢについて、上記投影指標データＰＪ＿ＣＯＳＴを算出し、これをＭＶ探索回路５３に出力する。
【００４０】
ＭＶ探索回路５３は、参照画像データＲＥＦ内の全ての第２のマクロブロックＭＢからの投影指標データＰＪ＿ＣＯＳＴのうち最小のものを特定し、当該特定した指標データＰＪ＿ＣＯＳＴに対応した上記第２のマクロブロックＭＢの位置に応じた動きベクトルＭＶ＿Ｐを生成する。
そして、ＭＶ探索回路５３は、上記投影画像データを基に生成した動きベクトルＭＶ＿Ｐを基に、フレームメモリ３４から読み出した再構成の参照画像データＲＥＦ＿Ｒ内の探索範囲を決定し、当該決定した探索範囲内で、処理対象のマクロブロックＭＢとの画素データ単位での差分の総和が最小となるマクロブロックＭＢを特定し、当該特定したマクロブロックＭＢの位置に応じた動きベクトルＭＶを生成する。
ＭＶ探索回路５３は、動きベクトルＭＶを処理回路５４に出力する
【００４１】
処理回路５４は、ＭＶ探索回路５３から入力した動きベクトルＭＶとフレームメモリ３４から読み出した参照画像データＲＥＦ＿Ｐとを基に、予測画像データＰＩを生成する。
処理回路５４は、動きベクトルＭＶを可逆符号化回路２７に出力し、上記生成した予測画像データＰＩを演算回路２４に出力する。
【００４２】
以下、図４に示す動き予測・補償回路３９の動作例を説明する。
図９および図１０は、図４に示す動き予測・補償回路３９の動作例を説明するためのフローチャートである。
ステップＳＴ１：
投影画像生成回路５０が前述したように、フレームデータＳ２３の各マクロブロックＭＢを単位として水平投影画像データＳ２３＿ＨＰを生成し、これを図５（Ｂ）に示すように、フレームメモリ３７内の連続したアドレスに書き込む。
また、投影画像生成回路５０が前述したように、フレームデータＳ２３の各マクロブロックＭＢを単位として垂直投影画像データＳ２３＿ＶＰを生成し、これを図７（Ｂ）に示すように、フレームメモリ３７内の連続したアドレスに書き込む。
【００４３】
ステップＳＴ２：
投影画像生成回路５０が前述したように、参照画像データＲＥＦの各マクロブロックＭＢを単位として水平投影画像データＲＥＦ＿ＨＰを生成し、これを図６（Ｂ）に示すように、フレームメモリ３７内の連続したアドレスに書き込む。
また、投影画像生成回路５０が前述したように、参照画像データＲＥＦの各マクロブロックＭＢを単位として垂直投影画像データＲＥＦ＿ＶＰを生成し、これを図８（Ｂ）に示すように、フレームメモリ３７内の連続したアドレスに書き込む。
【００４４】
ステップＳＴ３：
投影指標データ生成回路５２は、各マクロブロックＭＢ毎に、アクセス回路５１がフレームメモリ３７内の連続したアドレスから読み出した水平投影画像データＲＥＦ＿ＨＰと水平投影画像データＲＥＦ＿ＨＰとの差分を、対応する画素位置毎に生成し、当該差分を総和を示す水平投影指標データＰＪＨ＿ＣＯＳＴを算出する。
ステップＳＴ４：
投影指標データ生成回路５２は、各マクロブロックＭＢ毎に、アクセス回路５１がフレームメモリ３７内の連続したアドレスから読み出した垂直投影画像データＲＥＦ＿ＶＰと垂直投影画像データＲＥＦ＿ＶＰとの差分を、対応する画素位置毎に生成し、当該差分を総和を示す垂直投影指標データＰＪＶ＿ＣＯＳＴを算出する。
ステップＳＴ５：
投影指標データ生成回路５２は、上記算出した水平投影指標データＰＪＨ＿ＣＯＳＴと垂直投影指標データＰＪＶ＿ＣＯＳＴとの総和を示す投影指標データＰＪ＿ＣＯＳＴを生成する。
【００４５】
ステップＳＴ６：
投影指標データ生成回路５２は、参照画像データＲＥＦの探索範囲ＳＲ内の複数の上記第２のマクロブロックＭＢの全てについて、上記投影指標データＰＪ＿ＣＯＳＴを算出したか否かを判断し、算出したと判断するとステップＳＴ７に進み、そうでない場合にはステップＳＴ３に戻る。
ステップＳＴ７：
ＭＶ探索回路５３は、参照画像データＲＥＦ内の全ての第２のマクロブロックＭＢからの投影指標データＰＪ＿ＣＯＳＴのうち最小のものを特定し、当該特定した指標データＰＪ＿ＣＯＳＴに対応した上記第２のマクロブロックＭＢの位置に応じた動きベクトルＭＶ＿Ｐを生成する。
そして、ＭＶ探索回路５３は、上記投影画像データを基に生成した動きベクトルＭＶ＿Ｐを基に、フレームメモリ３４から読み出した再構成の参照画像データＲＥＦ＿Ｒ内の探索範囲を決定する。
【００４６】
ステップＳＴ８：
ＭＶ探索回路５３は、ステップＳＴ７で決定した探索範囲内で、処理対象のマクロブロックＭＢとの画素データ単位での差分の総和が最小となるマクロブロックＭＢを特定し、当該特定したマクロブロックＭＢの位置に応じた動きベクトルＭＶを特定する。
ＭＶ探索回路５３は、動きベクトルＭＶを処理回路５４に出力する
ステップＳＴ９：
処理回路５４は、ステップＳＴ８でＭＶ探索回路５３から入力した動きベクトルＭＶとフレームメモリ３４から読み出した参照画像データＲＥＦ＿Ｐとを基に、予測画像データＰＩを生成する。
処理回路５４は、動きベクトルＭＶを可逆符号化回路２７に出力し、上記生成した予測画像データＰＩを演算回路２４に出力する。
【００４７】
以下、図２に示す符号化装置２の全体動作を説明する。
原画像信号Ｓ１０が入力されると、原画像信号Ｓ１０がＡ／Ｄ変換回路２２においてデジタルのフレームデータＳ２２に変換される。
次に、出力となる画像圧縮情報のＧＯＰ構造に応じ、画面並べ替え回路２３においてフレームデータＳ２２内のピクチャの並べ替えが行われ、それによって得られたフレームデータＳ２３が演算回路２４およびレート制御回路３２に出力される。
また、フレームデータＳ２３が、フレームメモリ３７に書き込まれる。
次に、演算回路２４が、画面並べ替え回路２３からのフレームデータＳ２３と動き予測・補償回路３９からの予測画像データＰＩとの差分を検出し、その差分を示す画像データＳ２４を直交変換回路２５に出力する。
【００４８】
次に、直交変換回路２５が、画像データＳ２４に離散コサイン変換やカルーネン・レーベ変換等の直交変換を施して画像データＳ２５を生成し、これを量子化回路２６に出力する。  次に、量子化回路２６が、画像データＳ２５を量子化し、量子化された変換係数Ｓ２６を可逆符号化回路２７および逆量子化回路２９に出力する。
次に、可逆変換回路２７が、変換係数Ｓ２６に可変長符号化あるいは算術符号化等の可逆符号化を施して画像データを生成し、これをバッファ２８に蓄積する。
また、レート制御回路３２が、フレームデータＳ２３およびバッファ２８からの画像データを基に、量子化回路２６における量子化レートを制御する。
【００４９】
また、逆量子化回路２９が、量子化回路２６から入力した変換係数Ｓ２６を逆量子化し、逆量子化した変換係数をデブロックフィルタ３８に出力する。
デブロックフィルタ３８は、逆量子化回路２９から入力した変換係数のブロック歪みを除去した画像データを、逆直交変換回路３０に出力する。
逆直交変換回路３０は、デブロックフィルタ３８から入力した画像データに、直交変換回路２５における直交変換の逆変換を施して生成したデータＳ３０をフレームメモリ３４に書き込む。
そして、動き予測・補償回路３９が、フレームデータＳ２３および参照画像データＲＥＦを基に、図３〜図１０を用いて説明した動き予測・補償処理を行い、動きベクトルＭＶおよび予測画像データＰＩを生成する。
動き予測・補償回路３９は、動きベクトルＭＶを可逆符号化回路２７に出力し、予測画像データＰＩを演算回路２４に出力する。
【００５０】
以上説明したように、符号化装置２では、動き予測・補償回路３９のアクセス回路５１が、図５〜図８に示すように、投影画像生成回路５０が生成した水平投影画像データＳ２３＿ＨＰ，ＲＥＦ＿ＨＰおよび垂直投影画像データＳ２３＿ＶＰ，Ｓ２３＿ＨＰを、マクロブロックＭＢを単位として、それぞれフレームメモリ３７内の連続したアドレスに書き込むことで、これらを短時間で読み出すことができる。そのため、前述したパイプライン処理により投影指標データＰＪ＿ＣＯＳＴを短時間で生成できる。
これにより、動き予測・補償回路３９の処理時間を短縮できる。
【００５１】
第２実施形態
本実施形態は、第４〜６の発明に対応している。
本実施形態の符号化装置２ａは、図２に示す動き予測・補償回路３９を除いて第１実施形態の符号化装置２と同じ構成を有してる。
図１１は、本実施形態の動き予測・補償回路３９ａの構成図である。
図１１に示すように、動き予測・補償回路３９ａは、例えば、探索基点特定回路６０、探索位置指定回路６１、投影指標データ生成回路６２、ＭＶ探索回路６３および処理回路６４を有する。
投影指標データ生成回路６２が第４および第５の発明の検出回路に対応し、ＭＶ探索回路６３が第４および第５の発明の動きベクトル生成回路に対応し、探索位置指定回路６１が第４および第５の発明の指定回路に対応している。
また、探索基点特定回路６０が、探索基点特定回路に対応している。
【００５２】
探索基点特定回路６０は、例えば、階層探索の第１段階の探索により得られた動きベクトル、あるいは処理対象の第１のマクロブロックＭＢの周囲のマクロブロックＭＢについて既に得られた動きベクトルから算出される予測動きベクトルなどを基に、投影指標データ生成回路６２およびＭＶ探索回路６３による動きベクトルＭＶの探索に比べて少ない演算量で動きベクトルを算出し、当該動きベクトルによって規定される探索基点Ｑを特定する。
【００５３】
探索位置指定回路６１は、図１２に示すように、フレームメモリ３４から読み出した参照画像データＲＥＦ内の探索範囲の探索基点Ｑを始点として、螺旋パターンＳＰに沿って探索基点Ｑから順に外側に向けて所定の距離間隔で探索位置を指定する。
探索位置指定回路６１は、指定した探索位置が探索基点Ｑから所定の距離Ｌ以内である場合には第１の距離間隔（図１２中「ｒａｎｇｅ２」、例えば１画素単位の画素データ間隔）で上記探索位置を指定し、所定の距離Ｌを超えると第１の距離間隔より長い第２の距離間隔（図１２中「ｒａｎｇｅ１」、例えば２画素単位の画素データ間隔）で上記探索位置を指定する。
探索位置指定回路６１は、上記決定した探索位置を示す探索位置データＰＯを投影指標データ生成回路６２に出力する。
【００５４】
投影指標データ生成回路６２は、参照画像データＲＥＦ内の探索位置データＰＯが示す探索位置にあるマクロブロックＭＢと、フレームデータＳ２２内の処理対象のマクロブロックＭＢとの間の投影画像による差分を示す投影指標データＰＪ＿ＣＯＳＴを算出する。  ＭＶ探索回路６３は、投影指標データ生成回路６２から入力した螺旋パターンＳＰ上の全ての探索位置の投影指標データＰＪ＿ＣＯＳＴのうち小さい方から所定数のものに対応する動きベクトルＭＶを候補動きベクトルＣＭＶとする。
ＭＶ探索回路６３は、上記所定数の候補動きベクトルＣＭＶのそれぞれについて、処理対象のフレームデータ内の第１のマクロブロックＭＢと、参照画像データ内の第２のマクロブロックＭＢとの間の画素単位の差分の総和に応じた指標データを生成し、当該指標データを最小にする動きベクトルを選択し、これを処理回路６４に出力する。
【００５５】
処理回路６４は、ＭＶ探索回路６３から入力した動きベクトルＭＶを図２に示す可逆符号化回路２７に出力する。
また、処理回路６４は、ＭＶ探索回路６３から入力した動きベクトルＭＶ、並びに参照画像データＲＥＦを基に予測画像データＰＩを生成し、これを図２に示す演算回路２４に出力する。
【００５６】
以下、図１１に示す動き予測・補償回路３９ａの動作例を説明する。
図１３は、図１１に示す動き予測・補償回路３９ａの動作例を説明するためのフローチャートである。
ステップＳＴ１１：
探索位置指定回路６１は、図１２に示すように、フレームメモリ３４から読み出した参照画像データＲＥＦ内探索範囲の探索基点Ｑを始点として、螺旋パターンＳＰに沿って探索基点Ｑから順に外側に向けて所定の距離間隔で探索位置を指定する。
このとき、探索位置指定回路６１は、指定した探索位置が探索基点Ｑから所定の距離Ｌ以内である場合には第１の距離間隔で上記探索位置を指定し、所定の距離Ｌを超えると第１の距離間隔より長い第２の距離間隔で上記探索位置を指定する。
探索位置指定回路６１は、上記決定した探索位置を示す探索位置データＰＯを投影指標データ生成回路６２に出力する。
【００５７】
ステップＳＴ１２：
投影指標データ生成回路６２は、参照画像データＲＥＦ内の探索位置データＰＯが示す探索位置にある第２のマクロブロックＭＢと、フレームデータＳ２３内の処理対象の第１のマクロブロックＭＢとの間の投影画像による差分を示す投影指標データＰＪ＿ＣＯＳＴを算出する。
ステップＳＴ１３：
ＭＶ探索回路６３は、投影指標データ生成回路６２から入力した螺旋パターンＳＰ上の全ての探索位置の投影指標データＰＪ＿ＣＯＳＴのうち小さい方から所定数のものであるか否かを判断し、所定数のものであると判断するとステップＳＴ１４に進み、そうでない場合はステップＳＴ１５に進む。
ステップＳＴ１４：
ＭＶ探索回路６３は、ステップＳＴ１３で入力した投影指標データＰＪ＿ＣＯＳＴに対
応する動きベクトルＭＶを候補動きベクトルＣＭＶの集合に加える。
ステップＳＴ１５：
ＭＶ探索回路６３は、螺旋パターンＳＰ上の全ての探索位置について投影指標データＰ
Ｊ＿ＣＯＳＴを算出したか否かを判断し、算出したと判断するとステップＳＴ１６に進み、そうでない場合はステップＳＴ１１に戻る。
【００５８】
ステップＳＴ１６：
ＭＶ探索回路６３は、ステップＳＴ１４で最終的に得た集合の要素である上記所定数の候補動きベクトルＣＭＶのそれぞれについて、処理対象のフレームデータ内の第１のマクロブロックＭＢと、参照画像データ内の第２のマクロブロックＭＢとの間の画素単位の差分の総和に応じた指標データＣＯＳＴを算出する。
ステップＳＴ１７：
ＭＶ探索回路６３は、ステップＳＴ１６で算出した指標データＣＯＳＴを最小にする動きベクトルＭＶを選択し、これを処理回路６４に出力する。
ステップＳＴ１８：
処理回路６４は、ステップＳＴ１７でＭＶ探索回路６３から入力した動きベクトルＭＶを図２に示す可逆符号化回路２７に出力する。
また、処理回路６４は、ＭＶ探索回路６３から入力した動きベクトルＭＶ、並びに参照画像データＲＥＦを基に予測画像データＰＩを生成し、これを図２に示す演算回路２４に出力する。
【００５９】
以上説明したように、動き予測・補償回路３９ａによれば、探索位置指定回路６１が指定した探索位置が探索基点Ｑから所定の距離Ｌ以内である場合には第１の距離間隔で上記探索位置を指定し、所定の距離Ｌを超えると第１の距離間隔より長い第２の距離間隔で上記探索位置を指定する。
そのため、参照画像データＲＥＦ内の探索範囲を全て第１の距離間隔で指定する場合に比べて、演算量を大幅に削減できる。
一方、投影指標データＰＪ＿ＣＯＳＴを最小にする動きベクトルＭＶは、探索基点Ｑの周辺において高い確率で特定されるため、正確な動きベクトルＭＶを生成できる。
【００６０】
なお、上述した第２実施形態において、探索位置指定回路６１が第２の距離間隔で指定してした探索位置において動きベクトルＭＶが検出された場合に、当該探索位置から所定の距離内の領域において、第１の距離間隔で再度、探索位置を指定して動きベクトルの探索を行ってもよい。
【００６１】
第３実施形態
本実施形態は、第７〜第９の発明に対応している。
本実施形態の符号化装置は、基本的に図２に示す符号化装置２と同じ構成を有する。
また、本発明の符号じゃ装置の動き予測・補償回路３９ａは、以下の点を除いて、第２実施形態の動き予測・補償回路３９ａと同じである。
本実施形態において、図１１に示す投影指標データ生成回路６２、並びにＭＶ探索回路６３の候補動きベクトルＣＭＶを生成する構成が、第７および第８の発明の候補動きベクトル算出回路に対応している。
また、ＭＶ探索回路６３の指標データＣＯＳＴを生成する構成が、第７および第８の発明の指標データ算出回路に対応している。
また、ＭＶ探索回路６３の指標データＣＯＳＴを基に動きベクトルＭＶを特定する構成が、第７および第８の発明の動きベクトル特定回路に対応している。
【００６２】
本実施形態の動き予測・補償回路３９ａでは、図１１に示す探索基点特定回路６０、探索位置指定回路６１の構成は、第２実施形態に示しものには特に限定されず、例えば、各マクロブロックＭＢを単位として、動き補償の対象となるフレームデータとその参照画像データとの間の対応する画素データ間の差分の総和を示す指標データＣＯＳＴを最小にする動きベクトルを生成してもよい。
また、探索位置指定回路６１は、探索位置を第２実施形態のように螺旋パターンに沿って指定しなくてもよいし、探索位置の距離間隔を一定にしてもよい。
【００６３】
本実施形態によれば、候補動きベクトルＣＭＶについて指標データＣＯＳＴを算出して動きベクトルＭＶを生成するため、候補動きベクトルＣＭＶの生成に投影画像を用いた場合でも、例えば、図１４（Ａ），（Ｂ）に示すように画像パターンは異なるが指標データＰＪ＿ＣＯＳＴが同じになる画像パターンのマクロブロックＭＢについて、正確な動きベクトルＭＶを生成できる。
【産業上の利用可能性】
【００６４】
本発明は、画像データを符号化する符号化システムに適用可能である。
【図面の簡単な説明】
【００６５】
【図１】図１は、本発明は、本発明の第１実施形態の通信システムの構成図である。
【図２】図２は、図１に示す符号化装置の機能ブロック図である。
【図３】図３は、図２に示す動き予測・補償回路における動きベクトルの探索方法を説明するための図である。
【図４】図４は、図２に示す動き予測・補償回路の構成図である。
【図５】図５は、図２に示すフレームメモリ３７に記憶されるフレームデータおよびそれに対応する水平投影画像データの記憶アドレスを説明するための図である。
【図６】図６は、図２に示すフレームメモリ３７に記憶される参照画像データおよびそれに対応する水平投影画像データの記憶アドレスを説明するための図である。
【図７】図７は、図２に示すフレームメモリ３７に記憶されるフレームデータおよびそれに対応する垂直投影画像データの記憶アドレスを説明するための図である。
【図８】図８は、図２に示すフレームメモリ３７に記憶される参照画像データおよびそれに対応する垂直投影画像データの記憶アドレスを説明するための図である。
【図９】図９は、図４に示す動き予測・補償回路の動作例を説明するためのフローチャートである。
【図１０】図１０は、図４に示す動き予測・補償回路の動作例を説明するための図９の続きのフローチャートである。
【図１１】図１１は、本発明の第２実施形態に係わる符号化装置の図２に示す動き予測・補償回路の構成図である。
【図１２】図１２は、図１１に示す探索位置指定回路による探索位置の指定パターンを説明するための図である。
【図１３】図１３は、図１１に示す動き予測・補償回路の動作例を説明するためのフローチャートである。
【図１４】図１４は、本発明の第３実施形態に係わる符号化装置の効果を説明するための図である。
【符号の説明】
【００６６】
１…通信システム、２…符号化装置、３…復号装置、２２…Ａ／Ｄ変換回路、２３…画面並べ替え回路、２４…演算回路、２５…直交変換回路、２６…量子化回路、２７…可逆符号化回路、２８…バッファ、２９…逆量子化回路、３０…逆直交変換回路、３４…フレームメモリ、３２…レート制御回路、３４，３７…フレームメモリ、３９，３９ａ…動き予測・補償回路、５０…投影画像生成回路、５１…アクセス回路、５２…投影指標データ生成回路、５３…ＭＶ探索回路、５４…処理回路、６０…探索基点特定回路、６１…探索位置指定回路、６２…投影指標データ生成回路、６３…ＭＶ探索回路、６４…処理回路
【図１】
2005184233.tif 000003
【図２】
2005184233.tif 000004
【図３】
2005184233.tif 000005
【図４】
2005184233.tif 000006
【図５】
2005184233.tif 000007
【図６】
2005184233.tif 000008
【図７】
2005184233.tif 000009
【図８】
2005184233.tif 000010
【図９】
2005184233.tif 000011
【図１０】
2005184233.tif 000012
【図１１】
2005184233.tif 000013
【図１２】
2005184233.tif 000014
【図１３】
2005184233.tif 000015
【図１４】
2005184233.tif 000016