(57)【特許請求の範囲】
【請求項１】
画像データの周波数成分を高域成分と低域成分に分解する処理を、逆方向の変換により変換後の係数データから元の前記画像データを復元可能な可逆な方法で垂直方向および水平方向に階層的に行い、周波数帯域毎の係数データからなるサブバンドを生成する分析フィルタ処理を、少なくとも最低域成分のサブバンドの１ライン分の係数データを生成するのに必要なライン数分の前記画像データを含み、前記画像データの画像を縦方向に複数に分割するラインブロック毎に行う分析フィルタ手段と、
前記分析フィルタ手段による前記分析フィルタ処理により生成された前記係数データを符号化する符号化手段と、
前記分析フィルタ手段による前記分析フィルタ処理と前記符号化手段による前記係数データの符号化処理とが可逆方式により行われたか否かを示す可逆非可逆識別情報を生成する生成手段と
を備える情報処理装置。
【請求項２】
前記符号化手段により符号化されて得られる前記符号化データに、前記生成手段により生成された前記可逆非可逆識別情報を付加する付加手段をさらに備える
請求項１に記載の情報処理装置。
【請求項３】
前記付加手段により前記可逆非可逆識別情報を付加された前記符号化データを送信する送信手段をさらに備える
請求項２に記載の情報処理装置。
【請求項４】
前記生成手段は、前記分析フィルタ手段が用いる分析フィルタのフィルタタイプを示すフィルタタイプ情報をさらに生成する
請求項１乃至請求項３のいずれかに記載の情報処理装置。
【請求項５】
前記生成手段は、前記符号化手段による符号化の処理単位を示す処理単位情報をさらに生成する
請求項１乃至請求項４のいずれかに記載の情報処理装置。
【請求項６】
前記生成手段は、前記分析フィルタ手段により生成された係数データの並び替えが行われたか否かを示す係数並び替え情報をさらに生成する
請求項１乃至請求項５のいずれかに記載の情報処理装置。
【請求項７】
前記分析フィルタ手段は、整数精度で演算を行う整数型の分析フィルタを用いて前記分析フィルタ処理を行うか、若しくは、固定小数点精度で演算を行う固定小数点型の分析フィルタ処理を用いて前記分析フィルタを行い、
前記生成手段は、前記分析フィルタ手段の分析フィルタ処理において前記整数型の分析フィルタが用いられた場合、前記分析フィルタ処理が可逆方式により行われたことを示す値の可逆非可逆識別情報を生成し、前記分析フィルタ手段の分析フィルタ処理において前記固定小数点型の分析フィルタが用いられた場合、前記分析フィルタ処理が非可逆方式により行われたことを示す値の可逆非可逆識別情報を生成する
請求項１乃至請求項６のいずれかに記載の情報処理装置。
【請求項８】
前記分析フィルタ手段は、前記画像データのビットシフトを行わずに前記分析フィルタ処理を行うか、前記画像データのビットシフトを行ってから前記分析フィルタ処理を行い、
前記生成手段は、前記分析フィルタ手段により前記画像データのビットシフトが行われずに前記分析フィルタ処理が行われた場合、前記分析フィルタ処理が可逆方式により行われたことを示す値の可逆非可逆識別情報を生成し、前記分析フィルタ手段により前記画像データのビットシフトが行われてから前記分析フィルタ処理が行われた場合、前記分析フィルタ処理が非可逆方式により行われたことを示す値の可逆非可逆識別情報を生成する
請求項１乃至請求項７のいずれかに記載の情報処理装置。
【請求項９】
前記分析フィルタ手段により高域成分から低域成分の順に生成された係数データを、低域成分から高域成分の順に並び替える並び替え手段をさらに備え、
前記符号化手段は、前記並び替え手段により並び替えられた前記係数データを符号化する
請求項１乃至請求項８のいずれかに記載の情報処理装置。
【請求項１０】
情報処理装置の情報処理方法において、
前記情報処理装置は、
分析フィルタ手段と、
符号化手段と、
生成手段と
を備え、
前記分析フィルタ手段が、画像データの周波数成分を高域成分と低域成分に分解する処理を、逆方向の変換により変換後の係数データから元の前記画像データを復元可能な可逆な方法で垂直方向および水平方向に階層的に行い、周波数帯域毎の係数データからなるサブバンドを生成する分析フィルタ処理を、少なくとも最低域成分のサブバンドの１ライン分の係数データを生成するのに必要なライン数分の前記画像データを含み、前記画像データの画像を縦方向に複数に分割するラインブロック毎に行い、
前記符号化手段が、前記分析フィルタ処理により生成された前記係数データを符号化し、
前記生成手段が、前記分析フィルタ処理と前記係数データの符号化処理とが可逆方式により行われたか否かを示す可逆非可逆識別情報を生成する
情報処理方法。
【請求項１１】
符号化データと、前記符号化データを生成する際の分析フィルタ処理および符号化処理が可逆方式により行われたか否かを示す可逆非可逆識別情報とを取得する取得手段と、
前記取得手段により取得された前記可逆非可逆識別情報を解析する解析手段と、
前記解析手段による解析の結果に基づいて、前記取得手段により取得された前記符号化データを、前記符号化データを生成した符号化処理に対応する方法で復号処理を行う復号手段と、
前記解析手段による解析の結果に基づいて、前記復号手段により前記符号化データが復号されて得られた係数データに対して、高域成分の係数データと低域成分の係数データとを合成する処理を垂直方向および水平方向に階層的に行う合成フィルタ処理を行い、前記合成フィルタ処理の逆方向の変換処理である分析フィルタ処理により少なくとも最低域成分のサブバンドの１ライン分の係数データを生成するのに必要なライン数分の前記画像データを含み、前記画像データの画像を縦方向に複数に分割するラインブロックを生成する合成フィルタ手段と
を備える情報処理装置。
【請求項１２】
前記合成フィルタ手段は、
前記解析手段による解析の結果、前記分析フィルタ処理が可逆方式により行われたと判定された場合、整数精度で演算を行う整数型の合成フィルタを用いて前記合成フィルタ処理を行い、
前記解析手段による解析の結果、前記分析フィルタ処理が非可逆方式により行われたと判定された場合、固定小数点精度で演算を行う固定小数点型の合成フィルタを用いて前記合成フィルタ処理を行う
請求項１１に記載の情報処理装置。
【請求項１３】
前記合成フィルタ手段は、
前記解析手段による解析の結果、前記分析フィルタ処理が可逆方式により行われたと判定された場合、前記合成フィルタ処理後に、得られた画像データをビットシフトせずに出力し、
前記解析手段による解析の結果、前記分析フィルタ処理が非可逆方式により行われたと判定された場合、前記合成フィルタ処理後に、得られた画像データをビットシフトしてから出力する
請求項１１または請求項１２に記載の情報処理装置。
【請求項１４】
前記取得手段は、前記符号化データの生成の際に用いられた分析フィルタのフィルタタイプを示すフィルタタイプ情報をさらに取得する
請求項１１乃至請求項１３のいずれかに記載の情報処理装置。
【請求項１５】
前記取得手段は、前記符号化データの生成の際に係数データの並び替えが行われたか否かを示す係数並び替え情報をさらに取得する
請求項１１乃至請求項１４のいずれかに記載の情報処理装置。
【請求項１６】
前記取得手段は、前記符号化データを生成する符号化の処理単位を示す処理単位情報をさらに取得する
請求項１１乃至請求項１５のいずれかに記載の情報処理装置。
【請求項１７】
情報処理装置の情報処理方法において、
前記情報処理装置は、
取得手段と、
解析手段と、
復号手段と、
合成フィルタ手段と
を備え、
前記取得手段が、符号化データと、前記符号化データを生成する際の分析フィルタ処理および符号化処理が可逆方式により行われたか否かを示す可逆非可逆識別情報とを取得し、
前記解析手段が、取得された前記可逆非可逆識別情報を解析し、
前記復号手段が、その解析の結果に基づいて、取得された前記符号化データを、前記符号化データを生成した符号化処理に対応する方法で復号処理を行い、
前記合成フィルタ手段が、その解析の結果に基づいて、符号化データが復号されて得られた係数データに対して、高域成分の係数データと低域成分の係数データとを合成する処理を垂直方向および水平方向に階層的に行う合成フィルタ処理を行い、前記合成フィルタ処理の逆方向の変換処理である分析フィルタ処理により少なくとも最低域成分のサブバンドの１ライン分の係数データを生成するのに必要なライン数分の前記画像データを含むラインブロックを生成する
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法に関し、特に、画像データを、高品質かつ低遅延に伝送することができるようにした情報処理装置および方法に関する。
【背景技術】
【０００２】
従来、双方向テレビジョン会議システムのような映像や音声を用いたコミュニケーションシステムや、放送局などにおける非圧縮環境との混在システム等において、映像や音声のデータをより遅延無く伝送することが求められている。近年、特に、映像や音声の高品質化に伴いそれらのデータ量も増大しており、伝送の際の画像圧縮は必須となっているが、その画像圧縮による遅延時間の増大を抑制し、より低遅延にデータ伝送を行うことが求められている。
【０００３】
例えば、MPEG（Moving Picture Experts Group）やＨ．２６ｘ系の圧縮方式では動き予測により圧縮率を高めているが、動き予測を行うとアルゴリズムが複雑になり、その処理時間はフレームサイズの２乗に比例して大きくなるため、原理的に数フレームの符号化遅延が発生する。双方向実時間通信を行う際には、許容遅延時間２５０ｍｓぎりぎりの遅延時間となり、無視できない大きさである。
【０００４】
また、JPEG（Joint Photographic Experts Group）２０００に代表されるような、イントラフレームコーデックはフレーム間の差分情報を利用しないため、上述したような遅延は発生しない。しかしながら、フレーム単位での圧縮となるため、エンコード開始まで、最低でも１フレームは待つ必要がある。現在の一般的なシステムでは１秒間に３０フレームであることが多いため、エンコード開始までに１６ｍｓ程度の待ち時間が必要となる。
【０００５】
また、映像や音声の高品質化に伴い、画像圧縮の高品質化も求められている。ＪＰＥＧ２０００は、ウェーブレット変換に、ビットプレーン単位のビットモデリングと算術符号化による高能率エントロピ符号化を組み合わせた圧縮符号化方式を採用している。例えば、特許文献１には、より符号化効率を向上させたウェーブレット変換方法が記載されている。
【０００６】
【特許文献１】特開平９−１３０８００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の方法では、高品質かつ低遅延に画像データを伝送することは困難であった。
【０００８】
本発明は、このような従来の実情に鑑みて提案されたものであり、画像データを、元のデータを復元可能な可逆な方法で符号化し、低遅延に伝送させることができるようにするものである。
【課題を解決するための手段】
【０００９】
本発明の一側面は、画像データの周波数成分を高域成分と低域成分に分解する処理を、逆方向の変換により変換後の係数データから元の前記画像データを復元可能な可逆な方法で垂直方向および水平方向に階層的に行い、周波数帯域毎の係数データからなるサブバンドを生成する分析フィルタ処理を、少なくとも最低域成分のサブバンドの１ライン分の係数データを生成するのに必要なライン数分の前記画像データを含み、前記画像データの画像を縦方向に複数に分割するラインブロック毎に行う分析フィルタ手段と、前記分析フィルタ手段による前記分析フィルタ処理により生成された前記係数データを符号化する符号化手段と、前記分析フィルタ手段による前記分析フィルタ処理と前記符号化手段による前記係数データの符号化処理とが可逆方式により行われたか否かを示す可逆非可逆識別情報を生成する生成手段とを備える情報処理装置である。
【００１０】
前記符号化手段により符号化されて得られる前記符号化データに、前記生成手段により生成された前記可逆非可逆識別情報を付加する付加手段をさらに備えることができる。
【００１１】
前記付加手段により前記可逆非可逆識別情報を付加された前記符号化データを送信する送信手段をさらに備えることができる。
【００１２】
前記生成手段は、前記分析フィルタ手段が用いる分析フィルタのフィルタタイプを示すフィルタタイプ情報をさらに生成することができる。
【００１３】
前記生成手段は、前記符号化手段による符号化の処理単位を示す処理単位情報をさらに生成することができる。
【００１４】
前記生成手段は、前記分析フィルタ手段により生成された係数データの並び替えが行われたか否かを示す係数並び替え情報をさらに生成することができる。
【００１５】
前記分析フィルタ手段は、整数精度で演算を行う整数型の分析フィルタを用いて前記分析フィルタ処理を行うか、若しくは、固定小数点精度で演算を行う固定小数点型の分析フィルタ処理を用いて前記分析フィルタを行い、前記生成手段は、前記分析フィルタ手段の分析フィルタ処理において前記整数型の分析フィルタが用いられた場合、前記分析フィルタ処理が可逆方式により行われたことを示す値の可逆非可逆識別情報を生成し、前記分析フィルタ手段の分析フィルタ処理において前記固定小数点型の分析フィルタが用いられた場合、前記分析フィルタ処理が非可逆方式により行われたことを示す値の可逆非可逆識別情報を生成することができる。
前記分析フィルタ手段は、前記画像データのビットシフトを行わずに前記分析フィルタ処理を行うか、前記画像データのビットシフトを行ってから前記分析フィルタ処理を行い、前記生成手段は、前記分析フィルタ手段により前記画像データのビットシフトが行われずに前記分析フィルタ処理が行われた場合、前記分析フィルタ処理が可逆方式により行われたことを示す値の可逆非可逆識別情報を生成し、前記分析フィルタ手段により前記画像データのビットシフトが行われてから前記分析フィルタ処理が行われた場合、前記分析フィルタ処理が非可逆方式により行われたことを示す値の可逆非可逆識別情報を生成することができる。
前記分析フィルタ手段により高域成分から低域成分の順に生成された係数データを、低域成分から高域成分の順に並び替える並び替え手段をさらに備え、前記符号化手段は、前記並び替え手段により並び替えられた前記係数データを符号化することができる。
【００１６】
本発明の一側面はまた、分析フィルタ手段が、画像データの周波数成分を高域成分と低域成分に分解する処理を、逆方向の変換により変換後の係数データから元の前記画像データを復元可能な可逆な方法で垂直方向および水平方向に階層的に行い、周波数帯域毎の係数データからなるサブバンドを生成する分析フィルタ処理を、少なくとも最低域成分のサブバンドの１ライン分の係数データを生成するのに必要なライン数分の前記画像データを含み、前記画像データの画像を縦方向に複数に分割するラインブロック毎に行い、符号化手段が、前記分析フィルタ処理により生成された前記係数データを符号化し、生成手段が、前記分析フィルタ処理と前記係数データの符号化処理とが可逆方式により行われたか否かを示す可逆非可逆識別情報を生成する情報処理方法である。
【００１７】
本発明の他の側面は、符号化データと、前記符号化データを生成する際の分析フィルタ処理および符号化処理が可逆方式により行われたか否かを示す可逆非可逆識別情報とを取得する取得手段と、前記取得手段により取得された前記可逆非可逆識別情報を解析する解析手段と、前記解析手段による解析の結果に基づいて、前記取得手段により取得された前記符号化データを、前記符号化データを生成した符号化処理に対応する方法で復号処理を行う復号手段と、前記解析手段による解析の結果に基づいて、前記復号手段により前記符号化データが復号されて得られた係数データに対して、高域成分の係数データと低域成分の係数データとを合成する処理を垂直方向および水平方向に階層的に行う合成フィルタ処理を行い、前記合成フィルタ処理の逆方向の変換処理である分析フィルタ処理により少なくとも最低域成分のサブバンドの１ライン分の係数データを生成するのに必要なライン数分の前記画像データを含み、前記画像データの画像を縦方向に複数に分割するラインブロックを生成する合成フィルタ手段とを備える情報処理装置である。
前記合成フィルタ手段は、前記解析手段による解析の結果、前記分析フィルタ処理が可逆方式により行われたと判定された場合、整数精度で演算を行う整数型の合成フィルタを用いて前記合成フィルタ処理を行い、前記解析手段による解析の結果、前記分析フィルタ処理が非可逆方式により行われたと判定された場合、固定小数点精度で演算を行う固定小数点型の合成フィルタを用いて前記合成フィルタ処理を行うことができる。
前記合成フィルタ手段は、前記解析手段による解析の結果、前記符号化データが可逆方式により生成されたと判定された場合、前記合成フィルタ処理後に、得られた画像データをビットシフトせずに出力し、前記解析手段による解析の結果、前記符号化データが非可逆方式により生成されたと判定された場合、前記合成フィルタ処理後に、得られた画像データをビットシフトしてから出力することができる。
前記取得手段は、前記符号化データの生成の際に用いられた分析フィルタのフィルタタイプを示すフィルタタイプ情報をさらに取得することができる。
前記取得手段は、前記符号化データの生成の際に係数データの並び替えが行われたか否かを示す係数並び替え情報をさらに取得することができる。
前記取得手段は、前記符号化データを生成する符号化の処理単位を示す処理単位情報をさらに取得することができる。
【００１８】
本発明の他の側面はまた、取得手段が、符号化データと、前記符号化データを生成する際の分析フィルタ処理および符号化処理が可逆方式により行われたか否かを示す可逆非可逆識別情報とを取得し、解析手段が、取得された前記可逆非可逆識別情報を解析し、復号手段が、その解析の結果に基づいて、取得された前記符号化データを、前記符号化データを生成した符号化処理に対応する方法で復号処理を行い、合成フィルタ手段が、その解析の結果に基づいて、符号化データが復号されて得られた係数データに対して、高域成分の係数データと低域成分の係数データとを合成する処理を垂直方向および水平方向に階層的に行う合成フィルタ処理を行い、前記合成フィルタ処理の逆方向の変換処理である分析フィルタ処理により少なくとも最低域成分のサブバンドの１ライン分の係数データを生成するのに必要なライン数分の前記画像データを含むラインブロックを生成する情報処理方法である。
【００１９】
本発明の一側面においては、画像データの周波数成分を高域成分と低域成分に分解する処理が、逆方向の変換により変換後の係数データから元の画像データを復元可能な可逆な方法で垂直方向および水平方向に階層的に行われ、周波数帯域毎の係数データからなるサブバンドが生成される分析フィルタ処理が、少なくとも最低域成分のサブバンドの１ライン分の係数データを生成するのに必要なライン数分の画像データを含み、画像データの画像を縦方向に複数に分割するラインブロック毎に行われ、分析フィルタ処理により生成された係数データが符号化され、分析フィルタ処理と係数データの符号化処理とが可逆方式により行われたか否かを示す可逆非可逆識別情報が生成される。
【００２０】
本発明の他の側面においては、符号化データと、その符号化データを生成する際の分析フィルタ処理および符号化処理が可逆方式により行われたか否かを示す可逆非可逆識別情報とが取得され、取得された可逆非可逆識別情報が解析され、その解析の結果に基づいて、取得された符号化データに対して、符号化データを生成した符号化処理に対応する方法で復号処理が行われ、その解析の結果に基づいて、符号化データが復号されて得られた係数データに対して、高域成分の係数データと低域成分の係数データとを合成する処理を垂直方向および水平方向に階層的に行う合成フィルタ処理が行われ、その合成フィルタ処理の逆方向の変換処理である分析フィルタ処理により少なくとも最低域成分のサブバンドの１ライン分の係数データを生成するのに必要なライン数分の画像データを含むラインブロックが生成される。
【発明の効果】
【００２１】
本発明によれば、画像データを伝送することができる。特に、画像データを、高品質かつ低遅延に伝送することができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の実施の形態について説明する。
【００２３】
図１は、本発明を適用した符号化装置の構成例を示すブロック図である。
【００２４】
図１において、符号化装置１００は、画像データを符号化する装置である。符号化装置１００は、ベースバンドの画像データを符号化して得られる符号化データを復号することにより、符号化前のベースバンドの画像データを復元することができるように符号化する。つまり、符号化装置１００は、順方向と逆方向の変換が完全に保証される可逆な方法により画像データを符号化する。これにより符号化装置１００は、復号後においても高品質な画像データが得られるように画像データを符号化することができる。また、符号化装置１００は、画像データを後述するプレシンクト単位で符号化する。これにより符号化装置１００は、画像データを符号化して復号するまでの遅延時間を低減させることができる。
【００２５】
符号化装置１００は、ウェーブレット変換部１０１、途中計算用バッファ部１０２、およびエントロピ符号化部１０３を有する。
【００２６】
符号化装置１００に入力された画像データは、ウェーブレット変換部１０１を介して途中計算用バッファ部１０２に一時的に溜め込まれる。ウェーブレット変換部１０１は、途中計算用バッファ部１０２に溜め込まれた画像データに対して、順方向と逆方向の変換が完全に保証された可逆な方法でデータ変換を行う可逆フィルタを用いてウェーブレット変換を施す。ウェーブレット変換部１０１は、途中計算用バッファ部１０２から画像データを読み出して可逆な分析フィルタによりフィルタ処理を施して低域成分および高域成分の係数のデータを生成し、生成された係数データを途中計算用バッファ部１０２に格納する。
【００２７】
ウェーブレット変換部１０１は、水平分析フィルタと垂直分析フィルタとを有し、画像データ群に対して、画面水平方向と画面垂直方向の両方について可逆な分析フィルタ処理を行う。ウェーブレット変換部１０１は、途中計算用バッファ部１０２に格納された低域成分の係数データを再度読み出し、読み出した係数データに対して分析フィルタによるフィルタ処理を施して、高域成分および低域成分の係数のデータをさらに生成する。生成された係数データは、途中計算用バッファ部１０２に格納される。つまり、ウェーブレット変換部１０１は、入力データを低域成分と高域成分に分離するフィルタ処理を低域成分に対して再帰的に所定回数繰り返す。
【００２８】
ウェーブレット変換部１０１は、この処理を繰り返して分解レベルが所定レベルに達したら、途中計算用バッファ部１０２から係数データを読み出し、読み出された係数データをエントロピ符号化部１０３に書き込む。
【００２９】
なお、ウェーブレット変換部１０１および途中計算用バッファ部１０２を併せて分析フィルタ処理部１１１とも称する。
【００３０】
エントロピ符号化部１０３は、ウェーブレット変換部１０１（分析フィルタ処理部１１１）より供給される係数データを、例えば、ハフマン符号化や算術符号化といった所定のエントロピ符号化方式を用い、順方向と逆方向の変換が完全に保証された可逆な方法で符号化する。つまり、エントロピ符号化部１０３は、ベースバンドの画像データを符号化して得られる符号化データを復号することにより、符号化前のベースバンドの画像データを復元することができるように符号化する。
【００３１】
このとき、エントロピ符号化部１０３は、より多くの情報量を使って符号化処理を行うことにより符号化の効率を向上させる。特に、可逆の方法で符号化処理を行う場合、遅延時間よりも画像圧縮の高品質化や高効率化が優先されることが多い。そのために、エントロピ符号化部１０３は、少なくとも「２プレシンクト」以上の、予め定められた所定の数のプレシンクト分の係数データが得られるまで待機し、そのプレシンクト数毎に係数データをエントロピ符号化する。このように複数のプレシンクト数分の係数データを用いて符号化を行うことにより、エントロピ符号化部１０３は、１プレシンクト毎に符号化を行う場合よりも、高効率かつ高品質に画像を圧縮することができる。
【００３２】
エントロピ符号化部１０３は、生成した符号化データを符号化装置１００の外部に出力する。
【００３３】
次に、図１のウェーブレット変換部１０１で行われる処理について、より詳細に説明する。先ず、ウェーブレット変換部１０１に入力されるデータについて説明する。
【００３４】
ウェーブレット変換部１０１においては、可逆に分析フィルタ処理を行うために、例えば、整数精度で計算を行う、後述する整数型の５×３フィルタが用いられる。ウェーブレット変換部１０１は、入力データの最下位のビットまでを整数部として用いる。
【００３５】
図２は、ウェーブレット変換部１０１の入力データの例を示す模式図である。図２において、各四角は入力データの各ビットを示し、図中左端が最上位ビットを示し、図中右端が最下位ビットを示す。
【００３６】
また、図２に示される点Ｐは、小数点の位置を示す。図２においてはこの点Ｐが右端（最下位側）に存在する。また、この整数精度の計算では、最上位側（図中左端側）の１ビットが、符号（＋／−）を示すビットとして利用される。
【００３７】
次に、ウェーブレット変換について、概略的に説明する。図３は、画像データに対するウェーブレット変換の演算の構成例を模式的に示す図である。この図３の例は、幾つかある手法の中で最も一般的なウェーブレット変換であるオクターブ分割を複数レベルに亘って行う構成例を示している。なお、この図３の場合は、レベル数が３（レベル１乃至レベル３）であり、画像信号を低域と高域に分割し、且つ低域成分のみを階層的に分割する構成を取っている。また図３では、便宜上１次元の信号（例えば画像の水平成分）についてのウェーブレット変換を例示しているが、これを２次元に拡張する（例えば画像の垂直成分に対しても適用する）ことで２次元画像信号に対応することができる。
【００３８】
図３に示されるウェーブレット変換部への入力画像信号１４０は、まずローパスフィルタ１３１（伝達関数Ｈ0(ｚ)）とハイパスフィルタ１３２（伝達関数Ｈ1(ｚ)）とによって帯域分割され、得られた低域成分と高域成分は、それぞれ対応するダウンサンプラ１３３ａおよびダウンサンプラ１３３ｂによって、解像度がそれぞれ２分の１倍に間引かれる（レベル１）。この時の出力がＬ成分１４１とＨ成分１４６の２つである。ここで、上記ＬはLowで低域、ＨはHighで高域を示す。この図３のローパスフィルタ１３１、ハイパスフィルタ１３２、ダウンサンプラ１３３ａ、およびダウンサンプラ１３３ｂによってレベル１の回路部１２１が構成されている。
【００３９】
上述したダウンサンプラ１３３ａ、およびダウンサンプラ１３３ｂによりそれぞれ間引かれた信号の内の低域成分、すなわちダウンサンプラ１３３ａからの信号のみが、さらに、レベル２の回路部１２２のローパスフィルタ及びハイパスフィルタによって帯域分割され、それぞれ対応するダウンサンプラによって、解像度をそれぞれ２分の１倍に間引かれる（レベル２）。これらのレベル２のローパスフィルタ、ハイパスフィルタ及びダウンサンプラから成る回路部１２２の構成は、上述したレベル１のローパスフィルタ１３１、ハイパスフィルタ１３２、ダウンサンプラ１３３ａ、およびダウンサンプラ１３３ｂから成る回路部１２１と同様である。
【００４０】
このような処理を所定のレベルまで行うことで、低域成分を階層的に帯域分割した帯域成分が順次生成されていくことになる。レベル２で生成された帯域成分は、LL成分１４２とLH成分１４５である。図３には、レベル３まで帯域分割する例が示されており、レベル２の回路部１２２のローパスフィルタ側のダウンサンプラからの出力は、上述した回路部１２１と同様な構成のレベル３の回路部１２３に供給される。このようにレベル３まで帯域分割した結果、LLL成分１４３、LLH成分１４４、LH成分１４５、Ｈ成分１４６が生成される。
【００４１】
以上のようなウェーブレット変換により、図４に概略的に示されるように、画像データを空間周波数の高い帯域と低い帯域とに分割する処理が、分割の結果得られる空間周波数の低い帯域のデータに対して再帰的に繰り返される。符号化装置１００は、このように分析フィルタ処理部１１１において空間周波数の低い帯域のデータをより小さな領域に追い込んでいくことにより、エントロピ符号化部１０３において効率的な圧縮符号化を行うことができるようにする。
【００４２】
なお、図４は、画像データの最低域成分領域に対する低域成分の領域Ｌおよび高域成分の領域Ｈへの分割処理を３回、繰り返し、分割の階層の総数を示す分割レベル＝３とした場合の例である。図４において、"Ｌ"および"Ｈ"は、それぞれ低域成分および高域成分を表し、"Ｌ"および"Ｈ"の順序は、前側が横方向（水平方向）に分割した結果の帯域を示し、後側が縦方向（垂直方向）に分割した結果の帯域を示す。また、"Ｌ"および"Ｈ"の前の数字は、その領域の階層を示しており、低域成分の階層ほど小さい値で表されている。この階層の最大値が、ウェーブレット変換のその時の分割レベル（分割数）を示す。
【００４３】
つまり、図４において「０ＬＬ」、「１ＨＬ」、「１ＬＨ」、および「１ＨＨ」が、図３のレベル３の分析フィルタ処理により（２ＬＬが分割されて）得られるサブバンドであり、図４において「２ＨＬ」、「２ＬＨ」、および「２ＨＨ」が、図３のレベル２の分析フィルタ処理により（１ＬＬが分割されて）得られるサブバンドであり、図４において、「３ＨＬ」、「３ＬＨ」、および「３ＨＨ」が、図３のレベル１の分析フィルタ処理により（ベースバンドの画像データが分割されて）得られるサブバンドである。
【００４４】
すなわち、図４の例では、「３ＨＨ」が最も低域成分の少ない（高域成分が最も多く含まれる）サブバンドであり、「０ＬＬ」が、最も低域成分を多く含むサブバンドである。
【００４５】
低域成分に対して繰り返し変換および分割を行うのは、画像のエネルギが低域成分に集中しているためである。このことは、図５のＡに一例が示される分割レベル＝１の状態から、図５のＢに一例が示される分割レベル＝３の状態のように分割レベルを進めていくに従って、図５のＢに示されるようにしてサブバンドが形成されていくことからも、理解される。図４の例の場合、ウェーブレット変換の分割レベルは３であり、この結果、１０個のサブバンドが形成されている。
【００４６】
ウェーブレット変換部５１は、通常、低域フィルタと高域フィルタとから構成されるフィルタバンクを用いて、上述のような処理を行う。なお、デジタルフィルタは、通常、複数タップ長のインパルス応答すなわちフィルタ係数を持っているため、フィルタ処理を行えるだけの入力画像データまたは係数データを予めバッファリングしておく必要がある。また、ウェーブレット変換を多段にわたって行う場合も同様に、前段で生成したウェーブレット変換係数を、フィルタ処理が行える数だけバッファリングしておく必要がある。
【００４７】
JPEG-2000 Part-1のＦＣＤ（Final Committee Draft）で規定されている整数精度型の５×３分析フィルタによる可逆な整数型ウェーブレット変換演算について説明する。図６は、整数精度型の５×３分析フィルタ（以下、整数型５×３分析フィルタとも称する）の演算を説明するための図であり、１次元の分析フィルタ処理を１回行い、図中左端の入力画像データを低域成分ｓと高域成分ｄとに変換する動作を示している。ここで、ｄmnをウェーブレット変換のレベルがｎのｍ番目の高域成分係数であるとする。同様に、ｓmnをウェーブレット変換のレベルがｎのｍ番目の低域成分係数であるとする。なお、ｎ＝０の場合は、図６にも示されるように、入力画像そのものである。
【００４８】
この図６に示すように、低域成分係数ｓの算出式は、一般的に、以下の式（１）のように表わすことができる。
【００４９】
ｓm+1n+1＝ｓm+1n＋((ｄmn+1＋ｄm+1n+1＋２)／４)・・・・・（１）
【００５０】
ここで、式中の１／４の演算は、ビットシフトによって実現でき、２ビット右シフトを「>>２」で表記するとき、上記式（１）は、以下の式（１'）のように表わすことができる。
【００５１】
ｓm+1n+1＝ｓm+1n＋((ｄmn+1＋ｄm+1n+1＋２)>>２)・・・・（１'）
【００５２】
なお、上記式（１）の括弧内の＋２は、右シフトの際に生じる丸め誤差に対する補償を行うためのものである。
【００５３】
また、高域成分係数ｄの算出式は、一般的に、以下の式（２）のように表わすことができる。
【００５４】
ｄmn+1＝ｄmn−((ｓmn＋ｓm+1n)／２）        ・・・（２）
【００５５】
あるいは、１ビット右シフトを「>>１」で表して、以下の式（２’）のように表わすことができる。
【００５６】
ｄmn+1＝ｄmn−((ｓmn＋ｓm+1n)>>１）      ・・・（２'）
【００５７】
ここで、図６の例では、入力画像データに対して初段のウェーブレット変換係数、すなわち、レベルｎ＝１の低域成分係数および高域成分係数を計算しており、この場合の入力画像データのｓ、ｄは、低域成分係数や高域成分係数を表わすものではない。また、画面の端部に相当する位置では、画面外部に相当するデータを画面外部のデータの折り返しで用いている。例えば、図６中のデータｓ01を求めるためには、ｓ00と、ｄ01と、さらにｄ01の折り返しとしての同じｄ01とを用いている。またｄ71を求めるためにｓ70を２つ用いるのも同様である。
【００５８】
図６中の破線で囲った部分ＳＰは、上記式（１）におけるｎ＝０，ｍ＝１に相当する低域成分係数ｓ21を求めている部分であり、以下の式（３）のような計算が行われている。
【００５９】
ｓ21＝ｓ20＋((ｄ11＋ｄ21＋２)／４)  ・・・（３）
【００６０】
また、図６中の破線で囲った部分ＤＰは、上記式（２）のｎ＝０，ｍ＝０に相当する高域成分係数ｄ01を求めている部分であり、以下の式（４）のような計算が行われている。
【００６１】
ｄ01＝ｄ00−((ｓ00＋ｓ10)／２）  ・・・（４）
【００６２】
ここで、１／４乗算は２ビット右シフト「>>２」により、また１／２乗算は１ビット右シフト「>>１」によりそれぞれ実現できることは、上述した通りである。
【００６３】
上述した式（１）および式（２）を計算するために要する演算量は、乗算を上述したようにシフト演算で実現するとして、乗算「０」、加減算「５」、およびシフト演算「２」となる。この動作を上から下まで同様に行うことですべての係数を算出することができる。なお、上述したように、画像のような２次元信号に対しては、１次元方向（例えば垂直方向）のウェーブレット変換で生成された係数群に対して、もう１方向（例えば水平方向）に、上記と同様にウェーブレット変換を施せば良い。
【００６４】
なお、実際には、リフティング(Lifting)技術を用いることで、上述したフィルタ処理の計算を減らすことができる。このリフティングについて説明する。図７は、整数型５×３フィルタ（分析フィルタおよび合成フィルタ）のリフティングによる１次元のフィルタ処理を分解レベル＝２まで実行した例を示している。なお、図７において、図の左側に分析フィルタとして示される部分は、図１のウェーブレット変換部１０１のフィルタである。また、図の右側に合成フィルタとして示される部分は、後述するウェーブレット逆変換部のフィルタである。
【００６５】
図７において、左端列は、ベースバンドの画像データである原画像データ（つまり、符号化装置１００に入力された画像データ）のある１ライン（または１列）上の連続する画素データを示している。図７中の左端から１列目乃至３列目が分割レベル＝１のフィルタ処理を示し、４列目乃至６列目が分割レベル＝２のフィルタ処理を示す。
【００６６】
分解レベル＝１の分析フィルタ処理において、第１段階の分析フィルタ処理として、原画像データに基づき高域成分の係数データが算出され、第２段階の分析フィルタ処理として、第１段階の分析フィルタ処理で算出された高域成分の係数データと、原画像データとに基づき低域成分の係数データが算出される。図７中の左端から２列目が高域成分出力を示し、左端から３列目が低域成分出力を示す。
【００６７】
算出された高域成分の係数データは、図１のエントロピ符号化部１０３に供給される。また、算出された低域成分の係数データは、図１の途中計算用バッファ部１０２に格納される。図７において、エントロピ符号化部１０３は一点鎖線で囲まれた部分として示され、途中計算用バッファ部１０２は点線で囲まれた部分として示される。
【００６８】
途中計算用バッファ部１０２に保持された分解レベル＝１の分析フィルタ処理の結果に基づき、分解レベル＝２の分析フィルタ処理が行われる。分解レベル＝２のフィルタ処理では、分解レベル＝１のフィルタ処理において低域成分の係数として算出された係数データを、低域成分および高域成分を含んだ係数データと見做して、分解レベル＝１と同様のフィルタ処理を行う。分解レベル＝２のフィルタ処理により算出された、高域成分の係数データおよび低域成分の係数データは、図１のエントロピ符号化部１０３に供給される。
【００６９】
図１のウェーブレット変換部１０１では、上述したようなフィルタ処理を、画面の水平方向および垂直方向にそれぞれ行う。例えば、ウェーブレット変換部１０１は、先ず、分解レベル＝１のフィルタ処理を水平方向に行い、生成された高域成分および低域成分の係数データを途中計算用バッファ部１０２に格納する。次に、ウェーブレット変換部１０１は、途中計算用バッファ部１０２に格納された係数データに対して、垂直方向に分解レベル＝１のフィルタ処理を行う。この分解レベル＝１の水平および垂直方向の処理により、高域成分をさらに高域成分および低域成分に分解した係数データのそれぞれによるサブバンドＨＨおよびサブバンドＨＬと、低域成分をさらに高域成分および低域成分に分解した係数データのそれぞれによるサブバンドＬＨおよびサブバンドＬＬとの４つのサブバンドが形成される。
【００７０】
そして、分解レベル＝２では、水平方向および垂直方向のそれぞれについて、分解レベル＝１で生成された低域成分の係数データに対してさらに分析フィルタ処理が行われる。すなわち、分解レベル＝２の分析フィルタ処理により、分解レベル＝１で分割されて形成されたサブバンドＬＬがさらに４分割され、サブバンドＨＨ、サブバンドＨＬ、サブバンドＬＨおよびサブバンドＬＬが形成される。
【００７１】
ウェーブレット変換部１０１は、画面の縦方向については、上述したようなウェーブレット変換による可逆な分析フィルタ処理を、数ライン毎の処理に分割して、複数回に分けて段階的に行うようにしている。図７の例では、画面上の第１ラインからの処理になる１回目の処理は、７ラインについてフィルタ処理を行い、８ライン目からの処理になる２回目以降の処理は、４ライン毎にフィルタ処理を行っている。この各回のライン数は、上述した分析フィルタ処理により１ライン分の最低域成分を生成するために必要なライン数に基づく。
【００７２】
なお、以下において、この最低域成分の１ライン分（最低域成分のサブバンドの１ライン分の係数データ）を生成するために必要な、他のサブバンドも含めたラインの集まりを、プレシンクト（またはラインブロック）と称する。ここでラインとは、ウェーブレット変換前の画像データに対応するピクチャ（フレームまたはフィールド）、または各サブバンド内において形成される１行分の画素データ若しくは係数データのことを示す。すなわち、プレシンクト（ラインブロック）とは、ウェーブレット変換前の元の画像データにおける、ウェーブレット変換後の最低域成分のサブバンド１ライン分の係数データを生成するために必要なライン数分の画素データ群、または、その画素データ群をウェーブレット変換して得られる各サブバンドの係数データ群のことを示す。
【００７３】
図７によれば、分解レベル＝２のフィルタ処理結果で得られる係数Ｃ５は、係数Ｃ４および途中計算用バッファ部１０２に格納された係数Ｃaに基づき算出され、係数Ｃ４は、途中計算用バッファ部１０２に格納された係数Ｃa、係数Ｃbおよび係数Ｃcに基づき算出される。さらに、係数Ｃcは、エントロピ符号化部１０３に供給される係数Ｃ２および係数Ｃ３、並びに、第５ラインの画素データに基づき算出される。また、係数Ｃ３は、第５ライン乃至第７ラインの画素データに基づき算出される。このように、分割レベル＝２における低域成分の係数Ｃ５を得るためには、第１ライン乃至第７ラインの画素データが必要とされる。
【００７４】
これに対して、２回目以降のフィルタ処理においては、前回までのフィルタ処理で既に算出されエントロピ符号化部１０３に供給された係数データ（実際には供給した係数データと同じものをウェーブレット変換部１０１（または途中計算用バッファ部１０２）が保持している）を用いることができるので、必要なライン数が少なくて済む。
【００７５】
すなわち、図７によれば、分解レベル＝２のフィルタ処理結果で得られる低域成分の係数のうち、係数Ｃ５の次の係数である係数Ｃ９は、係数Ｃ４および係数Ｃ８、並びに、途中計算用バッファ部１０２に格納された係数Ｃcに基づき算出される。係数Ｃ４は、上述した１回目のフィルタ処理により既に算出され、エントロピ符号化部１０３に供給される（実際には供給した係数データと同じものをウェーブレット変換部１０１（または途中計算用バッファ部１０２）が保持している）。同様に、係数Ｃcは、上述の１回目のフィルタ処理により既に算出され、途中計算用バッファ部１０２に格納されている。したがって、この２回目のフィルタ処理においては、係数Ｃ８を算出するためのフィルタ処理のみが、新たになされることになる。この新たなフィルタ処理は、第８ライン乃至第１１ラインがさらに用いられてなされる。
【００７６】
このように、２回目以降のフィルタ処理は、前回までのフィルタ処理により算出され途中計算用バッファ部１０２およびエントロピ符号化部１０３に供給されるデータ（実際にはウェーブレット変換部１０１（または途中計算用バッファ部１０２）が保持しているデータ）を用いることができるので、それぞれ４ライン毎の処理で済むことになる。
【００７７】
なお、画面上のライン数が符号化のライン数と合致しない場合は、原画像データのラインを所定の方法で複製してライン数を符号化のライン数と合わせて、フィルタ処理を行う。
【００７８】
このように、ウェーブレット変換部１０１は、最低域成分１ライン分の係数データが得られるだけのフィルタ処理を段階的に、画面全体のラインに対して複数回に分けて（プレシンクト（ラインブロック）単位で）行うことで、符号化データを伝送した際に低遅延で復号画像を得ることを可能としている。
【００７９】
既に説明したように、ウェーブレット変換においては、高域成分側から低域成分側へと係数が生成されていく。図７の例では、１回目において、原画像の画素データにより、分解レベル＝１のフィルタ処理で、高域成分の係数Ｃ１、係数Ｃ２および係数Ｃ３が順次生成される。そして、分解レベル＝１のフィルタ処理で得られた低域成分の係数データに対して分解レベル＝２のフィルタ処理を行い、低域成分の係数Ｃ４および係数Ｃ５が順次生成される。すなわち、第１回目では、係数Ｃ１、係数Ｃ２、係数Ｃ３、係数Ｃ４、係数Ｃ５の順に、係数データが生成される。この係数データの生成順は、ウェーブレット変換の原理上、必ずこの順序（高域から低域の順）になる。
【００８０】
これに対して、復号処理は低域成分から先に行われる。図７の例を用いて、より具体的に説明する。図７の右側は、上述したウェーブレット変換（分析フィルタ処理）の逆変換であるウェーブレット逆変換を行う合成フィルタ処理の例を示す。復号側の、出力画像データの第１ライン目を含む１回目の合成フィルタ処理（ウェーブレット逆変換処理）は、符号化側の１回目のフィルタ処理で生成された最低域成分の係数Ｃ４および係数Ｃ５と、係数Ｃ１とを用いて行われる。
【００８１】
すなわち、１回目の合成処理においては、分解レベル＝２に対応する合成処理である合成レベル＝２の処理で係数Ｃ５および係数Ｃ４に対して合成フィルタ処理が行われ、係数Ｃfが生成され、その係数Ｃｆがバッファに格納される。そして、分解レベル＝１に対応する合成処理である合成レベル＝１の処理で、この係数Ｃfと係数Ｃ１に対して合成フィルタ処理が行われ、ベースバンドの画像データの第１ラインが生成される。
【００８２】
このように、第１回目の合成フィルタ処理は、符号化側の分析フィルタ処理により係数Ｃ１、係数Ｃ２、係数Ｃ３、係数Ｃ４、係数Ｃ５の順に生成された係数データを、係数Ｃ５、係数Ｃ４、係数Ｃ１、・・・の順に処理する。
【００８３】
なお、図７の右側に示す合成フィルタ側では、符号化側から供給される係数について、括弧内に分析フィルタ側でのライン順を示し、括弧外に合成フィルタ側でのライン順を示す。例えば係数Ｃ１（５）は、図７の左側の分析フィルタ側では第５ライン目であって、合成フィルタ側では第１ライン目であることを示す。
【００８４】
２回目以降の分析フィルタ処理で生成された係数データに対する合成フィルタ処理は、分析フィルタ側から供給された係数データの他に、前回の合成フィルタ処理の際に合成された係数データや画像データを用いて行われる。図７の例の場合、２回目の合成フィルタ処理は、分析フィルタ側から供給された係数データとして、２回目の分析フィルタ処理により生成された低域成分の係数Ｃ８および係数Ｃ９の他に、１回目の分析フィルタ処理により生成された係数Ｃ２および係数Ｃ３が用いられて行われる。この２回目の合成フィルタ処理により、ベースバンドの画像データの第２ライン乃至第５ラインが復号される。
【００８５】
すなわち、２回目の合成処理においては、係数Ｃ９、係数Ｃ８、係数Ｃ２、係数Ｃ３の順に処理される。つまり、合成レベル＝２の合成フィルタ処理は、係数Ｃ８および係数Ｃ９と、１回目の合成フィルタ処理の際に符号化側から供給された係数Ｃ４とを用いて係数Ｃgを生成し、バッファに格納する。また、合成レベル＝２の合成フィルタ処理は、この係数Ｃgと、上述の係数Ｃ４と、１回目の合成フィルタ処理により生成されバッファに格納された係数Ｃfとを用いて係数Ｃhを生成し、バッファに格納する。
【００８６】
そして、合成レベル＝１の合成フィルタ処理は、合成レベル＝２の合成フィルタ処理で生成されバッファに格納された係数Ｃgおよび係数Ｃhと、分析フィルタ側から供給された係数Ｃ２（合成フィルタ側では係数Ｃ６（２）と示されている）および係数Ｃ３（合成フィルタ側では係数Ｃ７（３）と示されている）とを用い、ベースバンドの画像データの第２ライン乃至第５ラインを復号する。
【００８７】
このように、第２回目の合成フィルタ処理においては、分析フィルタ側において係数Ｃ２、係数Ｃ３、（係数Ｃ４、係数Ｃ５）、係数Ｃ６、係数Ｃ７、係数Ｃ８、係数Ｃ９の順に生成された係数データが、係数Ｃ９、係数Ｃ８、係数Ｃ２、係数Ｃ３、・・・の順に処理される。
【００８８】
３回目以降の合成フィルタ処理においても、同様にして、分析フィルタ処理により生成された係数データが所定の順序に並び替えられて処理され、４ラインずつ、ベースバンドの画像データのラインが復号される。
【００８９】
なお、画面の下端のラインを含む分析フィルタ処理（以下、最後の回と呼ぶ）に対応する合成フィルタ処理では、それまでの処理で生成されバッファに格納された係数データを全て出力することになるため、出力ライン数が多くなる。図７の例では、最後の回に８ラインが出力される。
【００９０】
図８を用いて、上述までの処理をより具体的に説明する。図８は、整数型の５×３分析フィルタを用いて、分解レベル＝２までウェーブレット変換によるフィルタ処理を施す場合の例である。ウェーブレット変換部１０１において、図８のＡに一例が示されるように、入力画像データの第１ラインから第７ラインに対して１回目の分析フィルタ処理が水平および垂直方向にそれぞれ行われる（図８のＡのＩｎ−１）。
【００９１】
１回目の分析フィルタ処理の分解レベル＝１の、水平および垂直方向の処理により、少なくともいずれか一方の処理において上述した係数Ｃ１、係数Ｃ２、および係数Ｃ３に対応するとされる係数データが、図８のＢに一例が示されるように、分解レベル＝１で形成されるサブバンドＨＨ、サブバンドＨＬ、およびサブバンドＬＨのそれぞれについて３ライン分ずつ生成される（図８のＢのＷＴ−１）。
【００９２】
また、１回目の分析フィルタ処理の分解レベル＝１の、水平および垂直方向の処理の両方において低域成分とされる係数データで形成されるサブバンドＬＬは、分解レベル＝２による水平および垂直方向の分割フィルタ処理でさらに４分割される。１回目の分析フィルタ処理の分解レベル＝２の、水平および垂直方向の処理により、その両方の処理において係数Ｃ５に対応するとされる係数データが、サブバンドＬＬ内のサブバンドＬＬの１ライン分生成される。また、１回目の分析フィルタ処理の分解レベル＝２の、水平および垂直方向の処理により、少なくともいずれか一方の処理において係数Ｃ４に対応するとされる係数データが、サブバンドＬＬ内のサブバンドＨＨ、サブバンドＨＬ、およびサブバンドＬＨのそれぞれについて１ライン分ずつ生成される。
【００９３】
ウェーブレット変換部５１による２回目以降のフィルタ処理では、４ライン毎にフィルタ処理が行われ（図８のＡのＩｎ−２・・・）、各サブバンドについて、分解レベル＝１で２ラインずつの係数データが生成され（図８のＢのＷＴ−２）、分解レベル＝２で１ラインずつの係数データが生成される。
【００９４】
図８のＢのようにウェーブレット変換された係数データを復号する際、図８のＣに一例が示されるように、第１ライン乃至第７ラインによる１回目の分析フィルタ処理に対して、１回目の合成フィルタ処理により第１ラインが出力される（図８のＣのＯｕｔ−１）。以降、２回目から最後の１つ前の回までの分析フィルタ処理に対する合成フィルタ処理により、４ラインずつ画像データが出力される（図８のＣのＯｕｔ−２・・・）。そして、最後の回の分析フィルタ処理に対する合成フィルタ処理により８ラインの画像データが出力される。
【００９５】
ウェーブレット変換部１０１で高域成分側から低域成分側へと生成された係数データは、エントロピ符号化部１０３に順次、供給される。
【００９６】
エントロピ符号化部１０３は、供給される係数データを、可逆な方法で順次符号化し、生成した符号化データを符号化装置１００の外部に出力する。
【００９７】
図９は、図１の符号化装置１００に対応する復号装置の構成例を示すブロック図である。図９に示される復号装置２００は、図１の符号化装置１００に対応する方法で、符号化装置１００により画像データが符号化されて得られた符号化データを復号し、符号化前のベースバンドの画像データを復元する。つまり、復号装置２００は、順方向と逆方向の変換が完全に保証される可逆な方法により画像データを復号する。これにより復号装置２００は、高品質な画像データが得られるように、符号化装置１００により符号化されて得られた符号化データを復号することができる。また、復号装置２００は、符号化装置１００により、画像データがプレシンクト単位で符号化されて得られた符号化データを、そのプレシンクト毎に復号する。これにより復号装置２００は、画像データを符号化して復号するまでの遅延時間を低減させることができる。
【００９８】
復号装置２００は、エントロピ復号部２０１、係数並び替え部２０２、係数バッファ部２０３、およびウェーブレット逆変換部２０４を有する。
【００９９】
エントロピ復号部２０１は、供給された符号化データを、エントロピ符号化部１０３（図１）による符号化方法に対応する可逆な復号方法で復号し、係数データを得る。その係数データは、係数並び替え部２０２に供給される。係数並び替え部２０２は、その供給された係数データ、つまり、高域成分から低域成分の順に供給される係数データを、低域成分から高域成分の順に並び替える。係数並び替え部２０２は、並び替えた係数データを、係数バッファ部２０３に格納する。ウェーブレット逆変換部２０４は、係数バッファ部２０３に格納された係数データを用いて、合成フィルタ処理（ウェーブレット逆変換）を行い、合成フィルタ処理の結果を再び係数バッファ部２０３に格納する。ウェーブレット逆変換部２０４は、この処理を分解レベルに応じて繰り返し、ベースバンドの画像データを得る。このベースバンドの画像データは、図１の符号化装置１００に入力されるベースバンドの画像データと同等である。
【０１００】
つまり、復号装置２００は、符号化装置１００によりベースバンドの画像データが符号化されて得られる符号化データを復号することにより、符号化前のベースバンドの画像データを復元することができる。ベースバンドの画像データを得ると、ウェーブレット逆変換部２０４は、それを復号装置２００の外部に出力する。
【０１０１】
ウェーブレット逆変換部２０４は、水平合成フィルタと垂直合成フィルタとを有し、係数データ群に対して、画面水平方向と画面垂直方向の両方について可逆なフィルタ処理を行う。ウェーブレット逆変換部２０４は、係数バッファ部２０３に格納された低域成分の係数データと高域成分の係数データを読み出し、合成フィルタ処理を施して、１つ下位のレベルの低域成分の係数データを生成する。生成された係数データは、係数バッファ部２０３に格納される。つまり、ウェーブレット逆変換部２０４は、入力データである低域成分と高域成分を合成し、１つ下位のレベルの低域成分を生成するフィルタ処理をレベル１の処理が終了するまで再帰的に繰り返す。
【０１０２】
ウェーブレット逆変換部２０４は、この処理を繰り返してレベル１における合成フィルタ処理が終了したら（ベースバンドの画像データが得られたら）、係数バッファ部２０３からそのベースバンドの画像データを読み出し、読み出されたベースバンドの画像データを出力する。
【０１０３】
なお、係数バッファ部２０３およびウェーブレット逆変換部２０４を併せて合成フィルタ処理部２１１とも称する。
【０１０４】
次に、図１０のウェーブレット変換部１０１で行われる処理について、より詳細に説明する。先ず、ウェーブレット変換部１０１に入力されるデータについて説明する。
【０１０５】
次に、ウェーブレット逆変換について、概略的に説明する。図１０は、係数データに対するウェーブレット逆変換の演算の構成例を模式的に示す図である。図３を参照して説明したウェーブレット変換処理の出力である、LLL成分１４３に対応するLLL成分２４３、LLH成分１４４に対応するLLH成分２４４、LH成分１４５に対応するLH成分２４５、Ｈ成分１４６に対応するＨ成分２４６のうち、LLL成分２４３およびLLH成分２４４が、まず、それぞれアップサンプラ２３１ａおよびアップサンプラ２３１ｂによって２倍の解像度にアップサンプルされる。アップサンプラ２３１ａによりアップサンプルされた低域成分（LLL成分２４３）は、ローパスフィルタ２３２によってフィルタリングされ、加算器２３４に供給される。アップサンプラ２３１ｂによりアップサンプルされた高域成分（LLH成分２４４）は、ローパスフィルタ２３３によってフィルタリングされ、加算器２３４に供給される。
【０１０６】
加算器２３４は、それらの低域成分および高域成分（LLL成分２４３およびLLH成分２４４）を合成する。ここまでの回路部２２１の処理により、図３のレベル３の回路部１２３での順方向変換に対応する逆変換が完了し、レベル２の低域成分であるLL成分２４７が得られる。
【０１０７】
この処理を以後各レベルにおいてレベル１まで繰り返すことで、最終的な逆変換後の復号画像２４９が出力される。すなわち、レベル２の回路部２２２およびレベル１の回路部２２３は、上述したレベル３の回路部２２１と同様の構成を有する。つまり、レベル３の回路部２２１の出力（LL成分２４７）は、レベル２の回路部２２２の低域側に入力される。回路部２２２は、低域側に入力されたLL成分２４７と高域側に入力されたLH成分２４５を回路部２２１の場合と同様に合成し、レベル１の低域成分であるＬ成分２４８を出力する。このＬ成分２４８は、レベル１の回路部２２３の低域側に入力される。回路部２２３は、低域側に入力されたＬ成分２４８と高域側に入力されたＨ成分２４６を回路部２２１の場合と同様に合成し、ベースバンドの画像データ（復号画像）２４９を出力する。以上が、ウェーブレット逆変換処理の基本構成である。
【０１０８】
JPEG-2000 のPart-１のＦＣＤで規定されている整数精度型の５×３合成フィルタの演算について説明する。図１１は、整数精度型の５×３合成フィルタ（以下、整数型５×３合成フィルタとも称する）の演算を説明するための図であり、１次元の合成フィルタ処理を１回行い、図中左端の低域成分ｓと中央部の高域成分ｄとから、図中右端の出力画像データを算出する様子を示している。この図１１において、ｄmnをウェーブレット変換のレベルがｎのｍ番目の高域成分係数であるとする。同様に、ｓmnをウェーブレット変換のレベルがｎのｍ番目の低域成分係数であるとする。ここで、ｎ＝０の場合は、図１１に示されるように出力画像となる。
【０１０９】
この図９に示されるように、１つ下位レベルの低域成分係数ｓの算出式は、一般的に、以下の式（５）のように表わすことができる。
【０１１０】
ｓm+1n＝ｓm+1n+1−((dmn+1＋ｄm+1n+1＋２)／４)    ・・・（５）
【０１１１】
ここで、この式（５）中の１／４の乗算をビットシフトで実現し、２ビット右シフトを「>>２」で表わすことにより、式（５）は、以下の式（５’）のように表わすことができる。
【０１１２】
ｓm+1n＝ｓm+1n+1−((dmn+1＋ｄm+1n+1＋２)>>２)    ・・・（５'）
【０１１３】
式（５）あるいは式（５'）の括弧内の「＋２」は、右シフトの際に生じる丸め誤差に対するものであるが、これは上述した分析フィルタの丸め処理と表裏一体のものである。この丸め処理が分析・合成側で一致していることが、可逆性を保持するために必要となることは勿論である。
【０１１４】
同様に、高域成分係数ｄの算出式は、一般的に、以下の式（６）のように表わすことができる。
【０１１５】
ｄmn＝ｄmn+1＋（（ｓmn＋ｓm+1n）／２）        ・・・（６）
【０１１６】
ここで、１ビット右シフトを「>>１」で表わすことにより、式（６）は、以下の式（６’）のように表わすことができる。
【０１１７】
ｄmn＝ｄmn+1＋（（ｓmn＋ｓm+1n）>>１）      ・・・（６'）
【０１１８】
ここで、図１１中の破線で囲った部分ＳＰは、上述した式（５）におけるｎ＝０，ｍ＝１に相当する低域成分係数ｓ20を求めている部分であり、以下の式（７）に示される計算が行なわれている。
【０１１９】
ｓ20＝ｓ21−（（ｄ11＋ｄ21＋２）／４）  ・・・（７）
【０１２０】
また、図１１中の破線で囲った部分ＤＰは、上述した式（６）のｎ＝０，ｍ＝０に相当する高域成分係数ｄ00を求めている部分であり、以下の式（８）に示される計算が行なわれている。
【０１２１】
ｄ00＝ｄ01＋（（ｓ00＋ｓ10）／２）  ・・・（８）
【０１２２】
ここで、１／４乗算は２ビット右シフト「>>２」により、また１／２乗算は１ビット右シフト「>>１」によりそれぞれ実現することができる。
【０１２３】
上述した式（５）および式（６）、特に、シフト演算を用いた式（５'）および式（６'）を計算するために要する演算量、すなわち、偶数番目・奇数番目の係数の１組を生成するのに要する演算量は、乗算「０」、加減算「５」、およびシフト演算「２」となる。この動作を上から下まで同様に行うことですべての係数を算出することができる。なお、上述したように、画像のような２次元信号に対しては、１次元方向（例えば垂直方向）のウェーブレット逆変換（合成フィルタ処理）で生成された係数群に対して、もう１方向（例えば水平方向）に、上記と同様にウェーブレット逆変換を施せば良い。
【０１２４】
次に、以上の符号化装置１００および復号装置２００による処理の流れについて説明する。最初に、図１２のフローチャートを参照して符号化装置１００により実行される符号化処理の流れの例を説明する。
【０１２５】
符号化処理が開始されると、符号化装置１００のウェーブレット変換部１０１は、ステップＳ１０１において、処理対象プレシンクトの番号Ａを初期設定にする。例えば、番号Ａは「１」に設定される。設定が終了すると、ウェーブレット変換部１０１は、ステップＳ１０２において、変換後の最低域サブバンドの上からＡ番目の１ラインを生成するのに必要なライン数（すなわち、１プレシンクト）の画像データを取得する。
【０１２６】
１プレシンクト分の画像データを取得すると、ウェーブレット変換部１０１は、その画像データに対して、ステップＳ１０３において画面垂直方向に並ぶ画像データに対して可逆な方法で分析フィルタリングを行う可逆垂直分析フィルタリング処理を行い、ステップＳ１０４において画面水平方向に並ぶ画像データに対して可逆な方法で分析フィルタリング処理を行う可逆水平分析フィルタリング処理を行う。
【０１２７】
ステップＳ１０５においてウェーブレット変換部１０１は、可逆垂直分析フィルタリング処理および可逆水平分析フィルタリング処理を最終レベルまで行ったか否かを判定する。分解レベルが予め定められた最終レベルに達していないと判定された場合、処理はステップＳ１０３に戻り、現在の分解レベルに対して、ステップＳ１０３およびステップＳ１０４の分析フィルタリング処理が繰り返される。
【０１２８】
ステップＳ１０５において、分析フィルタリング処理が最終レベルまで行われたと判定された場合、処理は、ステップＳ１０６に進む。
【０１２９】
ステップＳ１０６において、エントロピ符号化部１０３は、ウェーブレット変換部１０１が所定数のプレシンクトを処理したか否かを判定し、処理したと判定した場合、ステップＳ１０７に処理を進め、蓄積された係数データに対してエントロピ符号化を行う。符号化が終了すると、エントロピ符号化部１０３は、得られた符号化データを出力し、処理をステップＳ１０８に進める。また、ステップＳ１０６において、所定数のプレシンクトが処理されていないと判定された場合、ステップＳ１０７の処理は省略され、ステップＳ１０８に処理が進められる。
【０１３０】
ステップＳ１０８において、ウェーブレット変換部１０１は、プレシンクト番号Ａの値を「１」インクリメントする。ステップＳ１０９において、ウェーブレット変換部１０１は、未処理のラインが存在するか否かを判定し、存在すると判定した場合、処理をステップＳ１０２に戻し、それ以降の処理を繰り返す。また、ステップＳ１０９において、未処理のラインが存在しないと判定した場合、ウェーブレット変換部１０１は、符号化処理を終了する。
【０１３１】
符号化装置１００は、以上のような符号化処理をピクチャ（フレームまたはフィールド）単位で繰り返す。
【０１３２】
このように、ウェーブレット変換部１０１は、プレシンクト単位で可逆垂直分析フィルタリング処理および可逆水平分析フィルタリング処理を最終レベルまで連続して行うので、従来の方法と比較して、一度に（同時期に）保持する（バッファリングする）必要のあるデータの量が少なく、用意すべきバッファのメモリ量を大幅に低減させることができる。従って、画面全体に対してウェーブレット変換を行う方法と比較して遅延時間を大幅に低減させることができる。また、エントロピ符号化の処理を複数のプレシンクト単位で行うことができる。従って、１プレシンクト単位毎に符号化を行う場合よりも高効率および高品質に画像データをエントロピ符号化することができる。さらに、ウェーブレット変換やエントロピ符号化を可逆な方法で行うことにより、符号化装置１００は、画像データを、高品質かつ低遅延に伝送することができる。
【０１３３】
次に、図１３のフローチャートを参照して、符号化装置２００により実行される復号処理の流れの例を説明する。
【０１３４】
復号処理が開始されると、エントロピ復号部２０１は、ステップＳ２０１において、入力された符号化データをエントロピ復号する。ステップＳ２０２において、係数並び替え部２０２は、係数データを低域成分から高域成分の順に並び替える。ステップＳ２０３において、ウェーブレット逆変換部２０４は、係数バッファ部２０３に、係数並び替え部２０２より供給された係数データが１プレシンクト分以上保持されると、その１プレシンクト分の係数データを読み出して、可逆垂直合成フィルタ処理を行い、ステップＳ２０４において可逆水平合成フィルタ処理を行う。
【０１３５】
ステップＳ２０５において、ウェーブレット逆変換部２０４は、合成フィルタ処理をレベル１まで行ったか否かを判定し、まだレベル１まで達していないと判定した場合、処理をステップＳ２０３に戻し、それ以降の処理を繰り返す。また、ステップＳ２０５において、合成フィルタ処理をレベル１まで行ったと判定した場合、処理はステップＳ２０６に進む。
【０１３６】
ステップＳ２０６において、エントロピ復号部２０１は、復号処理を終了するか否かを判定し、終了しないと判定した場合、処理をステップＳ２０１に戻し、それ以降の処理を繰り返す。また、ステップＳ２０６において、復号処理を終了すると判定した場合、復号処理が終了される。
【０１３７】
復号装置２００は、以上のような復号処理をピクチャ（フレームまたはフィールド）単位で繰り返す。
【０１３８】
従来のウェーブレット逆変換の方法の場合、処理対象の分解レベルの全係数に対して、まず、画面水平方向に水平合成フィルタリング処理を行い、次に画面垂直方向に垂直合成フィルタリング処理を行っていた。つまり、各合成フィルタリング処理の度に、その合成フィルタリング処理の結果をバッファに保持させる必要があるが、その際、バッファは、その時点の分解レベルの合成フィルタリング結果と、次の分解レベルの全係数を保持する必要があり、多大なメモリ容量を必要とすることになる（保持するデータ量が多い）。
【０１３９】
また、この場合、ピクチャ（フレームまたはフィールド）内において全てのウェーブレット逆変換が終了するまで画像データ出力が行われないので、入力から出力までの遅延時間が増大する。
【０１４０】
これに対して、復号装置２００のウェーブレット逆変換部２０３の場合、上述したようにプレシンクト単位で垂直合成フィルタリング処理および水平合成フィルタリング処理をレベル１まで連続して行うので、従来の方法と比較して、一度に（同時期に）バッファリングする必要のあるデータの量が少なく、用意すべきバッファのメモリ量を大幅に低減させることができる。また、レベル１まで合成フィルタリング処理（ウェーブレット逆変換処理）が行われることにより、ピクチャ内の全画像データが得られる前に（プレシンクト単位で）画像データを順次出力させることができ、従来の方法と比較して遅延時間を大幅に低減させることができる。
【０１４１】
また、可逆な方法でエントロピ復号処理やウェーブレット逆変換処理を行うことにより、復号装置２００は、高品質な復元画像を得ることができる。
【０１４２】
すなわち、符号化装置１００および復号装置２００は、画像データを、高品質かつ低遅延に伝送することができる。
【０１４３】
次に、以上に説明したような可逆な方法の符号化処理および復号処理に対する、順方向と逆方向の変換が完全に保証されていない非可逆な方法の符号化処理および復号処理について説明する。
【０１４４】
図１４は、非可逆な方法で画像データを符号化する符号化装置の構成例を示すブロック図である。図１４において、符号化装置３００は、非可逆な方法で符号化処理を行う。符号化装置３００は、ウェーブレット変換部３０１、途中計算用バッファ部３０２、量子化部３０３、係数並び替え用バッファ部３０４、係数並び替え部３０５、エントロピ符号化部３０６、およびレート制御部３０７を有する。
【０１４５】
ウェーブレット変換部３０１は、基本的にウェーブレット変換部１０１と同様であるが、後述する固定小数点精度型の５×３分析フィルタを用いて非可逆のウェーブレット変換を行う。途中計算用バッファ部３０２は、基本的に途中計算用バッファ部１０２と同様である。
【０１４６】
量子化部３０３は、ウェーブレット変換部３０１において変換された係数データを所定の量子化係数で量子化し、量子化後の係数データを係数並び替え用バッファ部３０４に供給して保持させる。なお、この量子化部３０３は省略するようにしてももちろんよい。量子化を行うことにより、さらに圧縮効果の向上を期待することができる。この量子化の方法としてはどのようなものを用いても良く、例えば、係数データＷを量子化ステップサイズΔで除算する手法であってもよい。この時の量子化ステップサイズΔは、例えばレート制御部３０７において算出される。係数並び替え部３０５は、基本的に、係数並び替え部２０２と同様であり、係数並び替え用バッファ部３０４に高域成分から低域成分の順に保持される係数データを、低域成分から高域成分の順に並び替え、エントロピ符号化部３０６に供給する。
【０１４７】
エントロピ符号化部３０６は、基本的に、エントロピ符号化部１０３と同様であり、供給された係数データを、例えばハフマン符号化や算術符号化といった所定のエントロピ符号化方式で符号化する。
【０１４８】
エントロピ符号化部３０６は、レート制御部３０７と連動的に動作し、出力される圧縮符号化データのビットレートが略一定値となるように制御される。すなわち、レート制御部３０７は、エントロピ符号化部３０６からの符号化データ情報に基づき、エントロピ符号化部３０６により圧縮符号化されたデータのビットレートが目標値に達した時点あるいは目標値に達する直前でエントロピ符号化部３０６による符号化処理を終了するように制御する制御信号を、エントロピ符号化部３０６に対して供給する。エントロピ符号化部３０６は、レート制御部３０７から供給される制御信号に応じて符号化処理が終了した時点で、符号化データを符号化装置３００の外部に出力する。
【０１４９】
なお、ウェーブレット変換部３０１および途中計算用バッファ部３０２を併せて、分析フィルタ処理部３１１とも称する。図１５は、その分析フィルタ処理部のさらに詳細な構成例を示すブロック図である。
【０１５０】
図１５に示されるように、固定小数点型のウェーブレット変換部３０１は、ビットシフト器３２１およびウェーブレット変換器３２２を有する。
【０１５１】
ビットシフト器３２１は、入力画像データを１回だけビットシフト処理し、図１６に示されるような固定小数点精度の入力データを生成する。図１６において各四角は入力データの各ビットを示している。点Ｐは、固定小数点の位置を示し、この点Ｐより上位側（図中左側）のビットが整数部、下位側（図中右側）のビットが小数部を示している。図１６の例では、小数部が６ビットあるので、１／２6＝１／６４の精度で固定小数点精度が確保できることになる。また、図１６の例では、整数部が８ビットのデータを取り扱うものとし、全体として１６ビットの計算を行うもの（演算精度が１６ビット）としている。さらに、図１６の例では、最上位側（図中左端側）に２ビットのガードビット（Guard-bit）が備えられており、この内の１ビットは符号（＋／−）を示すビットであり、もう１ビットはオーバーフロー（Overflow）回避のためのビットである。
【０１５２】
図１５に戻り、ビットシフト器３２１により生成された固定小数点精度のデータは、ウェーブレット変換器３２２により途中計算用バッファ部３０２に格納される。ウェーブレット変換器３２２は、途中計算用バッファ部３０２に固定小数点型のデータが所定量（１プレシンクト分）蓄積されると、その途中計算用バッファ部３０２に蓄積された１プレシンクト分のデータに対して、５×３分析フィルタを用いて分析フィルタ処理を行い、各サブバンドの係数データを生成する。
【０１５３】
図１７は、固定小数点精度の５×３分析フィルタ（以下、固定小数点型５×３分析フィルタとも称する）を用いた分析側の固定小数点型ウェーブレット変換演算について説明する。図１７は、１次元のウェーブレット変換を行い、左端の入力画像データを低域成分ｓと高域成分ｄとに変換する動作を示している。以下、同図を用いて詳細動作を説明する。ここで、ｄmnをウェーブレット変換のレベルがｎのｍ番目の高域成分係数であるとする。ｎ＝０の場合は、図より入力画像であることは明らかである。同様に、ｓmnをウェーブレット変換のレベルがｎのｍ番目の低域成分係数であるとする。
【０１５４】
この図１７から明らかなように、低域成分係数ｓの算出式は、一般的に、以下の式（９ａ）または式（９ｂ）のように表わすことができる。
【０１５５】
ｓm+1n+1＝ｓm+1n＋β×（ｄmn+1＋ｄm+1n+1＋２）・・・（９ａ）
ｓm+1n+1＝ｓm+1n＋β×（ｄmn+1＋ｄm+1n+1）・・・（９ｂ）
で与えられる。
【０１５６】
同様に、高域成分係数ｄの算出式は、一般的に、以下の式（１０）により表わすことができる。
【０１５７】
ｄmn+1＝ｄmn−α×（ｓmn＋ｓm+1n）  ・・・（１０）
【０１５８】
ここでα＝0.5、β＝0.25となり、高域成分にあたるｄは分析側ではNyquist gain＝２なので、Nyquist gain＝１になるようにゲイン調整する。これが高域成分係数ｄに、SH＝0.5を乗算する理由である。また、上述した整数型５×３分析フィルタの場合は、ゲイン調整をすると、可逆変換が保証されないため、ゲイン調整をしなくてよい。なお、この周辺の技術については、一般のデジタル信号処理技術として知られていることである。
【０１５９】
なお、画面端部の位置のデータを算出する際に、画面外部のデータが必要になるとき、隣接する画面内部のデータを折り返して用いる（例えば図１７のｓ01を求めるためのｄ01）ことは、上述した整数型分析フィルタの場合と同様であり、さらに合成フィルタの場合でも同様である。
【０１６０】
次に、上述した式（９ａ）と（９ｂ）との違いについて述べる。固定小数点型５×３分析フィルタでは、整数精度に比べて高精度になるので、整数型５×３分析フィルタで説明した「＋２」の丸めを行う場合の式（９ａ）（互換）と、「＋２」の丸めを付けない式（９ｂ）（非互換）の両方が考えられる。
【０１６１】
この固定小数点型５×３分析フィルタと、上述した整数型５×３分析フィルタとの間で、演算手段の構成を共通化する場合には、式（９ａ）を用いることが必要である。すなわち、固定小数点型５×３分析フィルタに用いられるウェーブレット変換器として、式（９ａ）の演算を行う構成を用いる場合、整数型５×３分析フィルタに用いられるウェーブレット変換器としても共通に使用することができる。
【０１６２】
このような図１７と共に説明した固定小数点型５×３分析フィルタにおいて、低域成分、高域成分の１組の係数を生成するのに要する演算量は、乗算「３」、加減算「５」（互換）、または加減算「４」（非互換）となる。
【０１６３】
次に、以上の非可逆な符号化装置３００に対応する復号装置について説明する。図１８は、非可逆な方式で符号化データを復号する復号装置の構成例を示すブロック図である。
【０１６４】
図１８に示される復号装置４００は、上述した符号化装置３００の符号化処理に対応する方法で復号処理を行う。つまり復号装置４００は、順方向と逆方向の変換が完全に保証されていない非可逆な方法で復号処理を行う。復号装置４００は、エントロピ復号部４０１、逆量子化部４０２、係数バッファ部４０３、およびウェーブレット逆変換部４０４を有する。
【０１６５】
エントロピ復号部４０１は、基本的にエントロピ復号部２０１と同様であり、供給される符号化データを、エントロピ符号化部３０６に対応する方法で復号し、係数データを生成する。エントロピ復号部４０１は、生成した係数データを逆量子化部４０２に供給する。逆量子化部４０２は、量子化部３０３に対応する方法で逆量子化し、逆量子化した係数データを係数バッファ部４０３に供給し、保持させる。なお、符号化装置３００において量子化部３０３を省略する場合、この逆量子化部４０２も省略される。
【０１６６】
係数バッファ部４０３は、基本的に、係数バッファ部２０３と同様であり、逆量子化部４０２より供給される係数データを保持するとともに、ウェーブレット逆変換部４０４にその係数データを適宜供給したり、ウェーブレット逆変換部４０４において生成される中間データや画像データを保持したりする。
【０１６７】
ウェーブレット逆変換部４０４は、基本的にウェーブレット逆変換部２０４と同様であるが、後述する固定小数点精度型の５×３合成フィルタ（以下、固定小数点型５×３合成フィルタとも称する）を用いて非可逆のウェーブレット逆変換を行う。
【０１６８】
なお、係数バッファ部４０３およびウェーブレット逆変換部４０４を併せて、合成フィルタ処理部４１１とも称する。図１９は、その合成フィルタ処理部４１１のさらに詳細な構成例を示すブロック図である。
【０１６９】
図１９に示されるように、固定小数点型のウェーブレット逆変換部４０４は、ウェーブレット逆変換器４２１およびビットシフト器４２２を有する。
【０１７０】
固定小数点精度については整数精度との差異について上述したが、固定小数点精度の場合、データは、分析フィルタ側で左にビットシフトされているので、合成フィルタ側では、逆に右ビットシフトされ、値が元のレベルまで戻される。この右ビットシフトは、最終的な復号画像（レベル０）に対して行われる。すなわち、ウェーブレット逆変換器４２１は、係数バッファ部４０３を用いて、合成フィルタ処理を各レベルに対して繰り返し行い、最終的にベースバンドの画像データが得られたら、それをビットシフト器４２２に供給する。ビットシフト器４２２は、供給されたベースバンドの画像データに対して右ビットシフト処理を行い、シフト後のデータを出力する。
【０１７１】
次に、図２０を用いて、固定小数点型５×３合成フィルタを用いた固定小数点型ウェーブレット逆変換演算について説明する。図２０は、１次元のウェーブレット変換（逆変換）を行い、図中左端の低域成分ｓと高域成分ｄとを図中右端の出力画素に変換する動作を示している。ここで、ｄmnをウェーブレット変換のレベルがｎのｍ番目の高域成分係数であるとする。同様に、ｓmnをウェーブレット変換のレベルがｎのｍ番目の低域成分係数であるとする。なお、ｎ＝０のときは、ｓ、ｄはそれぞれ奇数番目、偶数番目の画素となる。
【０１７２】
この図２０から明らかなように、図中右端の奇数番目の画素ｓ、あるいは低域成分係数ｓの算出式は、一般的に、以下の式（１１ａ）または式（１１ｂ）のように表わすことができる。
【０１７３】
ｓm+1n＝ｓm+1n+1−β×(ｄmn+1＋ｄm+1n+1＋２)  ・・・（１１ａ）
ｓm+1n＝ｓm+1n+1−β×(ｄmn+1＋ｄm+1n+1)      ・・・（１１ｂ）
【０１７４】
同様に、図中右端の偶数番目の画素ｄ、あるいは高域成分係数ｄの算出式は、一般的に、以下の式（１２）で表わすことができる。
【０１７５】
ｄmn＝ｄmn+1＋α×(ｓmn＋ｓm+1n）          ・・・（１２）
【０１７６】
ここでα＝0.5、β＝0.25となる。分析フィルタ側において、高域成分にあたるｄはNyquist gain＝２なので、Nyquist gain＝１になるようにゲイン調整されている。つまり、分析フィルタ側において高域成分係数ｄには、SH＝−0.5が乗算される。これに対して、合成フィルタ側では、Nyquist gainを１から２に戻すようにする必要がある。このため、高域係数ｄは、合成フィルタ側において、SH＝−2.0が乗算され、さらに式（１２）の演算が施される。
【０１７７】
次に、上記式（１１ａ）と（１１ｂ）との違いについて述べる。固定小数点型５×３合成フィルタは、整数精度の場合よりも高精度に変換処理を行うことができるので、上述した分析フィルタにおける丸め処理の場合と同様に、「＋２」の丸めを行う場合の式（１１ａ）（互換）と、「＋２」を付けない式（１１ｂ）（非互換）の両方が考えられる。
【０１７８】
この固定小数点型５×３合成フィルタと、上述した整数型５×３合成フィルタとの間で、演算手段の構成を共通化する場合には、式（１１ａ）を用いることが必要である。
【０１７９】
図１０のような演算を行う固定小数点型５×３合成フィルタにおいて、低域成分、高域成分の１組の係数を生成するのに要する演算量は、乗算「３」、加減算「５」（互換）、または加減算「４」（非互換）となる。
【０１８０】
次に、以上のような非可逆な符号化処理および復号処理の流れについて説明する。最初に、図２１のフローチャートを参照して、符号化装置３００による符号化処理の流れの例を説明する。この符号化処理は、順方向と逆方向の変換が完全に保証されない非可逆な方法により画像データを符号化する処理である。
【０１８１】
分析フィルタ処理部３１１は、上述したように、整数精度ではなく固定小数点精度で処理を行う以外は、基本的に可逆の場合（分析フィルタ処理部１１１による分析フィルタ処理の場合）と同様に分析フィルタ処理を行う。すなわち、ステップＳ３０１乃至ステップＳ３０５の処理は、図１２のステップＳ１０１乃至ステップＳ１０５の処理のそれぞれと同様に実行される。
【０１８２】
分析フィルタ処理部３１１（ウェーブレット変換部３０１）により、１プレシンクト分の画像データが固定小数点精度で最終レベルまで分析フィルタ処理されると、ステップＳ３０６において、量子化部３０６は、その１プレシンクト分の係数データを量子化する。実際には、量子化部３０６は、ウェーブレット変換部３０１より供給される係数データを順次量子化する。
【０１８３】
ステップＳ３０７において、係数並び替え部３０５は、高域成分から低域成分の順に並ぶ量子化された係数データを低域成分から高域成分の順に並び替える。ステップＳ３０８において、エントロピ符号化部３０６は、並び替えられた係数データをエントロピ符号化する。符号化が終了すると、ウェーブレット変換部３０１は、ステップＳ３０９において、処理対象プレシンクト番号Ａの値をインクリメントし、次のプレシンクトに処理対象を変更する。ステップＳ３１０において、ウェーブレット変換部３０１は、未処理のラインが存在するか否かを判定し、存在すると判定した場合、処理をステップＳ３０２に戻し、それ以降の処理を繰り返す。また、ステップＳ３１０において、未処理のラインが存在しないと判定した場合、ウェーブレット変換部３０１は、符号化処理を終了する。
【０１８４】
符号化装置３００は、以上のような符号化処理をピクチャ（フレームまたはフィールド）単位で繰り返す。
【０１８５】
次に、図２２のフローチャートを参照して、復号装置４００による復号処理の流れの例を説明する。この復号処理は、順方向と逆方向の変換が完全に保証されない非可逆な方法により符号化データを復号する処理である。
【０１８６】
復号装置４００は、上述したように、整数精度ではなく固定小数点精度で処理を行う以外は、基本的に可逆の場合（復号装置２００による復号処理の場合）と同様に復号処理を行う。ただし、非可逆の場合、遅延時間の低減が最優先されるため、係数の並び替えは符号化装置１００において行われる。また、非可逆の場合、符号化装置３００において量子化も行われる。したがって、復号装置４００は、係数を並び替える代わりに逆量子化を行う。
【０１８７】
復号処理が開始されると、エントロピ復号部４０１は、ステップＳ４０１において、入力された符号化データをエントロピ復号する。ステップＳ４０２において、逆量子化部４０２は、係数データをステップＳ３０６（図２１）に対応する方法で逆量子化する。ステップＳ４０３において、ウェーブレット逆変換部４０４は、係数バッファ部４０３に、逆量子化部４０２より供給された係数データが１プレシンクト分以上保持されると、その１プレシンクト分の係数データを読み出して、固定少数点精度の非可逆垂直合成フィルタ処理を行い、ステップＳ４０４において、固定小数点精度の非可逆水平合成フィルタ処理を行う。
【０１８８】
ステップＳ４０５において、ウェーブレット逆変換部４０４は、合成フィルタ処理をレベル１まで行ったか否かを判定し、まだレベル１まで達していないと判定した場合、処理をステップＳ４０３に戻し、低域成分に対してそれ以降の処理を繰り返す。また、ステップＳ４０５において、合成フィルタ処理をレベル１まで行ったと判定した場合、処理はステップＳ４０６に進む。
【０１８９】
ステップＳ４０６において、エントロピ復号部４０１は、復号処理を終了するか否かを判定し、終了しないと判定した場合、処理をステップＳ４０１に戻し、それ以降の処理を繰り返す。また、ステップＳ４０６において、復号処理を終了すると判定した場合、復号処理が終了される。
【０１９０】
復号装置４００は、以上のような復号処理をピクチャ（フレームまたはフィールド）単位で繰り返す。
【０１９１】
以上のような各種処理は、例えば、図２３に示されるように、適宜、並列的に実行させることもできる。
【０１９２】
図２３は、図１４に示される符号化装置３００と図１８に示される復号装置４００の各部により実行される非可逆の場合の処理の各要素の並列動作の例を概略的に示す図である。この図２３は、上述した図７や図８と対応するものである。画像データの入力Ｉｎ−１（図２３のＡ）に対して、ウェーブレット変換部３０１（図１４）で１回目のウェーブレット変換ＷＴ−１が施される（図２３のＢ）。この１回目のウェーブレット変換ＷＴ−１は、最初の３ラインが入力された時点で開始され、係数Ｃ１が生成される。すなわち、画像データＩｎ−１の入力からウェーブレット変換ＷＴ−１が開始されるまで、３ライン分の遅延が生じる。
【０１９３】
生成された係数データは、量子化後、係数並び替え用バッファ部３０４（図１４）に格納される。以降、入力された画像データに対してウェーブレット変換が施され、１回目の処理が終了すると、そのまま２回目のウェーブレット変換ＷＴ−２に処理が移行する。
【０１９４】
２回目のウェーブレット変換ＷＴ−２のための画像データＩｎ−２の入力と、その２回目のウェーブレット変換ＷＴ−２の処理と並列的に、係数並び替え部３０５（図１４）により３個の、係数Ｃ１、係数Ｃ４、および係数Ｃ５の並び替えＯｒｄ−１が実行される（図２３のＣ）。
【０１９５】
なお、ウェーブレット変換ＷＴ−１の終了から並び替えＯｒｄ−１が開始されるまでの遅延は、例えば、並び替え処理を係数並び替え部３０５に指示する制御信号の伝達に伴う遅延や、制御信号に対する係数並び替え部３０５の処理開始に要する遅延、プログラム処理に要する遅延といった、装置やシステム構成に基づく遅延であって、符号化処理における本質的な遅延ではない。
【０１９６】
係数データは、並び替えが終了した順に係数並び替え用バッファ部３０４から読み出され、エントロピ符号化部３０６（図１４）に供給され、エントロピ符号化ＥＣ−１が行われる（図２３のＤ）。このエントロピ符号化ＥＣ−１は、３個の、係数Ｃ１、係数Ｃ４、および係数Ｃ５の、全ての並び替えの終了を待たずに開始することができる。例えば、最初に出力される係数Ｃ５による１ラインの並び替えが終了した時点で、その係数Ｃ５に対するエントロピ符号化を開始することができる。この場合、並び替えＯｒｄ−１の処理開始からエントロピ符号化ＥＣ−１の処理開始までの遅延は、１ライン分となる。
【０１９７】
エントロピ符号化部３０６によるエントロピ符号化ＥＣ−１が終了した符号化データは、所定の信号処理が施された後、復号装置４００（図１８）に伝送される（図２３のＥ）。
【０１９８】
以上のように、符号化装置３００に対しては、１回目の処理による７ライン分の画像データ入力に続けて、画面上の下端のラインまで画像データが順次、入力される。符号化装置３００では、画像データの入力Ｉｎ−ｎ（ｎは２以上）に伴い、上述したようにして、４ライン毎にウェーブレット変換ＷＴ−ｎ、並び替えＯｒｄ−ｎおよびエントロピ符号化ＥＣ−ｎを行う。符号化装置３００における最後の回の処理に対する並び替えＯｒｄおよびエントロピ符号化ＥＣは、６ラインに対して行われる。これらの処理は、符号化装置３００において、図２３のＡ乃至図２３のＤに例示されるように、並列的に行われる。
【０１９９】
符号化装置３００によるエントロピ符号化ＥＣ−１により符号化された符号化データは、復号装置４００に供給される。復号装置４００のエントロピ復号部４０１（図１８）は、供給された、エントロピ符号化ＥＣ−１により符号化された符号化データに対して、順次、エントロピ符号の復号ｉＥＣ−１を行い、係数データを復元する（図２３のＦ）。復元された係数データは、逆量子化された後、順次、係数バッファ部４０３に格納される。ウェーブレット逆変換部４０４は、係数バッファ部４０３にウェーブレット逆変換が行えるだけ係数データが格納されたら、係数バッファ部４０３から係数データを読み出して、読み出された係数データを用いてウェーブレット逆変換ｉＷＴ−１を行う（図２３のＧ）。
【０２００】
図７および図８を参照して説明したように、ウェーブレット逆変換部４０４によるウェーブレット逆変換ｉＷＴ−１は、係数Ｃ４および係数Ｃ５が係数バッファ部４０３に格納された時点で開始することができる。したがって、エントロピ復号部４０１による復号ｉＥＣ−１が開始されてからウェーブレット逆変換部４０４によるウェーブレット逆変換ｉＷＴ−１が開始されるまでの遅延は、２ライン分となる。
【０２０１】
ウェーブレット逆変換部４０４において、１回目のウェーブレット変換による３ライン分のウェーブレット逆変換ｉＷＴ−１が終了すると、ウェーブレット逆変換ｉＷＴ−１で生成された画像データの出力Ｏｕｔ−１が行われる（図２３のＨ）。出力Ｏｕｔ−１では、図７および図８を用いて説明したように、第１ライン目の画像データが出力される。
【０２０２】
符号化装置３００における１回目の処理による３ライン分の符号化された係数データの入力に続けて、エントロピ符号化ＥＣ−ｎ（ｎは２以上）により符号化された係数データが順次、復号装置４００に対して入力される。復号装置４００では、入力された係数データに対して、上述したようにして、４ライン毎にエントロピ復号ｉＥＣ−ｎおよびウェーブレット逆変換ｉＷＴ−ｎを行い、ウェーブレット逆変換ｉＷＴ−ｎにより復元された画像データの出力Ｏｕｔ−ｎを順次、行う。符号化装置３００の最後の回に対応するエントロピ復号ｉＥＣおよびウェーブレット逆変換ｉＷＴは、６ラインに対して行われ、出力Ｏｕｔは、８ラインが出力される。これらの処理は、復号装置４００において、図２３のＦ乃至図２３のＨに例示されるように、並列的に行われる。
【０２０３】
上述のようにして、画面上部から下部の方向に順番に、符号化装置３００および復号装置４００における各処理を並列的に行うことで、画像圧縮処理および画像復号処理をより低遅延で行うことが可能となる。
【０２０４】
図２３を参照して、固定小数点型５×３分析フィルタおよび固定小数点型５×３合成フィルタを用いて分解レベル＝２までウェーブレット変換およびウェーブレット逆変換を行った場合の、画像入力から画像出力までの遅延時間を計算してみる。第１ライン目の画像データが符号化装置３００に入力されてから、この第１ライン目の画像データが復号装置４００から出力されるまでの遅延時間は、下記の各要素の総和となる。なお、ここでは、伝送路における遅延や、装置各部の実際の処理タイミングに伴う遅延などの、システムの構成により異なる遅延は、除外している。
【０２０５】
（１）最初のライン入力から７ライン分のウェーブレット変換ＷＴ−１が終了するまでの遅延Ｄ＿ＷＴ
（２）３ライン分の計数並び替えＯｒｄ−１に伴う時間Ｄ＿Ｏｒｄ
（３）３ライン分のエントロピ符号化ＥＣ−１に伴う時間Ｄ＿ＥＣ
（４）３ライン分のエントロピ復号ｉＥＣ−１に伴う時間Ｄ＿ｉＥＣ
（５）３ライン分のウェーブレット逆変換ｉＷＴ−１に伴う時間Ｄ＿ｉＷＴ
【０２０６】
図２３を参照して、上述の各要素による遅延の計算を試みる。（１）の遅延Ｄ＿ＷＴは、１０ライン分の時間である。（２）の時間Ｄ＿Ｏｒｄ、（３）の時間Ｄ＿ＥＣ、（４）の時間Ｄ＿ｉＥＣ、および（５）の時間Ｄ＿ｉＷＴは、それぞれ３ライン分の時間である。また、符号化装置３００において、並び替えＯｒｄ−１が開始されてから１ライン後には、エントロピ符号化ＥＣ−１を開始することができる。同様に、復号装置４００において、エントロピ復号ｉＥＣ−１が開始されてから２ライン後には、ウェーブレット逆変換ｉＷＴ−１を開始することができる。また、エントロピ復号ｉＥＣ−１は、エントロピ符号化ＥＣ−１で１ライン分の符号化が終了した時点で処理を開始することができる。
【０２０７】
したがって、この図２３の例では、符号化装置３００に第１ライン目の画像データが入力されてから、復号装置４００からその第１ライン目の画像データが出力されるまでの遅延時間は、１０＋１＋１＋２＋３＝１７ライン分となる。
【０２０８】
遅延時間について、より具体的な例を挙げて考察する。入力される画像データがHDTV(High Definition Television)のインタレースビデオ信号の場合、例えば１９２０画素×１０８０ラインの解像度で１フレームが構成され、１フィールドは、１９２０画素×５４０ラインとなる。したがって、フレーム周波数を３０Hzとした場合、１フィールドの５４０ラインが１６.６７msec（＝１sec/６０フィールド）の時間に、符号化装置３００に入力されることになる。
【０２０９】
したがって、７ライン分の画像データの入力に伴う遅延時間は、０.２１６msec（＝１６.６７msec×７/５４０ライン）であり、例えば１フィールドの更新時間に対して非常に短い時間となる。また、上述した（１）の遅延Ｄ＿ＷＴ、（２）の時間Ｄ＿Ｏｒｄ、（３）の時間Ｄ＿ＥＣ、（４）の時間Ｄ＿ｉＥＣ、および（５）の時間Ｄ＿ｉＷＴの総和についても、処理対象のライン数が少ないため、遅延時間が非常に短縮される。
【０２１０】
以上のように、図１４乃至図２３を参照して説明した非可逆な方法による符号化処理および復号処理の場合、遅延時間の低減が優先されるので、符号化装置３００のエントロピ符号化部３０６は、１プレシンクト毎に係数データを符号化する。また、より遅延時間を低減させるために、係数データの並び替えは符号化装置３００（係数並び替え部３０５）において行う。さらに、非可逆方式の場合、係数データの量子化を行うことができる。符号化装置３００（量子化部３０３）において、この量子化を行うことにより、圧縮効果の向上を期待することができる。
【０２１１】
また、非可逆方式の場合、符号化装置３００は、ウェーブレット変換部３０１において、例えば固定小数点型５×３分析フィルタのような非可逆のフィルタを用いることができる。これにより、符号化装置３００は、例えば整数型５×３分析フィルタのような可逆の分析フィルタを用いる場合よりも精度良く分析フィルタ処理を行うことができる。なお、例えば、９×７分析フィルタ、１３×３分析フィルタ、または９×２分析フィルタのように、固定小数点型５×３分析フィルタ以外の非可逆な分析フィルタも適用可能である。同様に、復号装置４００に、例えば、９×７合成フィルタ、１３×３合成フィルタ、または９×２合成フィルタのように、固定小数点型５×３合成フィルタ以外の非可逆な合成フィルタを適用することもできる。
【０２１２】
これに対して、図１乃至図１３を参照して説明した可逆な方法による符号化処理および復号処理の場合、ベースバンドの画像データを符号化装置１００において符号化し、復号装置２００において復号すると、符号化前のベースバンドの画像データが復元される。つまり、符号化前に比べて画質が劣化していない高品質な復号画像を得ることができる。したがって、この可逆な方法の場合、従来のMPEGやJPEG２０００等の方式の場合よりも、データ伝送の遅延時間を低減させることは当然であるが、ある程度、高品質なデータ伝送を考慮するようにしてもよい。一般的に、遅延時間の低減とデータ伝送の高品質化はトレードオフの関係にあるので、データ伝送の高品質化を行うためには、ある程度遅延時間の低減を抑制する必要がある。
【０２１３】
例えば、符号化装置１００の分析フィルタ処理部１１１は、１プレシンクト単位で分析フィルタ処理を行うが、エントロピ符号化部１０３は、圧縮効率を向上させ、データを高品質化させるために、複数プレシンクト分の係数データが得られるまで待機し、その複数プレシンクト分の係数データを使ってエントロピ符号化を行う。また、可逆方式であるので、符号化装置１００は、係数データの量子化は行わない（復号装置２００は逆量子化を行わない）。係数の並び替えは、復号装置２００において行うように説明したが、遅延時間の低減を重視するのであれば、符号化装置１００において行うようにしてもよい。
【０２１４】
また、符号化装置１００のウェーブレット変換部１０１が、整数型５×３分析フィルタを用いてウェーブレット変換を行うように説明したが、例えば、２×１分析フィルタのような整数型５×３分析フィルタ以外の可逆な分析フィルタを適用することもできる。同様に、復号装置２００のウェーブレット逆変換部２０４に対しては、整数型５×３合成フィルタの代わりに、例えば、２×１合成フィルタのような整数型５×３合成フィルタ以外の可逆な分析フィルタを適用するようにしてもよい。
【０２１５】
以上のように、可逆な方法により符号化処理および復号処理を行うことにより、符号化装置１００および復号装置２００は、画像データを、高品質かつ低遅延に伝送することができる。
【０２１６】
なお、以上においては、可逆な方法により符号化・復号処理を行いデータ伝送を行う場合、係数の並び替えを復号装置において行うように説明したが、遅延時間を低減させるために係数の並び替えは符号化装置において行うようにしてもよい。
【０２１７】
また、符号化データを伝送する場合、一般的には、符号化データは、パケット化されて伝送される。このとき、例えば可逆な方法により符号化したこと、符号化に使用したフィルタ、エントロピ符号化の処理単位数、または、係数データの並び替えの有無など、符号化に関する情報をパケットのヘッダ情報に付加するようにし、復号装置において、そのヘッダ情報に基づいて、符号化処理の内容に応じた適切な復号処理を行うことができるようにしてもよい。
【０２１８】
以下にそれらの場合について説明する。図２４は、本発明を適用した符号化装置の他の構成例を示すブロック図である。図２４において、符号化装置５００は、符号化装置１００同様、可逆な方法によりベースバンドの画像データを符号化し、符号化データを生成する。ただし、符号化装置５００は、さらに、その符号化データをパケット化して出力する。このとき、符号化装置５００は、符号化に関する情報を用いてヘッダ情報を生成し、符号化データとともに復号装置に供給する。これにより、符号化装置５００は、復号装置に符号化処理に関する情報を提供することができ、復号装置が、そのヘッダ情報に基づいて、符号化処理の内容に応じた適切な復号処理を行うことができるようにすることができる。
【０２１９】
符号化装置５００は、図２４に示されるように、制御部５０１、符号化部５０２、ヘッダ生成部５０３、パケット化部５０４、および送信部５０５を有する。
【０２２０】
制御部５０１は、制御情報を符号化部５０２に供給することにより、エントロピ符号化部５１５の符号化処理の処理単位（プレシンクト数）の指定等、符号化部５０２による符号化処理の制御を行う。制御部５０１は、例えば、図示せぬ入力部を介して入力されるユーザの指示、予め入力されている所定の設定情報、外部の機器より供給された設定情報、または、所定の条件に従って制御部５０１自身が作成した設定情報等に従って制御情報を生成または取得し、それを符号化部５０２に供給する。
【０２２１】
符号化部５０２は、基本的に図１の符号化装置１００に対応する処理部であり、符号化装置１００と同様の構成、すなわち、ウェーブレット変換部１０１に対応するウェーブレット変換部５１１、途中計算用バッファ部１０２に対応する途中計算用バッファ部５１２（分析フィルタ処理部１１１に対応する分析フィルタ処理部５２１）、および、エントロピ符号化部１０３に対応するエントロピ符号化部５１５を有する。ただし、符号化部５０２は、分析フィルタ処理部５２１より出力される、高域成分から低域成分の順に並ぶ係数データを低域成分から高域成分の順に並び替える機能を有しており、そのための構成として、係数並び替え用バッファ部５１３および係数並び替え部５１４を有する。
【０２２２】
係数並び替え用バッファ部５１３は、ウェーブレット変換部５１１において可逆な方法で画像データが符号化されて生成されて供給された係数データをその順に保持する。係数並び替え部５１４は、係数並び替え用バッファ部５１３に高域成分から低域成分の順に保持される係数データを、低域成分から高域成分の順に並び替え、エントロピ符号化部５１５に供給する。
【０２２３】
分析フィルタ処理部５２１のウェーブレット変換部５１１は、分析フィルタ処理部５１１と同様に、途中計算用バッファ部５１２を利用して、入力画像データに対して可逆な分析フィルタ処理を行い、符号化データを生成し、係数並び替え用バッファ部５１３に供給する。なお、ウェーブレット変換部５１１が、使用する可逆な分析フィルタを選択可能としてもよい。その場合、ウェーブレット変換部５１１は、例えば、制御部５０１より供給される制御情報に含まれる指定に基づいて、フィルタを選択する。
【０２２４】
エントロピ符号化部５１５は、係数並び替え部５１４において順序が並び替えられた係数データを、予め設定されたプレシンクト数毎に可逆な方法で符号化し、得られた符号化データをパケット化部５０４に供給する。
【０２２５】
また、符号化部５０２は、制御部５０１より供給される制御情報に基づいて、符号化部５０２内の各部の設定や制御を行う。また、符号化部５０２は、その符号化の設定内容を含む、符号化処理に関する関連情報を生成し、その関連情報をヘッダ生成部５０３に供給する。
【０２２６】
ヘッダ生成部５０３は、供給された関連情報に基づいて、例えば、ピクチャ毎等、所定のデータ単位毎にヘッダ情報を生成する。
【０２２７】
図２５は、ヘッダ生成部５０３により生成されるピクチャヘッダの例を模式的に示す図である。図２５に示されるピクチャヘッダ５３０は、画像データのピクチャ毎に付加される、そのピクチャに関する情報よりなるヘッダ情報である。つまり、このピクチャヘッダ５３０は、１ピクチャに対応するパケット群のうち、先頭パケットのヘッダ部に付加される。このピクチャヘッダ５３０は、例えば、各ピクチャの先頭パケットのヘッダ部に付加される。もちろん、先頭パケット以外に付加されるようにしてももちろんよい。
【０２２８】
図２５に示されるように、ピクチャヘッダ５３０は、ピクチャヘッダであることを表すフラグであるピクチャヘッダフラグが、先頭に配置される。また、ピクチャヘッダ５３０には、符号化部５０２より供給される関連情報、例えば、可逆非可逆識別情報５３２、フィルタタイプ情報５３３、処理単位プレシンクト数情報５３４、および、係数並び替え情報５３５等の、符号化処理に関する情報が含まれる。
【０２２９】
可逆非可逆識別情報５３２は、符号化部５０２による符号化処理が可逆方式であるか非可逆方式であるかを示す。例えば、１ビットのフラグ情報により構成される。フィルタタイプ情報５３３は、ウェーブレット変換部５１１において使用される分析フィルタのフィルタタイプを示す。例えば、所定の識別番号や、フィルタ型名等により構成される。処理単位プレシンクト数情報５３４は、エントロピ符号化部５１５による符号化の処理単位を示す。例えば、プレシンクト数により示される。係数並び替え情報５３５は、符号化部５０２において係数の並び替えが行われたか否かを示す。例えば、１ビットのフラグ情報により構成される。
【０２３０】
もちろん、ピクチャヘッダ５３０には、これ以外の情報が含まれていてもよく、上述した符号化処理に関する情報のうち一部が省略されていても良いし、上述した以外の符号化処理に関する情報がさらに含まれていてもよい。
【０２３１】
符号化部５０２において生成された符号化データを復号する復号装置がこのような関連情報を取得することにより符号化部５０２において行われた符号化処理の内容を容易に把握することができる。したがって、例えば、符号化部５０２において生成された符号化データを、多様な符号化方式に対応する復号装置において復号する場合、その復号装置は、このヘッダ情報に基づいて容易に、適切な復号処理の設定を行うことができる。
【０２３２】
パケット化部５０４は、符号化部５０２より供給される符号化データを所定のデータ単位毎にパケット化し、そのパケットに対して、ヘッダ生成部５０３より供給されるヘッダ情報を適宜付加し、生成したパケットを送信部５０５に供給する。送信部５０５は、伝送路となる通信網のフォーマットに従って、そのパケットを、その伝送路を介して復号装置に送信する。
【０２３３】
なお、以上においては、ヘッダ生成部５０３が関連情報に基づいてピクチャヘッダを生成するように説明したが、ピクチャヘッダ以外のヘッダにヘッダ生成部５０３が符号化に関する情報を含めるようにしてもよい。つまり、ヘッダ生成部５０３が符号化に関する情報を生成するタイミングは、任意であり、ピクチャ単位以外であってもよい。
【０２３４】
以上のような符号化装置５００による符号化処理の流れの例を図２６のフローチャートを参照して説明する。
【０２３５】
ステップＳ５０１において、符号化部５０２は、制御部５０１より供給される制御情報に基づいて、各部、すなわち符号化処理の設定を行う。符号化部５０２は、ステップＳ５０２において、画像データの符号化を開始する。この符号化処理の詳細については、図２７のフローチャートを参照して後述する。これ以降、符号化部５０２による符号化処理は以下の処理と並行して実行される。
【０２３６】
画像データに対する符号化処理が開始されると、パケット化部５０４は、ステップＳ５０３において、符号化部５０２より供給される符号化データを所定のデータ単位毎にパケット化する。ステップＳ５０４において、ヘッダ生成部５０３は、１ピクチャ分の画像データが符号化されたか否かを判定する。１ピクチャ分の画像データが符号化されたと判定した場合、ヘッダ生成部５０３は、処理をステップＳ５０５に進め、符号化部５０２より供給される関連情報に基づいて符号化データに関する情報を含むピクチャヘッダ５３０を生成する。このピクチャヘッダ生成処理については、図２８のフローチャートを参照して後述する。
【０２３７】
ステップＳ５０６において、パケット化部５０４は、生成されたピクチャヘッダをパケットのヘッダ部に付加し、処理をステップＳ５０７に進める。また、ステップＳ５０４において、１ピクチャ分の画像データが符号化されていないと判定した場合、パケット化部５０４は、ステップＳ５０５およびステップＳ５０６の処理を省略し、ステップＳ５０７に処理を進める。ステップＳ５０７において、送信部５０５は、生成されたパケットを伝送路に送信する。
【０２３８】
ステップＳ５０８において、符号化部５０２は、制御部５０１より供給される制御情報が更新されたか否かを判定し、更新されたと判定した場合、処理をステップＳ５０９に進め、符号化の設定を更新する。設定を更新すると符号化部５０２は、処理をステップＳ５１０に進める。また、ステップＳ５０８において、制御部５０１より供給される制御情報が更新されていないと判定した場合、符号化部５０２は、ステップＳ５０９の処理を省略し、処理をステップＳ５１０に進める。ステップＳ５１０において、符号化部５０２は、符号化処理を終了するか否かを判定し、例えば、画像データがまだ供給されており符号化処理を継続すると判定した場合、処理をステップＳ５０３に戻し、それ以降の処理を繰り返す。また、ステップＳ５１０において、符号化処理を終了すると判定した場合、符号化部５０２は、符号化処理を終了する。
【０２３９】
次に、図２７のフローチャートを参照して、符号化部５０２により実行される符号化処理の流れの例を説明する。
【０２４０】
この符号化処理は、基本的に図１２のフローチャートを参照して説明した符号化装置１００による符号化処理と同様に実行される。つまり、ステップＳ５３１乃至ステップＳ５３５の各処理は、図１２のステップＳ１０１乃至ステップＳ１０５の各処理と同様に実行される。ただし、図２７の符号化処理の場合、ステップＳ５３６において、係数並び替え部５１４が、高域成分から低域成分の順に並ぶ係数データを低域成分から高域成分の順に並び替える。また、ステップＳ５３７およびステップＳ５４０の各処理は、図１２のステップＳ１０６乃至ステップＳ１０９の各処理と同様に実行される。
【０２４１】
符号化部５０２による符号化処理は以上のように実行される。
【０２４２】
次に、図２８のフローチャートを参照して、図２６のステップＳ５０５において実行されるピクチャヘッダ生成処理の流れの例を説明する。
【０２４３】
ピクチャヘッダ生成処理が開始されると、ヘッダ生成部５０３は、ステップＳ６１において、ピクチャヘッダフラグ５３１を立てる。ステップＳ５６２において、ヘッダ生成部５０３は、符号化部５０２より供給される関連情報に基づいて、符号化方式が可逆方式であったか、非可逆方式であったかに応じて可逆非可逆識別情報５３２を設定する。
【０２４４】
ステップＳ５６３において、ヘッダ生成部５０３は、符号化部５０２より供給される関連情報に基づいて、ウェーブレット変換に使用したフィルタのタイプに応じて、フィルタタイプ情報５３３を設定する。ステップＳ５６４において、ヘッダ生成部５０３は、符号化部５０２より供給される関連情報に基づいて、符号化処理単位に応じて、処理単位プレシンクト数情報５３４を設定する。ステップＳ５６５において、ヘッダ生成部５０３は、符号化部５０２より供給される関連情報に基づいて、係数を並び替えたことを示すように係数並び替え情報５３５を設定する。さらに、ステップＳ５６６において、ヘッダ生成部５０３は、符号化部５０２より供給される関連情報に基づいて、その他の情報を設定する。
【０２４５】
ステップＳ５６６の処理が終了すると、処理は、図２６のステップＳ５０５に戻り、ステップＳ５０６以降の処理が実行される。
【０２４６】
以上のように、符号化装置５００は、画像データを符号化し、その符号化データをパケット化して出力するとともに、その符号化処理に関する情報を生成し、出力するので、その符号化データを復号する復号装置が容易に符号化処理の内容を把握し、適切な設定で復号処理を行うことができるようにすることができる。つまり、符号化装置５００は、伝送時における、画質劣化に繋がるような不要なデータ欠損等の発生を抑制し、より高品質なデータ伝送を実現することができる。
【０２４７】
また、符号化装置５００は、高域成分から低域成分の順に生成される係数データを、復号処理（ウェーブレット逆変換処理）の順序である低域成分から高域成分の順に並び替えることにより、よりデータ伝送による（符号化処理開始から復号処理終了までの）遅延時間を低減させることができる。
【０２４８】
この符号化処理に対応する復号処理については後述する。その前に符号化装置についての説明を続ける。
【０２４９】
以上においては、符号化装置が可逆な方法または非可逆な方法により符号化を行うように説明したが、この他にも、符号化装置が符号化の方法を選択することができるようにしてもよい。例えば、符号化装置が、可逆な方法による符号化処理と、非可逆な方法による符号化処理の両方を実行することができ、どちらの方法で符号化するかを選択することができるようにしてもよい。さらに、符号化装置が、係数並び替えを行うか否かを選択することができるようにしてもよいし、エントロピ符号化の処理単位を任意に設定することができるようにしてもよい。つまり、符号化装置が、符号化処理に関する設定を任意に行うことができるようにしてもよい。
【０２５０】
図２９は、本発明を適用した符号化装置の、さらに他の構成例を示すブロック図である。
【０２５１】
図２９において、符号化装置６００は、画像データを符号化する符号化装置であり、上述した符号化装置５００等と基本的に同様の構成を有する。ただし、符号化装置６００は、分析フィルタ処理を可逆な方法で行うか非可逆な方法で行うか、および、並び替え処理を行うか否かを選択することができる。また、符号化装置６００は、エントロピ符号化処理の処理単位を任意に設定することができる。
【０２５２】
図２９に示されるように、符号化装置６００は、制御部６０１、符号化部６０２、ヘッダ生成部６０３、パケット化部６０４、および送信部６０５を有する。これらの制御部６０１、符号化部６０２、ヘッダ生成部６０３、パケット化部６０４、および送信部６０５は、符号化装置５００の制御部５０１、符号化部５０２、ヘッダ生成部５０３、パケット化部５０４、および送信部５０５にそれぞれ対応し、それぞれ、基本的に同様の構成を有し、同様の処理を行う。
【０２５３】
ただし、符号化部６０２は、上述したように、分析フィルタ処理、並び替え処理、およびエントロピ符号化処理のそれぞれについて設定変更可能である。図２９に示されるように、符号化部６０２は、分析フィルタ処理部６２１、並び替え処理部６２２、および符号化部６２３を有する。
【０２５４】
分析フィルタ処理部６２１は、分析フィルタ処理部５２１に対応し、ウェーブレット変換部６１１および途中計算用バッファ部６１２を有する。並び替え処理部６２２は、係数並び替え用バッファ部５１３と同様の係数並び替え用バッファ部６１４と、係数並び替え部５１４と同様の係数並び替え部６１５の他に、切替部６１３および切替部６１６を有する。切替部６１３および切替部６１６は、制御部６０１の制御に基づいて、係数並び替えを行うか否かを切り替える。
【０２５５】
例えば、並び替え処理部６２２は、制御部６０１の制御に基づいて、係数並び替え部６１５において係数データの並び替えを行う場合、切替部６１３に、ウェーブレット変換部６１１より供給される係数データを係数並び替え用バッファ部６１４に供給するように接続を切り替えさせ、切替部６１６に、係数並び替え部６１５の出力を符号化処理部６２３の符号化用バッファ部６１７に供給するように接続を切り替えさせる。
【０２５６】
また、例えば、並び替え処理部６２２は、制御部６０１の制御に基づいて、係数並び替え部６１５において係数データの並び替えを行わない場合、切替部６１３に、ウェーブレット変換部６１１より供給される係数データを切替部６１６に供給するように接続を切り替えさせ、切替部６１６に、切替部６１３の出力を符号化処理部６２３の符号化用バッファ部６１７に供給するように接続を切り替えさせる。
【０２５７】
符号化処理部６２３は、符号化用バッファ部６１７とエントロピ符号化部６１８を有する。符号化用バッファ部６１７は、切替部６１６より供給される係数データを順次蓄積する。エントロピ符号化部６１８は、符号化バッファ部６１７に蓄積された係数データに対して、符号化装置５００のエントロピ符号化部５１５と同様のエントロピ符号化を行うが、このとき、制御部６０１に指定されるプレシンクト数を処理単位としてエントロピ符号化を行う。この符号化用バッファ部６１７に係数データを蓄積させることにより、エントロピ符号化部６１８は、例えば２プレシンクトや３プレシンクト等のように、任意の数（複数）のプレシンクト分の係数データを処理単位として符号化処理を行うこともできる。
【０２５８】
図３０は、分析フィルタ処理部６２１の詳細な構成例を示すブロック図である。図３０に示されるように、ウェーブレット変換部６１１は、バッファ部６３１、切替部６３２、整数型ウェーブレット変換部６３３、固定小数点型ウェーブレット変換部６３４、および切替部６３５を有する。
【０２５９】
バッファ部６３１は、入力画像データを蓄積する。切替部６３２は、接続を切り替えることにより、バッファ部６３１より出力される入力画像データを整数型ウェーブレット変換部６３３または固定小数点型ウェーブレット変換部６３４のいずれか一方に供給する。整数型ウェーブレット変換部６３３は、基本的にウェーブレット変換部１１１やウェーブレット変換部５１１と同様の構成を有し、可逆な方法で分析フィルタ処理を行う。固定小数点型ウェーブレット変換部６３４は、基本的にウェーブレット変換部３０１と同様の構成を有し、非可逆な方法で分析フィルタ処理を行う。切替部６３５は、接続を切り替えることにより、整数型ウェーブレット変換部６３３の出力、または、固定小数点型ウェーブレット変換部６３４のうちいずれか一方を切替部６１３に供給する。
【０２６０】
制御部６０１は、制御情報を供給することにより、切替部６３２、整数型ウェーブレット変換部６３３、固定小数点型ウェーブレット変換部６３４、および切替部６３５の動作を制御し、入力画像データに対して、整数型ウェーブレット変換部６３３または固定小数点型ウェーブレット変換部６３４のうちいずれか一方においてウェーブレット変換処理（分析フィルタ処理）を行わせる。つまり、分析フィルタ処理部６２１（ウェーブレット変換部６１１）は、制御部６０１の制御に従って、可逆な方法または非可逆な方法によりウェーブレット変換処理を行う。
【０２６１】
符号化装置６００による符号化処理の流れは、基本的に、図２６を参照して説明した場合と同様であるのでその説明を省略する。図３１のフローチャートを参照して、図２９のウェーブレット変換部６１１により、図２６のステップＳ５０２に対応する処理において実行が開始される符号化処理の流れの例を説明する。
【０２６２】
ステップＳ６０１乃至ステップＳ６０５の各処理は、基本的にステップＳ５３１乃至ステップＳ５３５の各処理と同様に実行される。ただし、ステップＳ６０３およびステップＳ６０４において、ウェーブレット変換部６１１は、制御部６０１の制御に基づいて、整数型ウェーブレット変換部６３３または固定小数点型ウェーブレット変換部６３４のうちいずれか一方、つまり、可逆な方法か若しくは非可逆な方法により分析フィルタリング（垂直分析フィルタリングおよび水平分析フィルタリング）を行う。
【０２６３】
ステップＳ６０６において、並び替え処理部６２２は、制御部６０１の制御に基づいて、係数データを並び替えるか否かを判定し、並び替えると判定した場合、切替部６１３および切替部６１６を制御し、係数並び替え部６１５を利用することができるようにし、ステップＳ６０７において、ウェーブレット変換部６１１より出力された、高域成分から低域成分の順に並ぶ係数データを低域成分から高域成分の順に並び替える。ステップＳ６０６において係数データの並び替えを行わないと判定した場合、並び替え処理部６２２は、ステップＳ６０７の処理を省略する。
【０２６４】
ステップＳ６０８乃至ステップＳ６１１の各処理は、ステップＳ５３７乃至ステップＳ５４０の各処理と基本的に同様に実行される。ただし、エントロピ符号化部６１８は、制御部６０１により設定されたデータ単位（プレシンクト数）を処理単位としてエントロピ符号化を行う。
【０２６５】
符号化部６０２は、以上のような符号化処理をピクチャ単位で繰り返し実行する。
【０２６６】
次に、図３２のフローチャートを参照して、図２６のステップＳ５０１に対応する処理において実行される設定処理の流れの例を説明する。
【０２６７】
設定処理が開始されると、ステップＳ６３１において、ウェーブレット変換部６１１は、制御部６０１より供給される制御情報に基づいて、可逆符号化を行うか否かを判定する。可逆方式による符号化を行うと判定した場合、ウェーブレット変換部６１１は、処理をステップＳ６３２に進め、整数型ウェーブレット変換部６３３を選択するように切替部６３２および切替部６３５を制御し、整数型ウェーブレット変換部６３３をアクティブにする。
【０２６８】
また、ステップＳ６３１において非可逆方式による符号化を行うと判定した場合、ウェーブレット変換部６１１は、処理をステップＳ６３３に進め、固定小数点型ウェーブレット変換部６３４を選択するように切替部６３２および切替部６３５を制御し、固定小数点型ウェーブレット変換部６３４をアクティブにする。
【０２６９】
ステップＳ６３４において、並び替え処理部６２２は、制御部６０１より供給される制御情報に基づいて、並び替えを行うか否かを判定する。係数データを並び替えると判定した場合、並び替え処理部６２２は、処理をステップＳ６３５に進め、並び替えを行うように切替部６１３および切替部６１６を制御し、係数並び替え部６１５および係数並び替え用バッファ部６１４をアクティブにする。これに対して、ステップＳ６３４において並び替えを行わないと判定した場合、並び替え処理部６２２は、処理をステップＳ６３６に進め、並び替えを行わないように切替部６１３および切替部６１６を制御する。
【０２７０】
ステップＳ６３７において、エントロピ符号化部６１８は、制御部６０１より供給される制御情報に基づいて、エントロピ符号化の処理単位（例えばプレシンクト数）を設定する。つまり、エントロピ符号化部６１８は、設定された処理単位プレシンクト数の係数データが符号化用バッファ部６１７に蓄積されるまで待機し、設定された処理単位プレシンクト数の係数データが符号化用バッファ部６１７に蓄積されると、それらの係数データを用いて、エントロピ符号化処理を実行する。
【０２７１】
ステップＳ６３７の処理が終了すると、処理は、図２６のステップＳ５０１に対応する処理に戻され、それ以降の処理が実行される。
【０２７２】
以上のようにして、符号化装置６００は、制御情報に基づいて符号化部６０２の符号化方法に関する設定を行うことができる。なお、設定を更新する場合も基本的に同様の処理により行うことができる。また、符号化装置６００のヘッダ生成部６０３は、以上のように行った符号化処理の設定を、符号化に関する情報としてピクチャヘッダに埋め込む。その方法は、図２８のフローチャートを参照して説明した場合と同様であり、ヘッダ生成部６０３は、符号化部６０２より供給される関連情報に基づいて各情報をピクチャヘッダに埋め込む。
【０２７３】
なお、以上においては、可逆な方法でウェーブレット変換を行う場合と、非可逆な方法でウェーブレット変換を行う場合との切り替えを、整数型ウェーブレット変換部６３３と固定小数点型ウェーブレット変換部６３４のいずれか一方を使用することにより行うように説明したが、上述したように、可逆な分析フィルタ処理と非可逆な分析フィルタ処理は、ビット精度以外については共通化することができる。
【０２７４】
図３３は、分析フィルタ処理６２１の他の構成例を示すブロック図である。
【０２７５】
図３３に示されるように、この場合、ウェーブレット変換部６１１は、バッファ部６４１、切替部６４２、ビットシフト器６４３、切替部６４４、およびウェーブレット変換器６４５を有する。ビットシフト器６４３およびウェーブレット変換器６４５は、ビットシフト器３２１およびウェーブレット変換器３２２（図１５）と同様である。バッファ部６４１は、入力される画像データを一時的に保持し、所定のタイミングで切替部６４２に供給する。切替部６４２および切替部６４４は、制御部６０１の制御に従って、ビットシフト器６４３を使用するか否かを選択するように接続を切り替える。
【０２７６】
例えば、制御部６０１の制御情報に基づいて、ウェーブレット変換部６１１が整数精度の分析フィルタ処理（可逆な方法で分析フィルタ処理）を行うようにする場合、切替部６４２および切替部６４４は、バッファ部６４１より出力される画像データがビットシフト器６４３を介さずにウェーブレット変換器６４５に供給されるように接続を切り替える。
【０２７７】
また、例えば、制御部６０１の制御情報に基づいて、ウェーブレット変換部６１１が固定小数点精度の分析フィルタ処理（非可逆な方法で分析フィルタ処理）を行うようにする場合、切替部６４２および切替部６４４は、バッファ部６４１より出力される画像データがビットシフト器６４３を介してウェーブレット変換器６４５に供給されるように接続を切り替える。
【０２７８】
つまり、ウェーブレット変換器６４５は、入力画像データをビットシフトせずに、ウェーブレット変換する場合、整数精度の（可逆な方法で）ウェーブレット変換処理を行う。これに対して、入力画像データをビットシフト器６４３においてビットシフトさせてから、ウェーブレット変換する場合、ウェーブレット変換器６４５は、固定小数点精度の（非可逆な方法で）ウェーブレット変換処理を行う。
【０２７９】
このように構成の一部を共通化することにより、ハードウェア（回路規模）の増大を抑制することができ、符号化装置６００の消費電力やコストを低減させることができる。なお、切り替え方法やピクチャヘッダの生成方法は、図３０の構成の場合と同様であるのでその説明は省略する。
【０２８０】
次に、以上に説明した符号化装置５００および符号化装置６００に対応し、ピクチャヘッダ（符号化に関する情報）を解析し、適切な復号処理を行う復号装置について説明する。図３４は、復号装置の他の構成例を示すブロック図である。
【０２８１】
図３４において、復号装置７００は、符号化装置５００および符号化装置６００に対応し、それらより供給されるピクチャヘッダ（符号化に関する情報）を解析し、適切な復号処理を行う。復号装置７００は、受信部７０１、パケット解析部７０２、ヘッダ解析部７０３、および復号部７０４を有する。
【０２８２】
受信部７０１は、符号化装置より供給されるパケットを受信し、パケット解析部７０２に供給する。パケット解析部７０２は、供給されたパケットを解析し、パケットよりピクチャヘッダ等のヘッダ情報を抽出し、そのヘッダ情報をヘッダ解析部７０３に供給するとともに、パケットより符号化データを抽出し、その符号化データを復号部７０４に供給する。ヘッダ解析部７０３は、供給されるヘッダ情報を解析し、例えば、上述したピクチャヘッダに含まれる符号化に関する情報を抽出し、その符号化に関する情報に基づいて復号処理の設定を最適化するように、復号処理のための制御情報を生成し、その制御情報を復号部７０４の制御部７１１に供給する。
【０２８３】
復号部７０４は、復号装置２００や復号装置４００と基本的に同様の構成を有し、供給される符号化データを、符号化装置において行われた符号化処理に対応する方法で復号し、ベースバンドの画像データを生成する。
【０２８４】
図３４に示されるように、復号部７０４は、制御部７１１、エントロピ復号部７１２、並び替え処理部７３１、および合成フィルタ処理部７３２を有する。
【０２８５】
制御部７１１は、ヘッダ解析部７０３より供給される制御情報に基づいて、エントロピ復号部７１２、並び替え処理部７３１、および合成フィルタ処理部７３２の動作を制御する。エントロピ復号部７１２は、制御部７１１の制御に基づいて、パケット解析部７０２より供給される符号化データに対して、符号化装置において行われたエントロピ符号化処理に対応する方法でエントロピ復号処理を行い、得られた係数データを並び替え処理部７３１の切替部７１３に供給する。
【０２８６】
並び替え処理部７３１は、並び替え処理部６２２と基本的に同様の構成を有し、制御部７１１の制御に基づいて、係数データの並び替えを行うか否かを選択することができる。図３４に示されるように、並び替え処理部７３１は、切替部７１３、係数並び替え用バッファ部７１４、係数並び替え部７１５、および切替部７１６を有する。つまり、並び替え処理部７３１は、制御部７１１の制御に基づいて、切替部７１３および切替部７１６の接続を切り替えることにより、係数並び替え用バッファ部７１４および係数並び替え部７１５を利用して係数データの並び替えを行うか否かを切り替える。なお、並び替え処理部７３１は、符号化装置側において係数並び替えが行われていない場合、係数データの並び替えを行い、符号化装置側において係数並び替えが行われた場合、係数データの並び替えを行わないようにする。
【０２８７】
以上のように、並び替え処理部７３１は、容易に、符号化装置側において係数データの並びか処理が行われたか否かに応じて係数データの並び替えを行うか否かを選択することができる。切替部７１６は、供給された係数データを合成フィルタ処理部７３２のゲイン調整部７１７に供給する。
【０２８８】
合成フィルタ処理部７３２は、ゲイン調整部７１７、係数バッファ部７１８、およびウェーブレット逆変換部７１９を有する。係数バッファ部７１８およびウェーブレット逆変換部７１９は、基本的に、係数バッファ部２０３およびウェーブレット逆変換部２０４（図９）や、係数バッファ部４０３およびウェーブレット変換部４０４（図１８）と同様の構成を有し、同様の処理を行う。ただし、ウェーブレット逆変換部７１９は、可逆方式および非可逆方式の両方の合成フィルタ処理を行うことができる。ゲイン調整部７１７は、必要に応じて係数データの高域成分のゲイン調整を行う。
【０２８９】
図３５は、合成フィルタ処理部７３２の詳細な構成例を示すブロック図である。
【０２９０】
図３５に示されるように、ゲイン調整部７１７は、切替部７５１、高域成分ゲイン調整部７５２、および切替部７５３を有し、制御部７１１の制御に基づいて、高域成分のゲインを調整するか否かを選択する。ゲイン調整を行う場合、ゲイン調整部７１７は、制御部７１１の制御に基づいて、切替部７５１および切替部７５３に、切替部７５１に入力される係数データが高域成分ゲイン調整部７５２を介して切替部７５３に供給されるように接続を切り替えさせる。高域成分ゲイン調整部７５２は、供給される係数データの高域成分に対して所定のゲイン調整を行なう。例えば、符号化側においてゲイン調整が行われた場合、ゲイン調整部７１７は、ゲイン調整を符号化時と逆方向に行うようにする。
【０２９１】
また、ゲイン調整を行わない場合、ゲイン調整部７１７は、制御部７１１の制御に基づいて、切替部７５１および切替部７５３に、切替部７５１に入力される係数データが、高域成分ゲイン調整部７５２を介さずに切替部７５３に供給されるように接続を切り替えさせる。
【０２９２】
以上のように、ゲイン調整部７１７は、容易に、符号化装置側の分析フィルタ処理の方法（ゲイン調整処理の有無）に応じてゲイン調整を行うか否かを選択することができる。切替部７５３は、供給された係数データを係数バッファ部７１８に供給し、保持させる。
【０２９３】
ウェーブレット逆変換部７１９は、係数バッファ部７１８に蓄積された係数データに対して合成フィルタ処理を行い、ベースバンドの画像データを生成するが、ウェーブレット変換部６１１（図３０）の場合と同様に、可逆な方法で合成フィルタ処理を行う整数型ウェーブレット逆変換部７５４と、非可逆な方法で合成フィルタ処理を行う固定小数点型逆ウェーブレット変換部７５５の両方を有している。ウェーブレット逆変換部７１９は、さらに切替部７５６およびバッファ部７５７を有しており、制御部７１１の制御に基づいて切替部７５６が接続を切り替えることにより、整数型ウェーブレット逆変換部７５４または固定小数点型逆ウェーブレット変換部７５５のいずれか一方を用いて合成フィルタ処理を行う。バッファ部７５７は、切替部７５６を介して供給される整数型ウェーブレット逆変換部７５４または固定小数点型逆ウェーブレット変換部７５５の出力、すなわち、ベースバンドの画像データを一時的に保持し、所定のタイミングで出力する。
【０２９４】
例えば、符号化装置において可逆な方法で符号化が行われた場合、ウェーブレット逆変換部７１９は、制御部７１１の制御に基づいて、整数型ウェーブレット逆変換部７５４を選択し、整数型ウェーブレット逆変換部７５４を用いて合成フィルタ処理を行うようにする。そして、ウェーブレット逆変換部７１９は、制御部７１１の制御に基づいて、切替部７５６に整数型ウェーブレット逆変換部７５４とバッファ部７５７とを接続させ、整数型ウェーブレット逆変換部７５４の出力がバッファ部７５７に格納されるようにする。
【０２９５】
また、例えば、符号化装置において非可逆な方法で符号化が行われた場合、ウェーブレット逆変換部７１９は、制御部７１１の制御に基づいて、固定小数点型逆ウェーブレット変換部７５５を選択し、固定小数点型逆ウェーブレット変換部７５５を用いて合成フィルタ処理を行うようにする。そして、ウェーブレット逆変換部７１９は、制御部７１１の制御に基づいて、切替部７５６に固定小数点型逆ウェーブレット変換部７５５とバッファ部７５７とを接続させ、固定小数点型逆ウェーブレット変換部７５５の出力がバッファ部７５７に格納されるようにする。
【０２９６】
以上のように、ウェーブレット逆変換部７１９は、容易に、符号化装置側の分析フィルタ処理の方法に応じた適切な方法で合成フィルタ処理を行うことができる。
【０２９７】
次に、図３６のフローチャートを参照して、復号装置７００により実行される復号処理の流れの例を説明する。
【０２９８】
復号処理が開始されると、復号装置７００の受信部７０１は、ステップＳ７０１においてパケットを受信する。ステップＳ７０２において、パケット解析部７０２は、そのパケットを解析し、ステップＳ７０３において、そのパケットがピクチャヘッダ（符号化に関する情報）を含むか否かを判定する。なお、符号化に関する情報が他のヘッダに含まれる場合、パケット解析部７０２は、そのヘッダ情報を含むか否かを判定する。
【０２９９】
ピクチャヘッダを含むと判定した場合、パケット解析部７０２は、処理をステップＳ７０４に進める。ステップＳ７０４において、ヘッダ解析部７０３は、そのピクチャヘッダを解析し、制御情報を作成し、復号部７０４の設定を行う。この処理の詳細は、図３７のフローチャートを参照して説明する。ステップＳ７０４の処理が終了すると、ヘッダ解析部７０３は、処理をステップＳ７０５に進める。
【０３００】
また、ステップＳ７０３において、パケットにピクチャヘッダが含まれないと判定した場合、パケット解析部７０２は、ステップＳ７０４の処理を省略し、処理をステップＳ７０５に進める。
【０３０１】
ステップＳ７０５において、復号部７０４は、上述したパケットの受信および解析により所定量の符号化データがエントロピ復号部７１２に蓄積されたか否かを判定し、蓄積されていないと判定した場合、処理をステップＳ７０１に戻し、さらにパケットの取得および解析を継続する。また、ステップＳ７０５において、所定量の符号化データが得られたと判定した場合、復号部７０４は、ステップＳ７０６に処理を進め、符号化データの復号処理を実行する。この復号処理の詳細については、図３８のフローチャートを参照して後述する。
【０３０２】
ステップＳ７０７において、受信部７０１は、復号処理を終了するか否かを判定し、終了しないと判定した場合、処理をステップＳ７０１に戻し、それ以降の処理を繰り返す。また、ステップＳ７０７において復号処理を終了すると判定した場合、受信部７０１は、パケットの受信を終了し、復号処理を終了する。
【０３０３】
次に、図３７のフローチャートを参照して、図３６のステップＳ７０４において実行されるピクチャヘッダ解析処理の流れの例を説明する。
【０３０４】
ステップＳ７２１において、ヘッダ解析部７０３は、ピクチャヘッダ５３０の可逆非可逆識別情報５３２を参照する。ステップＳ７２２においてヘッダ解析部７０３は、可逆非可逆識別情報５３２に基づいて、符号化データの符号化方式が可逆方式であるか否かを判定し、可逆方式であると判定した場合、処理をステップＳ７２３に進める。
【０３０５】
ステップＳ７２３において、ヘッダ解析部７０３は、ゲイン調整を行わないように切替部７５１および切替部７５３を制御する。なお、実際には、ヘッダ解析部７０３は制御情報を作成するのみである。実際の制御は、制御部７１１がヘッダ解析部７０３により作成された制御情報に基づいて行う。以下においても同様である。
【０３０６】
ステップＳ７２４において、ヘッダ解析部７０３は、整数型ウェーブレット逆変換部７５４を選択するように切替部７５６を制御し、整数型ウェーブレット逆変換部７５４をアクティブにする。
【０３０７】
また、ステップＳ７２２において、可逆非可逆識別情報５３２に基づいて、符号化方式が非可逆方式であると判定した場合、ヘッダ解析部７０３は、処理をステップＳ７２５に進める。
【０３０８】
ヘッダ解析部７０３は、ステップＳ７２５において、ゲイン調整を行うように切替部７５１および切替部７５３を制御し、ステップＳ７２６において、固定小数点型ウェーブレット逆変換部７５５を選択するように切替部７５６を制御し、固定小数点型ウェーブレット逆変換部７５５をアクティブにする。
【０３０９】
ステップＳ７２４またはステップＳ７２６の処理が終了するとヘッダ解析部７０３は、ステップＳ７２７において、フィルタタイプ情報５３３に示されるタイプのフィルタを選択する。これは、整数型ウェーブレット逆変換部７５４または固定小数点型ウェーブレット逆変換部７５５（アクティブにされたウェーブレット逆変換部）が使用するフィルタを選択することができる場合であり、整数型ウェーブレット逆変換部７５４または固定小数点型ウェーブレット逆変換部７５５（アクティブにされたウェーブレット逆変換部）が１つのフィルタしか使用できない場合、この処理は省略される。
【０３１０】
ヘッダ解析部７０３は、ステップＳ７２８において、ピクチャヘッダ５３０の係数並び替え情報５３５を参照し、ステップＳ７２９において、係数データの並び替えを行うか否かを判定し、係数データの並び替えを行うと判定した場合、処理をステップＳ７３０に進める。
【０３１１】
ステップＳ７３０において、ヘッダ解析部７０３は、並び替えを行うように切替部７１３および切替部７１６を制御し、係数並び替え部７１５および係数並び替え用バッファ部７１４をアクティブにする。また、ステップＳ７２９において、係数データの並び替えを行わないと判定した場合、ヘッダ解析部７０３は、処理をステップＳ７３１に進め、並び替えを行わないように切替部７１３および切替部７１６を制御する。
【０３１２】
ステップＳ７３２において、ヘッダ解析部７０３は、処理単位数プレシンクト情報５３４に示される処理単位をエントロピ復号の設定に反映させる。さらに、ヘッダ解析部７０３は、ステップＳ７３３において、必要に応じて、ピクチャヘッダ５３０に含まれるその他の情報を各種設定に反映し、ピクチャヘッダ解析処理を終了し、処理を図３６のステップＳ７０４に戻し、それ以降の処理を実行させる。
【０３１３】
以上のようにヘッダ解析部７０３が、符号化装置より供給されるピクチャヘッダ（符号化に関する情報）を解析し、符号化の設定に合わせて復号の設定を適切に行うように制御情報を作成する。これにより、復号装置７００は、容易に符号化の設定に応じた適切な方法で復号処理を行うことができ、不要なデータ劣化や遅延時間の発生を抑制し、高品質かつ低遅延にデータ伝送を行うことができる。
【０３１４】
次に、図３８のフローチャートを参照して、図３６のステップＳ７０６において、復号部７０４により実行される復号処理の流れの例を説明する。
【０３１５】
ステップＳ７５１において、エントロピ復号部７１２は、符号化データをエントロピ復号する。ステップＳ７５２において、係数並び替え部７１５は、係数の並び替えを行うか否かを判定し、並び替えを行うと判定した場合、処理をステップＳ７５３に進め、係数データを並び替える。また、ステップＳ７５２において係数の並び替えを行わないと判定した場合、係数並び替え部７１５は、ステップＳ７５３の処理を省略する。
【０３１６】
ステップＳ７５４において、ゲイン調整部７１７は、ゲイン調整を行うか否かを判定し、ゲイン調整を行うと判定した場合、ステップＳ７５５に処理を進め、高域成分のゲインを調整する。また、ステップＳ７５４において、ゲイン調整を行わないと判定した場合、ゲイン調整部７１７は、ステップＳ７５５の処理を省略する。
【０３１７】
ステップＳ７５６において、ウェーブレット逆変換部７１９は、整数型ウェーブレット逆変換部７５４または固定小数点型ウェーブレット逆変換部７５５のいずれか一方を用いて、可逆方式または非可逆方式により垂直合成フィルタリングを行う。ステップＳ７５７において、ウェーブレット逆変換部７１９は、整数型ウェーブレット逆変換部７５４または固定小数点型ウェーブレット逆変換部７５５のいずれか一方を用いて、可逆方式または非可逆方式により水平合成フィルタリングを行う。
【０３１８】
ステップＳ７５８において、ウェーブレット逆変換部７１９は、合成フィルタ処理をレベル１まで行ったか否かを判定し、レベル１の合成フィルタ処理まで終了していないと判定した場合、処理をステップＳ７５６に戻し、次のレベルの合成フィルタ処理を行う。ステップＳ７５８において、レベル１の合成フィルタ処理まで終了したと判定した場合、ウェーブレット逆変換部７１９は、処理をステップＳ７５９に進める。ステップＳ７５９において、復号部７０４は、復号処理を終了するか否かを判定する。符号化データの供給が継続しており、復号処理を終了しないと判定した場合、復号部７０４は、処理をステップＳ７５１に戻し、それ以降の処理を繰り返す。ステップＳ７５９において、復号処理を終了すると判定した場合、復号部７０４は、復号処理を終了する。
【０３１９】
復号部７０４は、このような復号処理をピクチャ毎に実行する。
【０３２０】
なお、ウェーブレット逆変換部７１９の場合もウェーブレット変換部６１１の場合と同様に、整数型ウェーブレット逆変換部７５４と固定小数点型ウェーブレット逆変換部７５５の構成の一部を共通化することができる。
【０３２１】
図３９は、合成フィルタ処理部７３２の他の構成例を示すブロック図である。図３９において、ウェーブレット変換部７１９は、可逆方式と非可逆方式で共通のウェーブレット逆変換器７６４、切替部７６５、ビットシフト器７６６、切替部７６７、およびバッファ部７６８を有する。ウェーブレット逆変換部７１９は、合成フィルタ処理のビット精度以外の部分を可逆方式と非可逆方式で共通化する。つまり、非可逆方式の場合、ウェーブレット逆変換器７６４は、固定小数点精度で合成フィルタ処理を行うので、ウェーブレット逆変換部７１９は、制御部７１１の制御に従って、切替部７６５および切替部７６６に、ビットシフト器７６６においてデータを符号化時と逆方向にビットシフトさせるように、接続を切り替えさせる。
【０３２２】
逆に、可逆方式の場合、ウェーブレット逆変換器７６４は、整数精度で合成フィルタ処理を行うので、ウェーブレット逆変換部７１９は、制御部７１１の制御に従って、切替部７６５および切替部７６６に、データがビットシフト器７６６を介さないように、接続を切り替えさせる。
【０３２３】
バッファ部７６８は、切替部７６７より供給されるベースバンドの画像データを一時的に保持し、所定のタイミングでそれを出力する。
【０３２４】
図４０および図４１は、合成側の高域・低域成分の係数を算出するためのハードウェア構成の一例を示している。先ず、低域成分の係数値または画素値（レベル０の場合）を算出するための構成について図４０を参照しながら説明する。ここでは説明の便宜上、Ｒｍ、Ｒｎ、Ｒｄの３つのレジスタと、図中＋、＋２、−でそれぞれ示される各加算器７７１、７７２、７７５と、×0.25の演算をする乗算器７７３と、floorで示される丸め器７７４とを有して構成されているものとする。またＲｍ、Ｒｎ、Ｒｄの各レジスタは、それぞれ例えばｘ、ｙ、ｚ、ｗの４つの値を格納できる構成になっており、レジスタに格納された係数値に対して、既に述べた所定のフィルタリングの演算を施すことで、１つ下位レベルの係数値または画素値（レベル０の場合）を算出する。
【０３２５】
すなわち、レジスタＲｍからの４つの値（例えばｄ01，ｄ01，ｄ11，ｄ21）と、レジスタＲｎからの４つの値（例えばｄ01，ｄ11，ｄ21，ｄ31）とを、加算器７７１でそれぞれ加算し、各加算結果に対して加算器７７２でそれぞれ２を加算し、加算器７７２からの４つの出力値に対して乗算器７７３でそれぞれ0.25を乗算（あるいは２ビット右シフト）し、丸め器７７４でそれぞれ丸め処理を行って得られた４つの値を加算器７７５に送り、これらの４つの値をレジスタＲｄからの４つの値（例えばｓ01，ｓ11，ｓ21，ｓ31）からそれぞれ減算することで、１つ下位レベルの低域成分の係数値または画素値（例えばｓ00，ｓ10，ｓ20，ｓ30）を算出している。
【０３２６】
また、例えばあるビット長の整数レジスタを設ければ、既に述べた整数精度のフィルタリングを実行でき、あるビット長の固定小数点レジスタにすれば、既に述べた固定小数点精度のフィルタリングを実行できる。しかも、レジスタの精度以外では、ハードウェア構成を全く変える必要もなく、実現できる。このようにして、ハードウェア構成要素の共通化が実現できる。
【０３２７】
図４０の具体例の構成では、レジスタＲｄに低域成分を格納して置き、レジスタＲｍとＲｎには高域成分を格納し、演算結果を新たにレジスタＲｄに格納している。こうすることにより、既に使用して不要になった係数に上書きするので余分のレジスタを使わないで済み、効率的である。またハードウェアの縮小にも貢献する。
【０３２８】
図４０中でfloorで示される丸め器７７４の丸め処理の具体例であるが、floorによる切捨ては、小数点以下の切り捨てではなく、値として小さい方の整数に丸める処理を行うように定義しておく。この定義によれば、例えば、
＋２．３  →  ＋２  （正の値）
−２．３  →  −３  （負の値）
になる。
【０３２９】
次に、高域成分の係数値または画素値（レベル０の場合）を算出するための構成について図４１を参照しながら説明する。ここでは説明の便宜上、Ｒｍ、Ｒｎ、Ｒｄの３つのレジスタと、各加算器７８１、７８５と、×0.５の演算をする乗算器７８２と、floorで示される丸め器７８３とを有して構成されているものとする。またＲｍ、Ｒｎ、Ｒｄの各レジスタは、それぞれ例えばｘ、ｙ、ｚ、ｗの４つの値を格納できる構成になっており、レジスタに格納された係数値に対して、既に述べた所定のフィルタリングの演算を施すことで、１つ下位レベルの係数値または画素値（レベル０の場合）を算出する。
【０３３０】
すなわち、レジスタＲｎからの４つの値（例えばｓ00，ｓ10，ｓ20，ｓ30）と、レジスタＲｍからの４つの値（例えばｓ10，ｓ20，ｓ30，ｓ40）とを、加算器７８１でそれぞれ加算し、各加算結果に対して乗算器７８２でそれぞれ0.5を乗算（あるいは１ビット右シフト）し、丸め器７８３でそれぞれ丸め処理を行って得られた４つの値を加算器７８４に送り、これらの４つの値をレジスタＲｄからの４つの値（例えばｄ01，ｄ01，ｄ11，ｄ21）から減算することで、１つ下位レベルの高域成分の係数値または画素値（例えばｄ00，ｄ10，ｄ20，ｄ30）を算出している。ここで、レジスタＲｄの４つの値（ｄ01，ｄ01，ｄ11，ｄ21）の内、ｄ01を２つ用いているのは、上述したように、画面の端部で画面外部に位置するデータを、画面内部の隣接データで補っている（図１１のｄ01とその折り返しとなる破線丸印参照）からである。
【０３３１】
この図４１の具体例の場合も、上記図４０の具体例と同様に、各レジスタＲｍ、Ｒｎ、Ｒｄを整数レジスタとして使用するか、固定小数点レジスタとして使用するかだけで、ハードウェア構成を全く変えずに、整数型合成フィルタと固定小数点型合成フィルタの構成を共通化することができる。また、図４１中でfloorで示される丸め器７８３の丸め処理も、上記図４０の丸め器７７４と同様に、小数点以下の切り捨てではなく、値として小さい方の整数に丸める処理を行うように定義しておく。また、図４１の具体例では、レジスタＲｍとＲｎに低域成分を格納して置き、レジスタＲｄには高域成分を格納し、演算結果を新たにＲｄのレジスタに格納する。このように既に使用して不要になった係数に上書きするので余分のレジスタを使わないで済み、効率的である。またハードウェアの縮小にも貢献する。なお、これらのレジスタの使い方はこれ以外にも存在することは自明であり、レジスタが大きければそれだけ格納できるデータ量が増えるので、同時にフィルタリングできる量も増え、処理の高速化に寄与することができる。
【０３３２】
ところで、上記図４０および図４１の乗算器７７３、７８２はシフト演算器で代用することができる。具体的に、図４０の×0.25の乗算器７７３は右２ビットシフト、図４１の×0.５の乗算器７８２は右１ビットシフトに相当することは明らかである。一般に、乗算器よりもシフト演算器の方が、ハードウェア化が軽減されることが知られており、効率的である。
【０３３３】
なお、図３９のようにウェーブレット逆変換部の一部の構成を可逆方式と非可逆方式とで共通化する場合も、方式の選択（切替部の切り替え等）や、復号処理の方法は、基本的に図３５の場合と同様であるのでその説明は省略する。
【０３３４】
また、非可逆方式の場合、符号化装置６００において量子化処理を行うか否かを選択することができるようにしてもよい。その方法は、図２９を参照して説明した並び替え処理部６２２の場合と同様にすればよい。ピクチャヘッダ５３０にも量子化処理を行ったか否かを示す情報を係数並び替えの場合と同様に埋め込むようにしてもよい。同様に、非可逆方式の場合、復号装置７００において逆量子化処理を行うか否かを選択することができるようにしてもよい。その方法は、図３４を参照して説明した並び替え処理部７３１の場合と同様にすればよい。復号装置は、ピクチャヘッダを参照し、符号化装置において量子化処理が行われている場合、逆量子化を行うようにすればよい。
【０３３５】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ、または、複数の装置よりなる情報処理システムの情報処理装置などに、プログラム記録媒体からインストールされる。
【０３３６】
図４２は、上述した一連の処理をプログラムにより実行する情報処理システムの構成の例を示すブロック図である。
【０３３７】
図４２に示されるように、情報処理システム８００は、情報処理装置８０１、その情報処理装置８０１とPCIバス８０２によって接続された、記憶装置８０３、複数台のビデオテープレコーダ（VTR）であるVTR８０４-１乃至VTR８０４-S、ユーザがこれらに対する操作入力を行うためのマウス８０５、キーボード８０６、並びに操作コントローラ８０７により構成されるシステムであり、インストールされたプログラムによって、上述したような画像符号化処理や画像復号処理等を行うシステムである。
【０３３８】
例えば情報処理システム８００の情報処理装置８０１は、RAID（Redundant Arrays of Independent Disks）でなる大容量の記憶装置８０３に記憶されている動画コンテンツを符号化して得られた符号化データを記憶装置８０３に記憶させたり、記憶装置８０３に記憶されている符号化データを復号して得られた復号画像データ（動画コンテンツ）を記憶装置８０３に記憶させたり、符号化データや復号画像データをVTR８０４-１乃至VTR８０４-Sを介してビデオテープに記録したりすることができる。また、情報処理装置８０１は、VTR８０４-１乃至VTR８０４-Sに装着されたビデオテープに記録された動画コンテンツを記憶装置８０３に取り込み得るようにもなされている。その際、情報処理装置８０１が、動画コンテンツを符号化するようにしてもよい。
【０３３９】
情報処理装置８０１は、マイクロプロセッサ９０１、GPU（Graphics Processing Unit）９０２、XDR（Extreme Data Rate）-RAM９０３、サウスブリッジ９０４、HDD（Hard Disk Drive）９０５、USBインタフェース（USB I/F）９０６、およびサウンド入出力コーデック９０７を有している。
【０３４０】
GPU９０２は専用のバス９１１を介してマイクロプロセッサ９０１に接続される。XDR-RAM９０３は専用のバス９１２を介してマイクロプロセッサ９０１に接続される。サウスブリッジ９０４は、専用のバスを介してマイクロプロセッサ９０１のI/Oコントローラ９４４に接続される。このサウスブリッジ９０４には、HDD９０５、USBインタフェース９０６、および、サウンド入出力コーデック９０７も接続されている。このサウンド入出力コーデック９０７にはスピーカ９２１が接続されている。また、GPU９０２にはディスプレイ９２２が接続されている。
【０３４１】
またサウスブリッジ９０４には、さらに、PCIバス８０２を介して、マウス８０５、キーボード８０６、VTR８０４-１乃至VTR８０４-S、記憶装置８０３、並びに、操作コントローラ８０７が接続されている。
【０３４２】
マウス８０５およびキーボード８０６は、ユーザの操作入力を受け、PCIバス８０２およびサウスブリッジ９０４を介して、ユーザの操作入力の内容を示す信号を、マイクロプロセッサ９０１に供給する。記憶装置８０３およびVTR８０４-１乃至VTR８０４-Sは、所定のデータを記録または再生できるようになされている。
【０３４３】
PCIバス８０２にはさらに、必要に応じてドライブ８０８が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア８１１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じてHDD９０５にインストールされる。
【０３４４】
マイクロプロセッサ９０１は、OS（Operating System）等の基本プログラムを実行する汎用のメインCPUコア９４１と、メインCPUコア９４１に内部バス９４５を介して接続された複数（この場合８個）のRISC（Reduced Instruction Set Computer）タイプの信号処理プロセッサである、サブCPUコア９４２-１乃至サブCPUコア９４２-８と、例えば２５６[MByte]の容量を持つXDR-RAM９０３に対するメモリコントロールを行うメモリコントローラ９４３と、サウスブリッジ９０４との間でデータの入出力を管理するI/O（In/Out）コントローラ９４４とが１チップに集積されたマルチコア構成でなり、例えば動作周波数４[GHz]を実現している。
【０３４５】
このマイクロプロセッサ９０１は、起動時、HDD９０５に格納された制御プログラムに基づき、HDD９０５に格納されている必要なアプリケーションプログラムを読み出してXDR-RAM９０３に展開し、この後このアプリケーションプログラム及びオペレータ操作に基づいて必要な制御処理を実行する。
【０３４６】
また、マイクロプロセッサ９０１は、ソフトウェアを実行することにより、例えば、上述した符号化処理や復号処理を実現し、エンコードの結果得られた符号化ストリームを、サウスブリッジ９０４を介して、HDD９０５に供給して記憶させたり、デコードした結果得られる動画像コンテンツの再生映像を、GPU９０２へデータ転送して、ディスプレイ９２２に表示させたりすることができる。
【０３４７】
マイクロプロセッサ９０１内の各CPUコアの使用方法は任意であるが、例えば、メインCPUコア９４１が、画像符号化処理や画像復号処理の制御に関する処理を行い、８個のサブCPUコア９４２-１乃至サブCPUコア９４２-８に、ウェーブレット変換、係数並び替え、エントロピ符号化、エントロピ復号、ウェーブレット逆変換、量子化、および逆量子化等の各処理を、例えば図３９を参照して説明したように同時並列的に実行させるようにしてもよい。その際、メインCPUコア９４１が、８個のサブCPUコア９４２-１乃至サブCPUコア９４２-８のそれぞれに対してプレシンクト単位で処理を割り振るようにすれば、符号化処理や復号処理が、上述したようにプレシンクト単位で同時並列的に実行される。つまり、符号化処理や復号処理の効率を向上させ、処理全体の遅延時間を短縮させ、さらに、負荷、処理時間、および、処理に必要なメモリ容量を低減させることができる。もちろん、これ以外の方法で各処理を行うようにしてもよい。
【０３４８】
例えば、マイクロプロセッサ９０１の８個のサブCPUコア９４２-１乃至サブCPUコア９４２-８のうちの一部がエンコード処理を、他の部分がデコード処理を、同時並列的に実行するようにすることも可能である。
【０３４９】
また、例えば、PCIバス８０２に、独立したエンコーダまたはデコーダ、もしくは、コーデック処理装置が接続されている場合、マイクロプロセッサ９０１の８個のサブCPUコア９４２-１乃至サブCPUコア９４２-８が、サウスブリッジ９０４およびPCIバス８０２を介して、これらの装置が実行する処理を制御するようにしてもよい。さらに、これらの装置が複数接続されている場合、または、これらの装置が複数のデコーダまたはエンコーダを含んでいる場合、マイクロプロセッサ９０１の８個のサブCPUコア９４２-１乃至サブCPUコア９４２-８は、複数のデコーダまたはエンコーダが実行する処理を、分担して制御するようにしてもよい。
【０３５０】
このときメインCPUコア９４１は、８個のサブCPUコア９４２-１乃至サブCPUコア９４２-８の動作を管理し、各サブCPUコアに対して処理を割り当てたり、処理結果を引き取ったりする。さらに、メインCPUコア９４１は、これらのサブCPUコアが行う以外の処理も行う。例えば、メインCPUコア９４１は、サウスブリッジ９０４を介してマウス８０５、キーボード８０６、または、操作コントローラ８０７から供給された命令を受け付け、命令に応じた種々の処理を実行する。
【０３５１】
GPU９０２は、ディスプレイ９２２に表示する動画コンテンツの再生映像を動かすときのテクスチャの張り込みなどに関する最終的なレンダリング処理に加えて、動画コンテンツの再生映像及び静止画コンテンツの静止画像をディスプレイ９２２に一度に複数表示するときの座標変換計算処理や、動画コンテンツの再生映像及び静止画コンテンツの静止画像に対する拡大・縮小処理等を行う機能を司り、マイクロプロセッサ９０１の処理負担を軽減させるようになされている。
【０３５２】
GPU９０２は、マイクロプロセッサ９０１の制御のもとに、供給された動画コンテンツの映像データや静止画コンテンツの画像データに対して所定の信号処理を施し、その結果得られた映像データや画像データをディスプレイ９２２へ送出して、画像信号をディスプレイ９２２へ表示させる。
【０３５３】
例えば、マイクロプロセッサ９０１における８個のサブCPUコア９４２-１乃至サブCPUコア９４２-８で同時並列的にデコードされた複数の動画コンテンツにおける再生映像は、バス９１１を介してGPU９０２へデータ転送されるが、このときの転送速度は、例えば、最大３０[Gbyte/sec]であり、特殊効果の施された複雑な再生映像であっても高速かつ滑らかに表示し得るようになされている。
【０３５４】
また、マイクロプロセッサ９０１は、動画コンテンツの映像データ及び音声データのうち音声データに対して音声ミキシング処理を施し、その結果得られた編集音声データを、サウスブリッジ９０４およびサウンド入出力コーデック９０７を介して、スピーカ９２１へ送出することにより、音声信号に基づく音声をスピーカ９２１から出力させることもできる。
【０３５５】
上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
【０３５６】
この記録媒体は、例えば、図４２に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM,DVDを含む）、光磁気ディスク（MDを含む）、もしくは半導体メモリなどよりなるリムーバブルメディア８１１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているHDD９０５や記憶装置８０３等で構成される。もちろん、記録媒体は、ROMやフラッシュメモリ等の半導体メモリであってもよい。
【０３５７】
以上においては、マイクロプロセッサ９０１内に８個のサブCPUコアが構成されるように説明したが、これに限らず、サブCPUコアの数は任意である。また、マイクロプロセッサ９０１が、メインCPUコアとサブCPUコアのような複数のコアにより構成されていなくてもよく、シングルコア（１つのコア）により構成されるCPUを用いるようにしてもよい。
また、マイクロプロセッサ９０１の代わりに複数のCPUを用いるようにしてもよいし、複数の情報処理装置を用いる（すなわち、本発明の処理を実行するプログラムを、互いに連携して動作する複数の装置において実行する）ようにしてもよい。
【０３５８】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０３５９】
また、本明細書において、システムとは、複数のデバイス（装置）により構成される装置全体を表すものである。
【０３６０】
なお、以上において、１つの装置として説明した構成を分割し、複数の装置として構成するようにしてもよい。逆に、以上において複数の装置として説明した構成をまとめて１つの装置として構成されるようにしてもよい。また、各装置の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置の構成の一部を他の装置の構成に含めるようにしてもよい。
【産業上の利用可能性】
【０３６１】
以上説明したこの発明は、データ伝送を高品質かつ低遅延に行うものであり、画像を圧縮符号化して伝送し、伝送先で圧縮符号を復号して出力するような装置またはシステムであれば、様々なものに適用することができる。この発明は、特に、画像の圧縮符号化から復号および出力までの遅延が短いことが要求されるような装置またはシステムに用いて好適である。
【０３６２】
例えば、この発明は、ビデオカメラで撮影された映像を見ながらマジックハンドを操作して治療行為を行うような、医用遠隔医療診断の用途に用いて好適である。また、この発明は、放送局内などにおける、画像を符号化して伝送し、復号して表示または記録するようなシステムに用いて好適である。
【０３６３】
さらに、実況中継される映像の配信を行うシステム、教育現場において生徒と教師との間でインタラクティブな通信を可能としたシステムなどに、この発明を適用することができる。
【０３６４】
さらにまた、カメラ機能付き携帯電話端末といった、撮像機能を有するモバイル端末で撮影された画像データの送信や、テレビジョン会議システム、監視カメラおよび監視カメラで撮影された映像を記録するレコーダによるシステムなどに、この発明を適用することができる。
【図面の簡単な説明】
【０３６５】
【図１】符号化装置の構成例を示すブロック図である。
【図２】整数精度の入力データの例を示す模式図である。
【図３】画像データに対するウェーブレット変換の演算の構成例を模式的に示す図である。
【図４】ウェーブレット変換について概略的に説明するための略線図である。
【図５】ウェーブレット変換について概略的に説明するための略線図である。
【図６】整数型５×３分析フィルタの演算を説明するための図である。
【図７】５×３フィルタのリフティングの様子の例を示す略線図である。
【図８】ウェーブレット変換およびウェーブレット逆変換の流れを概略的に示す略線図である。
【図９】復号装置の構成例を示すブロック図である。
【図１０】符号化データに対するウェーブレット逆変換の演算の構成例を模式的に示す図である。
【図１１】整数型５×３合成フィルタの演算を説明するための図である。
【図１２】符号化処理の流れの例を説明するためのフローチャートである。
【図１３】復号処理の流れの例を説明するためのフローチャートである。
【図１４】符号化装置の他の構成例を示すブロック図である。
【図１５】図１４の分析フィルタ処理部の詳細な構成例を示すブロック図である。
【図１６】固定小数点精度の入力データの例を示す模式図である。
【図１７】固定小数点型５×３分析フィルタの演算を説明するための図である。
【図１８】復号装置の他の構成例を示すブロック図である。
【図１９】合成フィルタ処理部の詳細な構成例を示すブロック図である。
【図２０】固定小数点型５×３合成フィルタの演算を説明するための図である。
【図２１】符号化処理の流れの、他の例を説明するためのフローチャートである。
【図２２】復号処理の流れの、他の例を説明するためのフローチャートである。
【図２３】符号化部および復号部の各要素が行う並列動作の様子の例を概略的に示す略線図である。
【図２４】符号化装置のさらに他の構成例を示すブロック図である。
【図２５】ピクチャヘッダの構成例を示す模式図である。
【図２６】符号化処理の流れの、さらに他の例を説明するためのフローチャートである。
【図２７】符号化処理の流れの、さらに他の例を説明するためのフローチャートである。
【図２８】ピクチャヘッダ生成処理の流れの例を説明するためのフローチャートである。
【図２９】符号化装置のさらに他の構成例を示すブロック図である。
【図３０】図２９の分析フィルタ処理部の詳細な構成例を示すブロック図である。
【図３１】符号化処理の流れの、さらに他の例を説明するためのフローチャートである。
【図３２】設定処理の流れの例を説明するためのフローチャートである。
【図３３】図２９の分析フィルタ処理部の詳細な、他の構成例を示すブロック図である。
【図３４】復号装置の、さらに他の構成例を示すブロック図である。
【図３５】図３４の合成フィルタ処理部の詳細な構成例を示すブロック図である。
【図３６】復号処理の流れの、さらに他の例を説明するためのフローチャートである。
【図３７】ピクチャヘッダ解析処理の流れの例を説明するためのフローチャートである。
【図３８】復号処理の流れの、さらに他の例を説明するためのフローチャートである。
【図３９】図３４の合成フィルタ処理部の詳細な、他の構成例を示すブロック図である。
【図４０】合成側の低域成分の係数または画素値を算出するためのハードウェア構成の一例を示す図である。
【図４１】合成側の高域成分の係数または画素値（レベル０の場合）を算出するためのハードウェア構成の一例を示す図である。
【図４２】本発明を適用した情報処理システムの構成例を示す図である。
【符号の説明】
【０３６６】
１００  符号化装置，  １０１  ウェーブレット変換部，  １０２  途中計算用バッファ部，  １０３  エントロピ符号化部，  １１１  分析フィルタ処理部，  ２００  復号装置，  ２０１  エントロピ復号部，  ２０２  係数並び替え部，  ２０３  係数バッファ部，  ２０４  ウェーブレット逆変換部，  ２１１  合成フィルタ処理部，  ３００  符号化装置，  ３２１  ビットシフト器，  ３２２  ウェーブレット変換器，  ４００  復号装置，  ４２１  ウェーブレット逆変換器，  ４２２  ビットシフト器，  ５００  符号化装置，  ５０１  制御部，  ５０２  符号化部，  ５０３  ヘッダ生成部，  ５０４  パケット化部，  ５０５  送信部，  ５１３  係数並び替え用バッファ部，  ５１４  係数並び替え部，  ６００  符号化装置，  ６０１  制御部，  ６０２  符号化部，  ６０３  ヘッダ生成部，  ６０４  パケット化部，  ６０５  送信部，  ６１１  ウェーブレット変換部，  ６１３  切替部，  ６１６  切替部，  ６２２  並び替え処理部，  ６２３  符号化処理部，  ６３２  切替部，  ６３３  整数型ウェーブレット変換部，  ６３４  固定小数点型ウェーブレット変換部，  ６３５  切替部，  ５４２  切替部，  ６４４  切替部，  ７００  復号装置，  ７０１  受信部，  ７０２  パケット解析部，  ７０３  ヘッダ解析部，  ７０４  復号部，  ７１３  切替部，  ７１６  切替部，  ７１７  ゲイン調整部，  ７３１  並び替え処理部，  ７３２  合成フィルタ処理部，  ７５１  切替部，  ７５２  高域成分ゲイン調整部，  ７５３  切替部，  ７５４  整数型ウェーブレット逆変換部，  ７５５  固定小数点型ウェーブレット逆変換部，  ７５６  切替部，  ７６５  切替部，  ７６７  切替部
【図１】
0004821835.tif 000002
【図２】
0004821835.tif 000003
【図３】
0004821835.tif 000004
【図４】
0004821835.tif 000005
【図５】
0004821835.tif 000006
【図６】
0004821835.tif 000007
【図７】
0004821835.tif 000008
【図８】
0004821835.tif 000009
【図９】
0004821835.tif 000010
【図１０】
0004821835.tif 000011
【図１１】
0004821835.tif 000012
【図１２】
0004821835.tif 000013
【図１３】
0004821835.tif 000014
【図１４】
0004821835.tif 000015
【図１５】
0004821835.tif 000016
【図１６】
0004821835.tif 000017
【図１７】
0004821835.tif 000018
【図１８】
0004821835.tif 000019
【図１９】
0004821835.tif 000020
【図２０】
0004821835.tif 000021
【図２１】
0004821835.tif 000022
【図２２】
0004821835.tif 000023
【図２３】
0004821835.tif 000024
【図２４】
0004821835.tif 000025
【図２５】
0004821835.tif 000026
【図２６】
0004821835.tif 000027
【図２７】
0004821835.tif 000028
【図２８】
0004821835.tif 000029
【図２９】
0004821835.tif 000030
【図３０】
0004821835.tif 000031
【図３１】
0004821835.tif 000032
【図３２】
0004821835.tif 000033
【図３３】
0004821835.tif 000034
【図３４】
0004821835.tif 000035
【図３５】
0004821835.tif 000036
【図３６】
0004821835.tif 000037
【図３７】
0004821835.tif 000038
【図３８】
0004821835.tif 000039
【図３９】
0004821835.tif 000040
【図４０】
0004821835.tif 000041
【図４１】
0004821835.tif 000042
【図４２】
0004821835.tif 000043