(57)【特許請求の範囲】
【請求項１】
入力画像データを圧縮符号化したデータを出力する情報処理装置において、
前記入力画像データをフラクタル符号化し、再度復号したデータである予測画像データを生成する生成手段と、
前記予測画像データをフラクタル符号化する符号化手段と、
前記入力画像データと前記予測画像データとの差分データを演算する差分演算手段と、
前記差分演算手段により演算された前記差分データを、前記予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と前記差分データとを比較し、比較結果を量子化値とすることにより適応的に量子化する量子化手段と、
前記符号化手段によりフラクタル符号化された前記予測画像データと、前記量子化手段により適応的に量子化された前記差分データとを符号化データとして出力する出力手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記量子化手段は、前記ブロック毎に、前記ブロック内の画素の最大値と最小値との差分である前記ダイナミックレンジの値を所定の閾値と比較し、
前記出力手段は、前記ダイナミックレンジの値が前記所定の閾値よりも小さいとき、前記ブロックの前記残差成分の符号化データとしての出力が不要である旨を示す量子化コードを出力する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記ダイナミックレンジに対応した閾値は、前記ダイナミックレンジに所定の係数を乗じた値である
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記所定の係数を、前記予測画像データのブロック毎に、前記入力画像データと前記予測画像データとのS/N比が最大となるように、適応的に演算する係数適応演算手段をさらに備える
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
入力画像データを圧縮符号化したデータを出力する情報処理装置の情報処理方法において、
前記入力画像データをフラクタル符号化し、再度復号したデータである予測画像データを生成する生成ステップと、
前記予測画像データをフラクタル符号化する符号化ステップと、
前記入力画像データと前記予測画像データとの差分データを演算する差分演算ステップと、
前記差分演算ステップの処理で演算された前記差分データを、前記予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と前記差分データとを比較し、比較結果を量子化値とすることにより適応的に量子化する量子化ステップと、
前記符号化ステップの処理でフラクタル符号化された前記予測画像データと、前記量子化手段により適応的に量子化された前記差分データとを符号化データとして出力する出力ステップと
を含むことを特徴とする情報処理方法。
【請求項６】
入力画像データを圧縮符号化したデータを出力する情報処理装置を制御するプログラムであって、
前記入力画像データをフラクタル符号化し、再度復号したデータである予測画像データの生成を制御する生成制御ステップと、
前記予測画像データのフラクタル符号化を制御する符号化制御ステップと、
前記入力画像データと前記予測画像データとの差分データの演算を制御する差分演算制御ステップと、
前記差分演算制御ステップの処理で演算が制御された前記差分データの、前記予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と前記差分データとを比較し、比較結果を量子化値とすることによる適応的な量子化を制御する量子化制御ステップと、
前記符号化制御ステップの処理でフラクタル符号化が制御された前記予測画像データと、前記量子化手段により適応的に量子化された前記差分データとの符号化データとしての出力を制御する出力制御ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
【請求項７】
入力画像データを圧縮符号化したデータを出力する情報処理装置を制御するコンピュータに、
前記入力画像データをフラクタル符号化し、再度復号したデータである予測画像データの生成を制御する生成制御ステップと、
前記予測画像データのフラクタル符号化を制御する符号化制御ステップと、
前記入力画像データと前記予測画像データとの差分データの演算を制御する差分演算制御ステップと、
前記差分演算制御ステップの処理で演算が制御された前記差分データの、前記予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と前記差分データとを比較し、比較結果を量子化することによる適応的な量子化を制御する量子化制御ステップと、
前記符号化制御ステップの処理でフラクタル符号化が制御された前記予測画像データと、前記量子化手段により適応的に量子化された前記差分データとの符号化データとしての出力を制御する出力制御ステップと
を実行させるプログラム。
【請求項８】
元画像データが圧縮符号化されたデータを前記元画像データに対応する復号画像データに復号する情報処理装置において、
元画像データがフラクタル符号化され、再度復号された予測画像データがフラクタル符号化された符号化画像データと、
前記予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と、前記元画像データと前記予測画像データとの差分データとが比較されて、比較結果が量子化値とされることにより適応的に量子化された差分データと
からなる符号化データより、前記符号化画像データと前記量子化された差分データを分離する分離手段と、
前記分離手段により分離された符号化画像データを、前記予測画像データにフラクタル復号する復号手段と、
前記量子化された差分データを、前記予測画像データの、前記ダイナミックレンジに対応して、適応的に逆量子化する逆量子化手段と、
前記予測画像データと、前記逆量子化された差分データに基づいて、前記復号画像データを生成する生成手段と、
前記生成手段により生成された前記復号画像データを出力する出力手段と
を備えることを特徴とする情報処理装置。
【請求項９】
前記ダイナミックレンジに対応した閾値は、前記ダイナミックレンジに所定の係数を乗じた値である
ことを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記所定の係数を、前記予測画像データのブロック毎に、前記元画像データと前記予測画像データとのS/N比が最大となるように、適応的に演算する係数適応演算手段をさらに備える
ことを特徴とする請求項８に記載の情報処理装置。
【請求項１１】
元画像データが圧縮符号化されたデータを前記元画像データに対応する復号画像データに復号する情報処理装置の情報処理方法において、
元画像データがフラクタル符号化され、再度復号された予測画像データがフラクタル符号化された符号化画像データと、
前記予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と元画像データと前記予測画像データとの差分データとが比較されて、比較結果が量子化値とされることにより適応的に量子化された差分データと
からなる符号化データより、前記符号化画像データと前記量子化された差分データを分離する分離ステップと、
前記分離ステップの処理で分離された符号化画像データを、前記予測画像データにフラクタル復号する復号ステップと、
前記量子化された差分データを、前記予測画像データの、前記ダイナミックレンジに対応して、適応的に逆量子化する逆量子化ステップと、
前記予測画像データと、前記逆量子化された差分データに基づいて、前記復号画像データを生成する生成ステップと、
前記生成ステップの処理で生成された前記復号画像データを出力する出力ステップと
を含むことを特徴とする情報処理方法。
【請求項１２】
元画像データが圧縮符号化されたデータを前記元画像データに対応する復号画像データに復号する情報処理装置を制御するプログラムであって、
元画像データがフラクタル符号化され、再度復号された予測画像データがフラクタル符号化された符号化画像データと、
前記予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と元画像データと前記予測画像データとの差分データとが比較されて、比較結果が量子化値とされることにより適応的に量子化された差分データと
からなる符号化データより、前記符号化画像データと前記量子化された差分データとの分離を制御する分離制御ステップと、
前記分離制御ステップの処理で分離が制御された符号化画像データの、前記予測画像データへのフラクタル復号を制御する復号制御ステップと、
前記量子化された差分データの、前記予測画像データの、前記ダイナミックレンジに対応しての、適応的な逆量子化を制御する逆量子化制御ステップと、
前記予測画像データと、前記逆量子化された差分データに基づいた、前記復号画像データの生成を制御する生成制御ステップと、
前記生成制御ステップの処理で生成が制御された前記復号画像データの出力を制御する出力制御ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
【請求項１３】
元画像データが圧縮符号化されたデータを前記元画像データに対応する復号画像データに復号する情報処理装置を制御するコンピュータに、
元画像データがフラクタル符号化され、再度復号された予測画像データがフラクタル符号化された符号化画像データと、
前記予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と元画像データと前記予測画像データとの差分データとが比較されて、比較結果が量子化値とされることにより適応的に量子化された差分データと
からなる符号化データより、前記符号化画像データと前記量子化された差分データとの分離を制御する分離制御ステップと、
前記分離制御ステップの処理で分離が制御された符号化画像データの、前記予測画像データへのフラクタル復号を制御する復号制御ステップと、
前記量子化された差分データの、前記予測画像データの、前記ダイナミックレンジに対応しての、適応的な逆量子化を制御する逆量子化制御ステップと、
前記予測画像データと、前記逆量子化された差分データに基づいた、前記復号画像データの生成を制御する生成制御ステップと、
前記生成制御ステップの処理で生成が制御された前記復号画像データの出力を制御する出力制御ステップと
を実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置および方法、記録媒体、並びにプログラムに関し、特に、フラクタル符号化処理により符号化された画像を、高画質でフラクタル復号できるようにし、処理に必要な計算量を抑制できるようにした情報処理装置および方法、記録媒体、並びにプログラムに関する。
【０００２】
【従来の技術】
画像を圧縮する技術が一般に普及しつつある。画像を圧縮する技術として、画像の持つ特定部分との自己相似性（部分的自己相似性）という冗長度を取り除くことによって、画像圧縮を行うフラクタル符号化が提案されている。部分的自己相似性とは、画像の一部分の画像パターンに注目するとき、同じ画像内に良く似た画像パターンが異なったスケールで存在する性質をいう。フラクタル符号化は、符号化対象画像をｍ×ｎのレンジブロックに分割して、各レンジブロックに対して変換処理を施す。この変換は、それぞれ適当に決められるドメインブロックの画素値を取り出し、縮小、回転等の簡単な線形変換を画素値に施したもので、レンジブロック内の画素を置き換える処理である。すなわち、フラクタル符号化は、レンジブロックの画像パターンを正確に近似する変換を決定する符号化手法である。
【０００３】
より具体的には、例えば、１フレームの画像を８×８画素のレンジブロックに分割し、また、１６×１６画素のドメインブロックが設定されるとき、変換要素としては、４種類のもの（縮小変換、回転変換、鏡像変換、輝度変換）が設定され、また、これらの組合せの変換を含めて、合計８種類の変換が使用される。縮小変換は、４画素の値の平均をとって、水平、垂直の長さをそれぞれ1/2 に縮小するものである。回転変換は、０°、９０°、１８０°、２７０°の反時計方向の回転である。鏡像変換は、左右を入れ替える処理である。輝度変換は、平均値分離後ゲインを乗じ、振幅方向に縮小する処理である。
【０００４】
ドメインブロックに対する上述の変換を行った後、レンジブロックとの相似性をブロックマッチングによって見いだし、ドメインブロックの位置情報である、ベクトルおよび上式のパラメータ（すなわち、サーチ範囲内の位置、回転の角度、左右反転したかどうか）の伝送を行うことによって、情報量の圧縮がなされる。
【０００５】
復号側では、初期画像からドメインブロックを切り出し、受信されたパラメータを用いて変換を行った結果をレンジブロックとして初期画像に張りつけ、それによって画像の更新を行う。この操作を繰り返し行うことで、除々に解像度のある復元画像を生成する。
【０００６】
【発明が解決しようとする課題】
しかしながら、フラクタル符号化による圧縮処理は、幾何変化やブロックの比較などを繰り返すことにより推測できるようにする処理であるため、その演算量と共に、処理時間が膨大なものとなってしまうと言う課題があった。
【０００７】
また、フラクタル符号化では、ブロックマッチングの正否が画質を大きく左右するため、例えば、細かい模様からなる画像などでは、比較するブロック間のマッチングが失敗することにより、復号される画像の画質が、大きく劣化してしまうという課題があった。
【０００８】
さらに、この問題を解決すべく符号化時に様々な工夫がなされているが、その中でも、例えば、特開平9-139941では、輝度の正規化処理をADRC（Adaptive Dynamic Range Coding）により8ビットデータから4ビットデータに減少させて、演算処理量を低減させることが提案されているが、フラクタル符号化処理に伴う画質の劣化の低減は実現されていない。
【０００９】
本発明はこのような状況に鑑みてなされたものであり、画像データのフラクタル符号化による圧縮処理により符号化された画像をより高画質で、高速に復号できるようにするものである。
【００１０】
【課題を解決するための手段】
本発明の第１の情報処理装置は、入力画像データを圧縮符号化したデータを出力する情報処理装置であって、入力画像データをフラクタル符号化し、再度復号したデータである予測画像データを生成する生成手段と、予測画像データをフラクタル符号化する符号化手段と、入力画像データと予測画像データとの差分データを演算する差分演算手段と、差分演算手段により演算された差分データを、予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と差分データとを比較し、比較結果を量子化値とすることにより適応的に量子化する量子化手段と、符号化手段によりフラクタル符号化された予測画像データと、量子化手段により適応的に量子化された差分データとを符号化データとして出力する出力手段とを備えることを特徴とする。
【００１２】
前記量子化手段には、ブロック毎に、ブロック内の画素の最大値と最小値との差分であるダイナミックレンジの値を所定の閾値と比較し、出力手段は、前記ダイナミックレンジの値が前記所定の閾値よりも小さいとき、ブロックの残差成分の符号化データとしての出力が不要である旨を示す量子化コードを出力させるようにすることができる。
【００１５】
ダイナミックレンジに対応した閾値は、ダイナミックレンジに所定の係数を乗じた値にすることができる。
【００１６】
前記所定の係数を、予測画像データのブロック毎に、入力画像データと予測画像データとのS/N比が最大となるように、適応的に演算する係数適応演算手段をさらに設けるようにさせることができる。
【００１７】
本発明の第１の情報処理方法は、入力画像データを圧縮符号化したデータを出力する情報処理装置の情報処理方法であって、入力画像データをフラクタル符号化し、再度復号したデータである予測画像データを生成する生成ステップと、予測画像データをフラクタル符号化する符号化ステップと、入力画像データと予測画像データとの差分データを演算する差分演算ステップと、差分演算ステップの処理で演算された差分データを、予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と差分データとを比較し、比較結果を量子化値とすることにより適応的に量子化する量子化ステップと、符号化ステップの処理でフラクタル符号化された予測画像データと、量子化手段により適応的に量子化された差分データとを符号化データとして出力する出力ステップとを含むことを特徴とする。
【００１８】
本発明の第１の記録媒体のプログラムは、入力画像データを圧縮符号化したデータを出力する情報処理装置を制御するプログラムであって、入力画像データをフラクタル符号化し、再度復号したデータである予測画像データの生成を制御する生成制御ステップと、予測画像データのフラクタル符号化を制御する符号化制御ステップと、入力画像データと予測画像データとの差分データの演算を制御する差分演算制御ステップと、差分演算制御ステップの処理で演算が制御された差分データの、予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と差分データとを比較し、比較結果を量子化値とすることによる適応的な量子化を制御する量子化制御ステップと、符号化制御ステップの処理でフラクタル符号化が制御された予測画像データと、量子化手段により適応的に量子化された差分データとの符号化データとしての出力を制御する出力制御ステップとを含むことを特徴とする。
【００１９】
本発明の第１のプログラムは、入力画像データを圧縮符号化したデータを出力する情報処理装置を制御するコンピュータに、入力画像データをフラクタル符号化し、再度復号したデータである予測画像データの生成を制御する生成制御ステップと、予測画像データのフラクタル符号化を制御する符号化制御ステップと、入力画像データと予測画像データとの差分データの演算を制御する差分演算制御ステップと、差分演算制御ステップの処理で演算が制御された差分データの、予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と差分データとを比較し、比較結果を量子化することによる適応的な量子化を制御する量子化制御ステップと、符号化制御ステップの処理でフラクタル符号化が制御された予測画像データと、量子化手段により適応的に量子化された差分データとの符号化データとしての出力を制御する出力制御ステップとを実行させることを特徴とする。
【００２０】
本発明の第２の情報処理装置は、元画像データが圧縮符号化されたデータを元画像データに対応する復号画像データに復号する情報処理装置にであって、元画像データがフラクタル符号化され、再度復号された予測画像データがフラクタル符号化された符号化画像データと、予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と、元画像データと予測画像データとの差分データとが比較されて、比較結果が量子化値とされることにより適応的に量子化された差分データとからなる符号化データより、符号化画像データと量子化された差分データを分離する分離手段と、分離手段により分離された符号化画像データを、予測画像データにフラクタル復号する復号手段と、量子化された差分データを、予測画像データの、ダイナミックレンジに対応して、適応的に逆量子化する逆量子化手段と、予測画像データと、逆量子化された差分データに基づいて、復号画像データを生成する生成手段と、生成手段により生成された復号画像データを出力する出力手段とを備えることを特徴とする。
【００２３】
前記ダイナミックレンジに対応した閾値は、ダイナミックレンジに所定の係数を乗じた値とすることができる。
【００２４】
前記所定の係数を、予測画像データのブロック毎に、元画像データと前記予測画像データとのS/N比が最大となるように、適応的に演算する係数適応演算手段をさらに設けるようにさせることができる。
【００２５】
本発明の第２の情報処理方法は、元画像データが圧縮符号化されたデータを元画像データに対応する復号画像データに復号する情報処理装置の情報処理方法であって、元画像データがフラクタル符号化され、再度復号された予測画像データがフラクタル符号化された符号化画像データと、予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と元画像データと予測画像データとの差分データとが比較されて、比較結果が量子化値とされることにより適応的に量子化された差分データとからなる符号化データより、符号化画像データと量子化された差分データを分離する分離ステップと、分離ステップの処理で分離された符号化画像データを、予測画像データにフラクタル復号する復号ステップと、量子化された差分データを、予測画像データの、ダイナミックレンジに対応して、適応的に逆量子化する逆量子化ステップと、予測画像データと、逆量子化された差分データに基づいて、復号画像データを生成する生成ステップと、生成ステップの処理で生成された復号画像データを出力する出力ステップとを含むことを特徴とする。
【００２６】
本発明の第２の記録媒体のプログラムは、元画像データが圧縮符号化されたデータを元画像データに対応する復号画像データに復号する情報処理装置を制御するプログラムであって、元画像データがフラクタル符号化され、再度復号された予測画像データがフラクタル符号化された符号化画像データと、予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と元画像データと予測画像データとの差分データとが比較されて、比較結果が量子化値とされることにより適応的に量子化された差分データとからなる符号化データより、符号化画像データと量子化された差分データとの分離を制御する分離制御ステップと、分離制御ステップの処理で分離が制御された符号化画像データの、予測画像データへのフラクタル復号を制御する復号制御ステップと、量子化された差分データの、予測画像データの、ダイナミックレンジに対応しての、適応的な逆量子化を制御する逆量子化制御ステップと、予測画像データと、逆量子化された差分データに基づいた、復号画像データの生成を制御する生成制御ステップと、生成制御ステップの処理で生成が制御された復号画像データの出力を制御する出力制御ステップとを含むことを特徴とする。
【００２７】
本発明の第２のプログラムは、元画像データが圧縮符号化されたデータを元画像データに対応する復号画像データに復号する情報処理装置を制御するコンピュータに、元画像データがフラクタル符号化され、再度復号された予測画像データがフラクタル符号化された符号化画像データと、予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と元画像データと予測画像データとの差分データとが比較されて、比較結果が量子化値とされることにより適応的に量子化された差分データとからなる符号化データより、符号化画像データと量子化された差分データとの分離を制御する分離制御ステップと、分離制御ステップの処理で分離が制御された符号化画像データの、予測画像データへのフラクタル復号を制御する復号制御ステップと、量子化された差分データの、予測画像データの、ダイナミックレンジに対応しての、適応的な逆量子化を制御する逆量子化制御ステップと、予測画像データと、逆量子化された差分データに基づいた、復号画像データの生成を制御する生成制御ステップと、生成制御ステップの処理で生成が制御された復号画像データの出力を制御する出力制御ステップとを実行させる。
【００２８】
本発明の第１の情報処理装置および方法、並びにプログラムにおいては、入力画像データがフラクタル符号化され、再度復号されたデータである予測画像データが生成され、予測画像データがフラクタル符号化され、入力画像データと予測画像データとの差分データが演算され、演算された差分データが、予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と差分データとが比較され、比較結果を量子化値とすることにより適応的に量子化され、フラクタル符号化された予測画像データと、適応的に量子化された差分データとが符号化データとして出力される。
【００２９】
本発明の第２の情報処理装置および方法、並びにプログラムにおいては、元画像データがフラクタル符号化され、再度復号された予測画像データがフラクタル符号化された符号化画像データと、予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と、元画像データと予測画像データとの差分データとが比較されて、比較結果が量子化値とされることにより適応的に量子化された差分データとからなる符号化データより、符号化画像データと量子化された差分データが分離され、分離された符号化画像データが、予測画像データにフラクタル復号され、量子化された差分データが、予測画像データの、ダイナミックレンジに対応して、適応的に逆量子化され、予測画像データと、逆量子化された差分データに基づいて、復号画像データが生成され、生成された復号画像データが出力される。
【００３０】
【発明の実施の形態】
図１は、本発明に係る画像転送システム１１の一実施の形態の構成を示す図である。
【００３１】
画像転送システム１１は、入力された元画像データを伝送データに符号化する符号化部２１と、符号化部２１により符号化された元画像データの伝送データを復号して、復号画像データを生成する復号部２２から構成される。
【００３２】
画像転送システム１１の復号画像生成適応フィルタ３１は、後述する学習処理により生成されるフィルタであり、入力された元画像データをROM（Read Only Memory）などの記憶装置に記憶された係数を用いて演算し、予測画像データに変換して、高速フラクタル符号化部３２、加算器３３、および、残差成分適応量子化部３４に出力する。より詳細には、復号画像生成適応フィルタ３１は、入力された元画像が高速フラクタル符号化部３２により符号化された後、さらに引き続いて、後述する復号部２２のフラクタル復号部４２により復号されたとき、生成されることが予測される予測画像データに変換し、高速フラクタル符号化部３２、加算器３３、および、残差成分適応量子化部３４に出力する。
【００３３】
高速フラクタル符号化部３２は、復号画像生成適応フィルタ３１により演算処理された元画像データをフラクタル符号化により符号化し（圧縮し）、符号化画像データを伝送フォーマット符号化部３５に出力する。
【００３４】
加算器３３は、入力された元画像データの各画素値から、復号画像生成適応フィルタ３１によりフィルタ処理されて、生成された予測画像データの画素値を減算し、その差分を残差成分として求め、残差成分適応量子化部３４に出力する。
【００３５】
残差成分適応量子化部３４は、加算器３３より入力された残差成分を、復号画像生成適応フィルタ３１によりフィルタ処理された予測画像データに応じて、所定のブロック毎に、その特徴量であるダイナミックレンジに対応して適応量子化し、伝送フォーマット部３５に出力する。
【００３６】
伝送フォーマット部３５は、高速フラクタル符号化部３２により圧縮された符号化画像データと、残差成分適応量子化部３４により量子化された残差成分とを、所定の伝送フォーマットにして伝送データとして出力する。
【００３７】
復号部２２の伝送パラメータ分離部４１は、入力された伝送データを符号化画像データと、量子化された残差成分に分離し、符号化画像データをフラクタル符号化部４２に出力し、量子化された残差成分を残差成分適応量子化部４３に出力する。
【００３８】
フラクタル復号部４２は、伝送パラメータ分離部４１より入力された符号化側でのフラクタル符号化処理により生成した予測画像データが符号化された符号化画像データを復号し、加算器４４に出力すると共に、復号した予測画像データのブロック毎のダイナミックレンジの情報を残差成分適応逆量子化部４３に出力する。
【００３９】
残差成分適応逆量子化部４３は、伝送パラメータ分離部４１より入力された量子化されている残差成分をフラクタル復号部４２より入力されたダイナミックレンジに対して適応的に逆量子化し、残差成分を生成して加算器４４に出力する。加算器４４は、フラクタル復号部４２より入力された予測画像データと残差成分を加算することにより、元画像データに対応する復号画像データを生成し、クリッピング処理部４５に出力する。
【００４０】
クリッピング処理部４５は、復号画像データの各画素の画素値が、定義されている範囲内であるか否かを確認し、その画素値が定義された範囲の下限値未満の場合、画素値を下限値に補正し、画素値が定義された範囲の上限値を超えている場合、画素値を上限値に補正することにより画素値をクリッピング処理し、復号画像データを補正して出力する。
【００４１】
次に、図２を参照して、高速フラクタル符号化部３２の構成について説明する。
【００４２】
元画像データがレンジブロック化回部６１、および、サーチエリア切り出し部６５に供給される。レンジブロック化部６１は、元画像データを２次元の（ｍ×ｎ）、例えば８×８画素の大きさのレンジブロックに分割し、レンジブロック毎にADRCエンコーダ６２に供給する。ADRCエンコーダ６２は、入力されたレンジブロックをADRC符号化処理によりADRCエンコードして、ブロックレンジ毎のダイナミックレンジDRと最小値MINを伝送フォーマット符号化部３５に、エンコード結果を比較部６３に出力する。ADRC符号化処理とは、ブロック毎に画素値の最大値MAX、最小値MINを検出し、最大値MAXおよび最小値MINの差である、ダイナミックレンジDRを求め、ダイナミックレンジDRとビット数から決定される量子化ステップ幅によって、最小値MINを減じた修正入力画素値を元の量子化ビット数（８ビット）より少ない固定のビット数（例えば４ビット）で再度量子化するものである。符号化の結果である、ダイナミックレンジDR、最小値MINが伝送フォーマット符号化部３５に送られ、各画素の量子化データQrが差分の２乗和を計算する比較部６３に送られる。ダイナミックレンジに関する情報は、ダイナミックレンジDR、最大値MAX、最小値MINのうちの二つを伝送すれば良い。
【００４３】
一方、サーチエリア切り出し部６５は、上記レンジブロックに対応したサーチ範囲（計算時間を抑えるために、例えば水平、垂直ともに−７乃至＋８画素程度）の中から、２次元の（M×N）、例えば１６×１６画素程度の大きさのドメインブロックを切り出し、ドメインブロック化部６６に出力する。ドメインブロック化部６６は、切り出したドメインブロックをADRCエンコーダ６７により、ADRCエンコーダ６２と同様のADRC符号化処理を行ない1/4縮小部６８に出力すると共に、変換パラメータを比較部６３および最小値判定部６４に出力する。
【００４４】
1/4縮小部６８は、ADRCエンコーダ６７からのドメインブロックの符号化出力の中の量子化データQdに対して、縮小変換（縦横それぞれ１／２）処理を実行して、回転鏡像処理部６９に出力する。回転鏡像処理部６９は、縮小変換された量子化データQdに回転（０°、９０°、１８０°、２７０°）、鏡像（左右反転）などの操作を行い、比較部６３に出力する。
【００４５】
1/4縮小部６８、および、回転鏡像処理部６９においてなされる処理は、座標変換処理である。なお、1/4縮小部６８、および、回転鏡像処理部６９における変換パラメータは、比較部６３、および、最小値判定部６４に供給され、記憶される。
【００４６】
評価部６３は、レンジブロックとドメインブロックの画素単位の差分（Qr-Qd'）を計算し、この差分の２乗値のブロック内での総和が計算され、計算された差分の２乗値の総和を評価値テーブルとして格納（記憶）する。なお、評価値としては、差分の絶対値和等を用いることができる。
【００４７】
評価部６３は、1/4縮小部６８、および、回転鏡像処理部６９において、パラメータが変更されて変換処理が連続して実行されるとき、上述の差分の２乗値の総和を求め、これを評価値テーブルとして格納（記憶）する。評価部６３は、この動作を全てのパラメータに対して行ない、サーチ範囲内で１つのドメインブロックの位置に対する計算を終了する。一例として、下記に挙げる８種類のパラメータが使用される。
【００４８】
第１のパラメータは、1/2の縮小処理によるものとし、第２のパラメータは、1/2の縮小および左右反転処理によるものとし、第３のパラメータは、1/2の縮小および９０°回転処理によるものとし、第４のパラメータは、1/2の縮小および１８０°回転処理によるものとし、第５のパラメータは、1/2の縮小および２７０°回転処理によるものとし、第６のパラメータは、1/2の縮小、９０°回転および左右反転処理によるものとし、第７のパラメータは、1/2の縮小、１８０°回転および左右反転によるものとし、第８のパラメータは、1/2の縮小、２７０°回転および左右反転によるものとするといったものである。
【００４９】
サーチエリア切り出し部６５乃至回転鏡像処理部６９は、サーチ範囲内でドメインブロックの切り出しを、例えば１画素分ずらして行ない、評価部６３は、上記と同様な評価値の演算を全ての変換パラメータに対して行ない、サーチ範囲内で１画素ずつ動かした位置のドメインブロックを切り出し、全ての演算を実行する。
【００５０】
評価部６３が、全ての演算を実行すると、最小値判定部６４は、評価部６３に評価値テーブルとして格納されている評価値の中から最小値を検出し、ドメインブロックの位置、変換パラメータ（回転角度、左右反転の有無）を決定して、伝送フォーマット符号化部３５に出力する。このようにして、ブロックマッチング法によりレンジブロックと相似な画像が探し出される。伝送フォーマット符号化部３５は、ADRCエンコーダ６２より供給されたレンジブロックのダイナミックレンジDR、最小値MINとともに、最小値判定部６４より入力された評価値が最小値となる量子化データ、および、変換パラメータの情報を伝送用のフォーマットに変換して伝送データを生成する。
【００５１】
高速フラクタル符号化部３２は、以上の一連の符号化動作を各レンジブロックについて実行し、画像フレーム全体にわたって符号化動作を行う。伝送されるデータは、各４ビットの位置情報ｘ、ｙと、変換パラメータの３ビット（回転に関する２ビットと反転に関する１ビット）と、ダイナミックレンジDRの８ビットと、最小値MINの８ビットである。従って、１画素が８ビットのデータの場合では、８×８×８＝５１２ビットの原データが２７ビットに圧縮されることになる。
【００５２】
制御部７０は、いわゆるマイクロコンピュータなどから構成され、高速フラクタル符号化部３２の全体の動作を制御しており、各種の処理に必要なカウンタを備える（図中、結線は省略されている）。
【００５３】
次に、図３を参照して、フラクタル復号部４２の構成について説明する。
【００５４】
ドメインブロック切り出し部８１は、伝送パラメータ分離部４１より供給されるドメインブロックの切り出し情報（位置情報ｘ、ｙ）に基づいてドメインブロック（１６×１６画素）を切り出し、ADRCエンコーダ８２に供給する。ADRCエンコーダ８２は、ドメインブロックのデータにADRC符号化処理を施し、量子化データを1/4縮小部８３に出力する。1/4縮小部８３は、ADRCエンコーダ８２より入力された量子化データを水平方向、および、垂直方向にそれぞれ1/2だけ縮小処理し、回転鏡像処理部８４に出力する。
【００５５】
回転鏡像処理部８４は、伝送パラメータ分離部４１より供給される変換パラメータにより、回転、鏡像処理などの線形変換を1/4縮小部８３より供給されたドメインブロックの量子化データに対して施し、ADRCデコーダ８５に供給する。ADRCデコーダ８５は、伝送パラメータ分離部４１からのダイナミックレンジDR、最小値MINに基づいて、回転鏡像処理部８４からの変換後の量子化データに復号処理を施し、もとの画素情報に復元し、メモリ８６に復号結果FM0として書き込む。
【００５６】
フラクタル復号部４２は、同様にして、次のレンジブロックに対応する符号化データの復号動作を実行し、１フレーム全体にわたって復号が終了した時点で、再度復号動作を行なうよう、反復動作を実行する。この反復動作を収束させるための判定は、前回の復号結果をメモリ８６に例えば復号結果FM１として格納しておき、復号結果FM0との画素単位の差分の２乗和を演算部８７により計算し、これをある閾値TH0と比較することで実現する。すなわち、フレーム間差分の２乗和が閾値TH0より大であるときは、未だ収束してないものとみなし、復号動作を繰り返す。従って、メモリ８６には、何らかの初期値が記憶されている必要がある。
【００５７】
反復動作が続行されるとき、演算部８７は、メモリ８６に記憶されている復号結果FM0のデータを復号結果FM1にコピーする。フレーム間差分の２乗和が閾値TH0以下である場合、演算部８７は、演算が収束したものとみなし、反復動作を終了し、演算結果FM0のデータを復号画像として外部に出力する。
【００５８】
制御部８８は、いわゆるマイクロコンピュータなどから構成され、フラクタル復号部４２の全体の動作を制御しており、各種の処理に必要なカウンタを備える（図中、結線は省略されている）。
【００５９】
次に、復号画像生成適応フィルタ３１について説明する。
【００６０】
復号画像生成フィルタ３１は、上述のように入力された元画像が高速フラクタル符号化部３２により符号化された後、さらに引き続いて、復号部２２のフラクタル復号部４２により復号されたとき、生成されることが予測される予測画像データに変換するものである。
【００６１】
この復号画像生成適応フィルタ３１は、符号化時の計算量を減少させるために用いられている。すなわち、あるブロックサイズのフラクタル符号化では復号画像がある程度の画質までしか復号できないという点に着目した解析により、復号画像と同程度の画像を符号化し、さらに復号しても画質は変わらないことが経験的に知られている。これは、フラクタル符号化、および、フラクタル復号により元画像データの高周波成分が除去されるので、ブロックマッチングの失敗率が減少することにより、結果として、近似のブロックの探索を粗く行っても復号画像データと元画像データのS/Nが減少しないことが起因している。
【００６２】
そこで、この復号画像生成適応フィルタ３１は、元画像データをフラクタル符号化処理、および、フラクタル復号処理により復号されることが予測される（高周波成分が除去された）予測画像データに変換する。
【００６３】
この復号画像生成適応フィルタ３１は、複数の元画像データをフラクタル符号化して、さらに、フラクタル復号することにより得られる復号画像データと元画像データとの間の学習処理に基づいて形成される。
【００６４】
図４は、その学習により復号画像生成適応フィルタ３１を生成するフィルタ生成部１０１（復号画像生成適応フィルタ３１で使用される係数を生成する学習装置）の構成を示している。
【００６５】
フラクタル符号化部１１１とフラクタル復号部１１２は、高速フラクタル符号化部３２とフラクタル復号部４２と基本的な構成は同様であるので、その説明は省略する。フラクタル符号化部１１１は、供給された元画像データをフラクタル符号化して、フラクタル復号部１１２に出力する。さらに、フラクタル復号部１１２は、フラクタル符号化された元画像データを復号し、復号画像データを学習部１１３に供給する。
【００６６】
学習部１１３は、供給された元画像データを高能率圧縮符号化、例えばADRC符号化処理により、各画素のクラスコードを生成する。学習部１１３は、元画像データ、復号画像データ、およびクラスコードを利用して、最小自乗法等を用いてクラス毎に最適な予測係数を算出し、算出した予測係数から、復号画像生成適応フィルタ３１を形成する。
【００６７】
ここで、図５のフローチャートを参照して、学習処理について説明する。
【００６８】
ステップＳ１において、フラクタル符号化部１１１が、入力された元画像データをフラクタル符号化し、さらに、フラクタル符号化された元画像データをフラクタル復号部１１２が、復号することにより復号画像データを生成して、学習部１１３に供給する。
【００６９】
ステップＳ２において、学習部１１３は、元画像データと復号画像データに対応した学習データを形成し、例えば、元画像データの画素に対応した復号画像データの画素を中心として図６に示す（３×３）ブロックの配列を学習データとして使用する。
【００７０】
ステップＳ３において、学習部１１４は、元画像データの１フレーム分の元画像データの入力が終了しているか否かを判定し、入力された元画像データの例えば１フレームのデータの処理が終了していないと判定した場合、その処理は、ステップＳ４に進む。
【００７１】
ステップ４において、学習部１１３は、入力された学習データのクラス分割処理を実行する。これは上述のように、ADRC処理等によって、情報量が圧縮された元画像データの画素のデータが用いられる。ステップＳ５において、学習部１１３は、後述する式（６）および（７）の正規方程式を作成し、その処理は、ステップＳ１に戻る。すなわち、クラス分割処理と、その処理に伴う正規方程式が生成される処理が繰り返される。
【００７２】
ステップ３において、元画像データの１フレーム分の処理が終了したと判定された場合、その処理は、ステップＳ６に進む。ステップ６において、学習部１１３は、後述する式（８）を行列解法を用いて解いて、予測係数を決定し、ステップ７において、予測係数を復号画像生成適応フィルタ３１に記憶し、学習処理を終了する。
【００７３】
図５中のステップＳ５の処理（正規方程式を生成する処理）およびステップＳ６の処理（予測係数を決定する処理）をより詳細に説明する。注目画素の真値をｙとし、その推定値をｙ´とし、その周囲の画素の値をｘ1乃至ｘnとしたとき、クラス毎に予測係数ｗ1乃至ｗnによるｎタップの線形１次結合を以下の式（１）として設定する。
【００７４】
ｙ´＝ｗ1・ｘ1 ＋ｗ2・ｘ2 ＋‥‥＋ｗn・ｘn （１）
式（１）において、学習前は予測係数ｗiが未定係数である。
【００７５】
上述のように、学習はクラス毎になされ、データ数がｍの場合、式（１）に従って、
ｙj´＝ｗ1・ｘj1＋ｗ2・ｘj2＋‥‥＋ｗn・ｘjn （２）
（但し、ｊ＝１，２，‥‥ｍ）
ｍ＞ｎの場合、ｗ1乃至ｗnは一意には決まらないので、誤差ベクトルＥの要素を
ｅj＝ｙj−（ｗ1・ｘj1＋ｗ2・ｘj2＋‥‥＋ｗn・ｘjn） （３）
（但し、ｊ＝１，２，‥‥ｍ）
とそれぞれ定義して、次の式（４）を最小にする予測係数を求める。
【００７６】
【数１】
0004051696.tif 000002
いわゆる最小自乗法による解法である。ここで式（４）の予測係数ｗiによる偏微分係数を求める。
【００７７】
【数２】
0004051696.tif 000003
式（５）を０にするように各予測係数ｗiを決めればよいから、
【数３】
0004051696.tif 000004
として、行列を用いると
【数４】
0004051696.tif 000005
となる。この方程式は一般に正規方程式と呼ばれている。この方程式を掃き出し法等の一般的な行列解法を用いて、予測係数ｗiについて解けば、予測係数ｗiが求まり、クラスコードをアドレスとして、この予測係数ｗiを復号画像生成適応フィルタ３１に格納していくことにより、学習処理が実行されていく。
【００７８】
このように形成された復号画像生成適応フィルタ３１は、元画像データを伝送データに変換する際、従来の手法によりフラクタル符号化したのち、再びフラクタル復号しなければ得られなかった、予測画像データをフィルタ処理により得ることができるので、その処理に必要とされる演算量が抑制され、処理時間が短縮される。また、復号画像生成適応フィルタ３１は、複数の元画像データから学習により形成されるので、元画像データが高速フラクタル符号化部３２で符号化された後、再び、フラクタル復号部４２により復号されるときの復号画像データに対して高い精度の（S/Nの高い）予測画像データを生成することが可能となる。
【００７９】
次に、図７のフローチャートを参照して、符号化部２１により元画像データが伝送用符号に符号化されるときの処理について説明する。
【００８０】
ステップＳ１１において、復号画像生成適応フィルタ３１は、元画像データをフィルタ処理して予測画像データを生成し、高速フラクタル符号化部３２、残差成分適応量子化部３４、および、加算器３３に供給する。
【００８１】
ステップＳ１２において、加算器３３は、元画像データから復号画像生成適応フィルタ３１により生成された予測画像データを減算して、残差成分を抽出し、残差成分適応量子化部３４に出力する。
【００８２】
ステップＳ１３において、残差成分適応量子化部３４は、残差成分適応量子化処理を実行する。
【００８３】
ここで、図８のフローチャートを参照して、残差成分適応量子化部３４による残差成分適応量子化処理について説明する。
【００８４】
尚、残差成分適応量子化処理の説明にあたり、レンジブロックとドメインブロックは、図９乃至図１１で示すように定義するものとする。すなわち、図９で示すように、１枚（例えば１フレーム）の画像は、図１０で示す８×８の大きさのレンジブロックへ分割されるものとする。例えば７２０画素×４８０ラインの有効画像がレンジブロックに分割されることによって、９０×６０のレンジブロックが形成される。画像の左上のコーナーから水平方向へ順次増加する番号ｉと、垂直方向に順次増加する番号ｊとによって、各レンジブロックの番号Ｂijが規定されるものとする。また、各レンジブロックの画素は、図１０で示すように左上から順次右方向にｐ０、ｐ１、ｐ２・・・・ｐ６２、および、ｐ６３に配列されるものとする。
【００８５】
ドメインブロックは、図９に示すように、１６×１６のサイズとされるものとする。ドメインブロックの画素データをADRC符号化した量子化データQdが線形変換され、線形変換で得られた量子化データQd'がサーチ範囲内で１画素ステップで動かされるものとする。サーチ範囲は、一例として図１１で示すように、水平および垂直方向のそれぞれで、（−８乃至＋７）の範囲と規定される。このサーチ範囲の位置を水平方向では、ｋ（−８乃至＋７）の番号で規定し、垂直方向では、ｌ（−８乃至＋７）の番号で規定するものとする。従って、サーチ範囲内にある位置のドメインブロックは、Ｄklで規定されるものとなる。
【００８６】
ステップＳ２１において、残差成分適応量子化部３４は、入力された予測画像データから各ブロック毎に画素値の最大値MAX、最小値MIN、および、ダイナミックレンジDRを求める。
【００８７】
ステップＳ２２において、残差成分適応量子化部３４は、ブロック番号のカウンタｉ，ｊをｉ＝ｊ＝０に初期化する。
【００８８】
ステップＳ２３において、残差成分適応量子化部３４は、画素番号のカウンタｐをｐ＝０に初期化する。
【００８９】
ステップＳ２４において、レンジブロックBijに対応する残差成分DFに対するダイナミックレンジDRを読み出し、残差成分適応量子化部３４は、係数αを乗じて閾値TH２（＝DR×α）を求める。
【００９０】
ステップＳ２５において、残差成分適応量子化部３４は、レンジブロックBij内のダイナミックレンジDRを求め、ダイナミックレンジの最小値DR（min）よりも小さいか否かを判定し、例えば、レンジブロックBij内のダイナミックレンジDRが、最小値DR（min）よりも小さくない、すなわち、最小値DR（min）以上であった場合、その処理は、ステップＳ２６に進む。
【００９１】
ステップＳ２６において、残差成分適応量子化部３４は、レンジブロックBijの画素番号ｐの残差成分DFが閾値TH２よりも大きいか否かを判定し、レンジブロックBijの画素番号ｐの残差成分DFが閾値TH２よりも大きくない、すなわち、閾値TH２以下であると判定した場合、その処理は、ステップＳ２７に進む。
【００９２】
ステップＳ２７において、残差成分適応量子化部３４は、レンジブロックBijの画素番号ｐの残差成分DFに負の値を乗じた値（−（残差成分DF））が閾値TH２よりも大きいか否かを判定し、大きくない、すなわち、閾値TH２以下であると判定した場合、その処理は、ステップＳ２８に進む。
【００９３】
ステップＳ２８において、残差成分適応量子化部３４は、対応する画素ｐの残差成分DFの量子化コードを００に設定する。ステップＳ２９において、残差成分適応量子化部３４は、画素番号のカウンタｐが６３よりも大きいか否か、すなわち、レンジブロック内に設定された番号を超えていないか否かを判定し、超えていないと判定した場合、すなわち、レンジブロック内であると判定した場合、その処理は、ステップＳ３０に進む。
【００９４】
ステップＳ３０において、残差成分適応量子化部３４は、画素番号のカウンタｐを１だけインクリメントし（ｐ＝ｐ＋１）、その処理は、ステップＳ２７に戻りそれ以降の処理が繰り返される。
【００９５】
ステップＳ２７において、レンジブロックBijの画素番号ｐの残差成分DFが閾値TH２よりも大きいと判定された場合、その処理は、ステップＳ３１に進み、残差成分適応量子化部３４は、対応する画素ｐの残差成分DFの量子化コードを０１に設定し、その処理は、ステップＳ２９に進む。
【００９６】
ステップＳ２７において、レンジブロックBijの画素番号ｐの負の残差成分DFが閾値TH２よりも大きいと判定された場合、その処理は、ステップＳ３１に進み、残差成分適応量子化部３４は、対応する画素ｐの残差成分DFの量子化コードを１０に設定し、その処理は、ステップＳ２８に進む。
【００９７】
すなわち、同じレンジブロック内の画素に対応する量子化コードが設定されるまで、ステップＳ２６乃至Ｓ３２の処理が繰り返される。
【００９８】
ステップＳ２９において、画素番号のカウンタｐが６３よりも大きいと判定された場合、すなわち、レンジブロック内ではないと判定された場合、その処理は、ステップＳ３３に進む。ステップＳ３３において、残差成分適応量子化部３４は、ブロック番号のカウンタｉを１だけインクリメント（ｉ＝ｉ＋１）する。
【００９９】
ステップＳ３４において、残差成分適応量子化部３４は、ブロック番号のカウンタｉが６３よりも大きいか否か、すなわち、図９で示すように、フレーム内の１段分の番号を超えていないか否かを判定し、超えていないと判定した場合、その処理は、ステップＳ２３に進む。すなわち、一段分の処理が終了するまで、ステップＳ２３乃至Ｓ３４の処理が繰り返される。
【０１００】
ステップＳ３４において、ブロック番号のカウンタｐが６３よりも大きいと判定された場合、すなわち、図９で示すように、フレーム内の１段分の番号を超えたと判定された場合、その処理は、ステップＳ３５に進む。
【０１０１】
ステップＳ３５において、残差成分適応量子化部３４は、ブロック番号のカウンタｊを１だけインクリメント（ｊ＝ｊ＋１）する。ステップＳ３６において、差成分適応量子化部３４は、ブロック番号のカウンタｊが６３よりも大きいか否か、すなわち、図９で示すように、フレーム内の１列分の番号を超えていないか（１フレーム分の処理が完了したか）否かを判定し、超えていないと判定した場合、その処理は、ステップＳ２３に進む。すなわち、１フレーム分の処理が終了するまで、ステップＳ２３乃至Ｓ３６の処理が繰り返される。ステップＳ３６において、ブロック番号のカウンタｊが６３よりも大きいと判定された場合、すなわち、１フレーム分の処理が完了したと判定された場合、その処理は、終了する。
【０１０２】
ステップＳ２５において、ダイナミックレンジDRが、ダイナミックレンジの最小値DR（min）よりも小さいと判定された場合、ステップＳ３７において、残差成分適応量子化部３４は、対応する画素ｐの残差成分DFの量子化コードを１１に設定し、その処理は、ステップＳ３３に進む。
【０１０３】
以上の処理により、各画素に対応する残差成分が量子化コードに変換される。すなわち、ダイナミックレンジDRは、図１２Ａで示すように、予測画素データの最小値と最大値の差分として求められる。従って、残差成分は、このダイナミックレンジDRに対して適応的に量子化されることにより、復号時に正確に再現されることになる。そこで、ステップＳ２４の処理により、図１２Ｂで示すように、ダイナミックレンジDRに所定の係数αを乗じて、閾値TH２を設定し、この閾値TH２との大小関係により量子化値を設定している。
【０１０４】
この例では、図１２Ｃ、および、図１３で示すように、残差成分DF＞閾値TH２の場合（ステップＳ２６がYesの場合）、量子化値を１として、量子化コードを０１に（ステップＳ３１の処理）、−残差成分DF＞閾値TH２の場合（ステップＳ２７がYesの場合）、量子化値を−１として、量子化コードを１０に（ステップＳ３２の処理）、閾値TH２≧残差成分DF≧−閾値TH２の場合（ステップＳ２６，Ｓ２７がいずれもNoの場合）、量子化値を０として、量子化コードを００に設定している。
【０１０５】
また、ステップＳ２５において、レンジブロックBij内のダイナミックレンジDRを求め、平均値の最小値DR（min）よりも小さいか否かが判定されている。例えば、図１４Ａで示すようにダイナミックレンジDRが、比較的大きい場合と、図１４Ｂで示すようにダイナミックレンジDRが比較的小さい場合を比較すると、ダイナミックレンジDRが小さいほど、予測画像データと元画像データとの違いが小さい事が分かる。従って、ダイナミックレンジDRが小さいほど、残差成分により予測画像データを補正しなくても、ある程度の精度で元画像データが生成されることになる。そこで、今の例においては、ダイナミックレンジDRの最小値DR（min）を所定の値として設定し、レンジブロック内のダイナミックレンジDRが、その最小値DR（min）よりも小さい場合（ステップＳ２５においてYesの場合）、そのレンジブロックに対応する残差成分の転送が不要であることを示す１１を量子化コードにしている。
【０１０６】
図１５で示すように、レンジブロック内の各画素に対応する残差成分を転送する際、先頭の残差成分の量子化コードが１１である場合、それ以降の１レンジブロック分の残差成分の量子化コードの転送をしない。この処理により、復号に影響しない量子化コードを転送せずに済ますことができるので、伝送データをより小さくすることが可能となり、転送速度、および、処理速度を向上させることが可能となる。
【０１０７】
ここで、図７のフローチャートの説明に戻る。
【０１０８】
ステップＳ１４において、高速フラクタル符号化部３２は、入力された予測画像データをフラクタル符号化処理する。
【０１０９】
ここで、図１６のフローチャートを参照して、高速フラクタル符号化部３２によるフラクタル符号化処理について説明する。
【０１１０】
ステップＳ５１において、高速フラクタル符号化部３２の制御部７０は、レンジブロックの番号を示すカウンタｉｊをそれぞれｉ＝０，ｊ＝０として初期化する。ステップＳ５２において、制御部７０は、レンジブロックの番号のカウンタｉが９０以上である（ｉ≧９０）か否か、すなわち、図９で示すレンジブロックの１段分以上であるか否かを判定し、ｉ≧９０ではないと判定した場合、その処理は、ステップＳ５３に進む。
【０１１１】
ステップＳ５３において、レンジブロック化部６１は、入力された予測画像データのサーチエリアをレンジブロック化し、ADRCエンコーダ６２に出力する。すなわち、ｊ＝０の９０個のレンジブロック化を最初に実行する。ステップＳ５４において、ADRCエンコーダ６２は、レンジブロック化部６１より入力されたレンジブロックBijをADRCエンコード処理する。すなわち、今の場合、ADRCエンコーダ６２は、最初のレンジブロックB0000をADRC符号化する。
【０１１２】
ステップＳ５５において、制御部７０は、ドメインブロックの番号のカウンタであるｋ，ｌを初期化する。今の場合、図１１で示すように、カウンタｋ，ｌは、ｋ＝ｌ＝−８に初期化される。
【０１１３】
ステップＳ５６において、制御部７０は、カウンタｋが８以上である（ｋ≧８）か否か、すなわち、図１１で示すドメインブロックの水平方向のサーチ範囲内であるか否かを判定し、例えば、水平方向のサーチ範囲内であると判定された場合、すなわち、ｋ≧８０ではないと判定された場合、その処理は、ステップＳ５７に進む。
【０１１４】
ステップＳ５７において、サーチエリア切り出し部６５は、ドメインブロックを切り出し、同時に、ドメインブロック化部６６がドメインブロック化の処理を実行し、ドメインブロック化された予測画像データをADRCエンコーダ６７に出力する。今の場合、ドメインブロック化部６６は、最初のドメインブロック化の処理により、ドメインブロックＤ-8-8を形成し、ADRCエンコーダ６７に出力する。
【０１１５】
ステップＳ５８において、ADRCエンコーダ６７は、ドメインブロックＤklをADRC符号化し、1/4縮小部６８に出力する。ステップＳ５９において、1/4縮小部６８は、ADRCエンコーダ６７よる入力された量子化データQdを縦横のブロックサイズをそれぞれ半分にして、８×８のサイズ、すなわち、1/4のサイズに縮小する。この縮小化されたドメインブロックはＤkl´と表すものとする。
【０１１６】
ステップＳ６０において、回転鏡像処理部６９は、回転操作の回転角度Ｒを０に設定する。すなわち、縮小のみの変換操作がドメインブロックの量子化データQdに対してなされる。ステップＳ６１において、回転鏡像処理部は、回転角度がＲ≧３６０°であるか否か、すなわち、回転が1周したか否かを判定し、Ｒ≧３６０ではない、すなわち、1周していないと判定された場合、その処理は、ステップＳ６２に進む。
【０１１７】
ステップＳ６２において、回転鏡像処理部６９は、ドメインブロックDkl'を、角度Ｒだけ回転させる。今の場合、回転角度Ｒ＝０の場合、ドメインブロックDkl'が回転されていないことを示す。
【０１１８】
ステップＳ６３において、回転鏡像処理部６９は、回転されたドメインブロックDkl'とレンジブロックBijの画素同士の差分の２乗和を求め、これを評価値として比較部６３に評価値テーブルとして格納させる。Ｒ＝０の場合では、縮小の操作がされたドメインブロックとレンジブロックとの間の評価値が求められ、テーブルに格納される。
【０１１９】
ステップＳ６４において、回転鏡像処理部６９は、回転操作がなされたドメインブロックＤkl´を左右反転させる。以下、この回転、および、反転されたドメインブロックはＤkl´´と表すものとする。
【０１２０】
ステップＳ６５において、回転鏡像処理部６９は、回転反転されたドメインブロックＤkl´´とドメインレンジブロックBijとの画素同士の差分の２乗和を演算し、比較部６３に出力し、評価値として評価値テーブルに格納させる。Ｒ＝０の場合では、縮小および反転の操作がなされたドメインブロックとレンジブロックとの間の評価値が求められ、テーブルに格納される。
【０１２１】
ステップＳ６６において、回転鏡像処理部６９は、回転角度Ｒに９０°を加算し（＋９０°）、その処理は、ステップＳ６１に戻る。すなわち、回転処理が１周された（ステップＳ６１においてＲ≧３６０°である）と判定されるまで、ステップＳ６１乃至Ｓ６６の処理が繰り返され、求められた評価値が比較部６３の評価値テーブルに格納される。結果として、回転角度ＲがＲ＝０，９０°，１８０°，２７０°のそれぞれについて、上述と同様の処理がなされる。
【０１２２】
一例として、ドメインブロックＤ-8-8について、前述したような８種類の変換パラメータについての評価値が求められる。すなわち、第１のパラメータ（ 1/2の縮小）、第２のパラメータ（ 1/2の縮小および左右反転）、第３のパラメータ（ 1/2の縮小および９０°回転）、第４のパラメータ（ 1/2の縮小および１８０°回転）、第５のパラメータ（ 1/2の縮小および２７０°回転）、第６のパラメータ（ 1/2の縮小、９０°回転および左右反転）、第７のパラメータ（ 1/2の縮小、１８０°回転および左右反転）、および第８のパラメータ（ 1/2の縮小、２７０°回転および左右反転）についての評価値がそれぞれ求められる。
【０１２３】
従って、ステップＳ６１において、回転角度Ｒ≧３６０であると判定されるまでの間に、一つのドメインブロックＤklについて、第１乃至第８のパラメータのそれぞれについての評価値が求められることになる。ステップＳ６１において、回転角度がＲ≧３６０である、すなわち、ドメインブロックDklが1周したと判定された場合、ステップＳ６７において、カウンタｋの値が１だけインクリメントされる。換言すれば、ステップＳ６７の処理により、サーチ範囲内でドメインブロックDklの位置が水平方向で１画素シフトされる。そして、その処理は、ステップＳ５６に戻り、上述したように、シフトされた位置のドメインブロックについての縮小、回転、左右反転の操作がなされ、８個の変換パラメータに関しての評価値が求められる。この評価値も評価値テーブルに格納される。
【０１２４】
サーチ範囲内で、ドメインブロックの位置が水平方向に１画素ずつシフトされ、ステップＳ５６において、ｋ≧８であると判定された場合、ステップＳ６８において、カウンタｌが８以上（ｌ≧８）であるか、すなわち、ドメインブロックのサーチ範囲の下限値にまで到達したか否かが判定される。ステップＳ６８において、カウンタｌが８以上ではない、すなわち、ドメインブロックが下限値に到達していないと判定された場合、ステップＳ６９において、ｌの値が１だけインクリメントされ、カウンタｋがｋ＝−８に初期化され、その処理は、ステップＳ５７（ドメインブロック化）に戻る。
【０１２５】
すなわち、ステップＳ６９の処理により、サーチ範囲内のドメインブロックの垂直方向の位置が１ライン下側にシフトされ、そのライン上でｋの値がインクリメントされることによって、水平方向にドメインブロックの位置がシフトされ、各位置において評価値が計算される。
【０１２６】
ステップＳ６８において、ｌ≧８である、すなわち、ドメインブロックがサーチ範囲の下限値に達したと判定された場合、その処理は、ステップＳ７０に進む。ステップＳ７０において、最小値判定部６４は、比較部６３に格納されている評価値テーブルに記憶された複数の評価値（上述したように差分の２乗和）の中の最小値を検出し、伝送フォーマット化符号化部３５に出力する。
【０１２７】
ステップＳ７１において、伝送フォーマット符号化部３５は、検出された最小値と対応して符号化データを作成し、ドメインブロックのダイナミックレンジDRおよび最小値MINと、評価値の最小値を生じさせる、ドメインブロックの位置（ｋおよびｌの値）、パラメータ、さらに、適応量子化された残差成分を合成し、伝送フォーマットに対応した伝送データに変換する。
【０１２８】
ステップＳ７２において、伝送フォーマット符号化部３５は、伝送データを出力する。ステップＳ７３において、制御部７０は、カウンタｉを１だけインクリメントし、その処理は、ステップＳ５２に戻る。すなわち、カウンタｉが１だけインクリメントされることにより、次のレンジブロックについての符号化処理が、ステップＳ５２から開始される。
【０１２９】
ステップＳ５２において、ｉ≧９０である、すなわち、図９で示す１段分のレンジブロックの処理が終了したと判定された場合、ステップＳ７４において、カウンタｊが６０以上（ｊ≧６０）であるか否か、すなわち、垂直方向に全ての段のレンジブロックが符号化されたか否かが判定され、例えば、カウンタｊがｊ≧６０ではない、すなわち、垂直方向にまだ符号化されていない段があると判定された場合、その処理は、ステップＳ７５に進む。
【０１３０】
ステップＳ７５において、制御部７０は、カウンタｊを１だけインクリメントし、カウンタｉをｉ＝０に初期化して、その処理は、ステップＳ５３に戻り、それ以降の処理が繰り返される。
【０１３１】
ステップＳ７４において、カウンタｊがｊ≧６０である、すなわち、１フレーム分の全ての画素が符号化されたと判定された場合、１フレームの全レンジブロックの処理が終了する。
【０１３２】
ここで、図７のフローチャートの説明に戻る。
【０１３３】
以上の処理により、元画像データは、伝送データに変換されて出力される。
【０１３４】
次に、図１７のフローチャートを参照して、図７のフローチャートを参照して説明した処理により生成された伝送データを復号して復号画像データを生成するときの復号部２２の処理について説明する。
【０１３５】
ステップＳ９１において、伝送パラメータ分離部４１は、符号化された画像データからフラクタル符号化された画像データと適応量子化された残差成分を分離して、フラクタル符号化された画像データをフラクタル復号部４２に出力し、適応量子化された残差成分を残差成分適応逆量子化部４３に出力する。
【０１３６】
ステップＳ９２において、フラクタル復号部４２は、伝送パラメータ分離部４１より入力されたフラクタル符号化された画像データのフラクタル復号処理を実行する。
【０１３７】
ここで、図１８のフローチャートを参照して、フラクタル復号部４２によるフラクタル復号処理について説明する。
【０１３８】
ステップＳ１１１において、制御部８８は、メモリ８６を制御して演算結果FM0、FM1を初期化する。ステップＳ１１２において、制御部８８は、レンジブロックの番号のカウンタｉ，ｊを共に０として、初期化する。
【０１３９】
ステップＳ１１３において、ドメインブロック切り出し部８１は、受信したデータ中のドメインブロックの位置情報に従ってドメインブロックを切り出し、ADRCエンコーダ８２に出力する。ここで、復号しようとするレンジブロックBijと対応して切り出されたドメインブロックをＤijと表す。
【０１４０】
ステップＳ１１４において、ADRCエンコーダ８２は、このドメインブロックＤijをADRC符号化し、1/4縮小部８３に出力する。ステップＳ１１５において、1/4縮小部８３は、ADRCエンコーダにより生成された符号化データ中の量子化データのみを縮小し、回転鏡像処理部８４に出力する。
【０１４１】
ステップＳ１１６において、回転鏡像処理部８４は、入力された縮小されたドメインブロックDijの量子化データを回転させる。さらに、ステップＳ１１７において、回転鏡像処理部８４は、回転させたドメインブロックDijの量子化データを反転させ（鏡像処理させ）、ADRCデコーダ８５に出力する。
【０１４２】
ステップＳ１１８において、ADRCデコーダ８５は、変換操作後のドメインブロックのデータが受信されており、変換パラメータを使用してADRCデコード処理を実行し、レンジブロックBijの復号データ、すなわち、復号された予測画像データが得られる。ステップＳ１１９において、制御部８８は、この復号された予測画像データをメモリ８６に出力し、演算結果FM0としてレンジブロックBijの位置に格納する。
【０１４３】
ステップＳ１２０において、制御部８８は、カウンタｉが９０以上（ｉ≧９０）であるか否か、すなわち、図９で示したように水平方向に設定された1段分のレンジブロックの処理が終了したか否かを判定し、カウンタｉが９０以上（ｉ≧９０）ではない、すなわち、水平方向に設定された1段分のレンジブロックの処理が終了していないと判定された場合、ステップＳ１２１において、制御部８８は、カウンタｉの値を１だけインクリメントし、その処理は、ステップＳ１１３に戻る。すなわち、水平方向に設定された1段分のレンジブロックの処理が終了されるまで、ステップＳ１１３乃至Ｓ１２１の処理が繰り返される。
【０１４４】
ステップＳ１２０において、カウンタｉが９０以上（ｉ≧９０）である、すなわち、垂直方向に設定された全ての段のレンジブロックの処理が終了したと判定された場合、その処理は、ステップＳ１２２に進む。
【０１４５】
ステップＳ１２２において、制御部８８は、カウンタｊが６０以上（ｊ≧６０）であるか否か、すなわち、垂直方向のレンジブロックの処理が終了したか（1フレーム分の処理が終了したか）否かを判定し、例えば、カウンタｊが６０以上（ｊ≧６０）ではない、すなわち、垂直方向のレンジブロックの処理が終了していないと判定された場合、その処理は、ステップＳ１２３に進む。
【０１４６】
ステップＳ１２３において、制御部８８は、カウンタｊを1だけインクリメントし（ｊ＝ｊ＋１）、カウンタｉを０に設定し、その処理は、ステップＳ１１３に進む。すなわち、1フレーム分の処理が終了するまで、ステップＳ１１３乃至Ｓ１２３の処理が繰り返される。
【０１４７】
ステップＳ１２２において、カウンタｊが６０以上（ｊ≧６０）である、すなわち、垂直方向のレンジブロックの処理が終了したと判定された場合、その処理は、ステップＳ１２４に進む。
【０１４８】
ステップＳ１２４において、演算部８７は、メモリ８６に記憶されている演算結果FM0の復号された予測画像データと、演算結果FM1の復号された予測画像データとの差分の２乗和Ｓを演算する。
【０１４９】
ステップＳ１２５において、演算部８７は、２乗和Ｓが、演算の収束を示す所定の閾値TH３より大きいか否か、すなわち、演算が収束しているか否かを判定し、２乗和Ｓが、演算の収束を示す所定の閾値TH３より大きくない、すなわち、演算が収束していないと判定した場合、その処理は、ステップＳ１２６に進む。ステップＳ１２６において、演算部８７は、メモリ８６に記憶された演算結果FM0の復号された予測画像データをFM1にコピーし、その処理は、ステップＳ１１２に戻り、それ以降の処理が繰り返される。
【０１５０】
ステップＳ１２５において、２乗和Ｓが、演算の収束を示す所定の閾値TH３より大きい、すなわち、演算が収束したと判定した場合、その処理は、ステップＳ１２７に進む。
【０１５１】
ステップＳ１２７において、演算部８７は、メモリ８６に記憶された、演算結果FM0を、復号された予測画像データとして加算器４４に出力する。
【０１５２】
以上の処理により、フラクタル符号化された予測画像データは、フラクタル復号される。
【０１５３】
ここで、図１７のフローチャートの説明に戻る。
【０１５４】
ステップＳ９３において、フラクタル復号部４２は、復号した予測画像データのブロック単位のダイナミックレンジDRと最小値MINを残差成分適応逆量子化部４３に出力する。
【０１５５】
ステップＳ９４において、残差成分適応逆量子化部４３は、残差成分適応逆量子化処理を実行し、逆量子化した残差成分と、復号された予測画像データの画素値を加算して復号画像データを生成し、その処理を終了する。
【０１５６】
ここで、図１９のフローチャートを参照して、残差成分適応逆量子化部４３、加算器４４、および、クリッピング処理部４５による残差成分適応逆量子化処理について説明する。
【０１５７】
ステップＳ１４１において、残差成分適応逆量子化部４３は、レンジブロックの番号を示すカウンタｉ，ｊを初期化する（ｉ＝ｊ＝０）。
【０１５８】
ステップＳ１４２において、残差成分適応逆量子化部４３は、画素の番号を示すカウンタｐを初期化する（ｐ＝０）。
【０１５９】
ステップＳ１４３において、残差成分適応逆量子化部４３は、レンジブロックBijの最初の量子化コードが１１であるか否か、すなわち、図１３で示すように、量子化コードが１１であるということは、そのレンジブロックBijの残差成分は転送されてきていないことになるので、その判定が行われることになり、例えば、量子化コードが１１ではない、すなわち、レンジブロックBijの各画素に対応する量子化コードが転送されてきていると判定された場合、その処理は、ステップＳ１４４に進む。
【０１６０】
ステップＳ１４４において、残差成分適応逆量子化部４３は、フラクタル復号部４２より入力されるレンジブロックBijのダイナミックレンジDRおよび最小値MINを取得する。
【０１６１】
ステップＳ１４５において、残差成分適応逆量子化部４３は、レンジブロックBijの画素番号ｐの残差成分の量子化コードが０１であるか否かを判定し、例えば、０１ではないと判定された場合、その処理は、ステップＳ１４６に進む。
【０１６２】
ステップＳ１４６において、残差成分適応逆量子化部４３は、レンジブロックBijの画素番号ｐの残差成分の量子化コードが１０であるか否かを判定し、例えば、１０ではないと判定された場合、その処理は、ステップＳ１４７に進む。
【０１６３】
ステップＳ１４７において、残差成分適応逆量子化部４３は、画素番号ｐの量子化コードが００であるとみなし、対応する残差成分を０として出力し、加算器４４は、対応する復号された予測画像データの画素値に加算して、復号画像データの画素値を生成し、クリッピング処理部４５に出力する。
【０１６４】
ステップＳ１４８において、クリッピング処理部４５は、復号画像データ画素値が、画像として表示可能なレンジ内であるか否かを確認し、そのレンジを越えていた場合には、その画素値を最大レンジにクリッピングして（演算された画素値から最大レンジの画素値に置き換えて）復号画像データとして出力する。
【０１６５】
ステップＳ１４９において、残差成分適応逆量子化部４３は、レンジブロックBij内の全ての画素に対応する残差成分が逆量子化されたか否か、すなわち、画素番号のカウンタｐが６４以上（ｐ≧６４）であるか否かを判定し、例えば、レンジブロックBij内の全ての画素に対応する残差成分が逆量子化されていない、すなわち、画素番号のカウンタｐが６４以上（ｐ≧６４）ではないと判定された場合、その処理は、ステップＳ１５０に進む。
【０１６６】
ステップＳ１５０において、残差成分適応逆量子化部４３は、画素番号のカウンタｐを１だけインクリメントし、その処理は、ステップＳ１４５に戻る。
【０１６７】
ステップＳ１４５において、レンジブロックBijの画素番号ｐの残差成分の量子化コードが０１であると判定された場合、ステップＳ１５１において、残差成分適応逆量子化部４３は、対応する画素の残差成分をダイナミックレンジDRに所定の係数βを乗じた値を、量子化コードに対応する量子化値に乗じた値を残差成分として、加算器４４に出力し、加算器４４が、これを復号された予測画像データの画素値に加算してクリッピング処理部４５に出力し、その処理は、ステップＳ１５１に進む。すなわち、量子化コード０１は、図１３で示すように量子化値が１であるので、残差成分は、DR×βとなり、その値が復号された予測画像データの画素値に加算されることになる。
【０１６８】
ステップＳ１４６において、レンジブロックBijの画素番号ｐの残差成分の量子化コードが１０であると判定された場合、ステップＳ１５２において、残差成分適応逆量子化部４３は、対応する画素の残差成分をダイナミックレンジDRに所定の係数βを乗じた値を、量子化コードに対応する量子化値に乗じた値を残差成分として、加算器４４に出力し、加算器４４が、これを復号された予測画像データの画素値に加算してクリッピング処理部４５に出力し、その処理は、ステップＳ１５１に進む。すなわち、量子化コード１０は、図１３で示すように量子化値が−１であるので、残差成分は、−DR×βとなり、その値が復号された予測画像データの画素値に加算されることになる。
【０１６９】
ステップＳ１４９において、レンジブロックBij内の全ての画素に対応する残差成分が逆量子化されていない、すなわち、画素番号のカウンタｐが６４以上（ｐ≧６４）ではないと判定された場合、残差成分適応逆量子化部４３は、レンジブロックBijのカウンタｉを１だけインクリメントし、ステップＳ１５４において、ｉが８９より大きい（ｉ＞８９）か否か、すなわち、図９で示すように、水平方向の１段分の全てのレンジブロックにおいて逆量子化処理が実行されたか否かを判定し、例えばｉ＞８９である、すなわち、水平方向の１段分の全てのレンジブロックにおいて逆量子化処理が実行されていないと判定された場合、その処理は、ステップＳ１４２に戻り、それ以降の処理が繰り返される。
【０１７０】
ステップＳ１５４において、水平方向の１段分の全てのレンジブロックにおいて逆量子化処理が実行されていないと判定された場合、その処理は、ステップＳ１５５に進む。ステップＳ１５５において、残差成分適応逆量子化部４３は、レンジブロックBijのカウンタｊを１だけインクリメントし、ステップＳ１５６において、ｊが５９より大きい（ｉ＞５９）か否か、すなわち、図９で示すように、垂直方向の全ての段のレンジブロック（１フレーム分のレンジブロック）において逆量子化処理が実行されたか否かを判定し、例えば、ｉ＞５９である、すなわち、垂直方向の全ての段のレンジブロックにおいて逆量子化処理が実行されていないと判定された場合、その処理は、ステップＳ１４２に戻り、それ以降の処理が繰り返される。ステップＳ１５６において、ｉ＞５９である、すなわち、垂直方向の全ての段のレンジブロックにおいて逆量子化処理が実行されていると判定された場合、その処理は、終了する。
【０１７１】
ステップＳ１４３において、レンジブロックBijの最初の量子化コードが１１である、すなわち、そのレンジブロックBijの残差成分は転送されてきていないと判定し、ステップＳ１５７において、残差成分適応逆量子化部４３は、ブロック番号Ｂijの全ての画素に対応する残差成分を０として出力し、加算器４４は、対応する復号された予測画像データの画素値をそのままクリッピング処理部４５に出力する。
【０１７２】
ステップＳ１５８において、クリッピング処理部４５は、レンジブロックBｉｊのすべての画素値についてクリッピング処理し、復号画像データとして出力する。
【０１７３】
ステップＳ１４７，Ｓ１５１，Ｓ１５２、およびＳ１５７の処理は、より詳細には、図２０で示すように、量子化値に対してダイナミックレンジDRと所定の係数β（経験的にβ＝1/2程度が妥当な値であることが分かっている）を乗じて逆量子化することにより残差成分をダイナミックレンジDRに対して適応的に求め、この残差成分に復号された予測画像データを加算することで、復号画像データをより正確に再現することが可能となる。
【０１７４】
また、図１３で示したように２ビットのADRC処理においては、レンジブロックのダイナミックレンジDRが所定の最小値よりも小さいときは、復号部２２には、転送されてこないので、復号に係る演算量を抑制することができ、処理を高速化することが可能となる。
【０１７５】
以上の処理においては、ADRC処理における量子化コードは2ビットの場合について説明してきたが、これに限らず、それ以外のビット数で量子化コードを設定するようにしても良い。また、レンジブロックとドメインブロックの設定についても、図９乃至図１１で示したような設定に限らず、これ以外の画素数のレンジブロック、および、ドメインブロックでもよく、これ以外の数のレンジブロック、および、ドメインブロックの数であってもよい。
【０１７６】
また、以上の例においては、残差成分適応量子化処理において、ダイナミックレンジDRに所定の係数αを乗じて量子化値を設定する場合の例について説明してきたが、この係数αは必ずしも一定の値である必要は無く、元画像データと予測画像データのS/Nに応じて適応的に設定される値とするようにしても良い。図２１は、係数αを適応的に求めることができるようにした符号化部２１の構成を示している。このとき残差成分適応量子化部３４には、元画像データ、残差成分、および、予測画像データが入力されることになる。図２２は、このときの残差成分適応量子化部３４に設けられる係数αの演算部の構成を示している。
【０１７７】
α値可変量子化部１３１は、α値を取りうる値の範囲で変化させ、上述と同様にDR×αを閾値としてADRC処理による量子化を実行し、量子化コードを逆量子化部１３２に出力する。逆量子化部１３２は、α可変量子化部１３１より入力された残差成分の量子化コードを量子化コードに対応する量子化値に係数βを乗じて逆量子化し、残差成分を生成し、加算器１３３に出力する。加算器１３３は、逆量子化された残差成分と予測画像データを加算して復号画像データを生成し、S/N算出部１３４に出力する。S/N算出部１３４は、元画像データと復号画像データのS/Nを算出し、S/N評価部１３５に出力する。S/N評価部１３５は、S/N算出部１３４より入力されたS/Nを係数αに対応させて記憶し、全ての係数αについて演算が終了したとき、S/Nが最大となる係数αを量子化に使用する係数として選択する。
【０１７８】
次に、図２２で示す係数αの演算部が、S/N最大となる係数αを求める処理について説明する。
【０１７９】
ステップＳ１９１において、α値可変量子化部１３１は、係数αを初期化する。すなわち、α値可変量子化部１３１は、係数αを取りうる最小値の値に設定する例えば、０≦α≦１とした場合（今の場合）、係数αが０に設定される。
【０１８０】
ステップＳ１９２において、α値可変量子化部１３１は、ダイナミックレンジDRに係数αを乗じた値を閾値として、各残差成分を量子化し、量子化した残差成分を逆量子化部１３２に出力する。この量子化の処理については、例えば、図１２で示すような方法であり、その説明は省略する。
【０１８１】
ステップＳ１９３において、逆量子化部１３２は、ステップＳ１９２の処理で量子化された量子化値にダイナミックレンジDRと所定の係数βを乗じて残差成分を逆量子化し、逆量子化された残差成分を加算器１３３に出力する。ステップＳ１９４において、加算器１３３は、逆量子化された残差成分と、予測画像データを加算し、復号画像データを生成しS/N算出部１３４に出力する。
【０１８２】
ステップＳ１９５において、S/N算出部１３４は、入力された元画像データと復号画像データからS/Nを算出し、S/N評価部１３５に出力する。ステップＳ１９６において、S/N評価部１３５は、今現在の係数αの値に対応付けてS/Nを記憶する。ステップＳ１９７において、S/N評価部１３５は、取り得る全ての係数αの値についてS/Nが求められたか否かを判定し、例えば、全ての係数αについてS/Nが求められていないと判定した場合、その処理は、ステップＳ１９８に進む。
【０１８３】
ステップＳ１９８において、α値可変量子化部１３１は、係数αの値を所定のステップ幅でインクリメントし、その処理は、ステップＳ１９２に戻り、それ以降の処理が繰り返される。すなわち、全ての取り得る全ての係数αについて、S/Nが求められるまで、ステップＳ１９２乃至ステップＳ１９８の処理が繰り返される。
【０１８４】
ステップＳ１９７において、全ての取り得る係数αの値について、S/Nが求められたと判定された場合、ステップＳ１９９において、S/N評価部１３５は、演算されたS/Nが最大値となる係数αを残差成分適応量子化処理に使用する係数として設定する。
【０１８５】
以上の処理により設定された係数αを使用することにより、S/Nの最適な係数αにより残差成分を量子化することができるので、元画像データをより忠実に、復号画像データとして再現することが可能となる。
【０１８６】
また、残差成分適応逆量子化部４３における、逆量子化についてもダイナミックレンジDRに応じて適応的に設定するようにすることで逆量子化の精度を高めることできる。すなわち、図２４で示すように、フラクタル符号化処理による残差成分は、ダイナミックレンジDRにより存在分布に偏りが生じることが知られている。そこで、複数の画像データからダイナミックレンジDRと残差成分の存在の分布を求め、ダイナミックレンジDRと残差成分の存在分布に応じて適応的に逆量子化するようにしても良い。例えば、ダイナミックレンジDR＝３０における残差成分の存在分布のピーク値が、例えば、＋２０であるような場合、逆量子化においても復号された予測画像データのダイナミックレンジDR＝３０のときには、＋２０に逆量子化すると言ったような方法である。このような処理により、存在度数の高い値を逆量子化により求めることができるので、より高い精度で復号画像データを生成することができる。
【０１８７】
さらに、図２５で示すように、DRC（Digital Reality Creation）処理部１４１とフラクタル画像用係数セットが記憶されたメモリ１４２をさらに設けるようにしてもよい。この場合、DRC処理部１４１は、メモリ１４２よりフラクタル画像用係数セットを読み出し、高画質化復号部２２より生成された復号画像データの、例えば、水平解像度を向上させるとき、補間すべき画素値をフラクタル画像用係数セットを用いて演算して求めるようにすることで解像度を向上させるようにすることができ、復号画像データの画質を向上させるようにすることが可能となる。
【０１８８】
また、以上の例においては、符号化処理、および、復号処理の手法としてフラクタル符号化処理、および、フラクタル復号処理を例として説明してきたが、符号化、および、復号化処理の手法はこれ以外のものであってもよく、例えば、JPEG（Joint Photographic Experts Group）などを使用した符号化処理、および、復号処理であっても良い。
【０１８９】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行させることが可能な、例えば汎用のパーソナルコンピュータなどに記録媒体からインストールされる。
【０１９０】
図２６，図２７は、符号化部２１、および、復号部２２をソフトウェアにより実現する場合のパーソナルコンピュータの一実施の形態の構成を示している。パーソナルコンピュータのCPU２０１，３０１は、パーソナルコンピュータの動作の全体を制御する。また、CPU２０１，３０１は、バス２０４，３０４および入出力インタフェース２０５，３０５を介してユーザからキーボードやマウスなどからなる入力部２０６，３０６から指令が入力されると、それに対応してROM(Read Only Memory)２０２，３０２に格納されているプログラムを実行する。あるいはまた、CPU２０１，３０１は、ドライブ２１０，３１０に接続された磁気ディスク２１１，３１１、光ディスク２１２，３１２、光磁気ディスク２１３，３１３、または半導体メモリ２１４，３１４から読み出され、記憶部２０８，３０８にインストールされたプログラムを、RAM(Random Access Memory)２０３，３０３にロードして実行する。これにより、上述した画像処理装置の機能が、ソフトウェアにより実現されている。さらに、CPU２０１，３０１は、通信部２０９，３０９を制御して、外部と通信し、データの授受を実行する。
【０１９１】
プログラムが記録されている記録媒体は、図２６，図２７に示すように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク２１１，３１１（フレキシブルディスクを含む）、光ディスク２１２，３１２（CD-ROM(Compact Disc-Read Only Memory)，DVD（Digital Versatile Disc）を含む）、光磁気ディスク２１３，３１３（MD（Mini-Disc）を含む）、もしくは半導体メモリ２１４，３１４などよりなるパッケージメディアにより構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM２０２，３０２や、記憶部２０８，３０８に含まれるハードディスクなどで構成される。
【０１９２】
尚、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理は、もちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理を含むものである。
【０１９３】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０１９４】
【発明の効果】
本発明の第１の情報処理装置および方法、並びにプログラムによれば、入力画像データをフラクタル符号化し、再度復号したデータである予測画像データを生成し、予測画像データをフラクタル符号化し、入力画像データと予測画像データとの差分データを演算し、演算した差分データを、予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と差分データとを比較し、比較結果を量子化値とすることにより適応的に量子化し、フラクタル符号化した予測画像データと、適応的に量子化した差分データとを符号化データとして出力するようにした。
【０１９５】
本発明の第２の情報処理装置および方法、並びにプログラムによれば、元画像データをフラクタル符号化し、再度復号した予測画像データをフラクタル符号化した符号化画像データと、予測画像データの、ブロック毎の画素値の最大値と最小値との差分であるダイナミックレンジに対応した閾値と、元画像データと予測画像データとの差分データとを比較して、比較結果を量子化値とすることにより適応的に量子化した差分データとからなる符号化データより、符号化画像データと量子化された差分データを分離し、分離した符号化画像データを、予測画像データにフラクタル復号し、量子化した差分データを、予測画像データの、ダイナミックレンジに対応して、適応的に逆量子化し、予測画像データと、逆量子化された差分データに基づいて、復号画像データを生成し、生成した復号画像データを出力するようにした。
【０１９６】
いずれにおいても、結果として、画像データの符号化処理、および、復号処理の高速化を実現することが可能となり、符号化された画像データを高画質で復号することが可能になる。
【図面の簡単な説明】
【図１】本発明を適用した画像転送システムの一実施の形態の構成を示す図である。
【図２】図１の高速フラクタル符号化部の構成を示すブロック図である。
【図３】図１のフラクタル復号部の構成を示すブロック図である。
【図４】フィルタ生成部を説明するブロック図である。
【図５】復号画像生成適応フィルタを生成する学習処理を説明するフローチャートである。
【図６】復号画像生成適応フィルタを生成する学習処理を説明する図である。
【図７】符号化処理を説明するフローチャートである。
【図８】残差成分適応量子化処理を説明するフローチャートである。
【図９】レンジブロックとドメインブロックを説明する図である。
【図１０】レンジブロックを説明する図である。
【図１１】ドメインブロックのサーチ範囲を説明する図である。
【図１２】  ADRCの処理を説明する図である。
【図１３】  ADRCの量子化コードと残差成分の量子化値の関係を説明する図である。
【図１４】  ADRCの処理を説明する図である。
【図１５】  ADRCの処理を説明する図である。
【図１６】フラクタル符号化処理を説明するフローチャートである。
【図１７】復号処理を説明するフローチャートである。
【図１８】フラクタル復号処理を説明するフローチャートである。
【図１９】残差成分適応量子化処理を説明するフローチャートである。
【図２０】残差成分適応量子化処理を説明するフローチャートである。
【図２１】係数αの最適値を設定する構成を説明する図である。
【図２２】係数αの最適値を設定する構成を説明する図である。
【図２３】係数αの最適値を設定する処理を説明するフローチャートである。
【図２４】ダイナミックレンジに対応した逆量子化処理を説明する図である。
【図２５】  DRC処理部を復号部２２に設けた構成を説明する図である。
【図２６】媒体を説明する図である。
【図２７】媒体を説明する図である。
【符号の説明】
１１  画像転送システム，２１  符号化部，２２  復号部，３１  復号画像生成適応フィルタ，３２  高速フラクタル符号化部，３３  加算器，３４  残差成分適応量子化部，３５  伝送フォーマット符号化部，４１  伝送パラメータ分離部，４２  残差成分適応量子化部，４３  残差成分適応逆量子化部，４４  加算器，４５  クリッピング処理部，６１  レンジブロック化部，６２  ADRCエンコーダ，６３  比較部，６４  最小値判定部，６５  サーチエリア切り出し部，６６  ドメインブロック化部，６７  ADRCエンコーダ，６８  1/4縮小部，６９  回転鏡像処理部，７０  制御部，８１  ドメインブロック切り出し部，８２  ADRCエンコーダ，８３  1/4縮小部，８４  回転鏡像処理部，８５  ADRCエンコーダ，８６  メモリ，８７  演算部，８８  制御部，１０１  フィルタ生成部，１１１  フラクタル符号化部，１１２  フラクタル復号部，１１３  学習部，１３１  α値化変量子化部，１３２  逆量子化部，１３３  加算器，１３４  S/N算出部，１３５  S/N評価部，１４１  DRC処理部，１４２  メモリ
【図１】
0004051696.tif 000006
【図２】
0004051696.tif 000007
【図３】
0004051696.tif 000008
【図４】
0004051696.tif 000009
【図５】
0004051696.tif 000010
【図６】
0004051696.tif 000011
【図７】
0004051696.tif 000012
【図８】
0004051696.tif 000013
【図９】
0004051696.tif 000014
【図１０】
0004051696.tif 000015
【図１１】
0004051696.tif 000016
【図１２】
0004051696.tif 000017
【図１３】
0004051696.tif 000018
【図１４】
0004051696.tif 000019
【図１５】
0004051696.tif 000020
【図１６】
0004051696.tif 000021
【図１７】
0004051696.tif 000022
【図１８】
0004051696.tif 000023
【図１９】
0004051696.tif 000024
【図２０】
0004051696.tif 000025
【図２１】
0004051696.tif 000026
【図２２】
0004051696.tif 000027
【図２３】
0004051696.tif 000028
【図２４】
0004051696.tif 000029
【図２５】
0004051696.tif 000030
【図２６】
0004051696.tif 000031
【図２７】
0004051696.tif 000032