(57)【要約】【課題】  符号化された動画像データの各フレームを再生する場合に、フレーム間の画質の差を極力減少させるための技術を提供すること。【解決手段】  フィルタ１０１は、着目フレームに第１のフィルタ処理を行う。加算器１０３は、第１のフィルタ処理された着目フレーム中の着目ブロックについて予測誤差を求め、フィルタ１０８は、第２のフィルタ処理を行う。ＤＣＴ１０９、量子化器１１０、エントロピー符号化器１１１は、着目ブロックに対して動き補償に基づく符号化を行う。ブロック歪み測定器１０２は、類似ブロックと第２のフィルタ処理された予測誤差とを加算することで生成した復号ブロックと、着目ブロックとの差をブロック歪みデータとして求める。フィルタ特性指定部１１５，１１７はそれぞれ、複数フレーム数分のブロック歪みデータに基づいて、第１のフィルタ処理、第２のフィルタ処理、を制御する。【選択図】  図１
2009260661.tif 000002
【特許請求の範囲】
【請求項１】
動画像データに対して動き補償に基づく符号化を行う画像処理装置であって、
着目フレームの画像に対してフィルタ処理を行う第１のフィルタ処理手段と、
前記第１のフィルタ処理手段によってフィルタ処理された前記着目フレームの画像中の着目ブロックについて、前記着目フレームよりも前のフレームの画像中における類似ブロックを特定し、特定した類似ブロックと前記着目ブロックとの差を予測誤差として求める手段と、
前記予測誤差に対してフィルタ処理を行う第２のフィルタ処理手段と、
前記着目ブロックに対して、動き補償に基づく符号化を行う符号化手段と、
前記類似ブロックと、前記第２のフィルタ処理手段によってフィルタ処理された前記予測誤差と、を加算することで、復号ブロックを生成し、生成した復号ブロックと前記着目ブロックとの差をブロック歪みデータとして求める計算手段と、
前記着目フレームの画像を構成する各ブロックについて前記計算手段が求めたブロック歪みデータを、メモリに格納する手段と、
前記メモリに格納された複数フレーム数分のブロック歪みデータに基づいて、前記第１のフィルタ処理手段の動作、前記第２のフィルタ処理手段の動作、を制御する制御手段と
を備えることを特徴とする画像処理装置。
【請求項２】
更に、
前記符号化手段が、前記着目フレームの画像を構成するそれぞれのブロック毎に行う符号化処理において行われる量子化処理において用いる量子化パラメータを、前記メモリに格納された複数フレーム数分のブロック歪みデータと、前記符号化手段が過去に符号化したそれぞれのフレームの符号化データの符号量の累積値と、に基づいて設定する手段を備えることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
動画像データに対して動き補償に基づく符号化を行う画像処理装置が行う画像処理方法であって、
着目フレームの画像に対してフィルタ処理を行う第１のフィルタ処理工程と、
前記第１のフィルタ処理工程でフィルタ処理された前記着目フレームの画像中の着目ブロックについて、前記着目フレームよりも前のフレームの画像中における類似ブロックを特定し、特定した類似ブロックと前記着目ブロックとの差を予測誤差として求める工程と、
前記予測誤差に対してフィルタ処理を行う第２のフィルタ処理工程と、
前記着目ブロックに対して、動き補償に基づく符号化を行う符号化工程と、
前記類似ブロックと、前記第２のフィルタ処理工程でフィルタ処理された前記予測誤差と、を加算することで、復号ブロックを生成し、生成した復号ブロックと前記着目ブロックとの差をブロック歪みデータとして求める計算工程と、
前記着目フレームの画像を構成する各ブロックについて前記計算工程で求めたブロック歪みデータを、メモリに格納する工程と、
前記メモリに格納された複数フレーム数分のブロック歪みデータに基づいて、前記第１のフィルタ処理工程、前記第２のフィルタ処理工程、を制御する制御工程と
を備えることを特徴とする画像処理方法。
【請求項４】
コンピュータを、請求項１又は２に記載の画像処理装置が有する各手段として機能させるためのコンピュータプログラム。
【請求項５】
請求項４に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像符号化技術に関するものである。
【背景技術】
【０００２】
動画像データを符号化する場合、動画像データを所定数の画素から成るブロック単位に分割し、ブロック単位に直交変換を施すことで空間周波数成分に変換し、空間周波数成分に量子化処理を施した後、エントロピー符号化を施す技術が広く使われている。このような符号化技術の代表的な方式の一つに、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｕｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）方式がある。
【０００３】
ＭＰＥＧ方式は、符号化ストリームの復号化過程を定めたものであり、符号化処理にはある程度の自由度が残されている。規格の範囲内で、符号化パラメータや符号化アルゴリズムを変えて目的の画質、符号量を実現する。画質、符号量を決定する為のアルゴリズムの重要な技術の一つとして、符号量制御が挙げられる。
【０００４】
符号量制御方式の一つとしては、ＭＰＥＧ−２符号化方式の標準化の過程において提案されたＴＭ５（Ｔｅｓｔ  Ｍｏｄｅｌ  ５）がよく知られている（非特許文献１）。ＴＭ５では、符号化対象ピクチャに含まれるＧＯＰ（Ｇｒｏｕｐ  ｏｆ  Ｐｉｃｕｒｅ）内の未符号化ピクチャに注目し、それらのピクチャに割り当てられ得る符号量をピクチャタイプごとに求める。そして、符号化対象ピクチャのピクチャタイプに応じて符号量を配分する。
【０００５】
しかし、このような符号量制御方式を用いて動画像データを符号化する場合、次のような問題が生じる。即ち、符号化難易度の高い動画像データを、より少ない符号量で符号化する（高い圧縮率で符号化する）と、量子化処理に起因する誤差が、隣接するブロック間においてブロック歪みとして視覚的に目立つようになる。このブロック歪みと呼ばれる視覚的画質劣化は、出力される符号化ストリームの画質低下の原因となっている。
【０００６】
そこで、符号化装置に入力される動画像データと予測誤差とに対してそれぞれフィルタ処理を施すことにより、入力される動画像データの空間周波数の帯域を制限し、符号量を制御する技術が開示されている（特許文献１、特許文献２）。
【０００７】
上記開示されている従来技術を利用することにより、符号化難易度の高い動画像データを高い圧縮率で符号化した場合に発生するブロック歪みを減少させ、画質の低下を防ぐことができると言われている。しかし、上記従来技術では、フィルタをどのような単位で制御するかについては具体的には言及されていない。
【０００８】
そこで仮に、従来技術を利用して符号化処理を行うとすると、入力される動画像データに対するフィルタの特性、予測誤差に対するフィルタの特性、の制御単位をピクチャとする符号量制御方法が考えられる。
【０００９】
しかし上記従来技術を利用した符号化処理では、入力された動画像データ、予測誤差に対して、フィルタ処理を施す単位が共に同じ単位であるピクチャ単位とすると、図２に示すように、符号化ストリームの画質がピクチャ間においてばらつくと推察される。図２は、各ピクチャの画質を示す図である。図２において、横軸は各ピクチャに固有の番号（ピクチャＮｏ．）を表し、縦軸は画質を表す。
【００１０】
例えば、図２に示す如く、連続するピクチャＮ、ピクチャ（Ｎ−１）において画質に大きな差が生じている。
【特許文献１】特登録２５４９０１３号公報
【特許文献２】特公平７−１２１１２０号公報
【非特許文献１】ＩＳＯ／ＩＥＣ−ＪＴＣ１／ＳＣ２９／ＷＧ１１，“Ｔｅｓｔ  Ｍｏｄｅｌ  ５（Ｄｒａｆｔ），”ＭＰＥＧ９３／Ｎ０４００、１９９３．
【発明の開示】
【発明が解決しようとする課題】
【００１１】
このように上記従来技術によって、個々のピクチャの画質は改善されるが、ピクチャ間での画質が大きく異なる為、動画像データとしての画質は改善されない。従って、動画像データとしての画質を改善するためには、連続するピクチャ間における画質の差を少なくする処理が必要である。
【００１２】
本発明は以上の問題に鑑みて成されたものであり、符号化された動画像データの各フレームを再生する場合に、フレーム間の画質の差を極力減少させるための技術を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【００１４】
即ち、動画像データに対して動き補償に基づく符号化を行う画像処理装置であって、
着目フレームの画像に対してフィルタ処理を行う第１のフィルタ処理手段と、
前記第１のフィルタ処理手段によってフィルタ処理された前記着目フレームの画像中の着目ブロックについて、前記着目フレームよりも前のフレームの画像中における類似ブロックを特定し、特定した類似ブロックと前記着目ブロックとの差を予測誤差として求める手段と、
前記予測誤差に対してフィルタ処理を行う第２のフィルタ処理手段と、
前記着目ブロックに対して、動き補償に基づく符号化を行う符号化手段と、
前記類似ブロックと、前記第２のフィルタ処理手段によってフィルタ処理された前記予測誤差と、を加算することで、復号ブロックを生成し、生成した復号ブロックと前記着目ブロックとの差をブロック歪みデータとして求める計算手段と、
前記着目フレームの画像を構成する各ブロックについて前記計算手段が求めたブロック歪みデータを、メモリに格納する手段と、
前記メモリに格納された複数フレーム数分のブロック歪みデータに基づいて、前記第１のフィルタ処理手段の動作、前記第２のフィルタ処理手段の動作、を制御する制御手段と
を備えることを特徴とする。
【００１５】
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
【００１６】
即ち、動画像データに対して動き補償に基づく符号化を行う画像処理装置が行う画像処理方法であって、
着目フレームの画像に対してフィルタ処理を行う第１のフィルタ処理工程と、
前記第１のフィルタ処理工程でフィルタ処理された前記着目フレームの画像中の着目ブロックについて、前記着目フレームよりも前のフレームの画像中における類似ブロックを特定し、特定した類似ブロックと前記着目ブロックとの差を予測誤差として求める工程と、
前記予測誤差に対してフィルタ処理を行う第２のフィルタ処理工程と、
前記着目ブロックに対して、動き補償に基づく符号化を行う符号化工程と、
前記類似ブロックと、前記第２のフィルタ処理工程でフィルタ処理された前記予測誤差と、を加算することで、復号ブロックを生成し、生成した復号ブロックと前記着目ブロックとの差をブロック歪みデータとして求める計算工程と、
前記着目フレームの画像を構成する各ブロックについて前記計算工程で求めたブロック歪みデータを、メモリに格納する工程と、
前記メモリに格納された複数フレーム数分のブロック歪みデータに基づいて、前記第１のフィルタ処理工程、前記第２のフィルタ処理工程、を制御する制御工程と
を備えることを特徴とする。
【発明の効果】
【００１７】
本発明の構成によれば、符号化された動画像データの各フレームを再生する場合に、フレーム間の画質の差を極力減少させることができる。
【発明を実施するための最良の形態】
【００１８】
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の１つである。
【００１９】
［第１の実施形態］
図１は、本実施形態に係る画像処理装置のハードウェア構成例を示すブロック図である。本実施形態に係る画像処理装置は、入力された動画像データに対して動き補償に基づく符号化処理を行う。
【００２０】
本実施形態に係る画像処理装置には、符号化対象である動画像データがフレーム単位で入力される。以下の説明では、着目フレームの画像データが画像処理装置に入力された場合における、係る画像処理装置の動作について説明する。即ち、画像処理装置は、以下説明する処理を、入力された各フレームの画像データに対して行うことになる。
【００２１】
フィルタ１０１には、着目フレームの画像データが入力画像として入力される。そしてフィルタ１０１は、この入力された着目フレームの画像データに対して、フィルタ特性指定部１１５により指定されたフィルタ特性に従ったフィルタ処理を行う（第１のフィルタ処理）。係るフィルタ処理は、着目フレームの画像データを空間周波数データとして捉えた場合に、その帯域を制限する目的で行うものである。帯域を制限することによって、画像の持つ情報量自体を抑えることができる。フィルタ処理の種類としては、帯域を制限できるものであればどのような処理でも構わないが、着目フレームの画像データにおける視覚的画質劣化を目立たなくするものが好ましい。従って、ローパス・フィルタや、メディアン・フィルタを用いたフィルタ処理が考えられる。また、フィルタ特性指定部１１５により指定されるフィルタ特性には、例えばフィルタのタップ数や、タップそれぞれに与える係数値、水平フィルタ、垂直フィルタ、二次元フィルタ等、フィルタの構造を示すパラメータ等が挙げられる。
【００２２】
そしてフィルタ１０１は、フィルタ処理済みの着目フレームの画像データを、ブロック（マクロブロック）毎に出力する。ここで、ブロックとは、１つの画像を複数の矩形領域に分割した場合に、１つの矩形領域を指し示すものである。フィルタ１０１から出力されたブロック毎のデータは、ブロック歪み測定器１０２、減算器１０３、動き検出器１０４に出力される。
【００２３】
以下では、フィルタ１０１から（着目フレームの画像中の）着目ブロックのデータが出力された場合における、画像処理装置の動作について説明する。即ち、画像処理装置は、以下説明する処理を、着目フレームの画像データを構成する各ブロックのデータに対して行うことになる。
【００２４】
動き検出器１０４は、フレームメモリ１０５に格納されている、着目フレームよりも前のフレームに対応する画像データを読み出し、読み出した画像データにおいて、着目ブロックと類似する（相関が高い）ブロック（類似ブロック）のデータを特定する。そして特定した類似ブロックの位置を動きベクトルデータとして、後段のエントロピー符号化器１１１に送出する。また、特定した類似ブロックのデータを、後段の動き補償器１０６に送出する。
【００２５】
動き補償器１０６は、動き検出器１０４から受けた類似ブロックのデータを、減算器１０３と加算器１０７とに対して送出する。
【００２６】
減算器１０３は、フィルタ１０１から出力された着目ブロックのデータと、動き補償器１０６から受けた類似ブロックのデータと、の差分画像データを、予測誤差のデータとして求める。係る予測誤差の計算については周知の通り、それぞれのブロック内で位置的に対応する画素同士の画素値の差分を計算することで、それぞれのブロックの差分画像を求めることに相当する。そして減算器１０３は、求めた予測誤差のデータを、後段のフィルタ１０８に対して送出する。
【００２７】
なお、イントラ符号化を行う旨の指示が画像処理装置に対して入力された場合には、減算器１０３は、フィルタ１０１から受けた着目ブロックのデータをそのまま後段のフィルタ１０８に対して送出する。
【００２８】
何れにせよ、フィルタ１０８には、ブロックサイズの画像データが入力されることになる。もちろん、このブロックサイズの画像データとは、予測誤差のデータ、若しくは着目ブロックのデータの何れかである。
【００２９】
フィルタ１０８は、減算器１０３から受けたブロックサイズの画像データに対して、フィルタ特性指定部１１７により指定されたフィルタ特性に従ったフィルタ処理を行う（第２のフィルタ処理）。フィルタ１０８において用いるフィルタの種類、フィルタ特性の内容は、フィルタ１０１と同様に考える。
【００３０】
図４は、各フレームの画像に対してフィルタ１０１において用いるフィルタ係数と、フィルタ１０８において用いるフィルタ係数と、を示す図である。
【００３１】
そしてフィルタ１０８は、フィルタ処理済みの画像データを、後段のＤＣＴ１０９に送出する。
【００３２】
ＤＣＴ１０９は、フィルタ１０８から受けた画像データに対して、８画素×８ラインのサイズのブロックを単位としてＤＣＴ（離散コサイン変換）変換を行う。これにより、ＤＣＴ１０９は、ＤＣＴ係数を出力する。
【００３３】
量子化器１１０は、ＤＣＴ１０９から送出されたＤＣＴ係数を、量子化パラメータ指定部１１８により指定された量子化パラメータを用いて量子化する。フィルタ１０１、フィルタ１０８によって、フィルタ１０１に入力された着目フレームの画像データの情報量は低減されているので、量子化パラメータ（量子化ステップ）はその分小さく設定できることになり、ブロック歪み量を低減することができる。
【００３４】
そして量子化器１１０は、量子化後のデータ（量子化データ）を、エントロピー符号化器１１１に送出すると共に、逆量子化器１１２にも送出する。
【００３５】
エントロピー符号化器１１１は、イントラ符号化を行う場合、量子化器１１０から受けた量子化データにおける直流成分（ＤＣ係数）について他のブロックのＤＣ係数との差分（差分ＤＣ成分）を計算する。また、エントロピー符号化器１１１は、交流成分（ＡＣ成分）についてはゼロ・ランレングス符号化を行う。さらにＤＣ係数については、差分ＤＣ係数に対してその差分値の大きさに基づいてカテゴライズされ、割り当てられたカテゴリ内で値を特定するための付加ビットが求められる。このカテゴリに対して可変長符号化（ＶＬＣ：Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｅ）が割り当てられ、割り当てられたコード＋付加ビットというデータ構造で出力される。また、ＡＣ係数については、係数を低周波成分の係数から高周波成分の係数の順番になるように並び替え、先行するゼロ係数の個数（Ｒｕｎ）と、比ゼロ係数の値（Ｌｅｖｅｌ）とをまとめて二次元可変長符号化する。
【００３６】
なお、このような符号化は、イントラ符号化技術として周知であるため、これ以上の説明は省略する。
【００３７】
一方、エントロピー符号化器１１１は、インター符号化を行う場合、ＤＣ係数も含めてＡＣ係数の扱いをし、符号化する。なお、このような符号化は、インター符号化技術として周知であるため、これ以上の説明は省略する。
【００３８】
エントロピー符号化器１１１による符号化結果としての、符号化ストリーム（符号化データ）は、画像処理装置が有する内部メモリや、画像処理装置の外部に対して送出すると共に、量子化パラメータ指定部１１８に対しても送出する。
【００３９】
一方、逆量子化器１１２は、量子化器１１０が行う変換処理の逆変換処理、即ち、逆量子化処理を行う。もちろん、係る逆量子化処理において用いる量子化パラメータは、量子化器１１０が用いたものと同じである。従って、逆量子化器１１２は、量子化器１１０から出力された量子化データに対して逆量子化処理を行うことで、ＤＣＴ係数を復元する。そして復元したＤＣＴ係数を、後段のＩＤＣＴ１１３に送出する。
【００４０】
ＩＤＣＴ１１３は、ＤＣＴ１０９が行う変換処理の逆変換処理、即ち、逆ＤＣＴ変換処理を行う。従って、ＩＤＣＴ１１３は、逆量子化器１１２から出力されたＤＣＴ係数に対して逆ＤＣＴ変換処理を行うことで、フィルタ１０８から出力されたブロックサイズの画像データを復元する。そして、復元したブロックサイズの画像データを、後段の加算器１０７に送出する。
【００４１】
加算器１０７は、イントラ符号化を行った場合には、ＩＤＣＴ１１３から受けた画像データを復号ブロックのデータとしてフレームメモリ１０５に格納する。一方、インター符号化を行った場合、加算器１０７は、動き補償器１０６から受けた類似ブロックのデータと、ＩＤＣＴ１１３から受けたブロックサイズの画像データ（フィルタ１０８によってフィルタ処理がなされた予測誤差のデータ）と、を加算する。そして加算器１０７は、係る加算により得られる（生成される）結果を復号ブロックのデータとして、フレームメモリ１０５に格納する。
【００４２】
ブロック歪み測定器１０２は、フレームメモリ１０５から、着目ブロックのデータに基づいて得られた復号ブロックのデータを読み出し、読み出した復号ブロックのデータと、フィルタ１０１から受けた着目ブロックのデータと、の差分ブロックデータを求める。係る差分ブロックデータが、「着目ブロックのデータに対するブロック歪みデータ」である。差分ブロックデータを求める方法は周知の通り、ブロック間で位置的に対応する画素同士の画素値の差分を計算することである。ブロック歪み測定器１０２は、このようにして、１つのブロックについてのブロック歪みデータを求める処理を、着目フレームの画像データを構成する各ブロックについて行う。
【００４３】
そしてブロック歪み測定器１０２は、ブロック歪みデータを求めると、求めたブロック歪みデータを、シーン目標符号量算出部１１４、ピクチャ目標符号量算出部１１６に出力する。
【００４４】
シーン目標符号量算出部１１４は、ブロック歪み測定器１０２から送出されたブロック歪みデータをフレーム単位で、自身が管理するメモリ内に記憶保持する。そして、所定フレーム数分（複数フレーム数分）のブロック歪みデータがメモリ内に蓄積されると、この蓄積されている「所定フレーム数分のブロック歪みデータ」を用いて、着目フレームの次のフレームを符号化する際の目標符号量を求める。なお、係る処理は、着目フレームの次のフレームを符号化する際の目標符号量を求める処理に限定するものではなく、着目フレームより２フレーム以上後のフレームを符号化する際の目標符号量を求めるようにしても良い。
【００４５】
シーン目標符号量算出部１１４が行う具体的な処理の一例としては、例えば、次のようなものが考えられる。
【００４６】
先ず、蓄積している１フレーム内のそれぞれのブロック歪みデータを積算した積算ブロック歪みデータを求める処理を、所定フレーム数分について行う。そして、所定フレーム数分のそれぞれのフレームに対応する積算ブロック歪みデータを更に積算した第２積算ブロック歪みデータを求める。そして、求めた第２積算ブロック歪みデータが、予め定めた第１閾値以上となった場合、即ち、ブロック歪み量が大きくなってきて視覚的に目立つ範囲に入ってきた場合には、目標符号量を小さく設定する。反対に、第２積算ブロック歪みデータが、予め定めた第２閾値（第１閾値＞第２閾値）以下になった場合、目標符号量を大きく設定する。
【００４７】
シーン目標符号量算出部１１４が行う具体的な処理の他の例としては、例えば先ず、蓄積している１フレーム内のそれぞれのブロック歪みデータを平均した平均ブロック歪みデータを求める処理を、所定フレーム数分について行う。そして、所定フレーム数分のそれぞれのフレームに対応する平均ブロック歪みデータを更に平均した第２平均ブロック歪みデータを求める。そして、求めた第２平均ブロック歪みデータが、予め定めた閾値以上となった場合、即ち、ブロック歪み量が大きくなってきて視覚的に目立つ範囲に入ってきた場合には、目標符号量を小さく設定する。
【００４８】
そしてシーン目標符号量算出部１１４は、求めた目標符号量のデータをフィルタ特性指定部１１５に対して送出する。
【００４９】
フィルタ特性指定部１１５は、シーン目標符号量算出部１１４から受けた目標符号量のデータに基づいて、フィルタ１０１で用いるフィルタ特性を決定し、決定したフィルタ特性をフィルタ１０１に指定する。即ち、決定したフィルタ特性に従ってフィルタ１０１が動作するように、フィルタ１０１の動作制御を行う。なお、目標符号量に基づいてフィルタ特性を決定するための処理については、例えば、次のようなものが考えられる。
【００５０】
例えば、フィルタ１０１がローパスフィルタとすると、目標符号量が予め定めた閾値以下となった場合、フィルタ特性としてタップ数を増やし、フィルタ１０１で強いローパスフィルタが掛かるように指定する。
【００５１】
ピクチャ目標符号量算出部１１６は、ブロック歪み測定器１０２から送出されたブロック歪みデータをフレーム単位で、自身が管理するメモリ内に記憶保持する。そして、所定フレーム数分のブロック歪みデータがメモリ内に蓄積されると、この蓄積されている「所定フレーム数分のブロック歪みデータ」を用いて、着目フレームの次のフレームを符号化する際の目標符号量を求める。
【００５２】
ピクチャ目標符号量算出部１１６が行う処理動作については、シーン目標符号量算出部１１４と同じであるため、係る処理動作についての説明は省略する。
【００５３】
そしてピクチャ目標符号量算出部１１６は、求めた目標符号量のデータをフィルタ特性指定部１１７と量子化パラメータ指定部１１８とに対して送出する。
【００５４】
フィルタ特性指定部１１７は、ピクチャ目標符号量算出部１１６から受けた目標符号量のデータに基づいて、フィルタ１０８で用いるフィルタ特性を決定し、決定したフィルタ特性をフィルタ１０８に指定する。即ち、決定したフィルタ特性に従ってフィルタ１０８が動作するように、フィルタ１０８の動作制御を行う。なお、目標符号量に基づいてフィルタ特性を決定するための処理については、例えば、次のようなものが考えられる。
【００５５】
例えば、フィルタ１０８がローパスフィルタとすると、目標符号量が予め定めた閾値以下となった場合、フィルタ特性としてタップ数を増やし、フィルタ１０８で強いローパスフィルタが掛かるように指定する。
【００５６】
量子化パラメータ指定部１１８は、エントロピー符号化器１１１から符号化ストリームを受ける毎に、その符号量を求め、求めた符号量を、自身が管理しているメモリ内に既に格納されている符号量に累積することで、メモリ内の符号量を示すデータを更新する。従って、量子化パラメータ指定部１１８が管理するメモリには、着目フレームよりも過去の数フレーム分の符号量が累積された結果（累積値）が格納されていることになる。なお、累積値は、例えば、同一シーン内の累積値、若しくはＧＯＰ（Ｇｒｏｕｐ  ｏｆ  Ｐｉｃｔｕｒｅ）内の累積値とする。
【００５７】
量子化パラメータ指定部１１８は、この累積値のデータと、ピクチャ目標符号量算出部１１６から受けた目標符号量のデータと、を用いて、着目フレームの次のフレームを符号化する際に用いる量子化パラメータを決定する処理を行う。量子化パラメータ指定部１１８が量子化パラメータを決定するための処理としては、例えば、次のようなものが考えられる。
【００５８】
先ず、目標符号量から予め定められたテーブルに基づき、仮の量子化パラメータを決定する。次に、累積値のデータが予め定めた閾値より大きい場合、仮の量子化パラメータを強く量子化が掛かるように１段階変更して、量子化パラメータとする。
【００５９】
そして、量子化パラメータ指定部１１８は、決定した量子化パラメータを、量子化器１１０、逆量子化器１１２に対して設定する。これにより、決定した量子化パラメータに従って量子化器１１０、逆量子化器１１２が動作するように、量子化器１１０、逆量子化器１１２の動作制御を行う。
【００６０】
図６は、本実施形態に係る画像処理装置が、着目フレームの画像データに対して行う動き補償に基づく符号化処理のフローチャートである。
【００６１】
先ず、フィルタ１０１には、着目フレームの画像データが入力画像として入力される。従ってステップＳ６０１では、フィルタ１０１は、この入力された着目フレームの画像データに対して、フィルタ特性指定部１１５により指定されたフィルタ特性に従ったフィルタ処理を行う。
【００６２】
次に、ステップＳ６０２では、動き検出器１０４は、フレームメモリ１０５に格納されている、着目フレームよりも前のフレームに対応する画像データを読み出す。そして、読み出した画像データにおいて、着目ブロックと類似する（相関が高い）ブロック（類似ブロック）のデータを特定する。そして、特定した類似ブロックの位置を動きベクトルデータとして、後段のエントロピー符号化器１１１に送出する。また、特定した類似ブロックのデータを、後段の動き補償器１０６に送出する。
【００６３】
ステップＳ６０３では、減算器１０３は、フィルタ１０１から出力された着目ブロックのデータと、動き補償器１０６から受けた類似ブロックのデータと、の差分画像データを、予測誤差のデータとして求める。そして減算器１０３は、求めた予測誤差のデータを、後段のフィルタ１０８に対して送出する。なお、イントラ符号化を行う旨の指示が画像処理装置に対して入力された場合には、減算器１０３は、フィルタ１０１から受けた着目ブロックのデータをそのまま後段のフィルタ１０８に対して送出する。何れにせよ、フィルタ１０８には、ブロックサイズの画像データが入力されることになる。
【００６４】
ステップＳ６０４では、フィルタ１０８は、減算器１０３から受けたブロックサイズの画像データに対して、フィルタ特性指定部１１７により指定されたフィルタ特性に従ったフィルタ処理を行う。
【００６５】
ステップＳ６０５では、ＤＣＴ１０９は、フィルタ１０８から受けた画像データに対して、８画素×８ラインのサイズのブロックを単位としてＤＣＴ（離散コサイン変換）変換を行う。
【００６６】
ステップＳ６０６では、量子化器１１０は、ＤＣＴ１０９から送出されたＤＣＴ係数を、量子化パラメータ指定部１１８により指定された量子化パラメータを用いて量子化する。
【００６７】
ここで、着目フレームの画像データを構成する全てのブロックについてステップＳ６０１からステップＳ６０６までの処理を行った場合には、処理はステップＳ６０７を介してステップＳ６０８に進める。一方、ステップＳ６０１からステップＳ６０６までの処理を行っていないブロックが着目フレームの画像データ中にまだ残っている場合には、この残っているブロックについて、ステップＳ６０１からステップＳ６０６の処理を行う。
【００６８】
ステップＳ６０８では、エントロピー符号化器１１１は、イントラ符号化／インター符号化を行う。
【００６９】
ステップＳ６０９では、逆量子化器１１２は、量子化器１１０が行う変換処理の逆変換処理、即ち、逆量子化処理を行う。
【００７０】
ステップＳ６１０では、ＩＤＣＴ１１３は、ＤＣＴ１０９が行う変換処理の逆変換処理、即ち、逆ＤＣＴ変換処理を行うことで、フィルタ１０８から出力されたブロックサイズの画像データを復元する。
【００７１】
ステップＳ６１１では、加算器１０７は、イントラ符号化を行った場合には、ＩＤＣＴ１１３から受けた画像データを復号ブロックのデータとしてフレームメモリ１０５に格納する。一方、インター符号化を行った場合、加算器１０７は、動き補償器１０６から受けた類似ブロックのデータと、ＩＤＣＴ１１３から受けたブロックサイズの画像データ（フィルタ１０８によってフィルタ処理がなされた予測誤差のデータ）と、を加算する。そして加算器１０７は、係る加算により得られる結果を復号ブロックのデータとして、フレームメモリ１０５に格納する。
【００７２】
ステップＳ６１２では、ブロック歪み測定器１０２は、フレームメモリ１０５から、着目ブロックのデータに基づいて得られた復号ブロックのデータを読み出す。そして、読み出した復号ブロックのデータと、フィルタ１０１から受けた着目ブロックのデータと、の差分ブロックデータを、「着目ブロックのデータに対するブロック歪みデータ」として求める。ブロック歪み測定器１０２は、このようにして、１つのブロックについてのブロック歪みデータを求める処理を、着目フレームの画像データを構成する各ブロックについて行う。
【００７３】
ステップＳ６１３では、シーン目標符号量算出部１１４は、「所定フレーム数分のブロック歪みデータ」を用いて、着目フレームの次のフレームを符号化する際の目標符号量を求める。
【００７４】
ステップＳ６１４では、フィルタ特性指定部１１５は、シーン目標符号量算出部１１４から受けた目標符号量のデータに基づいて、フィルタ１０１で用いるフィルタ特性を決定し、決定したフィルタ特性をフィルタ１０１に指定する。
【００７５】
一方、ステップＳ６１５では、ピクチャ目標符号量算出部１１６は、「所定フレーム数分のブロック歪みデータ」を用いて、着目フレームの次のフレームを符号化する際の目標符号量を求める。
【００７６】
ステップＳ６１６では、フィルタ特性指定部１１７は、ピクチャ目標符号量算出部１１６から受けた目標符号量のデータに基づいて、フィルタ１０８で用いるフィルタ特性を決定し、決定したフィルタ特性をフィルタ１０８に指定する。
【００７７】
一方、ステップＳ６１７では、量子化パラメータ指定部１１８は、エントロピー符号化器１１１から符号化ストリームを受ける毎に、その符号量を求め、求めた符号量を、自身が管理しているメモリ内に既に格納されている符号量に累積する。そして量子化パラメータ指定部１１８は、この累積値のデータと、ピクチャ目標符号量算出部１１６から受けた目標符号量のデータと、を用いて、着目フレームの次のフレームを符号化する際に用いる量子化パラメータを決定する。そして、決定した量子化パラメータを、量子化器１１０、逆量子化器１１２に対して設定する。
【００７８】
以上の説明により、本実施形態によれば、フレーム単位でフィルタ特性を変えることにより、連続する個々のフレーム間の画質に生じるばらつきが低減され、符号化された動画像データにおける個々のフレームの画質を一定範囲内に保つことができる。従って、個々のフレームを連続して動画像として見た場合、フレーム間における視覚的な画質の変化を抑えることになり、良好な画質を得ることができる。例えば、図３に示す如く、フレーム間の画質の差は、図２に示した差よりも小さくなる。図３は、各フレームにおける画質を示す図である。
【００７９】
［第２の実施形態］
第１の実施形態では、１フレーム内の各ブロックに対しては、同じフィルタ特性によるフィルタ処理がフィルタ１０８においてなされていた。しかし、フィルタ特性指定部１１７がブロック毎に異なるフィルタ特性をフィルタ１０８に対して指定するようにしても良い。
【００８０】
例えば、ピクチャ目標符号量算出部１１６は、ブロック歪み測定器１０２から送出されたブロック歪みデータをブロック単位で、自身が管理するメモリ内に記憶保持する。
【００８１】
ピクチャ目標符号量算出部１１６は、ブロック単位のブロック歪みデータに応じて、第１の実施形態と同様の処理で、ブロック単位の目標符号量を算出する。
【００８２】
そしてピクチャ目標符号量算出部１１６は、求めたブロック単位の目標符号量のデータを、フィルタ特性指定部１１７と量子化パラメータ指定部１１８とに対して送出する。
【００８３】
フィルタ特性指定部１１７は、ブロック単位の目標符号量に応じて第１の実施形態と同様の処理で、フィルタ特性を指定する。
【００８４】
その他の処理に関しては、第１の実施形態と同様の処理を行う。
【００８５】
［第３の実施形態］
図５は、本実施形態に係る画像処理装置のハードウェア構成例を示すブロック図である。本実施形態は、動き検出器５０４においてフレーム間相関度を表す指標値を求め、フィルタ特性指定部５１７に送出すると共に、フィルタ特性指定部５１７は、この指標値を更に用いてフィルタ特性を決定、指定する点のみが第１の実施形態とは異なる。ここで、「フレーム間相関度を表す指標値」とは、例えば、フレーム間差分値の絶対値和であるＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）や動き量が挙げられる。
【００８６】
例えば、フィルタ特性指定部５１７は、フィルタ５０８がローパスフィルタとすると、目標符号量が予め定めた第１閾値以下となった場合、仮のフィルタ特性としてタップ数を増やす。次にＳＡＤが、予め定めた閾値より小さい場合、即ち、フレーム間相関度が高く、視覚的劣化が少ないと考えられるときには、仮のフィルタ特性からタップ数を減らす。
【００８７】
［第４の実施形態］
第１乃至３の実施形態では、図１，５に示した各部は全てハードウェアによって構成されているものとして説明した。しかし、フレームメモリ１０５（５０５）を除く他の各部の機能をコンピュータプログラムの形態で実装しても良い。この場合、フレームメモリ１０５（５０５）に相当するメモリを有し、且つ係るコンピュータプログラムを実行可能なコンピュータに係るコンピュータプログラムを実行させることになる。これにより、係るコンピュータを、第１乃至３の実施形態で説明した画像処理装置として機能させることができる。
【００８８】
［その他の実施形態］
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコード（コンピュータプログラム）を記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給する。係る記憶媒体は言うまでもなく、コンピュータ読み取り可能な記憶媒体である。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００８９】
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００９０】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００９１】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００９２】
【図１】本発明１の実施形態に係る画像処理装置のハードウェア構成例を示すブロック図である。
【図２】各ピクチャの画質を示す図である。
【図３】各フレームにおける画質を示す図である。
【図４】各フレームの画像に対してフィルタ１０１において用いるフィルタ係数と、フィルタ１０８において用いるフィルタ係数と、を示す図である。
【図５】本発明の第３の実施形態に係る画像処理装置のハードウェア構成例を示すブロック図である。
【図６】本発明の第１の実施形態に係る画像処理装置が、着目フレームの画像データに対して行う動き補償に基づく符号化処理のフローチャートである。
【図１】
2009260661.tif 000003
【図２】
2009260661.tif 000004
【図３】
2009260661.tif 000005
【図４】
2009260661.tif 000006
【図５】
2009260661.tif 000007
【図６】
2009260661.tif 000008