JP4591767B2 - 符号化装置および方法、復号装置および方法、画像処理システム、記録媒体、並びにプログラム - Google Patents

符号化装置および方法、復号装置および方法、画像処理システム、記録媒体、並びにプログラム Download PDF

Info

Publication number
JP4591767B2
JP4591767B2 JP2005053877A JP2005053877A JP4591767B2 JP 4591767 B2 JP4591767 B2 JP 4591767B2 JP 2005053877 A JP2005053877 A JP 2005053877A JP 2005053877 A JP2005053877 A JP 2005053877A JP 4591767 B2 JP4591767 B2 JP 4591767B2
Authority
JP
Japan
Prior art keywords
motion vector
frame data
processing
pixel
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005053877A
Other languages
English (en)
Other versions
JP2006238372A (ja
JP2006238372A5 (ja
Inventor
智宏 安岡
哲二郎 近藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2005053877A priority Critical patent/JP4591767B2/ja
Publication of JP2006238372A publication Critical patent/JP2006238372A/ja
Publication of JP2006238372A5 publication Critical patent/JP2006238372A5/ja
Application granted granted Critical
Publication of JP4591767B2 publication Critical patent/JP4591767B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Television Signal Processing For Recording (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、符号化装置および方法、復号装置および方法、画像処理システム記録媒体、並びにプログラムに関し、特に、アナログ信号を利用した不正コピーを防止する符号化装置および方法、復号装置および方法、画像処理システム記録媒体、並びにプログラムに関する。
近年、テレビ番組などのコンテンツをデジタル信号でHD(ハードディスク)やDVD(Digital Versatile Disk)などの記録媒体に記録するデジタル記録再生装置が急速に普及してきている。
HDやDVDを記録媒体とするデジタル記録再生装置の普及により、視聴者であるユーザが、テレビ番組などを高品質に記録媒体に記録することが容易にできるようになった。
一方で、デジタル記録再生装置の普及により、DVDなどで販売されている、テレビ番組や映画などのコンテンツを不正にコピーすることが容易になるという側面もある。
図1は、記録媒体に記録されたコンテンツを再生し、ディスプレイに表示させるとともに、再生されたコンテンツを他の記録媒体に記録する画像処理システムの構成の一例を示している。
図1において、画像処理システム1は、DVDなどの光ディスク等の記録媒体に記録されたコンテンツの画像信号を再生し、その結果得られるアナログ画像信号を出力する再生装置11、再生装置11が出力するアナログ画像信号を画像として表示するディスプレイ12、および、再生装置11が出力するアナログ画像信号を利用して、光ディスク等の記録媒体に記録する記録装置13により構成されている。
再生装置11は、復号部21とD/A(Digital-to-Analog)変換部22とから構成されている。復号部21は、図示せぬ記録媒体から読み出した符号化デジタル画像信号を復号し、その結果得られるデジタル画像信号をD/A変換部22に供給する。D/A変換部22は、復号部21から供給されたデジタル画像信号をアナログ信号に変換し、その結果得られるアナログ画像信号を出力する。
ディスプレイ12は、例えばCRT(Cathode-Ray Tube)やLCD(Liquid Crystal Display)等で構成され、D/A変換部22からのアナログ画像信号を画像として表示する。これにより、ユーザは、記録媒体に記録されている画像信号に対応する画像を見ることができる。
また、再生装置11から出力されたアナログ画像信号は、記録装置13にも供給(入力)される。
記録装置13は、A/D(Analog-to-Digital)変換部31、符号化部32、および記録部33により構成され、入力されるアナログ画像信号を光ディスク等の図示せぬ記録媒体に記録する。
A/D変換部31には、再生装置11が出力するアナログ画像信号が入力される。A/D変換部31は、入力されたアナログ画像信号をデジタル信号に変換し、その結果得られるデジタル画像信号を符号化部32に供給する。符号化部32は、A/D変換部31からのデジタル画像信号を符号化し、その結果得られる符号化デジタル画像信号を記録部33に供給する。記録部33は、符号化デジタル画像信号を記録媒体に記録する。
以上のように構成される画像処理システム1では、再生装置11から出力されたアナログ画像信号を利用して、再生された記録媒体と異なる記録媒体に画像信号を記録することができる。即ち、再生装置11が出力するアナログ画像信号を利用して、コンテンツ(の画像信号)が、不正にコピーされるおそれがある。
従来、このようなアナログ画像信号を利用した不正コピーを防止するために、著作権保護がなされている場合には、アナログ画像信号をスクランブル処理して出力する、あるいはアナログ画像信号の出力を禁止することが提案されている。
しかしながら、アナログ画像信号をスクランブル処理して出力する、あるいはアナログ画像信号の出力を禁止する方法では、不正コピーを防止することはできるが、ディスプレイ12に正常な画像を表示することもできなくなるという問題が発生する。
そこで、画像が表示されなくなることや回路規模の増大を招くこと等の不都合を発生することなく、アナログ画像信号を利用した不正コピーを防止する手法が、本出願人により提案されている(例えば、特許文献1参照)。
2004−289685号公報
特許文献1に記載の手法では、アナログ画像信号をA/D変換することにより得られるデジタル画像信号の位相ずれに着目し、そのデジタル画像信号に対して位相ずれに着目した符号化を施すことによってコピー前の画像の質を落とさずに、良好な質を維持したままでのコピーを不可能とし、これによりアナログ画像信号を利用した不正コピーを防止するが、デジタルコンテンツの流通が一般的になっている近年においては、上述のように不正コピーを防止するための別の手法の提案が要請されている。
本発明は、このような状況に鑑みてなされたものであり、アナログ信号を利用した不正コピーを防止することができるようにするものである。
本発明の符号化装置は、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータを用いて第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定手段と、第1のフレームデータおよび第2のフレームデータを用いて、処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定手段と、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択手段と、動きベクトル選択手段により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する第1のフレームデータの複数の画素の画素値を抽出する抽出手段と、抽出手段により抽出された第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、第1の係数の最適値を予測データとして算出する予測データ算出手段と、第1の動きベクトル推定手段により推定された第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて、第1の動きベクトルの処理ブロック内の画素ごとの検出誤差を算出する誤差算出手段とを備え、第1の動きベクトル推定手段は、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により、第1の動きベクトルを推定し、第2の動きベクトル推定手段は、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、誤差算出手段により算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、第2の動きベクトルを推定することを特徴とする。
第1のフレームデータおよび第2のフレームデータに対して、画像のエッジを強調させる処理を施す画像処理手段を更に備えさせるようにすることができ、画像処理手段には、第1の動きベクトル推定手段、第2の動きベクトル推定手段、抽出手段、および誤差算出手段に、エッジが強調された第1のフレームデータを出力し、第1の動きベクトル推定手段、第2の動きベクトル推定手段、予測データ算出手段、および誤差算出手段に、エッジが強調された第2のフレームデータを出力させるようにすることができる。
画像処理手段は、ハイパスフィルタであるものとすることができる。
フレームデータにノイズを付加するノイズ付加手段を更に備えさせるようにすることができ、ノイズ付加手段には、第1の動きベクトル推定手段、第2の動きベクトル推定手段、抽出手段、および誤差算出手段に、ノイズが付加された第1のフレームデータを出力し、第1の動きベクトル推定手段、第2の動きベクトル推定手段、予測データ算出手段、および誤差算出手段に、ノイズが付加された第2のフレームデータを出力させるようにすることができる。
抽出手段にはまた、動きベクトル選択手段により選択されていない第1の動きベクトルと第2の動きベクトルのうちのいずれか一方に基づいて、処理領域に対応する第1のフレームデータの複数の画素の画素値を選択外画素値として抽出させるようにすることができ、予測データ算出手段にはまた選択外画素値に対して画素ごとに第2の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、第2の係数の最適値を選択外予測データとして算出させるようにすることができる
のフレームデータに対応する符号化結果を出力する出力手段を更に備えさせるようにすることができ、出力手段には、第1の動きベクトル推定手段により推定された第1の動きベクトルと、第2の動きベクトル推定手段により推定された第2の動きベクトルと、動きベクトル選択手段による選択結果を示すデータと、予測データ算出手段により算出された予測データとを出力させるようにすることができる。
本発明の符号化方法は、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータを用いて第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、第1のフレームデータおよび第2のフレームデータを用いて、処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する第1のフレームデータの複数の画素の画素値を抽出する抽出ステップと、抽出ステップの処理により抽出された第1のフレームデータの複数の画素の画素値に対して画素ごとに所定の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、所定の係数の最適値を予測データとして算出する予測データ算出ステップと、第1の動きベクトル推定ステップの処理により推定された第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて、第1の動きベクトルの処理ブロック内の画素ごとの検出誤差を算出する誤差算出ステップとを含み、第1の動きベクトル推定ステップでは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により、第1の動きベクトルを推定し、第2の動きベクトル推定ステップでは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、誤差算出ステップの処理により算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、第2の動きベクトルを推定することを特徴とする。
本発明の第1の記録媒体に記録されているプログラムは、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータを用いて第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、第1のフレームデータおよび第2のフレームデータを用いて、処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する第1のフレームデータの複数の画素の画素値を抽出する抽出ステップと、抽出ステップの処理により抽出された第1のフレームデータの複数の画素の画素値に対して画素ごとに所定の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、所定の係数の最適値を予測データとして算出する予測データ算出ステップと、第1の動きベクトル推定ステップの処理により推定された第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて、第1の動きベクトルの処理ブロック内の画素ごとの検出誤差を算出する誤差算出ステップとを含み、第1の動きベクトル推定ステップでは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により、第1の動きベクトルを推定し、第2の動きベクトル推定ステップでは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、誤差算出ステップの処理により算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、第2の動きベクトルを推定する処理をコンピュータに実行させることを特徴とする。
本発明の第1のプログラムは、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータを用いて第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、第1のフレームデータおよび第2のフレームデータを用いて、処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する第1のフレームデータの複数の画素の画素値を抽出する抽出ステップと、抽出ステップの処理により抽出された第1のフレームデータの複数の画素の画素値に対して画素ごとに所定の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、所定の係数の最適値を予測データとして算出する予測データ算出ステップと、第1の動きベクトル推定ステップの処理により推定された第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて、第1の動きベクトルの処理ブロック内の画素ごとの検出誤差を算出する誤差算出ステップとを含み、第1の動きベクトル推定ステップでは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により、第1の動きベクトルを推定し、第2の動きベクトル推定ステップでは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、誤差算出ステップの処理により算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、第2の動きベクトルを推定することを特徴とする処理をコンピュータに実行させる。
本発明の復号装置は、第1のフレームデータと、第1のフレームデータと異なる第2のフレームデータとを用いて推定された第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトル、第1のフレームデータと第2のフレームデータを用いて推定された処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報を、第2のフレームデータの符号化結果の一部として取得し、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定手段と、最適な動きベクトルに基づいて、第1のフレームデータの符号化結果から処理領域に対応する第1のフレームデータの複数の画素の画素値を抽出する抽出手段と、最適な動きベクトルに基づいて抽出された処理領域に対応する第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された第1の係数の最適値である予測データを、第2のフレームデータの符号化結果の他の一部として取得し、予測データと抽出手段により抽出された第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を第2のフレームデータとして算出する算出手段とを備え、第1の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により推定され、第2の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて第1の動きベクトルの処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定されることを特徴とする。
算出手段により算出された第2のフレームデータに、ノイズを付加するノイズ付加手段を更に備えさせるようにすることができる。
第2のフレームデータの符号化結果には、第1の動きベクトルと、第2の動きベクトルと、最適動きベクトル情報と、予測データと、第1の動きベクトルと第2の動きベクトルのうちの最適な動きベクトルではない方に基づいて抽出された処理領域に対応する第1のフレームデータの複数の画素の画素値に対して画素ごとに第2の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された第2の係数の最適値である最適外予測データとを含ませるようにすることができる。
本発明の復号方法は、第1のフレームデータと、第1のフレームデータと異なる第2のフレームデータとを用いて推定された第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトル、第1のフレームデータと第2のフレームデータを用いて推定された処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報を、第2のフレームデータの符号化結果の一部として取得し、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、最適な動きベクトルに基づいて、第1のフレームデータの符号化結果から処理領域に対応する第1のフレームデータの複数の画素の画素値を抽出する抽出ステップと、最適な動きベクトルに基づいて抽出された処理領域に対応する第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された第1の係数の最適値である予測データを、第2のフレームデータの符号化結果の他の一部として取得し、予測データと抽出ステップの処理により抽出された第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を第2のフレームデータとして算出する算出ステップとを含み、第1の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により推定され、第2の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて第1の動きベクトルの処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定されることを特徴とする。
本発明の第2の記録媒体に記録されているプログラムは、第1のフレームデータと、第1のフレームデータと異なる第2のフレームデータとを用いて推定された第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトル、第1のフレームデータと第2のフレームデータを用いて推定された処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報を、第2のフレームデータの符号化結果の一部として取得し、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、最適な動きベクトルに基づいて、第1のフレームデータの符号化結果から処理領域に対応する第1のフレームデータの複数の画素の画素値を抽出する抽出ステップと、最適な動きベクトルに基づいて抽出された処理領域に対応する第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された第1の係数の最適値である予測データを、第2のフレームデータの符号化結果の他の一部として取得し、予測データと抽出ステップの処理により抽出された第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を第2のフレームデータとして算出する算出ステップとを含み、第1の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により推定され、第2の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて第1の動きベクトルの処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定される処理をコンピュータに実行させることを特徴とする。
本発明の第2のプログラムは、第1のフレームデータと、第1のフレームデータと異なる第2のフレームデータとを用いて推定された第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトル、第1のフレームデータと第2のフレームデータを用いて推定された処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報を、第2のフレームデータの符号化結果の一部として取得し、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、最適な動きベクトルに基づいて、第1のフレームデータの符号化結果から処理領域に対応する第1のフレームデータの複数の画素の画素値を抽出する抽出ステップと、最適な動きベクトルに基づいて抽出された処理領域に対応する第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された第1の係数の最適値である予測データを、第2のフレームデータの符号化結果の他の一部として取得し、予測データと抽出ステップの処理により抽出された第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を第2のフレームデータとして算出する算出ステップとを含み、第1の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により推定され、第2の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて第1の動きベクトルの処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定されることを特徴とする処理をコンピュータに実行させる。
本発明の第1の画像処理システムは、符号化部および復号部を含み、符号化部および復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、画像データが劣化するようになされている画像処理システムであって、符号化部は、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータを用いて第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定手段と、第1のフレームデータおよび第2のフレームデータを用いて、処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定手段と、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択手段と、動きベクトル選択手段により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する第1のフレームデータの複数の画素の画素値を抽出する抽出手段と、抽出手段により抽出された第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、第1の係数の最適値を予測データとして算出する予測データ算出手段と、第1の動きベクトル推定手段により推定された第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて、第1の動きベクトルの処理ブロック内の画素ごとの検出誤差を算出する誤差算出手段とを備え、第1の動きベクトル推定手段は、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により、第1の動きベクトルを推定し、第2の動きベクトル推定手段は、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、誤差算出手段により算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、第2の動きベクトルを推定することを特徴とする。
本発明の第2の画像処理システムは、符号化部および復号部を含み、符号化部および復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、画像データが劣化するようになされている画像処理システムにおいて、復号部は、第1のフレームデータと、第1のフレームデータと異なる第2のフレームデータとを用いて推定された第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトル、第1のフレームデータと第2のフレームデータを用いて推定された処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報を、第2のフレームデータの符号化結果の一部として取得し、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定手段と、最適な動きベクトルに基づいて、第1のフレームデータの符号化結果から処理領域に対応する第1のフレームデータの複数の画素の画素値を抽出する抽出手段と、最適な動きベクトルに基づいて抽出された処理領域に対応する第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された第1の係数の最適値である予測データを、第2のフレームデータの符号化結果の他の一部として取得し、予測データと抽出手段により抽出された第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を第2のフレームデータとして算出する算出手段とを備え、第1の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により推定され、第2の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて第1の動きベクトルの処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定されることを特徴とする。
本発明の符号化装置および符号化方法、第1のプログラム、並びに、第1の画像処理システムにおいては、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータを用いて第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトルが推定され、第1のフレームデータおよび第2のフレームデータを用いて、処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトルが推定され、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかが選択され、選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する第1のフレームデータの複数の画素の画素値が抽出され、抽出された第1のフレームデータの複数の画素の画素値に対して画素ごとに所定の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、所定の係数の最適値が予測データとして算出され、推定された第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて、第1の動きベクトルの処理ブロック内の画素ごとの検出誤差が算出される。なお、第1の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により推定され、第2の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理が行われることにより推定される
本発明の復号装置および復号方法、第2のプログラム、並びに、第2の画像処理システムにおいては、第1のフレームデータと、第1のフレームデータと異なる第2のフレームデータとを用いて推定された第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトル、第1のフレームデータと第2のフレームデータを用いて推定された処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報が、第2のフレームデータの符号化結果の一部として取得され、処理ブロックの処理領域ごとに最適な動きベクトルが決定され、最適な動きベクトルに基づいて、第1のフレームデータの符号化結果から処理領域に対応する第1のフレームデータの複数の画素の画素値が抽出され、最適な動きベクトルに基づいて抽出された処理領域に対応する第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された第1の係数の最適値である予測データが、第2のフレームデータの符号化結果の他の一部として取得され、予測データと抽出された第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和が第2のフレームデータとして算出される。なお、第1の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により推定され、第2の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて第1の動きベクトルの処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定される
本発明によると、画像データを符号化することができ、特に、2つの動きベクトルを探索することにより、残差情報なしに、符号化および復号処理を行うことができる。
また、他の本発明によると、画像データを復号することができ、特に、2つの動きベクトルのいずれかを用いて画像データを復号することにより、残差情報なしに、符号化および復号処理を行うことができる。
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。したがって、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
更に、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
請求項1に記載の符号化装置(例えば、図2の符号化装置63または符号化部82)は、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータを用いて第1のフレームデータの複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトルを推定する第1の動きベクトル推定手段(例えば、図3のブロックマッチング動き探索部108)と、第1のフレームデータおよび第2のフレームデータを用いて、処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定手段(例えば、図3の評価値変更ブロックマッチング動き探索部111)と、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択手段(例えば、図3の最適動き決定部112)と、動きベクトル選択手段により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する第1のフレームデータの複数の画素の画素値(例えば、図13の5つのタップ)を抽出する抽出手段(例えば、図12の第1のタップ抽出部246および第2のタップ抽出部247)と、抽出手段により抽出された第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係(例えば、式3および式4)を基に、最小自乗法を用いて、第1の係数の最適値を予測データ(例えば、フィルタ係数)として算出する予測データ算出手段(例えば、図12の第1の近傍予測フィルタ係数算出部248および第2の近傍予測フィルタ係数算出部249)と、第1の動きベクトル推定手段により推定された第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて、第1の動きベクトルの処理ブロック内の画素ごとの検出誤差を算出する誤差算出手段(例えば、図3の絶対値誤差算出部109)とを備え、第1の動きベクトル推定手段は、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により、第1の動きベクトルを推定し、第2の動きベクトル推定手段は、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、誤差算出手段により算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、第2の動きベクトルを推定することを特徴とする。
第1のフレームデータおよび第2のフレームデータに対して、画像のエッジを強調させる処理を施す画像処理手段(例えば、図3のハイパスフィルタ106およびハイパスフィルタ107)を更に備え、画像処理手段は、第1の動きベクトル推定手段、第2の動きベクトル推定手段、抽出手段、および誤差算出手段に、エッジが強調された第1のフレームデータを出力し、第1の動きベクトル推定手段、第2の動きベクトル推定手段、予測データ算出手段、および誤差算出手段に、エッジが強調された第2のフレームデータを出力することができる
フレームデータにノイズを付加するノイズ付加手段(例えば、図2のA/D変換部81)を更に備え、ノイズ付加手段は、第1の動きベクトル推定手段、第2の動きベクトル推定手段、抽出手段、および誤差算出手段に、ノイズが付加された第1のフレームデータを出力し、第1の動きベクトル推定手段、第2の動きベクトル推定手段、予測データ算出手段、および誤差算出手段に、ノイズが付加された第2のフレームデータを出力することができる。
のフレームデータに対応する符号化結果を出力する出力手段(例えば、図3の符号出力部115)を更に備えることができ、出力手段は、第1の動きベクトル推定手段により推定された第1の動きベクトルと、第2の動きベクトル推定手段により推定された第2の動きベクトルと、動きベクトル選択手段による選択結果を示すデータと、予測データ算出手段により算出された予測データとを出力することができる。
請求項に記載の符号化方法は、複数のフレームデータからなる画像データの供給を受けて符号化する符号化装置(例えば、図2の符号化装置63または符号化部82)の符号化方法であって、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータを用いて第1のフレームデータの複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトルを推定する第1の動きベクトル推定ステップ(例えば、図17のステップS7およびステップS8の処理)と、第1のフレームデータおよび第2のフレームデータを用いて、処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップ(例えば、図17のステップS10の処理)と、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップ(例えば、図17のステップS11の処理)と、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する第1のフレームデータの複数の画素の画素値(例えば、図13の5つのタップ)を抽出する抽出ステップ(例えば、図20のステップS83またはステップS86の処理)と、抽出ステップの処理により抽出された第1のフレームデータの複数の画素の画素値に対して画素ごとに所定の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、所定の係数の最適値を予測データ(例えば、フィルタ係数)として算出する予測データ算出ステップ(例えば、図20のステップS85またはステップS88の処理)と、第1の動きベクトル推定ステップの処理により推定された第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて、第1の動きベクトルの処理ブロック内の画素ごとの検出誤差を算出する誤差算出ステップとを含み、第1の動きベクトル推定ステップでは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により、第1の動きベクトルを推定し、第2の動きベクトル推定ステップでは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、誤差算出ステップの処理により算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、第2の動きベクトルを推定することを特徴とする。
また、請求項に記載の記録媒体に記録されているプログラム、および、請求項に記載のプログラムにおいても、各ステップが対応する実施の形態(但し一例)は、請求項に記載の符号化方法と同様である。
請求項1に記載の復号装置(例えば、図2の復号部71または復号部84、もしくは、図3のデコーダ114)は、第1のフレームデータと、第1のフレームデータと異なる第2のフレームデータとを用いて推定された第1のフレームデータの複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトル、第1のフレームデータと第2のフレームデータを用いて推定された処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報を、第2のフレームデータの符号化結果の一部として取得し、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定手段(例えば、図14または図16の動き対象位置算出部273)と、最適な動きベクトルに基づいて、第1のフレームデータの符号化結果から処理領域に対応する第1のフレームデータの複数の画素の画素値(例えば、図13の5つのタップ)を抽出する抽出手段(例えば、図14または図16の画素切り出し部274)と、最適な動きベクトルに基づいて抽出された処理領域に対応する第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係(例えば、式3および式4)を基に最小自乗法を用いて算出された第1の係数の最適値である予測データを、第2のフレームデータの符号化結果の他の一部として取得し、予測データ(例えば、フィルタ係数)と抽出手段により抽出された第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を第2のフレームデータとして算出する算出手段(例えば、図14または図16フィルタ係数乗算部276)とを備え、第1の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により推定され、第2の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて第1の動きベクトルの処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定されることを特徴とする。
算出手段により算出された第2のフレームデータに、ノイズを付加するノイズ付加手段(例えば、図2のD/A変換部72またはD/A変換部85)を更に備えることができる。
請求項1に記載の復号方法は、符号化された複数のフレームデータからなる画像データの供給を受けて復号する復号装置(例えば、図2の復号部71または復号部84、もしくは、図3のデコーダ114)の復号方法であって、第1のフレームデータと、第1のフレームデータと異なる第2のフレームデータとを用いて推定された第1のフレームデータの複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトル、第1のフレームデータと第2のフレームデータを用いて推定された処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報を、第2のフレームデータの符号化結果の一部として取得し、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップ(例えば、図21のステップS115の処理)と、最適な動きベクトルに基づいて、第1のフレームデータの符号化結果から処理領域に対応する第1のフレームデータの複数の画素の画素値を抽出する抽出ステップ(例えば、図21のステップS116の処理)と、最適な動きベクトルに基づいて抽出された処理領域に対応する第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係(例えば、式3および式4)を基に最小自乗法を用いて算出された第1の係数の最適値である予測データを、第2のフレームデータの符号化結果の他の一部として取得し、予測データ(例えば、フィルタ係数)と抽出ステップの処理により抽出された第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を第2のフレームデータとして算出する算出ステップ(例えば、図21のステップS118の処理)とを含み、第1の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により推定され、第2の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて第1の動きベクトルの処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定されることを特徴とする。
また、請求項1に記載の記録媒体に記録されているプログラム、および、請求項15に記載のプログラムにおいても、各ステップが対応する実施の形態(但し一例)は、請求項1に記載の復号方法と同様である。
請求項16に記載の画像処理システムは、符号化部(例えば、図2の符号化装置63または符号化部82)および復号部(例えば、図2の復号部71または復号部84、もしくは、図3のデコーダ114)を含み、符号化部および復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、画像データが劣化するようになされている画像処理システムにおいて、符号化部は、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータを用いて第1のフレームデータの複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトルを推定する第1の動きベクトル推定手段(例えば、図3のブロックマッチング動き探索部108)と、第1のフレームデータおよび第2のフレームデータを用いて、処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定手段(例えば、図3の評価値変更ブロックマッチング動き探索部111)と、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択手段(例えば、図3の最適動き決定部112)と、動きベクトル選択手段により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する第1のフレームデータの複数の画素の画素値(例えば、図13の5つのタップ)を抽出する抽出手段(例えば、図12の第1のタップ抽出部246および第2のタップ抽出部247)と、抽出手段により抽出された第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係(例えば、式3および式4)を基に、最小自乗法を用いて、第1の係数の最適値を予測データ(例えば、フィルタ係数)として算出する予測データ算出手段(例えば、図12の第1の近傍予測フィルタ係数算出部248および第2の近傍予測フィルタ係数算出部249)と、第1の動きベクトル推定手段により推定された第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて、第1の動きベクトルの処理ブロック内の画素ごとの検出誤差を算出する誤差算出手段とを備え、第1の動きベクトル推定手段は、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により、第1の動きベクトルを推定し、第2の動きベクトル推定手段は、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、誤差算出手段により算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、第2の動きベクトルを推定することを特徴とする。
請求項17に記載の画像処理システムは、符号化部(例えば、図2の符号化装置63または符号化部82)および復号部(例えば、図2の復号部71または復号部84、もしくは、図3のデコーダ114)を含み、符号化部および復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、画像データが劣化するようになされている画像処理システムにおいて、復号部は、第1のフレームデータと、第1のフレームデータと異なる第2のフレームデータとを用いて推定された第1のフレームデータの複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトル、第1のフレームデータと第2のフレームデータを用いて推定された処理ブロックにおける第1の動きベクトルとは異なる第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報を、第2のフレームデータの符号化結果の一部として取得し、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定手段(例えば、図14または図16の動き対象位置算出部273)と、最適な動きベクトルに基づいて、第1のフレームデータの符号化結果から処理領域に対応する第1のフレームデータの複数の画素の画素値(例えば、図13の5つのタップ)を抽出する抽出手段と、最適な動きベクトルに基づいて抽出された処理領域に対応する第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、処理領域に対応する第2のフレームデータの画素値との関係(例えば、式3および式4)を基に最小自乗法を用いて算出された第1の係数の最適値である予測データを、第2のフレームデータの符号化結果の他の一部として取得し、予測データ(例えば、フィルタ係数)と抽出手段により抽出された第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を第2のフレームデータとして算出する算出手段(例えば、図14または図16の画素切り出し部274およびフィルタ係数乗算部276)とを備え、第1の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により推定され、第2の動きベクトルは、第1のフレームデータおよび第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、第1の動きベクトル、第1のフレームデータ、および第2のフレームデータに基づいて第1の動きベクトルの処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定されることを特徴とする。
以下、図を参照して、本発明の実施の形態について説明する。
図2は、本発明を適用した画像表示システム51の構成を示すブロック図である。
この画像表示システム51は、アナログの画像データを出力する再生機61と、再生機61から出力される画像データによる画像を表示するディスプレイ62と、再生機61から出力されるアナログ画像データを符号化する符号化装置63により構成されている。
再生機61は、復号部71およびD/A(Digital-to-Analog)変換部72を備えている。復号部71は、図示しない光ディスク等の記録媒体から再生された、符号化されている画像データを復号し、D/A変換部72に供給する。D/A変換部72は、復号されて得られたデジタルの画像データをアナログの画像データに変換し、アナログの画像データを出力する。ディスプレイ62は、例えばCRT(Cathode-Ray Tube)ディスプレイ、LCD(Liquid Crystal Display)等で構成され、供給されたアナログ画像データを表示する。
符号化装置63は、A/D(Analog-to-Digital)変換部81、符号化部82、記録部83、復号部84、D/A変換部85、および、ディスプレイ86で構成され、コピー前のデータによる出力の質を落とすことなく、良好な質を維持したままでのコピーを不可能とすることができるような処理を施すことができるように構成されている。A/D変換部81は、再生機61より出力されるアナログの画像データを、A/D変換し、符号化部82に供給する。符号化部82は、デジタルの画像データを符号化し、記録部83および復号部84に供給する。記録部83は、供給されたデジタルの符号化画像データを、光ディスク等の記録媒体に記録する。復号部84は、供給されたデジタルの符号化画像データを復号し、D/A変換部85に供給する。D/A変換部85は、復号されて得られたデジタルの画像データをアナログデータに変換し、アナログの画像データをディスプレイ86に出力する。ディスプレイ86は、例えばCRTディスプレイ、LCD等で構成され、供給されたアナログ画像データを表示する。
ところで、D/A変換部72においてデジタルの画像データをD/A変換するとき、A/D変換部81においてアナログの画像データをA/D変換するとき、および、D/A変換部85においてデジタルの画像データをD/A変換するとき、もしくは、再生機61からディスプレイ62または符号化装置63にアナログデータを伝送するとき、画像データにノイズが付加されてしまう。
特に、A/D変換、D/A変換、または、アナログデータの伝送において、高周波成分の歪みや位相ずれなどが、画像データに発生する。この高周波成分の歪みや位相ずれなどは、アナログノイズとも称される。
このアナログノイズのうち、高周波成分の歪みは、主にホワイトノイズと呼ばれるノイズに起因するものである。
D/A変換部72、および、D/A変換部85において、デジタルの画像データがアナログの画像データに変換される過程、A/D変換部81において、アナログの画像データがデジタルの画像データに変換される過程、または、アナログデータが伝送される過程において、周波数成分がほぼ均一なホワイトノイズが画像データに付加される。ホワイトノイズのレベルは、時系列でランダムに変化し、その分布はほぼ正規分布に従う。すなわち、各画素に対応するアナログの画像データに付加されるホワイトノイズのレベルはランダムに変化する。
したがって、例えば、復号部71から出力されるデジタル画像データにおいて、水平方向と垂直方向に整列して位置する画素のうちの所定の複数の画素が同一の画素値を有していたとしても、D/A変換部72よりD/A変換されて伝送され、更に、A/D変換部81によりA/D変換された後のデジタルの画像データのうち、変換前は同一の画素値を有していた画素の画素値は、もとの値を中心値としたある程度の範囲内に分散された値となってしまう。これらの分散された値と、もとの値との差異は乱数で表現される性質のものであり、一律に決まるものではない。その結果、画像データに高周波成分の歪みが生じる。また、水平方向だけでなく、垂直方向にも同様に高周波成分の歪みが生じる。なお、各画素に付加されるホワイトノイズのレベルの散らばり具合によっては、高周波成分以外の成分の歪みが生じる場合もある。
また、アナログノイズのうち、位相ずれによる歪みが付加されることにより、画像データの画素の位置は、本来の画像データの画素の位置と比べて、水平方向および垂直方向にずれてしまう。なお、水平方向の位相ずれの幅は、水平方向の画素間隔より小さくなったり大きくなったりする一方、垂直方向の位相ずれの幅は、垂直方向の画素間隔の整数倍となる。また、位相ずれは、水平方向または垂直方向の一方向のみ生じる場合がある。なお、位相がずれて空いてしまった画素には、例えば、本来の画像データの画素の画素値ではない、同期信号などに基づく値が設定される。
この位相ずれが発生することにより、位相ずれの幅だけ画像の表示位置がずれ、ずれた部分に、画素値以外の同期信号などに基づく画像が表示されてしまうことになる。しかしながら、表示位置のずれはわずかであり、多くの場合、ユーザが視認することができるレベルにおける画像の画質にはほとんど影響を及ぼさない。
なお、画像処理やデータ伝送において付加されるノイズには、上記したノイズ以外のノイズも含まれる場合があることはいうまでもない。
なお、D/A変換部72、A/D変換部81、および、D/A変換部85は、それぞれ、デジタルの画像データがアナログの画像データに変換される過程において、または、アナログの画像データがデジタルの画像データに変換される過程において、ノイズ成分(特に、ハイパスフィルタにより強調されるノイズ成分)を、出力されるデータに付加するようにしても良い。
また、D/A変換部72は復号部71と、A/D変換部81は、符号化部82と、D/A変換部85は復号部84と、それぞれ、1つの構成要素として構成とするようにしても良い。
また、図2の再生機61および符号化装置63を構成する各部は、それぞれ、独立した装置として構成するようにしても良い。すなわち、例えば、D/A変換部72と復号部71とをそれぞれ独立した装置として構成したり、2つの構成要素を持つ1つの装置として構成しても良い。また、符号化部82や復号部84をそれぞれ独立した装置として構成したり、A/D変換部81と符号化部82との2つの構成要素を持つ1つの装置として構成したり、D/A変換部85と復号部84との2つの構成要素を持つ1つの装置として構成するようにしてもよい。
図3は、図2の符号化部82の構成を示すブロック図である。
符号化部82は、複数のフレームデータのうちの所定のフレームを基準フレームとし、図4に示されるように、基準フレームをフレーム内符号化するとともに、基準フレーム以外のフレームを、1つ前のフレームに対する動き検出により符号化するものである。通常、動き検出による符号化においては、残差補償が行われるようになされているが、符号化部82は、残差補償を行わず、2種類のブロックマッチングを行うことにより、予測精度を向上させるようになされている。
基準フレーム抽出部101は、A/D変換部81によりデジタルデータに変換された画像データの供給を受け、基準フレームは、基準フレーム符号化部102に供給し、基準フレーム以外のフレームは、フレームメモリ105に供給する。
基準フレーム符号化部102は、例えば、JPEG(Joint Photographic Experts Group)やADRC(Adaptive Dynamic Range Coding)などのフレーム内符号化方法を用いて、供給された基準フレームを符号化し、基準フレームデコータ103、デコーダ114、および、符号出力部115に供給する。
基準フレームデコータ103は、供給された符号化データを、対応する方法でデコードし、フレームメモリ104に供給する。
フレームメモリ104は、基準フレームデコーダ103、または、後述するデコーダ114から供給されたフレームデータを一時保存し、ハイパスフィルタ(HPF)107に供給する。
フレームメモリ105は、基準フレーム抽出部101から供給されたフレームデータを一時保存し、ハイパスフィルタ(HPF)106に供給する。
すなわち、フレームメモリ104に一時保存されるフレームデータは、フレームメモリ105に一時保存されるフレームデータに対して、時間的に1つ前のフレームデータである。以下、フレームメモリ105に一時保存されるフレームデータを現フレームデータ、フレームメモリ104に一時保存されるフレームデータを前フレームデータと称するものとする。
ハイパスフィルタ106およびハイパスフィルタ107は、供給されたフレームデータにハイパスフィルタをかけ、ブロックマッチング動き探索部108、評価値変更ブロックマッチング動き探索部111、最適動き決定部112、および、最適近傍予測フィルタ最小自乗設計部113に供給する。また、ハイパスフィルタ106は、絶対値誤差算出部109にもデータを供給する。
すなわち、フレームメモリ104に一時保存されている前フレームデータが、図5のフレーム131である場合、ハイパスフィルタ107から出力される前フレームデータは、エッジ部分が強調されたフレーム132となり、フレームメモリ105に一時保存されている現フレームデータが、図5のフレーム141である場合、ハイパスフィルタ106から出力される現フレームデータは、エッジ部分が強調されたフレーム142となる。
なお、ハイパスフィルタ106およびハイパスフィルタ107に代わって、例えば、Sobel(ゾーベル)フィルタなどのエッジ抽出フィルタのように、エッジなどの元の画像の特徴を抽出するとともに、ノイズも強調するフィルタを用いるようにしても良い。
ブロックマッチング動き探索部108は、ハイパスフィルタ106およびハイパスフィルタ107から供給された現フレームデータと前フレームデータを用いて、ブロックマッチングを行い、算出された第1の動きベクトルを、符号メモリ110、最適動き決定部112、および最適近傍予測フィルタ最小自乗設計部113に供給する。
ブロックマッチング処理とは、画像中の画素の輝度の差を利用して、移動物体の位置をブロックごとに割り出す技術である。具体的には、図6に示されるように、前フレームデータであるフレーム151および現フレームデータであるフレーム152が、それぞれ所定のブロックに分割され、フレーム152の探索元であるブロック163に対して、対応するフレーム151のブロック161周辺の探索範囲162内においてマッチング処理が行われて、フレーム153に示されるような第1の動きベクトルが算出される。
ブロックマッチング動き探索部108は、更に、算出された第1の動きベクトルと前フレームデータから、第1の動きベクトルを用いた動き予測により、このフレームが復号された場合の予測フレームを算出し、絶対値算出部109に供給する。
絶対値誤差算出部109は、ブロックマッチング動き探索部108から供給された予測フレームと、ハイパスフィルタ106から供給された現フレームデータを基に、ブロックマッチング動き探索部108により実行された動きベクトル探索処理により得られた第1の動きベクトルによる予測の野絶対値誤差を算出し、評価値変更ブロックマッチング動き探索部111に供給する。
図7を用いて、絶対値誤差算出部109が実行する処理について説明する。
例えば、図7のブロック161と、ブロック161を含むフレームの次のフレーム(現フレーム)に含まれるブロック162に示されるように、ブロック内に、複数の動きが混入した場合、ブロックマッチング動き探索部108による通常のブロックマッチングで算出される第1の動きベクトルは、いずれかの動きに引きずられ、ブロック内の一方の動きには合致するが、他方の動きには合致しないものとなってしまう。
例えば、ブロックマッチング動き探索部108から供給された予測フレームの対応するブロックがブロック163である場合、通常のブロックマッチング処理では、ブロック163の一方の動き(右側のボールの上側への動き)は正確に反映されているが、他方の動き(左側のボールが下に向かって動く動き)は正確に反映されない。
そこで、絶対値誤差算出部109は、ブロックマッチング動き探索部108から供給された予測フレームの対応するブロック163と、現フレームに含まれるブロック164とを比較して、絶対値誤差を求める。絶対値誤差算出部109により得られた絶対値誤差を視覚化すると、ブロック165に示されるようになる。そして、ブロック内を、例えば、4×4の正方行列として、この絶対値誤差を数値化すると、ブロック内の絶対値誤差の大きさと位置を示すマトリクス166を得ることができる。絶対値誤差算出部109は、このマトリクス166を絶対値誤差情報として、評価値変更ブロックマッチング動き探索部111に供給する。
符号メモリ110は、供給された符号を一時保存し、デコーダ114および符号出力部115に供給する。
評価値変更ブロックマッチング動き探索部111は、ハイパスフィルタ106およびハイパスフィルタ107から供給された現フレームデータと前フレームデータに対して、絶対値誤差算出部109により算出された絶対値誤差(図7を用いて説明したマトリクス166に対応する情報)で画素位置ごとに重み付けを行うことにより、ブロックマッチング動き探索部108で得られた第1の動きベクトルの誤差が大きい部分の重みが増すようにしてブロックマッチングを行い、算出された第2の動きベクトルを、符号メモリ110、最適動き決定部112、および、最適近傍予測フィルタ最小自乗設計部113に供給する。
すなわち、ブロック内の位置(x、y)における差分自乗誤差値をf(x、y)とし、ブロック内の位置(x、y)におけるブロックマッチング動き探索部108による動き探索の絶対値誤差をg(x、y)とした場合、ブロックマッチング動き探索部108による動き探索が次の式(1)で表される場合、評価値変更ブロックマッチング動き探索部111による動き探索は、次の式(2)で表される。
Figure 0004591767
・・・(1)
Figure 0004591767
・・・(2)
評価値変更ブロックマッチング動き探索部111の処理の詳細については後述する。
最適動き決定部112は、ブロックマッチング動き探索部108から供給された第1の動きベクトル、評価値変更ブロックマッチング動き探索部111から供給された第2の動きベクトル、並びに、ハイパスフィルタ106およびハイパスフィルタ107から供給された現フレームデータと前フレームデータを用いて、各ブロックの画素位置ごとに、第1の動きベクトルと第2の動きベクトルとのいずれを用いるべきかを示す最適動きフラグを生成し、符号メモリ110および最適近傍予測フィルタ最小自乗設計部113に供給する。最適動き決定部112の処理の詳細と最適動きフラグについては後述する。
最適近傍予測フィルタ最小自乗設計部113は、ブロックマッチング動き探索部108から供給された第1の動きベクトル、評価値変更ブロックマッチング動き探索部111から供給された第2の動きベクトル、最適動き決定部112から供給された最適動きフラグ、並びに、ハイパスフィルタ106およびハイパスフィルタ107から供給された現フレームデータと前フレームデータを用いて、2つの動きベクトルごとに、最適予測フィルタを設計し、そのフィルタ係数を、符号メモリ110に供給する。最適近傍予測フィルタ最小自乗設計部113の詳細については後述する。
デコーダ114は、基準フレーム符号化部102から供給される基準フレームの符号化データ、符号メモリ114から供給される、第1の動きベクトル、第2の動きベクトル、最適動きフラグ、および、最適予測フィルタを基に、デコードを行い、デコードされたフレームデータを、フレームメモリ104に供給する。デコーダ114の詳細については後述する。
符号出力部115は、符号メモリ114から供給される、第1の動きベクトル、第2の動きベクトル、最適動きフラグ、および、最適予測フィルタを、記録部83または復号部84に出力する。
次に、図8は、評価値変更ブロックマッチング動き探索部111の更に詳細な機能を示す機能ブロック図である。
評価値変更ブロックマッチング動き探索部111は、絶対値誤差取得部171、現フレームデータ取得部172、前フレームデータ取得部173、および、重み付けブロックマッチング動き探索部174で構成されている。
絶対値誤差取得部171は、絶対値誤差算出部109から供給された絶対値誤差を取得し、重み付けブロックマッチング動き探索部174に供給する。
現フレームデータ取得部172は、ハイパスフィルタ106から供給された現フレームデータを取得し、重み付けブロックマッチング動き探索部174に供給する。
前フレームデータ取得部173は、ハイパスフィルタ107から供給された前フレームデータを取得し、重み付けブロックマッチング動き探索部174に供給する。
重み付けブロックマッチング動き探索部174は、絶対値誤差取得部171により取得された絶対値誤差(図7を用いて説明したマトリクス166に対応する情報)で画素位置ごとに重み付けを行い、現フレームデータと前フレームデータに対してブロックマッチングを行い、検出された第2の動きベクトルを出力する。
具体的には、図9に示されるように、前フレームデータであるフレーム151および現フレームデータであるフレーム152が、それぞれ所定のブロックに分割され、フレーム152の探索元であるブロック163に対して、対応するフレーム151のブロック161周辺の探索範囲162内とのマッチング処理が、絶対値誤差に基づいて重み付けされて実行される。したがって、第1の動きベクトルが、図6を用いて説明したように、人間の横方向の動きを検出したものであったのに対して、重み付けブロックマッチング動き探索部174においては、フレーム181に示されるように、例えば、手やボールの動きなど、第1の動きベクトルとは異なる縦方向や斜め方向の動きが、第2の動きベクトルとして検出される。
図10は、最適動き決定部112の更に詳細な機能を示す機能ブロック図である。
最適動き決定部112は、第1の動き探索結果取得部201、第2の動き探索結果取得部202、前フレームデータ取得部203、現フレームデータ取得部204、第1の予測データ生成部205、第2の予測データ生成部206、第1の予測誤差検出部207、第2の予測誤差検出部208、および、最適動きフラグ検出部209で構成されている。
第1の動き探索結果取得部201は、ブロックマッチング動き探索部108から供給された第1の動きベクトルを取得し、第1の予測データ生成部205に供給する。
第2の動き探索結果取得部202は、評価値変更ブロックマッチング動き探索部111から供給された第2の動きベクトルを取得し、第2の予測データ生成部206に供給する。
前フレームデータ取得部203は、ハイパスフィルタ106から供給された前フレームデータを取得し、第1の予測データ生成部205および第2の予測データ生成部206に供給する。
現フレームデータ取得部204は、ハイパスフィルタ107から供給された現フレームデータを取得し、第1の予測誤差検出部207および第2の予測誤差検出部208に供給する。
第1の予測データ生成部205は、第1の動き探索結果取得部201から供給された第1の動きベクトル、および、前フレームデータ取得部203から供給された前フレームデータを取得し、第1の動きベクトルを用いて復号処理を行った場合の画像データに対応する第1の予測データを生成し、第1の予測誤差検出部207に供給する。
第2の予測データ生成部206は、第2の動き探索結果取得部202から供給された第2の動きベクトル、および、前フレームデータ取得部203から供給された前フレームデータを取得し、第2の動きベクトルを用いて復号処理を行った場合の画像データに対応する第2の予測データを生成し、第2の予測誤差検出部208に供給する。
第1の予測誤差検出部207は、第1の予測データ生成部205から供給された第1の予測データ、および、現フレームデータ取得部204から供給された現フレームデータを取得し、第1の予測データと現フレームデータとの予測誤差である第1の予測誤差を検出し、最適動きフラグ検出部209に供給する。
第2の予測誤差検出部208は、第2の予測データ生成部206から供給された第2の予測データ、および、現フレームデータ取得部204から供給された現フレームデータを取得し、第2の予測データと現フレームデータとの予測誤差である第2の予測誤差を検出し、最適動きフラグ検出部209に供給する。
最適動きフラグ検出部209は、第1の予測誤差検出部207から供給された第1の予測誤差、および、第2の予測誤差検出部208から供給された第2の予測誤差を画素ごとに比較し、予測誤差が少ないのは、第1の予測データであるか第2の予測データであるかを判断し、ブロック内の画素ごとに、第1の動きベクトルを使うべきであるか、第2の動きベクトルを使うべきであるかを示す最適動きフラグを設定し、出力する。
図11を参照して、最適動きフラグの設定について説明する。
第1の予測データ生成部205により第1の動きベクトルを用いて生成された第1の予測データに含まれるあるブロックがブロック221である場合、第1の予測誤差検出部207において、現フレームデータ取得部204により取得された現フレームデータの対応するブロック223とブロック221とが比較されて第1の予測誤差が検出される。そして、第2の予測データ生成部206により第2の動きベクトルを用いて生成された第2の予測データに含まれるあるブロックがブロック222である場合、第2の予測誤差検出部208において、現フレームデータ取得部204により取得された現フレームデータの対応するブロック223とブロック222とが比較されて第2の予測誤差が検出される。
例えば、第1の動きベクトルを使うべき画素位置にフラグ0が、第2の動きベクトルを使うべき画素位置にフラグ1が設定される場合、最適動きフラグ検出部209は、第1の予測誤差検出部207から供給された第1の予測誤差、および、第2の予測誤差検出部208から供給された第2の予測誤差を画素ごとに比較し、予測誤差が少ないのが第1の予測データである場合に対応する画素位置にフラグ0を設定し、予測誤差が少ないのが第2の予測データである場合に対応する画素位置にフラグ1を設定する。
図11の動きフラグ224は、例えば、ブロック内の画素数が4×4である場合の最適動きフラグの例を示している。すなわち、図中右側のボールの動きは、ブロック221に示されるように、第1の動きベクトルで精度よく予測され、図中左側のボールの動きは、ブロック222に示されるように、第2の動きベクトルで精度よく予測されるので、それぞれの画素位置に、対応するフラグが設定される。
なお、ここでは、各ブロックの画素位置ごとに、第1の動きベクトルと第2の動きベクトルとのいずれを用いるべきかを示す最適動きフラグを生成するものとして説明したが、最適動きフラグは、画素単位で設定する以外にも、例えば、2×2や3×3などの所定の範囲内の複数の画素における最適動きフラグとして設定するようにしても良い。
次に、図12は、最適近傍予測フィルタ最小自乗設計部113の更に詳細な機能を示す機能ブロック図である。
最適近傍予測フィルタ最小自乗設計部113は、第1の動き探索結果取得部241、第2の動き探索結果取得部242、最適動きフラグ取得部243、前フレームデータ取得部244、現フレームデータ取得部245、第1のタップ抽出部246、第2のタップ抽出部247、第1の近傍予測フィルタ係数算出部248、および、第2の近傍予測フィルタ係数算出部249で構成されている。
第1の動き探索結果取得部241は、ブロックマッチング動き探索部108から供給された第1の動きベクトルを取得し、第1のタップ抽出部246に供給する。
第2の動き探索結果取得部242は、評価値変更ブロックマッチング動き探索部111から供給された第2の動きベクトルを取得し、第2のタップ抽出部247に供給する。
最適動きフラグ取得部243は、最適動き決定部112から供給された最適動きフラグを取得し、第1の近傍予測フィルタ係数算出部248および第2の近傍予測フィルタ係数算出部249に供給する。
前フレームデータ取得部244は、ハイパスフィルタ107から供給された前フレームデータを取得し、第1のタップ抽出部246および第2のタップ抽出部247に供給する。
現フレームデータ取得部245は、ハイパスフィルタ106から供給された現フレームデータを取得し、第1の近傍予測フィルタ係数算出部248および第2の近傍予測フィルタ係数算出部249に供給する。
第1のタップ抽出部246は、第1の動き探索結果取得部241から第1の動きベクトルの供給を受け、第1の近傍予測フィルタ係数算出部248から指定された注目画素に対して、第1の動きベクトルに基づいて予測される画素位置の周辺の複数画素を第1のタップとし、第1のタップのそれぞれの位置の情報と第1のタップに対応する画素値を抽出し、第1の近傍予測フィルタ係数算出部248に供給する。
第2のタップ抽出部247は、第2の動き探索結果取得部242から第2の動きベクトルの供給を受け、第2の近傍予測フィルタ係数算出部249から指定された注目画素に対して、第2の動きベクトルに基づいて予測される画素位置の周辺の複数画素を第2のタップとし、第2のタップのそれぞれの位置の情報と第2のタップに対応する画素値を抽出し、第2の近傍予測フィルタ係数算出部249に供給する。
例えば、第1のタップおよび第2のタップとして、5つの画素が抽出される場合、図13に示されるように、第1の動きベクトルまたは第2の動きベクトルにあわせて、注目画素に対応する画素と、その周辺画素との5つの画素が、第1のタップまたは第2のタップとして抽出されて、それぞれの位置情報と、タップの位置に対応する画素値が、第1の近傍予測フィルタ係数算出部248または第2の近傍予測フィルタ係数算出部249に供給される。
なお、図13においては、注目画素に対応して予測される画素位置と、その上下左右に隣接する5つの画素を、予測フィルタを算出するための周辺画素として選択するものとして説明したが、予測フィルタを算出するための周辺画素は、これに限らず、例えば、5つ以外の数の画素を抽出することができるようにしても良いし、斜めの位置に隣接する画素や、隣接する2つ以上の連続する画素、または、隣接しない周辺画素などを、予測フィルタを算出するための周辺画素として選択することができるようにしても良い。
第1の近傍予測フィルタ係数算出部248は、現フレームデータ取得部245から現フレームの供給を受け、最適動きフラグ取得部243から供給される最適動きフラグを基に、第1の動きフラグを使用するべき画素を注目画素とする。そして、第1の近傍予測フィルタ係数算出部248は、第1のタップ抽出部246に注目画素に対応する第1のタップを要求して、第1のタップに対応するそれぞれの位置における画素値を取得する。
そして、第1の近傍予測フィルタ係数算出部248は、第1の動きフラグを使用するべきそれぞれの画素において、次の式(3)を求める。
Figure 0004591767
・・・(3)
ここで、ft(x、y)は、現フレームの注目画素の画素値であり、ft-1(x、y)は、前フレームの対応する第1のタップのそれぞれの位置の画素値を示す。式(3)のa1乃至a5は、第1の動きベクトルに対応する予測係数である。
そして、第1の近傍予測フィルタ係数算出部248は、式(3)を基に、最小自乗法を用いて、第1の動きベクトルに対する予測係数a1乃至a5の最適の値を算出し、最適フィルタ係数として出力する。
第2の近傍予測フィルタ係数算出部249は、現フレームデータ取得部245から現フレームの供給を受け、最適動きフラグ取得部243から供給される最適動きフラグを基に、第2の動きフラグを使用するべき画素を注目画素とする。そして、第2の近傍予測フィルタ係数算出部249は、第2のタップ抽出部247に注目画素に対応する第2のタップを要求して、第2のタップに対応するそれぞれの位置における画素値を取得する。
そして、第2の近傍予測フィルタ係数算出部249は、第2の動きフラグを使用するべきそれぞれの画素において、次の式(4)を求める。
Figure 0004591767
・・・(4)
ここで、ft(x、y)は、現フレームの注目画素の画素値であり、ft-1(x、y)は、前フレームの対応する第2のタップのそれぞれの位置の画素値を示す。式(3)のb1乃至b5は、第2の動きベクトルに対応する予測係数である。
第2の近傍予測フィルタ係数算出部249は、式(4)を基に、最小自乗法を用いて、第2の動きベクトルに対する予測係数b1乃至b5の最適の値を算出し、最適フィルタ係数として出力する。
以上説明したように、符号化部82においては、第1の動きベクトル、第2の動きベクトル、最適動きフラグ、並びに、第1の動きフラグに対応する最適フィルタ係数a1乃至a5および第2の動きフラグに対応する最適フィルタ係数b1乃至b5を生成して符号メモリ110に一時記憶させ、符号出力部115から出力するとともに、デコーダ114においてデコードさせて、次のフレーム符号化に利用する。
次に、図14は、図3のデコーダ114の更に詳細な機能を示す機能ブロック図である。
デコーダ114は、基準フレームデコーダ271、フレームメモリ272、動き対象位置算出部273、画素切り出し部274、係数選択部275、フィルタ係数乗算部276、および、フレームメモリ227で構成されている。
基準フレームデコーダ271は、基準フレームの符号を取得し、基準フレームを復号して出力するとともに、フレームメモリ272に供給する。
フレームメモリ272は、基準フレームデコーダ271から供給された、復号された基準フレーム、または、後述するフレームメモリ277から供給された、復号された基準フレーム以外のフレームの供給を受け、これを一時保持し、画素切り出し部274に供給する。
すなわち、デコーダ114においては、フレーム内符号化された基準フレームと、その他のフレームの動き成分である、上述した、第1の動きベクトル、第2の動きベクトル、最適動きフラグ、並びに、第1の動きフラグに対応する最適フィルタ係数a1乃至a5および第2の動きフラグに対応する最適フィルタ係数b1乃至b5の供給を受け、復号処理が行われるようになされている。したがって、図15に示されるように、基準フレームは、基準フレームデコーダ271において、フレーム内での復号処理が行われ、動き成分を符号として供給されている基準フレーム以外のフレームは、前のフレームの復号結果を基に、復号処理が行われるようになされている。
動き対象位置算出部273は、第1の動きベクトル、第2の動きベクトル、および、最適動きフラグの供給を受け、画素ごとに、第1の動きベクトルと第2の動きベクトルとのいずれを用いるかを決定し、注目画素の動き対象位置を算出し、画素切り出し部274に供給する。
画素切り出し部274は、フレームメモリ272に保持されている、一つ前の復号画像データを読み出し、動き対象位置算出部273から供給される動き対象位置の周辺画素を、符号化時に近傍予測フィルタ係数を設定したときに用いたタップと同様に(例えば、図13に示される5タップ)設定して切り出し、フィルタ係数乗算部276に供給する。
係数選択部275は、最適動きフラグと最適フィルタ係数の供給を受け、注目画素を予測するためのフィルタ係数として、第1の動きフラグに対応する最適フィルタ係数a1乃至a5または第2の動きフラグに対応する最適フィルタ係数b1乃至b5のいずれを用いるかを決定し、フィルタ係数乗算部276に供給する。
フィルタ係数乗算部276は、画素切り出し部274から、最適な動きベクトルを基に抽出された周辺画素(例えば、5タップ)の供給を受け、係数選択部275から供給されたフィルタ係数を乗算して注目画素の画素値を求める。フィルタ係数乗算部276は、このようにして求められた1フレーム分の画素値、すなわち、復号された画像データを、フレームメモリ227に供給する。
フレームメモリ227は、フィルタ係数乗算部276から供給された復号された画像データを保持し、復号結果として出力するとともに、次のフレームの復号に用いるため、フレームメモリ272に供給して保持させる。
デコーダ114から出力される復号結果は、フレームメモリ104に供給され、次のフレームの符号化に用いられる。
図3乃至図15を用いて説明したようにして、符号化部82においてフレームデータが符号化される。
次に、図16は、図2の復号部84の更に詳細な構成を示す機能ブロック図である。
なお、図14における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
すなわち、図16の復号部84は、図14のデコーダ114と基本的に同様の構成および機能を有しており、同様の処理を実行するものである。
なお、図2の再生機61が、符号化部82により符号化され、記録部83により所定の記録媒体に記録された画像データを再生することができるようになされている場合、復号部71も、図16に示される復号部84と基本的に同様の構成および機能を有しており、同様の処理を実行することができるようになされている。
次に、図17のフローチャートを参照して、符号化部82が実行する符号化処理について説明する。
ステップS1において、基準フレーム抽出部101は、供給されたフレームデータは、基準フレームであるか否かを判断する。ステップS1において、基準フレームではないと判断された場合、処理は、後述するステップS6に進む。
このとき供給されたフレーム画像データは、再生機61の復号部71で復号され、D/A変換部72でアナログデータに変換されて、D/A変換部72からA/D変換部81へアナログの画像データが伝送されて、A/D変換部81において、デジタルの画像データに変換されたものである。したがって、ステップS1において供給されたフレームデータには、D/A変換部72またはA/D変換部81のデータ変換処理の過程で、または、その間の伝送路上で、例えば、上述したアナログノイズなどのノイズ成分が付加されている。
なお、上述したように、D/A変換部72またはA/D変換部81において、ノイズ成分が積極的に付加されている場合もある。そのような場合、ステップS1の前の段階において、A/D変換部81は、供給されたアナログの画像データをデジタルの画像データに変換するとともに、ノイズ成分を付加する処理を実行し、ノイズ成分が付加されたデジタルの画像データを、符号化部82に供給する。
ステップS1において、基準フレームであると判断された場合、ステップS2において、基準フレーム抽出部101は、供給されたフレームデータを、基準フレーム符号化部102に供給するので、基準フレーム符号化部102は、例えば、JPEGやADRCなどのフレーム内符号化方法を用いて、供給された基準フレームを符号化し、基準フレームデコータ103、デコーダ114、および、符号出力部115に供給する。
ステップS3において、符号出力部115は、符号化された基準フレームを出力する。
ステップS4において、基準フレームデコーダ103は、供給された基準フレームをデコードし、フレームメモリ104に供給する。
ステップS5において、フレームメモリ104は、基準フレームデコーダ103においてデコードされた基準フレームをキャッシュし、処理は、後述するステップS17に進む。
ステップS1において、基準フレームではないと判断された場合、ステップS6において、基準フレーム抽出部101は、供給されたフレームデータを、フレームメモリ105に供給する。そして、フレームメモリ105は、供給されたフレームデータをハイパスフィルタ106に、フレームメモリ104は、保存されているフレームデータをハイパスフィルタ107に、それぞれ供給するので、ハイパスフィルタ106は現フレームにハイパスフィルタをかけて、ブロックマッチング動き探索部108、絶対値誤差算出部109、評価値変更ブロックマッチング動き探索部111、最適動き決定部112、および、最適近傍予測フィルタ最小自乗設計部113に供給し、ハイパスフィルタ107は前フレームにハイパスフィルタをかけて、ブロックマッチング動き探索部108、評価値変更ブロックマッチング動き探索部111、最適動き決定部112、および、最適近傍予測フィルタ最小自乗設計部113に供給する。
ステップS7において、ブロックマッチング動き探索部108は、供給されたフレームから、未処理ブロックのいずれかを選択する。
ステップS8において、ブロックマッチング動き探索部108は、第1の動きベクトルの探索処理を実行する。具体的には、ブロックマッチング動き探索部108は、図6を用いて説明したように、現フレームデータであるフレーム152のうちの選択された探索元であるブロック163に対して、対応する前フレームデータのブロック161周辺の探索範囲162内とのマッチング処理を実行し、第1の動きベクトルを算出し、算出された第1の動きベクトルを、符号メモリ110、最適動き決定部112、および最適近傍予測フィルタ最小自乗設計部113に供給する。
ステップS9において、ブロックマッチング動き探索部108は、算出された第1の動きベクトルと前フレームデータから、予測フレームを算出し、絶対値算出部109に供給するので、絶対値誤差算出部109は、ブロックマッチング動き探索部108から供給された予測フレームと、ハイパスフィルタ106から供給された現フレームデータを基に、ブロックマッチング動き探索部108により実行された第1の動きベクトル探索処理の絶対値誤差(例えば、図7を用いて説明したマトリクス166に対応する情報)を算出し、評価値変更ブロックマッチング動き探索部111に供給する。
ステップS10において、図18を用いて後述する評価値変更ブロックマッチング動き探索処理が実行される。
ステップS11において、図19を用いて後述する最適動き決定処理が実行される。
ステップS12において、図20を用いて後述する最適フィルタ係数算出処理が実行される。
ステップS13において、デコーダ114または符号出力部115は、フレーム内のすべてのブロックの処理が終了され、符号メモリ110に、1フレーム分の符号が記録されたか否かを判断する。ステップS13において、フレーム内のすべてのブロックの処理が終了されていないと判断された場合、処理は、ステップS7に戻り、それ以降の処理が繰り返される。
ステップS13において、フレーム内のすべてのブロックの処理が終了されたと判断された場合、ステップS14において、符号出力部115は、符号メモリ110から1フレーム分の符号を読み出して、符号データを出力する。
ステップS15において、図21を用いて後述する復号処理が、デコーダ114において実行される。
ステップS16において、フレームメモリ104は、デコーダ114から供給された、デコードされたフレームデータをキャッシュする。
ステップS17において、基準フレーム抽出部101は、最後のフレームの処理が終了したか否かを判断する。ステップS17において、最後のフレームの処理が終了していないと判断された場合、処理は、ステップS1に戻り、それ以降の処理が繰り返される。ステップS17において、最後のフレームの処理が終了したと判断された場合、処理は終了される。
このような処理により、符号化部82においてフレームデータが符号化される。
次に、図18のフローチャートを参照して、図17のステップS10において実行される、評価値変更ブロックマッチング動き探索処理について説明する。
ステップS31において、評価値変更ブロックマッチング動き探索部111の絶対値誤差取得部171は、絶対値誤差算出部109から供給された、第1の動きベクトルの探索処理結果と得られるべき画像との絶対値誤差(例えば、図7を用いて説明したマトリクス166に対応する情報)を取得し、重み付けブロックマッチング動き探索部174に供給する。
ステップS32において、現フレームデータ取得部172は、ハイパスフィルタ106から供給された現フレームデータを取得し、前フレームデータ取得部173は、ハイパスフィルタ107から供給された前フレームデータを取得し、それぞれ、重み付けブロックマッチング動き探索部174に供給する。
ステップS33において、重み付けブロックマッチング動き探索部174は、絶対値誤差取得部171により取得された絶対値誤差に対応する重み付けを施して、現フレームデータと前フレームデータに対してブロックマッチングを行い、第2の動きベクトルの探索処理を実行し、探索結果として第2の動きベクトルを出力する。具体的には、重み付けブロックマッチング動き探索部174は、図9を用いて説明したように、現フレームデータであるフレーム152の探索元であるブロック163に対して、対応する前フレームデータのフレーム151のブロック161周辺の探索範囲162内とのマッチング処理を、絶対値誤差に基づいた重み付けに基づいて実行する。ステップS33の処理の終了後、処理は、図17のステップS10に戻り、ステップS11に進む。
このような処理により、通常のブロックマッチングとは異なる方法でブロックマッチングが行われ、通常のブロックマッチングによって求められる第1の動きベクトルとは異なる第2の動きベクトルが探索される。
次に、図19のフローチャートを参照して、図17のステップS11において実行される、最適動き決定処理について説明する。
ステップS51において、最適動き決定部112の第1の動き探索結果取得部201は、ブロックマッチング動き探索部108から供給された第1の動きベクトル探索結果を取得して、第1の予測データ生成部205に供給し、第2の動き探索結果取得部202は、評価値変更ブロックマッチング動き探索部111から供給された第2の動きベクトル探索結果を取得して、第2の予測データ生成部206に供給する。
ステップS52において、前フレームデータ取得部203は、ハイパスフィルタ107から供給された前フレームデータを取得し、第1の予測データ生成部205および第2の予測データ生成部206に供給する。
ステップS53において、第1の予測データ生成部205は、第1の動き探索結果取得部201から供給された第1の動きベクトル探索結果である第1の動きベクトル、および、前フレームデータ取得部203から供給された前フレームデータを取得し、第1の動きベクトルを用いて復号処理を行った場合の画像データに対応する第1の予測データを生成し、第1の予測誤差検出部207に供給する。
ステップS54において、第2の予測データ生成部206は、第2の動き探索結果取得部202から供給された第2の動きベクトル探索結果である第2の動きベクトル、および、前フレームデータ取得部203から供給された前フレームデータを取得し、第2の動きベクトルを用いて復号処理を行った場合の画像データに対応する第2の予測データを生成し、第2の予測誤差検出部208に供給する。
ステップS55において、現フレームデータ取得部204は、ハイパスフィルタ106から供給された現フレームデータを取得し、第1の予測誤差検出部207および第2の予測誤差検出部208に供給する。
ステップS56において、第1の予測誤差検出部207は、第1の予測データ生成部205から供給された第1の予測データ、および、現フレームデータ取得部204から供給された現フレームデータを取得し、第1の予測データと現フレームデータとの予測誤差である第1の予測誤差を画素ごとに検出し、最適動きフラグ検出部209に供給する。
ステップS57において、第2の予測誤差検出部208は、第2の予測データ生成部206から供給された第2の予測データ、および、現フレームデータ取得部204から供給された現フレームデータを取得し、第2の予測データと現フレームデータとの予測誤差である第2の予測誤差を画素ごとに検出し、最適動きフラグ検出部209に供給する。
ステップS58において、最適動きフラグ検出部209は、第1の予測誤差検出部207から供給された第1の予測誤差、および、第2の予測誤差検出部208から供給された第2の予測誤差を画素ごとに比較し、予測誤差が少ないのは、第1の予測データであるか第2の予測データであるかを判断し、ブロック内の画素ごとに、第1の動きベクトルを使うべきであるか、第2の動きベクトルを使うべきであるかを示す最適動きフラグを検出して出力し、処理は、図17のステップS11に戻り、ステップS12に進む。
このような処理により、ブロック内のそれぞれの画素を復号するに当たって、第1の動きベクトルを使うべきであるか、第2の動きベクトルを使うべきであるかを示す最適動きフラグが生成されて、出力される。
次に、図20のフローチャートを参照して、図17のステップS12において実行される、最適フィルタ係数算出処理について説明する。
ステップS81において、最適近傍予測フィルタ最小自乗設計部113の第1の動き探索結果取得部241は、ブロックマッチング動き探索部108から供給された第1の動きベクトルを取得し、第1のタップ抽出部246に供給し、第2の動き探索結果取得部242は、評価値変更ブロックマッチング動き探索部111から供給された第2の動きベクトルを取得し、第2のタップ抽出部247に供給する。
ステップS82において、前フレームデータ取得部244は、ハイパスフィルタ107から供給された前フレームデータを取得し、第1のタップ抽出部246および第2のタップ抽出部247に供給し、現フレームデータ取得部245は、ハイパスフィルタ106から供給された現フレームデータを取得し、第1の近傍予測フィルタ係数算出部248および第2の近傍予測フィルタ係数算出部249に供給する。
ステップS83において、第1の近傍予測フィルタ係数算出部248は、最適動きフラグ取得部243から供給される最適動きフラグを基に、第1の動きフラグを使用するべき画素を注目画素として、第1のタップ抽出部246に注目画素に対応する第1のタップを要求する。そして、第1のタップ抽出部246は、第1の動き探索結果取得部241から供給された第1の動きベクトル探索結果である第1の動きベクトルを基に、前フレームデータ取得部244により抽出された前フレームデータから、フィルタ検出用の所定数の第1のタップのそれぞれの位置と対応する画素値を抽出し、第1の近傍予測フィルタ係数算出部248に供給する。
ステップS84において、第1の近傍予測フィルタ係数算出部248は、抽出された第1のタップを基に、現フレームデータの対象となる画素値と、予測タップの画素値との関係式である、上述した式(3)を作成する。
ステップS85において、第1の近傍予測フィルタ係数算出部248は、最小自乗法を用いて、第1の近傍予測フィルタ係数を算出して出力する。
ステップS86において、第2の近傍予測フィルタ係数算出部249は、最適動きフラグ取得部243から供給される最適動きフラグを基に、第2の動きフラグを使用するべき画素を注目画素として、第2のタップ抽出部247に注目画素に対応する第1のタップを要求する。そして、第2のタップ抽出部247は、第2の動き探索結果取得部242から供給された第2の動きベクトル探索結果である第2の動きベクトルを基に、前フレームデータ取得部244により抽出された前フレームデータから、フィルタ検出用の所定数の第1のタップのそれぞれの位置と対応する画素値を抽出し、第2の近傍予測フィルタ係数算出部249に供給する。
ステップS87において、第2の近傍予測フィルタ係数算出部249は、抽出された第2のタップを基に、現フレームデータの対象となる画素値と、予測タップの画素値との関係式である、上述した式(4)を作成する。
ステップS88において、第2の近傍予測フィルタ係数算出部249は、最小自乗法を用いて、第2の近傍予測フィルタ係数を算出して出力し、処理は、図17のステップS12に戻り、ステップS13に進む。
このような処理により、最適近傍予測フィルタ最小自乗設計部113は、第1の動きベクトルに対する予測係数a1乃至a5の最適の値、および、第2の動きベクトルに対する予測係数b1乃至b5の最適の値を算出し、最適フィルタ係数として出力することができる。
次に、図21のフローチャートを参照して、図17のステップS15において実行されるとともに、復号部84または復号部71において実行される復号処理について説明する。
ステップS111において、デコーダ114、復号部84、または復号部71は、供給された符号化フレームは、基準フレームであるか否かを判断する。ステップS111において、基準フレームではないと判断された場合、処理は、ステップS114に進む。
なお、供給された符号化フレームが、上述した符号化処理により符号化されたフレームデータである場合、そのフレームデータには、D/A変換部72、A/D変換部81、または、D/A変換部85のデータ変換処理の過程で、または、その間の伝送路上で、例えば、上述したアナログノイズなどのノイズ成分が付加されている。
ステップS111において、基準フレームであると判断された場合、ステップS112において、デコーダ114、復号部84、または復号部71の基準フレームデコーダ271は、供給された基準フレームを復号する。
なお、復号処理では、以下の処理においても、デコーダ114、復号部84、または復号部71のうちのいずれにおいても同様の処理が実行されるので、デコーダ114、復号部84、または復号部71という記載は必要に応じて省略する。
ステップS113において、基準フレームデコーダ271は、復号された基準フレームを出力するとともに、フレームメモリ272に供給する。フレームメモリ272は、供給されたフレームデータをキャッシュし、処理は、後述するステップS122に進む。
ステップS111において、基準フレームではないと判断された場合、ステップS114において、動き対象位置算出部273は、供給された、基準フレーム以外のフレームの符号化データのうち、未処理ブロックのいずれかを選択する。
第ステップS115において、動き対象位置算出部273は、1の動きベクトル、および、第2の動きベクトル、並びに、最適動きフラグを基に、画素ごとに、第1の動きベクトルと第2の動きベクトルとのいずれを用いるかを決定し、注目画素の動き対象位置を算出して、画素切り出し部274に供給する。
ステップS116において、画素切り出し部274は、フレームメモリ272に保持されている、一つ前の復号画像データ(すなわち、前フレームデータ)から、符号化時に近傍予測フィルタ係数を設定したときに用いたタップ(例えば、図13に示される5タップ)と同様に、注目画素の周辺画素を設定し、その画素値を取得して、フィルタ係数乗算部276に供給する。
ステップS117において、係数選択部275は、供給された最適動きフラグに基づいて、フィルタ乗算部276の演算に用いる最適フィルタ係数を、画素ごとに選択し、フィルタ係数乗算部276に供給する。
ステップS118において、フィルタ係数乗算部276は、画素切り出し部274から供給された周辺画素の画素値に係数選択部275から供給されたフィルタ係数を乗算して合計することにより、注目画素の画素値を求める。フィルタ係数乗算部276は、画素値とフィルタ係数との乗算結果の合計によって得られた画素値、すなわち、復号された画像データの1画素分の画素値を、フレームメモリ227に供給する。
ステップS119において、デコーダ114、復号部84、または復号部71は、ブロック内のすべての画素の処理が終了されたか否かを判断する。ステップS119において、ブロック内のすべての画素の処理が終了されていないと判断された場合、処理は、ステップS115に戻り、それ以降の処理が繰り返される。
ステップS119において、ブロック内のすべての画素の処理が終了されたと判断された場合、ステップS120において、デコーダ114、復号部84、または復号部71は、フレーム内のすべてのブロックの処理が終了されたか否かを判断する。ステップS120において、フレーム内のすべてのブロックの処理が終了されていないと判断された場合、処理は、ステップS114に戻り、それ以降の処理が繰り返される。
ステップS120において、フレーム内のすべてのブロックの処理が終了されたと判断された場合、ステップS121において、フレームメモリ277は、1フレーム分の復号結果を出力するとともに、フレームメモリ272に供給する。フレームメモリ272は供給された復号結果をキャッシュする。
ステップS113またはステップS121の処理の終了後、ステップS122において、デコーダ114、復号部84、または復号部71は、最後のフレームの処理が終了したか否かを判断する。ステップS121において、最後のフレームの処理が終了していないと判断された場合、処理は、ステップS111に戻り、それ以降の処理が繰り返される。ステップS121において、最後のフレームの処理が終了したと判断された場合、復号部84、または復号部71の処理は終了され、デコーダ114が復号処理を実行している場合、処理は、図17のステップS15に戻り、ステップS16に進む。
このような処理により、フレーム内符号化された基準フレームと、その他のフレームの動き成分、すなわち、上述した、第1の動きベクトル、第2の動きベクトル、最適動きフラグ、並びに、第1の動きフラグに対応する最適フィルタ係数a1乃至a5および第2の動きフラグに対応する最適フィルタ係数b1乃至b5で構成される符号化フレームを復号することができる。
なお、上述したように、D/A変換部72またはD/A変換部85において、例えば、上述したアナログノイズなどのノイズ成分が積極的に付加されている場合もある。そのような場合、復号部71または復号部84において復号処理が行われた後、換言すれば、ステップS122の後の段階において、D/A変換部72またはD/A変換部85は、供給されたデジタルの画像データをアナログの画像データに変換するとともに、ノイズ成分を付加する処理を実行する。
以上説明した処理により、符号化フレームデータに残差情報を含めることなく、符号化および復号処理を行うことができる。図2を用いて説明した画像表示システム51において、復号部71で復号されて出力される画像データは、D/A変換部72においてアナログ画像信号に変換され、伝送される。伝送されたアナログデータは、ディスプレイ62で表示されるか、A/D変換部81でデジタルデータに変換されて、符号化装置63に供給される。
すなわち、符号化装置63に供給される画像は、D/A変換部72やA/D変換部81の変換処理により、または、データの伝送途中において、ノイズが付加された画像である。
従来の符号化における場合のように、符号化情報に動き残差が含まれていた場合、D/A変換部72やA/D変換部81の変換処理により、または、データの伝送途中において、ノイズが付加されても、残差情報を基に、画像の劣化を防ぐことができるようになされている。
しかしながら、本発明を適用した場合、符号化フレームデータに残差情報を含めずに、符号化および復号処理を行うことができるので、D/A変換部72やA/D変換部81の変換処理により、または、データの伝送途中において、ノイズが付加されることにより、再生機61から出力されるアナログ画像信号を、良好な画質を維持したまま記録媒体に記録する(ダビングする、コピーする)ことができなくなる。
更に、符号化装置63には、図3を用いて説明したように、ハイパスフィルタ106およびハイパスフィルタ107が設けられ、エッジなどの元の画像の特徴を抽出するとともに、ノイズも強調するようになされている。したがって、画像を記録媒体に記録(いわゆる、ダビングまたはコピーを実行)し、再生させる場合、符号化処理および復号処理が繰り返されることにより、ノイズが強調され、画像は大きく劣化する。
すなわち、本発明を適用した画像表示システムによると、再生機61から出力されるアナログ画像信号を、良好な画質を維持したまま記録媒体に記録する(ダビングする、コピーする)ことが不可能となる。
したがって、本発明を適用した図2の画像表示システム51は、コピー前のデータによる出力の質を落とすことなく、良好な質を維持したままでのコピーを不可能とすることができるような静止画像の符号化および復号が行われるような構成となっている。
上述した一連の処理は、ソフトウェアにより実行することもできる。そのソフトウェアは、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。この場合、例えば、図2を用いて説明した画像表示システムのすべてまたは一部は、図22に示されるようなパーソナルコンピュータ301により構成される。
図22において、CPU(Central Processing Unit)311は、ROM(Read Only Memory)312に記憶されているプログラム、または記憶部318からRAM(Random Access Memory)313にロードされたプログラムにしたがって、各種の処理を実行する。RAM313にはまた、CPU311が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU311、ROM312、およびRAM313は、バス314を介して相互に接続されている。このバス314にはまた、入出力インタフェース315も接続されている。
入出力インタフェース315には、キーボード、マウスなどよりなる入力部316、ディスプレイやスピーカなどよりなる出力部317、ハードディスクなどより構成される記憶部318、モデム、ターミナルアダプタなどより構成される通信部319が接続されている。通信部319は、インターネットを含むネットワークを介しての通信処理を行う。
入出力インタフェース315にはまた、必要に応じてドライブ320が接続され、磁気ディスク331、光ディスク332、光磁気ディスク333、もしくは、半導体メモリ334などが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部318にインストールされる。
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
この記録媒体は、図22に示されるように、装置本体とは別に、ユーザにプログラムを供給するために配布される、プログラムが記憶されている磁気ディスク331(フロッピディスクを含む)、光ディスク332(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク333(MD(Mini-Disk)(商標)を含む)、もしくは半導体メモリ334などよりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに供給される、プログラムが記憶されているROM312や、記憶部318に含まれるハードディスクなどで構成される。
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
従来の画像表示システムの構成を示すブロック図である。 本発明を適用した、画像表示システムの構成を示すブロック図である。 図2の符号化部82の更に詳細な構成を示すブロック図である。 基準フレームとその他のフレームについて説明するための図である。 ハイパスフィルタの処理について説明するための図である。 第1の動きベクトルについて説明するための図である。 絶対値誤差について説明するための図である。 図3の評価値変更ブロックマッチング動き探索部の更に詳細な構成を示すブロック図である。 第2の動きベクトルについて説明するための図である。 図3の最適動き決定部の更に詳細な構成を示すブロック図である。 最適動きフラグについて説明するための図である。 図3の最適近傍予測フィルタ最小自乗設計部の更に詳細な構成を示すブロック図である。 最適近傍予測フィルタ係数を算出するためのタップと動きベクトルとの関係について説明するための図である。 図3のデコーダの更に詳細な構成を示すブロック図である。 基準フレームと復号について説明するための図である。 図2の復号部84の更に詳細な構成を示すブロック図である。 符号化処理について説明するためのフローチャートである。 評価値変更ブロックマッチング動き探索処理について説明するためのフローチャートである。 最適動き決定処理について説明するためのフローチャートである。 最適フィルタ係数算出処理について説明するためのフローチャートである。 復号処理について説明するためのフローチャートである。 パーソナルコンピュータの構成を示すブロック図である。
符号の説明
51 画像表示システム, 61 再生機, 62 符号化装置, 71 復号部, 72 D/A変換部, 81 A/D変換部, 82 符号化部, 83 記録部, 84 復号部, 85 D/A変換部, 86 ディスプレイ, 101 基準フレーム抽出部, 102 基準フレーム符号化部, 103 基準フレームデコーダ, 104,105 フレームメモリ, 106,107 ハイパスフィルタ, 108 ブロックマッチング動き探索部, 109 絶対値誤差算出部, 110 符号メモリ, 111 評価値変更ブロックマッチング動き探索部, 112 最適動き決定部, 113 最適近傍予測フィルタ最小自乗設計部, 114 デコーダ, 115 符号出力部, 171 絶対値誤差取得部, 172 現フレームデータ取得部, 173 前フレームデータ取得部, 174 重み付けブロックマッチング動き探索部, 201 第1の動き探索結果取得部, 202 第2の動き探索結果取得部, 203 前フレームデータ取得部, 204 現フレームデータ取得部, 205 第1の予測データ生成部, 206 第2の予測データ生成部, 207 第1の予測誤差検出部, 208 第2の予測誤差検出部, 241 第1の動き探索結果取得部, 242 第2の動き探索結果取得部, 243 最適動きフラグ取得部, 244 前フレームデータ取得部, 245 現フレームデータ取得部, 246 第1のタップ抽出部, 247 第2のタップ抽出部, 248 第1の近傍予測フィルタ係数算出部, 249 第2の近傍予測フィルタ係数算出部, 271 基準フレームデコーダ, 272 フレームメモリ, 273 動き対象位置検出部, 274 画素切り出し部, 275 係数選択部, 276 フィルタ係数乗算部, 277 フレームメモリ

Claims (17)

  1. 複数のフレームデータからなる画像データの供給を受けて符号化する符号化装置において、
    第1のフレームデータ、および、前記第1のフレームデータと異なる第2のフレームデータを用いて前記第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定手段と、
    前記第1のフレームデータおよび前記第2のフレームデータを用いて、前記処理ブロックにおける前記第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定手段と、
    前記処理領域ごとに、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択手段と、
    前記動きベクトル選択手段により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に基づいて、前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値を抽出する抽出手段と
    前記抽出手段により抽出された前記第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、前記処理領域に対応する前記第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、前記第1の係数の最適値を予測データとして算出する予測データ算出手段と
    前記第1の動きベクトル推定手段により推定された前記第1の動きベクトル、前記第1のフレームデータ、および前記第2のフレームデータに基づいて、前記第1の動きベクトルの前記処理ブロック内の画素ごとの検出誤差を算出する誤差算出手段と
    を備え、
    前記第1の動きベクトル推定手段は、前記第1のフレームデータおよび前記第2のフレームデータに対するブロックマッチング処理により、前記第1の動きベクトルを推定し、
    前記第2の動きベクトル推定手段は、前記第1のフレームデータおよび前記第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、前記誤差算出手段により算出された前記検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、前記第2の動きベクトルを推定する
    ことを特徴とする符号化装置。
  2. 前記第1のフレームデータおよび前記第2のフレームデータに対して、画像のエッジを強調させる処理を施す画像処理手段
    を更に備え
    前記画像処理手段は、前記第1の動きベクトル推定手段、前記第2の動きベクトル推定手段、前記抽出手段、および前記誤差算出手段に、前記エッジが強調された前記第1のフレームデータを出力し、前記第1の動きベクトル推定手段、前記第2の動きベクトル推定手段、前記予測データ算出手段、および前記誤差算出手段に、前記エッジが強調された前記第2のフレームデータを出力する
    ことを特徴とする請求項1に記載の符号化装置。
  3. 前記画像処理手段は、ハイパスフィルタである
    ことを特徴とする請求項2に記載の符号化装置。
  4. 前記フレームデータにノイズを付加するノイズ付加手段
    を更に備え
    前記ノイズ付加手段は、前記第1の動きベクトル推定手段、前記第2の動きベクトル推定手段、前記抽出手段、および前記誤差算出手段に、前記ノイズが付加された前記第1のフレームデータを出力し、前記第1の動きベクトル推定手段、前記第2の動きベクトル推定手段、前記予測データ算出手段、および前記誤差算出手段に、前記ノイズが付加された前記第2のフレームデータを出力する
    ことを特徴とする請求項1に記載の符号化装置。
  5. 前記抽出手段はまた、前記動きベクトル選択手段により選択されていない前記第1の動きベクトルと前記第2の動きベクトルのうちのいずれか一方に基づいて、前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値を選択外画素値として抽出し、
    前記予測データ算出手段はまた前記選択外画素値に対して画素ごとに第2の係数を乗算した値の和と、前記処理領域に対応する前記第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、前記第2の係数の最適値を選択外予測データとして算出する
    ことを特徴とする請求項に記載の符号化装置。
  6. 前記第のフレームデータに対応する符号化結果を出力する出力手段を更に備え、
    前記出力手段は、
    前記第1の動きベクトル推定手段により推定された前記第1の動きベクトルと、
    前記第2の動きベクトル推定手段により推定された前記第2の動きベクトルと、
    前記動きベクトル選択手段による選択結果を示すデータと、
    前記予測データ算出手段により算出された前記予測データと
    を出力する
    ことを特徴とする請求項1に記載の符号化装置。
  7. 複数のフレームデータからなる画像データの供給を受けて符号化する符号化装置の符号化方法において、
    第1のフレームデータ、および、前記第1のフレームデータと異なる第2のフレームデータを用いて前記第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、
    前記第1のフレームデータおよび前記第2のフレームデータを用いて、前記処理ブロックにおける前記第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、
    前記処理領域ごとに、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、
    前記動きベクトル選択ステップの処理により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に基づいて、前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値を抽出する抽出ステップと
    前記抽出ステップの処理により抽出された前記第1のフレームデータの複数の画素の画素値に対して画素ごとに所定の係数を乗算した値の和と、前記処理領域に対応する前記第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、前記所定の係数の最適値を予測データとして算出する予測データ算出ステップと
    前記第1の動きベクトル推定ステップの処理により推定された前記第1の動きベクトル、前記第1のフレームデータ、および前記第2のフレームデータに基づいて、前記第1の動きベクトルの前記処理ブロック内の画素ごとの検出誤差を算出する誤差算出ステップと
    を含み、
    前記第1の動きベクトル推定ステップでは、前記第1のフレームデータおよび前記第2のフレームデータに対するブロックマッチング処理により、前記第1の動きベクトルを推定し、
    前記第2の動きベクトル推定ステップでは、前記第1のフレームデータおよび前記第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、前記誤差算出ステップの処理により算出された前記検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、前記第2の動きベクトルを推定する
    ことを特徴とする符号化方法。
  8. 複数のフレームデータからなる画像データの供給を受けて符号化する処理をコンピュータに実行させるためのプログラムであって、
    第1のフレームデータ、および、前記第1のフレームデータと異なる第2のフレームデータを用いて前記第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、
    前記第1のフレームデータおよび前記第2のフレームデータを用いて、前記処理ブロックにおける前記第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、
    前記処理領域ごとに、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、
    前記動きベクトル選択ステップの処理により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に基づいて、前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値を抽出する抽出ステップと
    前記抽出ステップの処理により抽出された前記第1のフレームデータの複数の画素の画素値に対して画素ごとに所定の係数を乗算した値の和と、前記処理領域に対応する前記第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、前記所定の係数の最適値を予測データとして算出する予測データ算出ステップと
    前記第1の動きベクトル推定ステップの処理により推定された前記第1の動きベクトル、前記第1のフレームデータ、および前記第2のフレームデータに基づいて、前記第1の動きベクトルの前記処理ブロック内の画素ごとの検出誤差を算出する誤差算出ステップと
    を含み、
    前記第1の動きベクトル推定ステップでは、前記第1のフレームデータおよび前記第2のフレームデータに対するブロックマッチング処理により、前記第1の動きベクトルを推定し、
    前記第2の動きベクトル推定ステップでは、前記第1のフレームデータおよび前記第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、前記誤差算出ステップの処理により算出された前記検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、前記第2の動きベクトルを推定する
    処理をコンピュータに実行させることを特徴とするプログラムが記録されたコンピュータにより読み取り可能な記録媒体。
  9. 複数のフレームデータからなる画像データの供給を受けて符号化する処理をコンピュータに実行させるためのプログラムであって、
    第1のフレームデータ、および、前記第1のフレームデータと異なる第2のフレームデータを用いて前記第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、
    前記第1のフレームデータおよび前記第2のフレームデータを用いて、前記処理ブロックにおける前記第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、
    前記処理領域ごとに、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、
    前記動きベクトル選択ステップの処理により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に基づいて、前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値を抽出する抽出ステップと
    前記抽出ステップの処理により抽出された前記第1のフレームデータの複数の画素の画素値に対して画素ごとに所定の係数を乗算した値の和と、前記処理領域に対応する前記第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、前記所定の係数の最適値を予測データとして算出する予測データ算出ステップと
    前記第1の動きベクトル推定ステップの処理により推定された前記第1の動きベクトル、前記第1のフレームデータ、および前記第2のフレームデータに基づいて、前記第1の動きベクトルの前記処理ブロック内の画素ごとの検出誤差を算出する誤差算出ステップと
    を含み、
    前記第1の動きベクトル推定ステップでは、前記第1のフレームデータおよび前記第2のフレームデータに対するブロックマッチング処理により、前記第1の動きベクトルを推定し、
    前記第2の動きベクトル推定ステップでは、前記第1のフレームデータおよび前記第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、前記誤差算出ステップの処理により算出された前記検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、前記第2の動きベクトルを推定する
    ことを特徴とする処理をコンピュータに実行させるプログラム。
  10. 符号化された複数のフレームデータからなる画像データの供給を受けて復号する復号装置において、
    第1のフレームデータと、前記第1のフレームデータと異なる第2のフレームデータとを用いて推定された前記第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトル、前記第1のフレームデータと前記第2のフレームデータを用いて推定された前記処理ブロックにおける前記第1の動きベクトルとは異なる第2の動きベクトル、および、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを前記処理領域ごとに示す最適動きベクトル情報を、前記第2のフレームデータの符号化結果の一部として取得し、前記処理ブロックの前記処理領域ごとに最適な動きベクトルを決定する動きベクトル決定手段と、
    前記最適な動きベクトルに基づいて、前記第1のフレームデータの符号化結果から前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値を抽出する抽出手段と、
    前記最適な動きベクトルに基づいて抽出された前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、前記処理領域に対応する前記第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された前記第1の係数の最適値である予測データを、前記第2のフレームデータの符号化結果の他の一部として取得し、前記予測データと前記抽出手段により抽出された前記第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を前記第2のフレームデータとして算出する算出手段と
    を備え
    前記第1の動きベクトルは、前記第1のフレームデータおよび前記第2のフレームデータに対するブロックマッチング処理により推定され、
    前記第2の動きベクトルは、前記第1のフレームデータおよび前記第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、前記第1の動きベクトル、前記第1のフレームデータ、および前記第2のフレームデータに基づいて前記第1の動きベクトルの前記処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定される
    ことを特徴とする復号装置。
  11. 前記算出手段により算出された前記第2のフレームデータに、ノイズを付加するノイズ付加手段
    を更に備えることを特徴とする請求項1に記載の復号装置。
  12. 前記第2のフレームデータの符号化結果は、
    前記第1の動きベクトルと、
    前記第2の動きベクトルと、
    前記最適動きベクトル情報と、
    前記予測データと、
    前記第1の動きベクトルと第2の動きベクトルのうちの前記最適な動きベクトルではない方に基づいて抽出された前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値に対して画素ごとに第2の係数を乗算した値の和と、前記処理領域に対応する前記第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された前記第2の係数の最適値である最適外予測データと
    を含む
    ことを特徴とする請求項1に記載の復号装置。
  13. 符号化された複数のフレームデータからなる画像データの供給を受けて復号する復号装置の復号方法において、
    第1のフレームデータと、前記第1のフレームデータと異なる第2のフレームデータとを用いて推定された前記第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトル、前記第1のフレームデータと前記第2のフレームデータを用いて推定された前記処理ブロックにおける前記第1の動きベクトルとは異なる第2の動きベクトル、および、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを前記処理領域ごとに示す最適動きベクトル情報を、前記第2のフレームデータの符号化結果の一部として取得し、前記処理ブロックの前記処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、
    前記最適な動きベクトルに基づいて、前記第1のフレームデータの符号化結果から前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値を抽出する抽出ステップと、
    前記最適な動きベクトルに基づいて抽出された前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、前記処理領域に対応する前記第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された前記第1の係数の最適値である予測データを、前記第2のフレームデータの符号化結果の他の一部として取得し、前記予測データと前記抽出ステップの処理により抽出された前記第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を前記第2のフレームデータとして算出する算出ステップと
    を含み、
    前記第1の動きベクトルは、前記第1のフレームデータおよび前記第2のフレームデータに対するブロックマッチング処理により推定され、
    前記第2の動きベクトルは、前記第1のフレームデータおよび前記第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、前記第1の動きベクトル、前記第1のフレームデータ、および前記第2のフレームデータに基づいて前記第1の動きベクトルの前記処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定される
    ことを特徴とする復号方法。
  14. 符号化された複数のフレームデータからなる画像データの供給を受けて復号する処理をコンピュータに実行させるためのプログラムであって、
    第1のフレームデータと、前記第1のフレームデータと異なる第2のフレームデータとを用いて推定された前記第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトル、前記第1のフレームデータと前記第2のフレームデータを用いて推定された前記処理ブロックにおける前記第1の動きベクトルとは異なる第2の動きベクトル、および、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを前記処理領域ごとに示す最適動きベクトル情報を、前記第2のフレームデータの符号化結果の一部として取得し、前記処理ブロックの前記処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、
    前記最適な動きベクトルに基づいて、前記第1のフレームデータの符号化結果から前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値を抽出する抽出ステップと、
    前記最適な動きベクトルに基づいて抽出された前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、前記処理領域に対応する前記第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された前記第1の係数の最適値である予測データを、前記第2のフレームデータの符号化結果の他の一部として取得し、前記予測データと前記抽出ステップの処理により抽出された前記第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を前記第2のフレームデータとして算出する算出ステップと
    を含み、
    前記第1の動きベクトルは、前記第1のフレームデータおよび前記第2のフレームデータに対するブロックマッチング処理により推定され、
    前記第2の動きベクトルは、前記第1のフレームデータおよび前記第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、前記第1の動きベクトル、前記第1のフレームデータ、および前記第2のフレームデータに基づいて前記第1の動きベクトルの前記処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定される
    処理をコンピュータに実行させることを特徴とするプログラムが記録されたコンピュータにより読み取り可能な記録媒体。
  15. 符号化された複数のフレームデータからなる画像データの供給を受けて復号する処理をコンピュータに実行させるためのプログラムであって、
    第1のフレームデータと、前記第1のフレームデータと異なる第2のフレームデータとを用いて推定された前記第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトル、前記第1のフレームデータと前記第2のフレームデータを用いて推定された前記処理ブロックにおける前記第1の動きベクトルとは異なる第2の動きベクトル、および、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを前記処理領域ごとに示す最適動きベクトル情報を、前記第2のフレームデータの符号化結果の一部として取得し、前記処理ブロックの前記処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、
    前記最適な動きベクトルに基づいて、前記第1のフレームデータの符号化結果から前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値を抽出する抽出ステップと、
    前記最適な動きベクトルに基づいて抽出された前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、前記処理領域に対応する前記第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された前記第1の係数の最適値である予測データを、前記第2のフレームデータの符号化結果の他の一部として取得し、前記予測データと前記抽出ステップの処理により抽出された前記第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を前記第2のフレームデータとして算出する算出ステップと
    を含み、
    前記第1の動きベクトルは、前記第1のフレームデータおよび前記第2のフレームデータに対するブロックマッチング処理により推定され、
    前記第2の動きベクトルは、前記第1のフレームデータおよび前記第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、前記第1の動きベクトル、前記第1のフレームデータ、および前記第2のフレームデータに基づいて前記第1の動きベクトルの前記処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定される
    ことを特徴とする処理をコンピュータに実行させるためのプログラム。
  16. 符号化部および復号部を含み、前記符号化部および前記復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、前記画像データが劣化するようになされている画像処理システムにおいて、
    前記符号化部は、
    第1のフレームデータ、および、前記第1のフレームデータと異なる第2のフレームデータを用いて前記第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定手段と、
    前記第1のフレームデータおよび前記第2のフレームデータを用いて、前記処理ブロックにおける前記第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定手段と、
    前記処理領域ごとに、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択手段と、
    前記動きベクトル選択手段により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に基づいて、前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値を抽出する抽出手段と
    前記抽出手段により抽出された前記第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、前記処理領域に対応する前記第2のフレームデータの画素値との関係を基に、最小自乗法を用いて、前記第1の係数の最適値を予測データとして算出する予測データ算出手段と
    前記第1の動きベクトル推定手段により推定された前記第1の動きベクトル、前記第1のフレームデータ、および前記第2のフレームデータに基づいて、前記第1の動きベクトルの前記処理ブロック内の画素ごとの検出誤差を算出する誤差算出手段と
    を備え、
    前記第1の動きベクトル推定手段は、前記第1のフレームデータおよび前記第2のフレームデータに対するブロックマッチング処理により、前記第1の動きベクトルを推定し、
    前記第2の動きベクトル推定手段は、前記第1のフレームデータおよび前記第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、前記誤差算出手段により算出された前記検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより、前記第2の動きベクトルを推定する
    ことを特徴とする画像処理システム。
  17. 符号化部および復号部を含み、前記符号化部および前記復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、前記画像データが劣化するようになされている画像処理システムにおいて、
    前記復号部は、
    第1のフレームデータと、前記第1のフレームデータと異なる第2のフレームデータとを用いて推定された前記第1のフレームデータの複数の処理領域を有する処理ブロックにおける第1の動きベクトル、前記第1のフレームデータと前記第2のフレームデータを用いて推定された前記処理ブロックにおける前記第1の動きベクトルとは異なる第2の動きベクトル、および、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを前記処理領域ごとに示す最適動きベクトル情報を、前記第2のフレームデータの符号化結果の一部として取得し、前記処理ブロックの前記処理領域ごとに最適な動きベクトルを決定する動きベクトル決定手段と、
    前記最適な動きベクトルに基づいて、前記第1のフレームデータの符号化結果から前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値を抽出する抽出手段と、
    前記最適な動きベクトルに基づいて抽出された前記処理領域に対応する前記第1のフレームデータの複数の画素の画素値に対して画素ごとに第1の係数を乗算した値の和と、前記処理領域に対応する前記第2のフレームデータの画素値との関係を基に最小自乗法を用いて算出された前記第1の係数の最適値である予測データを、前記第2のフレームデータの符号化結果の他の一部として取得し、前記予測データと前記抽出手段により抽出された前記第1のフレームデータの複数の画素の画素値画素ごと乗算した値の和を前記第2のフレームデータとして算出する算出手段と
    を備え
    前記第1の動きベクトルは、前記第1のフレームデータおよび前記第2のフレームデータに対するブロックマッチング処理により推定され、
    前記第2の動きベクトルは、前記第1のフレームデータおよび前記第2のフレームデータに対して、探索範囲内の各ブロックの画素ごとの誤差の総和を、前記第1の動きベクトル、前記第1のフレームデータ、および前記第2のフレームデータに基づいて前記第1の動きベクトルの前記処理ブロック内の画素ごとに算出された検出誤差に基づいて画素ごとに誤差を重み付けすることにより得るブロックマッチング処理を行うことにより推定される
    ことを特徴とする画像処理システム。
JP2005053877A 2005-02-28 2005-02-28 符号化装置および方法、復号装置および方法、画像処理システム、記録媒体、並びにプログラム Expired - Fee Related JP4591767B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005053877A JP4591767B2 (ja) 2005-02-28 2005-02-28 符号化装置および方法、復号装置および方法、画像処理システム、記録媒体、並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005053877A JP4591767B2 (ja) 2005-02-28 2005-02-28 符号化装置および方法、復号装置および方法、画像処理システム、記録媒体、並びにプログラム

Publications (3)

Publication Number Publication Date
JP2006238372A JP2006238372A (ja) 2006-09-07
JP2006238372A5 JP2006238372A5 (ja) 2007-10-11
JP4591767B2 true JP4591767B2 (ja) 2010-12-01

Family

ID=37045488

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005053877A Expired - Fee Related JP4591767B2 (ja) 2005-02-28 2005-02-28 符号化装置および方法、復号装置および方法、画像処理システム、記録媒体、並びにプログラム

Country Status (1)

Country Link
JP (1) JP4591767B2 (ja)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03266580A (ja) * 1990-03-15 1991-11-27 Nec Corp 動ベクトル検出方式
JPH06176151A (ja) * 1992-12-08 1994-06-24 Sony Corp 画像の動き量検出装置
JPH0785287A (ja) * 1993-06-29 1995-03-31 Sony Corp 予測符号化装置およびその復号装置
JP2000050279A (ja) * 1998-07-29 2000-02-18 Kdd Corp 動画像の領域分割符号化装置
JP2000324495A (ja) * 1999-05-07 2000-11-24 Sony Corp フィールド周波数変換装置および変換方法
JP2002051340A (ja) * 2000-08-01 2002-02-15 Matsushita Electric Ind Co Ltd 動画像圧縮装置及びその方法
JP2002084413A (ja) * 2000-06-28 2002-03-22 Oki Electric Ind Co Ltd 画像処理方法,画像処理装置,画像符号化装置,及び,画像復号化装置
JP2004173013A (ja) * 2002-11-20 2004-06-17 Sony Corp 動きベクトルの検出装置および検出方法、それを使用した画像信号の処理装置および処理方法、それに使用される係数データの生成装置および生成方法、並びに各方法を実行するためのプログラム
JP2004289685A (ja) * 2003-03-24 2004-10-14 Sony Corp データ符号化装置およびデータ符号化方法、並びにデータ出力装置およびデータ出力方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03266580A (ja) * 1990-03-15 1991-11-27 Nec Corp 動ベクトル検出方式
JPH06176151A (ja) * 1992-12-08 1994-06-24 Sony Corp 画像の動き量検出装置
JPH0785287A (ja) * 1993-06-29 1995-03-31 Sony Corp 予測符号化装置およびその復号装置
JP2000050279A (ja) * 1998-07-29 2000-02-18 Kdd Corp 動画像の領域分割符号化装置
JP2000324495A (ja) * 1999-05-07 2000-11-24 Sony Corp フィールド周波数変換装置および変換方法
JP2002084413A (ja) * 2000-06-28 2002-03-22 Oki Electric Ind Co Ltd 画像処理方法,画像処理装置,画像符号化装置,及び,画像復号化装置
JP2002051340A (ja) * 2000-08-01 2002-02-15 Matsushita Electric Ind Co Ltd 動画像圧縮装置及びその方法
JP2004173013A (ja) * 2002-11-20 2004-06-17 Sony Corp 動きベクトルの検出装置および検出方法、それを使用した画像信号の処理装置および処理方法、それに使用される係数データの生成装置および生成方法、並びに各方法を実行するためのプログラム
JP2004289685A (ja) * 2003-03-24 2004-10-14 Sony Corp データ符号化装置およびデータ符号化方法、並びにデータ出力装置およびデータ出力方法

Also Published As

Publication number Publication date
JP2006238372A (ja) 2006-09-07

Similar Documents

Publication Publication Date Title
US6834345B2 (en) Method for data preparation and watermark insertion
KR101168500B1 (ko) 멀티미디어 컨텐츠에 워터마크 정보를 동적으로 임베딩하는 방법, 장치 및 시스템
US7957471B2 (en) Encoding apparatus and method, decoding apparatus and method, image processing system and method, and recording medium
JP2009514305A (ja) 情報信号にデータを埋め込む方法
US20020097891A1 (en) Electronic watermarking data insertion/detection device
US7564973B2 (en) Digital watermark embedding device and digital watermark embedding method
US20090161947A1 (en) Image processing device and method, learning device and method, program, and recording medium
JP4591767B2 (ja) 符号化装置および方法、復号装置および方法、画像処理システム、記録媒体、並びにプログラム
JP2004048219A (ja) 電子透かし情報の挿入方法
JP2007501561A (ja) ブロックアーティファクトの検出
JP2006217403A (ja) 符号化装置および方法、復号化装置および方法、記録媒体、プログラム、画像処理システム、並びに画像処理方法
JP4556694B2 (ja) 符号化装置および方法、記録媒体、プログラム、並びに画像処理システム
JP4716086B2 (ja) 符号化装置および方法、記録媒体、プログラム、並びに画像処理システム
CN1822676B (zh) 编码设备和方法、解码设备和方法、图像处理系统和方法
JP4552677B2 (ja) 符号化装置および方法、復号装置および方法、情報処理システム、記録媒体、並びにプログラム
JP4715222B2 (ja) 符号化装置および方法、復号装置および方法、画像処理システム、記録媒体、並びにプログラム
JP4770711B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP2003244696A (ja) 符号化処理装置、復号処理装置、および方法、並びにコンピュータ・プログラム
JP4697519B2 (ja) 符号化装置および方法、復号装置および方法、画像処理システム、記録媒体、並びにプログラム
JP4573110B2 (ja) 符号化装置および方法、記録媒体、プログラム、並びに画像処理システム
JP4577043B2 (ja) 画像処理装置および方法、記録媒体、並びにプログラム
JP2005151385A (ja) 画像処理装置および画像処理方法、プログラム、並びに記録媒体
JP4696577B2 (ja) 符号化装置および方法、復号装置および方法、記録媒体、並びにプログラム、画像処理システムおよび方法
JP4556125B2 (ja) 符号化装置および方法、復号装置および方法、画像処理システム、記録媒体、並びにプログラム
JP2009282556A (ja) 信号処理装置および画像表示装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070827

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070827

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100119

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100315

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100819

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100901

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130924

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130924

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees