(57)【要約】【課題】本発明の画像処理装置によれば、タグツリー構造によって符号化される情報符号の格納アドレスを好適に制御することが可能な画像処理装置を提供すること。【解決手段】画像に対しウェーブレット変換を行って生成する異なる階層毎にコードブロックに分割し、前記コードブロック毎に、該コードブロックに係る情報の情報符号を、前記階層毎に対応するタグツリーにより生成して前記画像が符号化された符号データを生成する、画像処理装置であって、前記階層毎に、ｘ方向及びｙ方向に、一のコードブロックの大きさを一単位として前記コードブロック毎のｘ座標及びｙ座標を生成する座標生成手段と、前記コードブロック毎のｙ座標及びｘ座標をビット結合した結合値の倍数により、前記コードブロックに対応する情報符号を第一の記憶手段に格納するためのアドレスを生成するアドレス生成手段と、を有する画像処理装置。【選択図】図８
2008283285.tif 000002
【特許請求の範囲】
【請求項１】
画像に対しウェーブレット変換を行って生成する異なる階層毎にコードブロックに分割し、前記コードブロック毎に、該コードブロックに係る情報の情報符号を、前記階層毎に対応するタグツリーにより生成して前記画像が符号化された符号データを生成する、画像処理装置であって、
前記階層毎に、ｘ方向及びｙ方向に、一のコードブロックの大きさを一単位として前記コードブロック毎のｘ座標及びｙ座標を生成する座標生成手段と、
前記コードブロック毎のｙ座標及びｘ座標をビット結合した結合値の倍数により、前記コードブロックに対応する情報符号を第一の記憶手段に格納するためのアドレスを生成するアドレス生成手段と、
を有する画像処理装置。
【請求項２】
画像に対しウェーブレット変換を行って生成する異なる階層毎にコードブロックに分割し、前記コードブロック毎に、該コードブロックに係る情報の情報符号を、前記階層毎に対応するタグツリーにより生成して前記画像が符号化された符号データから、前記情報符号を復号して画像を生成する、画像処理装置であって、
前記階層毎に、ｘ方向及びｙ方向に、一のコードブロックの大きさを一単位として前記コードブロック毎のｘ座標及びｙ座標を生成する座標生成手段と、
前記コードブロック毎のｙ座標及びｘ座標をビット結合した結合値の倍数により、前記コードブロックに対応する情報符号を第一の記憶手段に格納するためのアドレスを生成するアドレス生成手段と、
を有する画像処理装置。
【請求項３】
前記結合値の倍数は、異なる情報符号毎に、該情報符号の最大ビット長を前記結合値に乗じたものである請求項１又は２記載の画像処理装置。
【請求項４】
前記第一の記憶手段が、第一の所定数の連続するビット毎に読み出し及び／又は書き込みが行われる場合に、
前記アドレス生成手段は、前記結合値の倍数のうち下位の前記第一の所定数のビットを除く上位のビットからなる値を、前記情報符号を、前記第一の記憶手段から読み出し及び／又は前記第一の記憶手段に対して書き込みを行う際のオフセット値とする請求項１ないし３何れか一項に記載の画像処理装置。
【請求項５】
前記アドレス生成手段は、前記結合値の倍数のうち下位の第二の所定数のビットからなる値を、前記情報符号が格納される前記第一の記憶手段より容量の少ない第二の記憶手段におけるアドレスとして生成する請求項１ないし４何れか一項に記載の画像処理装置。
【請求項６】
前記第一の所定数と前記第二の所定数とは同じ値である請求項５記載の画像処理装置。
【請求項７】
前記情報符号の前記第二の記憶手段におけるアドレスが第一の所定の値の場合に、前記第一の記憶手段から前記情報符号を読み出して前記第二の記憶手段に格納し、及び、前記情報符号の前記第二の記憶手段におけるアドレスが第二の所定の値の場合に、前記第二の記憶手段から前記情報符号を読み出して前記第一の記憶手段に格納する記憶制御手段を有する請求項５記載の画像処理装置。
【請求項８】
前記第一の記憶手段は、当該画像処理装置の外部に設けられ、
前記第二の記憶手段は、当該画像処理装置の内部に設けられている請求項５ないし７何れか一項に記載の画像処理装置。
【請求項９】
前記タグツリーは、異なる複数の階層であるタグレベルから構成され、
一のタグレベルにおける一のコードブロックは、前記一のタグレベルの直下のタグレベルにおける、ｘ方向に多くとも２個、ｙ方向に多くとも２個のコードブロックの親ノードとして構成される請求項１ないし８何れか一項に記載の画像処理装置。
【請求項１０】
前記符号データは、ＪＰＥＧ２０００に規定される符号データであり、
前記コードブロックに係る情報は、コードブロック包含情報、又は、ゼロビットプレーン情報、である請求項１記載の画像処理装置。
【請求項１１】
画像に対しウェーブレット変換を行って生成する異なる階層毎にコードブロックに分割し、前記コードブロック毎に、該コードブロックに係る情報の情報符号を、前記階層毎に対応するタグツリーにより生成して前記画像が符号化された符号データを生成する、画像処理回路であって、
前記階層毎に、ｘ方向及びｙ方向に、一のコードブロックの大きさを一単位として前記コードブロック毎のｘ座標及びｙ座標を生成する座標生成手段と、
前記コードブロック毎のｙ座標及びｘ座標をビット結合した結合値の倍数により、前記コードブロックに対応する情報符号を第一の記憶手段に格納するためのアドレスを生成するアドレス生成手段と、
を有する画像処理回路。
【請求項１２】
画像に対しウェーブレット変換を行って生成する異なる階層毎にコードブロックに分割し、前記コードブロック毎に、該コードブロックに係る情報の情報符号を、前記階層毎に対応するタグツリーにより生成して前記画像が符号化された符号データから、前記情報符号を復号して画像を生成する、画像処理回路であって、
前記階層毎に、ｘ方向及びｙ方向に、一のコードブロックの大きさを一単位として前記コードブロック毎のｘ座標及びｙ座標を生成する座標生成手段と、
前記コードブロック毎のｙ座標及びｘ座標をビット結合した結合値の倍数により、前記コードブロックに対応する情報符号を第一の記憶手段に格納するためのアドレスを生成するアドレス生成手段と、
を有する画像処理回路。
【請求項１３】
前記アドレス生成手段は、前記結合値の倍数のうち下位の第二の所定数のビットからなる値を、前記情報符号が格納される前記第一の記憶手段より容量の少ない第二の記憶手段におけるアドレスとして生成する請求項１１又は１２記載の画像処理回路。
【請求項１４】
前記情報符号の前記第二の記憶手段におけるアドレスが第一の所定の値の場合に、前記第一の記憶手段から前記情報符号を読み出して前記第二の記憶手段に格納し、及び、前記情報符号の前記第二の記憶手段におけるアドレスが第二の所定の値の場合に、前記第二の記憶手段から前記情報符号を読み出して前記第一の記憶手段に格納する記憶制御手段を有する請求項１３記載の画像処理回路。
【請求項１５】
前記タグツリーは、異なる階層であるタグレベルから構成され、
前記タグレベル毎に対応するトグルレジスタを有し、
前記トグルレジスタが所定の値を保持する場合に、
前記記憶制御手段は、
対応するタグレベルの情報符号を、前記第一の記憶手段から読み出して前記第二の記憶手段に格納し又は前記第二の記憶手段から読み出して前記第一の記憶手段に格納し、さらに、前記トグルレジスタが保持する値を更新する請求項１４記載の画像処理回路。
【請求項１６】
画像に対しウェーブレット変換を行って生成する異なる階層毎にコードブロックに分割し、前記コードブロック毎に、該コードブロックに係る情報の情報符号を、前記階層毎に対応するタグツリーにより生成して前記画像が符号化された符号データを生成する、画像処理方法であって、
前記階層毎に、ｘ方向及びｙ方向に、一のコードブロックの大きさを一単位として前記コードブロック毎のｘ座標及びｙ座標を生成する座標生成ステップと、
前記コードブロック毎のｙ座標及びｘ座標をビット結合した結合値の倍数により、前記コードブロックに対応する情報符号を第一の記憶手段に格納するためのアドレスを生成するアドレス生成ステップと、
を有する画像処理方法。
【請求項１７】
画像に対しウェーブレット変換を行って生成する異なる階層毎にコードブロックに分割し、前記コードブロック毎に、該コードブロックに係る情報の情報符号を、前記階層毎に対応するタグツリーにより生成して前記画像が符号化された符号データから、前記情報符号を復号して画像を生成する、画像処理方法であって、
前記階層毎に、ｘ方向及びｙ方向に、一のコードブロックの大きさを一単位として前記コードブロック毎のｘ座標及びｙ座標を生成する座標生成ステップと、
前記コードブロック毎のｙ座標及びｘ座標をビット結合した結合値の倍数により、前記コードブロックに対応する情報符号を第一の記憶手段に格納するためのアドレスを生成するアドレス生成ステップと、
を有する画像処理方法。
【請求項１８】
前記第一の記憶手段が、第一の所定数の連続するビット毎に読み出し及び書き込みが行われる場合に、
前記アドレス生成ステップは、前記結合値の倍数のうち下位の前記第一の所定数のビットを除く上位のビットからなる値を、前記情報符号を、前記第一の記憶手段から読み出し、又は、前記第一の記憶手段に対して書き込みを行う際のオフセット値として生成する請求項１６又は１７記載の画像処理方法。
【請求項１９】
前記アドレス生成ステップは、前記結合値の倍数のうち下位の第二の所定数のビットからなる値を、前記情報符号が格納される前記第一の記憶手段より容量の少ない第二の記憶手段におけるアドレスとして生成する請求項１６ないし１８何れか一項に記載の画像処理方法。
【請求項２０】
前記情報符号の前記第二の記憶手段におけるアドレスが第一の所定の値の場合に、前記第一の記憶手段から前記情報符号を読み出して前記第二の記憶手段に格納するステップと、
前記情報符号の前記第二の記憶手段におけるアドレスが第二の所定の値の場合に、前記第二の記憶手段から前記情報符号を読み出して前記第一の記憶手段にするステップと、
を有する請求項１９記載の画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理回路、及び、画像処理方法に関する。
【背景技術】
【０００２】
ウェーブレット変換を行う画像符号化及び復号化では、変換係数を含む様々な情報の符号が、サブバンド変換のレベル毎に存在する。そこで、それらの符号を効率良くメモリ等に格納し、又は、メモリ等に格納されたそれらの符号に対するアクセスが容易になる画像処理装置等の技術が開示されている。
【０００３】
例えば、特開２００６−２８７４８５号公報（特許文献１）には、少なくとも１の処理工程により生成されるデータのビット深さに応じて、データの１単位の記憶のために割り当てるメモリスペースを変化させることにより、メモリ利用効率を向上させる画像処理装置等の技術が開示されている。
【０００４】
また、例えば、特開２００４−２５４２９８号公報（特許文献２）には、階層毎に分割された圧縮符号を各々分散させて記憶する分散記憶手段を有することにより、高速な処理を実現する画像処理装置等の技術が開示されている。
【０００５】
ところで、ＪＰＥＧ２０００に規定される符号化方式では、変換係数を階層毎に分割したコードブロック毎に、そのコードブロックに係る情報をタグツリーと呼ばれるツリー構造を用いて符号化している。タグツリーによれば、親のタグレベルの符号を共用するコードブロック間については、符号を省略することができるので、効率良く符号化を行うことができる。
【特許文献１】特開２００６−２８７４８５号公報
【特許文献２】特開２００４−２５４２９８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、タグツリー構造を用いる符号化処理及び復号処理では、一のコードブロックを処理する際に、そのコードブロックの直上の親からルートまでの全てのタグレベルの符号を保持しなくてはならない。
【０００７】
例えば、２次元に配列されたコードブロックを、先ず左上端から右方向、すなわち、ｘ方向に順に処理し、一のコードブロックラインが終了した後、１つ下、すなわちｙ方向に１コードブロックだけ次のコードブロックラインの処理を行う場合を考えると、左上端のコードブロックの処理を行った後、次のコードブロックラインの処理に移るまで、そのコードブロックの親のタグレベルの符号を全て保持しなくてはならない。
【０００８】
画像の解像度が低い場合には、全てのタグレベルの符号を保持することは、あまり問題にはならないが、画像の解像度が高くなると、全てのタグレベルの符号を保持するためのメモリ容量が膨大となり、その処理を実現する画像処理装置のコストが増大する。
【０００９】
これを解決するために、例えば、全てのタグレベルの符号を、外部メモリに格納し、必要に応じて読み出し及び書き込みを行うと、外部メモリへのアクセスが頻発して処理工程が増大し、全体の処理速度が落ちる。さらに、ＬＳＩによって実装される場合には、外部メモリへのアクセスの増大は、消費電力の増大につながる。
【００１０】
そこで、画像内のコードブロックの処理の進行状況に応じて、例えば、高速にアクセス可能なメモリと、大容量な外部メモリとのそれぞれに、格納する符号を好適に制御する必要があるが、上記特許文献１及び２に開示の画像処理装置等の技術では、そのようなことは考慮されていない。
【００１１】
本発明は、上記の点に鑑みて、これらの問題を解消するために発明されたものであり、タグツリー構造によって符号化される情報符号の格納アドレスを好適に制御することが可能な画像処理装置を提供することを目的としている。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、本発明の画像処理装置は次の如き構成を採用した。
【００１３】
本発明の画像処理装置は、画像に対しウェーブレット変換を行って生成する異なる階層毎にコードブロックに分割し、前記コードブロック毎に、該コードブロックに係る情報の情報符号を、前記階層毎に対応するタグツリーにより生成して前記画像が符号化された符号データを生成する、画像処理装置であって、前記階層毎に、ｘ方向及びｙ方向に、一のコードブロックの大きさを一単位として前記コードブロック毎のｘ座標及びｙ座標を生成する座標生成手段と、前記コードブロック毎のｙ座標及びｘ座標をビット結合した結合値の倍数により、前記コードブロックに対応する情報符号を第一の記憶手段に格納するためのアドレスを生成するアドレス生成手段と、を有する構成とすることができる。
【００１４】
これにより、タグツリー構造によって符号化される情報符号の格納アドレスを好適に制御して画像を符号化する画像処理装置を提供することができる。
【００１５】
また、上記目的を達成するために、本発明の画像処理装置は、画像に対しウェーブレット変換を行って生成する異なる階層毎にコードブロックに分割し、前記コードブロック毎に、該コードブロックに係る情報の情報符号を、前記階層毎に対応するタグツリーにより生成して前記画像が符号化された符号データから、前記情報符号を復号して画像を生成する、画像処理装置であって、前記階層毎に、ｘ方向及びｙ方向に、一のコードブロックの大きさを一単位として前記コードブロック毎のｘ座標及びｙ座標を生成する座標生成手段と、前記コードブロック毎のｙ座標及びｘ座標をビット結合した結合値の倍数により、前記コードブロックに対応する情報符号を第一の記憶手段に格納するためのアドレスを生成するアドレス生成手段と、を有する構成とすることができる。
【００１６】
これにより、タグツリー構造によって符号化される情報符号の格納アドレスを好適に制御して符号データから画像を復号する画像処理装置を提供することができる。
【００１７】
また、上記目的を達成するために、本発明の画像処理装置は、さらに、前記結合値の倍数は、異なる情報符号毎に、該情報符号の最大ビット長を前記結合値に乗じたものであるように構成することができる。
【００１８】
これにより、情報符号のビット長にあわせて好適にアドレスを生成することができる。
【００１９】
また、上記目的を達成するために、本発明の画像処理装置は、さらに、前記第一の記憶手段が、第一の所定数の連続するビット毎に読み出し及び／又は書き込みが行われる場合に、前記アドレス生成手段は、前記結合値の倍数のうち下位の前記第一の所定数のビットを除く上位のビットからなる値を、前記情報符号を、前記第一の記憶手段から読み出し及び／又は前記第一の記憶手段に対して書き込みを行う際のオフセット値とするように構成することができる。
【００２０】
これにより、第一の記憶手段における情報符号のアドレス生成を好適に行う画像処理装置を提供することができる。
【００２１】
また、上記目的を達成するために、本発明の画像処理装置は、さらに、前記アドレス生成手段は、前記結合値の倍数のうち下位の第二の所定数のビットからなる値を、前記情報符号が格納される前記第一の記憶手段より容量の少ない第二の記憶手段におけるアドレスとして生成するように構成することができる。
【００２２】
これにより、第二の記憶手段における情報符号のアドレス生成を好適に行う画像処理装置を提供することができる。
【００２３】
また、上記目的を達成するために、本発明の画像処理装置は、さらに、前記第一の所定数と前記第二の所定数とは同じ値であるように構成することができる。
【００２４】
これにより、第一の記憶手段と第二の記憶手段との間の情報符号の移動を、効率的に行うことができる。
【００２５】
また、上記目的を達成するために、本発明の画像処理装置は、さらに、前記情報符号の前記第二の記憶手段におけるアドレスが第一の所定の値の場合に、前記第一の記憶手段から前記情報符号を読み出して前記第二の記憶手段に格納し、及び、前記情報符号の前記第二の記憶手段におけるアドレスが第二の所定の値の場合に、前記第二の記憶手段から前記情報符号を読み出して前記第一の記憶手段に格納する記憶制御手段を有するように構成することができる。
【００２６】
これにより、第一の記憶手段に対するアクセス回数を、好適に減じることができる。
【００２７】
また、上記目的を達成するために、本発明の画像処理装置は、さらに、前記第一の記憶手段は、当該画像処理装置の外部に設けられ、前記第二の記憶手段は、当該画像処理装置の内部に設けられているように構成することができる。
【００２８】
これにより、画像処理装置の外部に設けられる記憶手段と、内部に設けられる記憶手段とを、好適に使い分けることができる。
【００２９】
また、上記目的を達成するために、本発明の画像処理装置において、さらに、前記タグツリーは、異なる複数の階層であるタグレベルから構成され、一のタグレベルにおける一のコードブロックは、前記一のタグレベルの直下のタグレベルにおける、ｘ方向に多くとも２個、ｙ方向に多くとも２個のコードブロックの親ノードとして構成されるようにすることができる。
【００３０】
これにより、上記のタグツリー構造に基づく情報符号を処理する画像処理装置を提供することができる。
【００３１】
また、上記目的を達成するために、本発明の画像処理装置は、さらに、前記符号データは、ＪＰＥＧ２０００に規定される符号データであり、前記コードブロックに係る情報は、コードブロック包含情報、又は、ゼロビットプレーン情報、であるように構成することができる。
【００３２】
これにより、ＪＰＥＧ２０００に規定される符号データを処理する画像処理装置を提供することができる。
【００３３】
また、上記目的を達成するために、本発明の画像処理回路は、画像に対しウェーブレット変換を行って生成する異なる階層毎にコードブロックに分割し、前記コードブロック毎に、該コードブロックに係る情報の情報符号を、前記階層毎に対応するタグツリーにより生成して前記画像が符号化された符号データを生成する、画像処理回路であって、前記階層毎に、ｘ方向及びｙ方向に、一のコードブロックの大きさを一単位として前記コードブロック毎のｘ座標及びｙ座標を生成する座標生成手段と、前記コードブロック毎のｙ座標及びｘ座標をビット結合した結合値の倍数により、前記コードブロックに対応する情報符号を第一の記憶手段に格納するためのアドレスを生成するアドレス生成手段と、を有する構成とすることができる。
【００３４】
また、上記目的を達成するために、本発明の画像処理回路は、画像に対しウェーブレット変換を行って生成する異なる階層毎にコードブロックに分割し、前記コードブロック毎に、該コードブロックに係る情報の情報符号を、前記階層毎に対応するタグツリーにより生成して前記画像が符号化された符号データから、前記情報符号を復号して画像を生成する、画像処理回路であって、前記階層毎に、ｘ方向及びｙ方向に、一のコードブロックの大きさを一単位として前記コードブロック毎のｘ座標及びｙ座標を生成する座標生成手段と、前記コードブロック毎のｙ座標及びｘ座標をビット結合した結合値の倍数により、前記コードブロックに対応する情報符号を第一の記憶手段に格納するためのアドレスを生成するアドレス生成手段と、を有する構成とすることができる。
【００３５】
また、上記目的を達成するために、本発明の画像処理回路は、さらに、前記アドレス生成手段は、前記結合値の倍数のうち下位の第二の所定数のビットからなる値を、前記情報符号が格納される前記第一の記憶手段より容量の少ない第二の記憶手段におけるアドレスとして生成するように構成することができる。
【００３６】
また、上記目的を達成するために、本発明の画像処理回路は、さらに、前記情報符号の前記第二の記憶手段におけるアドレスが第一の所定の値の場合に、前記第一の記憶手段から前記情報符号を読み出して前記第二の記憶手段に格納し、及び、前記情報符号の前記第二の記憶手段におけるアドレスが第二の所定の値の場合に、前記第二の記憶手段から前記情報符号を読み出して前記第一の記憶手段に格納する記憶制御手段を有する構成とすることができる。
【００３７】
また、上記目的を達成するために、本発明の画像処理回路は、さらに、前記タグツリーは、異なる階層であるタグレベルから構成され、前記タグレベル毎に対応するトグルレジスタを有し、前記トグルレジスタが所定の値を保持する場合に、前記記憶制御手段は、対応するタグレベルの情報符号を、前記第一の記憶手段から読み出して前記第二の記憶手段に格納し又は前記第二の記憶手段から読み出して前記第一の記憶手段に格納し、さらに、前記トグルレジスタが保持する値を更新するように構成することができる。
【００３８】
なお、上記課題を解決するため、本発明は、さらに、上記画像処理装置が有する各手段の機能を実行させる画像処理方法としてもよい。
【発明の効果】
【００３９】
本発明の画像処理装置によれば、タグツリー構造によって符号化される情報符号の格納アドレスを好適に制御することが可能な画像処理装置を提供することが可能になる。
【発明を実施するための最良の形態】
【００４０】
本発明の実施の形態の説明に先んじて、本発明の理解を容易にするために、タグツリーを用いる画像符号化処理及び復号処理について説明する。
【００４１】
（ＪＰＥＧ２０００による画像符号化の処理の説明）
図１は、ＪＰＥＧ２０００による画像符号化処理を説明するフロー図である。図１では、画像に対して複数の処理が順に行われることにより、ＪＰＥＧ２０００に規定される符号データが生成される。図１のステップＳ１１では、画像データが画像処理を行う装置等に入力される。ステップＳ１１では、さらに、画像データが複数の色コンポーネントからなる場合には、色コンポーネント毎に画像データを分割してもよく、またさらに色空間の変換、画素値に対して所定の値を加算するレベルシフト等の処理を行ってもよい。ステップＳ１１では、さらに、画像データを、タイルと呼ばれる矩形領域に分割してもよい。
【００４２】
ステップＳ１１に続いてステップＳ１２に進み、画像データ又はタイルに分割された画像データに対してウェーブレット変換を行う。ステップＳ１２に続いてステップＳ１３に進み、ウェーブレット変換を行って得られた解像度レベル毎の変換係数に対し、ＭＱ符号化を行う。
【００４３】
ステップＳ１３に続いてステップＳ１４に進み、ステップＳ１３において生成されたＭＱ符号に、所定のヘッダ情報等を付加して、符号データを形成する。ここで形成される符号データは、例えば、ＪＰＥＧ２０００規格に従う符号データである。ステップＳ１４に続いてステップＳ１５に進み、ステップＳ１４において形成された符号データが出力される。
【００４４】
（ＪＰＥＧ２０００による符号データを復号する処理の説明）
図２は、ＪＰＥＧ２０００による画像復号処理を説明するフロー図である。図２では、符号化された画像データ（以下、「符号データ」という。）に対して、複数の処理が順に行われることにより、ＪＰＥＧ２０００に規定される符号データから画像が復号される。図２のステップＳ２１では、符号データが、画像復号を行う装置等に入力される。ステップＳ２１に続いてステップＳ２２に進み、符号データに含まれるパケット又はそのパケット等の解析を行うことにより、解像度レベル毎の変換係数のＭＱ符号及びそれらに付随するパラメータ等を得る。
【００４５】
ステップＳ２２に続いてステップＳ２３に進み、ステップＳ２２で得られたＭＱ符号を復号することにより、変換係数を得る。ステップＳ２３に続いてステップＳ２４に進み、ステップＳ２３で得られた変換係数に対し、逆ウェーブレット変換を行うことにより、画素毎の値を得る。ステップＳ２４に続いてステップＳ２５に進み、ステップＳ２４で得られた画素値に対し、色空間変換又は逆レベルシフト等の処理を行い、画像を出力する。
【００４６】
（符号データの構成の例）
図３は、符号データの構成の例を説明する図である。図３では、ＪＰＥＧ２０００による符号データの例である。符号データの冒頭には、ＳＯＣ（Ｓｔａｒｔ  ｏｆ  Ｃｏｄｅｓｔｒｅａｍ）マーカー（１）があり、それに続いてメインヘッダ（２）がある。メインヘッダ（２）には、符号化のパラメータや量子化パラメータが含まれている。
【００４７】
メインヘッダ（２）に続いて、実際の符号データがある。実際の符号データは、ＳＯＴ（Ｓｔａｒｔ  ｏｆ  Ｔｉｌｅ−Ｐａｒｔ）マーカー（３）、タイル部分ヘッダ（４）、ＳＯＤ（Ｓｔａｒｔ  ｏｆ  Ｄａｔａ）マーカー（５）、タイルデータ（６）が含まれる。  ＳＯＴマーカー（３）は、タイルに係るデータの始まりを表し、タイル部分ヘッダ（４）は、タイルのサイズ等の情報が含まれている。ＳＯＤマーカー（５）は、実際のタイル符号の開始を表す。ＳＯＴマーカ（３）からタイルデータ（６）までは、符号データに含まれるタイルの数だけ繰り返される。
【００４８】
符号データの終端には、ＥＯＣ（Ｅｎｄ  ｏｆ  Ｃｏｄｅｓｔｒｅａｍ）マーカー（７）がある。
【００４９】
（サブバンド、プリシンクト、コードブロックの説明）
図４は、ウェーブレット変換によって得られる解像度レベルのうちの一の解像度レベルにおける、サブバンド、プリシンクト、及び、コードブロックを説明する図である。一度の２次元サブバンド変換により、水平方向低域垂直方向低域成分（以下、「ＬＬ成分」という。）、水平方向低域垂直方向高域成分（以下、「ＬＨ成分」という。）、水平方向高域垂直方向低域成分（以下、「ＨＬ成分」という。）、水平方向高域垂直方向高域成分（以下、「ＨＨ成分」という。）の４つの成分、すなわち、サブバンドが得られる。ＬＬ成分に対してさらにサブバンド変換を行うことにより、解像度の異なる成分の組が得られる。
【００５０】
図４は、ＨＬ成分、ＬＨ成分、及び、ＨＨ成分の３つの成分について説明するが、解像度が最も低い解像度レベルでは、この３つの成分に加えてＬＬ成分も符号化される。
【００５１】
なお、本実施の形態においては、解像度の高い方が「解像度レベル」が低い、すなわち、解像度レベルを表す数字が小さい。また、解像度の低い方が「解像度レベル」が高い、すなわち、解像度レベルを表す数字が大きい。換言すれば、解像度が最も高い「原画像」が、解像度レベルが最低の値０に対応する。
【００５２】
図４の各成分、すなわち、サブバンドは、コードブロックと呼ばれる矩形の領域に分割されて、符号化される。コードブロックは、ｘ方向及びｙ方向に所定の数の変換係数からなる矩形領域である。また、各成分は、プリシンクトと呼ばれる矩形領域に分割された後、プリシンクト毎にコードブロックに分割されてもよい。図４では、一のプリシンクトが４つのコードブロックからなる例が示されている。
【００５３】
例えば、ＨＬ成分のプリシンクトａは、４つのコードブロックを有している。ＭＱ符号化の処理は、プリシンクト内のコードブロックを、左上から右方向に順に処理し、最上段のコードブロックの処理が全て終了した後、次の段のコードブロックを、同様に、左から右に向かって処理する。すなわち、図の水平方向をｘ方向、垂直方向をｙ方向とすると、ｘ方向に１コードブロックライン処理をした後、次のコードブロックラインの処理を行う。
【００５４】
なお、コードブロックラインとは、ｙ方向に１個コードブロックからなる複数のコードブロックがｘ方向に並んだものである。
【００５５】
プリシンクトａでは、コードブロック０、１、２、３の順に処理が行われる。
【００５６】
（レイヤの説明）
図５は、図４におけるＨＬ成分のプリシンクトａを、レイヤに分解して符号化する例を説明する図である。プリシンクトａが有するコードブロック０から３は、それぞれ、コーディングパス毎に対応するレイヤに割り当てられる。コーディングパスとは、一のビットプレーンを符号化する際に、所定の基準に基づいて選択されたビットからなるビット列であり、一のビットプレーンに対し、異なる３つの基準によって最大３つのコーディングパスが生成される。
【００５７】
図５では、各々のコードブロックのコーディングパスが、レイヤ１から１０の何れかに対応している。ここで、例えば、一のレイヤに含まれるコーディングパスの変換係数におけるビット位置は、コードブロック毎に異なっていてよい。
【００５８】
一のコードブロックにおいて、一のレイヤの情報に対応する符号の単位をパケットという。
【００５９】
（パケットヘッダとパケットデータの説明）
図６は、パケットヘッダとパケットデータとを説明する図である。図６の符号データは、「ＣＦＥ・・・」であり、そのバイナリ表現が「１１００、１１１１、１１１０、・・・」となっている。
【００６０】
バイナリ表現のうち、区間１に対応する部分が、「ゼロ長パケット」、区間２に対応する部分が、「コードブロック包含情報」、区間３に対応する部分が、「ゼロビットプレーン情報」、区間４に対応する部分が、「符号パス数」、区間５に対応する部分が、「Ｌブロック」、区間６に対応する部分が、「コードブロック符号長」、区間７に対応する部分が「バイト調整」、区間８に対応する部分が、「パケットデータ」である。区間１から区間７が、「パケットヘッダ」に対応する。
【００６１】
これらのデータのうち、後述のタグツリーによって符号化されるものは、区間２の「コードブロック包含情報」、及び、区間３の「ゼロビットプレーン情報」であるので、ここでは、それらについて説明し、他は省略する。
【００６２】
コードブロック包含情報は、注目パケット以前にそのコードブロックが含まれていない場合には、そのコードブロックが最初に包含されるレイヤ番号である。このレイヤ番号は、タグツリーによって表される。注目パケット以前にそのコードブロックが含まれている場合には、注目レイヤにコードブロックが含まれるときに１、そうで無いときに０を付加する。ゼロビットプレーン情報は、ＭＳＢ側から連続する全て０であるビットプレーンの数を表す。
【００６３】
（タグツリーの説明）
図７は、タグツリーによる情報符号の生成を説明する図である。タグツリーは、非負の整数を要素とする2次元配列を階層的に表現することで、符号化効率を向上させる手法である。２次元の原配列からスタートし、最大で4個の配列要素を一つのグループとして、その中の最小値をそのグループの代表値として一つ下のタグレベルの要素とする。なお、最大で４個とは、縦に２個、横に２個である。この操作を、要素数が１になるまで繰り返すことにより、最後の要素をルートとして各レベルの節、すなわち、ノードがツリー構造を形成する。
【００６４】
なお、タグレベルを表す数字は、小さいほど高いタグレベルを表す。
【００６５】
図７では、横６個、縦３個の要素からなる2次元配列がタグツリーで表現されている。タグレベル０が、符号化するコードブロック群に対応する。図７の例では、タグツリーレベル０から３までの４階層のタグツリーとなっている。
【００６６】
図中、ｑｉ（ｍ，ｎ）は、ｉ番目のレベルにおける左からｍ番目、上からｎ番目のノード位置の情報を表している。すなわち、その解像度におけるコードブロックのサイズを一単位として、ｍは、そのコードブロックのｘ座標、ｎは、そのコードブロックのｙ座標である。タグレベル０における各ノードの値ｑ０（ｍ，ｎ）は、二次元配列の各要素の情報そのものである。
【００６７】
図７において、タグツリーにより、ｑ０（ｍ，ｎ）を符号化する場合について、説明する。ここで、例えば、ｑｉ（ｍ，ｎ）が、そのノード位置の情報の有無を表す包含情報であるとし、情報がある場合は値１、無い場合は値０を有するとする。図中、タグレベル０において、情報のあるノードは１、情報のないノードは０が、各ノードの矩形領域の右上に付されている。
【００６８】
（１）タグレベル１の各ノードの値
まず、タグレベル１の各ノードの値について、説明する。タグレベル１では、ノードｑ１（０，０）の下位ノード（ｑ０（０，０），  ｑ０（１，０），  ｑ０（０，１），  ｑ０（１，１））には一つ以上の包含情報がある。すなわち、値１を有するノードが含まれている。そこで、ノードｑ１（０，０）の値は、１となる。ノードｑ１（１，０）の下位ノード（ｑ０（２，０），  ｑ０（３，０），  ｑ０（２，１），  ｑ０（３，１））には一つの包含情報もない。すなわち、全てのノードの値が０である。そこで、ノードｑ１（１，０）の値は０となる。同様の手順により、ノードｑ１（０，１）の値は０、ノードｑ１（１，１）の値は１、ノードｑ１（２，０）の値は０、ノードｑ１（２，１）の値は０となる。
【００６９】
（２）タグレベル２の各ノードの値
次に、タグレベル２の各ノードの値について説明する。タグレベル２では、ノードｑ２（０，０）の下位ノード（ｑ１（０，０），  ｑ１（１，０），  ｑ１（０，１），  ｑ１（１，１））には、値１を有するノードがある。そこで、ノードｑ２（０，０）の値が１となる。ノードｑ２（１，０）の下位ノード（ｑ１（２，０），ｑ１（２，１））は、全て値０である。そこで、ノードｑ２（１，０）の値が０となる。
【００７０】
（３）タグレベル３の各ノードの値
最後に、タグレベル３では、ノードｑ３（０，０）の下位ノード（ｑ２（０，０），  ｑ２（１，０））には値１を有するノードがあるから、ノードｑ２（０，０）の値が１となる。
【００７１】
以上の手順により、全てのタグレベルにおける全てのノードの値、すなわち、包含情報が求められる。
【００７２】
（４）タグツリーによる情報符号の生成
タグツリーを用いた、ｑｉ（ｍ，ｎ）の一行目の各要素の情報符号について、説明する。
【００７３】
ｑ０（０，０）は配列の最初の要素であるから、その情報符号は、最上位タグであるタグレベル３から最下位タグであるタグレベル０までを結合した値となり、「１１１１」となる。ｑ０（１，０）は配列の２番目の要素であり、タグレベル３から１までの親ノードは、ｑ０（０，０）と同一であるので、その部分は省略する。したがって、ｑ０（１，０）の情報符号は自身の値のみとなり、「０」となる。
【００７４】
ｑ０（２，０）は配列の３番目の要素で、タグレベル３から２までの親ノードは、ｑ０（０，０）と同一である。そこで、タグレベル１の値及び自身の値を結合した値を考えると００となる。しかし、直上であるタグレベル１の値は０であることから、その下層のタグの値は全て０であることが自明である。したがって、ｑ０（２，０）の情報符号はタグレベル１の値である「０」となる。ｑ０（３，０）は配列の４番目の要素であり、タグレベル３から１までの親ノードはｑ０（２，０）と同一である。したがって、ｑ０（３，０）の情報符号は自身の値のみとなり、「０」となる。
【００７５】
ｑ０（４，０）は配列の５番目の要素で、タグレベル３の包含情報はｑ０（０，０）と同一である。そこで、タグレベル２からタグレベル０までを結合した値を考えると０００となる。しかし、上位のタグレベル２の値は０であり、それより下層のタグの値は全て０であることが自明であるため、ｑ０（４，０）の情報符号はタグレベル２の値である「０」となる。
【００７６】
ｑ０（５，０）は配列の６番目の要素で、タグレベル３から１までの親ノードはｑ０（４，０）と同一であるので、その情報符号は自身の値のみとなり、「０」となる。
【００７７】
（タグツリー情報の格納場所の制御方法）
タグツリーによって表現される情報符号を処理する際に、その情報符号をメモリ等格納する方法について、以下説明する。なお、タグツリーによって表現される情報符号を「タグツリー情報」という。
【００７８】
符号化処理の際に、ＭＱ符号化されたＭＱ符号からＪＰＥＧ２０００の符号を生成する処理、又は、復号処理の際に、ＪＰＥＧ２０００の符号データからＭＱ符号を取り出す処理において、パケットヘッダに記述されているコードブロックのタグツリー情報を解析する。その際、解析したタグツリー情報を、内部バッファ及び／又は外部メモリに格納して解析を行う。
【００７９】
内部バッファは、例えば、読み出し及び書き込みを高速に行うことができる記憶回路であり、外部メモリは、例えば、内部バッファに比べて読み出し及び書き込みの速度やバス幅等の条件があるが、記憶容量が大きな記憶回路である。
【００８０】
ここで、以下の２通りの格納方法が考えられる。一つは、全てのタグツリー情報を内部バッファに保存し、符号解析が終了した後に、外部メモリに書き込む方法である。以下、これを、「タグツリー情報の一括リード・ライト方法」という。もう一つは、タグツリー情報を、外部メモリに格納し、符号解析に必要な時に、内部バッファに読み出す方法である。以下、これを「タグツリー情報の随時リード・ライト方法」という。
【００８１】
タグツリー情報の一括リード・ライト方法では、プリシンクトを使用しない場合、サブバンドの符号解析時にコードブロックのタグツリー情報を内部バッファに記録していき、サブバンドの符号解析終了時に内部バッファに格納されている情報を外部メモリに一括して書き込む。このようにしてＪＰＥＧ２０００符号ストリーム内の色コンポーネント毎及び解像度レベル毎のサブバンドの解析を順次行っていく。プリシンクトを使用する時は、色コンポーネント毎及び解像度レベル毎に、符号化される全てのサブバンドのコードブロックのタグツリー情報を格納できる内部バッファを保持し、符号ストリーム解析開始時にこれらの情報を外部メモリから一括して読み出して内部バッファに格納し、符号ストリーム解析終了時に内部バッファに格納されている情報を外部メモリに一括して書き込む。
【００８２】
一方、タグツリー情報の随時リード・ライト方法では符号データの解析処理の間、サブバンド内の一のコードブロックの処理に必要なタグツリー情報を、外部メモリから読み出し、また、そのコードブロックの処理中に生成されたタグツリー情報を、内部バッファから読み出して外部メモリに書き込む。このようにしてＪＰＥＧ２０００符号データ内の色コンポーネント毎及び解像度レベル毎のサブバンドの解析を順次行っていく。
【００８３】
本発明の実施の形態は、タグツリー情報の随時リード・ライト方法において、外部メモリへの読み出し及び書き込みのタイミングを好適に制御するものである。以下、本発明の実施の形態を図面に基づき説明する。
〔第一の実施の形態〕
（本発明の一実施の形態に係る画像処理装置の機能構成の例（その１））
図８は、本発明の一実施の形態に係る画像処理装置の機能構成の例を説明する図である。図８の画像処理装置１は、入力される画像データを、複数の処理手段によって処理して、符号データを生成する。画像処理装置１は、例えば、符号形成手段１４０を有し、さらに、入力画像データ処理手段１１０、ウェーブレット変換手段１２０、ＭＱ符号生成手段１３０、又は、第二の記憶手段１５０を有してもよい。
【００８４】
符号形成手段１４０は、ＭＱ符号化された変換係数に付随する様々なパラメータを生成し、それらの符号と変換係数とを含むパケットとして構成する。さらにパケットを所定の順に並べて所定のヘッダ情報を付加することにより、符号データを生成する。
【００８５】
符号形成手段１４０は、例えば、情報符号生成手段１４１、座標生成手段１４２、及び、アドレス生成手段１４３を有する。符号形成手段１４０は、さらに、記憶制御手段１４４又はレジスタ１４５を有してもよい。
【００８６】
情報符号生成手段１４１は、タグツリーによって表現される情報符号であるタグツリー情報を生成する手段である。情報符号生成手段１４１は、例えば、上記「（４）タグツリーによる情報符号の生成」に記載の手順により、タグツリー情報を生成する。
【００８７】
座標生成手段１４２は、解像度毎に、コードブロックのサイズを一単位として、各コードブロックのｘ座標及びｙ座標を生成する手段である。アドレス生成手段１４３は、タグツリー情報を記憶手段に格納する際のアドレスを生成する手段である。
【００８８】
また、記憶制御手段１４４は、レジスタ１４５の値を設定し、さらにレジスタ１４５の値に基づき、第二の記憶手段１５０、第一の記憶手段１９０のそれぞれに格納する情報符号を決定し、読み出し又は書き込みを行う。
【００８９】
レジスタ１４５は、記憶手段１４４によって値が設定される。レジスタ１４５が保持する値は、異なるタグツリー情報毎に、それぞれ、読み出し、又は、書き込みを行うタイミングを制御するものである。
【００９０】
第二の記憶手段１５０は、符号形成手段１４０によって処理されるタグツリー情報を格納する手段である。第二の記憶手段１５０は、例えば、高速に読み出し及び書き込みが可能な、画像処理装置１の内部バッファとして構成される。
【００９１】
入力画像データ処理手段１１０は、入力される画像データを処理する手段である。入力画像データ処理手段１１０は、例えば、図１のステップＳ１１における処理を実行する。ウェーブレット変換手段１２０は、画像データに対して、２次元ウェーブレット変換を行う手段である。ウェーブレット変換手段１２０は、例えば、図１のステップＳ１２における処理を実行する。ＭＱ符号生成手段１３０は、ウェーブレット変換によって生成された変換係数を、ＭＱ符号化する手段である。ＭＱ符号生成手段１３０は、例えば、図１のステップＳ１３における処理を実行する。
【００９２】
第一の記憶手段１９０は、画像処理装置１が処理するデータを格納する記憶手段であって、例えば、第二の記憶手段１５０よりも、大容量のデータを格納し、所定のバス幅によって読み出し及び／又は書き込みが可能なＳＤＲＡＭとして構成される。第二の記憶手段は、例えば、画像データ、変換係数、又は、タグツリー情報を格納する。
【００９３】
（本発明の一実施の形態に係る画像処理装置の機能構成の例（その２））
図９は、本発明の一実施の形態に係る画像処理装置の機能構成の例を説明する図である。図９の画像処理装置２は、入力される符号データを、複数の処理手段によって処理して、画像を復号した画像データを生成する。画像処理装置２は、例えば、符号解析手段２４０を有し、さらに、出力画像データ処理手段２１０、逆ウェーブレット変換手段２２０、ＭＱ復号手段２３０、又は、第二の記憶手段２５０を有してもよい。
【００９４】
符号解析手段２４０は、入力された符号データから、メインヘッダ、タイル部分ヘッダ等のヘッダ情報を解析してパケットを取り出し、タグツリー情報を復号する。符号解析手段２４０は、さらに、ＭＱ符号を取り出し、ＭＱ復号手段２３０に出力する。
【００９５】
符号解析手段２４０は、例えば、情報符号解析手段２４１、座標生成手段２４２、及び、アドレス生成手段２４３を有する。符号解析手段２４０は、さらに、記憶制御手段２４４又はレジスタ２４５を有してもよい。
【００９６】
情報符号解析手段２４１は、タグツリーによって表現される情報符号であるタグツリー情報を解析して復号する手段である。情報符号解析手段２４１は、例えば、上記「（４）タグツリーによる情報符号の生成」に記載の手順の逆の手順により、タグツリー情報から包含情報等の値を取得する。
【００９７】
座標生成手段２４２は、解像度毎に、コードブロックのサイズを一単位として、各コードブロックのｘ座標及びｙ座標を生成する手段である。アドレス生成手段２４３は、タグツリー情報を記憶手段に格納する際のアドレスを生成する手段である。
【００９８】
また、記憶制御手段２４４は、レジスタ２４５の値を設定し、さらにレジスタ２４５の値に基づき、第二の記憶手段２５０、第一の記憶手段２９０のそれぞれに格納する情報符号を決定し、読み出し又は書き込みを行う。
【００９９】
レジスタ２４５は、記憶手段２４４によって値が設定される。レジスタ２４５が保持する値は、異なるタグツリー情報毎に、それぞれ、読み出し、又は、書き込みを行うタイミングを制御するものである。
【０１００】
第二の記憶手段２５０は、符号解析手段２４０によって処理されるタグツリー情報を格納する手段である。第二の記憶手段２５０は、例えば、高速に読み出し及び書き込みが可能な、画像処理装置２の内部バッファとして構成される。
【０１０１】
出力画像データ処理手段２１０は、出力される画像データを処理する手段である。出力画像データ処理手段２１０は、例えば、図２のステップＳ２５における処理を実行する。逆ウェーブレット変換手段２２０は、変換係数に対して、２次元逆ウェーブレット変換を行う手段である。逆ウェーブレット変換手段２２０は、例えば、図２のステップＳ２４における処理を実行する。ＭＱ復号手段２３０は、ＭＱ符号を復号して、ウェーブレット変換によって得られた変換係数を取得する手段である。ＭＱ復号手段２３０は、例えば、図２のステップＳ２３における処理を実行する。
【０１０２】
第一の記憶手段２９０は、画像処理装置２が処理するデータを格納する記憶手段であって、例えば、第二の記憶手段２５０よりも、大容量のデータを格納し、所定のバス幅によって読み出し及び／又は書き込みが可能なＳＤＲＡＭとして構成される。第二の記憶手段は、例えば、画像データ、変換係数、又は、タグツリー情報を格納する。
【０１０３】
なお、図８の画像処理装置１と図９の画像処理装置２とは、一の画像処理装置として構成されてもよい。例えば、入力画像データ処理手段１１０と出力画像データ処理手段２１０とは、同一又は一部を共有する回路又は装置等の手段によって実現されてもよい。ウェーブレット変換手段１２０と逆ウェーブレット変換手段２２０、ＭＱ符号生成手段１３０とＭＱ復号手段２３０、符号生成手段１４０と符号解析手段２４０も、同様に、それぞれ、同一又は一部を共有する回路又は装置等の手段によって実現されてよい。
【０１０４】
さらに、第二の記憶手段１５０と第二の記憶手段２５０、第一の記憶手段１９０と第一の記憶手段２９０も、同様に、それぞれ、同一又は一部を共有する回路又は装置等の手段によって実現されてよい。
【０１０５】
なお、第二の記憶手段１５０又は第二の記憶手段１５０は、必ずしも画像処理装置の内部に設けられなくてよい。また、第一の記憶手段１９０又は第一の記憶手段２９０も、同様に、必ずしも画像処理装置の外部に設けられなくてよい。
【０１０６】
（タグツリー情報の随時リード・ライト方法の例のフロー図）
図１０は、本発明の一実施の形態に係るタグツリー情報の随時リード・ライト方法の処理の概略の例のフロー図である。図１０は、復号処理の例であるが、符号化処理の場合のタグツリー情報の随時リード・ライト方法は、図８及び図９より、復号時の処理から容易に理解できるので、ここでは説明を省略する。
【０１０７】
図１０は、ＪＰＥＧ２０００による符号データのメインヘッダ及びタイル部分ヘッダの解析が終了し、取得されたパケットの内部を解析する処理の例である。パケット解析とは、パケットヘッダを解析する処理とパケットデータを取得する処理が含まれる。図１０の処理は、例えば、図９の画像処理装置２によって実行される。
【０１０８】
なお、「リード」とは、外部メモリである第一の記憶手段２９０から、タグツリー情報を読み出すことであり、「ライト」とは、外部メモリである第一の記憶手段２９０に対し、タグツリー情報を書き込むことである。また、図中「メモリ」とは「第一の記憶手段２９０」をいう。
【０１０９】
図１０のステップＳ１０１では、符号解析手段２４０が、そのパケットが含まれるコードブロックの処理を開始する。ステップＳ１０１に続いてステップＳ１０２に進み、記憶制御手段２４４が、第一の記憶手段１９０から、既に解析が終了したタグツリー情報を取得する必要があるか否かを判断する。必要がある場合には、ステップＳ１０３に進み、必要が無い場合には、ステップＳ１０４に進む。なお、必要の有無は、例えば、レジスタ２４５に格納されたパラメータ等の値を参照して判断してもよい。
【０１１０】
ステップＳ１０２に続くステップＳ１０３では、記憶制御手段２４４が、タグツリー情報を第一の記憶手段２９０から読み出す。ステップＳ１０３又はステップＳ１０２に続くステップＳ１０４では、記憶制御手段２４４が、ステップＳ１０３で読み出されたタグツリー情報を、内部バッファである第二の記憶手段２５０に格納する。
【０１１１】
ステップＳ１０４に続いてステップＳ１０５に進む。なお、ステップＳ１０４とステップＳ１０５との間に、タグツリー情報からコードブロックに係る情報を復号してもよい。コードブロックに係る情報とは、例えば、ＪＰＥＧ２０００規格における、ゼロビットプレーン情報、及び／又は、コードブロック包含情報である。
【０１１２】
ステップＳ１０５では、記憶制御手段２４４が、第二の記憶手段２５０に格納されているタグツリー情報のうち、第一の記憶手段２９０に書き込むタグツリー情報の有無を判断する。書き込むタグツリー情報がある場合には、ステップＳ１０６に進み、無い場合には、ステップＳ１０７に進む。なお、書き込むタグツリー情報の有無の判断は、例えば、レジスタ２４５に格納されたパラメータ等を参照して判断してもよい。
【０１１３】
ステップＳ１０５に続くステップＳ１０６では、記憶制御手段２４４が、第二の記憶手段２５０に格納されたタグツリー情報のうち、ステップＳ１０５で、書き込むと判断されたタグツリー情報を、第二の記憶手段２５０から読み出して、第一の記憶手段２９０に書き込む。
【０１１４】
ステップＳ１０５又はステップＳ１０６に続いてステップＳ１０７に進み、符号解析手段２４０が、そのコードブロックの処理を終了する。
【０１１５】
（コードブロックの処理と、タグツリー情報の格納状態を説明する図）
図１１は、コードブロックの処理と、タグツリー情報の格納状態を説明する図であって、例えば、図７で説明されたタグツリー構造によるタグツリー情報を解析する場合の処理の例である。なお、タグツリー情報を生成する場合の処理において、外部メモリから読み出して内部バッファに格納し、又は、内部バッファから読み出して外部メモリに格納する処理は、タグツリー情報を解析する処理から容易に理解できるので、ここでは説明を省略する。
【０１１６】
また、図１１において、外部メモリとは、例えば、図９における第一の記憶手段２９０であり、内部バッファとは、例えば、図９における第二の記憶手段２５０である。内部バッファは、また例えば、タグレベル毎に格納場所が定められている。図１１の例では、タグレベル３からタグレベル１に対して１ビットずつ、タグレベル０に対して２ビットが割り当てられる。
【０１１７】
図１１では、コードブロックＣＢ１からＣＢ８までの８個のコードブロックに対し、それぞれのコードブロックに係る情報の情報符号が解析され取得される。図１１の例では、例えば、図示しない制御部等によって、コードブロック毎に所定の処理時間が割り当てられている。図示しない制御部は、処理時間毎に、処理するコードブロックを指定し、それぞれの処理手段に対し、処理を実行させる。
【０１１８】
まず、処理時間ｔ１において、コードブロックＣＢ１のタグツリー情報の解析が行われる。ここでは、情報符号解析手段２４１が、タグツリー情報を順に解析して取得し、内部バッファに格納する。処理時間ｔ１における処理は、より詳細には、次の順で行われる。まず、タグレベル３の包含情報が解析されて内部バッファに格納される。ここで、タグレベル３の格納場所の全てに、包含情報が格納される。すなわち状態がＦＵＬＬである。
【０１１９】
続いて、タグレベル２の包含情報が解析されて内部バッファに格納される。ここで、タグレベル２の格納場所の格納場所の全てに、包含情報が格納される。すなわち状態がＦＵＬＬである。さらに、タグレベル１の包含情報が解析されて内部バッファに格納される。ここで、タグレベル１の格納場所の格納場所の全てに、包含情報が格納される。すなわち状態がＦＵＬＬである。
【０１２０】
最後に、タグレベル０の包含情報が解析されて内部バッファに格納される。タグレベル０の格納場所は、２ビットであるため、ここでは、まだ状態はＦＵＬＬではない。
【０１２１】
次に、コードブロックＣＢ２の処理を行う処理時間ｔ２に移る。コードブロックＣＢ２は、コードブロックＣＢ１と、タグレベル１からタグレベル３までの包含情報を共有している。そこで、タグレベル３の包含情報のみが解析され、内部バッファに格納される。ここで、タグレベル３の格納場所の格納場所の全てに、包含情報が格納され、状態がＦＵＬＬとなる。
【０１２２】
処理時間ｔ２において、内部バッファの各タグレベルに対応する格納場所の状態が、全てＦＵＬＬになった後、内部バッファに格納されている包含情報を、外部メモリに書き込む。これにより、内部バッファの容量が再び回復され、次の処理を行うことができる。
【０１２３】
処理時間ｔ３からｔ８においても、処理時間ｔ１及びｔ２と同様に、内部バッファに格納された包含情報を、所定のタイミングで、外部メモリとに書き込むことにより、タグツリー情報の随時リード・ライト方法が実現される。
【０１２４】
（タグツリー情報を格納するアドレスの説明）
図１２は、タグツリー情報を格納するアドレスを説明する図である。図１２では、解像度レベルおよびプリシンクト情報をもとに、サブバンド内コードブロックの空間的座標位置（ｘ、ｙ）から一定ビット幅の値だけを取り出し再構成することにより、内部バッファのメモリアドレスオフセットおよび当該コードブロックタグツリー情報のバッファ内位置を同時かつ簡単に決定することができる。
【０１２５】
図１２のアドレス生成は、座標生成手段１４２及びアドレス生成手段１４３、又は、座標生成手段２４２及びアドレス生成手段２４３によって実現される。
【０１２６】
図１２では、コードブロックのサイズを一単位とするアドレスによって、座標生成手段１４２又は座標生成手段２４２によって、コードブロック毎にアドレス（ｃｂ＿ｘ＿ｃｎｔ，ｃｂ＿ｙ＿ｃｎｔ）が割り当てられている。また、ｒｂ＿ｔｉ１は、ｃｂ＿ｘ＿ｃｎｔとｃｂ＿ｙ＿ｃｎｔをビット結合した結合値である。
【０１２７】
ｃｂ＿ｘ＿ｃｎｔ及びｃｂ＿ｙ＿ｃｎｔのビット長は、処理するサブバンドの解像度レベル又はプリシンクトの解像度によって異なる。一方、ｒｂ＿ｔｉ１は、内部バッファの容量及び、外部メモリにアクセスする際のバス幅に基づく、固定長の値である。図１２の例では、ｒｂ＿ｔｉ１のビット長は１３ビットである。
【０１２８】
例えば、縦横それぞれ３２個の変換係数からなるコードブロックを処理する場合、プリシンクトのサイズが縦横それぞれ１２８個の変換係数からなる場合には、一のプリシンクトには、縦４個、横４個の計１６個のコードブロックが含まれる。そこで、ｃｂ＿ｘ＿ｃｎｔ及びｃｂ＿ｙ＿ｃｎｔのビット長は、それぞれ２ビットあればよい。この場合、アドレス生成手段１４３又はアドレス生成手段２４３によって、ｒｂ＿ｔｉ１の下位４ビットに、ｃｂ＿ｘ＿ｃｎｔ及びｃｂ＿ｙ＿ｃｎｔをビット結合した結合値が代入され、残る上位の９ビットには値０が代入される。
【０１２９】
また例えば、コードブロックのサイズが同様に縦横３２個の変換係数であり、プリシンクトのサイズが縦横それぞれ２５６個の変換係数からなる場合には、一のプリシンクトには、縦８個、横８個の計６４個のコードブロックが含まれる。そこで、ｃｂ＿ｘ＿ｃｎｔ及びｃｂ＿ｙ＿ｃｎｔのビット長は、それぞれ３ビットあればよい。この場合、ｒｂ＿ｔｉ１の下位６ビットに、ｃｂ＿ｘ＿ｃｎｔ及びｃｂ＿ｙ＿ｃｎｔをビット結合した結合値が代入され、残る上位の７ビットには値０が代入される。
【０１３０】
図１２の例では、内部バッファの容量が３２ビットである。したがって、内部バッファ内のアドレスを表現するには、５ビットあればよい。そこで、アドレス生成手段１４３又はアドレス生成手段２４３は、ｒｂ＿ｔｉ１の下位５ビットを、内部バッファにおけるアドレスとする。
【０１３１】
さらに、外部メモリが、例えば、ＳＤＲＡＭとして構成される場合には、所定のバス幅の単位で、読み出し又は書き込みが行われる。ｒｂ＿ｔｉ１から、このバス幅、すなわち、バーストレングスに相当するビット長分だけ、下位ビットを除いた残りのビットによって構成される値を、外部メモリにアクセスする際のアドレスオフセット値とすることにより、効率良く外部メモリに対してアクセスを行うことができる。
【０１３２】
ここで、バーストレングスと内部バッファの容量とを同一にすることにより、外部メモリから一度に読み出す情報を全て内部バッファに格納することができ、又は、内部バッファに格納された値を全て、一度に外部メモリに書き込むことができ、効率良く外部メモリに読み出し又は書き込みを行うことができる。
【０１３３】
なお、タグツリー情報の種類が複数の場合には、異なるタグツリー情報毎に割り当てられた内部バッファ内の容量と、バーストレングスとを同一にすることにより、タグツリー情報毎に、外部メモリから一度に読み出す情報を、全て内部バッファに格納することができる。
【０１３４】
図１３は、図１２のアドレス生成を実現する、ハードウェア記述言語によるレジスタ転送レベルの表現例である。図１３において、Ｐｒｅ＿ｏｋはプリシンクト使用の有無、Ｐｒｅｓｉｚｅはプリシンクトのサイズ、ｌｅｖｅｌｎは解像度レベルｎを表す。また、ｒｂ＿ｔｉ１、ｒｂ＿ｚｉ１、ｒｂ＿ｚｎ１はタグレベル１における、ｃｂ＿ｘ＿ｃｎｔ及びｃｂ＿ｙ＿ｃｎｔをビット結合した結合値であって、それぞれ、コードブロック包含情報、ゼロビットプレーン包含情報、及び、ゼロビットプレーン情報である。なお、ゼロビットプレーン包含情報とは、ゼロビットプレーン情報を含むか否かを表す情報である。
【０１３５】
（コードブロック包含情報の格納の制御の説明）
図１４は、タグツリー情報を内部バッファから読み出して外部メモリに書き込み、又は、外部メモリから読み出して内部バッファに格納するタイミングの制御を説明する図であり、図１５は、図１４の処理を実現する、ハードウェア記述言語によるタイミング判定の表現例である。
【０１３６】
図１４は、タグレベル３のコードブロックの、コードブロック包含情報のタイミングの例である。図１４において、コードブロック包含情報を内部バッファから読み出して外部メモリに書き込むタイミングは、図中の斜線でハッチングされたコードブロックにおけるタグツリー情報の処理が終了した後である。内部バッファにおけるタグレベル３の格納場所の状態がＦＵＬＬになった時に、内部バッファから外部メモリに情報を移すことにより、一の情報毎に内部バッファから外部メモリへ移す場合よりも、外部メモリへのアクセス回数を少なくし、全体の処理を高速にすることができる。
【０１３７】
コードブロック包含情報は、１ビットで表される。そこで、内部バッファが３２ビットの容量の場合に、その状態がＦＵＬＬになるのは、３２個のコードブロックを処理する毎である。コードブロック包含情報の内部バッファにおけるアドレスは、図１２に基づいて説明したように、順にコードブロックが処理されるのに対応して、内部バッファ内で、１ずつ加算された値が割り当てられる。
【０１３８】
そこで、図１５では、記憶制御手段１４４又は記憶制御手段２４４が、内部バッファの所定のアドレスにタグツリー情報が格納された場合に、外部メモリへの書き込みを実行する。すなわち、タグツリー情報が書き込まれた内部バッファのアドレスが所定の値であるか否かを判断している。
【０１３９】
図１５では、内部バッファの格納場所のアドレスが０から３１の数で表される場合に、３１で表されるアドレスに情報が格納された時を、外部メモリへの書き込みタイミングとする。図１５の式（１）では、ｍａｔｗｔｉ３の値が０では無い場合に、外部メモリへの書き込みが行われる。
但し、
ｐａｃｋｅｔ＿ｈｄは、パケットヘッダの処理期間、
ｐａｃｋｅｔ＿ｄｔはパケットヘッダとパケットデータの処理期間、
ｌａｙ＿ｆｉｒｓｔはレイヤ情報、
ｒｎ＿ｅｎｂはタグレベルｎの包含情報の有無、
ｂｎ＿ｔｉｍはタグレベルｍのコードブロック包含情報のバッファ内位置、
Ｔ３ｕｃｄは、そのコードブロックが、タグレベル３において最初のコードブロックラインに含まれているか否かを表す情報、
である。
【０１４０】
なお、「処理期間」とは、図１５の処理を実現する回路等において、図示しない制御部によって制御される、そのデータを処理している時間をいう。また、レイヤ情報とは、そのレイヤが、そのコードブロックの最初のレイヤか否かを表す情報である。
【０１４１】
図１４に戻り、外部メモリからコードブロック包含情報を読み出して、内部バッファに格納するタイミングは、図中のグレーでハッチングされたコードブロックにおけるタグツリー情報の処理の前である。ここで、内部バッファの容量に等しいだけのコードブロック包含情報をまとめて読み出すことにより、一のコードブロックの処理毎に読み出すよりも、外部メモリへのアクセス回数を減じ、全体の処理を高速にすることができる。
【０１４２】
コードブロック包含情報は、１ビットで表されるので、内部バッファが３２ビットの容量の場合には、コードブロック３２個分のコードブロック包含情報を一括して読み出すとよい。コードブロック包含情報の内部バッファにおけるアドレスは、図１２に基づいて説明したように、順にコードブロックが処理されるのに対応して、内部バッファ内で、１ずつ加算された値が割り当てられる。
【０１４３】
そこで、図１５の式（２）では、内部バッファの格納場所のアドレスが０から３１の数で表される場合に、０で表されるアドレスのコードブロック包含情報を処理する時を、外部メモリからの読み出しタイミングとする。図１５では、ｍａｔｒｔｉ３の値が０では無い場合に、外部メモリからの読み出しが行われる。但し、変数名の意味は、式（１）と同じである。
【０１４４】
（ゼロビットプレーン包含情報の格納の制御の説明）
図１６及び図１７は、ゼロビットプレーン包含情報の格納の制御を説明する図である。ゼロビットプレーン包含情報は、コードブロック包含情報と同じく、１ビットであらわされる。そこで、コードブロック包含情報と同じタイミングで、外部メモリからの読み出し、又は、外部メモリへの書き込みを行うとよい。
【０１４５】
図１６において、外部メモリからの読み出すタイミングのコードブロックは、グレーのハッチングで表され、外部メモリへの書き込みタイミングのコードブロックは斜線のハッチングで表される。これらのタイミングは、図１４と同一であるので、ここでは説明を省略する。
【０１４６】
図１７は、図１６の処理を実現する、ハードウェア記述言語によるタイミング判定の表現例である。図１７の式（３）では、ｍａｔｗｚｉ３の値が０では無い場合に、外部メモリへの書き込みが行われ、式（４）では、ｍａｔｒｚｉ３の値が０では無い場合に、外部メモリからの読み出しが行われる。但し、ｂｎ＿ｚｉｍはタグレベルｍのゼロビットプレーン包含情報のバッファ内のアドレスを表し、その他の変数名の意味は、式（１）及び式（２）と同一である。図１７の式（３）及び式（４）によって制御されるタイミングは、それぞれ、図１５の式（１）及び式（２）と同一である。
【０１４７】
（ゼロビットプレーン情報の格納の制御の説明）
図１８及び図１９は、ゼロビットプレーン情報の格納の制御を説明する図である。ゼロビットプレーン情報は、コードブロック包含情報及びゼロビットプレーン包含情報と異なり、多ビットで表される。そこで、コードブロック包含情報等よりも、外部メモリとのアクセスが増える。しかし、内部バッファの容量と処理するコードブロックとに基づいて、外部メモリにアクセスすることにより、一のコードブロック毎にアクセスするよりも、外部メモリとのアクセスの頻度を減らすことができ、全体の処理速度を高めることができる。
【０１４８】
図１９は、図１８の処理を実現する、ハードウェア記述言語によるタイミング判定の表現例である。図１９の式（５）では、ｍａｔｗｚｎ３の値が０では無い場合に、外部メモリへの書き込みが行われ、式（６）では、ｍａｔｒｚｎ３の値が０では無い場合に、外部メモリからの読み出しが行われる。但し、ｂｎ＿ｚｎｍはタグレベルｍのゼロビットプレーン情報の内部バッファ内のアドレスを表し、その他の変数名の意味は、式（１）及び式（２）と同一である。
【０１４９】
（メモリアクセスリストによる外部メモリからの読み出しタイミングの制御の例）
図２０は、メモリアクセスリストに基づく、外部メモリからの読み出しタイミングの制御のフロー図である。メモリアクセスリストとは、図１４から図１９で説明した、コードブロックの処理期間に対応する外部メモリへのアクセス制御に、さらに、その処理期間において、どのタグレベルのタグツリー情報が必要となるかを判断するものである。
【０１５０】
例えば、図７において、ｑ０（０，０）を処理する場合には、ｑ１（０，０）からｑ３（０，０）までの全ての親ノードのタグツリー情報を読み出す必要がある。しかし、ｑ０（１，０）は、タグレベル１からタグレベル３までの親ノードが、ｑ０（０，０）と同一であるために、自身のタグツリー情報のみ読み出されればよい。
【０１５１】
図２０は、メモリアクセスリストに基づき、記憶制御手段２４４が、レジスタ２４５の値を設定することにより、そのコードブロックを処理する際に必要なタグツリー情報の読み出しの制御を行う。レジスタ２４５は、トグルレジスタとして構成されてもよい。トグルレジスタとは、所定のビット長の値を保持し、１の入力毎に、その値が１ずつ加算され、そのビット長における最大の値になった場合に、その次の値は、そのビット長における最小の値に戻るレジスタである。
【０１５２】
図２０のステップＳ２０１では、図示しない制御部等によって、現在処理しているコードブロックの処理期間において、外部メモリからの読み出しの判定が開始される。ここで、レジスタ２４５の値は、記憶制御手段２４４により「ＯＦＦ１」に設定される。ステップＳ２０１に続いてステップＳ２０２に進み、記憶制御手段２４４が、図１４から図１９において説明された外部メモリからの読み出しタイミングの制御に基づき、読み出すタグツリー情報があると判断される場合には、レジスタ２４５の値を「ＯＮ１」に設定し、ステップＳ２０３に進む。読み出すタグツリー情報が無い場合には、ステップＳ２０９に進む。
【０１５３】
ステップＳ２０２に続くステップＳ２０３では、記憶制御手段２４４が、読み出すことを設定しても良いか否かを判断する。設定しても良い場合には、レジスタ２４５の値を「ＯＮ２」に設定し、ステップＳ２０４に進む。一方、設定することができない場合には、ステップＳ２０３を繰り返す。
【０１５４】
ステップＳ２０３に続くステップＳ２０４では、記憶制御手段２４４が、メモリアクセスリストに基づき、対象となるコードブロック毎に、読み出すタグレベルを判定する。読み出すタグレベルがある場合には、ステップＳ２０５に進み、読み出すタグレベルが無い場合には、ステップＳ２０４を繰り返す。
【０１５５】
ステップＳ２０４に続くステップＳ２０５では、タグレベルｎの順番か否かを判定する。ここでは、タグレベルｎの順番になるまでステップＳ２０５を繰り返し、タグレベルｎの順になった場合に、ステップＳ２０６に進む。
【０１５６】
ステップＳ２０５に続くステップＳ２０６では、タグレベルｎのタグツリー情報を、外部メモリから読み出す。ステップＳ２０６に続いてステップＳ２０７に進み、タグレベルｎの読み出しが終了したか否かを判断する。終了していない場合には、読み出しを続け、終了した場合には、記憶制御手段２４４が、レジスタの値を「ＯＦＦ２」にした後、ステップＳ２０８に進む。
【０１５７】
ステップＳ２０８等に続くステップＳ２０９では、図示しない制御部等によって、現在処理しているコードブロックの処理期間において、外部メモリからの読み出しの判定が終了される。
【０１５８】
（メモリアクセスリストによる外部メモリへの書き込みタイミングの制御の例）
図２１は、メモリアクセスリストに基づく、外部メモリへの書き込みタイミングの制御のフロー図である。所定の判断に基づき実行される処理が、図２０では「外部メモリからの読み出し」であるのに対し、図２１では「外部メモリへの書き込み」である他は、図２０と図２１とで、判断の基準等は同一である。したがって、図２１のフローは、図２０のフローの説明から容易に理解できるので、ここでは説明を省略する。
（本発明の実施の形態による効果）
上記の実施の形態による効果について考察する。
【０１５９】
図２２は、原画像の画像サイズが８１９２画素×８１９２画素、サブバンドを繰り返すことによって生じる解像度レベルが８、コードブロックサイズが３２のデータを説明する図である。ここで、一のコードブロックのタグツリー包含情報は１ビット、ゼロビットプレーン包含情報は１ビット、ゼロビットプレーン情報は４ビットである。
（Ａ）「タグツリー情報の一括リード・ライト方法」における、内部バッファの容量と外部メモリへのアクセス回数
プリシンクトを使用しない場合は、コードブロックのタグツリー包含情報を解析するのに必要な内部バッファの容量は１６３８４である。これにゼロビットプレーン包含情報とゼロビットプレーン情報を加えると９８３０４となる。
【０１６０】
内部バッファ情報をメモリにリード又はライトする時のアクセス回数はレイヤ１枚で３２ビット幅バス使用の場合のとき次のようになる。
【０１６１】
各解像度レベル全サブバンドのコードブロックのタグツリー包含情報は（１＋（１＋１＋２＋８＋３２＋１２８＋５１２）×３）＝２０５３回、ゼロビットプレーン包含情報は（１＋（１＋１＋２＋８＋３２＋１２８＋５１２）×３）＝２０５３回、ゼロビットプレーン情報は（１＋（１＋２＋８＋３２＋１２８＋５１２＋２０４８）×３）＝８１９４、であり、合計で１２３００回である。色コンポーネントの数が３の場合は、さらに、、アクセス回数は３６９００回となる。また、レイヤが２枚以上あるときは、３６９００×Ｎ（Ｎはレイヤ数）回となる。
【０１６２】
プリシンクトを使用する場合は、色コンポーネント毎及び解像度レベル毎に、全サブバンドの情報が必要で、この時コードブロックのタグツリー包含情報を解析するのに必要な内部バッファの数は６５５３５。これにゼロビットプレーン包含情報とゼロビットプレーン情報を加えると３９３２１０となる。
（Ｂ）「タグツリー情報の随時リード・ライト方法」における、内部バッファの容量と外部メモリへのアクセス回数
解像度レベル毎に処理するために必要な内部バッファの容量は、コードブロック包含情報が１×８＝８ビット、ゼロビットプレーン包含情報が１×８＝８ビット、ゼロビットプレーン包含情報が４×８＝３２ビットで、合計４８ビットとなる。したがって、タグツリー情報の一括リード・ライト方法の所要バッファサイズに対し、プリシンクトなしの場合に、１／２０４８、プリシンクトありの場合に１／８１９２となる。
【０１６３】
一方、外部メモリへのアクセスは、レイヤが一枚の場合に、一のコードブロックにおいて、コードブロック包含情報のリード／ライトは８×２＝１６回、ゼロビットプレーン包含情報のリード／ライトは８×２＝１６回、ゼロビットプレーン包含情報のリード／ライトは８×２＝１６回で、合計で４８回となる。
【０１６４】
解像度レベル毎の各サブバンドにおいて、全てのコードブロックに対応する外部メモリへのアクセス回数は、（１＋（１＋４＋１６＋６４＋２５６＋１０２４＋４０９６＋１６３８４）×３）×１６  ＝  １０４８５７６  回となる。さらに色コンポーネントの数が３の場合には、全部で３１４５７２８回の外部メモリへのアクセスが必要となる。したがって、タグツリー情報の一括リード・ライト方法に比して、所要アクセス回数は、約８５倍まで増えたことになる。
【０１６５】
（Ｃ）本発明の実施の形態における、内部バッファの容量と外部メモリへのアクセス回数
コードブロック包含情報を格納する内部バッファの容量は、タグレベル７から０までの８つのタグレベルのサイズの合計である、１＋４＋１６＋３２＋３２＋３２＋３２＋３２  ＝  １８１ビットであり、ゼロビットプレーン包含情報及びゼロビットプレーン情報を格納するのに必要な容量を加えて、合計１０８６ビットとなる。
【０１６６】
外部メモリへのアクセス回数は、レイヤ１枚で３２ビット幅バス使用の場合に、コードブロック包含情報のリード・ライトは（１＋（１＋１＋１＋２＋８＋３２＋１２８＋５１２）×３）×２＝４１１２回、ゼロビットプレーン包含情報のリード・ライトは（１＋（１＋１＋１＋２＋８＋３２＋１２８＋５１２）×３）×２＝４１１２回、ゼロビットプレーン情報のリード・ライトは（１＋（１＋１＋２＋８＋３２＋１２８＋５１２＋１０２４）×３）×２＝１０２５０回であり、合計で１８４７４回となる。色コンポーネントの数が３の場合は、全部で５５４２２回のメモリーアクセスが必要となる。
【０１６７】
（Ａ）のタグツリー情報の一括リード・ライト方法と比較して、必要となる内部バッファのサイズが約１/９０〜１/３６２に縮減している。外部メモリへのアクセス回数は、約１．５倍になる。
【０１６８】
（Ｂ）のタグツリー情報の随時リード・ライト方法と比較して。必要となる内部バッファのサイズは（Ｂ）の６ビットに対し（Ｃ）の１０８６ビットと増えたが、外部メモリへのアクセス回数は、（Ｂ）の３１４５７２８回に対し、（Ｃ）は、５５４２２回になり、約１/５６まで減らされている。
【０１６９】
なお、内部バッファサイズを変更すれば外部メモリへのアクセス回数も変わるので、本発明の手段を用いて仕様に合わせて選択的にシステムを構成することができる。
【０１７０】
以上、発明を実施するための最良の形態について説明を行ったが、本発明は、この最良の形態で述べた実施の形態に限定されるものではない。本発明の主旨をそこなわない範囲で変更することが可能である。
【図面の簡単な説明】
【０１７１】
【図１】ＪＰＥＧ２０００による画像符号化処理を説明するフロー図。
【図２】ＪＰＥＧ２０００による画像復号処理を説明するフロー図。
【図３】符号データの構成の例を説明する図。
【図４】ウェーブレット変換によって得られる解像度レベルのうちの一の解像度レベルにおける、サブバンド、プリシンクト、及び、コードブロックを説明する図。
【図５】プリシンクトを、レイヤに分解して符号化する例を説明する図。
【図６】パケットヘッダとパケットデータとを説明する図。
【図７】タグツリーによる情報符号の生成を説明する図。
【図８】本発明の一実施の形態に係る画像処理装置の機能構成の例（その１）。
【図９】本発明の一実施の形態に係る画像処理装置の機能構成の例（その２）。
【図１０】本発明の一実施の形態に係るタグツリー情報の随時リード・ライト方法の処理の概略の例のフロー図。
【図１１】コードブロックの処理と、タグツリー情報の格納状態を説明する図。
【図１２】タグツリー情報を格納するアドレスを説明する図。
【図１３】アドレス生成を実現する、ハードウェア記述言語によるレジスタ転送レベルの表現例。
【図１４】コードブロック包含情報の格納の制御を説明する図。
【図１５】ハードウェア記述言語によるコードブロック包含情報の格納のタイミング判定の表現例。
【図１６】ゼロビットプレーン包含情報の格納の制御を説明する図。
【図１７】ハードウェア記述言語によるゼロビットプレーン包含情報の格納のタイミング判定の表現例
【図１８】ゼロビットプレーン情報の格納の制御を説明する図。
【図１９】ハードウェア記述言語によるゼロビットプレーン情報の格納のタイミング判定の表現例
【図２０】メモリアクセスリストに基づく、外部メモリからの読み出しタイミングの制御のフロー図。
【図２１】メモリアクセスリストに基づく、外部メモリへの書き込みタイミングの制御のフロー図。
【図２２】原画像から、サブバンドを繰り返すことによって生じる解像度レベル、コードブロックを説明する図。
【符号の説明】
【０１７２】
１、２  画像処理装置
１１０  入力画像データ処理手段
１２０  ウェーブレット変換手段
１３０  ＭＱ符号生成手段
１４０  符号形成手段
１４１  情報符号生成手段
１４２  座標生成手段
１４３  アドレス生成手段
１４４  記憶制御手段
１４５  レジスタ
１５０  第二の記憶手段
１９０  第一の記憶手段
２１０  出力画像データ処理手段
２２０  逆ウェーブレット変換手段
２３０  ＭＱ復号手段
２４０  符号解析手段
２４１  情報符号解析手段
２４２  座標生成手段
２４３  アドレス生成手段
２４４  記憶制御手段
２４５  レジスタ
２５０  第二の記憶手段
２６０  第一の記憶手段
【図１】
2008283285.tif 000003
【図２】
2008283285.tif 000004
【図３】
2008283285.tif 000005
【図４】
2008283285.tif 000006
【図５】
2008283285.tif 000007
【図６】
2008283285.tif 000008
【図７】
2008283285.tif 000009
【図８】
2008283285.tif 000010
【図９】
2008283285.tif 000011
【図１０】
2008283285.tif 000012
【図１１】
2008283285.tif 000013
【図１２】
2008283285.tif 000014
【図１３】
2008283285.tif 000015
【図１４】
2008283285.tif 000016
【図１５】
2008283285.tif 000017
【図１６】
2008283285.tif 000018
【図１７】
2008283285.tif 000019
【図１８】
2008283285.tif 000020
【図１９】
2008283285.tif 000021
【図２０】
2008283285.tif 000022
【図２１】
2008283285.tif 000023
【図２２】
2008283285.tif 000024