(57)【特許請求の範囲】
【請求項１】
動き予測を用いて復号された画像情報を入力し，その入力画像に対し，動き予測に従って過去の画像を参照することにより，時間方向のフィルタ処理を施す動き補償付きテンポラルフィルタ処理装置であって，
フィルタ処理対象の入力画像と参照画像とを記憶する画像メモリと，
前記復号された画像情報に含まれる動きベクトルを記憶する動きベクトル情報記憶部と，
フィルタ処理対象の入力画像における各ブロックごとに，前記動きベクトル情報記憶部に記憶された動きベクトルを読み出し，その動きベクトルが示す参照画像が前記フィルタ処理対象の入力画像の直前のフレームである場合に，その動きベクトルが示す参照画像内の位置を動き探索範囲の中心位置として動き探索範囲を決定し，決定された動き探索範囲内で前記画像メモリに格納された参照画像を探索することによりフィルタ処理対象ブロックの動き予測を行い，前記参照画像が前記フィルタ処理対象の入力画像よりもｎフレーム前（ｎは２以上の整数）である場合に，前記動きベクトルについて１／ｎにスケーリングし，スケーリング後の動きベクトルが示す直前のフレーム内の位置を動き探索範囲の中心位置として動き探索範囲を決定し，決定された動き探索範囲内で前記画像メモリに格納された直前のフレームを参照画像として探索することによりフィルタ処理対象ブロックの動き予測を行い，動きベクトルを検出する動き予測部と，
前記動き予測部が検出した動きベクトルを入力し，入力画像のフィルタ処理対象ブロックに対し，前記画像メモリに格納された参照画像を動きベクトルに従って参照することにより動き補償付きテンポラルフィルタの処理を実行するフィルタ処理部とを備える
ことを特徴とする動き補償付きテンポラルフィルタ処理装置。
【請求項２】
動き予測を用いて復号された画像情報を入力し，その入力画像に対し，動き予測に従って過去の画像を参照することにより，時間方向のフィルタ処理を施す動き補償付きテンポラルフィルタ処理方法であって，
フィルタ処理対象の入力画像と参照画像とを画像メモリに記憶するステップと，
前記復号された画像情報に含まれる動きベクトルを動きベクトル情報記憶部に記憶するステップと，
フィルタ処理対象の入力画像における各ブロックごとに，前記動きベクトル情報記憶部に記憶された動きベクトルを読み出し，その動きベクトルが示す参照画像が前記フィルタ処理対象の入力画像の直前のフレームである場合に，その動きベクトルが示す参照画像内の位置を動き探索範囲の中心位置として動き探索範囲を決定し，決定された動き探索範囲内で前記画像メモリに格納された参照画像を探索することによりフィルタ処理対象ブロックの動き予測を行い，前記参照画像が前記フィルタ処理対象の入力画像よりもｎフレーム前（ｎは２以上の整数）である場合に，前記動きベクトルについて１／ｎにスケーリングし，スケーリング後の動きベクトルが示す直前のフレーム内の位置を動き探索範囲の中心位置として動き探索範囲を決定し，決定された動き探索範囲内で前記画像メモリに格納された直前のフレームを参照画像として探索することによりフィルタ処理対象ブロックの動き予測を行い，動きベクトルを検出する動き予測ステップと，
前記動き予測ステップで検出された動きベクトルを入力し，入力画像のフィルタ処理対象ブロックに対し，前記画像メモリに格納された参照画像を動きベクトルに従って参照することにより動き補償付きテンポラルフィルタの処理を実行するフィルタ処理ステップとを有する
ことを特徴とする動き補償付きテンポラルフィルタ処理方法。
【請求項３】
請求項２記載の動き補償付きテンポラルフィルタ処理方法をコンピュータに実行させるための動き補償付きテンポラルフィルタ処理プログラム。
【請求項４】
請求項３記載の動き補償付きテンポラルフィルタ処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，入力画像に対する時間方向のフィルタ処理によりノイズを除去する動き補償付きテンポラルフィルタ処理装置，処理方法，処理プログラムおよびコンピュータ読み取り可能な記録媒体に関し，特に，一度符号化され，それを復号した画像情報を入力して，動き補償付きテンポラルフィルタ処理を行うときの処理量を削減する技術に関するものである。
【背景技術】
【０００２】
動画像の連続するフレーム（フィールドを含む。以下，同様）に時間方向のフィルタ処理を施すことによりノイズを除去することが行われている。このようなフィルタをテンポラルフィルタという。
【０００３】
さらに，効果的にフィルタ処理を行うために，時間的に前のフレームを参照画像として動き予測を行い，現フレームの画素と動きベクトルで示される参照画像の画素との間で，時間方向のフィルタ処理を行う動き補償付きテンポラルフィルタも用いられている。
【０００４】
図４は，動き補償付きテンポラルフィルタの利用例を示す図である。図４において，１００は復号器，２００は動き補償付きテンポラルフィルタ処理部，３００は符号化器を表す。この図４では，復号器１００によって復号した画像を，符号化器３００によって再符号化する前に，動き補償付きテンポラルフィルタ処理部２００によってノイズを除去する場合の動き補償付きテンポラルフィルタの利用例を示している。
【０００５】
復号器１００は，例えばＭＰＥＧ−２符号化ストリームを復号する装置であり，符号化器３００は，復号器１００で復号した画像を，Ｈ．２６４の符号化方式により再符号化する装置である。動き補償付きテンポラルフィルタ処理部２００は，符号化器３００へ入力する前の画像信号に含まれるノイズを除去するためのものであり，入力する復号画像について，各ブロックごとに直前の参照画像に対する動き予測を行い，動き補償を用いた時間方向のフィルタ処理を行う。動き補償付きテンポラルフィルタ処理部２００が出力するフィルタ後画像は，符号化器３００へ送られて再符号化される。本発明は，このような動画像の再符号化時に用いる動き補償付きテンポラルフィルタの改良に関するものである。
【０００６】
従来，動き補償付きテンポラルフィルタの例としては，再符号化時に用いるものではないが，例えば特許文献１に記載されている適応フィルタ装置がある。特許文献１の適応フィルタ装置では，４フィールド前後あるいは２フィールド前後の処理対象画像に対して，異なる２つの画像データから相関の強い方の動きベクトルに対応した参照画素と処理画素との間の差分値を求め，その差分値に応じて参照画素の処理画素に対するミクシング値を可変にすることにより，ノイズ除去を図っている。
【特許文献１】特開平１０−８４４９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従来，一度符号化された符号化ストリームを復号した画像に対して，動き補償付きテンポラルフィルタの処理を実行する場合に，復号時に符号化ストリームから得た動きベクトルの情報を，フィルタ処理に利用することは行われていなかった。そのため，特許文献１に記載されているような従来の動き補償付きテンポラルフィルタでは，動き予測において動きベクトルを検出するために参照画像を探索する範囲（これを，動き探索範囲という）を，フィルタ処理対象ブロックの位置を中心として，比較的大きくとる必要があった。
【０００８】
この動き探索範囲の広狭は，探索の処理時間に大きく影響する。例えば動き探索範囲の縦横のサイズが２倍になると，処理時間は約４倍になる。しかし，動き探索範囲が狭過ぎると，画像の動きが大きいときに正しい動きベクトルは求めることができなくなる。
【０００９】
そこで本発明は，上記課題の解決を図り，動き補償付きテンポラルフィルタにおける動き予測において，比較的狭い動き探索範囲でも動きベクトルの誤検出が生じないようにし，動き探索の処理時間を従来の動き補償付きテンポラルフィルタの処理時間よりも短縮することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は，上記課題を解決するため，前段の復号器で符号化ストリームから得た動きベクトル情報を利用して，フィルタ処理対象ブロックごとに，動き補償付きテンポラルフィルタ処理における動き探索範囲を定める際に，参照画像における動きベクトルが示す位置を探索中心として動き探索範囲を定める。特に本発明では，参照画像がフィルタ処理対象の入力画像よりもｎフレーム前（ｎ＝２，３，…）のときに，前記動きベクトルについて１／ｎにスケーリングし，スケーリング後の動きベクトルが示す直前のフレーム内の位置を動き探索範囲の中心位置として動き探索範囲を決定する。
【００１１】
図１は，従来技術と本発明との動き探索範囲の違いを説明するための図である。図１（Ａ）は，従来の動き補償付きテンポラルフィルタにおける動き探索範囲，図１（Ｂ）は本発明による動き補償付きテンポラルフィルタにおける動き探索範囲を示している。
【００１２】
図１において，１は参照画像，２はフィルタ処理対象の原画像，３はフィルタ処理対象ブロック，４は参照画像における動き補償対象ブロック，５は動き探索範囲，６は動き探索範囲の探索中心，７はフィルタ処理対象ブロック位置，８はＭＰＥＧ−２動きベクトルを表している。
【００１３】
従来技術では，図１（Ａ）に示すように，原画像２のフィルタ処理対象ブロック３について動き補償付きテンポラルフィルタの処理を行う場合に，参照画像１におけるフィルタ処理対象ブロック位置７を探索中心６として動き探索範囲５を定め，その動き探索範囲５内でフィルタ処理対象ブロック３と予測誤差が最小となる動き補償対象ブロック４を求める動き探索を行っていた。
【００１４】
これに対し，本発明では，図１（Ｂ）に示すように，フィルタ処理対象となる原画像２および参照画像１が，動き予測を用いて符号化された符号化ストリームを復号したものであることから，その復号時に符号化ストリームから得た動きベクトル（例えばＭＰＥＧ−２動きベクトル８）を利用し，探索中心６を定める。すなわち，画像情報として原画像２のデータだけでなく，ＭＰＥＧ−２動きベクトル８の情報も入力し，探索中心６をフィルタ処理対象ブロック位置７からＭＰＥＧ−２動きベクトル８だけ離れた位置に設定する。この探索中心６を中心として，上下左右に予め決められた幅のｎ×ｍ画素分の領域を動き探索範囲５として定め，この動き探索範囲５内でフィルタ処理対象ブロック３と予測誤差が最小となる動き補償対象ブロック４を求める。なお，小数画素精度での動き探索を行ってもよい。
【００１５】
同図から明らかなように，動き補償時に参照される動き補償対象ブロック４は，参照画像１内でＭＰＥＧ−２動きベクトル８が指す位置の近くにあることは明らかであるから，図１（Ａ）の従来の動き探索範囲５に比べて，図１（Ｂ）のように比較的狭い範囲を動き探索範囲５として定めても，動き補償に用いる動きベクトル，すなわちフィルタ処理対象ブロック位置７から動き補償対象ブロック４への動きベクトルを，誤って検出することはない。したがって，動き探索範囲５が狭くなった場合だけ，従来技術よりも動き探索に要する処理量を削減することができるようになる。
【発明の効果】
【００１６】
本発明によれば，動き補償付きテンポラルフィルタにおいて，動き補償のための動きベクトルの検出に必要な処理量を少なくすることができるので，処理の高速化が可能になる。
【発明を実施するための最良の形態】
【００１７】
図２は，本発明の動き補償付きテンポラルフィルタ処理装置の構成例を示すブロック図である。この動き補償付きテンポラルフィルタ処理装置は，例えば図４に示す復号器１００と符号化器３００の間の動き補償付きテンポラルフィルタ処理部２００として用いられる。
【００１８】
図２（Ａ）は，フィルタ後の画素値を次のフレームのフィルタ処理の参照画像とするＩＩＲ（Infinite Inpulse Response ）型のテンポラルフィルタ構成の場合の例を示し，図２（Ｂ）は，フィルタ前の入力画像を次のフレームのフィルタ処理の参照画像とするＦＩＲ (Finite Inpulse Response)型のテンポラルフィルタ構成の場合の例を示している。どちらの場合でも本発明を実施することができる。
【００１９】
図２（Ａ）において，画像メモリ１０は，復号画像情報のフィルタ処理対象となる画像を入力し，記憶する。入力画像は，フレーム単位の画像であってもフィールド単位の画像であってもどちらでもよい。ここではフレーム画像として説明する。画像メモリ１０には，１フレームまたは複数フレームの過去のフレーム画像についても保持される。また，動きベクトル情報記憶部２０には，復号画像情報に含まれる動きベクトル情報または復号画像情報とともに復号器から送られてくる動きベクトル情報が格納される。
【００２０】
動き予測部３０は，探索中心決定部３１と動き探索部３２とを備え，フィルタ処理対象の画像についてブロック単位で，過去のフレーム画像を参照画像として動き予測を行う。ここでは，説明を簡単にするために，直前のフレーム画像だけを動き補償付きテンポラルフィルタの処理に用いるものとし，動き予測も直前のフレーム画像に対してだけ行うものとする。ブロックのサイズは任意であり，例えば４×４画素ないし８×８画素が適当である。
【００２１】
この動き予測では，まず探索中心決定部３１が，動きベクトル情報記憶部２０からフィルタ処理対象ブロックの動きベクトルを読み出し，参照画像におけるフィルタ処理対象ブロック位置を起点として，その動きベクトルが指す参照画像の位置を探索中心と決定する。このとき，参照画像が直前のフレームではなく，例えば２フレーム前または３フレーム前というような場合には，動きベクトルを１／２または１／３というようにスケーリングして探索中心を決定する。その探索中心から上下左右に予め決められた幅のｎ×ｍ画素分の領域が動き探索範囲として定められる。
【００２２】
動き探索部３２は，探索中心決定部３１により定められた動き探索範囲内で，照合する参照画像におけるブロックの位置を動かしながら，参照画像とフィルタ処理対象画像とのブロック間の画素毎の差分絶対値の和または二乗誤差の和（これらを動き予測誤差という）を算出し，動き予測誤差が最小となるブロックの位置関係を，動きベクトルとして検出する。検出した動きベクトルを動き予測の結果としてフィルタ処理部４０へ出力する。
【００２３】
フィルタ処理部４０は，動き予測部３０が検出した動きベクトルに従って，画像メモリ１０を参照し，動き補償付きテンポラルフィルタの処理を実行する。フィルタ処理部４０が行う動き補償付きテンポラルフィルタの処理は，従来行われている処理と同様であるので，ここでのその詳しい説明は省略する。フィルタ処理部４０によるフィルタ処理後の画像は，フィルタ後画像として出力されるとともに，次のフレームの参照画像に反映させるために，画像メモリ１０に書き戻される。
【００２４】
図２（Ｂ）に示すＦＩＲ型のテンポラルフィルタ構成の場合，フィルタ処理部８０が用いる参照画像は，フィルタ処理が行われない画像である。そのため，フィルタ処理部８０による処理結果は，フィルタ後画像として出力されるが，画像メモリ５０に書き戻されることはない。それ以外の動きベクトル情報記憶部６０，動き予測部７０の構成および動作は，図２（Ａ）で説明したものと同様である。
【００２５】
図３は，本発明の実施の形態の処理フローチャートである。フィルタ処理対象画像の各ブロックごとに，以下のステップＳ１〜Ｓ７を実行する。ステップＳ１〜Ｓ２が探索中心決定部３１，７１の処理，ステップＳ３〜Ｓ６が動き探索部３２，７２の処理，ステップＳ７がフィルタ処理部４０，８０の処理である。
【００２６】
ステップＳ１では，動きベクトル情報記憶部２０，６０から復号時に取得した動きベクトルを読み出す。
【００２７】
ステップＳ２では，読み出した動きベクトルで示される参照画像の位置を，動き探索範囲５の中心位置に決定し，その中心位置をもとに上下左右に予め決められた幅のｎ×ｍ画素分の領域を動き探索範囲５として決定する。なお，参照画像がｎフレーム前（ｎ≧２）の場合には，動きベクトルを１／ｎにスケーリングして探索中心６を決定する。
【００２８】
ステップＳ３では，ステップＳ２で決定された動き探索範囲５内で，参照画像１とフィルタ処理対象画像のブロック間の動き予測誤差を計算し，動き探索を行う。ここでは，動き予測誤差として絶対値誤差和（ＳＡＤ：Sum of Absolute Difference）を算出するものとする。二乗誤差和を算出してもよい。なお，探索開始前に動き予測誤差最小値ＳＡＤmin の値を，最大値に初期化しておく。
【００２９】
ステップＳ４では，ステップＳ３で算出した動き予測誤差ＳＡＤとこれまでに記憶した動き予測誤差最小値ＳＡＤmin の大小を比較し，動き予測誤差ＳＡＤが小さい場合，ステップＳ５へ進み，そうでなければ，ステップＳ６へ進む。
【００３０】
ステップＳ５では，動き予測誤差ＳＡＤを，新たな動き予測誤差最小値ＳＡＤmin として記憶し，そのときの動きベクトルＭＶをレジスタまたはメモリに記憶する。
【００３１】
ステップＳ６では，動き探索範囲５内の探索が終了したかどうかを判定する。探索が終了していない場合には，参照画像１における次の探索位置について同様にステップＳ３〜Ｓ５の処理を繰り返す。探索が終了したならば，次のステップＳ７へ移る。
【００３２】
ステップＳ７では，ステップＳ５で記憶した動きベクトルＭＶを用いて，動き補償付きテンポラルフィルタ処理を実行し，フィルタ後画像を出力する。
【００３３】
以上の動き補償付きテンポラルフィルタの処理は，コンピュータとソフトウェアプログラムとによっても実現することができ，そのプログラムをコンピュータ読み取り可能な記録媒体に記録して提供することも，ネットワークを通して提供することも可能である。
【図面の簡単な説明】
【００３４】
【図１】従来技術と本発明との動き探索範囲の違いを説明するための図である。
【図２】本発明の構成例を示すブロック図である。
【図３】本発明の実施の形態の処理フローチャートである。
【図４】動き補償付きテンポラルフィルタの利用例を示す図である。
【符号の説明】
【００３５】
１０，５０  画像メモリ
２０，６０  動きベクトル情報記憶部
３０，７０  動き予測部
３１，７１  探索中心決定部
３２，７２  動き探索部
４０，８０  フィルタ処理部
【図１】
0004523626.tif 000002
【図２】
0004523626.tif 000003
【図３】
0004523626.tif 000004
【図４】
0004523626.tif 000005