(57)【要約】【課題】ＲＯＩ注目領域があるレートコントロールテーブルの選択時において符号量の計算効率を向上させることができる。【解決手段】ＪＰＥＧ２０００方式の符号化に際して、ＭＱ符号化器にて生成されたサブバンド毎のコーディングパス数とそれに対する符号量情報やコードブロック毎のコーディングパス数とそれに対する符号量情報を入力とし、注目領域があるサブバンドの符号量を制御する画像圧縮装置において、サブバンド毎の使用基準に基づいて、上記２つの符号量情報のうちのどの符号量情報を用いるか、もしくは両方の符号量情報を用いるかを決定してトランケーションしたときの符号量を計算する。【選択図】図３
2010068269.tif 000002
【特許請求の範囲】
【請求項１】
ＪＰＥＧ２０００方式の符号化に際して、ＭＱ符号化器にて生成されたサブバンド毎のコーディングパス数とそれに対する符号量情報やコードブロック毎のコーディングパス数とそれに対する符号量情報を入力とし、注目領域があるサブバンドの符号量を制御する制御手段を備えた画像圧縮装置において、
上記制御手段は、サブバンド毎の使用基準に基づいて、上記２つの符号量情報のうちのどの符号量情報を用いるか、もしくは両方の符号量情報を用いるかを決定してトランケーションしたときの符号量を計算することを特徴とする画像圧縮装置。
【請求項２】
上記制御手段は、上記サブバンド毎の使用基準として特定コードブロックの数やサイズを用いることを特徴とする請求項１記載の画像圧縮装置。
【請求項３】
上記制御手段は、上記サブバンド毎の使用基準として外部記憶手段へのアクセス回数を用いることを特徴とする請求項１記載の画像圧縮装置。
【請求項４】
上記制御手段は、上記サブバンドの符号量を制御するときに、上記２つの符号量情報を使用する際、サブバンド毎のコーディングパス数とそれに対する符号量情報に基づいて、全注目領域内の画質を注目領域外の画質より高くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を加算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より増加させることを特徴とする請求項１記載の画像圧縮装置。
【請求項５】
上記制御手段は、上記サブバンドの符号量を制御するときに、２つの情報を使用する際、サブバンド毎のコーディングパス数とそれに対する符号量情報に基づいて、全注目領域内の画質を注目領域外の画質より低くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を減算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より減少させることを特徴とする請求項１記載の画像圧縮装置。
【請求項６】
上記制御手段は、上記サブバンドの符号量を制御するときに、上記２つの符号量情報を使用する際、サブバンド毎コーディングパス数とそれに対する符号量情報に基づいて、一部の注目領域内の画質を注目領域外の画質より高くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を加算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より増加させ、その他の注目領域内の画質を注目領域外の画質より低くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を減算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より減少させることを特徴とする請求項１記載の画像圧縮装置。
【請求項７】
ＪＰＥＧ２０００方式の符号化に際して、ＭＱ符号化器にて生成されたサブバンド毎のコーディングパス数とそれに対する符号量情報やコードブロック毎のコーディングパス数とそれに対する符号量情報を入力とし、注目領域があるサブバンドの符号量を制御する制御ステップを含む画像圧縮方法において、
上記制御ステップは、サブバンド毎の使用基準に基づいて、上記２つの符号量情報のうちのどの符号量情報を用いるか、もしくは両方の符号量情報を用いるかを決定してトランケーションしたときの符号量を計算することを特徴とする画像圧縮方法。
【請求項８】
上記制御ステップは、上記サブバンド毎の使用基準として特定コードブロックの数やサイズを用いることを特徴とする請求項７記載の画像圧縮方法。
【請求項９】
上記制御ステップは、上記サブバンド毎の使用基準として外部記憶手段へのアクセス回数を用いることを特徴とする請求項７記載の画像圧縮方法。
【請求項１０】
上記制御ステップは、上記サブバンドの符号量を制御するときに、上記２つの符号量情報を使用する際、サブバンド毎のコーディングパス数とそれに対する符号量情報に基づいて、全注目領域内の画質を注目領域外の画質より高くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を加算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より増加させることを特徴とする請求項７記載の画像圧縮方法。
【請求項１１】
上記制御ステップは、上記サブバンドの符号量を制御するときに、２つの情報を使用する際、サブバンド毎のコーディングパス数とそれに対する符号量情報に基づいて、全注目領域内の画質を注目領域外の画質より低くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を減算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より減少させることを特徴とする請求項７記載の画像圧縮方法。
【請求項１２】
上記制御ステップは、上記サブバンドの符号量を制御するときに、上記２つの符号量情報を使用する際、サブバンド毎コーディングパス数とそれに対する符号量情報に基づいて、一部の注目領域内の画質を注目領域外の画質より高くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を加算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より増加させ、その他の注目領域内の画質を注目領域外の画質より低くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を減算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より減少させることを特徴とする請求項７記載の画像圧縮方法。
【請求項１３】
請求項７乃至１２のうちのいずれか１つに記載の画像圧縮方法の制御ステップを含むことを特徴とするコンピュータにより実行可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＪＰＥＧ２０００などに準拠して画像データの圧縮符号化を行う画像圧縮装置及び画像圧縮方法並びにそのためのプログラムに関する。本発明は、静止画、又は動画の圧縮、伸張技術に係り、特にデジタルスチルカメラ、デジタルコピアの記録部分、監視カメラ、デジタルビデオストレージ、デジタルカメラ（動画）、衛星通信機器、医療機器、インターネットのブラウザなどにおける画像処理に応用可能である。
【背景技術】
【０００２】
近年、高精細画像を取り扱うのに適した圧縮符号化方法としてＪＥＰＧ２０００が知られている。ＪＰＥＧ２０００の符号化処理では、画像データをＹ，Ｃｂ，Ｃｒの各色成分のデータに変換した後、それぞれのデータに対して周波数解析として２次元離散ウェーブレット変換を行う。
【０００３】
ＪＰＥＧ２０００は、画像データの圧縮伸長に関する形式である。図９は、ＪＰＥＧ２０００アルゴリズムの基本を説明するための機能ブロック図である。この機能ブロック図は、ＪＰＥＧ２０００形式の画像圧縮伸長用の画像処理用コンピュータプログラムに従いコンピュータが実行することになる各種の機能に対応するアルゴリズムをブロック化して示している。
【０００４】
図９に示すように、ＪＰＥＧ２０００アルゴリズムは、色空間変換・逆変換部１１１、２次元ウェーブレット変換・逆変換部１１２、量子化・逆量子化部１１３、エントロピー符号化・復号化部１１４、タグ処理部１１５によって構成されている（例えば、非特許文献１参照。）。
【０００５】
ウェーブレット変換により得られたウェーブレット係数のデータ（例えば１６ビットデータ）を、サブバンド（例えば、レベル３のウェーブレット変換の場合、３ＬＬ，３ＨＬ，３ＬＨ，３ＨＨ，２ＨＬ，２ＬＨ，２ＨＨ，ｌＨＬ，１ＬＨ，１ＨＨ）を処理単位としてビットプレーンに分割し、サブバンド毎に各ビットプレーンのデータを上位から順に３通りの方法によりスキャンして算術符号化を行う。上記３通りの方法は、「シグニフィカント・プロパゲーション・パス（significant propagation pass）」、「マグニチュード・リファインメント・パス（magnitude refinement pass）」、「クリーンアップ・パス（cleanup pass）」と呼ばれている。
【０００６】
符号データの圧縮は、上記３通りの方法によるスキャンで得られる各サブバンドの全コードブロックのコーディングパスの符号データを最下位のビットプレーン側から順に均一に削除（トランケーション）することにより行う。ここで、符号データの削除とは、削除するビットデータの値を０（無効データ）に置きかえることをいう。ＪＰＥＧ２０００の符号化処理の詳細については非特許文献１を参照されたい。
【０００７】
また、画像圧縮技術に関する従来文献としては、例えば上述した特許文献１の他に、特許文献２、特許文献３などがある。以下、これら従来文献の概要を簡単に説明する。
【０００８】
特許文献１に開示されたものは、ＪＰＥＧ２０００形式での画像の圧縮処理を実行する圧縮手段と、ＪＰＥＧ２０００以外の形式で圧縮された画像の伸長処理を実行する伸長手段とを備え、記憶領域に記憶された画像ファイルについての関心領域の指定を許容し、画像ファイルが非圧縮ファイル又はＪＰＥＧ２０００以外の形式で圧縮された圧縮ファイルであることを判定し、画像ファイルが非圧縮ファイルであると判定され場合には圧縮手段で圧縮し、ＪＰＥＧ２０００以外の形式で圧縮された圧縮ファイルであると判定された場合には伸長手段で伸長してから圧縮手段で圧縮し、圧縮画像から、指定された関心領域に対応するブロックを抽出し出力するものである。
【０００９】
特許文献２に開示されたものは、画像データを周波数解析して得られる係数データを処理単位毎に符号化して符号データを生成する符号化部と、上記符号化部において処理単位毎に生成される符号データを削除することにより符号データの量を削減するデータ削減部と、各処理単位の係数データを更に第２処理単位の係数データに分割し、第２処理単位の係数データの値の大きさに応じて、上記データ削減部における符号データの削減量を上記第２処理単位で増やすデータ処理部を備えることを特徴とするものである。
【００１０】
また、特許文献３に開示されたものは、画像データを周波数解析して得られる係数データを処理単位で符号化して符号データを生成する符号化部と、符号データのうち、各処理単位の係数データの下位ビット側のデータに対応する符号データから削除する内容を決めるデータを、データＮｏ．の増加に伴い符号データの削減量が次第に増加又は減少し、かつ、再生画像の質が次第に劣化又は向上するように並べたテーブルと、テーブルより読み出したデータに従い符号データを削除した場合の符号データの変量を算出し、算出した符号データの変量が目標値であるとみなせる１つのデータのデータＮｏ．を特定するレートコントロール部とを備えることを特徴とするものである。
【００１１】
図１０は、特許文献２，３に開示された画像圧縮装置の構成を示す図である。図１０に示すように、画像圧縮装置１００は、ウェーブレット変換部１０、算術符号化部２０、パケットヘッダ生成処理部３０、メモリコントローラ４０及びＤＲＡＭ（Dynamic Random Access）５０で構成される。メモリコントローラ４０は、いわゆるアービタ回路であり、上記ウェーブレット変換部１０、算術符号処理部２０及びパケットヘッダ生成処理部３０が備える各ＤＭＡ（Direct Memory Access）１３、２１、２５、３１、３３、３５及び３７のＤＲＡＭ５０に対するデータアクセス権の調停を行う。
【００１２】
ウェーブレット変換部１０は、画像データを１６ビットのウェーブレット係数に変換する。色変換回路１１は、入力される画像データをＹ、Ｃｂ及びＣｒの各色成分に変換して出力する。ウェーブレット変換回路１２は、色変換後の各成分のデータに対して２次元離散ウェーブレット変換を実行する。ＤＭＡ１３は、生成されたウェーブレット係数をＤＲＡＭ５０の所定のアドレスに格納する。
【００１３】
算術符号化部２０は、上記ウェーブレット変換部１０においてＤＲＡＭ５０に格納されたウェーブレット係数に対して算術符号化処理を施し、各サブバンドのコーディングパス毎の符号データをＤＲＡＭ５０に書き込むと共に、各サブバンドのコードブロック毎のマスク量（コーディングパス枚数）を特定し、特定したマスク量をメモリＡ又はメモリＢに書き込む。
【００１４】
更に、上記特定したマスク量及び各コードブロックのコーディングパス毎の符号量から、トランケーションデータに基づいて各サブバンドのコーディングパスを１枚ずつ削除する場合に減少する符号量を特定し、メモリＣ又はメモリＤに書き込む。
【００１５】
ＤＭＡ２１は、ＤＲＡＭ５０の所定のアドレスに格納されているウェーブレット係数をサブバンド単位で読み出す。読み出された１６ビットのウェーブレット係数は、量子化回路２２においてエントロピー量子化された後、ビットプレーン分割回路２３に入力され１６枚のビットプレーンに分割される。
【００１６】
算術符号化回路２４は、サブバンド毎に各ビットプレーンのデータを上位ビットから順に３通りの方法（コーディングパスという）によりスキャンして算術符号化を行う。上記３通りの方法は、「シグニフィカント・プロパゲーション・パス（significant propagation pass）」、「マグニチュード・リファインメント・パス（magnitude refinement pass）」、「クリーンアップ・パス（cleanup pass）」と呼ばれる。算術符号化部２４から出力される符号データは、１５×３＋１＝４６枚のコーディングパスの符号データで成り、ＤＭＡ２５を介してＤＲＡＭ５０に書き込まれる。
【００１７】
ＤＭＡ２１によってＤＲＡＭ５０から読み出されたウェーブレット係数は、量子化回路２２だけでなく平均値算出回路２６にも入力される。平均値算出回路２６では、各コードブロックの有効画素のウェーブレット係数の平均値を算出して出力する。マスキング係数計算回路２７は、平均値算出回路２６から順に出力される各コードブロック毎のウェーブレット係数の平均値の値に応じて０枚、１枚、２枚の追加のマスキング係数、即ち、マスク量（符号データを削除するコーディングパスの枚数）を特定して出力する。メモリＡ及びメモリＢは、処理するフレーム画像単位で交互にイネーブルに切り換えられるメモリであり、マスキング係数計算回路２７から出力される各サブバンドのコードブロック毎のマスク量を記録する。
【００１８】
算術符号化回路２４の出力する符号データは、符号量算出回路２８にも出力される。符号量算出回路２８では、各コードブロックのビットプレーンに対応するコーディングパス毎の符号量を計数し、係数値をデータ処理回路２９に出力する。データ処理回路２９には、更に、上記メモリＡ又はメモリＢに書き込まれた各コードブロックのマスク量（コーディングパス枚数）が入力される。データ処理回路２９は、各サブバンドのコーディングパスの符号データを最下位のビットプレーン側から１枚ずつ削除する場合において、更に、マスク量を考慮した符号データの削減量を求め、求めた符号データの削減量を表すデータをメモリＣ又はメモリＤに書き込む。
【００１９】
パケットヘッダ生成処理部３０は、上記算術符号化部２０において求めた、各サブバンドのコーディングパスの符号データを最下位ビットプレーン側から１枚ずつ削除する場合であって、更に、コードブロック毎のマスク量を考慮に入れた場合の符号データの削減量に基づいて、符号データを所望量だけ削除するために適当なトランケーションデータのデータＮｏ．を特定し、特定したデータＮｏ．のトランケーションデータに基づいて得られる符号データのパケットヘッダを生成し、ビットストリームを形成して出力する。レートコントロール回路３２は、まず、データＮｏ．１２８のトランケーションデータをＤＭＡ３１を介してＤＲＡＭ５０より読み出し、読み出したトランケーションデータのうち容に従い、全てのサブバンドについてコードブロック毎に特定される符号データの削減量の合計を算出し、目標削減量との比較を行う。
【００２０】
ここで、目標削減量に満たない場合には、より大きな値のデータＮｏ．のトランケーションデータを読み出し、当該データのうち容に従い全てのサブバンドにおけるデータ削減量の合計を求める。逆の場合、即ち、符号データの削減量の合計値が目標削減量よりも多い場合、より小さな値のデータＮｏ．のトランケーションデータを読み出し、符号データの削減量を再度算出する。上記符号データの削減量が目標削減量であるとみなせる値になる１のデータＮｏ．を特定し、このデータＮｏ．を表すデータを後段のパケット情報生成回路３４に出力する。
【００２１】
レートコントロール回路３２は、大きく分けてアドレス生成回路、符号量演算回路及びデータＮｏ．切換回路とで構成される。アドレス生成回路及び符号量演算回路は、指定されたデータＮｏ．のトランケーションデータを上記トランケーションテーブルから読出し、読み出したトランケーションデータのうち容に従い各処理単位の符号データの下位ビット側のデータを削除する場合の符号データの変量を算出する演算部として機能する。アドレス生成回路は、ＤＭＡ３１を介して入力されるトランケーションデータのうち容に基づいて加算又は減算させるビットプレーンの符号量のデータを読み出すアドレスを生成し、メモリＣ及びメモリＤに出力する。
【００２２】
メモリＣ及びメモリＤのうち、処理しているフレーム画像のデータが格納されており、イネーブル状態にあるメモリは、指定されたアドレスに格納している符号データの削減量を表すデータを符号量演算回路に出力する。符号量演算回路は、メモリＣ又はメモリＤより送られてくるデータ削減量の全サブバンドについての合計を求め、求めた合計値と目標削減量との比較を行い、比較結果を表す信号を次段のデータＮｏ．切換回路に出力する。データＮｏ．切換回路は、上記符号量演算回路から出力される比較結果信号に基づいて異なるデータＮｏ．のトランケーションデータをＤＭＡ３３を介してＤＲＡＭ５０に要求する。また、符号データ削減量が目標削減量であるとみなせる最終の１のデータＮｏ．を表す信号をパケット情報生成回路３４に出力する。
【００２３】
パケットヘッダ生成回路３６は、パケット情報生成回路３４より出力される上記算出した各サブバンドのコードブロックのコーディングパス数及び符号量のデータ、ゼロビットプレーン数、並びに、ＤＭＡ３７よりＤＲＡＭ５から読み込んだ符号データ等のデータよりパケットヘッダを生成し、符号形成回路３８に出力する。符号形成回路３８は、パケットヘッダ生成回路３６より出力されるデータよりビットストリームを形成し、目標削減量だけ符号データの削減を行った符号データとして外部に出力する。以上が特許文献１，２における画像圧縮装置の概要である。
【００２４】
ＪＰＥＧ２０００では、ＲＯＩ（Region of Interest）と呼ばれる「画像の選択された部分」のみ画質を向上させることができる機能を持っている。ＲＯＩ機能を実現するためには、符号化時に、それに対応した処理を行っておく必要がある。ＪＰＥＧ２０００の基本方式では、注目領域の係数に対して重み付けを行う方式（具体的にはビットシフトにより２のべき乗の重みを付ける）を採用している。
【００２５】
図１１は、従来技術に係るＪＰＥＧ２０００の符号化処理の流れを示す図である。図１１に示すように、画像をウェーブレット変換し（ステップＳ５０１）、量子化し（ステップＳ５０２）、ＭＱ（算術）符号化し（ステップＳ５０３）、符号形成して（ステップＳ５０４）、圧縮画像データを得ていた（ステップＳ５０５）。通常、ＲＯＩ機能を実現するためには、符号化時に、それに対応した処理を行っておく必要がある。
【００２６】
図１２は、符号化時に行うＲＯＩ処理を含んだ流れを示す図である。図１２に示すように、画像をウェーブレット変換し（ステップＳ６０１）、ビットシフトし（ステップＳ６０２）、量子化し（ステップＳ６０３）、ＭＱ（算術）符号化し（ステップＳ６０４）、符号形成して（ステップＳ６０５）、圧縮画像データを得ていた（ステップＳ６０６）。通常、ＲＯＩ機能を実現するためには、符号化時に、それに対応した処理を行っておく必要がある。処理として考えられるのは、注目領域を他の部分に比べて細かい量子化ステップで量子化を行って符号化する方法と、注目領域の係数に対して重み付けを行う方法（具体的にはビットシフトにより２のべき乗の重みを付ける）がある（図１２のステップＳ６０２参照）。
【００２７】
図１２に示したＪＰＥＧ２０００の基本方式では後者の方式を採用している。ビットシフトのシフト量はＲＯＩ部分ではない係数の最大ビット数分であり、その点からＭａｘｓｈｉｆｔ方式と呼ばれている。ＲＯＩ領域の係数はこのビットシフト処理によってシフトアップされた状態で、復号時、その他の領域（バックグランド領域）の係数と同じレンジに戻す必要がある。
【００２８】
図１３は、復号化時のＲＯＩ処理の流れを示す図であり、基本的には図１２の逆順序で処理される。すなわち、圧縮データを符号解析し（ステップＳ７０１）、ＭＱ復号化し（ステップＳ７０２）、逆量子化し（ステップＳ７０３）、ビットシフトを行った後（ステップＳ７０４）、逆ウェーブレット変換し（ステップＳ７０５）、画像を復元する（ステップＳ７０６）ものである。ビットシフト方式は、このように、符号化及び復号化時にＲＯＩマスク情報の作成、ウェーブレット係数のビットシフト処理を行う回路や、シフト量を計算する回路をそれぞれ設ける必要がある。また、カラー画像のような複数成分画像の場合、サブサンプル処理が使用される場合が多い。サブサンプルが使用された場合には、それに伴ってＲＯＩマスクもサブサンプルする必要がある。
【００２９】
このように、上記従来技術では、目標の符号量になるように符号量を調整しながら、注目領域の画質向上を提供し、ＲＯＩ機能に類似する効果を実現するために、係数重み付け方式によるビットシフトやシフト量の計算などを行う必要があり、回路構成が複雑となるという問題点があった。
【００３０】
以上の問題点を解決するために、例えば特許文献５では、簡単な仕組みでＲＯＩと類似の画像効果を実現することが可能な画像圧縮装置及び画像圧縮方法並びにそのためのプログラムが提案されている。当該画像圧縮装置等においては、トランケーションテーブルを１つ選択し、１個のコードブロック情報をメモリ上より読み出し、指定領域内のコードブロックであればトランケーション量を０とし、全体符号量に当該コードブロックの符号量を加算し、指定領域外であればトランケーションを行った時のコードブロックの符号量を計算し全体符号量に加算する。全コードブロックに対して行う。次に１個のコードブロック情報を読み出し、指定領域内であればトランケーション量を０としコードブロック情報をそのままとし、指定領域外であればトランケーションを行い、それを反映したコードブロックの情報を求めメモリに書き込む。
【００３１】
また、特許文献６では、絞り機能を用いずにフォーカス効果を実現でき、しかもデータ処理量及び処理時間を大幅に軽減できるデジタル絞りシステムを提供するために、画像Ｇ１に関心領域ＲＯＩ１〜ＲＯＩ５を設定し、画像Ｇ１の関心領域ＲＯＩ１〜ＲＯＩ５に対しては符号量を相対的に多く割り当ててピントを相対的に合わせ、画像Ｇ１の非関心領域（非ＲＯＩ）２１に対しては符号量を相対的に少なく割り当ててピントを相対的にぼかし、且つ関心領域ＲＯＩ１〜ＲＯＩ５のうち優先度の低い関心領域ほど符号量を相対的に少なく割り当ててピントを相対的に強くぼかす様にして画像圧縮することにより、画像Ｇ１にデジタル絞り処理を施す。
【００３２】
さらに、特許文献７では、画像を比較する上で、システム規模の縮小及び処理時間の短縮を実現することができる画像処理装置を得るために、画像データを処理する画像処理装置である複合機において、各々複数の領域に分割され圧縮された第１の画像と第２の画像とから各々複数の領域毎に特徴量を抽出し、それらの画像から各々複数の領域毎に抽出した特徴量に基づいて第１の画像と第２の画像とを比較するようにした。これにより、画像を複数の領域に分割する処理等が必要とされず、簡単な処理で精度良く画像比較を実行することが可能となり、その結果として、システム規模の縮小及び処理時間の短縮を実現することができる。
【００３３】
【特許文献１】特開２００４−３０４２３８号公報。
【特許文献２】特開２００４−２９７７１２号公報。
【特許文献３】特開２００４−２１４８２８号公報。
【特許文献４】特開２００７−２５１４７６号公報。
【特許文献５】特開２００７−２５１４７６号公報。
【特許文献６】特開２００６−２９５２９９号公報。
【特許文献７】特開２００４−２２７４０６号公報。
【非特許文献１】上野幾朗ほか，「静止画像符号化の新国際標準方式（ＪＰＥＧ２００）の概要」，映像情報メディア学会誌，Ｖｏｌ．５４，Ｎｏ．２，ｐｐ．１６４−１７１，２０００年２月。
【発明の開示】
【発明が解決しようとする課題】
【００３４】
しかしながら、これらの従来技術の方法では以下の問題点があった。
【００３５】
ＪＰＥＧ２０００では、ＲＯＩ（Region of Interest）と呼ばれる、画像の選択された部分のみ画質を向上させることができる機能を持っている（図１参照。）。通常、ＲＯＩ機能を実現するためには符号化時に、それに対応した処理を行っておく必要がある（図２参照。）。処理としてＪＰＥＧ２０００の基本方式では注目領域の係数に対して重み付けを行う方法（具体的にはビットシフトにより２のべき乗の重みを付ける）を採用することになった。ビットシフトのシフト量はＲＯＩ部分ではない係数の最大ビット数分であり、その点からマックスシフト（Maxshift）方式と呼ばれている。
【００３６】
一方、符号形成の過程でレートコントロール処理部分においてコードブロック単位で注目領域内外の符号量を調整しＲＯＩと類似する画像効果を実現する方法も存在する。この方法は複雑な計算回路を用いることなく、より簡単な仕組みでＲＯＩと類似する画像効果を実現することができる一方で、レートコントロールテーブルの選択時においてサブバンド単位の符号量計算の替わりにコードブロック単位の符号量計算を実施するので画像や注目領域の数やサイズなどによっては、符号量計算や外部記憶装置へのアクセス回数など処理時間の増大というデメリットの発生が考えられる。
【００３７】
本発明の目的は以上のデメリットを解消するために、ＲＯＩ注目領域があるレートコントロールテーブルの選択時において符号量の計算効率を向上させることができる画像圧縮装置及び方法並びにそのためのプログラムを提供することにある。
【００３８】
なお、区別のために、以下では「ＲＯＩ」の替わりに「指定領域」又は「注目領域」という用語を使用する。
【課題を解決するための手段】
【００３９】
第１の発明に係る画像圧縮装置は、ＪＰＥＧ２０００方式の符号化に際して、ＭＱ符号化器にて生成されたサブバンド毎のコーディングパス数とそれに対する符号量情報やコードブロック毎のコーディングパス数とそれに対する符号量情報を入力とし、注目領域があるサブバンドの符号量を制御する制御手段を備えた画像圧縮装置において、
上記制御手段は、サブバンド毎の使用基準に基づいて、上記２つの符号量情報のうちのどの符号量情報を用いるか、もしくは両方の符号量情報を用いるかを決定してトランケーションしたときの符号量を計算することを特徴とする。
【００４０】
上記画像圧縮装置において、上記制御手段は、上記サブバンド毎の使用基準として特定コードブロックの数やサイズを用いることを特徴とする。
【００４１】
とって代わって、上記制御手段は、上記サブバンド毎の使用基準として外部記憶手段へのアクセス回数を用いることを特徴とする。
【００４２】
また、上記画像圧縮装置において、上記制御手段は、上記サブバンドの符号量を制御するときに、上記２つの符号量情報を使用する際、サブバンド毎のコーディングパス数とそれに対する符号量情報に基づいて、全注目領域内の画質を注目領域外の画質より高くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を加算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より増加させることを特徴とする。
【００４３】
さらに、上記画像圧縮装置において、上記制御手段は、上記サブバンドの符号量を制御するときに、２つの情報を使用する際、サブバンド毎のコーディングパス数とそれに対する符号量情報に基づいて、全注目領域内の画質を注目領域外の画質より低くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を減算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より減少させることを特徴とする。
【００４４】
またさらに、上記画像圧縮装置において、上記制御手段は、上記サブバンドの符号量を制御するときに、上記２つの符号量情報を使用する際、サブバンド毎コーディングパス数とそれに対する符号量情報に基づいて、一部の注目領域内の画質を注目領域外の画質より高くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を加算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より増加させ、その他の注目領域内の画質を注目領域外の画質より低くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を減算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より減少させることを特徴とする。
【００４５】
第２の発明に係る画像圧縮方法は、ＪＰＥＧ２０００方式の符号化に際して、ＭＱ符号化器にて生成されたサブバンド毎のコーディングパス数とそれに対する符号量情報やコードブロック毎のコーディングパス数とそれに対する符号量情報を入力とし、注目領域があるサブバンドの符号量を制御する制御ステップを含む画像圧縮方法において、
上記制御ステップは、サブバンド毎の使用基準に基づいて、上記２つの符号量情報のうちのどの符号量情報を用いるか、もしくは両方の符号量情報を用いるかを決定してトランケーションしたときの符号量を計算することを特徴とする。
【００４６】
上記画像圧縮方法において、上記制御ステップは、上記サブバンド毎の使用基準として特定コードブロックの数やサイズを用いることを特徴とする。
【００４７】
とって代わって、上記制御ステップは、上記サブバンド毎の使用基準として外部記憶手段へのアクセス回数を用いることを特徴とする。
【００４８】
また、上記画像圧縮方法において、上記制御ステップは、上記サブバンドの符号量を制御するときに、上記２つの符号量情報を使用する際、サブバンド毎のコーディングパス数とそれに対する符号量情報に基づいて、全注目領域内の画質を注目領域外の画質より高くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を加算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より増加させることを特徴とする。
【００４９】
さらに、上記画像圧縮方法において、上記制御ステップは、上記サブバンドの符号量を制御するときに、２つの情報を使用する際、サブバンド毎のコーディングパス数とそれに対する符号量情報に基づいて、全注目領域内の画質を注目領域外の画質より低くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を減算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より減少させることを特徴とする。
【００５０】
またさらに、上記画像圧縮方法において、上記制御ステップは、上記サブバンドの符号量を制御するときに、上記２つの符号量情報を使用する際、サブバンド毎コーディングパス数とそれに対する符号量情報に基づいて、一部の注目領域内の画質を注目領域外の画質より高くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を加算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より増加させ、その他の注目領域内の画質を注目領域外の画質より低くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を減算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より減少させることを特徴とする。
【００５１】
第３の発明に係る画像圧縮方法のためのプログラムは、上記画像圧縮方法の制御ステップを含むことを特徴とするコンピュータにより実行可能なプログラムである。
【発明の効果】
【００５２】
本発明に係る画像圧縮装置及び方法によれば、注目領域があるレートコントロールでは符号量制御手段をサブバンド毎に選択適用することができ、ＲＯＩ注目領域があるレートコントロールテーブルの選択時において符号量の計算効率を向上させることができる。
【００５３】
また、注目領域内外の符号量調整において符号量計算サイクル数を減らすことができ、これにより、ＲＯＩ注目領域があるレートコントロールテーブルの選択時において符号量の計算効率を向上させることができる。
【００５４】
さらに、注目領域内外の符号量調整において外部記憶装置へのアクセス回数を減らすことができ、これにより、ＲＯＩ注目領域があるレートコントロールテーブルの選択時において符号量の計算効率を向上させることができる。
【００５５】
また、サブバンド内注目領域の符号量が注目領域外の符号量より多くするときに効率的に符号量を計算することができる。
【００５６】
さらに、サブバンド内注目領域の符号量が注目領域外の符号量より少なくするときに効率的に符号量を計算することができる。
【００５７】
またさらに、サブバンド内注目領域によって注目領域内の符号量を多くする或は少なくするときに効率的に符号量を計算することができる。
【発明を実施するための最良の形態】
【００５８】
以下、本発明に係る実施形態について図面を参照して説明する。なお、以下の各実施形態において、同様の構成要素については同一の符号を付している。
【００５９】
実施形態の概要．
ＪＰＥＧ２０００符号化処理の時に、上述した特許文献１，２に開示されているように、予め設定された目標の符号量に対し、算術符号化処理された符号データを下位から破棄し目標の符号量になるように調整する「レートコントロール」と呼ばれる方法がある（図１３のレートコントロール回路３２参照）。本発明の実施形態は、ビットシフト方式の替わりに、レートコントロールを行うときに、指定領域内と指定領域外において破棄するデータの量を調整することで、ＲＯＩと類似の効果を実現するものであり、特に、ＲＯＩ注目領域があるレートコントロールテーブルの選択時（図３のステップＳ１０３)、コードブロック単位の符号量情報だけでなくサブバンド単位の符号量情報をも用いて符号量計算効率を向上させるための手段を提供することを特徴としている。具体的には、ＪＰＥＧ２０００方式の符号化に際して、ＭＱ符号化器にて生成されたサブバンド毎のコーディングパス数とそれに対する符号量情報やコードブロック毎のコーディングパス数とそれに対する符号量情報を入力とし、注目領域があるサブバンドの符号量を制御する画像圧縮装置において、サブバンド毎の使用基準に基づいて、上記２つの符号量情報のうちのどの符号量情報を用いるか、もしくは両方の符号量情報を用いるかを決定してトランケーションしたときの符号量を計算することを特徴としている。
【００６０】
実施形態．
図１は、ＲＯＩ処理に類似したレートコントロール処理を含む本発明の実施形態に係る処理の流れを示す図である。本発明の実施形態では、図１に示すように、画像をウェーブレット変換し（ステップＳ１）、量子化し（ステップＳ２）、ＭＱ（算術）符号化し（ステップＳ３）、ＲＯＩ類似機能を有するレートコントロールを行い（ステップＳ４）、符号形成して（ステップＳ５）、圧縮画像データを得る（ステップＳ６）。
【００６１】
次に、本発明の実施形態に係るレートコントロールの手順について簡単に説明する。
【００６２】
図２は、コードブロック情報を読出しの実施例を示すブロック図である。ＪＰＥＧ２０００符号化時、算術符号化処理後のデータは、各コードブロックの情報（ゼロビットプレーン数、コーディングパス数、コードブロック符号量、コーディングパス毎の符号量等）はパケットポインターと呼ばれる内部メモリ６４領域に記録される。１個のコードブロックの情報は１個のパケットポインターを成す。各コードブロックのパケットポインターのメモリアドレスは、図２の６１に示すコードブロックが所在するコンポーネント、解像度レベル、サブバンド情報、及び、６２で示すサブバンド内コードブロックの位置情報によって一意に決定される（６３）。また、サブバンド単位でコーディングパス毎に符号量がまとめられ内部メモリ６４に記録される。これらの情報はレートコントロール時に読み出される。
【００６３】
あるコンポーネント、解像度レベルに属するサブバンドのメモリスタートアドレスをＳＡ（ＳＵＢ）、サブバンド内コードブロックの垂直・水平方向の位置を（Ｙ、Ｘ）とすると、コードブロック情報が格納されているメモリ上の先頭アドレスＳＡ（ＣＢ）は以下のようになる。
【００６４】
［数１］
［ＳＡ（ＣＢ）＝ＳＡ（ＳＵＢ）＋Ｙ×Ｘｈ＋Ｘ］
【００６５】
ここで、Ｘｈはサブバンドの水平方向のコードブロック数とする。図２の加算器の記号は上記式に相当する。以下に説明するレートコントロールの処理では、コードブロックの位置からパケットポインターのアドレスを算出し（６３）、内部メモリ６４からそのパケットポインターを読み出し、コードブロック情報（コーディングパス数、バイト数等）を抽出する（６５）。
【００６６】
図３は、一般的なレートコントロール処理の流れを示す図である。レートコントロールは大きく分けて２つの過程からなる。
【００６７】
１つ目はレートコントロールテーブルを選択する過程（Ａ）である。これは、複数用意されたレートコントロールテーブルから使用すべきテーブルを１つ決定する過程（Ａ）である。
【００６８】
２つ目はトランケーション過程（Ｂ）である。これは、選択したトランケーションテーブルを使用して各コードブロックのコーディングパスをトランケーションし、符号量情報を変更してゆく過程である。
【００６９】
トランケーションテーブルにはサブバンド毎にそのサブバンド内のコードブロックのコーディングパスのトランケーション量が記述されている。解像度レベル５のトランケーションテーブルの例を次に示す。
【００７０】
［表１］
―――――――――――――――――――――――――――
i194 c0: 1, 1 1 1, 1 1 1, 1 1 1, 2 2 2, 6 6 11
i194 c1: 1, 2 2 2, 2 2 3, 4 4 5, 6 7 9, 11 11 16
i194 c2: 1, 1 1 2, 2 2 3, 3 3 4, 5 5 7, 9 9 12
―――――――――――――――――――――――――――
【００７１】
ここで、それぞれの数字は以下のことを示す。
Ｃ０：コンポーネント０。具体的にはＹ成分を示す。
Ｃ１：コンポーネント１。具体的にはＣｂ成分を示す。
Ｃ２：コンポーネント２。具体的にはＣｒ成分を示す。
【００７２】
各列の数字は（Ｃ０：５ＬＬ，５ＨＬ−ＬＨ−ＨＨ，４ＨＬ−ＬＨ−ＨＨ，３ＨＬ−ＬＨ−ＨＨ，２ＨＬ−ＬＨ−ＨＨ，１ＨＬ−ＬＨ−ＨＨ）のように、
（ａ）５ＬＬ：レベル５ＬＬ成分のサブバンドのコーディングパス単位のトランケーション量
（ｂ）５ＨＬ−ＬＨ−ＨＨ：レベル５のＨＬ成分とＬＨ成分とＨＨ成分のサブバンドのコーディングパス単位のトランケーション量
（ｃ）４ＨＬ−ＬＨ−ＨＨ：レベル４のＨＬ成分とＬＨ成分とＨＨ成分のサブバンドのコーディングパス単位のトランケーション量
（ｄ）３ＨＬ−ＬＨ−ＨＨ：レベル３のＨＬ成分とＬＨ成分とＨＨ成分のサブバンドのコーディングパス単位のトランケーション量
（ｅ）２ＨＬ−ＬＨ−ＨＨ：レベル２のＨＬ成分とＬＨ成分とＨＨ成分のサブバンドのコーディングパス単位のトランケーション量
（ｆ）１ＨＬ−ＬＨ−ＨＨ：レベル１のＨＬ成分とＬＨ成分とＨＨ成分のサブバンドのコーディングパス単位のトランケーション量
をそれぞれ表す。
このようなテーブルデータはメモリ上、スタートアドレスから小さい順で配置される。
【００７３】
まず、レートコントロールテーブルを選択する過程（Ａ）を説明する。レートコントロールがスタートしたら、トランケーションテーブルを１つ選択し（ステップＳ１０１）、サブバンドのコーディングパス毎の符号量情報をメモリ上より読み出し（ステップＳ１０２）、選択したトランケーションテーブルに従ってトランケーションを行った場合のサブバンドの符号量を計算し（ステップＳ１０３）、ステップＳ１０３の処理を全てのサブバンドに対して行い、算出した符号量が目標符号量に達した場合は、それを最終的なトランケーションテーブルとしステップＳ１０５に進み、算出した符号量が目標符号量に達しない場合は目標値との差に従って次のテーブルを選択するためステップＳ１０１に戻る。これにより目標の符号量になるためのトランケーション量が決定される。
【００７４】
次に、トランケーション（Ｂ）の流れについて説明する。トランケーションをスタートし（ステップＳ１０５）、１個のコードブロックの情報をメモリ上より読出し（ステップＳ１０６）、選択したトランケーションテーブルに従ってコードブロックのコーディングパスのトランケーションを行い（ステップＳ１０７）、それを反映したコードブロックの情報を求め、新しいコードブロック情報としてメモリ上に書き込む（ステップＳ１０８）。全てのコードブロックに対しての処理が終わったら（ステップＳ１０９：Ｙ）、レートコントロールを終了する。このように、上記レートコントロールの処理では、サブバンド単位でトランケーションされるコーディングパス数が同じになる。
【００７５】
次に、本発明の実施形態を、符号化時レートコントロールの際に空間的座標位置で判定される指定領域内でトランケーションを実施せず全体の符号量を調整する実施例を用いて説明する。
【００７６】
なお、本発明の実施形態では、コードブロック単位でのトランケーション量を調整することでＲＯＩ類似効果を実現しているので、復号化時に特別な処理を必要としない。
【００７７】
図４は、指定領域があるときのレートコントロール処理の流れを示す図である。以下、トランケーションテーブル選択の流れについて説明する。まず、ステップＳ２０１で、トランケーションテーブルを１つ選択し、ステップＳ２０２で、１個のコードブロック情報をメモリ上より読み出す。次に、当該コードブロックが指定領域内のコードブロックであれば（ステップＳ２０３：Ｙ）、トランケーション量を０とし、全体符号量に当該コードブロックの符号量を加算する（ステップＳ２０５）。当該コードブロックが指定領域外のコードブロックであれば（ステップＳ２０３：Ｎ）、選択したトランケーションテーブルに従ってコーディングパスのトランケーションを行った時の、コードブロックの符号量を計算し（ステップＳ２０４）、全体符号量に加算する（ステップＳ２０５）。
【００７８】
以上の処理（ステップＳ２０１〜２０５）を全てのコードブロックに対して行い、全体符号量が目標符号量に達した場合あるいは最後のトランケーションテーブルに達した場合は（ステップＳ２０６：Ｙ）、それを最終的なトランケーションテーブルとする。その他の場合は（ステップＳ２０７：Ｎ）、目標値との差に従って次のテーブルを選択するためステップＳ２０１に戻る。
【００７９】
次に、トランケーションの流れについて説明する。ステップＳ２０８でトランケーションを開始し、１個のコードブロック情報をメモリ上より読み出す（ステップＳ２０９）。読み出した当該コードブロックが指定領域内のコードブロックであれば（ステップＳ２１０：Ｙ）、トランケーション量を０とし、コードブロック情報をそのままとする（ステップＳ２１１）。当該コードブロックが指定領域外のコードブロックであれば（ステップＳ２１０：Ｎ）、選択したトランケーションテーブルに従ってコーディングパスのトランケーションを行い（ステップＳ２１２）、それを反映したコードブロックの情報を求める。次のステップＳ２１３で、求めた情報を新しいコードブロック情報としてメモリ上に書き込む。上記ステップＳ２１０〜Ｓ２１３を全てのコードブロックに関して行ったら（ステップＳ２１４：Ｙ）、レートコントロールを終了する。指定領域のないレートコントロール処理と比べ、主な異同はコードブロックが指定領域内にあるか否かによって異なる処理を行う点である。
【００８０】
次に、指定空間領域に属するコードブロックの計算について説明する。図５は、指定領域に属するコードブロックの例を示す図である。ＲＯＩ領域を長方形とし、その空間的情報は左上の頂点Ａと右下の頂点Ｂで決定される。もとの画像が解像度レベル０とすると、解像度レベルが１つ上がると、対するサブバンドのサイズが二分の一になる。したがって元画像の指定領域は、解像度レベルが１つ上がると、図５に示すように、対するサブバンドの中でのサイズが二分の一になる。つまり、大きさが２のべき乗のコードブロックについて、ＲＯＩ領域の頂点ＡとＢの上位ビットを見ればそのコードブロックが指定領域に属するかどうかの判定ができる。
【００８１】
図６は、指定領域内のコードブロックの計算の例を示す図である。画像サイズが「８１９２×８１９２」以下の場合、Ｘ方向座標は１４ビットのレジスターでまかなえる。解像度レベル１の時、対するサブバンドのサイズが１／２になるから、レジスターの最上位ビット（１３ビット目）から最下位ビット（０ビット目）より１つ上のビット（１ビット目）まではサブバンド内のＸ方向座標を表す。一方、コードブロックサイズが３２（２の５乗）のとき、下位５ビット（１〜５）はコードブロック内のＸ座標を表し、上位８ビット（６〜１３）はコードブロックのＸ方向座標を表す。Ｙ方向はＸ方向と同じで、レベル１以上は類推する。このようにしてコードブロックの位置やコードブロック内の位置を算出できる。
【００８２】
図７は、指定領域があるときのトランケーションテーブル選択の実施例を示す図である。トランケーションテーブルを選択するとき、メモリからのテーブルスタートアドレスＴＡ（ＳＴ）にテーブルアドレスオフセット（ＴＡＯ）を加えた値をテーブルアドレス（ＴＡ）とする［すなわち、ＴＡ＝ＴＡ（ＳＴ）＋ＴＡＯ］（ステップＳ３０１）。テーブルアドレスオフセット（ＴＡＯ）は、個々のテーブルがテーブルスタートアドレスＴＡ（ＳＴ）からのオフセット値を表す。テーブルスタートアドレスＴＡに基づいてメモリからテーブル（ＴＢＬ）を一枚読み出し、レジスターに記録する（ステップＳ３０２）。
【００８３】
次に、コードブロック（ＣＢ）のパケットポインターアドレスに基づいてメモリから当該コードブロックのパケットポインターを読み出し、パケットポインターのコードブロック情報（コーディングパス数ＣＰ、符号量ＢＹＴＥ、コーディングパス毎の符号量ＣＰ＿ＢＹＴＥ（Ｎ））を抽出する（ステップＳ３０３）。当該コードブロックが指定領域外であれば（ステップＳ３０４：Ｎ）、コーディングパス数（ＣＰ）にトランケーションテーブルの値（ＴＢＬ）で減算し、得た結果をレートコントロール後のコーディングパスとする［ＣＰ＝ＣＰ−ＴＢＬ］（ステップＳ３０５）。また、コーディングパス毎の符号量情報（ＣＰ＿ＢＹＴＥ（Ｎ））に基づいて、上位のコーディングパスから減算後のコーディングパスまでの符号量を計算し、得た結果をレートコントロール後の符号量とする［ＴＢ＝ＴＢ＋ＣＰ＿ＢＹＴＥ（Ｎ）］（ステップＳ３０５）。
【００８４】
一方、当該コードブロックが指定領域内であれば（ステップＳ３０４：Ｙ）、減算処理せずに、符号量（ＢＹＴＥ）をそのままレートコントロール後の符号量とする［ＴＢ＝ＴＢ＋ＢＹＴＥ］（ステップＳ３０６）。このようにして全てのコンポーネント及び解像度レベル、サブバンドのコードブロックに対し計算し、結果符号量（ＴＢ）を目標符号量と比較し、上まっていればより大きいトランケーションテーブルを、下回っていればより小さいトランケーションテーブルを選択する。
【００８５】
トランケーションテーブルは小さい順で配置されるので、アドレスオフセット（ＴＡＯ）が大きければテーブルの値も大きくなる。最初はアドレスオフセット増加の方向（幅は一定）でテーブルを選択してゆき、符号量が設定量より小さくなった時点で幅を半分にし、アドレスオフセット減少の方向でテーブルを選択する。このようにしてアドレスオフセットを更新してゆき（ＴＡＯ更新）、徐々に捜査範囲を狭めてゆき、目標のテーブルに辿り付く。一番大きいトランケーションテーブルを選択しても目標の符号量に達しない場合、そこで処理を終了し、そのときのトランケーションテーブルを目標のテーブルとし、そのときの符号量を目標の符号量とする（ステップＳ３０７〜Ｓ３０８）。
【００８６】
図８は、指定領域があるときのトランケーションの実施例を示す図である。まず、各コードブロックのパケットポインターを読み出し、コーディングパス数や符号量（バイト数）など必要な情報を取り出す（ステップＳ４０１）。指定領域内のコードブロックは（ステップＳ４０２：Ｙ）、トランケーション量が０でコードブロック情報に変更がないため、書込みを行う必要がなく次のコードブロックの処理に進む（ステップＳ４０８）。指定領域外のコードブロックは（ステップＳ４０２：Ｎ）、トランケーションテーブル値でコーディングパスをトランケーションした後、結果のコーディングパス数の符号量を計算し（ステップＳ４０３〜Ｓ４０６）、コードブロックの情報を更新するためパケットポインターのメモリへの書込みを行う（ステップＳ４０７）。全てのコードブロックに対し作業を終えたら、トランケーションを終了する。
【００８７】
このようにして、指定領域内のコードブロックは、データのトランケーションを避けることで、指定領域外のコードブロックに比べより多くのデータ（情報）を保持することとなり、結果的に指定領域外より指定領域内の画質が良く、視覚上ビットシフト方式によるＲＯＩ機能に近い効果を得ることができ、つまりＲＯＩと類似する機能の実現である。
【００８８】
また、複数のフレームを連続して処理するような場合、特定のフレームに対しては、レートコントロール（第２の符号制御量基準を用いるコードブロックを予め指定された空間的座標位置によって決定）を実施し、それ以外のフレームに対しては従来技術に係るレートコントロールを実施する。これにより、特定フレームの特定位置の高画質化を計ることができる。
【００８９】
なお、ＪＰＥＧ２０００は画像データの圧縮伸長に関する形式であり、この形式に従い画像データを圧縮あるいは伸長するには、ハードウェア資源を必要とする。ハードウェア資源としてのコンピュータによって画像処理用のコンピュータプログラムを実行することにより実現される。つまり、コンピュータの記憶装置、例えばハードディスクドライブ（ＨＤＤ）にＪＰＥＧ２０００形式の画像データ圧縮伸長用の画像処理用コンピュータプログラムをインストールしておき、コンピュータがＣＰＵ及びメモリから構築される基本アーキテクチャによってそのような画像処理用のコンピュータプログラムを解釈し、入力画像に対するＪＰＥＧ２０００形式の画像圧縮処理を実行したり、あるいは、ＪＰＥＧ２０００形式で圧縮された画像データを伸長したりする。
【００９０】
画像処理用のコンピュータプログラムは、ハードディスクドライブ（ＨＤＤ）、光学的又は磁気的に情報を記録する各種の光ディスクやフレキシブルディスク等の可搬性を有する各種の記録メディア、あるいはインターネットなどのネットワークを介して市場に流通させることができる。
【００９１】
次いで、本発明の実施形態に係るレートコントロールしたときの符号量計算方法について以下に検討する。
【００９２】
ＪＰＥＧ２０００符号化処理の時に、予め設定された目標の符号量に対し、算術符号化処理された符号データを下位から破棄し目標の符号量になるように調整する、レートコントロールと呼ばれる方法がある。またレートコントロールを行うときに、指定領域内と指定領域外において破棄するデータの量を調整することで、ＲＯＩの相似効果を実現することができる。
【００９３】
ＲＯＩ領域がないときのレートコントロールは、ＭＱ符号化器からのサブバンド毎符号量情報を使用して符号量計算するために対して、ＲＯＩ領域があるときのレートコントロールはコードブロック毎に符号量の調整が必要なので、ＭＱ符号化器からのコードブロック毎符号量情報を使用して符号量計算する。この際、個々のコードブロックの符号量情報を外部メモリからリードし下位から破棄する符号データ量を計算してゆくので、サブバンド毎符号量情報を使用した場合と比べて計算時間及び外部メモリへのアクセス回数の増大が考えられる。
【００９４】
本発明の実施形態は、レートコントロール時ＲＯＩ類似効果を実現する際、コードブロック毎の符号量情報だけでなくサブバンド毎の符号量情報も使用してサブバンドで破棄する符号データ量を効率よく計算する手段を提供するものである。
【００９５】
以上の説明からトランケーションテーブル選択の過程（図３のステップＳ１０３及び図４のステップＳ２０４，Ｓ２１０−Ｓ２１２）においてＲＯＩ指定領域がないとき、サブバンドのコーディングパス毎の符号量情報が使用されるのに対して、ＲＯＩ指定領域があるときはコードブロックのコーディングパス毎の符号量情報が使用されることがわかる。以下、ＲＯＩ指定領域が有ると無しの場合についてそれぞれの符号量計算及びメモリアクセス回数について説明する。
【００９６】
図１４は本発明の実施形態に係るサブバンドのコーディングパス毎の符号量情報の一例（Ｙ成分、１ＨＬ）を示すブロック図である。また、図１５は本発明の実施形態に係るコードブロックのコーディングパス毎の符号量情報の一例を示すブロック図である。
【００９７】
図４及び図５において、画像サイズが１０２４×１０２４で解像度レベルが３、コードブロックサイズが３２、トランケーションテーブルの値は５であるとし、Ｙ成分レベル１ＨＬサブバンドの処理例について説明する。また簡単なためサブバンド内コードブロックのコーディングパス数を一律３０とする。
【００９８】
まず、ケース１で注目領域がない場合、レートコントロールはサブバンドのコーディングパス毎の符号量情報をメモリから１回読み出す。
【００９９】
図１６は本発明の実施形態に係る注目領域が無いときの符号量の計算例（ケース１）を示すブロック図である。図１６において、トランケーションテーブルの値が５なので、ＭＱ後の総符号量から、サブバンドコーディングパス毎符号量情報の下位５個のコーディングパスの対応する符号量を差し引いた値がトランケーション後の当該サブバンドの符号量となる。サブバンド最下位のコーディングパが３０で、下位からの５個のコーディングパスがそれぞれ３０、２９，２８，２７，２６である。この際、１個のコーディングパスの符号量を計算するために１サイクルであるとすると、合計で５サイクルの計算が必要になる。
【０１００】
次に、注目領域がある場合、レートコントロールはサブバンド内各コードブロックのコーディングパス毎の符号量情報をそれぞれメモリから１回読み出すので、総アクセス回数はサブバンド内のコードブロック数×１コードブロックのメモリアクセス数＝３２×３２×１＝１０２４回となる。
【０１０１】
ここで、以下３つのケースについて計算を行う。
【０１０２】
まず、ケース２．１で注目領域の数は１、注目領域内のコードブロック数は１、注目領域内のコーディングパス数の調整量はトランケーションテーブルの値−３であるとする。
【０１０３】
図１７は、本発明の実施形態に係る注目領域が有るときのコードブロック情報のみによる符号量の計算例（ケース２．１）を示すブロック図である。なお、図１７乃至図２２において、各１つのブロックが１個のＲＯＩに対応したコードブロックであり、水平面が２次元画像に対応するコードブロックであり、最上部のコードブロックがＭＳＢ（最上位）に対応し、最下部のコードブロックがＭＬＢ（最下位）に対応する。
【０１０４】
図１７において、トランケーションテーブルの値が５なので、当該サブバンドのトランケーション後の符号量は注目領域内において各コードブロックのコーディングパス数を下位から５−３＝２パスを破棄したとき残りのコーディングパスに対する符号量の合計である。それ以外のコードブロックで各コードブロックのコーディングパス数を下位から５パスを破棄したとき残りのコーディングパスに対する符号量の合計となる。
【０１０５】
例えば、注目領域内のコードブロックにおいて下位の２個のコーディングパス３０，２９を破棄し、２８から１までの各コーディングパスに対する符号量の合計が当該コードブロックのトランケーション後の符号量となる。注目領域外のコードブロックにおいて下位の３０、２９、２８、２７，２６のコーディングパスを破棄し、２５から１までの各コーディングパスに対する符号量の合計が当該コードブロックのトランケーション後の符号量となる。この際、１コードブロックの１個のコーディングパスの符号量を計算するために１サイクルであるとすると、注目領域内の各コードブロックでトランケーション後の符号量を計算するために３０−２＝２８サイクル、それ以外のコードブロックのトランケーション後の符号量を計算するために３０−５＝２５サイクルの計算が必要になる。サブバンド内全コードブロックのトランケーション後の符号量を計算するために合計で１×２８＋（３２×３２−１）×２５＝２５６０３サイクルが必要である。
【０１０６】
次に、ケース２．２で注目領域の数は２、注目領域Ａのコードブロック数は２００、注目領域Ａ内のコーディングパス数の調整量はトランケーションテーブルの値−４とする。注目領域Ｂのコードブロック数は３００、注目領域Ｂ内のコーディングパス数の調整量はトランケーションテーブルの値＋２であるとする。
【０１０７】
図１８は本発明の実施形態に係る注目領域が有るときのコードブロック情報のみによる符号量の計算例（ケース２．２）を示すブロック図である。図１８において、注目領域Ａにおいてはトランケーションテーブルの値が５で、当該サブバンドのトランケーション後の符号量は注目領域内のコードブロックでコーディングパス数を下位から５―４＝１パスを破棄したとき残りのコーディングパスに対する符号量の合計である。
【０１０８】
注目領域Ｂにおいてはトランケーションテーブルの値が５で、当該サブバンドのトランケーション後の符号量は注目領域内のコードブロックでコーディングパス数を下位から５＋２＝７個のパスを破棄したとき残りのコーディングパスに対する符号量の合計である。それ以外のコードブロックで各コードブロックのコーディングパス数を下位から５個のコーディングパスを破棄したとき残りのコーディングパスに対する符号量の合計となる。例えば、注目領域Ａ内のコードブロックにおいて下位の１個のコーディングパス３０を破棄し、２９から１までの各コーディングパスに対する符号量の合計が当該コードブロックのトランケーション後の符号量となる。注目領域Ｂ内のコードブロックにおいて下位の７個のコーディングパス３０から２４を破棄し、２３から１までの各コーディングパスに対する符号量の合計が当該コードブロックのトランケーション後の符号量となる。
【０１０９】
注目領域外のコードブロックにおいて下位の５個のコーディングパス３０から２６のコーディングパスを破棄し、２５から１までの各コーディングパスに対する符号量の合計が当該コードブロックのトランケーション後の符号量となる。この際、１コードブロックの１個のコーディングパスの符号量を計算するために１サイクルであるとすると、注目領域Ａ内１個のコードブロックでトランケーション後の符号量を計算するために合計で３０−１＝２９サイクル、注目領域Ｂ内１個のコードブロックでトランケーション後の符号量を計算するために合計で３０−７＝２３サイクル、注目領域外１個のコードブロックのトランケーション後の符号量を計算するために合計２５サイクルの計算が必要になる。サブバンド内全コードブロックのトランケーション後の符号量を計算するために合計２００×２９＋３００×２３＋（３２×３２−５００）×２５＝２５８００サイクルが必要である。
【０１１０】
次にケース２．３でトランケーションテーブ値は２６、注目領域の数は２、注目領域Ａのコードブロック数は２００、注目領域Ａ内のコーディングパス数の調整量はトランケーションテーブルの値−４とする。注目領域Ｂのコードブロック数は８００、注目領域Ｂ内のコーディングパス数の調整量はトランケーションテーブルの値＋２であるとする。
【０１１１】
図１９は本発明の実施形態に係る注目領域が有るときのコードブロック情報のみによる符号量の計算例（ケース２．３）を示すブロック図である。図１９において、注目領域Ａにおいてはトランケーションテーブルの値が２６で、当該サブバンドのトランケーション後の符号量は注目領域内のコードブロックでコーディングパス数を下位から２６―４＝２２パスを破棄したとき残りのコーディングパスに対する符号量の合計である。
【０１１２】
注目領域Ｂにおいては、トランケーションテーブルの値が２６で、当該サブバンドのトランケーション後の符号量は注目領域内のコードブロックでコーディングパス数を下位から２６＋２＝２８パスを破棄したとき残りのコーディングパスに対する符号量の合計である。それ以外のコードブロックで各コードブロックのコーディングパス数を下位から２６個のコーディングパスを破棄したとき残りのコーディングパスに対する符号量の合計となる。例えば、注目領域Ａ内のコードブロックにおいて下位の２２個のコーディングパス３０〜９を破棄し、８から１までの各コーディングパスに対する符号量の合計が当該コードブロックのトランケーション後の符号量となる。
【０１１３】
注目領域Ｂ内のコードブロックにおいて下位の２８個のコーディングパス３０から３を破棄し、２から１までの各コーディングパスに対する符号量の合計が当該コードブロックのトランケーション後の符号量となる。注目領域外のコードブロックにおいて下位の２６個のコーディングパス３０から５個のコーディングパスを破棄し、４から１までの各コーディングパスに対する符号量の合計が当該コードブロックのトランケーション後の符号量となる。この際、１コードブロックの１個のコーディングパスの符号量を計算するために１サイクルであるとすると、注目領域Ａ内１個のコードブロックでトランケーション後の符号量を計算するために合計で３０−２２＝８サイクル、注目領域Ｂ内１個のコードブロックでトランケーション後の符号量を計算するために合計で３０−２８＝２サイクル、注目領域外１個のコードブロックのトランケーション後の符号量を計算するために合計３０−２６＝４サイクルの計算が必要になる。サブバンド内全コードブロックのトランケーション後の符号量を計算するために合計２００×８＋８００×２＋（３２×３２−１０００）×４＝３２９６サイクルが必要である。
【０１１４】
図２３は本発明の実施形態に係る注目領域無しの場合と有りの場合との符号量計算方法、メモリアクセス回数及び符号量計算サイクル数の比較結果を示す図である。図２３の比較結果から明らかなように、注目領域がある場合で注目領域内外の画質を調整するために、コードブロック単位のコーディングパス数と符号量を調整する必要があるので、注目領域がない場合のサブバンド単位の処理と比べると、メモリアクセス回数及び符号量計算サイクル数はどちらも増大方向にあることが見受けられ、システム処理のスループットの低下が顕著である。
【０１１５】
本発明の実施形態では、注目領域がある場合でサブバンド内各コードブロックのコーディングパス毎の符号量情報に加え、サブバンドコーディングパス毎の符号量情報をも用いて、上記メモリアクセス回数及び符号量計算サイクル数を少なくするようにサブバンド毎に２つの手段の使用を選択切り替えられるようにするものである。以下その仕組みについて説明する。
【０１１６】
まず、ケース２．１の場合（注目領域の数は１、注目領域内のコードブロック数は１、注目領域内のコーディングパス数の調整量はトランケーションテーブルの値−３）について考えてみる。
【０１１７】
図２０は本発明の実施形態に係る注目領域が有るときのサブバンドとコードブロック情報による符号量の計算例（ケース２．１）を示すブロック図である。
【０１１８】
トランケーションテーブルの選択時、サブバンドのコーディングパス毎の符号量情報をメモリから１回読み出す必要がある。サブバンド注目領域内のコードブロックコーディングパス毎の符号量情報をそれぞれメモリから１回読み出すので、計１×１＝１回のメモリアクセスが必要である。したがって、当該サブバンドのトランケーションテーブルの選択時において計１＋１＝２回のメモリアクセスが必要である。一方、必要な計算サイクル数はまず当該サブバンドの符号量からトランケーションテーブルの値でトランケーションしたときの符号量を計算するので、トランケーションテーブルの値が５なので必要な計算サイクル数は１×５＝５回である。次に注目領域内個々のコードブロックコーディングパスに対する調整量（−３）を加味したトランケーション値でトランケーションしたときのコーディングパス数に対する符号量を加算するので、必要な計算サイクル数は１×（５−３）＝２回となる。合計必要な計算サイクル数は５＋２＝７回となる。
【０１１９】
次に、ケース２．２の場合（注目領域の数は２、注目領域Ａのコードブロック数は２００、注目領域Ａ内のコーディングパス数の調整量はトランケーションテーブルの値−４。注目領域Ｂのコードブロック数は３００、注目領域Ｂ内のコーディングパス数の調整量はトランケーションテーブルの値＋２）について考えてみる。
【０１２０】
図２１は本発明の実施形態に係る注目領域が有るときのサブバンドとコードブロック情報による符号量の計算例（ケース２．２）を示すブロック図である。
【０１２１】
トランケーションテーブルの選択時、サブバンドのコーディングパス毎の符号量情報をメモリから１回読み出す必要がある。サブバンド注目領域Ａ内のコードブロックコーディングパス毎の符号量情報をそれぞれメモリから１回読み出すので、合計１×２００＝２００回のメモリアクセスが必要である。サブバンド注目領域Ｂ内のコードブロックコーディングパス毎の符号量情報をそれぞれメモリから１回読み出すので、合計１×３００＝３００回のメモリアクセスが必要である。したがって、当該サブバンドのトランケーションテーブルの選択時において計２００＋３００＋１＝５０１回のメモリアクセスが必要である。一方、必要な計算サイクル数はまず当該サブバンドの符号量からトランケーションテーブルの値でトランケーションしたときの符号量を計算するので、必要な計算サイクル数は１×５＝５回である。
【０１２２】
次に、注目領域Ａはコードブロックコーディングパスに対する調整量（−４）を加味したトランケーション値でトランケーションしたときのコーディングパス数に対する符号量を加算するので、１個のコードブロック計算サイクル数は（５−４）＝１回である。注目領域Ａ内全コードブロック合計必要な計算サイクル数は２００×１＝２００回となる。注目領域Ｂは個々のコードブロックコーディングパスに対する調整量（＋２）を加味したトランケーション値でトランケーションしたときのコーディングパス数に対する符号量を減算するので、１個のコードブロック計算サイクル数は（５＋２）＝７回である。注目領域Ｂ内全コードブロック合計必要な計算サイクル数は３００×（５＋２）＝２１００回となる。したがって、当該サブバンドのトランケーションテーブルの選択時において計５＋２００＋２１００＝２３０５回の計算サイクルが必要である。
【０１２３】
次に、ケース２．３の場合（トランケーションテーブルの値は２６、注目領域の数は２、注目領域Ａのコードブロック数は２００、注目領域Ａ内のコーディングパス数の調整量はトランケーションテーブルの値−４。注目領域Ｂのコードブロック数は８００、注目領域Ｂ内のコーディングパス数の調整量はトランケーションテーブルの値＋２）について考えてみる。
【０１２４】
図２２は本発明の実施形態に係る注目領域が有るときのサブバンドとコードブロック情報による符号量の計算例（ケース２．３）を示すブロック図である。
【０１２５】
トランケーションテーブルの選択時、サブバンドのコーディングパス毎の符号量情報をメモリから１回読み出す必要がある。サブバンド注目領域Ａ内のコードブロックコーディングパス毎の符号量情報をそれぞれメモリから１回読み出すので、合計１×２００＝２００回のメモリアクセスが必要である。サブバンド注目領域Ｂ内のコードブロックコーディングパス毎の符号量情報をそれぞれメモリから１回読み出すので、合計１×８００＝８００回のメモリアクセスが必要である。したがって、当該サブバンドのトランケーションテーブルの選択時において合計２００＋８００＋１＝１００１回のメモリアクセスが必要である。一方、必要な計算サイクル数はまず、当該サブバンドの符号量からトランケーションテーブルの値でトランケーションしたときの符号量を計算するので、必要な計算サイクル数は１×２６＝２６回である。
【０１２６】
次に、注目領域Ａはコードブロックコーディングパスに対する調整量（−４）を加味したトランケーション値でトランケーションしたときのコーディングパス数に対する符号量を加算するので、１個のコードブロック計算サイクル数は（２６−４）＝２２回である。注目領域Ａ内全コードブロック合計必要な計算サイクル数は２００×２２＝４４００回となる。注目領域Ｂは個々のコードブロックコーディングパスに対する調整量（＋２）を加味したトランケーション値でトランケーションしたときのコーディングパス数に対する符号量を減算するので、１個のコードブロック計算サイクル数は（２６＋２）＝２８回である。注目領域Ｂ内全コードブロック合計必要な計算サイクル数は８００×２８＝２２４００回となる。したがって、当該サブバンドのトランケーションテーブルの選択時において計２６＋４４００＋２２４００＝２６８２６回の計算サイクルが必要である。
【０１２７】
図２４は図２３の比較結果において（サブバンド＋コードブロック）の符号量計算方法を加えたときの符号量計算方法、メモリアクセス回数及び符号量計算サイクル数の比較結果を示す図である。
【０１２８】
図２４から明らかなように、本発明の実施形態では、注目領域ありでレートコントロールトランケーションテーブルを選択するとき、メモリアクセス回数はサブバンド注目領域内のコードブロック総数に依存しているので、サブバンド注目領域内のコードブロックの数が少ないときは、サブバンドのコーディングパス毎の符号量情報に基づいてコードブロックコーディングパス毎の符号量情報を調整量として用いることで符号量算出を行う場合メモリアクセス回数の減少が顕著である。サブバンド内注目領域数が多いとき、又はサブバンド注目領域内のコードブロックの数が多いとき、この方法による符号量算出とコードブロックコーディングパス毎の符号量情報だけを使用する符号量算出と比べて、メモリアクセス回数の減少効果が薄れる。
【０１２９】
一方、必要計算サイクル数はトランケーションテーブルの値、注目領域数、注目領域内のコードブロック数、注目領域内コードブロックコーディングパスの調整量に依存しているので、トランケーションテーブルの値及び注目領域数、注目領域内のコードブロック数とコードブロックコーディングパス調整量（両者の積）が小さいとき、サブバンドコーディングパス毎の符号量情報に基づいて、コードブロックコーディングパス毎の符号量情報を調整量として用いることで符号量算出を行う場合メモリアクセス回数の減少が顕著である。トランケーションテーブルの値が大きいとき、又は注目領域数及び注目領域内のコードブロック数と調整量（両者の積）が大きいとき、この方法による符号量算出とコードブロックコーディングパス毎の符号量情報だけを使用する符号量算出と比べて、メモリアクセス回数の減少効果が薄れる。
【０１３０】
このように注目領域ありでかつレートコントロールトランケーションテーブル選択の時は、サブバンド毎にメモリアクセス回数及び必要計算サイクル数を予め算出し、それがある基準（例えばコードブロックコーディングパス毎符号量情報による符号量計算結果）と比べて一定値以上を満たす場合にはサブバンドコーディングパス毎の符号量情報に基づいてコードブロックコーディングパス毎の符号量情報を調整量（増加量又は減少量）として符号量を計算できる。
【０１３１】
本実施形態では、ＰＥＧ２０００方式の符号化に際して、ＭＱ符号化器にて生成されたサブバンド毎のコーディングパス数とそれに対する符号量情報やコードブロック毎のコーディングパス数とそれに対する符号量情報を入力とし、注目領域があるサブバンドの符号量を制御するときに、図２４から明らかなように、サブバンド毎の使用基準に基づいて、上記２つの符号量情報のうちのどの符号量情報を用いるか、もしくは両方の符号量情報を用いるかを決定してトランケーションしたときの符号量を計算する。ここで、上記サブバンド毎の使用基準として、好ましくは、特定コードブロックの数やサイズを用い、もしくは外部記憶手段へのアクセス回数を用いることができる。これにより、注目領域があるレートコントロールでは符号量制御手段をサブバンド毎に選択適用することができ、ＲＯＩ注目領域があるレートコントロールテーブルの選択時において符号量の計算効率を向上させることができる。
【０１３２】
また、上記サブバンドの符号量を制御するときに、上記２つの符号量情報を使用する際、サブバンド毎のコーディングパス数とそれに対する符号量情報に基づいて、全注目領域内の画質を注目領域外の画質より高くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を加算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より増加させることで、従来技術に比較して効率的に符号量を計算することができる。
【０１３３】
さらに、上記サブバンドの符号量を制御するときに、２つの情報を使用する際、サブバンド毎のコーディングパス数とそれに対する符号量情報に基づいて、全注目領域内の画質を注目領域外の画質より低くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を減算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より減少させることで、効率的に符号量を計算することができる。
【０１３４】
またさらに、上記サブバンドの符号量を制御するときに、上記２つの符号量情報を使用する際、サブバンド毎コーディングパス数とそれに対する符号量情報に基づいて、一部の注目領域内の画質を注目領域外の画質より高くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を加算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より増加させ、その他の注目領域内の画質を注目領域外の画質より低くするために注目領域内個々コードブロック毎のコーディングパス数とそれに対する符号量情報を減算して注目領域内コードブロックの符号量を注目領域外コードブロックの符号量より減少させることで効率的に符号量を計算することができる。
【０１３５】
以上説明したように、本発明の実施形態に係る画像圧縮装置及び方法によれば、注目領域があるレートコントロールでは符号量制御手段をサブバンド毎に選択適用することができ、ＲＯＩ注目領域があるレートコントロールテーブルの選択時において符号量の計算効率を向上させることができる。
【０１３６】
また、注目領域内外の符号量調整において符号量計算サイクル数を減らすことができ、これにより、ＲＯＩ注目領域があるレートコントロールテーブルの選択時において符号量の計算効率を向上させることができる。
【０１３７】
さらに、注目領域内外の符号量調整において外部記憶装置へのアクセス回数を減らすことができ、これにより、ＲＯＩ注目領域があるレートコントロールテーブルの選択時において符号量の計算効率を向上させることができる。
【０１３８】
また、サブバンド内注目領域の符号量が注目領域外の符号量より多くするときに効率的に符号量を計算することができる。
【０１３９】
さらに、サブバンド内注目領域の符号量が注目領域外の符号量より少なくするときに効率的に符号量を計算することができる。
【０１４０】
またさらに、サブバンド内注目領域によって注目領域内の符号量を多くするあるいは少なくするときに効率的に符号量を計算することができる。
【０１４１】
以上の実施形態においては、画像圧縮方法のための符号量制御方法について説明しているが、これらの方法のステップをコンピュータにより実行可能なプログラムを構成し、当該プログラムをＣＤ−ＲＯＭ、ＤＶＤなどのコンピュータにより読み出し可能な記録媒体に記録してもよい。
【産業上の利用可能性】
【０１４２】
以上詳述したように、本発明に係る画像圧縮装置及び方法によれば、注目領域があるレートコントロールでは符号量制御手段をサブバンド毎に選択適用することができ、ＲＯＩ注目領域があるレートコントロールテーブルの選択時において符号量の計算効率を向上させることができる。
【図面の簡単な説明】
【０１４３】
【図１】ＲＯＩ処理に類似したレートコントロール処理を含む本発明の実施形態に係る処理の流れを示す図である。
【図２】コードブロック情報を読出しの実施例を示すブロック図である。
【図３】一般的なレートコントロール処理の流れを示す図である。
【図４】指定領域があるときのレートコントロール処理の流れを示す図である。
【図５】指定領域に属するコードブロックの例を示す図である。
【図６】指定領域内のコードブロックの計算の例を示す図である。
【図７】指定領域があるときのトランケーションテーブル選択の実施例を示す図である。
【図８】指定領域があるときのトランケーションの実施例を示す図である。
【図９】ＪＰＥＧ２０００アルゴリズムの基本を説明するための機能ブロック図である。
【図１０】特許文献２，３に開示された画像圧縮装置の構成を示す図である。
【図１１】従来技術に係るＪＰＥＧ２０００の符号化処理の流れを示す図である。
【図１２】符号化時に行うＲＯＩ処理を含んだ流れを示す図である。
【図１３】復号化時のＲＯＩ処理の流れを示す図である。
【図１４】本発明の実施形態に係るサブバンドのコーディングパス毎の符号量情報の一例（Ｙ成分、１ＨＬ）を示すブロック図である。
【図１５】本発明の実施形態に係るコードブロックのコーディングパス毎の符号量情報の一例を示すブロック図である。
【図１６】本発明の実施形態に係る注目領域が無いときの符号量の計算例（ケース１）を示すブロック図である。
【図１７】本発明の実施形態に係る注目領域が有るときのコードブロック情報のみによる符号量の計算例（ケース２．１）を示すブロック図である。
【図１８】本発明の実施形態に係る注目領域が有るときのコードブロック情報のみによる符号量の計算例（ケース２．２）を示すブロック図である。
【図１９】本発明の実施形態に係る注目領域が有るときのコードブロック情報のみによる符号量の計算例（ケース２．３）を示すブロック図である。
【図２０】本発明の実施形態に係る注目領域が有るときのサブバンドとコードブロック情報による符号量の計算例（ケース２．１）を示すブロック図である。
【図２１】本発明の実施形態に係る注目領域が有るときのサブバンドとコードブロック情報による符号量の計算例（ケース２．２）を示すブロック図である。
【図２２】本発明の実施形態に係る注目領域が有るときのサブバンドとコードブロック情報による符号量の計算例（ケース２．３）を示すブロック図である。
【図２３】本発明の実施形態に係る注目領域無しの場合と有りの場合との符号量計算方法、メモリアクセス回数及び符号量計算サイクル数の比較結果を示す図である。
【図２４】図２３の比較結果において（サブバンド＋コードブロック）の符号量計算方法を加えたときの符号量計算方法、メモリアクセス回数及び符号量計算サイクル数の比較結果を示す図である。
【符号の説明】
【０１４４】
１０…ウェーブレット変換部、
２０…算術符号化部、
３０…パケットヘッダ生成処理部、
４０…メモリコントローラ、
５０…ＤＲＡＭ、
１３，２１，２５，３１，３３，３５，３７…ＤＭＡ、
１１…色変換回路、
１２…ウェーブレット変換回路、
２３…ビットプレーン分割回路、
２４…算術符号化回路、
２２…量子化回路、
２６…平均値算出回路、
２７…マスキング係数計算回路、
２８…符号量算出回路、
２９…データ処理回路、
３２…レートコントロール回路、
３４…パケット情報生成回路、
３６…パケットヘッダ生成回路、
３８…符号形成回路、
１００…画像圧縮装置、
１１１…色空間変換・逆変換部、
１１２…２次元ウェーブレット変換・逆変換部、
１１３…量子化・逆量子化部、
１１４…エントロピー符号化・復号化部、
１１５…タブ処理部。
【図１】
2010068269.tif 000003
【図２】
2010068269.tif 000004
【図３】
2010068269.tif 000005
【図４】
2010068269.tif 000006
【図５】
2010068269.tif 000007
【図６】
2010068269.tif 000008
【図７】
2010068269.tif 000009
【図８】
2010068269.tif 000010
【図９】
2010068269.tif 000011
【図１０】
2010068269.tif 000012
【図１１】
2010068269.tif 000013
【図１２】
2010068269.tif 000014
【図１３】
2010068269.tif 000015
【図１４】
2010068269.tif 000016
【図１５】
2010068269.tif 000017
【図１６】
2010068269.tif 000018
【図１７】
2010068269.tif 000019
【図１８】
2010068269.tif 000020
【図１９】
2010068269.tif 000021
【図２０】
2010068269.tif 000022
【図２１】
2010068269.tif 000023
【図２２】
2010068269.tif 000024
【図２３】
2010068269.tif 000025
【図２４】
2010068269.tif 000026