(57)【特許請求の範囲】
【請求項１】
ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データを復号する復号部と、
前記復号部により前記符号化データが復号されて得られた前記変換係数のビットプレーンの中から、ベースバンドの画像データの生成に用いるビットプレーンを決定する決定部と、
前記決定部により決定された前記ビットプレーンからなる変換係数を逆変換して、ベースバンドの画像データを生成する生成部と、
前記生成部により生成された前記ベースバンドの画像データを変換し、得られた変換係数をコードブロック毎に分割し、各コードブロックの前記変換係数をビットプレーンに展開し、各ビットプレーンを非可逆符号化する符号化部と
を備え、
前記決定部は、前記符号化部の出力側のトラフィック状況に基づいて適宜設定される、前記符号化部が出力する符号化データの目標符号量と、前記画像データのデータ量とに基づいて算出される目標圧縮率に応じてデータ量を調整するように、ベースバンドの画像データの生成に用いるビットプレーンを決定する
情報処理装置。
【請求項２】
前記決定部は、前記変換係数の重要度が高い方から低い方へ向かう順に前記ビットプレーンを選択することにより、ベースバンドの画像データの生成に用いるビットプレーンを決定する
請求項１に記載の情報処理装置。
【請求項３】
前記決定部は、所定の数の前記ビットプレーンを、ベースバンドの画像データの生成に用いるビットプレーンとして決定する
請求項２に記載の情報処理装置。
【請求項４】
前記決定部は、前記変換係数の重要度が低い方から高い方へ向かう順にベースバンドの画像データの生成に用いないビットプレーンを選択することにより、ベースバンドの画像データの生成に用いるビットプレーンを決定する
請求項１に記載の情報処理装置。
【請求項５】
ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンの前記変換係数が可逆符号化された符号化データを、非可逆符号化された符号化データに変換する情報処理装置の情報処理方法であって、
前記可逆符号化された符号化データを復号し、
前記非可逆符号化された符号化データが出力される側のトラフィック状況に基づいて適宜設定される、前記非可逆符号化された符号化データの目標符号量と、前記画像データのデータ量とに基づいて算出される目標圧縮率に応じてデータ量を調整するように、前記符号化データが復号されて得られた前記変換係数のビットプレーンの中から、ベースバンドの画像データの生成に用いるビットプレーンを決定し、
決定された前記ビットプレーンからなる変換係数を逆変換して、ベースバンドの画像データを生成し、
生成された前記ベースバンドの画像データを変換し、得られた変換係数をコードブロック毎に分割し、各コードブロックの前記変換係数をビットプレーンに展開し、各ビットプレーンを非可逆符号化する
情報処理方法。
【請求項６】
ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データを、非可逆符号化された符号化データに変換するためにコンピュータを、
前記可逆符号化された符号化データを復号する復号部、
前記非可逆符号化された符号化データが出力される側のトラフィック状況に基づいて適宜設定される、前記非可逆符号化された符号化データの目標符号量と、前記画像データのデータ量とに基づいて算出される目標圧縮率に応じてデータ量を調整するように、前記復号部により前記符号化データが復号されて得られた前記変換係数のビットプレーンの中から、ベースバンドの画像データの生成に用いるビットプレーンを決定する決定部、
前記決定部により決定された前記ビットプレーンからなる変換係数を逆変換して、ベースバンドの画像データを生成する生成部、
前記生成部により生成された前記ベースバンドの画像データを変換し、得られた変換係数をコードブロック毎に分割し、各コードブロックの前記変換係数をビットプレーンに展開し、各ビットプレーンを非可逆符号化する符号化部
として機能させるためのプログラム。
【請求項７】
ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データの符号化パラメータを用いて、前記符号化データを復号して得られるベースバンドの画像データのビットレートの目標値である復号目標ビットレートを決定する決定部と、
前記符号化データを復号し、得られた前記変換係数のビットプレーンの、前記決定部により決定された前記復号目標ビットレートに応じた一部からなる変換係数を逆変換し、ベースバンドの画像データを生成する部分復号部と、
前記部分復号部により生成された前記ベースバンドの画像データを変換し、得られた変換係数をコードブロック毎に分割し、各コードブロックの前記変換係数をビットプレーンに展開し、各ビットプレーンを非可逆符号化する符号化部と
を備える情報処理装置。
【請求項８】
前記決定部は、前記符号化パラメータの、予め定められた所定の基準値との相対比に応じて前記復号目標ビットレートを決定する
請求項７に記載の情報処理装置。
【請求項９】
前記決定部は、前記符号化パラメータとして１ピクチャ分の有効ビットプレーン数の総和を算出し、算出した前記総和の、前記基準値との相対比に基づいて、前記復号目標ビットレートを算出する
請求項８に記載の情報処理装置。
【請求項１０】
前記決定部は、前記符号化部により生成される符号化データのビットレートの目標値である符号化目標ビットレートと、前記相対比を乗算することにより、前記復号目標ビットレートを算出する
請求項９に記載の情報処理装置。
【請求項１１】
前記決定部は、前記符号化パラメータとして１ピクチャ分のコーディングパス数の総和を算出し、算出した前記総和の、前記基準値との相対比に基づいて、前記復号目標ビットレートを算出する
請求項８に記載の情報処理装置。
【請求項１２】
前記決定部は、前記符号化パラメータとして１ピクチャ分の非ゼロビットプレーン数の総和を算出し、算出した前記総和の、前記基準値との相対比に基づいて、前記復号目標ビットレートを算出する
請求項８に記載の情報処理装置。
【請求項１３】
ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データの符号化パラメータを用いて、前記符号化データを復号して得られるベースバンドの画像データのビットレートの目標値である復号目標ビットレートを決定し、
前記符号化データを復号し、得られた前記変換係数のビットプレーンの、決定された前記復号目標ビットレートに応じた一部からなる変換係数を逆変換し、ベースバンドの画像データを生成し、
生成された前記ベースバンドの画像データを変換し、得られた変換係数をコードブロック毎に分割し、各コードブロックの前記変換係数をビットプレーンに展開し、各ビットプレーンを非可逆符号化する
情報処理方法。
【請求項１４】
情報を処理するためにコンピュータを、
ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データの符号化パラメータを用いて、前記符号化データを復号して得られるベースバンドの画像データのビットレートの目標値である復号目標ビットレートを決定する決定部、
前記符号化データを復号し、得られた前記変換係数のビットプレーンの、前記決定部により決定された前記復号目標ビットレートに応じた一部からなる変換係数を逆変換し、ベースバンドの画像データを生成する部分復号部、
前記部分復号部により生成された前記ベースバンドの画像データを変換し、得られた変換係数をコードブロック毎に分割し、各コードブロックの前記変換係数をビットプレーンに展開し、各ビットプレーンを非可逆符号化する符号化部
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法、並びにプログラムに関し、特に、可逆エンコードされたコードストリームを、非可逆エンコードされたコードストリームに変換する際の負荷を低減させることができるようにした情報処理装置および方法、並びにプログラムに関する
【背景技術】
【０００２】
従来、映画制作、医療、静止画撮影等、様々な分野で、デジタルの画像データが利用されている。このようなデジタル画像データは、一般的に、非圧縮の画像データをマスタ画像とし、これを必要に応じて圧縮して、圧縮結果のファイルをネットワーク経由で配信したり、記録メディアに書き込んだりすることが多い。
【０００３】
例えば、デジタルシネマの用途では、DCI（Digital Cinema Initiatives）規格によって、映画配信のための圧縮フォーマットが決まっている。それによれば、非可逆圧縮符号化方式である、ISO（International Organization for Standardization）規格のJPEG2000（Joint Photographic Experts Group 2000） Part-1が圧縮・伸長技術として用いられ、ビットレートは、4096×2160画素のXYZ12ビット（24Hz）の動画シーケンスに対して、ピークレートで250Mbpsである。つまり、非圧縮のマスタ画像は、圧縮されてから配信されたり上映されたりする。
【０００４】
また、マスタ画像のデータサイズが大きいこと自体が、マスタ画像の保存に不利であるので、マスタ画像は、可逆圧縮により、データの欠損がないようにデータ量を低減された状態で保存される場合も多い。
【０００５】
例えば、DCI規格で定められている画像の解像度は、4096×2160画素であり、HDTV（High Definition Television）の４倍に達する。したがって、非圧縮の画像データのデータ量が大きいので、実際には、マスタ画像は、可逆方式で圧縮符号化された可逆圧縮ファイルとして保存されることが多い。
【０００６】
この場合、この可逆圧縮ファイルは、非可逆圧縮方式により圧縮されたDCI規格のJPEG2000ファイルに変換されて利用される。ただし、JPEG2000規格では、可逆圧縮符号化方式と、非可逆符号化方式とでウェーブレット変換フィルタが異なるため、この変換の際に、一度ベースバンド画像に戻す必要がある。
【０００７】
このような処理を行う従来のトランスコーダは、可逆圧縮ファイルのコードストリームを全てデコードし、元のベースバンドのマスタ画像と同じデータサイズのベースバンド画像に戻す。
【０００８】
ところで、高解像度画像のビットストリームのDCTブロックの低周波成分の係数のみを用いて逆離散コサイン変換を行い、標準解像度画像に復号するダウンデコーダがあった（例えば、特許文献１および特許文献２参照）。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特許４０１６１６６号
【特許文献２】特許４０２６２３８号
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、上述したような従来のトランスコーダによる変換処理では、コードストリームを全てデコードしてしまうため、上述したようにマスタ画像のデータ量が大きい場合、デコード処理の負荷が増大する恐れがあった。
【００１１】
なお、特許文献１や特許文献２に記載のダウンデコーダを用いてデコードする方法も考えられるが、低周波成分の係数のみをデコードすることしかできず、必ず解像度が低下してしまうので、解像度を変更せずにデータを変換する上述した映画制作においては適用できない恐れがあった。
【００１２】
本発明はこのような問題を解決するためのものであり、可逆エンコードされたコードストリームを、より容易かつ適切に、非可逆エンコードされたコードストリームに変換することができるようにするものである。
【課題を解決するための手段】
【００１３】
本発明の第１の側面は、ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データを復号する復号部と、前記復号部により前記符号化データが復号されて得られた前記変換係数のビットプレーンの中から、ベースバンドの画像データの生成に用いるビットプレーンを決定する決定部と、前記決定部により決定された前記ビットプレーンからなる変換係数を逆変換して、ベースバンドの画像データを生成する生成部と、前記生成部により生成された前記ベースバンドの画像データを変換し、得られた変換係数をコードブロック毎に分割し、各コードブロックの前記変換係数をビットプレーンに展開し、各ビットプレーンを非可逆符号化する符号化部とを備え、前記決定部は、前記符号化部の出力側のトラフィック状況に基づいて適宜設定される、前記符号化部が出力する符号化データの目標符号量と、前記画像データのデータ量とに基づいて算出される目標圧縮率に応じてデータ量を調整するように、ベースバンドの画像データの生成に用いるビットプレーンを決定する情報処理装置である。
【００１４】
前記決定部は、前記変換係数の重要度が高い方から低い方へ向かう順に前記ビットプレーンを選択することにより、ベースバンドの画像データの生成に用いるビットプレーンを決定することができる。
【００１５】
前記決定部は、所定の数の前記ビットプレーンを、ベースバンドの画像データの生成に用いるビットプレーンとして決定することができる。
【００１７】
前記決定部は、前記変換係数の重要度が低い方から高い方へ向かう順にベースバンドの画像データの生成に用いないビットプレーンを選択することにより、ベースバンドの画像データの生成に用いるビットプレーンを決定することができる。
【００２０】
本発明の第１の側面は、また、ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データを、非可逆符号化された符号化データに変換する情報処理装置の情報処理方法であって、前記可逆符号化データを復号し、前記非可逆符号化された符号化データが出力される側のトラフィック状況に基づいて適宜設定される、前記非可逆符号化された符号化データの目標符号量と、前記画像データのデータ量とに基づいて算出される目標圧縮率に応じてデータ量を調整するように、前記符号化データが復号されて得られた前記変換係数のビットプレーンの中から、ベースバンドの画像データの生成に用いるビットプレーンを決定し、決定された前記ビットプレーンからなる変換係数を逆変換して、ベースバンドの画像データを生成し、生成された前記ベースバンドの画像データを変換し、得られた変換係数をコードブロック毎に分割し、各コードブロックの前記変換係数をビットプレーンに展開し、各ビットプレーンを非可逆符号化する情報処理方法である。
【００２１】
本発明の第１の側面は、さらに、ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データを、非可逆符号化された符号化データに変換するためにコンピュータを、前記可逆符号化された符号化データを復号する復号部、前記非可逆符号化された符号化データが出力される側のトラフィック状況に基づいて適宜設定される、前記非可逆符号化された符号化データの目標符号量と、前記画像データのデータ量とに基づいて算出される目標圧縮率に応じてデータ量を調整するように、前記復号部により前記符号化データが復号されて得られた前記変換係数のビットプレーンの中から、ベースバンドの画像データの生成に用いるビットプレーンを決定する決定部、前記決定部により決定された前記ビットプレーンからなる変換係数を逆変換して、ベースバンドの画像データを生成する生成部、前記生成部により生成された前記ベースバンドの画像データを変換し、得られた変換係数をコードブロック毎に分割し、各コードブロックの前記変換係数をビットプレーンに展開し、各ビットプレーンを非可逆符号化する符号化部として機能させるためのプログラムである。
【００２２】
本発明の第２の側面は、ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データの符号化パラメータを用いて、前記符号化データを復号して得られるベースバンドの画像データのビットレートの目標値である復号目標ビットレートを決定する決定部と、前記符号化データを復号し、得られた前記変換係数のビットプレーンの、前記決定部により決定された前記復号目標ビットレートに応じた一部からなる変換係数を逆変換し、ベースバンドの画像データを生成する部分復号部と、前記部分復号部により生成された前記ベースバンドの画像データを変換し、得られた変換係数をコードブロック毎に分割し、各コードブロックの前記変換係数をビットプレーンに展開し、各ビットプレーンを非可逆符号化する符号化部とを備える情報処理装置である。
【００２３】
前記決定部は、前記符号化パラメータの、予め定められた所定の基準値との相対比に応じて前記復号目標ビットレートを決定することができる。
【００２４】
前記決定部は、前記符号化パラメータとして１ピクチャ分の有効ビットプレーン数の総和を算出し、算出した前記総和の、前記基準値との相対比に基づいて、前記復号目標ビットレートを算出することができる。
【００２５】
前記決定部は、前記符号化部により生成される符号化データのビットレートの目標値である符号化目標ビットレートと、前記相対比を乗算することにより、前記復号目標ビットレートを算出することができる。
【００２６】
前記決定部は、前記符号化パラメータとして１ピクチャ分のコーディングパス数の総和を算出し、算出した前記総和の、前記基準値との相対比に基づいて、前記復号目標ビットレートを算出することができる。
【００２８】
前記決定部は、前記符号化パラメータとして１ピクチャ分の非ゼロビットプレーン数の総和を算出し、算出した前記総和の、前記基準値との相対比に基づいて、前記復号目標ビットレートを算出することができる。
【００３３】
本発明の第２の側面は、また、ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データの符号化パラメータを用いて、前記符号化データを復号して得られるベースバンドの画像データのビットレートの目標値である復号目標ビットレートを決定し、前記符号化データを復号し、得られた前記変換係数のビットプレーンの、決定された前記復号目標ビットレートに応じた一部からなる変換係数を逆変換し、ベースバンドの画像データを生成し、生成された前記ベースバンドの画像データを変換し、得られた変換係数をコードブロック毎に分割し、各コードブロックの前記変換係数をビットプレーンに展開し、各ビットプレーンを非可逆符号化する情報処理方法である。
【００３４】
本発明の第２の側面は、さらに、情報を処理するためにコンピュータを、ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データの符号化パラメータを用いて、前記符号化データを復号して得られるベースバンドの画像データのビットレートの目標値である復号目標ビットレートを決定する決定部、前記符号化データを復号し、得られた前記変換係数のビットプレーンの、前記決定部により決定された前記復号目標ビットレートに応じた一部からなる変換係数を逆変換し、ベースバンドの画像データを生成する部分復号部、前記部分復号部により生成された前記ベースバンドの画像データを変換し、得られた変換係数をコードブロック毎に分割し、各コードブロックの前記変換係数をビットプレーンに展開し、各ビットプレーンを非可逆符号化する符号化部として機能させるためのプログラムである。
【００４２】
本発明の第１の側面においては、ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データが復号され、非可逆符号化された符号化データが出力される側のトラフィック状況に基づいて適宜設定される、非可逆符号化された符号化データの目標符号量と、画像データのデータ量とに基づいて算出される目標圧縮率に応じてデータ量を調整するように、符号化データが復号されて得られた変換係数のビットプレーンの中から、ベースバンドの画像データの生成に用いるビットプレーンが決定され、決定されたビットプレーンからなる変換係数が逆変換されて、ベースバンドの画像データが生成され、生成されたベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの変換係数がビットプレーンに展開され、各ビットプレーンが非可逆符号化される。
【００４３】
本発明の第２の側面においては、ベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの前記変換係数がビットプレーンに展開され、各ビットプレーンが可逆符号化された符号化データの符号化パラメータを用いて、符号化データを復号して得られるベースバンドの画像データのビットレートの目標値である復号目標ビットレートが決定され、符号化データが復号され、得られた変換係数のビットプレーンの、決定された復号目標ビットレートに応じた一部からなる変換係数が逆変換され、ベースバンドの画像データが生成され、生成されたベースバンドの画像データが変換され、得られた変換係数がコードブロック毎に分割され、各コードブロックの変換係数がビットプレーンに展開され、各ビットプレーンが非可逆符号化される。
【発明の効果】
【００４５】
本発明によれば、非可逆エンコードされたコードストリームをより容易かつ適切に生成することができる。特に、可逆エンコードされたコードストリームを、より容易かつ適切に、非可逆エンコードされたコードストリームに変換することができる。
【図面の簡単な説明】
【００４６】
【図１】従来の符号化装置の構成例を示すブロック図である。
【図２】本発明を適用した符号化装置の主な構成例を示すブロック図である。
【図３】図２の可逆エンコード部の詳細な構成例を示すブロック図である。
【図４】サブバンドの構成例を示す図である。
【図５】サブバンドの構成例を示す図である。
【図６】各サブバンド中のコードブロックの位置関係を示す図である。
【図７】ビットプレーンの例を説明する図である。
【図８】符号化パスの例を説明する図である。
【図９】係数の走査の例を説明する図である。
【図１０】パケットの概念を示す図である。
【図１１】図２の部分デコード部の詳細な構成例を示すブロック図である。
【図１２】図２の非可逆エンコード部の詳細な構成例を示すブロック図である。
【図１３】サブバンド毎の走査順の例を説明する図である。
【図１４】コンポーネント毎の走査順の例を説明する図である。
【図１５】画像全体の走査順の例を説明する図である。
【図１６】ブロック毎の処理順の例を説明する図である。
【図１７】可逆符号化処理の流れの例を説明するフローチャートである。
【図１８】部分デコード処理の流れの例を説明するフローチャートである。
【図１９】非可逆符号化処理の流れの例を説明するフローチャートである。
【図２０】エントロピ符号化処理の流れの例を説明するフローチャートである。
【図２１】部分デコード時のビットレートとPSNRの関係を示す図である。
【図２２】切り捨てるビットプレーンの選択の走査順の例を説明する図である。
【図２３】図２の部分デコード部の、他の構成例を示すブロック図である。
【図２４】部分デコード処理の流れの、他の例を説明するフローチャートである。
【図２５】図２の部分デコード部のさらに他の構成例を示すブロック図である。
【図２６】部分デコード処理のさらに他の例を説明するフローチャートである。
【図２７】図２の部分デコード部のさらに他の構成例を示すブロック図である。
【図２８】部分デコード処理のさらに他の例を説明するフローチャートである。
【図２９】本発明を適用した符号化装置の他の構成例を示すブロック図である。
【図３０】部分デコードレート制御部の構成例を示すブロック図である。
【図３１】有効ビットプレーンの例を説明する図である。
【図３２】トランスコード処理の流れの例を説明するフローチャートである。
【図３３】復号目標ビットレート決定処理の流れの例を説明するフローチャートである。
【図３４】部分デコードレート制御部の他の構成例を示すブロック図である。
【図３５】コーディングパス数の例を説明する図である。
【図３６】復号目標ビットレート決定処理の流れの他の例を説明するフローチャートである。
【図３７】部分デコードレート制御部の、さらに他の構成例を示すブロック図である。
【図３８】非ゼロビットプレーンの例を説明する図である。
【図３９】復号目標ビットレート決定処理の流れの、さらに他の例を説明するフローチャートである。
【図４０】部分デコードレート制御部の、さらに他の構成例を示すブロック図である。
【図４１】テーブル情報の構成例を説明する図である。
【図４２】復号目標ビットレート決定処理の流れの、さらに他の例を説明するフローチャートである。
【図４３】部分デコードレート制御部の、さらに他の構成例を示すブロック図である。
【図４４】復号目標ビットレート決定処理の流れの、さらに他の例を説明するフローチャートである。
【図４５】部分デコードレート制御部の、さらに他の構成例を示すブロック図である。
【図４６】復号目標ビットレート決定処理の流れの、さらに他の例を説明するフローチャートである。
【図４７】本発明を適用した符号化装置の、さらに他の構成例を示すブロック図である。
【図４８】可逆圧縮率測定部および部分デコードレート制御部の構成例を示すブロック図である。
【図４９】トランスコード処理の流れの、他の例を説明するフローチャートである。
【図５０】復号目標ビットレート決定処理の流れの、さらに他の例を説明するフローチャートである。
【図５１】本発明を適用した符号化装置の、さらに他の構成例を示すブロック図である。
【図５２】エンコード時間測定部および部分デコードレート制御部の構成例を示すブロック図である。
【図５３】可逆符号化時間測定処理の流れの例を説明するフローチャートである。
【図５４】トランスコード処理の流れの、さらに他の例を説明するフローチャートである。
【図５５】本発明を適用したパーソナルコンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【００４７】
まず、可逆エンコードされたコードストリームを、非可逆エンコードされたコードストリームに変換する画像データの変換処理について説明する。
【００４８】
図１は、そのような変換処理を用いる従来の符号化装置の構成例を示す図である。図１に示される符号化装置１０は、入力されるベースバンドの画像データを、一旦、可逆圧縮方式により所定の圧縮率で圧縮符号化し、その後、圧縮されたコードストリームを全て、可逆圧縮方式に対応する伸長方式でベースバンドに伸長復号し、さらに、そのベースバンドの画像データを非可逆方式で所望の圧縮率に圧縮符号化し、コードストリームとして出力する装置である。
【００４９】
符号化装置１０は、装置内の処理の負荷を軽減させるため、入力されるベースバンドの画像データ（マスタ画像）を、まず、可逆エンコード部１１においてJPEG2000の可逆圧縮方式で圧縮符号化し、データサイズを小さくしたコードストリームに変換する。
【００５０】
例えば、符号化装置１０は、情報処理部１３−１において、そのコードストリームに対してメタ情報を付加する等の所定の処理を施す。また、例えば、符号化装置１０は、そのコードストリームを、所定のバスやネットワーク等の伝送路１３−２を介して伝送させる。さらに、例えば、符号化装置１０は、そのコードストリームをハードディスクや半導体メモリ等の記憶部１３−３に一旦保存し、所定のタイミングで読み出して出力する。
【００５１】
符号化装置１０は、非可逆トランスコード部１２において、このコードストリームを、JPEG2000の非可逆圧縮方式で圧縮符号化されたコードストリームに変換する。このとき非可逆トランスコード部１２の可逆デコード部２１は、JPEG2000の可逆伸長方式により、情報処理部１３−１、伝送路１３−２、または記憶部１３−３を介して供給されるコードストリームを全て復号する。つまり、理論的には、可逆デコード部２１の復号により、符号化装置１０に入力されたときと同一のデータサイズのベースバンドの画像データが得られる。非可逆エンコード部２２は、その画像データを、JPEG2000の非可逆圧縮方式により所望の圧縮率で圧縮符号化し、得られたコードストリームを符号化装置１０の外部に出力する。
【００５２】
このように、符号化装置１０は、非可逆トランスコード部１２の可逆デコード部２１によるデコード処理において、コードストリームを全て復号するので、マスタ画像のデータサイズが大きい場合、このデコード処理の負荷が増大し、変換処理の効率が低減してしまう。
【００５３】
なお、この符号化装置１０は、ベースバンドの画像データを可逆圧縮方式で圧縮し、その後、そのコードストリームを非可逆圧縮方式のコードストリームに変換する一連の処理を装置として示したものであり、同様の処理を行う、複数の装置よりなるシステムの場合も同様である。
【００５４】
これに対して、図２は、本発明を適用した符号化装置の構成例を示すブロック図である。図２に示される符号化装置１００は、図１の符号化装置１０と同様に、入力されるベースバンドの画像データを、一旦、JPEG2000の可逆圧縮方式により所定の圧縮率で圧縮符号化し、その後、圧縮されたコードストリームを、JPEG2000の非可逆方式で所望の圧縮率に圧縮符号化し、コードストリームとして出力する装置である。
【００５５】
符号化装置１００は、図２に示されるように、可逆エンコード部１０１および非可逆トランスコード部１０２を有する。
【００５６】
可逆エンコード部１０１は、可逆エンコード部１１と同様に、入力されたベースバンドの画像データをJPEG2000の可逆圧縮方式により所定の圧縮率で圧縮符号化し、データサイズを小さくしたコードストリームの可逆圧縮ファイルに変換する。ただし、可逆エンコード部１０１は、符号化時に生成されるウェーブレット係数を重要度に応じて重み付けする。可逆エンコード部１０１の詳細については後述する。
【００５７】
例えば、符号化装置１００は、符号化装置１０の場合と同様に、情報処理部１０３−１において、その可逆圧縮ファイルに対してメタ情報を付加する等の所定の処理を施す。また、例えば、符号化装置１００は、その可逆圧縮ファイルを、所定のバスやネットワーク等の伝送路１０３−２を介して伝送させる。さらに、例えば、符号化装置１００は、その可逆圧縮ファイルをハードディスクや半導体メモリ等の記憶部１０３−３に一旦保存し、所定のタイミングで読み出して出力する。
【００５８】
非可逆トランスコード部１０２は、部分デコード部１１１および非可逆エンコード部１１２を有する。
【００５９】
部分デコード部１１１は、情報処理部１０３−１において処理された可逆圧縮ファイル、伝送路１０３−２を介して供給された可逆圧縮ファイル、または、記憶部１０３−３より読み出された可逆圧縮ファイルのコードストリームの一部を復号し、ベースバンドの画像データを生成する。非可逆エンコード部１１２は、そのベースバンドの画像データをJPEG2000の非可逆圧縮方式により所望の圧縮率で圧縮符号化し、生成したコードストリームを出力する。
【００６０】
このとき、非可逆エンコード部１１２は、生成するコードストリームの目標符号量に基づいて、自身が圧縮符号化を行うベースバンドの画像データの、マスタ画像（原画像）の画像データに対する圧縮率を算出し、それを目標圧縮率として部分デコード部１１１に供給する。つまり、非可逆エンコード部１１２は、目標符号量を達成するために必要なベースバンドの画像データの符号量を、マスタ画像（原画像）の画像データに対する圧縮率で表わし、それを部分デコード部１１１に供給する。
【００６１】
部分デコード部１１１は、その圧縮率を目標圧縮率とし、可逆圧縮ファイルのコードストリームを部分的に復号してベースバンドの画像データを生成する。後述するように、部分デコード部１１１は、生成するベースバンドの画像データの符号量が小さいほど、つまり、マスタ画像（原画像）の画像データに対する圧縮率が高いほど、復号するコードストリームの部分が少なくて済むので、復号処理の処理量を低減させることができる。しかしながら、部分デコード部１１１が生成するベースバンドの符号量が少なすぎると、非可逆エンコード部１１２が目標符号量を達成することができなくなる恐れがある。
【００６２】
そこで、部分デコード部１１１は、生成するベースバンドの画像データの、マスタ画像（原画像）の画像データに対する圧縮率が、非可逆エンコード部１１２より取得した目標圧縮率と一致するように、または、それよりも少し小さくなるように、復号する部分の選択を行い、その選択した部分に対してのみ復号処理を行う。換言すれば、部分デコード部１１１は、非可逆エンコード部１１２が目標符号量を達成することができる範囲において、復号処理の処理量をより低減させるように、可逆圧縮ファイルのコードストリームを部分的に復号する。部分デコード部１１１は、その範囲を、非可逆エンコード部１１２より供給される目標圧縮率により判断する。
【００６３】
以下において、このようなコードストリームの一部分を復号することを部分デコード処理と称する。以上のように部分デコード処理を行うことにより、部分デコード部１１１は、マスタ画像（原画像）のデータサイズが大きくても、容易かつ適切に可逆圧縮ファイルを復号することができる。
【００６４】
また、上述したように可逆エンコード部１０１がウェーブレット係数に対して重要度に応じた重み付けを行うことにより、部分デコード部１１１は、コードストリームから復号する部分を選択する際に、各係数の重要度をその選択に反映させることができる（重要度に応じた選択を行うことができる）。
【００６５】
さらに、可逆エンコード部１０１、部分デコード部１１１、および非可逆エンコード部１１２は、ウェーブレット係数の各ビットを位ごとに分割したビットプレーン単位で処理するので、部分デコード部１１１は、画像の解像度を低減させずに部分デコード処理を行うことができる。もちろん、解像度を低減させることもできる。
【００６６】
部分デコード部１１１および非可逆エンコード部１１２の詳細については後述する。
【００６７】
次に、図２の符号化装置１００の構成の詳細について説明する。図３は、図２の可逆エンコード部１０１の詳細な構成例を示すブロック図である。図３に示されるように、可逆エンコード部１０１は、DCレベルシフト部１２１、ウェーブレット変換部１２２、コードブロック化部１２４、ビットプレーン展開部１２５、エントロピ符号化部１２６、ヘッダ生成部１２７、およびパケット生成部１２８を有する。
【００６８】
DCレベルシフト部１２１は、後段のウェーブレット変換を効率的に行うために画像データのDC成分のレベルシフトを行う。例えば、RGB信号が正の値（符号無しの整数）を持っている。そこで、DCレベルシフト部１２１は、そのことを利用し、原信号のダイナミックレンジを半分にするレベルシフトを行うことで、圧縮効率の向上を図る。従ってYCbCr信号のCbやCr（色差信号）の様に符号（正負両方あり）の整数値を持つ信号を原信号とする場合、このレベルシフトは行われない。
【００６９】
ウェーブレット変換部１２２は、通常低域フィルタと高域フィルタから構成されるフィルタバンクによって実現される。また、デジタルフィルタは通常複数タップ長のインパルス応答（フィルタ係数）を有するので、ウェーブレット変換部１２２は、フィルタリングが行えるだけの入力画像を予めバッファリングするバッファを有する。
【００７０】
ウェーブレット変換部１２２は、DCレベルシフト部１２１より出力された画像データを、フィルタリングに最低限必要なデータ量以上取得すると、そのDCレベルシフト後の画像データに対して、５×３ウェーブレット変換フィルタを用いてフィルタリングを行い、ウェーブレット係数を生成する。なお、ウェーブレット変換部１２２は、画像の垂直方向および水平方向のそれぞれに対して、画像データを低域成分と高域成分に分離するフィルタリングを行う。
【００７１】
そして、ウェーブレット変換部１２２は、このようなフィルタリング処理を、図４に示されるように、垂直方向および水平方向の両方において低域成分として分離されたサブバンドに対して再帰的に所定回数繰り返す。これは、例えば、図５に示されるように、画像のエネルギーの多くが低域成分に集中しているからである。
【００７２】
図４は、分割レベル数３のウェーブレット変換処理により生成されるサブバンドの構成例を示す図である。この場合、ウェーブレット変換部１２２は、まず、画像全体をフィルタリングし、サブバンド3LL（図示せず）、3HL、3LH、および3HHを生成する。次に、ウェーブレット変換部１２２は、生成されたサブバンド3LLに対して再度フィルタリングを行い、2LL（図示せず）、2HL、2LH、および2HHを生成する。さらに、ウェーブレット変換部１２２は、生成されたサブバンド2LLに対して再度フィルタリングを行い、0LL、1HL、1LH、および1HHを生成する。
【００７３】
図５は、分割レベルを進めていくに従い、各帯域が形成されていく様子を示す図である。図５の左側には、分割レベルが１のウェーブレット変換処理により得られた各サブバンドの画像の様子が示されており、図５の右側には、分割レベルが３のウェーブレット変換処理により得られた各サブバンドの画像の様子が示されている。つまり、図５の右側は、図４の各サブバンドの画像の様子を示したものである。
【００７４】
ウェーブレット変換部１２２は、フィルタリングにより得られたウェーブレット係数を、サブバンド毎に、コードブロック化部１２４に供給する。このとき、ウェーブレット変換部１２２は、各サブバンドを、その重要度順（重要度の高いほうから低いほうに向かう順に）にコードブロック化部１２４に供給する。一般的に、ウェーブレット変換部１２２は、各サブバンドを、低域から高域に向かう順にコードブロック化部１２４に供給する。
【００７５】
なお、JPEG2000の規格では、可逆圧縮用のウェーブレット変換には５×３ウェーブレット変換フィルタを用いることが義務付けられており、この場合、量子化は行われず、後述する符号化パスまたはビットプレーンのすべてが符号化される。
【００７６】
ウェーブレット係数は、コードブロック化部１２４で、エントロピ符号化の処理単位である所定の大きさのコードブロックに分割される。図６は各サブバンド中のコードブロックの位置関係を示したものである。例えば64×64画素程度のサイズのコードブロックが、分割後のすべてのサブバンド中に生成される。図４の例において、最も分割レベルが小さい3HHのサブバンドの大きさが例えば640×320画素であるとすると、64×64画素のコードブロックは合計５０個存在することになる。後段の各処理部は、このコードブロック毎に処理を行う。
【００７７】
コードブロック化部１２４は、各コードブロックをその重要度順（重要度の高いほうから低いほうへ向かう順）に、ビットプレーン展開部１２５に供給する。ビットプレーン展開部１２５は、係数データを、ビットの位毎のビットプレーンに展開し、それをエントロピ符号化部１２６に供給する。
【００７８】
ビットプレーンは、所定の数のウェーブレット係数よりなる係数群を、１ビット毎、つまり位毎に分割（スライス）したものである。つまり、ビットプレーンは、その係数群の互いに同一の位のビット（係数ビット）の集合である。
【００７９】
図７にその具体例を示す。図７の左図は縦４個、横４個の計１６個の係数を示している。この１６個の係数のうち、絶対値が最大のものは１３で、２進数で１１０１と表現される。ビットプレーン展開部１２５は、このような係数群を、絶対値を示す４枚のビットプレーン（絶対値のビットプレーン）と、符号を示す１枚のビットプレーン（符号のビットプレーン）に展開する。つまり、図７中左の係数群は、図７中右に示されるように、４枚の絶対値のビットプレーンと１枚の符号のビットプレーンに展開される。ここで、絶対値のビットプレーンの要素はすべて０か１の値をとる。また、符号を示すビットプレーンの要素は、係数の値が正であることを示す値、係数の値が０であることを示す値、または係数の値がマイナスを示す値のいずれかをとる。
【００８０】
ビットプレーン展開部１２５は、このように展開したビットプレーンをその重要度順（重要度の高いほうから低いほうへ向かう順）に、エントロピ符号化部１２６に供給する。エントロピ符号化部１２６は、係数データのビットプレーンを、その順、すなわち、重要度の高いほうから低いほうへ向かう順に符号化する。例えば、エントロピ符号化部１２６は、各ビットプレーンを、係数の最上位ビット（MSB：Most Significant Bit）から最下位ビット（LSB：Less Significant Bit）に向かう順に符号化する。
【００８１】
図３に示されるようにエントロピ符号化部１２６は、EBCOT（Embedded Coding with Optimized Truncation）部１３２を有する。EBCOT部１３２は、入力される係数データに対して、JPEG2000規格で定められたEBCOTと呼ばれるエントロピ符号化を行う。EBCOTは、所定の大きさのブロック毎にそのブロック内の係数の統計量を測定しながら符号化を行う手法である。
【００８２】
EBCOT部１３２は、ビットモデリング部１４１および算術符号化部１４２を有する。ビットモデリング部１４１は、JPEG2000規格で定められた手順に従って、係数データに対してビットモデリングを行い、算術符号化部１４２にコンテキストを送出する。算術符号化部１４２は、係数のビットプレーンを算術符号化する。
【００８３】
コードブロックの縦横のサイズは４から２５６まで２のべき乗で、通常使用される大きさは、３２×３２、６４×６４、１２８×３２等がある。係数値がｎビットの符号付き２進数で表されていて、bit０からbit（ｎ−２）がLSBからMSBまでのそれぞれのビットを表すとする。残りの１ビットは符号を示す。符号ブロックの符号化は、MSB側のビットプレーンから順番に、次の３種類の符号化パスによって行われる。
【００８４】
（１）Significant Propagation Pass
あるビットプレーンを符号化するSignificance Propagation Passでは、８近傍の少なくとも１つの係数が有意（Significant）であるようなnon-significant係数のビットプレーンの値が算術符号化される。その符号化したビットプレーンの値が１である場合は、符号が＋であるか、−であるかが続けて算術符号化される。
【００８５】
ここでsignificanceという言葉について説明する。Significanceとは、各係数に対して符号化されたときにsignificantを表す１に変化し、以降常に１であり続けるものである。従って、significanceとは、有効桁の情報をすでに符号化したか否かを示すフラグとも言える。あるビットプレーンでsignificantになれば、以降のビットプレーンではsignificantになったままである。
【００８６】
（２）Magnitude Refinement Pass
ビットプレーンを符号化するMagnitude Refinement Passでは、ビットプレーンを符号化するSignificance Propagation Passで符号化されていないsignificantな係数のビットプレーンの値が算術符号化される。
（３）Cleanup Pass
ビットプレーンを符号化するCleanup Passでは、ビットプレーンを符号化するSignificance Pass で符号化されていないnon-sigunificanceな係数のビットプレーンの値が算術符号化される。また、その符号化されたビットプレーンの値が１である場合、符号が＋であるか−であるかが続けて算術符号化される。
【００８７】
なお、以上の３つのPassでの算術符号化では、ケースに応じて（１）ZC（Zero Coding）、（２）RLC（Run-Length Coding）、（３）SC（Sign Coding）、または（４）MR（Magnitude Refinement）等の手法が使い分けられる。なお、ここではMQ符号化と呼ばれる算術符号が用いられるものとする。MQ符号化は、JBIG2で規定された学習型の２値算術符号である。JPEG2000では、すべての符号化パスで合計１９種類のコンテキストがある。
【００８８】
これらの３つの符号化パスの用いられる順序の例は図８に示される。最初に最上位ビット（MSB）のビットプレーンであるビットプレーン（ｎ−２）｛Bit-Plane（ｎ−２）｝がCleanup Passによって符号化される。続いて１枚ずつ順次LSB側に向かって各ビットプレーンが、上述した３つの符号化パスがSignificant Propagation Pass，Magnitude Refinement Pass，Cleanup Passの順序で用いられて符号化される。
【００８９】
ただし、実際には、EBCOT部１３２は、MSB側から何番目のビットプレーンで初めて１が出てくるかをヘッダに書き、全ての係数が０のビットプレーン（ゼロビットプレーンと称する）は符号化しない。
【００９０】
次に、係数の走査（スキャニング）について図９を用いて説明する。コードブロックは高さ４個の係数毎にストライプ（stripe）に分けられるストライプの幅はコードブロックの幅に等しい。スキャン順とは、１個のコードブロック内の、全ての係数をたどる順番で、コードブロック中では上のストライプから下のストライプへの順序、ストライプの中では、左の列から右の列へ向かっての順序、列の中では上から下へという順序である。各符号化パスにおいてコードブロック中の全ての係数が、このスキャン順で処理される。
【００９１】
なお、サブバンドや画像全体における符号化の順序の詳細については後述するが、エントロピ符号化部１２６は、基本的に、重要度の高いものから低いものに向かう順序で各係数ビットを符号化する。
【００９２】
図３に戻り、エントロピ符号化部１２６（EBCOT部１３２の算術符号化部１４２）は、生成した符号化コードストリームを全て、ヘッダ生成部１２７およびパケット生成部１２８に供給される。
【００９３】
パケット生成部１２８は、供給された符号化コードストリームをパケット化する。ヘッダ生成部１２７は、そのパケットのヘッダ情報を生成し、そのヘッダ情報をパケット生成部１２８に供給する。パケット生成部１２８は、そのヘッダ情報を用いてパケット化を行う。
【００９４】
JPEG2000規格では、符号化コードストリームを表現する際に、パケットと呼ばれる単位で符号化コードストリームがパッキングされる。このパケットの概念を図示したものが図１０である。この図では、図４の例と同様に、ウェーブレット変換が３回施された例である。この場合、図１０に示されるように、最低域の第１パケットから最高域の第４パケットまでの４個のパケットが生成される。従って、これら個々のパケット内サブバンド中に存在する、全てのコードブロックの符号化コードストリームが、パケット生成部１２８において、パケット毎にパッキングされ、可逆エンコード部１０１より出力される。
【００９５】
図１１は、図２の部分デコード部１１１の詳細な構成例を示すブロック図である。図１１に示されるように、部分デコード部１１１は、パケット解読部２０１、EBCOT部２０２、制御部２３１、コードブロック合成部２０６、ウェーブレット逆変換部２０８、およびDCレベル逆シフト部２０９を有する。
【００９６】
パケット解読部２０１は、可逆エンコード部１０１のパケット生成部１２８において生成されたパケットを解読し、符号化コードストリームをEBCOT部２０２に供給する。EBCOT部２０２は、上述した可逆エンコード部１０１のEBCOT部１３２に対応する復号方法でコードストリームを復号し、ビットプレーンに展開されたウェーブレット係数を生成する。EBCOT部２０２は、算術復号部２２１およびビットモデリング部２２２を有する。算術復号部２２１は、算術符号化部１４２に対応する方法でコードストリームを復号し、ビットモデリング部２２２は、ビットモデリング部１４１に対応する方法で、ビットプレーンに展開されたウェーブレット係数を生成する。EBCOT部２０２は、生成したビットプレーン毎の係数データを、制御部２３１の選択ビットプレーン符号量カウント部２０３に供給する。
【００９７】
制御部２３１は、復号処理により生成されるベースバンドの画像データの、マスタ画像（原画像）の画像データに対する圧縮率を制御する。制御部２３１は、選択ビットプレーン符号量カウント部２０３、目標圧縮率取得部２０４、および選択ビットプレーン決定部２０５を有する。
【００９８】
選択ビットプレーン符号量カウント部２０３は、供給されるビットプレーンを蓄積する。また、選択ビットプレーン符号量カウント部２０３は、蓄積したビットプレーンの中から、まず、後段の処理部に供給する（つまり復号結果として利用する）ビットプレーンである選択ビットプレーンの候補を選び、その候補の符号量をカウントし、そのカウント値（符号量の情報）を選択ビットプレーン決定部２０５に供給する。目標圧縮率取得部２０４は、非可逆エンコード部１１２より、非可逆エンコード部１１２より目標圧縮率を取得し、それを選択ビットプレーン決定部２０５に供給する。この目標符号量は、上述したように、非可逆エンコード部１１２が目標符号量を達成するために必要なベースバンドの画像データの符号量を、マスタ画像（原画像）の画像データに対する圧縮率で表わしたものである。
【００９９】
選択ビットプレーン決定部２０５は、選択ビットプレーン符号量カウント部２０３より供給される選択ビットプレーンの候補の符号量を用いて、その選択ビットプレーンの候補の、マスタ画像（原画像）の画像データに対する圧縮率を算出し、その圧縮率が、目標圧縮率取得部２０４より供給された目標圧縮率以下となったか否かを判定する。目標圧縮率に達した時点で、選択ビットプレーン決定部２０５は、選択ビットプレーン符号量カウント部２０３より選択ビットプレーンの候補を取得し、それらの候補を正式に選択ビットプレーンとして決定し、後段のコードブロック合成部２０６に供給する。
【０１００】
以上のように、選択ビットプレーン決定部２０５は、非可逆エンコード部１１２における目標圧縮率に応じて、可逆エンコードされたコードストリームを復号して得られる全てのビットプレーンの中から、一部のビットプレーンを選択することにより、後段の処理において、その選択した一部のビットプレーンでベースバンドの画像データを生成させる。このようにすることにより、部分デコード部１１１は、非可逆エンコード部１１２において必要なデータ量、もしくは、それより少し多目のデータ量のベースバンドの画像データを生成することができる。
【０１０１】
つまり、部分デコード部１１１は、可逆圧縮されたコードストリームのうち、一部分のみを使用してベースバンドの画像データを生成する。上述したように、非可逆エンコード部１１２より供給される目標圧縮率に基づいてこのような部分デコード処理を行うことにより、少なくとも非可逆エンコード部１１２における符号化に必要なデータ量（目標符号量を達成するために必要な符号量）が確保されているので、非可逆エンコード部１１２は、不要な画質の劣化を伴わずに、非可逆圧縮された目標符号量の、またはそれに近似する符号量のコードストリームを生成することができる。このように、部分デコード部１１１は、上述した部分デコード処理により、不要に高画質なベースバンドの画像データを生成する必要がなくなり、マスタ画像のデータ量が大きい場合であっても、不要に画質を低下させずに（適切に）、不要な処理の負荷の増大を抑制する（容易に復号処理を行う）ことができる。
【０１０２】
なお、選択ビットプレーン符号量カウント部２０３は、重要度の高いビットプレーンを優先的に選択ビットプレーンの候補として選択する。つまり、選択ビットプレーン符号量カウント部２０３は、蓄積したビットプレーンを、重要度の高い方から低い方に向かう順に選択ビットプレーンの候補として１つずつ選択し、選択する度に符号量を算出し、選択ビットプレーン決定部２０５にその情報を供給する。
【０１０３】
換言すれば、部分デコード部１１１は、重要度の高いデータほど優先的に復号してベースバンドの画像データを生成する。このように部分デコード処理を行うことにより、部分デコード部１１１は、可能な限り画質の劣化を抑制するように適切に復号処理を行うことができる。
【０１０４】
コードブロック合成部２０６は、供給されたビットプレーンを用いてコードブロック単位の係数データを生成し、さらにそれらを合成し、サブバンド毎の係数データを生成し、それをウェーブレット逆変換部２０８に供給する。ウェーブレット逆変換部２０８は、供給されたウェーブレット係数をウェーブレット逆変換し、ベースバンドの画像データを生成する。DCレベル逆シフト部２０９は、その画像データのDC成分に対して、DCレベルシフト部１２１においてシフトした分を元に戻すDCレベル逆シフト処理を必要に応じて行う。DCレベル逆シフト部２０９は、DCレベル逆シフト処理後の画像データを非可逆エンコード部１１２に供給する。
【０１０５】
図１２は、図２の非可逆エンコード部１１２の詳細な構成例を示すブロック図である。図１２に示されるように、非可逆エンコード部１１２は、基本的に可逆エンコード部１０１（図３）と同様の構成を有するが、ウェーブレット変換部１２２の代わりにウェーブレット変換部３２２を有し、エントロピ符号化部１２６の代わりにエントロピ符号化部３２６を有し、さらに量子化部３０１および目標圧縮率供給部３０２を有する点で可逆エンコード部１０１と異なる。
【０１０６】
ウェーブレット変換部３２２は、ウェーブレット変換部１２２と同様に、通常低域フィルタと高域フィルタから構成されるフィルタバンクによって実現され、フィルタリングが行えるだけの入力画像を予めバッファリングするバッファを有する。
【０１０７】
ウェーブレット変換部３２２は、ウェーブレット変換部１２２と同様に、DCレベルシフト部１２１より出力された画像データを、フィルタリングに最低限必要なデータ量以上取得すると、そのDCレベルシフト後の画像データに対して、画像の垂直方向および水平方向のそれぞれに対して、画像データを低域成分と高域成分に分離するフィルタリングを行い、ウェーブレット係数を生成する。
【０１０８】
ただし、ウェーブレット変換部１２２が、５×３ウェーブレット変換フィルタを用いてフィルタリングを行うのに対して、ウェーブレット変換部３２２は、９×７ウェーブレット変換フィルタを用いてフィルタリングを行う。
【０１０９】
ウェーブレット変換部３２２は、このようなフィルタリング処理を、垂直方向および水平方向の両方において低域成分として分離されたサブバンドに対して再帰的に所定回数繰り返すと、得られたサブバンド毎のウェーブレット係数を量子化部３０１に供給する。
【０１１０】
量子化部３０１は、供給されたウェーブレット係数を量子化する。この量子化の方法は任意であるが、量子化ステップサイズで除算するスカラ量子化が一般的である。量子化部３０１は、量子化により得られた量子化係数をコードブロック化部１２４に供給する。なお、これより後段においては、ウェーブレット係数の代わりに量子化係数が供給されることになるが、この量子化係数もウェーブレット係数の場合と基本的に同様に扱われる。したがって、以下においては、必要でない限りその点についての説明は省略し、単に係数または係数データと称する。
【０１１１】
エントロピ符号化部３２６は、ビットプレーン展開部１２５より供給された、ビットプレーンに展開された係数データを、エントロピ符号化する。このエントロピ符号化部３２６も、エントロピ符号化部１２６と同様にEBCOT部１３２を有しており、基本的に同様に符号化を行うが、エントロピ符号化部３２６は、供給されるビットプレーンの全てを符号化するとは限らず、符号化した符号量が目標符号量に達した時点で符号化を終了する。つまり、エントロピ符号化部１２６は、符号量を調整しながら符号化を行う。
【０１１２】
この目標符号量は、予め定められていてもよいし、例えば出力側のトラフィック状況等、何らかの要因に基づいて適宜設定される（さらに、時系列に沿って変動する）ようにしてもよい。
【０１１３】
図１２に示されるように、エントロピ符号化部３２６は、EBCOT部１３２の他に、制御部３３１および符号量加算部３３３を有する。
【０１１４】
EBCOT部１３２は、ビットプレーンを符号化すると、その符号語を符号量加算部３３３に供給する。符号量加算部３３３は、その符号語の符号量をカウントし、累積する。そして、符号量加算部３３３は、その符号語をヘッダ作成部１２７およびパケット生成部１２８に供給するとともに、符号量の累積値を制御部３３１に供給する。制御部３３１は、供給された符号量の累積値と目標符号量とを比較し、累積値が目標符号量より小さい場合、EBCOT部１３２を制御し、次のビットプレーンの符号化を行わせる。EBCOT部１３２は、その制御に従って次に重要なビットプレーンを符号化し、生成した符号語を符号量加算部３３３に供給する。符号量加算部３３３は、その符号語の符号量をカウントして累積し、累積値を制御部３３１に供給する。
【０１１５】
累積値が目標符号量に達するまで、以上のような処理が繰り返される。そして、累積値が目標符号量に達すると、制御部３３１は、EBCOT部１３２を制御し、符号化処理を終了させる。
【０１１６】
以上のように、制御部３３１が、符号量加算部３３３において算出された符号量の累積値に基づいて、EBCOT部１３２を制御することにより、エントロピ符号化部１２６は、符号量を調整しながら符号化を行う。
【０１１７】
目標圧縮率供給部３０２は、制御部３３１において設定されている目標符号量とマスタ画像のデータ量に基づいて算出される、部分デコード部１１１における目標圧縮率を部分デコード部１１１（目標圧縮率取得部２０４）に供給する。これにより、部分デコード部１１１は、その目標圧縮率に合わせて、デコード処理を行うことができ、マスタ画像のデータ量が大きい場合であっても、不要な処理の負荷の増大を適切に抑制することができる。
【０１１８】
続いて、係数の重要度について説明する。符号化装置１００において、可逆エンコード部１０１、部分デコード部１１１、および非可逆エンコード部１１２は、既存のRD（Rate-Distortion）特性を利用したレート制御法とは大きくことなり、基本的に、重要度の高いものから低いものに向かう順番に各係数ビットを符号化または復号する。
【０１１９】
例えば、図１３は、１つのサブバンドY-0LLを符号化（または復号）する順の例を示す図である。Y-0LLのYは輝度を表し、0LLは最低域を示している。このY-0LLにおいて、コードブロックCB0乃至コードブロックCBnまで（ｎ＋１）個のコードブロックが存在していることを示している。模様が付されている部分が、各コードブロックのビットプレーン群を示す。
【０１２０】
図１３に示されるように、サブバンド内において、EBCOT部１３２およびEBCOT部２０２は、各コードブロックのビットプレーンを、優先順位の高いコードブロックから優先順位の低いコードブロックの順に符号化または復号する。図１３において、コードブロックCB0が最も優先順位の高い（最も重要度の高い）コードブロックを示し、コードブロックCBnが優先順位の最も低い（最も重要度の低い）コードブロックを示している。上述したように、各ビットプレーンは、MSBからLSBに向かう順に符号化または復号されるので、結局、図１３の例の場合、Y-0LL内の符号化・復号順は、矢印に示されるように順となる。
【０１２１】
係数が０しか存在しないゼロビットプレーンは処理されないので、実際には、ビットプレーンは、図１３中に示される番号順（（１）から（１４）に向かう順）に処理される。なお、図１３中においては、この番号は、円で囲まれた数字で示されているが、本明細書中においては括弧つき数字で示す。つまり、最初にEBCOTの対象になるのは、最もビット位置の高い（１）のビットプレーンになる。このビット位置では（１）しかビットプレーンが存在していないので、（１）だけをEBCOTして、次のビット位置に移動する（点線で図示してある）。次のビット位置では、（２）と（３）のビットプレーンがEBCOTの対象になる。
【０１２２】
次に、データ量の調整方法について説明する。
【０１２３】
まず、非可逆エンコード部１１２のエントロピ符号化部３０６の場合、上述した走査を繰り返し行い、各ビットプレーンのEBCOT符号化で発生した符号量を、前述の様に加算していき、その累算結果が目標符号量に達したときに、EBCOTを終了する。例えば、図１３において、（９）まで符号化した時点で目標符号量に到達したとすると、制御部３３１は、その時点でEBCOT部１３２に符号化を終了させる。従ってこの場合、（１０）も（９）とは同じビット位置にはあるが、エントロピ符号化部３２６（非可逆エンコード部１１２）より出力される符号化コードストリームの中には含まれないことになる。
【０１２４】
これに対して、可逆エンコード部１０１の場合、同様の走査により（１）から（１４）までの全てのビットプレーンが符号化される。従って、可逆エンコード部１０１より出力される可逆圧縮ファイルには、（１）から（１４）までの全てのビットプレーンが含まれる。
【０１２５】
部分デコード部１１１の場合、EBCOT部２０２では、供給される符号語が同様の走査順に復号される。選択ビットプレーン符号量カウント部２０３は、EBCOT部２０２より出力された順に各ビットプレーンを選択ビットプレーンの候補とし、その符号量をカウントする。つまり、（１）から（１４）の順に各ビットプレーンの符号量がカウントされる。選択ビットプレーン決定部２０５は、選択ビットプレーン符号量カウント部２０３より供給される符号量に基づいて、選択ビットプレーンの候補の、マスタ画像（原画像）の画像データに対する圧縮率を算出し、それを目標圧縮率取得部２０４より供給された目標圧縮率と比較する。
【０１２６】
そして、選択ビットプレーンの候補の圧縮率が目標圧縮率に達した時点（図１２の例の場合、以下の式が成立した時点）で、選択ビットプレーン決定部２０５は、選択ビットプレーンの候補を、選択ビットプレーンとして正式に決定する。
【０１２７】
目標圧縮率≦（１）乃至（９）の符号量の総和／マスタ画像のデータサイズ
目標圧縮率≧（１）乃至（１０）の符号量の総和／マスタ画像のデータサイズ
【０１２８】
部分デコード部１１１の制御部２３１は、以上のように、復号データのデータ量を調整する。
【０１２９】
つまり、可逆エンコード部１０１、部分デコード部１１１、および非可逆エンコード部１１２は、それぞれ、係数データまたは符号語をその重要度の順に符号化または復号する。さらに、部分デコード部１１１および非可逆エンコード部１１２は、その重要度の順にデータの取捨選択を行い、データ量を調整する。
【０１３０】
以上においては、１つのサブバンド内における走査方法について説明した。つまり、この場合、画像全体においては、各サブバンドが所定の順に１つずつ処理される（サブバンド毎に処理される）。
【０１３１】
符号化および復号の走査順は、これ以外であってもよく、例えば、図１４に示されるように、コンポーネント毎に処理されるような順でもよい。図１４は、各ビット位置を、Ｙ成分（輝度成分）の全てのサブバンドに渡って走査する場合の例を示す図である。
【０１３２】
図１４の例の場合、各サブバンドが、重要度に応じて（この例の場合、低域（0LL）から高域（3HH）に向かう順に）並べられている。また、各サブバンド内においては、各コードブロックが、重要度に応じて（この例の場合、CB0からCBnに向かう順に）並べられている。このように並べられたビットプレーンは、矢印に示されるように、ビット位置毎に、MSB側からLSB側に向かう順に処理される。従って、この場合、３段目の走査において、Y-0LLのビットプレーンだけでなく、Y-1HLやY-3HHのビットプレーンも処理される。
【０１３３】
さらに、画像が複数のコンポーネントから構成されている場合、例えば、図１５に示されるように、全てのコンポーネントを通して走査するようにしてもよい。図１５は、各ビット位置を、Ｙ成分、Ｕ成分、およびＶ成分の全てのコンポーネントに渡って走査する場合の例を示す図である。
【０１３４】
図１５の例の場合、Ｙ成分（輝度成分）、Ｕ成分（色差成分）、およびＶ成分（色差成分）の各コンポーネントが、重要度に応じて（この例の場合、Ｙ成分、Ｕ成分、Ｖ成分の順に）並べられている。また、各コンポーネント内においては、各サブバンドが、重要度に応じて（この例の場合、低域（0LL）から高域（3HH）に向かう順に）並べられている。さらに、各サブバンド内においては、各コードブロックが、重要度に応じて（この例の場合、CB0からCBnに向かう順に）並べられている。このように並べられたビットプレーンは、矢印に示されるように、ビット位置毎に、MSB側からLSB側に向かう順に処理される。従って、この場合、１段目の走査において、Y-0LLのビットプレーンだけでなく、U-0LLのビットプレーンも処理される。
【０１３５】
より具体的に説明すると、EBCOT部１３２は、最初に、ゼロビットプレーンでないビットプレーンが存在する、MSBに最も近いビット位置において、Ｙ成分の全てのサブバンド（0LLから3HHまで）内の全てのコードブロックを走査し、ゼロビットプレーンでないビットプレーンが存在する場合は、それを符号化する。EBCOT部１３２は、次に、同じビット位置において、Ｕ成分の全てのサブバンド（0LLから3HHまで）内の全てのコードブロックを走査し、ゼロビットプレーンでないビットプレーンが存在する場合は、それを符号化する。EBCOT部１３２は、さらに、同じビット位置において、Ｖ成分の全てのサブバンド（0LLから3HHまで）内の全てのコードブロックを走査し、ゼロビットプレーンでないビットプレーンが存在する場合は、それを符号化する。
【０１３６】
V-3HHまで走査が終了すると、EBCOT部１３２は、次に、１つ下位のビット位置に移動し、そのビット位置について、同様の順で走査を続ける。
【０１３７】
上述した図１４においてはコンポーネント毎に各ビット位置を走査するように説明したが、この場合、画像が複数のコンポーネントから構成されているときは、各コンポーネントをその重要度順に走査する。つまり、例えば、図１５の例のように、画像がＹ成分、Ｕ成分、およびＶ成分よりなり、この順に重要度が高い場合、まず、最も重要なＹ成分について処理が行われ、次にＵ成分について処理が行われ、最後に最も重要度の低いＶ成分について処理が行われるようにする。
【０１３８】
また、上述した図１３においてはサブバンド毎に各ビット位置を走査するように説明したが、この場合、各サブバンドをその重要度順に走査する。つまり、例えば、図１４の例のように、画像が0LL乃至3HHのサブバンドにより構成されており、この順に重要度が高い場合、まず、最も重要な0LL成分について処理が行われ、次に、その次に重要な1LH成分について処理が行われ、以下同様に重要度の順に処理が行われ、最終的に最も重要度の低い3HHについて処理が行われるようにする。例えば、図１６に示されるような、所定の順で各サブバンドが処理されるようにする。
【０１３９】
なお、この走査順は予め定められている。つまり、各ビットプレーンの重要度は予め定められており、可逆エンコード部１０１、部分デコード部１１１、および非可逆エンコード部１１２は、この重要度について互いに共通の認識を持つ。
【０１４０】
以上のような、符号化・復号処理の流れの例を以下に説明する。
【０１４１】
最初に、図１７のフローチャートを参照して、可逆エンコード部１０１による可逆符号化処理の流れの例を説明する。
【０１４２】
可逆符号化処理が開始されると、ステップＳ１０１において、DCレベルシフト部１２１は、入力された画像データのDCレベルをシフトする。ステップＳ１０２において、ウェーブレット変換部１２２は、画像データをウェーブレット変換する。ステップＳ１０３において、コードブロック化部１２４は、重み付けされたウェーブレット係数をコードブロック単位で分割する。ステップＳ１０４において、ビットプレーン展開部１２５は、コードブロック毎の係数データをビットプレーンに展開する。ステップＳ１０５において、エントロピ符号化部１２６は、各ビットプレーンを、その重要度順にエントロピ符号化する。ステップＳ１０６において、ヘッダ生成部１２７およびパケット生成部１２８は、符号化されて得られた符号語をパケット化し、可逆符号化処理を終了する。
【０１４３】
次に、図１８のフローチャートを参照して、部分デコード部１１１により実行される部分デコード処理の流れの例を説明する。
【０１４４】
部分デコード処理が開始されると、目標圧縮率取得部２０４は、ステップＳ２０１において、非可逆エンコード部１１２より目標圧縮率を取得する。ステップＳ２０２において、パケット解読部２０１は、入力された可逆圧縮ファイルのパケットを解読し、コードストリームを取得する。ステップＳ２０３において、EBCOT部２０２は、コードストリームを復号する。ステップＳ２０４において、選択ビットプレーン符号量カウント部２０３は、復号されて得られた係数（ビットプレーン）を保持する。ステップＳ２０５において、選択ビットプレーン符号量カウント部２０３は、保持しているビットプレーン群の中で最も重要なビットプレーンを選択ビットプレーンの候補に選択し、符号量を算出する。ステップＳ２０６において、選択ビットプレーン決定部２０５は、選択ビットプレーン符号量カウント部２０３によりカウントされた符号量に基づいて選択ビットプレーンの候補の、マスタ画像（原画像）の画像データに対する圧縮率を算出し、ステップＳ２０７において、その算出された圧縮率が、ステップＳ２０１の処理により取得された目標圧縮率以下であるか否かを判定する。
【０１４５】
選択ビットプレーンの候補の圧縮率が目標圧縮率より大きい（選択ビットプレーンの候補の符号量が十分多くない）と判定した場合、選択ビットプレーン決定部２０５は、処理をステップＳ２０８に進める。ステップＳ２０８において、選択ビットプレーン符号量カウント部２０３は、保持しているビットプレーン群の中で次に重要なビットプレーンを選択ビットプレーンの候補に選択し、符号量を算出し、さらに処理をステップＳ２０６に戻し、それ以降の処理を繰り返す。つまり、制御部２３１（選択ビットプレーン符号量カウント部２０３および選択ビットプレーン決定部２０５）は、選択ビットプレーンの候補の圧縮率が目標圧縮率以下になるまで、ステップＳ２０６乃至ステップＳ２０８の各処理を繰り返し実行し、選択ビットプレーンの候補の符号量を増加させていく。
【０１４６】
そして、ステップＳ２０７において、選択ビットプレーンの候補の圧縮率が目標圧縮率以下であると判定した場合、選択ビットプレーン決定部２０５は、処理をステップＳ２０９に進め、選択ビットプレーンを決定する。ステップＳ２１０において、コードブロック合成部２０６は、その選択ビットプレーンを用いてコードブロックを合成する。ステップＳ２１１において、ウェーブレット逆変換部２０８は、係数データをウェーブレット逆変換する。ステップＳ２１２において、DCレベル逆シフト部２０９は、画像データのDCレベルの逆シフトを行い、部分デコード処理を終了する。
【０１４７】
次に、図１９のフローチャートを参照して非可逆符号化処理の流れの例を説明する。
【０１４８】
非可逆符号化処理が開始されると、ステップＳ３０１において、DCレベルシフト部１２１は、入力された画像データのDCレベルをシフトする。ステップＳ３０２において、ウェーブレット変換部３２２は、画像データをウェーブレット変換する。ステップＳ３０３において、量子化部３０１は、ウェーブレット係数に対して量子化を行う。ステップＳ３０４において、コードブロック化部１２４は、量子化係数をコードブロック単位で分割する。ステップＳ３０５において、ビットプレーン展開部１２５は、コードブロック毎の係数データをビットプレーンに展開する。ステップＳ３０６において、エントロピ符号化部３２６は、各ビットプレーンを、その重要度順にエントロピ符号化する。エントロピ符号化処理の詳細については後述する。ステップＳ３０７において、ヘッダ生成部１２７およびパケット生成部１２８は、符号化されて得られた符号語をパケット化する。ステップＳ３０８において、目標圧縮率供給部３０２は、エントロピ符号化部３２６において設定されている目標符号量に相当する目標圧縮率を部分デコード部１１１に供給し、非可逆符号化処理を終了する。
【０１４９】
次に、図１９のステップＳ３０６において実行されるエントロピ符号化処理の詳細な流れの例を、図２０のフローチャートを参照して説明する。
【０１５０】
エントロピ符号化処理が開始されると、制御部３３１は、ステップＳ３３１において、変数を初期化する。変数としては、例えば、符号化対象のコンポーネントＮC＝｛１，２，・・・，ＬC｝、サブバンドＮS＝｛１，２，・・・，ＬS｝、符号ブロックＢ、ビットプレーンＣ、符号量Ｔ（Ｂ，Ｃ，ＮC，ＮS）、および累積加算符号量Ｙがある。
【０１５１】
ステップＳ３３２において、EBCOT部１３２は、係数のビットプレーン情報（ゼロビットプレーン情報も含む）を取得する。ステップＳ３３３において、制御部３３１は、変数Ｙの値を「０」に設定する。ステップＳ３３４において、EBCOT部１３２は、最も重要なビットプレーンを選択する。
【０１５２】
ステップＳ３３５において、EBCOT部１３２は、選択したビットプレーンを符号化する。ステップＳ３３６において、符号量加算部３３３は、符号語の符号量Ｔ（Ｂ，Ｃ，ＮC，ＮS）を算出し、以下の式のように、変数Ｙにその符号量Ｔ（Ｂ，Ｃ，ＮC，ＮS）を加算する。
【０１５３】
Ｙ＝Ｙ＋Ｔ（Ｂ，Ｃ，ＮC，ＮS）
【０１５４】
ステップＳ３３７において、制御部３３１は、変数Ｙを参照し、符号化された符号量の累積値が目標符号量に達したか否かを判定する。変数Ｙの値（累積値）が目標符号量に達していないと判定した場合、制御部３３１は、処理をステップＳ３３８に進める。
【０１５５】
ステップＳ３３８において、EBCOT部１３２は、同一ビット位置に未処理のビットプレーンが存在するか否かを判定し、存在すると判定した場合、処理をステップＳ３３９に進め、同一ビット位置の次に重要なビットプレーンを選択する。ビットプレーンを選択すると、EBCOT部１３２は、処理をステップＳ３３５に戻し、それ以降の処理を繰り返す。
【０１５６】
また、ステップＳ３３８において、同一ビット位置に未処理のビットプレーンが存在しないと判定した場合、EBCOT部１３２は、処理をステップＳ３４０に進め、未処理のビットプレーンが存在するか否かを判定し、存在すると判定した場合、処理をステップＳ３４１に進める。ステップＳ３４１において、EBCOT部１３２は、次のビット位置の最も重要なビットプレーンを選択し、処理をステップＳ３３５に戻し、それ以降の処理を繰り返す。
【０１５７】
ステップＳ３３７において、変数Ｙの値（累積値）が目標符号量に達したと判定した場合、制御部３３１は、エントロピ符号化処理を終了し、処理を図１９のステップＳ３０６に戻し、ステップＳ３０７以降の処理を実行させる。また、ステップＳ３４０において、未処理のビットプレーンが存在しないと判定した場合、EBCOT部１３２は、エントロピ符号化処理を終了し、処理を図１９のステップＳ３０６に戻し、ステップＳ３０７以降の処理を実行させる。
【０１５８】
以上のような手順に従って、実際の画像に対して実験を行った結果を、図２１の表に示す。なお、実験の各種条件は以下のとおりである。
【０１５９】
・原画データ：４０９６×２１６０画素×１０ビット×３（RGB）×２４fps＝６３７０Mbps
・テストシーケンス：Movie
・可逆圧縮結果（JPEG可逆モード）：３４６９Mbps（原画の約５４％）
・デコード画像：図１の非可逆エンコード結果のコードストリームを通常のJPEG2000非可逆デコーダでデコードした結果の画像
・非可逆エンコード後のビットレート：２５０Mbps
【０１６０】
図２１に示される表は、部分デコード時のビットレートとPSNR（Peak Signal-to-Noise Ratio）［dB］の関係を示すものである。
【０１６１】
図２１に示されるように、部分デコード時のビットレートを可逆のビットレート（３４６９Mbps）から徐々に下げていくと、それに従って、CPUのサイクル数が低減される。つまり、部分デコード時のビットレートを下げるほど、デコード処理の負荷が低減される。
【０１６２】
このとき、部分デコード時のビットレートを下げるほど、非可逆エンコードファイルのデコード画像のPSNRは、低下する。つまり、非可逆エンコードファイルのデコード画像の画質が低下する。
【０１６３】
しかしながら、部分デコード時のビットレートを、可逆レート（３４６９Mbps）のままとしたときと、後段の非可逆エンコードのビットレート２５０Mbpsと同一にしたときとの、非可逆エンコードファイルのデコード画像のPSNRの差は、３６．８９−３７．３８＝０．４９［dB］であり、その差は非常に小さい。それに比べて、CPUのサイクル数は、７７１／７１０５＝０．１０８となり、約１０分の１に低減される。なお、後段の非可逆エンコード時（２５０Mbps）のCPUサイクル数は、前段のデコード画像のビットレートの変化の影響を受けず、常に一定値（９０４サイクル）であった。
【０１６４】
以上のように、部分デコード部１１１は、画質の劣化を低減させながら、可逆圧縮ファイルの復号の負荷を低減させることができる。換言すれば、非可逆トランスコード部１０２は、容易かつ適切に、可逆圧縮ファイルを非可逆圧縮ファイルに変換することができる。さらに、換言すれば、符号化装置１００は、マスタ画像のデータサイズが大きくても、容易かつ適切に画像データを符号化することができる。
【０１６５】
以上においては、部分デコード部１１１においてデコード画像に利用するビットプレーンを選択するように説明したが、これ以外にも、例えば、マスタ画像（原画像）のデータサイズが既知であることから、図２２に示される例のように、切り捨てるビットプレーン（選択ビットプレーン以外のビットプレーン）を選択するようにしてもよい。この場合、部分デコード部１１１は、重要度の低い方から高いほうに向かう順で切り捨てるビットプレーン（以下、切り捨てビットプレーンと称する）を選択する。
【０１６６】
図２２は、切り捨てビットプレーンを選択する場合の走査順の例について説明する図である。図２２においては、この選択順が矢印で示されている。つまり、図２２の例の場合、LSBからMSBに向かう順で、切り捨てビットプレーンが選択される。最初に、（１４）のビットプレーンが選択され、次に（１３）のビットプレーンが選択される。そしてLSBのビットプレーンが全て選択されると次に１つ上のビット位置の、最も重要度の低いビットプレーン（（１０）のビットプレーン）が選択される。以下同様の手順で走査される。
【０１６７】
部分デコード部１１１は、このように選択した、切り捨てビットプレーンの符号量を加算し、それをマスタ画像（原画像）の画像データのデータサイズより減算することで、切り捨てられないビットプレーン（つまり、選択ビットプレーン）の符号量（さらにマスタ画像（原画像）の画像データに対する圧縮率）を算出することができる。すなわち、部分デコード部１１１は、この場合も、選択ビットプレーンを選択するときと同様に、データ量の制御を行うことができる。
【０１６８】
図２３は、この場合の部分デコード部１１１の詳細な構成例を示すブロック図である。図２３は、図１２に対応する図である。図２３に示されるように、この場合も、部分デコード部１１１は、図１１の場合と基本的に同様の構成を有する。ただし、図２３の場合の部分デコード部１１１は、制御部２３１の代わりに、制御部４３１を有する。
【０１６９】
制御部４３１は、復号処理により生成されるベースバンドの画像データの、マスタ画像（原画像）の画像データに対する圧縮率を制御する。制御部４３１は、切り捨てビットプレーン符号量カウント部４０３、目標圧縮率取得部２０４、および切り捨てビットプレーン決定部４０５を有する。
【０１７０】
切り捨てビットプレーン符号量カウント部４０３は、EBCOT部２０２より供給されるビットプレーンを蓄積し、重要度の低い方から高いほうに向かう順に切り捨てビットプレーンの候補として１つずつ選択し、選択した切り捨てビットプレーンの候補の符号量をカウントし、そのカウント値を、切り捨てビットプレーン決定部４０５に供給する。
【０１７１】
切り捨てビットプレーン決定部４０５は、切り捨てビットプレーン符号量カウント部４０３より供給される符号量に基づいて、切り捨てないビットプレーン、つまり、選択ビットプレーンの、マスタ画像（原画像）の画像データに対する圧縮率を算出する。切り捨てビットプレーン決定部４０５は、その圧縮率と目標圧縮率取得部２０４により取得された目標圧縮率とを比較して、以下の式が満たされる場合、切り捨てビットプレーンの候補を切り捨てビットプレーンとして決定し切り捨てる（残りのビットプレーンを選択ビットプレーンとして後段の処理部に供給する）。
【０１７２】
目標圧縮率≦（可逆圧縮符号量−（１４）乃至（１１）の符号量の総和）／マスタ画像のデータサイズ
目標圧縮率≧（可逆圧縮符号量−（１４）乃至（１０）の符号量の総和）／マスタ画像のデータサイズ
【０１７３】
つまり、図２２の例において、（１４）のビットプレーンより選択を開始して、（１０）のビットプレーンまで選択した時点で、切り捨てないビットプレーン（以下、残ビットプレーンと称する）の圧縮率が目標圧縮率以下になったことを示している。
【０１７４】
切り捨てビットプレーン決定部４０５は、残ビットプレーンを選択ビットプレーンとしてコードブロック合成部２０６に供給する。
【０１７５】
この場合の部分デコード処理の流れの例を図２４のフローチャートを参照して説明する。この図２４のフローチャートは、図１８のフローチャートに対応する。
【０１７６】
図２４において、ステップＳ４０１乃至ステップＳ４０４の各処理は、図１８のステップＳ２０１乃至ステップＳ２０４の各処理と同様に実行される。
【０１７７】
ステップＳ４０５において、切り捨てビットプレーン符号量カウント部４０３は、保持しているビットプレーンの中で最も重要でないビットプレーンを切り捨てビットプレーンの候補に選択し、その符号量を算出する。ステップＳ４０６において、切り捨てビットプレーン決定部４０５は、切り捨てビットプレーン符号量カウント部４０３によりカウントされた符号量に基づいて残ビットプレーンの候補（すなわち、選択ビットプレーンの候補）の、マスタ画像（原画像）の画像データに対する圧縮率を算出し、ステップＳ４０７において、その算出された圧縮率が、ステップＳ４０１の処理により取得された目標圧縮率以下であるか否かを判定する。
【０１７８】
残ビットプレーンの候補の圧縮率が目標圧縮率以下であると判定した場合、切り捨てビットプレーン決定部４０５は、処理をステップＳ４０８に進める。切り捨てビットプレーン符号量カウント部４０３は、保持しているビットプレーンの中で次に重要でないビットプレーンを切り捨てビットプレーンの候補に選択し、その符号量を算出し、さらに処理をステップＳ４０６に戻し、それ以降の処理を繰り返す。つまり、切り捨てビットプレーン決定部４０５は、残ビットプレーンの候補の圧縮率が目標圧縮率より大きくなるまで、ステップＳ４０６乃至ステップＳ４０８の各処理を繰り返し実行し、切り捨てビットプレーンの候補の符号量を増加させていく。
【０１７９】
そして、ステップＳ４０７において、残ビットプレーンの候補の圧縮率が目標圧縮率より大きいと判定した場合、切り捨てビットプレーン決定部４０５は、処理をステップＳ４０９に進め、切り捨てビットプレーンを決定する。ステップＳ４１０乃至ステップＳ４１２の各処理は、図１８のステップＳ２１０乃至ステップＳ２１２の各処理と同様に実行される。
【０１８０】
以上のように、部分デコード部１１１は、より重要でないビットプレーンを切り捨てビットプレーンを選択することによって、より重要なビットプレーンを残ビットプレーン（選択ビットプレーン）として選択することもでき、上述した、重要なビットプレーンを直接選択する場合と同様の効果を得ることができる。
【０１８１】
なお、以上においては、選択ビットプレーンの符号量を直接的または間接的にカウントするように説明したが、デコード処理をさらに簡易化するために、選択するビットプレーンの数を予め定めておくようにしてもよい。つまり、この場合、各ビットプレーンの符号量や目標圧縮率に関わらず、常に一定の数のビットプレーンが選択ビットプレーンとして選択される。
【０１８２】
図２５は、この場合の部分デコード部１１１の構成例を示すブロック図である。図２５に示されるように、この場合の部分デコード部１１１は、基本的に図１１の場合と同様の構成を有するが、図１１の制御部２３１の代わりに制御部４４１を有する。つまり、この場合の部分デコード部１１１は、図１１の選択ビットプレーン符号量カウント部２０３、目標圧縮率取得部２０４、および選択ビットプレーン決定部２０５の代わりに、選択ビットプレーン決定部４３５を有する。
【０１８３】
制御部４４１の選択ビットプレーン決定部４３５は、EBCOT部２０２より供給されるビットプレーンを蓄積するとともに、その重要度順（重要度の高い方から低い方に向かう順）に、所定の数選択し、それらを選択ビットプレーンとしてコードブロック合成部２０６に供給する。なお、選択ビットプレーン決定部４３５は、選択ビットプレーンとして選択しなかった残ビットプレーンは切り捨てる。
【０１８４】
この場合の部分デコード処理の流れの例を図２６のフローチャートを参照して説明する。図２６のフローチャートは、図１８に対応するフローチャートである。
【０１８５】
図２６において、ステップＳ４３１乃至ステップＳ４３４の各処理は、図１８のステップＳ２０１乃至ステップＳ２０４の各処理と同様に実行される。ステップＳ４３５において、選択ビットプレーン決定部４３５は、重要度の高いほうから順に、予め定められた所定数のビットプレーンを選択ビットプレーンとして選択し、決定する。ステップＳ４３６乃至ステップＳ４３８の各処理は、図２１のステップＳ２１０乃至ステップＳ２１３の各処理と同様に実行される。
【０１８６】
以上のように、部分デコード部１１１は、選択ビットプレーンの符号量をカウントする場合よりも、この場合の方が、より容易に復号処理を行うことができる。ただし、この場合、選択されるビットプレーンの数が画像の内容に関わらず一定であるため、入力画像によってエンコードの難易度が変化するのに対する柔軟性が低減する場合がある。例えば、予め定められているビットプレーンの選択数が、エンコードが容易な画像に対して多すぎ、エンコードの難易度が高い画像に対して少なすぎる結果になる場合がある。ただし、この誤差が許容範囲内に収まる場合は、デコード処理の負荷をさらに低減させる方法として有効である。
【０１８７】
同様に、切り捨てビットプレーンを決定する場合も、切り捨てビットプレーンを符号量に基づいて決定するのではなく、予め定められた所定数のビットプレーンを選択するようにしてもよい。
【０１８８】
図２７は、この場合の部分デコード部１１１の構成例を示すブロック図である。図２７に示されるように、この場合の部分デコード部１１１は、基本的に図２３の場合と同様の構成を有するが、図２３の制御部４３１の代わりに、制御部４７１を有する。つまり、この場合の部分デコード部１１１は、図２３の切り捨てビットプレーン符号量カウント部４０３、目標圧縮率取得部２０４、および切り捨てビットプレーン決定部４０５の代わりに、切り捨てビットプレーン決定部４６５を有する。
【０１８９】
切り捨てビットプレーン決定部４６５は、EBCOT部２０２より供給されるビットプレーンを、その重要度順（重要度の低い方から高い方に向かう順）に、所定の数選択し、それらを切り捨てビットプレーンとして切り捨て、残ビットプレーンをコードブロック合成部２０６に供給する。
【０１９０】
この場合の部分デコード処理の流れの例を図２８のフローチャートを参照して説明する。図２８のフローチャートは、図２４に対応するフローチャートである。
【０１９１】
図２８において、ステップＳ４６１乃至ステップＳ４６４の各処理は、図２４のステップＳ４０１乃至ステップＳ４０４の各処理と同様に実行される。ステップＳ４６５において、切り捨てビットプレーン決定部４６５は、重要度の低いほうから順に、予め定められた所定数のビットプレーンを切り捨てる。ステップＳ４６６乃至ステップＳ４６８の各処理は、図２４のステップＳ４１０乃至ステップＳ４１２の各処理と同様に実行される。
【０１９２】
以上のように、部分デコード部１１１は、切り捨てビットプレーンの符号量をカウントする場合よりも、この場合の方が、より容易に復号処理を行うことができる。ただし、この場合、切り捨てられるビットプレーンの数が画像の内容に関わらず一定であるため、入力画像によってエンコードの難易度が変化するのに対する柔軟性が低減する場合がある。例えば、予め定められているビットプレーンの切り捨て数が、エンコードが容易な画像に対して少なすぎ、エンコードの難易度が高い画像に対して多すぎる結果になる場合がある。ただし、この誤差が許容範囲内に収まる場合は、デコード処理の負荷をさらに低減させる方法として有効である。
【０１９３】
以上においては、非可逆トランスコード部が動画像を固定ビットレート（CBR（Constant Bit Rate））方式で非可逆エンコードする場合について説明したが、これに限らず、DCI規格書の定義に基づいて、非可逆トランスコード部が動画像を可変ビットレート（VBR（Variable Bit Rate））方式で非可逆エンコードするようにしてもよい。一般的に、映画においては、CG（Computer Graphics）や詳細なテキスチャが存在する画像から、ほとんど黒背景の画像など、多岐に渡る画像が使用される。言うまでもなく前者ではビットレートが高くなり、後者では低くなる。符号化装置が、このようなDCI規格に準拠する可変ビットレート方式の非可逆エンコードを用いてトランスコードを行う場合について、以下に説明する。
【０１９４】
図２９は、本発明を適用した符号化装置の他の構成例を示すブロック図である。図２９に示される符号化装置５００は、図２の符号化装置１００と同様に、入力されるベースバンドの画像データを、一旦、JPEG2000の可逆圧縮方式により所定の圧縮率で圧縮符号化し、その後、圧縮されたコードストリームを、JPEG2000の非可逆方式で所望の圧縮率に圧縮符号化し、コードストリームとして出力する装置である。ただし、符号化装置５００は、画像の内容に応じて符号化のビットレートを変更する可変ビットレート方式により非可逆エンコードを行う。
【０１９５】
符号化装置５００は、図２９に示されるように、可逆エンコード部１０１および非可逆トランスコード部５０２を有する。
【０１９６】
可逆エンコード部１０１は、上述したように、入力されたベースバンドの画像データを、符号化時に生成されるウェーブレット係数を重要度に応じて重み付けしながら、JPEG2000の可逆圧縮方式により所定の圧縮率で圧縮符号化し、データサイズを小さくしたコードストリームの可逆圧縮ファイルに変換する。
【０１９７】
例えば、符号化装置５００は、符号化装置１００の場合と同様に、情報処理部１０３−１において、その可逆圧縮ファイルに対してメタ情報を付加する等の所定の処理を施す。また、例えば、符号化装置５００は、その可逆圧縮ファイルを、所定のバスやネットワーク等の伝送路１０３−２を介して伝送させる。さらに、例えば、符号化装置５００は、その可逆圧縮ファイルをハードディスクや半導体メモリ等の記憶部１０３−３に一旦保存し、所定のタイミングで読み出して出力する。
【０１９８】
なお、符号化装置５００は、例えば、可逆圧縮ファイルを、所定のバスやネットワーク等の伝送路１０３−２を介して伝送させるとともに、記憶部１０３−３に保存する等、上述した各処理を組み合わせて行ってもよい。
【０１９９】
非可逆トランスコード部５０２は、可逆エンコード部１０１による可逆エンコード結果を参考にして、部分デコードのレート（Target_Rate）、すなわち、目標圧縮率を適宜決定する。
【０２００】
このような処理を行うために、非可逆トランスコード部５０２は、上述した部分デコード部１１１および非可逆エンコード部１１２の他に、さらに、コードブロック情報抽出部５２１および部分デコードレート制御部５２２を有する。
【０２０１】
コードブロック情報抽出部５２１は、可逆エンコード部１０１により可逆エンコードされた画像のコードストリームから、符号化パラメータを抽出する。符号化パラメータは、画像データが符号化された符号化データのメタデータであり、符号化に関する情報等により構成される。コードブロック情報抽出部５２１は、このような符号化パラメータとして、例えばコードブロック毎の符号化パラメータであるコードブロック情報を、コードストリームより抽出する。
【０２０２】
部分デコードレート制御部５２２は、そのコードブロック情報や、その他の情報に基づいて、部分デコード部１１１によるデコード処理の目標ビットレート（復号目標ビットレート）を決定する。
【０２０３】
なお、以下においては、コードストリームにコードブロック単位で付加される符号化パラメータであるコードブロック情報を用いて復号目標ビットレートを決定する場合について説明するが、この符号化パラメータは、どのようなものであってもよく、コードブロック単位以外の情報であってももちろんよい。
【０２０４】
非可逆トランスコード部５０２は、例えば、可逆エンコード部１０１により可逆エンコードされた画像のコードストリームの、有効ビットプレーン数に基づいて、復号目標ビットレートを決定する。つまり、この場合、非可逆トランスコード部５０２は、符号化パラメータ（コードブロック情報）として有効ビットプレーン数を用いる。
【０２０５】
上述したように、ウェーブレット変換されて生成された各係数は、ビットプレーン展開される。ゼロビットプレーンは、符号化データの最上位ビット（MSB）からの各ビットプレーンを形成する係数の値が全て「０」であるビットプレーンを示し、ゼロビットプレーン数は、そのゼロビットプレーンの数（ビット数）を示す値である。有効ビットプレーンは、そのゼロビットプレーン以外のビットプレーンを示し、有効ビットプレーン数は、その有効ビットプレーンの数（ビット数）を示す。なお、ここでは、コードブロック毎にビットプレーン展開されるものとする。
【０２０６】
図３０は、その場合の、部分デコードレート制御部５２２の詳細な構成例を示すブロック図である。図３０に示されるように、部分デコードレート制御部５２２は、ゼロビットプレーン数抽出部５３１、有効ビットプレーン数算出部５３２、総和算出部５３３、目標ビットレート取得部５３４、および目標ビットレート算出部５３５を有する。
【０２０７】
ゼロビットプレーン数抽出部５３１は、各コードブロックについて、コードブロック情報抽出部５２１により抽出されたコードブロック情報（コードブロック毎の符号化パラメータ）から、ゼロビットプレーン数を抽出する。ゼロビットプレーン数を示す情報は、可逆エンコード時に符号化パラメータとして符号化データに付加されている。ゼロビットプレーン数抽出部５３１は、可逆エンコード部１０１による可逆エンコードの結果として得られたコードストリームより、このゼロビットプレーン数を示す情報を抽出する。ゼロビットプレーン数抽出部５３１は、抽出したゼロビットプレーン数を有効ビットプレーン数算出部５３２に供給する。
【０２０８】
有効ビットプレーン数算出部５３２は、ゼロビットプレーン数抽出部５３１により抽出されたゼロビットプレーン数を用いて有効ビットプレーン数を算出する。
【０２０９】
図３１は、ビットプレーン展開された、ある（ｎ＋１）個のコードブロック（CB0，CB1，…，CBn）の有効ビットプレーン数を説明する図である。図３１の例において、白地の部分がゼロビットプレーンを示し、斜線部分が有効ビットプレーンを示す。例えば、CB0のゼロビットプレーン数は「３」であり、CB1のゼロビットプレーン数は「２」である。
【０２１０】
このように、ゼロビットプレーン数（有効ビットプレーン数）は、ビットプレーン展開される単位であるコードブロック毎に独立して決定される。上述したように、係数の、有効ビットプレーンの部分に対応する符号化データがコードストリームに含められ、ゼロビットプレーンの部分はコードストリームに含まれない。したがって、可逆エンコードされたコードストリームの符号量は、有効ビットプレーン数に依存する。つまり、有効ビットプレーン数が多いコードブロックほど、その符号量は多く、有効ビットプレーン数が少ないコードブロックほど、その符号量は少ない。換言すれば、符号化装置５００は、有効ビットプレーン数に基づいて、画像データの符号化の難易度を、大まかに推定することができる。
【０２１１】
図３１に示されるように符号化データのビット深度をＨとすると、有効ビットプレーンのビット数を示す有効ビットプレーン数（NUM_BP）は、ゼロビットプレーン数（NUM_ZB）を用いて、以下の式（１）のように表わすことができる。
【０２１２】
【数１】
0005359302.tif 000002
・・・（１）
【０２１３】
有効ビットプレーン数算出部５３２は、各コードブロックについて、このような有効ビットプレーン数を算出し、算出結果を、総和算出部５３３に供給する。つまり、有効ビットプレーン数算出部５３２は、ウェーブレット係数の各サブバンドについて、有効ビットプレーン数をコードブロック毎に算出する。なお、ウェーブレット変換の分割数は任意であるが、以下においては、分割レベル３までウェーブレット変換が行われたものとする。つまり、サブバンドの構成は、図４に示される例と同様に、0LL乃至3HHとなる。
【０２１４】
また、有効ビットプレーン数算出部５３２は、コンポーネントの各構成について（例えば、輝度Ｙ、色差Ｃｂ、色差Ｃｒのそれぞれについて）、有効ビットプレーン数の算出を行う。コンポーネントの構成は任意であるが、以下においては、輝度Ｙ、色差Ｃｂ、および色差Ｃｒにより構成される一般的なコンポーネントについて説明する。
【０２１５】
総和算出部５３３は、有効ビットプレーン数算出部５３２において算出された有効ビットプレーン数の、ピクチャ毎の総和（ALL_NUM_BP）を、以下の式（２）のように算出する。
【０２１６】
【数２】
0005359302.tif 000003
・・・（２）
【０２１７】
式（２）において、NUM_BP_Yは輝度Ｙの有効ビットプレーン数を示す。NUM_BP_Cbは色差Ｃｂの有効ビットプレーン数を示す。NUM_BP_Crは色差Ｃｒの有効ビットプレーン数を示す。Σ(0LL,…,3HH)は、各構成（Ｙ，Ｃｂ，Ｃｒ）の有効ビットプレーン数の、全サブバンド（０ＬＬ乃至３ＨＨ）についての総和を示す。
【０２１８】
総和算出部５３３は、算出した有効ビットプレーン数のピクチャ毎の総和（ALL_NUM_BP）を、目標ビットレート算出部５３５に供給する。
【０２１９】
目標ビットレート取得部５３４は、非可逆エンコード部１１２より供給される、非可逆エンコード部１１２により非可逆エンコードされて得られる符号化データのビットレートの目標値である非可逆符号化目標ビットレート（TR）を取得する。目標ビットレート取得部５３４は、取得した非可逆符号化目標ビットレート（TR）を目標ビットレート算出部５３５に供給する。
【０２２０】
目標ビットレート算出部５３５は、総和算出部５３３から有効ビットプレーン数のピクチャ毎の総和（ALL_NUM_BP）を取得する。目標ビットレート算出部５３５は、また、目標ビットレート取得部５３４から非可逆符号化目標ビットレート（TR）を取得する。目標ビットレート算出部５３５は、さらに、予め定められた所定の有効ビットプレーン数を、基準値（Ref_ALL_NUM_BP）として取得する。なお、この基準値（Ref_ALL_NUM_BP）は、予め供給され、目標ビットレート算出部５３５が図示せぬ内蔵メモリ等に保持しておくようにしてもよい。
【０２２１】
目標ビットレート算出部５３５は、これらの、有効ビットプレーン数のピクチャ毎の総和（ALL_NUM_BP）、非可逆符号化目標ビットレート（TR）、および基準値（Ref_ALL_NUM_BP）を用いて、部分デコード部１１１のデコード処理により得られる画像データのビットレートの目標値である復号目標ビットレート（Target_Rate）を求める。目標ビットレート算出部５３５は、例えば以下の式（３）のように、復号目標ビットレート（Target_Rate）を求める。
【０２２２】
【数３】
0005359302.tif 000004
・・・（３）
【０２２３】
式（３）の例の場合、目標ビットレート算出部５３５は、有効ビットプレーン数のピクチャ毎の総和（ALL_NUM_BP）の、基準値（Ref_ALL_NUM_BP）との相対比に応じて、復号目標ビットレート（Target_Rate）を決定する。つまり、目標ビットレート算出部５３５は、有効ビットプレーン数の総和（ALL_NUM_BP）が基準値（Ref_ALL_NUM_BP）よりも大きい場合、可逆符号化結果のコードストリームの符号量が多いので、その分、復号目標ビットレート（Target_Rate）を、非可逆符号化目標ビットレート（TR）より大きく設定する。
【０２２４】
逆に、有効ビットプレーン数の総和（ALL_NUM_BP）が基準値（Ref_ALL_NUM_BP）よりも小さい場合、可逆符号化結果のコードストリームの符号量が少ないので、目標ビットレート算出部５３５は、その分、復号目標ビットレート（Target_Rate）を、非可逆符号化目標ビットレート（TR）より小さく設定する。
【０２２５】
このように、目標ビットレート算出部５３５は、有効ビットプレーン数の総和の、所定の基準値に対する相対比に基づいて復号目標ビットレートを決定するので、より容易かつ適切に、復号目標ビットレートを決定することができる。
【０２２６】
なお、復号目標ビットレートは、どのような方法で求められるようにしてもよく、上述した式（３）以外の方法で求められるようにしてももちろんよい。
【０２２７】
目標ビットレート算出部５３５は、このように算出した復号目標ビットレート（Target_Rate）を、部分デコード部１１１に供給する。部分デコード部１１１は、この復号目標ビットレートに基づいて、デコード処理により生成するベースバンドの画像データの、マスタ画像（原画像）の画像データに対する圧縮率を目標圧縮率として算出し、可逆圧縮ファイルのコードストリームを部分的に復号してベースバンドの画像データを生成する。
【０２２８】
上述したように、部分デコード部１１１は、非可逆エンコード部１１２が非可逆符号化目標ビットレートを達成することができる範囲において、復号処理の処理量をより低減させるように、可逆圧縮ファイルのコードストリームを部分的に復号する（部分デコード処理を行う）。この場合、部分デコード部１１１は、その範囲を、上述した非可逆エンコード部１１２より供給される目標圧縮率の代わりに、目標ビットレート算出部５３５により算出された復号目標ビットレートに基づいて決定する。
【０２２９】
部分デコード部１１１は、生成したベースバンドの画像データ（復号画像データ）を非可逆エンコード部１１２に供給する。
【０２３０】
非可逆エンコード部１１２は、そのベースバンドの画像データをJPEG2000の非可逆圧縮方式により所望の圧縮率で圧縮符号化し、生成したコードストリームを出力する。なお、この場合、非可逆エンコード部１１２は、部分デコード部１１１に目標圧縮率を供給する代わりに、非可逆符号化目標ビットレートを部分デコードレート制御部５２２に供給する。
【０２３１】
図３２は、この場合の、非可逆トランスコード部５０２により実行されるトランスコード処理の流れの例を説明する。
【０２３２】
情報処理部１０３−１、伝送路１０３−２、または、記憶部１０３−３より画像データが供給されると、非可逆トランスコード部５０２は、トランスコード処理を開始する。トランスコード処理が開始されると、コードブロック情報抽出部５２１は、図３２のステップＳ５０１において、コードストリームよりコードブロック情報を抽出する。ステップＳ５０２において、部分デコードレート制御部５２２は、部分デコード処理の目標ビットレート（復号目標ビットレート）を決定する。この復号目標ビットレート決定処理の詳細については後述する。
【０２３３】
復号目標ビットレートが決定されると、部分デコード部１１１は、ステップＳ５０３において、算出された復号目標ビットレートを用いて部分デコード処理を行い、復号画像データを生成する。この部分デコード処理は、図１８のフローチャートを参照して説明した流れの例と同様に実行されるのでその説明を省略する。ただし、ステップＳ５０３の場合、部分デコード部１１１は、復号目標ビットレートから目標圧縮率を算出し、その目標圧縮率を用いて部分デコード処理を行う。
【０２３４】
ステップＳ５０４において、非可逆エンコード部１１２は、非可逆符号化処理を行う。この非可逆符号化処理は、図１９のフローチャートを参照して説明した流れの例と同様に実行されるので、その説明を省略する。ただし、ステップＳ５０４の場合、非可逆エンコード部１１２は、ステップＳ３０８において目標圧縮率を部分デコード部１１１に供給する代わりに、非可逆符号化目標ビットレートを部分デコードレート制御部５２２に供給する。
【０２３５】
ステップＳ５０４の処理が終了されると、トランスコード処理は終了される。
【０２３６】
非可逆トランスコード部５０２は、このようなトランスコード処理を、ピクチャ毎に繰り返す。
【０２３７】
次に、図３２のステップＳ５０２において実行される復号目標ビットレート決定処理の流れの例を、図３３のフローチャートを参照して説明する。
【０２３８】
復号目標ビットレート決定処理が開始されると、部分デコードレート制御部５２２のゼロビットプレーン数抽出部５３１は、ステップＳ５２１において、ゼロビットプレーン数を抽出する。ステップＳ５２２において、有効ビットプレーン数算出部５３２は、ゼロビットプレーン数から有効ビットプレーン数を算出する。ステップＳ５２３において、総和算出部５３３は、有効ビットプレーン数の、処理対象ピクチャの全コードブロック（全サブバンドおよびコンポーネントの全構成）についての総和を算出する。ステップＳ５２４において、目標ビットレート算出部５３５は、基準値を取得する。ステップＳ５２５において、目標ビットレート取得部５３４は、非可逆符号化目標ビットレートを取得する。
【０２３９】
ステップＳ５２６において、目標ビットレート算出部５３５は、ステップＳ５２３において取得された有効ビットプレーン数の総和、ステップＳ５２４において取得された基準値、並びに、ステップＳ５２５において取得された非可逆符号化目標ビットレートを用いて、復号目標ビットレートを算出する。
【０２４０】
ステップＳ５２７において、目標ビットレート算出部５３５は、ステップＳ５２６において算出した復号目標ビットレートを、部分デコード部１１１に供給する。
【０２４１】
復号目標ビットレートが供給されると、部分デコードレート制御部５２２は、復号目標ビットレート決定処理を終了し、処理を図３２のステップＳ５０２に戻し、ステップＳ５０３以降の処理を実行させる。
【０２４２】
以上のように、部分デコードレート制御部５２２は、可逆エンコード部１０１による可逆エンコードの符号化パラメータ（有効ビットプレーン数）に基づいて復号目標ビットレートを求め、部分デコード部１１１は、その復号目標ビットレートを用いてデコード処理を行う。つまり、部分デコード部１１１は、可逆エンコード時の有効ビットプレーン数から、画像データの符号化の難易度を大まかに推定し、その難易度に応じて設定された復号目標ビットレートでデコード処理（部分デコード処理）を行う。したがって、部分デコード部１１１は、画像データの符号化の難易度に応じたビットレートの復号画像データを生成することができる。これにより、非可逆エンコード部１１２は、より容易かつ適切に、可変ビットレート方式で非可逆エンコードを行うことができる。すなわち、非可逆トランスコード部５０２は、可逆エンコードされたコードストリームを、より容易かつ適切に、可変ビットレート方式で非可逆エンコードされたコードストリームに変換することができる。換言すれば、符号化装置５００は、マスタ画像のデータサイズが大きくても、容易かつ適切に、画像データを多様な圧縮率で符号化することができる。
【０２４３】
なお、図３２に示されるトランスコード処理において、ステップＳ５０１およびステップＳ５０２の処理は並行して実行するようにしてもよい。つまり、例えば、コードブロック情報抽出部５２１がコードブロック情報を抽出する度に、部分デコードレート制御部５２２が、そのコードブロックについて、有効ビットプレーン数を求めるようにしてもよい。
【０２４４】
また、以上においては、部分デコードレート制御部５２２が、デコード処理の目標値としてビットレート（復号目標ビットレート）を算出するように説明したが、例えば、圧縮率や符号量など、ビットレートと同等の他の情報を目標値として算出するようにしてもよい。その場合、部分デコード部１１１は、その目標値を情報の種類に応じて変換するだけで、基本的には、図１８のフローチャートを参照して説明した場合と同様に部分デコード処理を行う。
【０２４５】
また、同様に、非可逆エンコード部１１２より部分デコードレート制御部５２２に供給される情報もビットレート以外であっても良い。例えば、符号量や圧縮率などであってもよい。
【０２４６】
さらに、以上においては、総和算出部５３３が、全てのコードブロックについての有効ビットプレーン数の総和を算出するように説明したが、これに限らず、総和算出部５３３が、ピクチャ内の一部のコードブロック（すなわち、代表とする所定のコードブロック）についてのみ、有効ビットプレーン数の総和を算出するようにし、目標ビットレート算出部５３５がその総和に基づいて復号目標ビットレートを算出するようにしてもよい。
【０２４７】
次に、符号化パラメータの他の例を説明する。
【０２４８】
非可逆トランスコード部５０２は、例えば、可逆エンコード部１０１により可逆エンコードされた画像のコードストリームの、コーディングパス数に基づいて、復号目標ビットレートを決定する。つまり、この場合、非可逆トランスコード部５０２は、符号化パラメータ（コードブロック情報）としてコーディングパス数を用いる。
【０２４９】
コーディングパス（符号化パス）は、図８を参照して説明したように、コードブロック毎に行われる符号化の方法を示す。上述したように、コーディングパスには、Cleanup Pass（CP）、Significant Propagation Pass（SP）、およびMagnitude Refinement Pass（MR）がある。符号化においては、最上位ビット（MSB）からLSB側に向かう順に、上述した３つの符号化パスがCP，SP，MRの順に繰り返し適用されて、各ビットプレーンが符号化される。
【０２５０】
部分デコードレート制御部５２２は、可逆エンコード部１０１による可逆エンコード時において適用された、これらのコーディングパスの数であるコーディングパス数に基づいて、画像データの符号化の難易度（必要な符号量）を大まかに推定する。なお、ここでは、コードブロック毎にビットプレーン展開されるものとする。
【０２５１】
図３４は、その場合の、部分デコードレート制御部５２２の詳細な構成例を示すブロック図である。図３４に示されるように、部分デコードレート制御部５２２は、コーディングパス数抽出部５４１、総和算出部５４２、目標ビットレート取得部５４３、および目標ビットレート算出部５４４を有する。
【０２５２】
コーディングパス数抽出部５４１は、各コードブロックについて、コードブロック情報抽出部５２１により抽出されたコードブロック情報（コードブロック毎の符号化パラメータ）から、コーディングパス数を抽出する。
【０２５３】
図３５は、ビットプレーン展開された、ある（ｎ＋１）個のコードブロック（CB0，CB1，…，CBn）のコーディングパス数（NUM_CP）を説明する図である。図３５の例において、白地の部分がゼロビットプレーンを示し、斜線部分が有効ビットプレーンを示す。各有効ビットプレーン（斜線部分）は、図３５に示されるように、複数のコーディングパスにより符号化されている。図３５の例の場合、コードブロックCBnの有効ビットプレーンで符号化対象になるコーディングパスは、MSB方向から順番に、CP→SP→MR→CP→SP→MR→CP→SPである。従って、この時のコーディングパス数（NUM_CP）は８である。
【０２５４】
このようなコーディングパス数（NUM_CP）を示す情報は、可逆エンコード時に符号化パラメータとして符号化データのパケットヘッダに記述されている。従って、この場合、コードブロック情報抽出部５２１は、そのパケットヘッダをコードブロック情報として抽出し、コーディングパス数抽出部５４１は、その抽出されたパケットヘッダ情報に記述されるコーディングパス数を参照（抽出）するだけでよい。コーディングパス数抽出部５４１は、抽出したコーディングパス数（NUM_CP）を総和算出部５４２に供給する。
【０２５５】
総和算出部５４２は、コーディングパス数抽出部５４１において抽出されたコーディングパス数の、ピクチャ毎の総和（ALL_NUM_CP）を、以下の式（４）のように算出する。
【０２５６】
【数４】
0005359302.tif 000005
・・・（４）
【０２５７】
式（４）において、NUM_CP_Yは輝度Ｙのコーディングパス数を示す。NUM_CP_Cbは色差Ｃｂのコーディングパス数を示す。NUM_CP_Crは色差Ｃｒのコーディングパス数を示す。Σ（0LL，…，3HH）は、各構成（Ｙ，Ｃｂ，Ｃｒ）のコーディングパス数の、全サブバンド（０ＬＬ乃至３ＨＨ）についての総和を示す。なお、上述した有効ビットプレーン数の場合と同様に、画像データのコンポーネントは輝度Ｙ、色差Ｃｂ、および色差Ｃｒにより構成され、符号化時のウェーブレット変換は分割レベル３まで行われるものとする。
【０２５８】
総和算出部５４２は、算出したコーディングパス数のピクチャ毎の総和（ALL_NUM_CP）を、目標ビットレート算出部５４４に供給する。
【０２５９】
目標ビットレート取得部５４３は、目標ビットレート取得部５３４と同様に、非可逆エンコード部１１２より非可逆符号化目標ビットレート（TR）を取得する。目標ビットレート取得部５４３は、取得した非可逆符号化目標ビットレート（TR）を目標ビットレート算出部５４４に供給する。
【０２６０】
目標ビットレート算出部５４４は、総和算出部５４２からコーディングパス数のピクチャ毎の総和（ALL_NUM_CP）を取得する。目標ビットレート算出部５４４は、また、目標ビットレート取得部５４３から非可逆符号化目標ビットレート（TR）を取得する。目標ビットレート算出部５４４は、さらに、予め定められた所定のコーディングパス数を、基準値（Ref_ALL_NUM_CP）として取得する。なお、この基準値（Ref_ALL_NUM_CP）は、予め供給され、目標ビットレート算出部５４４が図示せぬ内蔵メモリ等に保持しておくようにしてもよい。
【０２６１】
目標ビットレート算出部５４４は、これらの、有効ビットプレーン数のピクチャ毎の総和（ALL_NUM_CP）、非可逆符号化目標ビットレート（TR）、および基準値（Ref_ALL_NUM_CP）を用いて、部分デコード部１１１の復号目標ビットレート（Target_Rate）を求める。目標ビットレート算出部５４４は、例えば以下の式（５）のように、復号目標ビットレート（Target_Rate）を求める。
【０２６２】
【数５】
0005359302.tif 000006
・・・（５）
【０２６３】
式（５）の例の場合、目標ビットレート算出部５４４は、コーディングパス数のピクチャ毎の総和（ALL_NUM_CP）の、基準値（Ref_ALL_NUM_CP）との相対比に応じて、復号目標ビットレート（Target_Rate）を決定する。つまり、目標ビットレート算出部５４４は、コーディングパス数の総和（ALL_NUM_CP）が基準値（Ref_ALL_NUM_CP）よりも大きい場合、可逆符号化結果のコードストリームの符号量が多いので、その分、復号目標ビットレート（Target_Rate）を、非可逆符号化目標ビットレート（TR）より大きく設定する。
【０２６４】
逆に、コーディングパス数の総和（ALL_NUM_CP）が基準値（Ref_ALL_NUM_CP）よりも小さい場合、可逆符号化結果のコードストリームの符号量が少ないので、目標ビットレート算出部５４４は、その分、復号目標ビットレート（Target_Rate）を、非可逆符号化目標ビットレート（TR）より小さく設定する。
【０２６５】
このように、目標ビットレート算出部５４４は、コーディングパス数の総和の、所定の基準値に対する相対比に基づいて復号目標ビットレートを決定するので、より容易かつ適切に、復号目標ビットレートを決定することができる。
【０２６６】
なお、復号目標ビットレートは、どのような方法で求められるようにしてもよく、上述した式（５）以外の方法で求められるようにしてももちろんよい。
【０２６７】
目標ビットレート算出部５４４は、このように算出した復号目標ビットレート（Target_Rate）を、部分デコード部１１１に供給する。部分デコード部１１１は、この復号目標ビットレートに基づいて、デコード処理により生成するベースバンドの画像データの、マスタ画像（原画像）の画像データに対する圧縮率を目標圧縮率として算出し、可逆圧縮ファイルのコードストリームを部分的に復号してベースバンドの画像データを生成する。部分デコード部１１１は、生成したベースバンドの画像データ（復号画像データ）を非可逆エンコード部１１２に供給する。
【０２６８】
非可逆エンコード部１１２は、そのベースバンドの画像データをJPEG2000の非可逆圧縮方式により所望の圧縮率で圧縮符号化し、生成したコードストリームを出力する。なお、この場合、非可逆エンコード部１１２は、部分デコード部１１１に目標圧縮率を供給する代わりに、非可逆符号化目標ビットレートを部分デコードレート制御部５２２に供給する。
【０２６９】
次に、この場合に図３２のステップＳ５０２において実行される復号目標ビットレート決定処理の流れの例を、図３６のフローチャートを参照して説明する。
【０２７０】
復号目標ビットレート決定処理が開始されると、部分デコードレート制御部５２２のコーディングパス数抽出部５４１は、ステップＳ５４１において、コーディングパス数を抽出する。ステップＳ５４２において、総和算出部５４２は、コーディングパス数の、処理対象ピクチャの全コードブロック（全サブバンドおよびコンポーネントの全構成）についての総和を算出する。ステップＳ５４３において、目標ビットレート算出部５４４は、基準値を取得する。ステップＳ５４４において、目標ビットレート取得部５４３は、非可逆符号化目標ビットレートを取得する。
【０２７１】
ステップＳ５４５において、目標ビットレート算出部５４４は、ステップＳ５４２において算出されたコーディングパス数の総和、ステップＳ５４３において取得された基準値、並びに、ステップＳ５４４において取得された非可逆符号化目標ビットレートを用いて、復号目標ビットレートを算出する。
【０２７２】
ステップＳ５４６において、目標ビットレート算出部５４４は、ステップＳ５４５におて算出した復号目標ビットレートを、部分デコード部１１１に供給する。
【０２７３】
復号目標ビットレートが供給されると、部分デコードレート制御部５２２は、復号目標ビットレート決定処理を終了し、処理を図３２のステップＳ５０２に戻し、ステップＳ５０３以降の処理を実行させる。
【０２７４】
以上のように、部分デコードレート制御部５２２は、可逆エンコード部１０１による可逆エンコードの符号化パラメータ（コーディングパス数）に基づいて復号目標ビットレートを求め、部分デコード部１１１は、その復号目標ビットレートを用いてデコード処理を行う。つまり、部分デコード部１１１は、可逆エンコード時のコーディングパス数から、画像データの符号化の難易度を大まかに推定し、その難易度に応じて設定された復号目標ビットレートでデコード処理（部分デコード処理）を行う。したがって、部分デコード部１１１は、画像データの符号化の難易度に応じたビットレートの復号画像データを生成することができる。これにより、非可逆エンコード部１１２は、より容易かつ適切に、可変ビットレート方式で非可逆エンコードを行うことができる。すなわち、非可逆トランスコード部５０２は、可逆エンコードされたコードストリームを、より容易かつ適切に、可変ビットレート方式で非可逆エンコードされたコードストリームに変換することができる。換言すれば、符号化装置５００は、マスタ画像のデータサイズが大きくても、容易かつ適切に、画像データを多様な圧縮率で符号化することができる。
【０２７５】
なお、この場合も図３２に示されるトランスコード処理において、ステップＳ５０１およびステップＳ５０２の処理は並行して実行するようにしてもよい。
【０２７６】
また、以上においては、部分デコードレート制御部５２２が、デコード処理の目標値としてビットレート（復号目標ビットレート）を算出するように説明したが、例えば、圧縮率や符号量など、ビットレートと同等の他の情報を目標値として算出するようにしてもよい。さらに、同様に、非可逆エンコード部１１２より部分デコードレート制御部５２２に供給される情報もビットレート以外であっても良い。例えば、符号量や圧縮率などであってもよい。
【０２７７】
また、以上においては、総和算出部５４２が、全てのコードブロックについてのコーディングパス数の総和を算出するように説明したが、これに限らず、総和算出部５４２が、ピクチャ内の一部のコードブロック（すなわち、代表とする所定のコードブロック）についてのみ、コーディングパス数の総和を算出するようにし、目標ビットレート算出部５４４がその総和に基づいて復号目標ビットレートを算出するようにしてもよい。
【０２７８】
次に、符号化パラメータの、さらに他の例を説明する。
【０２７９】
非可逆トランスコード部５０２は、例えば、可逆エンコード部１０１により可逆エンコードされた画像のコードストリームの、非ゼロビットプレーン数に基づいて、復号目標ビットレートを決定する。つまり、この場合、非可逆トランスコード部５０２は、符号化パラメータ（コードブロック情報）として非ゼロビットプレーン数を用いる。
【０２８０】
非ゼロビットプレーンは、上述した有効ビットプレーンから、その有効ビットプレーンに含まれる、全ての係数が「０」で構成されるゼロ係数ビットプレーンを除いたものを示す。つまり、非ゼロビットプレーンは、有効ビットプレーンの内、値が「１」の係数を含むビットプレーンである。非ゼロビットプレーン数は、各コードブロックの、この非ゼロビットプレーンの数（ビット数）を示す。ゼロ係数ビットプレーン数は、各コードブロックのゼロ係数ビットプレーンの数（ビット数）を示す。
【０２８１】
部分デコードレート制御部５２２は、可逆エンコード部１０１による可逆エンコード時の、非ゼロビットプレーン数に基づいて、画像データの符号化の難易度（必要な符号量）を大まかに推定する。なお、ここでは、コードブロック毎にビットプレーン展開されるものとする。
【０２８２】
図３７は、その場合の、部分デコードレート制御部５２２の詳細な構成例を示すブロック図である。図３７に示されるように、部分デコードレート制御部５２２は、ゼロ係数ビットプレーン数算出部５６１、非ゼロビットプレーン数算出部５６２、総和算出部５６３、目標ビットレート取得部５６４、および目標ビットレート算出部５６５を有する。
【０２８３】
ゼロ係数ビットプレーン数算出部５６１は、各コードブロックについて、コードブロック情報抽出部５２１により抽出されたコードブロック情報（コードブロック毎の符号化パラメータ）から、ゼロ係数ビットプレーン数を抽出する。ゼロ係数ビットプレーン数は、実際に符号化データを参照して探すしかない。したがって、この場合、コードブロック情報抽出部５２１は、可逆符号化された符号化データを参照し、ゼロ係数ビットプレーンを探索して検出する。ゼロ係数ビットプレーン数算出部５６１は、その検出回数をカウントし、各コードブロックのゼロ係数ビットプレーン数を算出する。ゼロ係数ビットプレーン数算出部５６１は、算出したゼロ係数ビットプレーン数を非ゼロビットプレーン数算出部５６２に供給する。
【０２８４】
非ゼロビットプレーン数算出部５６２は、ゼロ係数ビットプレーン数算出部５６１により算出されたゼロ係数ビットプレーン数を用いて非ゼロビットプレーン数を算出する。
【０２８５】
図３８は、ビットプレーン展開された、ある（ｎ＋１）個のコードブロック（CB0，CB1，…，CBn）の有効ビットプレーンの構成を説明する図である。図３７の例において、白地の部分がゼロビットプレーンを示し、斜線部分が有効ビットプレーンを示す。各有効ビットプレーン（斜線部分）は、図３８に示されるように、ゼロ係数ビットプレーン（Zero）と非ゼロビットプレーン（Non Zero）により構成される。図３８の例の場合、コードブロックCBnの有効ビットプレーンは、MSB方向から順番に、Non Zero→Zero→Non Zero→Zero→Non Zero→Non Zero→Zero→Zeroである。従って、この時の非ゼロビットプレーン数（NUM_NONZERO_BP）は、有効ビットプレーン数（NUM_BP）とゼロ係数ビットプレーン数（NUM_ZERO_BP）との差、すなわち、「４」である。
【０２８６】
このように、非ゼロビットプレーン数は、ビットプレーン展開される単位であるコードブロック毎に独立して決定される。有効ビットプレーンからゼロ係数ビットプレーンを除くことにより、可逆エンコードされたコードストリームの符号量をより適切に表わすことができる。つまり、符号化装置５００は、非ゼロビットプレーン数に基づいて、画像データの符号化の難易度を、大まかに（有効ビットプレーン数を用いる場合よりは正確に）推定することができる。
【０２８７】
非ゼロビットプレーン数算出部５６２は、各コードブロックについて、このような非ゼロビットプレーン数を算出し、算出結果を、総和算出部５６３に供給する。つまり、非ゼロビットプレーン数算出部５６２は、ウェーブレット係数の各サブバンドについて、非ゼロビットプレーン数をコードブロック毎に算出する。なお、ウェーブレット変換の分割数は任意であるが、以下においては、分割レベル３までウェーブレット変換が行われたものとする。つまり、サブバンドの構成は、図４に示される例と同様に、0LL乃至3HHとなる。
【０２８８】
また、非ゼロビットプレーン数算出部５６２は、コンポーネントの各構成について（例えば、輝度Ｙ、色差Ｃｂ、色差Ｃｒのそれぞれについて）、非ゼロビットプレーン数の算出を行う。コンポーネントの構成は任意であるが、以下においては、輝度Ｙ、色差Ｃｂ、および色差Ｃｒにより構成される一般的なコンポーネントについて説明する。
【０２８９】
総和算出部５６３は、非ゼロビットプレーン数算出部５６２において算出された有効ビットプレーン数の、ピクチャ毎の総和（ALL_NUM_NONZERO_BP）を、以下の式（６）のように算出する。
【０２９０】
【数６】
0005359302.tif 000007
・・・（６）
【０２９１】
式（６）において、NUM_NONZERO_BP_Yは輝度Ｙの非ゼロビットプレーン数を示す。NUM_NONZERO_BP_Cbは色差Ｃｂの非ゼロビットプレーン数を示す。NUM_NONZERO_BP_Crは色差Ｃｒの非ゼロビットプレーン数を示す。Σ（0LL，…，3HH）は、各構成（Ｙ，Ｃｂ，Ｃｒ）の非ゼロビットプレーン数の、全サブバンド（０ＬＬ乃至３ＨＨ）についての総和を示す。
【０２９２】
総和算出部５６３は、算出した非ゼロビットプレーン数のピクチャ毎の総和（ALL_NUM_NONZERO_BP）を、目標ビットレート算出部５６５に供給する。
【０２９３】
目標ビットレート取得部５６４は、非可逆エンコード部１１２より供給される非可逆符号化目標ビットレート（TR）を取得する。目標ビットレート取得部５６４は、取得した非可逆符号化目標ビットレート（TR）を目標ビットレート算出部５６５に供給する。
【０２９４】
目標ビットレート算出部５６５は、総和算出部５６３から非ゼロビットプレーン数のピクチャ毎の総和（ALL_NUM_NONZERO_BP）を取得する。目標ビットレート算出部５６５は、また、目標ビットレート取得部５６４から非可逆符号化目標ビットレート（TR）を取得する。目標ビットレート算出部５６５は、さらに、予め定められた所定の非ゼロビットプレーン数を、基準値（Ref_ALL_NUM_NONZERO_BP）として取得する。なお、この基準値（Ref_ALL_NUM_NONZERO_BP）は、予め供給され、目標ビットレート算出部５６５が図示せぬ内蔵メモリ等に保持しておくようにしてもよい。
【０２９５】
目標ビットレート算出部５６５は、これらの、非ゼロビットプレーン数のピクチャ毎の総和（ALL_NUM_NONZERO_BP）、非可逆符号化目標ビットレート（TR）、および基準値（Ref_ALL_NUM_NONZERO_BP）を用いて、部分デコード部１１１のデコード処理により得られる画像データのビットレートの目標値である復号目標ビットレート（Target_Rate）を求める。目標ビットレート算出部５６５は、例えば以下の式（７）のように、復号目標ビットレート（Target_Rate）を求める。
【０２９６】
【数７】
0005359302.tif 000008
・・・（７）
【０２９７】
式（７）の例の場合、目標ビットレート算出部５６５は、非ゼロビットプレーン数のピクチャ毎の総和（ALL_NUM_NONZERO_BP）の、基準値（Ref_ALL_NUM_NONZERO_BP）との相対比に応じて、復号目標ビットレート（Target_Rate）を決定する。つまり、目標ビットレート算出部５６５は、非ゼロビットプレーン数の総和（ALL_NUM_NONZERO_BP）が基準値（Ref_ALL_NUM_NONZERO_BP）よりも大きい場合、可逆符号化結果のコードストリームの符号量が多いので、その分、復号目標ビットレート（Target_Rate）を、非可逆符号化目標ビットレート（TR）より大きく設定する。
【０２９８】
逆に、非ゼロビットプレーン数の総和（ALL_NUM_NONZERO_BP）が基準値（Ref_ALL_NUM_NONZERO_BP）よりも小さい場合、可逆符号化結果のコードストリームの符号量が少ないので、目標ビットレート算出部５６５は、その分、復号目標ビットレート（Target_Rate）を、非可逆符号化目標ビットレート（TR）より小さく設定する。
【０２９９】
このように、目標ビットレート算出部５６５は、有効ビットプレーン数の総和の、所定の基準値に対する相対比に基づいて復号目標ビットレートを決定するので、より容易かつ適切に、復号目標ビットレートを決定することができる。
【０３００】
なお、復号目標ビットレートは、どのような方法で求められるようにしてもよく、上述した式（７）以外の方法で求められるようにしてももちろんよい。
【０３０１】
目標ビットレート算出部５６５は、このように算出した復号目標ビットレート（Target_Rate）を、部分デコード部１１１に供給する。部分デコード部１１１は、この復号目標ビットレートに基づいて、デコード処理により生成するベースバンドの画像データの、マスタ画像（原画像）の画像データに対する圧縮率を目標圧縮率として算出し、可逆圧縮ファイルのコードストリームを部分的に復号してベースバンドの画像データを生成する。部分デコード部１１１は、生成したベースバンドの画像データ（復号画像データ）を非可逆エンコード部１１２に供給する。
【０３０２】
非可逆エンコード部１１２は、そのベースバンドの画像データをJPEG2000の非可逆圧縮方式により所望の圧縮率で圧縮符号化し、生成したコードストリームを出力する。なお、この場合、非可逆エンコード部１１２は、部分デコード部１１１に目標圧縮率を供給する代わりに、非可逆符号化目標ビットレートを部分デコードレート制御部５２２に供給する。
【０３０３】
次に、この場合の、図３２のステップＳ５０２において実行される復号目標ビットレート決定処理の流れの例を、図３９のフローチャートを参照して説明する。
【０３０４】
復号目標ビットレート決定処理が開始されると、部分デコードレート制御部５２２のゼロ係数ビットプレーン数算出部５６１は、ステップＳ５６１において、ゼロ係数ビットプレーン数を算出する。ステップＳ５６２において、非ゼロビットプレーン数算出部５６２は、ゼロ係数ビットプレーン数から非ゼロビットプレーン数を算出する。ステップＳ５６３において、総和算出部５６３は、非ゼロビットプレーン数の、処理対象ピクチャの全コードブロック（全サブバンドおよびコンポーネントの全構成）についての総和を算出する。ステップＳ５６４において、目標ビットレート算出部５６５は、基準値を取得する。ステップＳ５６５において、目標ビットレート取得部５６４は、非可逆符号化目標ビットレートを取得する。
【０３０５】
ステップＳ５６６において、目標ビットレート算出部５６５は、ステップＳ５６３において取得された非ゼロビットプレーン数の総和、ステップＳ５６４において取得された基準値、並びに、ステップＳ５６５において取得された非可逆符号化目標ビットレートを用いて、復号目標ビットレートを算出する。
【０３０６】
ステップＳ５６７において、目標ビットレート算出部５６５は、ステップＳ５６６におて算出した復号目標ビットレートを、部分デコード部１１１に供給する。
【０３０７】
復号目標ビットレートが供給されると、部分デコードレート制御部５２２は、復号目標ビットレート決定処理を終了し、処理を図３２のステップＳ５０２に戻し、ステップＳ５０３以降の処理を実行させる。
【０３０８】
以上のように、部分デコードレート制御部５２２は、可逆エンコード部１０１による可逆エンコードの符号化パラメータ（非ゼロビットプレーン数）に基づいて復号目標ビットレートを求め、部分デコード部１１１は、その復号目標ビットレートを用いてデコード処理を行う。つまり、部分デコード部１１１は、可逆エンコード時の非ゼロビットプレーン数から、画像データの符号化の難易度を大まかに推定し、その難易度に応じて設定された復号目標ビットレートでデコード処理（部分デコード処理）を行う。したがって、部分デコード部１１１は、画像データの符号化の難易度に応じたビットレートの復号画像データを生成することができる。これにより、非可逆エンコード部１１２は、より容易かつ適切に、可変ビットレート方式で非可逆エンコードを行うことができる。すなわち、非可逆トランスコード部５０２は、可逆エンコードされたコードストリームを、より容易かつ適切に、可変ビットレート方式で非可逆エンコードされたコードストリームに変換することができる。換言すれば、符号化装置５００は、マスタ画像のデータサイズが大きくても、容易かつ適切に、画像データを多様な圧縮率で符号化することができる。
【０３０９】
なお、この場合も、図３２に示されるトランスコード処理において、ステップＳ５０１およびステップＳ５０２の処理は並行して実行するようにしてもよい。また、この場合も、部分デコードレート制御部５２２が、例えば、圧縮率や符号量など、ビットレートと同等の他の情報を目標値として算出するようにしてもよい。さらに、同様に、非可逆エンコード部１１２より部分デコードレート制御部５２２に供給される情報もビットレート以外であっても良い。
【０３１０】
また、以上においては、総和算出部５６３が、全てのコードブロックについての非ゼロビットプレーン数の総和を算出するように説明したが、これに限らず、総和算出部５６３が、ピクチャ内の一部のコードブロック（すなわち、代表とする所定のコードブロック）についてのみ、非ゼロビットプレーン数の総和を算出するようにし、目標ビットレート算出部５６５がその総和に基づいて復号目標ビットレートを算出するようにしてもよい。
【０３１１】
以上に、復号目標ビットレートを算出する方法として、有効ビットプレーン数を用いる第１の方法、コーディングパス数を用いる第２の方法、および、非ゼロビットプレーン数を用いる第３の方法の、３つの方法を説明した。
【０３１２】
これらの３つの方法のうち、第２の方法においては、パケットヘッダを参照するだけでコーディングパス数を得ることができる。また、コーディングパス数は符号量に対応する。したがって、第２の方法は、一般的に、他の方法と比べて最も容易に実現可能であり、かつ、復号目標ビットレートとして最も適切な値を求めることができる（必要な符号量を最も適切に見積もることができる）。
【０３１３】
これに対して、第１の方法は、ゼロビットプレーン数から有効ビットプレーン数を求めるだけなので、一般的に、第３の方法よりは容易に実行可能であるが、第２の方法よりは処理が複雑になる。また、第１の方法の場合、有効ビットプレーンの実際の符号量は考慮しないので、一般的に他の方法よりも、復号目標ビットレートとして最も大まかな値しか求めることができない（必要な符号量の見積もり精度が最も低い）。
【０３１４】
これらに対して、第３の方法は、符号化データを全て参照する必要があるので、一般的に他の方法より処理が複雑になる。ただし、有効ビットプレーン内の符号量（非ゼロビットプレーン数）も考慮するので、第３の方法は、一般的に、復号目標ビットレートとして第１の方法よりも適切な値を求めることができる（第１の方法の場合よりも、必要な符号量を適切に見積もることができる）。
【０３１５】
実際には、例えばハードウェアの処理能力や、処理される画像データの特性等、様々な条件に応じて、より適切な方法を選択し適用するのが望ましい。この復号目標ビットレートを算出する方法は、予め定められていてもよいし、トランスコード処理を行う際に複数の方法の中から選択するようにしてもよい。
【０３１６】
なお、以上においては、部分デコードレート制御部５２２が、符号化パラメータを基準値と比較し、その相対比に基づいて復号目標ビットレートを算出するように説明したが、これ以外にも、例えば、部分デコードレート制御部５２２が、予め用意された所定のテーブル情報を参照することにより、符号化パラメータから復号目標ビットレートを求めるようにしてもよい。
【０３１７】
図４０は、テーブル情報を用いて有効ビットプレーン数から復号目標ビットレートを求める場合の、部分デコードレート制御部５２２の詳細な構成例を示すブロック図である。図４０に示されるように、部分デコードレート制御部５２２は、図３０に示される場合と同様に、ゼロビットプレーン数抽出部５３１、有効ビットプレーン数算出部５３２、および総和算出部５３３を有し、さらに、図３０の目標ビットレート取得部５３４および目標ビットレート算出部５３５の代わりに、テーブル情報保持部６３４、目標ビットレート決定部６３５、および補間処理部６３６を有する。
【０３１８】
テーブル情報保持部６３４は、１ピクチャ分の有効ビットプレーン数の総和と、復号目標ビットレートとの対応関係を示すテーブル情報を保持しており、そのテーブル情報を適宜目標ビットレート決定部６３５に提供する。
【０３１９】
図４１は、テーブル情報保持部６３４が保持するテーブル情報の例を示す図である。図４１に示されるテーブル情報６０１は、１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）と、復号目標ビットレート（Target_Rate）との対応関係を示すテーブル情報である。このテーブル情報６０１には、１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）の代表値と、その代表値に対応する復号目標ビットレート（Target_Rate）が示されている。
【０３２０】
図４１の例の場合、テーブル情報６０１には、１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）の代表値として、「〜５０（５０以下）」、「１００」、「５００」、「１０００」、「１５００」、「１８００」、および「２０００〜（２０００以上）」が示されている。また、それらの代表値のそれぞれに対応する復号目標ビットレート（Target_Rate）として、「５０Ｍbps」、「１００Ｍbps」、「２００Ｍbps」、「２５０Ｍbps」、「２７５Ｍbps」、「３００Ｍbps」、および「３５０Ｍbps」が示されている。なお、基準値（Ref_ALL_NUM_BP）は任意であるが、図４１の例においては「１０００」に設定されている。
【０３２１】
目標ビットレート決定部６３５は、このテーブル情報６０１を参照し、１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）から、その代表値に対応する復号目標ビットレート（Target_Rate）を求める。例えば、１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）が「１０００」であるとすると、目標ビットレート決定部６３５は、図４１のテーブル情報６０１を参照することにより、復号目標ビットレート（Target_Rate）を「２５０Ｍbps」に決定する。
【０３２２】
補間処理部６３６は、目標ビットレート決定部６３５に制御されてテーブル情報保持部６３４が保持するテーブル情報６０１の補間処理を行う。例えば、総和算出部５３３において算出された１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）の値が、テーブル情報６０１に示される代表値でない場合が考えられる。このような場合、目標ビットレート決定部は、テーブル情報６０１を参照しても、その１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）に対応する適切な復号目標ビットレート（Target_Rate）を求めることができない。そこで、目標ビットレート決定部６３５は、補間処理部６３６にテーブル情報６０１の補間処理を実行させ、その１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）に対応する復号目標ビットレート（Target_Rate）を求める。
【０３２３】
この補間処理は、どのような方法であってもよい。例えば、復号目標ビットレート（Target_Rate）が線形的に変化するものとしてもよい。つまり、補間処理部６３６が、テーブル情報６０１に含まれる代表値と、総和算出部５３３により算出された１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）の値との関係に基づいて、代表値に対応する復号目標ビットレート（Target_Rate）を線形的に変化させることにより、総和算出部５３３により算出された１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）に対応する復号目標ビットレート（Target_Rate）を求めるようにしてもよい。
【０３２４】
また、例えば、復号目標ビットレート（Target_Rate）が代表値において階段状に変化するものとしてもよい。つまり、補間処理部６３６が、総和算出部５３３により算出された１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）に対応する復号目標ビットレート（Target_Rate）として、テーブル情報６０１に含まれる、その総和算出部５３３により算出された１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）より小さい代表値の中で最も大きな代表値に対応する復号目標ビットレート（Target_Rate）を適用するようにしてもよい。また、逆に、補間処理部６３６が、総和算出部５３３により算出された１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）に対応する復号目標ビットレート（Target_Rate）として、テーブル情報６０１に含まれる、その総和算出部５３３により算出された１ピクチャ分の有効ビットプレーン数の総和（ALL_NUM_BP）より大きい代表値の中で最も小さな代表値に対応する復号目標ビットレート（Target_Rate）を適用するようにしてもよい。
【０３２５】
補間処理部６３６は、求めた復号目標ビットレート（Target_Rate）を目標ビットレート決定部６３５に供給する。目標ビットレート決定部６３５は、求めた復号目標ビットレート（Target_Rate）を部分デコード部１１１に供給する。
【０３２６】
この場合の、図３２のステップＳ５０２において実行される復号目標ビットレート決定処理の流れの例を、図４２のフローチャートを参照して説明する。
【０３２７】
復号目標ビットレート決定処理が開始されると、部分デコードレート制御部５２２のゼロビットプレーン数抽出部５３１は、ステップＳ６２１において、ゼロビットプレーン数を抽出する。ステップＳ６２２において、有効ビットプレーン数算出部５３２は、ゼロビットプレーン数から有効ビットプレーン数を算出する。ステップＳ６２３において、総和算出部５３３は、有効ビットプレーン数の、処理対象ピクチャの全コードブロック（全サブバンドおよびコンポーネントの全構成）についての総和を算出する。
【０３２８】
ステップＳ６２４において、目標ビットレート算出部６３５は、テーブル情報保持部６３４により保持されるテーブル情報６０１を参照し、ステップＳ６２３において算出された１ピクチャ分の有効ビットプレーン数の総和に対応する復号目標ビットレートを決定する。このとき、補間処理部６３６は、必要に応じてテーブル情報６０１の補間処理を行う。
【０３２９】
ステップＳ６２５において、目標ビットレート算出部６３５は、ステップＳ６２４におて算出した復号目標ビットレートを、部分デコード部１１１に供給する。
【０３３０】
復号目標ビットレートが供給されると、部分デコードレート制御部５２２は、復号目標ビットレート決定処理を終了し、処理を図３２のステップＳ５０２に戻し、ステップＳ５０３以降の処理を実行させる。
【０３３１】
以上のように、部分デコードレート制御部５２２は、テーブル情報６０１を用いることにより、より容易に可逆エンコード部１０１による可逆エンコードの符号化パラメータ（有効ビットプレーン数）から復号目標ビットレートを求め、部分デコード部１１１は、その復号目標ビットレートを用いてデコード処理を行う。つまり、部分デコード部１１１は、可逆エンコード時の有効ビットプレーン数に応じた復号目標ビットレートでデコード処理（部分デコード処理）を行う。したがって、部分デコード部１１１は、画像データの符号化の難易度に応じたビットレートの復号画像データを生成することができる。これにより、非可逆エンコード部１１２は、より容易かつ適切に、可変ビットレート方式で非可逆エンコードを行うことができる。すなわち、非可逆トランスコード部５０２は、可逆エンコードされたコードストリームを、より容易かつ適切に、可変ビットレート方式で非可逆エンコードされたコードストリームに変換することができる。換言すれば、符号化装置５００は、マスタ画像のデータサイズが大きくても、容易かつ適切に、画像データを多様な圧縮率で符号化することができる。
【０３３２】
なお、以上においては、部分デコードレート制御部５２２が、例えば、圧縮率や符号量など、ビットレートと同等の他の情報を目標値として算出するようにしてもよい。また、同様に、非可逆エンコード部１１２より部分デコードレート制御部５２２に供給される情報もビットレート以外であっても良い。
【０３３３】
さらに、総和算出部５３３が、ピクチャ内の一部のコードブロック（すなわち、代表とする所定のコードブロック）についてのみ、有効ビットプレーン数の総和を算出するようにし、目標ビットレート算出部６３５がその総和に基づいて復号目標ビットレートを算出するようにしてもよい。
【０３３４】
なお、符号化パラメータ（コードブロック情報）としてコーディングパス数が用いられる場合も、上述した有効ビットプレーン数の場合と同様に、テーブル情報を用いて復号目標ビットレートが決定されるようにしてもよい。
【０３３５】
図４３は、テーブル情報を用いてコーディングパス数から復号目標ビットレートを求める場合の、部分デコードレート制御部５２２の詳細な構成例を示すブロック図である。図４３に示されるように、部分デコードレート制御部５２２は、図３４に示される場合と同様に、コーディングパス数抽出部５４１および総和算出部５４２を有し、さらに、図３４の目標ビットレート取得部５４３および目標ビットレート算出部５４４の代わりに、テーブル情報保持部６４３、目標ビットレート決定部６４４、および補間処理部６４５を有する。
【０３３６】
テーブル情報保持部６４３は、１ピクチャ分のコーディングパス数の総和と、復号目標ビットレートとの対応関係を示すテーブル情報を保持しており、そのテーブル情報を適宜目標ビットレート決定部６４４に提供する。このテーブル情報の構成は、図４１に示される有効ビットプレーン数の場合のテーブル情報６０１と基本的に同様であり、１ピクチャ分のコーディングパス数の総和（ALL_NUM_CP）の代表値と、その代表値に対応する復号目標ビットレート（Target_Rate）により構成される。
【０３３７】
目標ビットレート決定部６４４は、このテーブル情報を参照し、１ピクチャ分のコーディングパス数の総和（ALL_NUM_CP）から、その代表値に対応する復号目標ビットレート（Target_Rate）を求める。
【０３３８】
補間処理部６４５は、目標ビットレート決定部６４４に制御されてテーブル情報保持部６４３が保持するテーブル情報の補間処理を行う。この補間処理は、上述した有効ビットプレーン数の場合と同様に、どのような方法であってもよい。
【０３３９】
補間処理部６４５は、求めた復号目標ビットレート（Target_Rate）を目標ビットレート決定部６４４に供給する。目標ビットレート決定部６４４は、求めた復号目標ビットレート（Target_Rate）を部分デコード部１１１に供給する。
【０３４０】
この場合の、図３２のステップＳ５０２において実行される復号目標ビットレート決定処理の流れの例を、図４４のフローチャートを参照して説明する。
【０３４１】
復号目標ビットレート決定処理が開始されると、部分デコードレート制御部５２２のコーディングパス数抽出部５４１は、ステップＳ６４１において、コーディングパス数を抽出する。ステップＳ６４２において、総和算出部５４２は、コーディングパス数の、処理対象ピクチャの全コードブロック（全サブバンドおよびコンポーネントの全構成）についての総和を算出する。
【０３４２】
ステップＳ６４３において、目標ビットレート算出部６４４は、テーブル情報保持部６４３により保持されるテーブル情報を参照し、ステップＳ６４２において算出された１ピクチャ分のコーディングパス数の総和に対応する復号目標ビットレートを決定する。このとき、補間処理部６４５は、必要に応じてテーブル情報の補間処理を行う。
【０３４３】
ステップＳ６４４において、目標ビットレート算出部６４４は、ステップＳ６４３におて算出した復号目標ビットレートを、部分デコード部１１１に供給する。
【０３４４】
復号目標ビットレートが供給されると、部分デコードレート制御部５２２は、復号目標ビットレート決定処理を終了し、処理を図３２のステップＳ５０２に戻し、ステップＳ５０３以降の処理を実行させる。
【０３４５】
以上のように、部分デコードレート制御部５２２は、テーブル情報を用いることにより、より容易に可逆エンコード部１０１による可逆エンコードの符号化パラメータ（コーディングパス数）に基づいて復号目標ビットレートを求め、部分デコード部１１１は、その復号目標ビットレートを用いてデコード処理を行う。つまり、部分デコード部１１１は、可逆エンコード時のコーディングパス数に応じた復号目標ビットレートでデコード処理（部分デコード処理）を行う。したがって、部分デコード部１１１は、画像データの符号化の難易度に応じたビットレートの復号画像データを生成することができる。これにより、非可逆エンコード部１１２は、より容易かつ適切に、可変ビットレート方式で非可逆エンコードを行うことができる。すなわち、非可逆トランスコード部５０２は、可逆エンコードされたコードストリームを、より容易かつ適切に、可変ビットレート方式で非可逆エンコードされたコードストリームに変換することができる。換言すれば、符号化装置５００は、マスタ画像のデータサイズが大きくても、容易かつ適切に、画像データを多様な圧縮率で符号化することができる。
【０３４６】
なお、以上においては、部分デコードレート制御部５２２が、例えば、圧縮率や符号量など、ビットレートと同等の他の情報を目標値として算出するようにしてもよい。また、同様に、非可逆エンコード部１１２より部分デコードレート制御部５２２に供給される情報もビットレート以外であっても良い。
【０３４７】
さらに、総和算出部５４２が、ピクチャ内の一部のコードブロック（すなわち、代表とする所定のコードブロック）についてのみ、コーディングブロック数の総和を算出するようにし、目標ビットレート算出部６４４がその総和に基づいて復号目標ビットレートを算出するようにしてもよい。
【０３４８】
なお、符号化パラメータ（コードブロック情報）として非ゼロビットプレーン数が用いられる場合も、上述した有効ビットプレーン数やコーディングパス数の場合と同様に、テーブル情報を用いて復号目標ビットレートが決定されるようにしてもよい。
【０３４９】
図４５は、テーブル情報を用いて非ゼロビットプレーン数から復号目標ビットレートを求める場合の、部分デコードレート制御部５２２の詳細な構成例を示すブロック図である。図４５に示されるように、部分デコードレート制御部５２２は、図３７に示される場合と同様に、ゼロ係数ビットプレーン数抽出部５６１、非ゼロビットプレーン数算出部５６２、および総和算出部５６３を有し、さらに、図３７の目標ビットレート取得部５６４および目標ビットレート算出部５６５の代わりに、テーブル情報保持部６６４、目標ビットレート決定部６６５、および補間処理部６６６を有する。
【０３５０】
テーブル情報保持部６６４は、１ピクチャ分の非ゼロビットプレーン数の総和と、復号目標ビットレートとの対応関係を示すテーブル情報を保持しており、そのテーブル情報を適宜目標ビットレート決定部６６５に提供する。このテーブル情報の構成は、図４１に示される有効ビットプレーン数の場合のテーブル情報６０１と基本的に同様であり、１ピクチャ分の非ゼロビットプレーン数の総和（ALL_NUM_NONZERO_BP）の代表値と、その代表値に対応する復号目標ビットレート（Target_Rate）により構成される。
【０３５１】
目標ビットレート決定部６６５は、このテーブル情報を参照し、１ピクチャ分の非ゼロビットプレーン数の総和（ALL_NUM_NONZERO_BP）から、その代表値に対応する復号目標ビットレート（Target_Rate）を求める。
【０３５２】
補間処理部６６６は、目標ビットレート決定部６６５に制御されてテーブル情報保持部６６４が保持するテーブル情報の補間処理を行う。この補間処理は、上述した有効ビットプレーン数やコーディングパス数の場合と同様に、どのような方法であってもよい。
【０３５３】
補間処理部６６６は、求めた復号目標ビットレート（Target_Rate）を目標ビットレート決定部６６５に供給する。目標ビットレート決定部６６５は、求めた復号目標ビットレート（Target_Rate）を部分デコード部１１１に供給する。
【０３５４】
この場合の、図３２のステップＳ５０２において実行される復号目標ビットレート決定処理の流れの例を、図４６のフローチャートを参照して説明する。
【０３５５】
復号目標ビットレート決定処理が開始されると、部分デコードレート制御部５２２のゼロ係数ビットプレーン数算出部５６１は、ステップＳ６６１において、ゼロ係数ビットプレーン数を算出する。ステップＳ６６２において、非ゼロビットプレーン数算出部５６２は、ゼロ係数ビットプレーン数から非ゼロビットプレーン数を算出する。ステップＳ６６３において、総和算出部５６３は、非ゼロビットプレーン数の、処理対象ピクチャの全コードブロック（全サブバンドおよびコンポーネントの全構成）についての総和を算出する。
【０３５６】
ステップＳ６６４において、目標ビットレート算出部６６５は、テーブル情報保持部６６４により保持されるテーブル情報を参照し、ステップＳ６６３において算出された１ピクチャ分の非ゼロビットプレーン数の総和に対応する復号目標ビットレートを決定する。このとき、補間処理部６６６は、必要に応じてテーブル情報の補間処理を行う。
【０３５７】
ステップＳ６６５において、目標ビットレート算出部６６５は、ステップＳ６６４におて算出した復号目標ビットレートを、部分デコード部１１１に供給する。
【０３５８】
復号目標ビットレートが供給されると、部分デコードレート制御部５２２は、復号目標ビットレート決定処理を終了し、処理を図３２のステップＳ５０２に戻し、ステップＳ５０３以降の処理を実行させる。
【０３５９】
以上のように、部分デコードレート制御部５２２は、テーブル情報を用いることにより、より容易に可逆エンコード部１０１による可逆エンコードの符号化パラメータ（非ゼロビットプレーン数）から復号目標ビットレートを求め、部分デコード部１１１は、その復号目標ビットレートを用いてデコード処理を行う。つまり、部分デコード部１１１は、可逆エンコード時の非ゼロビットプレーン数に応じた復号目標ビットレートでデコード処理（部分デコード処理）を行う。したがって、部分デコード部１１１は、画像データの符号化の難易度に応じたビットレートの復号画像データを生成することができる。これにより、非可逆エンコード部１１２は、より容易かつ適切に、可変ビットレート方式で非可逆エンコードを行うことができる。すなわち、非可逆トランスコード部５０２は、可逆エンコードされたコードストリームを、より容易かつ適切に、可変ビットレート方式で非可逆エンコードされたコードストリームに変換することができる。換言すれば、符号化装置５００は、マスタ画像のデータサイズが大きくても、容易かつ適切に、画像データを多様な圧縮率で符号化することができる。
【０３６０】
なお、部分デコードレート制御部５２２が、例えば、圧縮率や符号量など、ビットレートと同等の他の情報を目標値として算出するようにしてもよい。また、同様に、非可逆エンコード部１１２より部分デコードレート制御部５２２に供給される情報もビットレート以外であっても良い。
【０３６１】
さらに、総和算出部５６３が、ピクチャ内の一部のコードブロック（すなわち、代表とする所定のコードブロック）についてのみ、非ゼロビットプレーン数の総和を算出するようにし、目標ビットレート算出部６６５がその総和に基づいて復号目標ビットレートを算出するようにしてもよい。
【０３６２】
以上においては、可逆エンコードの符号化パラメータとして、有効ビットプレーン数、コーディングパス数、または、非ゼロビットプレーン数を用いる場合について説明したが、これらに限らず、上述した以外の任意の符号化パラメータを用いるようにしてもよい。
【０３６３】
また、非可逆トランスコード部５０２が可逆エンコードの符号化パラメータを用いて符号化の難易度を推定し、復号目標ビットレートを決定するように説明したが、これに限らず、符号化の難易度の推定（復号目標ビットレートの決定）が、可逆エンコード結果に基づいて行われるようにしてもよい。
【０３６４】
図４７は、その場合の、符号化装置の構成例を示すブロック図である。図４７に示されるように、符号化装置７００は、基本的に図２９の符号化装置５００と同様の構成を有するが、非可逆トランスコード部５０２の代わりに、非可逆トランスコード部７０２を有する。この非可逆トランスコード部７０２は、基本的に図２９の非可逆トランスコード部５０２と同様の構成を有するが、コードブロック情報抽出部５２１の代わりに可逆圧縮率測定部７２１を有し、部分デコードレート制御部５２２の代わりに部分デコードレート制御部７２２を有する。
【０３６５】
可逆圧縮率測定部７２１は、情報処理部１０３−１、伝送路１０３−２、または記憶部１０３−３を介して供給される、可逆エンコード部１０１における画像データの可逆エンコード結果であるコードストリームを用いて、可逆エンコード部１０１における可逆エンコードの圧縮率（可逆圧縮率）を測定する。可逆圧縮率測定部７２１は、測定した可逆圧縮率を部分デコードレート制御部５２２に供給する。
【０３６６】
部分デコードレート制御部７２２は、可逆圧縮率測定部７２１より供給される可逆圧縮率を用いて、部分デコード部１１１の復号目標ビットレート（Target_Rate）を求める。部分デコードレート制御部７２２は、求めた復号目標ビットレートを部分デコード部１１１に供給する。部分デコード部１１１は、その復号目標ビットレートを用いて部分デコード処理を行う。
【０３６７】
図４８は、可逆圧縮率測定部７２１および部分デコードレート制御部７２２の詳細な構成例を示すブロック図である。図４８に示されるように、可逆圧縮率測定部７２１は、コードストリームデータサイズ測定部７３１および可逆圧縮率算出部７３２を有する。
【０３６８】
コードストリームデータサイズ測定部７３１は、可逆エンコード部１０１における画像データの可逆エンコード結果であるコードストリームのデータサイズ（ファイルサイズ）を測定する。コードストリームのデータサイズ（ファイルサイズ）は、例えば、ファイルシステムの管理情報を参照することにより容易に求めることができる。コードストリームデータサイズ測定部７３１は、求めたデータサイズ（ファイルサイズ）を可逆圧縮率算出部７３２に供給する。
【０３６９】
可逆圧縮率算出部７３２は、コードストリームデータサイズ測定部７３１より供給されたコードストリームのデータサイズ（ファイルサイズ）を用いて、可逆圧縮率を算出する。可逆圧縮率算出部７３２は、コードストリームのデータサイズ（ファイルサイズ）の、可逆エンコードされる前の原画像の画像データのデータサイズ（ファイルサイズ）に対する比を、可逆圧縮率（RATE_Lossless）として算出する。
【０３７０】
この可逆エンコードされる前の原画像の画像データのデータサイズ（ファイルサイズ）は、ファイルシステムの管理情報を参照したり、簡単な計算を行ったりすることにより、容易に求めることができる。
【０３７１】
例えば、HD画像の場合、可逆エンコードされる前の原画像の画像データのデータサイズ（ファイルサイズ）は、1920（画素）×1080（画素）×3（コンポーネントの構成の数（例えばRGB））×8(ビット深度)×24（１秒当たりのピクチャ数）×時間（秒）の演算により算出可能である。
【０３７２】
可逆圧縮率算出部７３２は、算出した可逆圧縮率（RATE_Lossless）を、部分デコードレート制御部７２２に供給する。
【０３７３】
図４８に示されるように、部分デコードレート制御部７２２は、目標ビットレート取得部７４１および目標ビットレート算出部７４２を有する。
【０３７４】
目標ビットレート取得部７４１は、非可逆エンコード部１１２より非可逆符号化目標ビットレート（TR）を取得し、目標ビットレート算出部７４２に供給する。
【０３７５】
目標ビットレート算出部７４２は、可逆圧縮率測定部７２１より可逆圧縮率（RATE_Lossless）を取得する。また、目標ビットレート算出部７４２は、予め定められた所定の可逆圧縮率を、基準値（Ref_RATE_Lossless）として取得する。さらに、目標ビットレート算出部７４２は、目標ビットレート取得部７４１から非可逆符号化目標ビットレート（TR）を取得する。
【０３７６】
目標ビットレート算出部７４２は、これらの、可逆圧縮率（RATE_Lossless）、非可逆符号化目標ビットレート（TR）、および基準値（Ref_RATE_Lossless）を用いて、部分デコード部１１１の復号目標ビットレート（Target_Rate）を求める。目標ビットレート算出部７４２は、例えば以下の式（８）のように、復号目標ビットレート（Target_Rate）を求める。
【０３７７】
【数８】
0005359302.tif 000009
・・・（８）
【０３７８】
式（８）の例の場合、目標ビットレート算出部７４２は、可逆圧縮率（RATE_Lossless）の、基準値（Ref_RATE_Lossless）との相対比の逆数に応じて、復号目標ビットレート（Target_Rate）を決定する。つまり、目標ビットレート算出部７４２は、可逆圧縮率（RATE_Lossless）が基準値（Ref_RATE_Lossless）よりも小さい場合、可逆符号化結果のコードストリームの符号量が多いので、その分、復号目標ビットレート（Target_Rate）を、非可逆符号化目標ビットレート（TR）より大きく設定する。
【０３７９】
逆に、可逆圧縮率（RATE_Lossless）が基準値（Ref_RATE_Lossless）よりも大きい場合、可逆符号化結果のコードストリームの符号量が少ないので、目標ビットレート算出部５３５は、その分、復号目標ビットレート（Target_Rate）を、非可逆符号化目標ビットレート（TR）より小さく設定する。
【０３８０】
このように、目標ビットレート算出部７４２は、可逆圧縮率の、基準値との相対比（の逆数）に基づいて復号目標ビットレートを決定するので、より容易かつ適切に、復号目標ビットレートを決定することができる。
【０３８１】
なお、復号目標ビットレートは、どのような方法で求められるようにしてもよく、上述した式（８）以外の方法で求められるようにしてももちろんよい。
【０３８２】
目標ビットレート算出部７４２は、このように算出した復号目標ビットレート（Target_Rate）を、部分デコード部１１１に供給する。部分デコード部１１１は、この復号目標ビットレートに基づいて、デコード処理により生成するベースバンドの画像データの、マスタ画像（原画像）の画像データに対する圧縮率を目標圧縮率として算出し、可逆圧縮ファイルのコードストリームを部分的に復号してベースバンドの画像データを生成する。
【０３８３】
上述したように、部分デコード部１１１は、非可逆エンコード部１１２が非可逆符号化目標ビットレートを達成することができる範囲において、復号処理の処理量をより低減させるように、可逆圧縮ファイルのコードストリームを部分的に復号する（部分デコード処理を行う）。この場合、部分デコード部１１１は、その範囲を、目標ビットレート算出部７４２により算出された復号目標ビットレートに基づいて決定する。
【０３８４】
部分デコード部１１１は、生成したベースバンドの画像データ（復号画像データ）を非可逆エンコード部１１２に供給する。
【０３８５】
非可逆エンコード部１１２は、そのベースバンドの画像データをJPEG2000の非可逆圧縮方式により所望の圧縮率で圧縮符号化し、生成したコードストリームを出力する。なお、この場合、非可逆エンコード部１１２は、非可逆符号化目標ビットレートを部分デコードレート制御部７２２に供給する。
【０３８６】
図４９は、非可逆トランスコード部７０２により実行されるトランスコード処理の流れの例を説明するフローチャートである。
【０３８７】
情報処理部１０３−１、伝送路１０３−２、または、記憶部１０３−３より画像データが供給されると、非可逆トランスコード部７０２は、トランスコード処理を開始する。トランスコード処理が開始されると、コードストリームデータサイズ測定部７３１は、図４９のステップＳ７０１において、例えばファイルシステムの管理情報を参照する等して、コードストリームのデータサイズを取得する。ステップＳ７０２において、可逆圧縮率算出部７３２は、ステップＳ７０１において得られたコードストリームのデータサイズを用いて可逆圧縮率（RATE_Lossless）を算出する。
【０３８８】
ステップＳ７０３において、部分デコードレート制御部５２２は、部分デコード処理の目標ビットレート（復号目標ビットレート）を決定する。この復号目標ビットレート決定処理の詳細については後述する。
【０３８９】
復号目標ビットレートが決定されると、部分デコード部１１１は、ステップＳ７０４において、ステップＳ７０３において算出された復号目標ビットレートを用いて部分デコード処理を行い、復号画像データを生成する。この部分デコード処理は、図１８のフローチャートを参照して説明した流れの例と同様に実行されるのでその説明を省略する。ただし、ステップＳ７０４の場合、部分デコード部１１１は、復号目標ビットレートから目標圧縮率を算出し、その目標圧縮率を用いて部分デコード処理を行う。
【０３９０】
ステップＳ７０５において、非可逆エンコード部１１２は、非可逆符号化処理を行う。この非可逆符号化処理は、図１９のフローチャートを参照して説明した流れの例と同様に実行されるので、その説明を省略する。ただし、ステップＳ７０５の場合、非可逆エンコード部１１２は、ステップＳ３０８において目標圧縮率を部分デコード部１１１に供給する代わりに、非可逆符号化目標ビットレートを部分デコードレート制御部７２２に供給する。
【０３９１】
ステップＳ７０６において、非可逆トランスコード部７０２は、画像データの全てのピクチャを処理したか否かを判定する。未処理のピクチャが存在すると判定された場合、処理は、ステップ７０４に戻り、それ以降の処理が実行される。また、ステップＳ７０６において、画像データの全てのピクチャを処理されたと判定された場合、トランスコード処理が終了される。
【０３９２】
つまり、この場合、復号目標ビットレートの算出は、コードストリームのデータサイズ（ファイルサイズ）に基づいて算出される可逆圧縮率を用いて行われるので、画像データに対して１回のみ行われる。
【０３９３】
なお、可逆圧縮率測定部７２１が、画像データの例えばピクチャ毎等、所定のデータ単位毎に可逆圧縮率を算出するようにしてももちろんよい。ただし、その場合、コードストリームデータサイズ測定部７３１は、そのデータ単位毎（例えばピクチャ毎）に、コードストリームのデータサイズを求める必要があり、上述した場合と比べて処理が複雑になる。
【０３９４】
次に、図４９のステップＳ７０３において実行される復号目標ビットレート決定処理の流れの例を、図５０のフローチャートを参照して説明する。
【０３９５】
復号目標ビットレート決定処理が開始されると、部分デコードレート制御部７２２の目標ビットレート取得部７４１は、ステップＳ７２１において、非可逆符号化目標ビットレートを取得する。ステップＳ７２２において、目標ビットレート算出部７４２は、基準値を取得する。ステップＳ７２３において、目標ビットレート算出部７４２は、可逆圧縮率を取得する。ステップＳ７２４において、目標ビットレート算出部７４２は、ステップＳ７２１において取得された非可逆符号化目標ビットレート、ステップＳ７２２において取得された基準値、並びに、ステップＳ７３３において取得された可逆圧縮率を用いて、復号目標ビットレートを算出する。
【０３９６】
ステップＳ７２５において、目標ビットレート算出部７４２は、ステップＳ７２４におて算出された復号目標ビットレートを、部分デコード部１１１に供給する。
【０３９７】
復号目標ビットレートが供給されると、部分デコードレート制御部７２２は、復号目標ビットレート決定処理を終了し、処理を図４９のステップＳ７０３に戻し、ステップＳ７０４以降の処理を実行させる。
【０３９８】
以上のように、部分デコードレート制御部７２２は、可逆エンコード部１０１による可逆エンコードの可逆圧縮率に基づいて復号目標ビットレートを求め、部分デコード部１１１は、その復号目標ビットレートを用いてデコード処理を行う。つまり、部分デコード部１１１は、可逆圧縮率から、画像データの符号化の難易度を大まかに推定し、その難易度に応じて設定された復号目標ビットレートでデコード処理（部分デコード処理）を行う。
【０３９９】
この場合、可逆圧縮率は、上述したようにファイルシステムの管理情報等を参照するだけで算出可能であるので、例えばコードブロック情報のパース等の処理が不要になる。また、コーデックのシンタックス理解も不要である。したがって、部分デコードレート制御部７２２は、復号目標ビットレートを求める処理の負荷をより軽減させることができる。
【０４００】
以上のように、部分デコード部１１１は、画像データの符号化の難易度に応じたビットレートの復号画像データを、より容易に生成することができる。これにより、非可逆エンコード部１１２は、より容易かつ適切に、可変ビットレート方式で非可逆エンコードを行うことができる。すなわち、非可逆トランスコード部７０２は、可逆エンコードされたコードストリームを、より容易かつ適切に、可変ビットレート方式で非可逆エンコードされたコードストリームに変換することができる。換言すれば、符号化装置７００は、マスタ画像のデータサイズが大きくても、容易かつ適切に、画像データを多様な圧縮率で符号化することができる。
【０４０１】
なお、以上においては、部分デコードレート制御部７２２が、デコード処理の目標値としてビットレート（復号目標ビットレート）を算出するように説明したが、例えば、圧縮率や符号量など、ビットレートと同等の他の情報を目標値として算出するようにしてもよい。その場合、部分デコード部１１１は、その目標値を情報の種類に応じて変換するだけで、基本的には、図１８のフローチャートを参照して説明した場合と同様に部分デコード処理を行う。
【０４０２】
また、同様に、非可逆エンコード部１１２より部分デコードレート制御部７２２に供給される情報もビットレート以外であっても良い。例えば、符号量や圧縮率などであってもよい。
【０４０３】
また、符号化の難易度の推定（復号目標ビットレートの決定）を、可逆エンコード結果（コードストリーム）のシステムパラメータに基づいて行われるようにしてもよい。例えば、部分デコードレート制御部が、可逆エンコード部１０１による可逆エンコード処理の処理時間（クロック数やサイクル数）等のシステムパラメータを用いて符号化の難易度の推定を行うようにしてもよい。
【０４０４】
図５１は、その場合の、符号化装置の構成例を示すブロック図である。図５１に示されるように、符号化装置８００は、基本的に図２９の符号化装置５００と同様の構成を有するが、非可逆トランスコード部５０２の代わりに、非可逆トランスコード部８０２を有する。この非可逆トランスコード部８０２は、基本的に図２９の非可逆トランスコード部５０２と同様の構成を有するが、コードブロック情報抽出部５２１の代わりにエンコード時間測定部８２１を有し、部分デコードレート制御部５２２の代わりに部分デコードレート制御部８２２を有する。
【０４０５】
エンコード時間測定部８２１は、可逆エンコード部１０１により実行される可逆エンコード処理を監視し、その処理時間（可逆符号化時間）を測定し、その測定結果に基づいて、可逆エンコード部１０１により実行される可逆エンコード処理の圧縮率（可逆圧縮率）を算出する。
【０４０６】
エンコード時間測定部８２１は、可逆エンコード部１０１により実行される可逆エンコード処理を監視し、その処理時間（可逆符号化時間）を測定すると、その測定結果を保持する。エンコード時間測定部８２１は、情報処理部１０３−１、伝送路１０３−２、または記憶部１０３−３を介して、可逆エンコード部１０１における画像データの可逆エンコード結果であるコードストリームを取得すると、そのコードストリームを生成する可逆エンコード処理の可逆符号化時間に基づいて、可逆圧縮率を算出する。エンコード時間測定部８２１は、算出した可逆圧縮率を部分デコードレート制御部８２２に供給する。
【０４０７】
部分デコードレート制御部８２２は、エンコード時間測定部８２１より供給される可逆圧縮率を用いて、部分デコード部１１１の復号目標ビットレート（Target_Rate）を求める。部分デコードレート制御部８２２は、求めた復号目標ビットレートを部分デコード部１１１に供給する。部分デコード部１１１は、その復号目標ビットレートを用いて部分デコード処理を行う。
【０４０８】
図５２は、エンコード時間測定部８２１および部分デコードレート制御部８２２の詳細な構成例を示すブロック図である。図５２に示されるように、エンコード時間測定部８２１は、可逆符号化時間測定部８３１、可逆符号化時間保持部８３２、可逆符号化時間抽出部８３３、および可逆圧縮率推定部８３４を有する。
【０４０９】
可逆符号化時間測定部８３１は、可逆エンコード部１０１により実行される可逆エンコード処理を監視し、その可逆エンコード処理の処理時間（可逆符号化時間）を測定する。例えば、可逆符号化時間測定部８３１は、可逆エンコード処理が開始されてから終了するまでの時間を計測する。また、例えば、可逆符号化時間測定部８３１は、可逆エンコード処理が開始されてから終了するまでのクロック数をカウントする。さらに、例えば、可逆符号化時間測定部８３１は、可逆エンコード処理が開始されてから終了するまでのサイクル数をカウントする。
【０４１０】
可逆符号化時間保持部８３２は、可逆符号化時間測定部８３１により測定された可逆符号化時間（例えば、クロック数やサイクル数等）を保持する。このとき、可逆符号化時間保持部８３２は、その可逆符号化時間を、可逆符号化された画像データの識別情報（例えばデータ名等）に関連付けて保持する。
【０４１１】
可逆符号化時間抽出部８３３は、情報処理部１０３−１、伝送路１０３−２、または、記憶部１０３−３を介して、可逆エンコード部１０１より供給されるコードストリーム（可逆エンコード結果）を取得すると、そのコードストリームに対応する可逆符号化時間を、可逆符号化保持部８３２により保持されている可逆符号化時間群の中から抽出し、取得する。可逆符号化時間抽出部８３３は、抽出した可逆符号化時間を可逆圧縮率推定部８３４に供給する。
【０４１２】
可逆圧縮率推定部８３４は、供給された可逆符号化時間に基づいて、可逆圧縮率を推定する。一般的に、可逆符号化時間が長い場合、符号化の難易度が高く、生成される符号量も多い。したがって、この場合、可逆圧縮率は低くなると推定される。逆に、可逆符号化時間が短い場合、一般的に符号化の難易度が低く、生成される符号量も少ない。したがって、この場合、可逆圧縮率は高くなると推定される。
【０４１３】
可逆圧縮率推定部８３４は、このような可逆圧縮率の傾向に基づいて、可逆符号化時間の長さ（クロック数やサイクル数の値の大きさ）から、可逆圧縮率の値を推定する。したがって、可逆圧縮率推定部８３４は、容易に可逆圧縮率を推定することができる。可逆圧縮率推定部８３４は、このように推定された可逆圧縮率（RATE_Lossless）を部分デコードレート制御部８２２に供給する。
【０４１４】
図５２に示されるように、部分デコードレート制御部８２２は、目標ビットレート取得部８４１および目標ビットレート算出部８４２を有する。
【０４１５】
目標ビットレート取得部８４１は、非可逆エンコード部１１２より非可逆符号化目標ビットレート（TR）を取得し、目標ビットレート算出部８４２に供給する。
【０４１６】
目標ビットレート算出部８４２は、エンコード時間測定部８２１より可逆圧縮率（RATE_Lossless）を取得する。また、目標ビットレート算出部８４２は、予め定められた所定の可逆圧縮率を、基準値（Ref_RATE_Lossless）として取得する。さらに、目標ビットレート算出部８４２は、目標ビットレート取得部８４１から非可逆符号化目標ビットレート（TR）を取得する。
【０４１７】
目標ビットレート算出部８４２は、これらの、可逆圧縮率（RATE_Lossless）、非可逆符号化目標ビットレート（TR）、および基準値（Ref_RATE_Lossless）を用いて、上述した目標ビットレート算出部７４２の場合と同様に、部分デコード部１１１の復号目標ビットレート（Target_Rate）を求める。
【０４１８】
目標ビットレート算出部８４２は、このように算出した復号目標ビットレート（Target_Rate）を、部分デコード部１１１に供給する。部分デコード部１１１は、この復号目標ビットレートに基づいて、デコード処理により生成するベースバンドの画像データの、マスタ画像（原画像）の画像データに対する圧縮率を目標圧縮率として算出し、可逆圧縮ファイルのコードストリームを部分的に復号してベースバンドの画像データを生成する。
【０４１９】
上述したように、部分デコード部１１１は、非可逆エンコード部１１２が非可逆符号化目標ビットレートを達成することができる範囲において、復号処理の処理量をより低減させるように、可逆圧縮ファイルのコードストリームを部分的に復号する（部分デコード処理を行う）。この場合、部分デコード部１１１は、その範囲を、目標ビットレート算出部８４２により算出された復号目標ビットレートに基づいて決定する。
【０４２０】
部分デコード部１１１は、生成したベースバンドの画像データ（復号画像データ）を非可逆エンコード部１１２に供給する。
【０４２１】
非可逆エンコード部１１２は、そのベースバンドの画像データをJPEG2000の非可逆圧縮方式により所望の圧縮率で圧縮符号化し、生成したコードストリームを出力する。なお、この場合、非可逆エンコード部１１２は、非可逆符号化目標ビットレートを部分デコードレート制御部８２２に供給する。
【０４２２】
図５３は、エンコード時間測定部８２１により実行される可逆符号化時間測定処理の流れの例を説明するフローチャートである。
【０４２３】
可逆エンコード部１０１が、可逆エンコード処理を開始すると、エンコード時間測定部８２１は、可逆符号化時間測定処理を開始する。可逆符号化時間測定処理が開始されると、可逆符号化時間測定部８３１は、ステップＳ８０１において、可逆符号化時間の測定を開始する。ステップＳ８０２において、可逆エンコード部１０１は、画像データの全ピクチャについて可逆符号化を行う。可逆符号化が終了すると、可逆符号化時間測定部８３１は、ステップＳ８０３において、可逆符号化時間の測定を終了する。測定が終了されると、ステップＳ８０４において、可逆符号化時間保持部８３２は、ステップＳ８０１乃至ステップＳ８０３の間に測定された測定結果（可逆符号化時間）を保持し、可逆符号化時間測定処理を終了する。
【０４２４】
次に、図５４のフローチャートを参照して、この場合の、非可逆トランスコード部８０２により実行されるトランスコード処理の流れの例を説明する。
【０４２５】
情報処理部１０３−１、伝送路１０３−２、または、記憶部１０３−３より画像データが供給されると、非可逆トランスコード部８０２は、トランスコード処理を開始する。トランスコード処理が開始されると、可逆符号化時間抽出部８３３は、ステップＳ８２１において、可逆符号化時間保持部８３２から、コードストリームに対応する可逆符号化時間を取得する。
【０４２６】
ステップＳ８２２において、可逆圧縮率推定部８３４は、ステップＳ８２１において取得された可逆符号化時間から可逆圧縮率（RATE_Lossless）を推定する。ステップＳ８２３において、部分デコードレート制御部８２２は、部分デコード部１１１による部分デコード処理の復号目標ビットレートを決定する。この復号目標ビットレート決定処理は、図５０のフローチャートを参照して説明した流れの例と同様に実行されるので、その説明は省略する。
【０４２７】
復号目標ビットレートが決定されると、部分デコード部１１１は、ステップＳ８２４において、ステップＳ８２３において算出された復号目標ビットレートを用いて部分デコード処理を行い、復号画像データを生成する。この部分デコード処理は、図１８のフローチャートを参照して説明した流れの例と同様に実行されるのでその説明を省略する。ただし、ステップＳ８２４の場合、部分デコード部１１１は、復号目標ビットレートから目標圧縮率を算出し、その目標圧縮率を用いて部分デコード処理を行う。
【０４２８】
ステップＳ８２５において、非可逆エンコード部１１２は、非可逆符号化処理を行う。この非可逆符号化処理は、図１９のフローチャートを参照して説明した流れの例と同様に実行されるので、その説明を省略する。ただし、ステップＳ８２５の場合、非可逆エンコード部１１２は、ステップＳ３０８において目標圧縮率を部分デコード部１１１に供給する代わりに、非可逆符号化目標ビットレートを部分デコードレート制御部８２２に供給する。
【０４２９】
ステップＳ８２６において、非可逆トランスコード部８０２は、画像データの全てのピクチャを処理したか否かを判定する。未処理のピクチャが存在すると判定された場合、処理は、ステップ８２４に戻り、それ以降の処理が実行される。また、ステップＳ８２６において、画像データの全てのピクチャを処理されたと判定された場合、トランスコード処理が終了される。
【０４３０】
つまり、この場合、復号目標ビットレートの算出は、可逆エンコード処理の処理時間に基づいて算出される可逆圧縮率を用いて行われるので、画像データに対して１回のみ行われる。
【０４３１】
なお、可逆圧縮率測定部８２１が、画像データの例えばピクチャ毎等、所定のデータ単位毎に可逆圧縮率を算出するようにしてももちろんよい。ただし、その場合、可逆符号化時間測定部８３１は、そのデータ単位毎（例えばピクチャ毎）に、可逆符号化時間を求める必要があり、上述した場合と比べて処理が複雑になる。
【０４３２】
以上のように、部分デコード部１１１は、画像データの符号化の難易度に応じたビットレートの復号画像データを、より容易に生成することができる。これにより、非可逆エンコード部１１２は、より容易かつ適切に、可変ビットレート方式で非可逆エンコードを行うことができる。すなわち、非可逆トランスコード部８０２は、可逆エンコードされたコードストリームを、より容易かつ適切に、可変ビットレート方式で非可逆エンコードされたコードストリームに変換することができる。換言すれば、符号化装置８００は、マスタ画像のデータサイズが大きくても、容易かつ適切に、画像データを多様な圧縮率で符号化することができる。
【０４３３】
なお、以上においては、部分デコードレート制御部８２２が、デコード処理の目標値としてビットレート（復号目標ビットレート）を算出するように説明したが、例えば、圧縮率や符号量など、ビットレートと同等の他の情報を目標値として算出するようにしてもよい。その場合、部分デコード部１１１は、その目標値を情報の種類に応じて変換するだけで、基本的には、図１８のフローチャートを参照して説明した場合と同様に部分デコード処理を行う。
【０４３４】
また、同様に、非可逆エンコード部１１２より部分デコードレート制御部８２２に供給される情報もビットレート以外であっても良い。例えば、符号量や圧縮率などであってもよい。
【０４３５】
以上においては、本発明を符号化装置に適用する場合について説明したが、これに限らず、どのような装置に適用することも可能である。例えば、各図に示される各処理部をそれぞれ独立した１つの装置としてもよい。また、以上においては、圧縮・伸長方式の例としてJPEG2000を用いて説明したが、圧縮・伸長方式は、これに限らず任意である。
【０４３６】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウエアにより実行させることもできる。この場合、例えば、図５５に示されるようなパーソナルコンピュータとして構成されるようにしてもよい。
【０４３７】
図５５において、パーソナルコンピュータ９００のCPU（Central Processing Unit）９０１は、ROM（Read Only Memory）９０２に記憶されているプログラム、または記憶部９１３からRAM（Random Access Memory）９０３にロードされたプログラムに従って各種の処理を実行する。RAM９０３にはまた、CPU９０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０４３８】
CPU９０１、ROM９０２、およびRAM９０３は、バス９０４を介して相互に接続されている。このバス９０４にはまた、入出力インタフェース９１０も接続されている。
【０４３９】
入出力インタフェース９１０には、キーボード、マウスなどよりなる入力部９１１、CRT（Cathode Ray Tube）やLCD（Liquid Crystal Display）などよりなるディスプレイ、並びにスピーカなどよりなる出力部９１２、ハードディスクなどより構成される記憶部９１３、モデムなどより構成される通信部９１４が接続されている。通信部９１４は、インターネットを含むネットワークを介しての通信処理を行う。
【０４４０】
入出力インタフェース９１０にはまた、必要に応じてドライブ９１５が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア９２１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部９１３にインストールされる。
【０４４１】
上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
【０４４２】
この記録媒体は、例えば、図５５に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM（Compact Disc - Read Only Memory）,DVD（Digital Versatile Disc）を含む）、光磁気ディスク（MD（Mini Disc）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア９２１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM９０２や、記憶部９１３に含まれるハードディスクなどで構成される。
【０４４３】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０４４４】
また、本明細書において、システムとは、複数のデバイス（装置）により構成される装置全体を表わすものである。
【０４４５】
なお、以上において、１つの装置として説明した構成を分割し、複数の装置として構成するようにしてもよい。逆に、以上において複数の装置として説明した構成をまとめて１つの装置として構成されるようにしてもよい。また、各装置の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置の構成の一部を他の装置の構成に含めるようにしてもよい。つまり、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０４４６】
１００  ウェーブレット変換装置，  １１１  スケジューラ，  １１２  水平分析フィルタ部，  １１３  ラインバッファ，  １１４  垂直分析フィルタ部，  １１５  係数バッファ，  ３００  符号化装置，  ３０１  ウェーブレット変換部，  ３０２  量子化部，  ３０３  エントロピ符号化部，  ３０４  レート制御部，  ５００  符号化装置，  ５２１  コードブロック情報抽出部，  ５２２  部分デコードレート制御部，  ５３１  ゼロビットプレーン数抽出部，  ５３２  有効ビットプレーン数算出部，  ５３３  総和算出部，  ５３４  目標ビットレート取得部，  ５３５  目標ビットレート算出部，  ５４１  コーディングパス数抽出部，  ５４２  総和算出部，  ５４３  目標ビットレート取得部，５４４  目標ビットレート算出部，  ５６１  ゼロ係数ビットプレーン数算出部，  ５６２  非ゼロビットプレーン数算出部，  ５６３  総和算出部，  ５６４  目標ビットレート取得部，  ５６５  目標ビットレート算出部，  ６３４  テーブル情報保持部，  ６３５  目標ビットレート決定部，  ６３６  補間処理部，  ６４３  テーブル情報保持部，  ６４４  目標ビットレート決定部，  ６４５  補間処理部，  ６６４  テーブル情報保持部，  ６６５  目標ビットレート決定部，  ６６６  補間処理部，  ７００  符号化装置，  ７２１  可逆圧縮率測定部，  ７２２  部分デコードレート制御部，  ７３１  コードストリームデータサイズ測定部，  ７３２  可逆圧縮率算出部，  ７４１  目標ビットレート取得部，  ７４２  目標ビットレート算出部，  ８００  符号化装置，  ８２１  エンコード時間測定部，  ８２２  部分デコードレート制御部，  ８３１  可逆符号化時間測定部、  ８３２  可逆符号化時間保持部，  ８３３  可逆符号化時間抽出部，  ８３４  可逆圧縮率推定部，  ８４１  目標ビットレート取得部，  ８４２  目標ビットレート算出部
【図１】
0005359302.tif 000010
【図２】
0005359302.tif 000011
【図３】
0005359302.tif 000012
【図４】
0005359302.tif 000013
【図５】
0005359302.tif 000014
【図６】
0005359302.tif 000015
【図７】
0005359302.tif 000016
【図８】
0005359302.tif 000017
【図９】
0005359302.tif 000018
【図１０】
0005359302.tif 000019
【図１１】
0005359302.tif 000020
【図１２】
0005359302.tif 000021
【図１３】
0005359302.tif 000022
【図１４】
0005359302.tif 000023
【図１５】
0005359302.tif 000024
【図１６】
0005359302.tif 000025
【図１７】
0005359302.tif 000026
【図１８】
0005359302.tif 000027
【図１９】
0005359302.tif 000028
【図２０】
0005359302.tif 000029
【図２１】
0005359302.tif 000030
【図２２】
0005359302.tif 000031
【図２３】
0005359302.tif 000032
【図２４】
0005359302.tif 000033
【図２５】
0005359302.tif 000034
【図２６】
0005359302.tif 000035
【図２７】
0005359302.tif 000036
【図２８】
0005359302.tif 000037
【図２９】
0005359302.tif 000038
【図３０】
0005359302.tif 000039
【図３１】
0005359302.tif 000040
【図３２】
0005359302.tif 000041
【図３３】
0005359302.tif 000042
【図３４】
0005359302.tif 000043
【図３５】
0005359302.tif 000044
【図３６】
0005359302.tif 000045
【図３７】
0005359302.tif 000046
【図３８】
0005359302.tif 000047
【図３９】
0005359302.tif 000048
【図４０】
0005359302.tif 000049
【図４１】
0005359302.tif 000050
【図４２】
0005359302.tif 000051
【図４３】
0005359302.tif 000052
【図４４】
0005359302.tif 000053
【図４５】
0005359302.tif 000054
【図４６】
0005359302.tif 000055
【図４７】
0005359302.tif 000056
【図４８】
0005359302.tif 000057
【図４９】
0005359302.tif 000058
【図５０】
0005359302.tif 000059
【図５１】
0005359302.tif 000060
【図５２】
0005359302.tif 000061
【図５３】
0005359302.tif 000062
【図５４】
0005359302.tif 000063
【図５５】
0005359302.tif 000064