JP4688164B2 - 画像処理装置、画像処理方法、プログラム及び情報記録媒体 - Google Patents

画像処理装置、画像処理方法、プログラム及び情報記録媒体 Download PDF

Info

Publication number
JP4688164B2
JP4688164B2 JP2006194763A JP2006194763A JP4688164B2 JP 4688164 B2 JP4688164 B2 JP 4688164B2 JP 2006194763 A JP2006194763 A JP 2006194763A JP 2006194763 A JP2006194763 A JP 2006194763A JP 4688164 B2 JP4688164 B2 JP 4688164B2
Authority
JP
Japan
Prior art keywords
encoding
processing
encoding process
code data
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006194763A
Other languages
English (en)
Other versions
JP2008022488A (ja
Inventor
卓 児玉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2006194763A priority Critical patent/JP4688164B2/ja
Publication of JP2008022488A publication Critical patent/JP2008022488A/ja
Application granted granted Critical
Publication of JP4688164B2 publication Critical patent/JP4688164B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、符号データから解像度又は画質が徐々に向上する画像データを生成する画像処理装置、及び、解像度又は画質が徐々に向上する画像の符号データを生成する画像処理装置に関する。
一般に画像の符号化(圧縮)は、「画像データの色空間変換→周波数変換→サブバンド係数の量子化→量子化係数(又はその必要なビットプレーン)のエントロピー符号化→符号形成」という手順で行われることが多い。
近年国際標準化されたJPEG2000も、このような符号化方式(サブバンド符号化方式)の一種であるが、周波数変換にウェーブレット変換を用い、エントロピー符号化にMQ符号化と呼ばれる算術符号化を用いる。そして、このJPEG2000の符号データは、独立に処理可能なパケット呼ばれる部分符号の集合から構成される。
本発明はJPEG2000を利用する場合に好適であるが、独立に処理可能な部分符号の集合からなる符号データを生成する他のサブバンド符号化方式を利用する場合にも本発明を適用し得る。
後述する本発明の実施形態ではJPEG2000が利用されるので、ここで本発明の理解に必要な限度でJPEG2000の概要を説明する。
図1はJPEG2000の概要を説明するための概略ブロック図である。また、図2にJPEG2000の基本的な符号化処理フローの概略を、図3にJPEG2000の基本的な復号処理フローの概略をそれぞれ示す。
まず符号化処理について説明する。画像は矩形のタイルに分割されて処理される(分割数≧1)。各タイルは、色空間変換部/逆色空間変換部1の色空間変換部によって輝度Y及び色差Cb,Crの各コンポ−ネントへ変換される(ステップ11)。RGB画像データなどの場合には、ステップ11において、色空間変換に先立ってダイナミックレンジの半分を減ずるDCレベルシフトが施される。
色空間変換後の各コンポ−ネント(タイルコンポ−ネント)は、ウェーブレット変換部/逆ウェーブレット変換部2のウェーブレット変換部でウェーブレット変換が適用されサブバンドに分割される(ステップ12)。
図4にデコンポジションレベル数が3の場合のサブバンド分割の様子を示す。図4において、(a)のタイルコンポーネントに対して1回目の2次元ウェーブレット変換が適用されることにより(b)に示すサブバンド(1LL,1HL,1LH,1HH)に分割される。このデコンポジションレベル1の低周波成分である1LLサブバンドの係数に対して2回目の2次元ウェーブレット変換が適用されることにより、(c)に示すサブバンド(2LL,2HL,2LH,2HH)に分割される。このデコンポジションレベル2の2LLサブバンドの係数に対して3回目の2次元ウェーブレット変換が適用されることにより、(d)に示すデコンポジションレベル3のサブバンド(3LL,3HL,3LH,3HH)に分割される。なお、(d)の各サブバンド内の括弧で囲まれた数字は解像度レベルを示す。
再び図1及び図2を参照する。JPEG2000では、ウェーブレット変換として可逆の5×3変換と非可逆の9×7変換が規定されている。9×7変換が用いられる場合には、量子化部/逆量子化部3の量子化部によってウェーブレット係数に対しサブバンド毎に線形量子化が施される(ステップ13)。
次に、エントロピー符号化部/エントロピー復号化部4のエントロピー符号化部によって、各サブバンド係数のエントロピー符号化が行われる(ステップ14)。より詳しくは、図5に例示するように、各サブバンドはプレシンクトと呼ばれる重複しない矩形領域に分割される。同じデコンポジションレベルのLH,HL,HHサブバンドの空間的に一致した3つの矩形領域が1つのプレシンクトとして扱われる。ただし、LLサブバンドは1つの矩形領域が1つのプレシンクトとして扱われる。プレシンクトは大まかには画像領域の位置を表すものである。プレシンクトをさらに矩形に分割したものがコードブロックであり、エントロピー符号化の単位である。JPEG2000では、ウェーブレット係数に対し、コードブロック毎にMQエンコーダと呼ばれる算術符号化器を用いてビットプレーン符号化を行う。
次に、タグ処理部5において、不要なエントロピー符号を破棄し、必要なエントロピー符号をまとめてパケットを生成する(ステップ15)。パケットとは、プレシンクトに含まれる全てのコードブロックの符号の一部を集めたもの(例えばプレシンクト内の全てのコードブロックのMSBから3枚目までのビットプレーンの符号を集めたもの)に、パケットヘッダを付けたものである。各パケットは独立に扱うことができる符号の単位である。JPEG2000の符号データは、独立に扱うことが可能な部分符号であるパケットの集合からなる。
パケットは、コンポーネント番号(色成分)、解像度レベル、プレシンクト番号、レイヤー番号の4種類のインデックス(タイル番号を含めれば5種類のインデックス)を有する。ただし、パケットヘッダには当該パケットに含まれる符号に関する情報(後述)が含まれるが、該パケットがどのようなインデックスを持つものであるかはパケットヘッダからは分からない。
さて、レイヤーであるが、全てのプレシンクト(=全てのコードブロック=全てのサブバンド)のパケットを集めると、タイルコンポーネント全域の符号の一部(例えば、タイルコンポーネント全域のウェーブレット係数の、MSBから3枚目までのビットプレーンの符号)ができるが、これをレイヤーと呼ぶ。
デコンポジションレベル数=2、プレシンクトのサイズ=サブバンドのサイズ、としたときのレイヤー分割例を図6の上段に示す。レイヤーに含まれるパケットの例を図6の下段に太枠で囲んで示す。
最後に、タグ処理部5において、生成したパケットを、そのインデックスに従って階層的に配列するとともに必要なタグ又はタグ情報を付加することにより、JPEG2000の符号データ(コードストリーム)を形成する(ステップ16)。このパケットの配列順をプログレッションオーダと呼び、JPEG2000では5通りのプログレッションオーダが規定されている。
次に復号処理について説明する。タグ処理部5において符号データのタグ情報を解析し、符号データをパケットに分割し(ステップ21)、パケットの符号をコードブロック毎に分割する(ステップ22)。エントロピー符号化部/エントロピー復号化部4のエントロピー復号化部において、コードブロック毎に符号のエントロピー復号を行う(ステップ23)。このエントロピー復号は、MQデコーダと呼ばれる算術復号器を用いたビットプレーン復号である。符号化時に線形量子化が行われた符号データの場合、エントロピー復号によって得られたウェーブレット係数の量子化係数に対し、量子化部/逆量子化部3の逆量子化部によりサブバンド毎に逆線形量子化が施される(ステップ24)。次にウェーブレット変換部/逆ウェーブレット変換部2の逆ウェーブレット変換部によってタイル毎に逆ウェーブレット変換が行われ(ステップ25)、生成されたタイルコンポーネントに対し色空間変換部/逆色空間変換部1の逆色空間変換部によって逆色変換が施される(ステップ26)。符号化時にDCレベルシフトが行われている場合にはDC逆レベルシフトも施される(ステップ26)。
符号化処理時におけるパケットの配列と、復号処理時におけるパケットの属性を解釈は、次に述べるようなプログレッションオーダに対応したforループにより行われる。
例えば、RLCPプログレッションオーダの場合、次のようなforループ
for(解像度){
for(レイヤ){
for(コンポ−ネント){
for(プレシンクト){
符号化処理時:パケットを配置
復号処理時:パケットの属性を解釈




により、各タイルのパケットの配列(符号化処理時)又は属性の解釈(復号処理時)がなされる。
同様に、LRCPプログレッションオーダの場合、次のようなforループ
for(レイヤ){
for(解像度){
for(コンポ−ネント){
for(プレシンクト){
符号化処理時:パケットを配置
復号処理時:パケットの属性を解釈




により、各タイルのパケットの配列(符号化処理時)又は属性の解釈(復号処理時)がなされる。
さて、各パケットのパケットヘッダには、
・そのパケットが空かどうか、
・そのパケットにどのコードブロックが含まれるか、
・そのパケットに含まれる各コードブロックのゼロビットプレーン数、
・そのパケットに含まれる各コードブロック符号のコーディングパス数(ビットプレーン数)、
・そのパケットに含まれる各コードブロックの符号長、
が記載されている。しかし、前述のように、レイヤー番号や解像度レベル等のインデックスはパケットヘッダに一切記載されていない。復号処理時に、そのパケットがどのレイヤーのどの解像度レベルのものかを判別するには、メインヘッダ中のCODマーカセグメント等に記載されたプログレッションオーダから上記のようなforループを構成し、そのパケットに含まれる各コードブロックの符号長の和からパケット長を求めることによってパケットの切れ目を判別し、各パケットがforループ内のどの位置でハンドリングされたかを見ればよい。これは、パケットヘッダ中の符号長さえ読み出せば、パケットデータ(エントロピー符号)をデコードしなくとも、次のパケットを検出できることをも意味する。
図7に、画像サイズ=100×100画素、タイル分割無し(1タイル)、2レイヤー(0,1)、解像度レベル数=3(0〜2)、3コンポ−ネント(0〜2)、プレシンクトサイズ=32×32、RLCPプログレッションオーダの場合における36個のパケットの配列を示す。
図8に、画像サイズ=100×100画素、タイル分割無し(1タイル)、2レイヤー(0,1)、解像度レベル数=3(0〜2)、3コンポ−ネント(0〜2)、プレシンクトトサイズ=32×32、LRCPプログレッションオーダの場合における36個のパケットの配列を示す。
なお、ここまでは説明しなかったが、各タイルの符号は1以上の部分に分割され、各分割部分はタイルパートと呼ばれる。したがって、JPEG2000の符号データは、先頭にメインヘッダと呼ばれるタグ情報が置かれ、その後に各タイルについての1以上のタイルパートが並ぶ形なる。そして、各タイルパートの先頭にタイルパートヘッダと呼ばれるタグ情報が挿入される。また、JPEG2000の符号データにおいては、メインヘッダ中で規定されたデフォルトのプログレッションオーダを途中で変更することができる。このプログレッションオーダの変更は、メインヘッダ又は各タイルの最初のタイルパートのタイルパートヘッダに挿入されるPOCマーカセグメントにより指定される。
以上に述べたJPEG2000に関しては多くの先行技術文献が存在するが、例えば処理の高速化に関連するものとして特許文献1を挙げることができる。
また、特許文献2に、固定長圧縮のための第1の符号化部と、可変長圧縮のための第2の符号化部を有し、第1の符号化部において、画像のブロック毎に輝度Y,色差Cb,Crへの色変換を行い、各成分をサブバンド変換し、変換係数を固定のビット数に量子化し、第2の符号化部において、固定長圧縮された低域係数のみを対象に適応算術符号化等による可変長圧縮処理を施し、固定長圧縮された高域係数はそのまま出力する画像符号化装置が記載されている。
特開2004−40388号公報 特開2001−94985号公報
JPEG2000の符号データから1回目の復号処理によって低解像度又は低画質の画像を再生して表示し、2回目の復号処理によって、より高解像度又は高画質の画像を再生して表示するといった、解像度又は画質に関するプログレッシブ画像表示を行いたい場合がある。しかし、このような解像度/画質プログレッシブ画像表示のための処理を行う従来の画像処理装置では、各回の復号処理に前回の復号処理の結果が利用されず、同じパケットについて復号処理が繰り返されるため処理効率が悪いという問題があった。
また、画像データに対する1回目の符号化処理によって低解像度又は低画質の符号データを生成し、2回目の符号化処理によって、より高解像度又は高画質の符号データを生成するというように、解像度又は画質を徐々に向上させた符号データの生成を行いたい場合がある。例えば、サーバ側で低解像度の符号データを生成してクライアントへ送信し、クライアント側で符号データを復号して画像を表示することにより早い段階で画像の概要を確認し、その後に自動的に又はクライアントからの要求に応じて、サーバから高解像度の符号データをクライアントへ送信し、クライアント側で符号データを復号して高精細な画像を表示するような場合である。しかし、このような複数回の符号化処理によって解像度又は画質を徐々に向上させた符号データの生成を行う従来の画像処理装置では、各回の符号化処理に前回の符号化処理の結果が利用されず、同じパケットについて符号化処理が繰り返されるため処理効率が悪いという問題があった。
よって、本発明の目的は、JPEG2000の符号データ、あるいは、それと同様な独立に処理可能な部分符号から構成された他のサブバンド符号化方式による符号データから、効率的な処理によって、解像度又は画質を徐々に向上させた画像データを生成する画像処理装置又は画像処理方法を提供することにある。本発明のもう1つの目的は、画像データから、効率的な処理により、解像度又は画質を徐々に向上させたJPEG2000又は他のサブバンド符号化方式の符号データを生成する画像処理装置又は画像処理方法を提供することにある。
請求項記載の発明は、
処理対象画像データに対しJPEG2000の符号化処理を複数回に分けて実行する符号化処理手段と、
前記符号化処理手段より第1回の符号化処理時に出力される符号データをそのまま出力符号データとして生成し、前記符号化処理手段より第2回以降の各回の符号化処理時に出力される符号データを前回の符号化処理時に生成済みの出力符号データと合成した新たな出力符号データを生成する出力符号生成処理手段と、
前記符号化処理手段及び前記出力符号生成処理手段を制御する制御手段とを有し、
前記符号化処理手段は、JPEG2000の符号化処理の、ウェーブレット係数又はその量子化係数を生成するまでの処理(以下、第1符号化処理と記す)を実行するための第1符号化処理手段、JPEG2000の符号化処理の第1符号化処理より後の処理(以下、第2符号化処理と記す)を実行するための第2符号化処理手段、及び、前記第1符号化処理手段により生成されるウェーブレット係数又はその量子化係数(以下、結果データと記す)を保存するための記憶手段を含み、
前記制御手段は、前記符号化処理手段による各回の符号化処理時に前記出力符号生成処理手段により生成される出力符号データの解像度又は画質が前回の符号化処理時に生成された出力符号データの解像度又は画質より向上するように、前記出力符号生成処理手段により最終的に生成されるべき出力符号データを構成するパケットの範囲内で、前記符号化処理手段による各回の符号化処理時の処理対象として指定するパケットを決定し、
前記符号化処理手段は第1回の符号化処理時に、前記制御手段よって処理対象として指定されたパケットに関連した、前記処理対象画像データの画像領域についてのみ前記第1符号化処理手段で第1符号化処理を実行し、その結果データを前記記憶手段に保存し、前記前記第2符号化処理手段で前記記憶手段に保存されている結果データを用い当該指定されたパケットを生成するための第2符号化処理を実行することにより、当該指定されたパケットを含む符号データを出力し、
前記符号化処理手段は第2回以降の各回の符号化処理時に、前記制御手段によって処理対象として指定されたパケットに関連した、前記処理対象画像データの画像領域であって前回までの符号化処理未処理の画像領域についてのみ前記第1符号化処理手段で第1符号化処理を実行し、その結果データを前記記憶手段に保存し、前記第2符号化処理手段で前記記憶手段に保存されている結果データを用い当該指定されたパケットを生成するための第2符号化処理を実行することにより当該指定されたパケットを含む符号データを出力する、ことを特徴とする画像処理装置である。
請求項記載の発明は、
処理対象画像データに対しJPEG2000の符号化処理を複数回に分けて実行する符号化処理工程と、
前記符号化処理工程より第1回の符号化処理時に出力される符号データをそのまま出力符号データとして生成し、前記符号化処理工程より第2回以降の各回の符号化処理時に出力される符号データを前回の符号化処理時に生成済みの出力符号データと合成した新たな出力符号データを生成する出力符号生成処理工程と、
前記符号化処理工程及び前記出力符号生成処理工程を制御する制御工程とを有し、
前記符号化処理工程は、JPEG2000の符号化処理の、ウェーブレット係数又はその量子化係数を生成するまでの処理(以下、第1符号化処理と記す)を実行するための第1符号化処理工程、JPEG2000の符号化処理の第1符号化処理より後の処理(以下、第2符号化処理と記す)を実行するための第2符号化処理工程、及び、前記第1符号化処理工程により生成されるウェーブレット係数又はその量子化係数(以下、結果データと記す)を記憶手段に保存する保存工程を含み、
前記制御工程は、前記符号化処理工程による各回の符号化処理時に前記出力符号生成処理工程により生成される出力符号データの解像度又は画質が前回の符号化処理時に生成された出力符号データの解像度又は画質より向上するように、前記出力符号生成処理工程により最終的に生成されるべき出力符号データを構成するパケットの範囲内で、前記符号化処理工程による各回の符号化処理時の処理対象として指定するパケットを決定し、
前記符号化処理工程において第1回の符号化処理時に、前記制御工程よって処理対象として指定されたパケットに関連した、前記処理対象画像データの画像領域についてのみ前記第1符号化処理工程で第1符号化処理を実行し、その結果データを前記保存工程で前記記憶手段に保存し、前記第2符号化処理工程で前記記憶手段に保存されている結果データを用い当該指定されたパケットを生成するための第2符号化処理を実行することにより、当該指定されたパケットを含む符号データを出力し、
前記符号化処理工程において第2回以降の各回の符号化処理時に、前記制御工程によって処理対象として指定されたパケットに関連した、前記処理対象画像データの画像領域であって前回までの符号化処理未処理の画像領域についてのみ前記第1符号化処理工程で第1符号化処理を実行し、その結果データを前記保存工程で前記記憶手段に保存し、前記第2符号化処理工程で前記記憶手段に保存されている結果データを用い当該指定されたパケットを生成するための第2符号化処理を実行することにより当該指定されたパケットを含む符号データを出力する、ことを特徴とする画像処理方法である。
請求項記載の発明は、
処理対象画像データに対しJPEG2000の符号化処理を複数回に分けて実行する符
号化処理手段と、
前記符号化処理手段より第1回の符号化処理時に出力される符号データをそのまま出力符号データとして生成し、前記符号化処理手段より第2回以降の各回の符号化処理時に出力される符号データを前回の符号化処理時に生成済みの出力符号データと合成した新たな出力符号データを生成する出力符号生成処理手段と、
前記符号化処理手段及び前記出力符号生成処理手段を制御する制御手段とを有し、
前記符号化処理手段は、JPEG2000の符号化処理の、ウェーブレット係数又はその量子化係数を生成するまでの処理(以下、第1符号化処理と記す)を実行するための第1符号化処理手段、JPEG2000の符号化処理の第1符号化処理より後の処理(以下、第2符号化処理と記す)を実行するための第2符号化処理手段、及び、前記第1符号化処理手段により生成されるウェーブレット係数又はその量子化係数(以下、結果データと記す)を保存するための記憶手段を含み、
前記制御手段は、前記符号化処理手段による各回の符号化処理時に前記出力符号生成処理手段により生成される出力符号データの解像度又は画質が前回の符号化処理時に生成された出力符号データの解像度又は画質より向上するように、前記出力符号生成処理手段により最終的に生成されるべき出力符号データを構成するパケットの範囲内で、前記符号化処理手段による各回の符号化処理時の処理対象として指定するパケットを決定し、
前記符号化処理手段は第1回の符号化処理時に、前記制御手段よって処理対象として指定されたパケットに関連した、前記処理対象画像データの画像領域についてのみ前記第1符号化処理手段で第1符号化処理を実行し、その結果データを前記記憶手段に保存し、前記前記第2符号化処理手段で前記記憶手段に保存されている結果データを用い当該指定されたパケットを生成するための第2符号化処理を実行することにより、当該指定されたパケットを含む符号データを出力し、
前記符号化処理手段は第2回以降の各回の符号化処理時に、前記制御手段によって処理対象として指定されたパケットに関連した、前記処理対象画像データの画像領域であって前回までの符号化処理未処理の画像領域についてのみ前記第1符号化処理手段で第1符号化処理を実行し、その結果データを前記記憶手段に保存し、前記第2符号化処理手段で前記記憶手段に保存されている結果データを用い当該指定されたパケットを生成するための第2符号化処理を実行することにより当該指定されたパケットを含む符号データを出力する、ことを特徴とする画像処理装置としてコンピュータを動作させるため、前記各手段としてコンピュータを機能させるプログラムである。
請求項記載の発明は、請求項記載の発明に係るプログラムが記録されたコンピュータが読み取り可能な情報記録媒体である。
請求項1,2記載の発明に係る画像処理装置又は画像処理方法によれば、第1回の符号化処理によって、低解像度又は低画質のJPEG2000の符号データを生成し、第2回以降の各回の符号化処理によって、前回より高解像度又は高画質の符号データを生成することができる。そして、第2回以降の各回の符号化処理において、第1符号化処理及び第2符号化処理のいずれも前回までに処理済みのパケットについては再度実行されないため、処理の重複が減り効率的な処理が可能である。
請求項3,4記載の発明に係るプログラム又は情報記録媒体に記録されたプログラムをコンピュータにロードすることにより、コンピュータを請求項記載の発明に係る画像処理装置として動作させることができる。
以下、本発明の2つの実施形態について説明する。いずれの実施形態においても、符号化方式としてJPEG2000が用いられる。
<第1の実施形態>
図9は本発明の第1の実施形態に係る画像処理装置100のブロック図である。この画像処理装置100は、JPEG2000の符号データに対し復号処理を2回以上に分けて順次実行することにより、解像度又は画質が徐々に向上するようなプログレッシブ画像表示のための表示画像データを生成するものである。
図9において、101は処理対象のJPEG2000の符号データを記憶するための記憶手段である。102は符号データに対する復号処理を2回以上に分けて実行する復号処理手段である。103は復号処理手段102の処理結果を用いてディスプレイに表示するための表示画像データを生成する表示画像生成処理手段である。104は表示画像データを記憶するための記憶手段である。105は復号処理手段102及び表示画像生成処理手段103を制御する制御手段である。
復号処理手段102は、JPEG2000の復号化処理を、その処理の流れに沿って第1復号処理と第2復号処理と2分割し、それぞれを第1復号処理手段106と第2復号処理手段108とで実行する構成である。復号処理手段102には、JPEG2000の復号処理の中間結果データである第1復号処理の結果データ等を記憶するための記憶手段107も含まれる。
本実施形態の第1の実施例では、第1復号処理の結果データはウェーブレット係数である。すなわち、第1の実施例では、JPEG2000の復号処理は、その逆量子化処理までを第1復号処理に含め、逆ウェーブレット変換処理以降を第2復号処理に含めるように分割される。したがって、図1に示した機能ブロック構成と対照するならば、第1の実施例においては、図9の中段に示すように、第1復号処理手段106にタグ処理部111、エントロピー復号部112及び逆量子化部113が含まれ、一方、第2復号処理手段108に逆ウェーブレット変換部114と逆色空間変換部115が含まれる。
本実施形態の第2の実施例では、第1復号処理の結果データはウェーブレット係数の量子化係数である。すなわち、第2の実施例では、JPEG2000の復号処理は、エントロピー復号処理までを第1復号処理に含め、逆量子化処理以降を第2復号処理に含めるように分割される。したがって、図1に示した機能ブロック構成と対照するならば、第2の実施例においては、図9の下段に示すように、第1復号処理手段106にタグ処理部111とエントロピー復号部112が含まれ、一方、第2復号処理手段108に逆量子化部113、逆ウェーブレット変換部114及び逆色空間変換部115が含まれる。
本実施形態に係る画像処理装置100は、例えば図13に示すCPU301、メインメモリ302、ハードディスク装置303、ディスプレイ304、ディスプレイコントローラ305、入力装置(キーボードやマウス等のポインティングデバイス)、ネットワーク・インターフェース307等をバス308に接続したようなコンピュータを利用してプログラムにより実現される。そのためのプログラム、すなわち、図9に示す画像処理装置100を構成する各手段としてコンピュータを機能させるプログラムが、例えばハードディスク装置303よりメインメモリ302にロードされ、CPU301で実行されることにより、コンピュータは画像処理装置100として動作する。
このようなプログラム、及び、同プログラムが記録された磁気ディスク、光ディスク、光磁気ディスク、半導体記憶素子等のコンピュータが読み取り可能な各種情報記録(記憶)媒体も本発明に包含される。
なお、画像処理装置100の記憶手段101,104,107として、メインメモリ302上に割り当てられたメモリ領域が用いられる。
処理される符号データは、例えばハードディスク装置303より読み出されてメインメモリ302上の記憶手段101に書き込まれる。あるいは、ネットワーク・インターフェース307を介しネットワーク経由で符号データが取り込まれ、メインメモリ302上の記憶手段101に書き込まれる。後者の場合、符号データの一部が取り込まれた段階で復号処理を開始すること、つまり符号データの取り込みと復号処理を並行して実行することも可能であり、かかる態様も本実施形態に包含される。
図10は、画像処理装置100の動作を説明するための概略フローチャートである。以下、このフローチャートに沿って画像処理装置100の動作を説明する。
第1復号処理手段106は、記憶手段101より符号データのメインヘッダを読み込みタグ処理部111で解析する(ステップS1)。
制御手段105は、メインヘッダの解析結果に基づいて符号ーブルを記憶手段107上に作成する(ステップS2)。この符号テーブルは、符号データを構成する各パケットついて、処理の対象であるか否かの指定と、その処理が済んだか否かのフラグとを記憶するためのもので、パケットの属性を決定付ける5種類のインデックス(タイル番号、プレシンクト番号、コンポーネント番号、解像度レベル、レイヤー番号)により、対応した属性を持つパケットの情報を検索可能な5次元テーブルである。なお、タイル別に符号テーブルを作成することも可能であり、この場合、各タイルの符号テーブルは4種類のインデックス(プレシンクト番号、コンポーネント番号、解像度レベル、レイヤー番号)により検索可能な4次元テーブルとすればよい。
制御手段105は、復号条件を設定する(ステップS3)。その設定方法であるが、例えば、メインヘッダの解析により得られた原画像のサイズ、解像度レベル数、レイヤー数、コンポーネント数やプログレッションオーダ等と、ディスプレイ304の画面上の画像表示ウィンドウのサイズや解像度等に基づいて、領域(タイル番号、プレシンクト番号)、解像度(解像度レベル)、画質(レイヤー番号)、色(コンポーネント番号)に関する復号条件を決定する。ただし、これは一例であり、例えばユーザがディスプレイ画面を利用したユーザ・インターフェースを通じて、そのような復号条件を直接的に指定するようにしてもよい。
このような復号条件の設定により、最終的に復号すべきパケットの範囲が決まる。そして、画像処理装置100は、それらパケットについての復号処理を2回以上に分けて順次実行することにより、解像度や画質等に関するプログレッシ画像表示のための表示画像データを生成する。
さて、制御手段105は、最終的に復号すべきパケットの範囲内において、1回目の復号処理の対象となるパケットを決定し、その指定情報を符号テーブルに書き込み(ステップS5)、復号処理手段102に1回目の処理の開始を指示する。
ここでは説明を簡易にするため、図7に示したパケット列からなる1タイルの符号データの全パケットを最終的に復号すべき範囲とし、1回目の復号処理で解像度レベル1までのパケット(パケット0〜11)を処理し、2回目の復号処理で解像度レベル2までのパケット(パケット0〜35)を処理することにより、解像度プログレッシブ画像表示のための表示画像データを生成する例を想定して説明する。したがって、当該例では、1回目の復号処理の対象としてパケット0〜11を指定する情報が符号テーブルに書き込まれることになる。
復号処理手段102は符号データのパケットを先頭のものから順に読み込む(ステップS7)。タグ処理部111は、前述したようなプログレッションオーダに対応したforループによって、読み込まれたパケットの属性を認識し、その属性に対応したインデックスを用いて符号テーブルを検索することにより、当該パケットが処理の対象であるか否かの判定を行う(ステップS8)。なお、2回目以降の復号処理の場合、処理対象として指定されたパケットであっても、それに対する処理済みフラグがONに設定されている場合は、当該パケットは処理対象でないと判定する。
処理対象でないと判定されときには、直ちに次のパケットの読み込み処理に進む。なお、前述したように、パケットヘッダに記録されている各コードブロックの符号長を合計することによりパケット長を求めることができるため、パケットデータ(符号)を復号することなく次のパケットを容易にアクセス可能である。したがって、ステップS7ではパケットヘッダのみ読み込むようにし、パケットデータの読み込みをステップS9で行うようにしてもよい。
第1復号処理手段106は、読み込んだパケットを処理対象であると判定したたときには、当該パケットの処理を行い(ステップS9)、その結果データを記憶手段107に書き込むとともに符号テーブルの当該パケットの処理済みフラグをONに設定する(ステップS10)。すなわち、タグ処理部111で当該パケットの符号(パケットデータ)をコードブロックに分割し、エントロピー復号部112でコードブロック毎に符号のエントロピー復号を行う。第2実施例の場合、エントロピー復号により得られたウェーブレット係数の量子化係数を結果データとして記憶手段107に書き込む。第1の実施例の場合、エントロピー復号で得られた量子化係数を逆量子化部113で逆量子化し、得られたウェーブレット係数を結果データとして記憶手段107に書き込む。各パケットについての結果データへのポインタを記録するためのポインタテーブルが予め制御手段105により記憶手段107上に作成されているが、第1復号処理手段106は、1つのパケットの第1復号処理の結果データを記憶手段107に書き込んだ時に、その結果データへのポインタを該ポインタテーブルに記録する。このようにして1回目の第1復号処理が処理対象パケットについて順次実行される。
なお、第1復号処理手段106は、ステップS10において、エントロピー復号部112の処理終了時の「内部状態」も記憶手段107に書き込む。この内部状態とは、エントロピー復号部112の算術復号器により処理される各係数の優位性の状態(Significantフラグ)と算術復号器のレジスタの状態である。また、第1復号処理手段106は、ステップS9において、最上位レイヤー以外のレイヤーのパケットのエントロピー復号処理を行う場合には、処理に先立って、記憶手段107に保存されている「内部状態」を読み込んで、エントロピー復号部112を以前の上位レイヤー・パケットの処理時の状態に復旧させる制御を行う。このようにな制御を行うことによって、最上位レイヤーのパケットからエントロピー復号を再度行うことなく、下位レイヤーのパケットのエントロピー復号を行うことが可能になる。本実施形態では「内部状態」を記憶手段107に保存したが、第1復号処理手段106の内部に「内部状態」保存のための記憶手段を備えてもよい。
第1復号処理手段106による1回目の処理が完了すると(ステップS6,Yes)、制御手段105は第2復号処理手段108に対し1回目の処理の開始を指示する。
第2復号処理手段108は、ポインタテーブルを利用し、前述したようなforループに従って各パケットの第1復号処理の結果データを記憶手段107より順次読み込み(ステップS12)、符号テーブルを参照して該結果データが処理対象であるか判定する(ステップS13)。第2復号処理手段108は、該結果データを処理対象であると判定したときには、当該結果データに対し第2復号処理を実行する(ステップS14)。すなわち、第1の実施例の場合、記憶手段107より読み込んだウェーブレット係数に対し逆ウェーブレット変換部114で逆ウェーブレット変換を行うことにより各コンポーネントのデータを生成し、これに対し逆色空間変換部115で逆色空間変換(必要ならばDCレベル逆シフトも)を行うことにより画像データを生成する。第2の実施例の場合には、記憶手段107より読み込んだウェーブレット係数の量子化係数に対し逆量子化部113で逆量子化を施し、得られたウェーブレット係数に対し逆ウェーブレット変換部114で逆ウェーブレット変換を行い、その結果に対し逆色空間変換部115で逆色空間変換(必要ならばDCレベル逆シフトも)を行う。
第2復号処理手段108において、処理対象のパケットについて同様の処理が繰り返される。当該例の場合、1回目の復号処理で解像度レベル1までのパケット0〜11が処理される結果、解像度レベル1の画像データが出力される。表示画像生成処理手段103は、第2復号処理手段108より出力される画像データ、又は、該画像データを設定された復号条件に応じて変倍処理した画像データを表示画像データとして記憶手段104に書き込む。
処理対象の全パケットについて第2復号処理が完了すると(ステップS11,Yes)制御手段105は、2回目の処理の対象として追加するパケットを決定して符号テーブルにその指定情報を書き込み(ステップS5)、第1復号処理手段106の処理を開始させる。当該例の場合、解像度レベル2のパケット12〜35が処理の対象として追加され、これらパケットに対し第1復号処理手段106により処理が実行され、その結果データが記憶手段107に書き込まれることになる(ステップS6〜S10)。1回目の復号処理で処理されたパケット0〜11については符号テーブルの処理済みフラグがONに設定されているため、今回の処理の対象から除外される。このように、第1復号処理については同じパケットが重複して処理されることはないため、効率的な復号処理が可能である。
さて、2回目の第1復号処理が完了すると、制御手段105からの指示で第2復号処理手段108が2回目の処理を実行する(ステップS11〜S14)。当該例の場合、1回目の第1復号処理によって得られたパケット0〜11のウェーブレット係数又はその量子化係数、及び今回の第1復号処理によって得られたパケット12〜35のウェーブレット係数又はその量子化係数が処理される結果、解像度レベル2の画像データが第2復号処理手段108より出力される。表示画像生成処理手段103は、この解像度レベル2の画像データ、あるいは設定された復号条件に応じて変倍処理した画像データを、表示画像データとして記憶手段104内の前回の表示画像データに上書きする。当該例では、2回目の復号処理の終了により処理を完了する(ステップS4,Yes)。
ここで、図10との関連で復号処理手段102の構成についてさらに述べれば、第1復号処理手段106はステップS6,S7,S8,S9,S10のそれぞれに対応した機能を有する手段から構成され、第2復号処理手段108はステップS11,S12,S13,S14のそれぞれに対応した機能を有する手段から構成される。そして、本実施形態では、それら手段の機能は、図13に示したようなコンピュータを利用しプログラムにより実現される。
以上、図7に示したようなRLCPプログレッションオーダの符号データを復号し、解像度プログレッシブ画像表示を行う例について説明したが、これは一例にすぎない。
例えば、図8に示したようなLRCPプログレッションオーダの符号データについて、画質プログレッシブ画像表示を行うこともできる。この場合、例えば、1回目にレイヤー0のパケット0〜17を処理対象として指定し、その復号処理を行って低画質の表示画像データを生成し、2回目にレイヤー1のパケット18〜35を処理対象として追加指定し、それらパケットに対する第1復号処理を実行し、その結果データと1回目の第1復号処理の結果データを用いて第2復号処理を実行することにより、高画質の表示画像データを生成することができる。なお、この例のように上位レイヤーのパケットに対する第1復号処理と下位レイヤーに対する第1復号処理を分けて行う場合に、ステップS10で、インデックス(コンポーネント番号、解像度レベル、プレシンクト番号、タイル番号)が同一の上位レイヤーのパケットと下位レイヤーのパケットより復号されたウェーブレット係数又はその量子化係数のビットプレーンを連結した形で記憶手段107に記憶させるようにしてもよい。
なお、JPEG2000の符号データと同様な独立に処理可能な部分符号の集合から構成される、他のサブバンド符号化方式による符号データを対象として、同様の復号処理を実行する画像処理装置は、以上の説明から容易に実現可能であろう。この場合、そのサブバンド符号化方式による復号処理の、サブバンド係数又はその量子化係数を生成する処理までを第1復号処理手段106で実行し、それより後の処理を第2復号処理手段108で実行する構成とすればよい。そして、1回目の復号処理時に低解像度又は低画質のインデックスを持つ部分符号を処理対象として指定し、2回目以降の各回の復号処理時に、前回より高解像度又は高画質のインデックスを持つ部分符号を処理対象として追加指定することにより、解像度又は画質に関するプログレッシブ画像表示のための表示画像データを生成することが可能である。
<第2の実施形態>
図11は本発明の第2の実施形態に係る画像処理装置200のブロック図である。
例えば、サーバ側で画像データの符号化処理を実行し符号データを生成してクライアントへ送信し、クライアント側で符号データを復号し画像を表示するようなシステムにおいて、まずサーバから低解像度(低画質)の符号データをクライアントへ送信し、クライアント側で早い段階で画像の内容を把握できるようにし、その後、サーバから高解像度(高画質)の符号データをクライアントへ送信し、クライアント側で高解像度(高画質)の画像を表示できるようにしたい場合がある。この画像処理装置200は、そのような場合の符号データ生成処理を効率よく行うことができる。
図11において、201は処理対象の画像データを記憶するための記憶手段である。202はJPEG2000の符号化処理を実行する符号化処理手段である。203は符号化処理手段202の処理結果を用いて出力符号データ(JPEG2000のコードストリーム)を生成する出力符号生成処理手段である。204は出力符号データを記憶するための記憶手段である。205は符号化処理等を制御するための制御手段である。
符号化処理手段202は、JPEG2000の符号化処理を、その処理の流れに沿って第1符号化処理と第2符号化処理とに分け、それぞれを第1符号化処理手段206と第2符号化処理手段208とで実行する構成である。符号化処理手段202には、JPEG2000の符号化処理の中間結果データである第1符号化処理の結果データ等を記憶するための記憶手段207も含まれる。
本実施形態の第1の実施例では、第1符号化処理の結果データはウェーブレット係数の量子化係数である。すなわち、第1の実施例では、JPEG2000の符号化処理は、その量子化処理までを第1符号化処理に含め、エントロピー符号化処理以降を第2符号化処理に含めるように分割される。したがって、図1に示した機能ブロック構成と対照するならば、第1の実施例においては、図11の中段に示すように、第1符号化処理手段206には色空間変換部211、ウェーブレット変換部212及び量子化部213が含まれ、一方、第2符号化処理手段208にはエントロピー符号化部214とタグ処理部215が含まれる。
本実施形態の第2の実施例では、第1符号化処理の結果データはウェーブレット係数である。すなわち、第2の実施例では、JPEG2000の符号化処理は、ウェーブレット変換処理までを第1符号化処理に含め、量子化処理以降を第2符号化処理に含めるように分割される。したがって、図1に示した機能ブロック構成と対照するならば、第2の実施例においては、図11の下段に示すように、第1符号化処理手段206には色空間変換部部2111とウェーブレット変換部212が含まれ、第2符号化処理手段208には量子化部213、エントロピー符号化部214及びタグ処理部215が含まれる。
本実施形態に係る画像処理装置200は、例えば図13に示すCPU301、メインメモリ302、ハードディスク装置303、ディスプレイ304、ディスプレイコントローラ305、入力装置(キーボードやマウス等のポインティングデバイス)、ネットワーク・インターフェース307等をバス308に接続したようなコンピュータを利用してプログラムにより実現される。そのためのプログラム、すなわち、図11に示す画像処理装置200を構成する各手段としてコンピュータを機能させるプログラムが、例えばハードディスク装置303よりメインメモリ302にロードされ、CPU301で実行されることにより、コンピュータは画像処理装置200として動作する。このようなプログラム、及び、同プログラムが記録された、コンピュータが読み取り可能な各種情報記録(記憶)媒体も本発明に包含される。
なお、画像処理装置200の記憶手段201,204,207として、メインメモリ302上に割り当てられたメモリ領域が用いられる。処理される画像データは、例えばハードディスク装置303より読み出されてメインメモリ302上の記憶手段01に書き込まれる。
図12は、画像処理装置200の動作を説明するための概略フローチャートである。以下、このフローチャートに沿って画像処理装置200の動作を説明する。
制御手段205は、符号化条件を設定する(ステップS21)。設定される符号化条件とは、例えば、画像サイズ、タイルサイズ、プレシンクトサイズ、解像度レベル数、レイヤー数、コンポーネント数やプログレッションオーダ等である。
この符号化条件の設定により、最終的にどのような構造の符号データを生成するかが決まる。そして、画像処理装置200は、そのような構造の符号データを生成するための符号化処理を2回以上に分けて順次実行する。
次に、制御手段205は、符号ーブルを記憶手段207上に作成する(ステップS22)。この符号テーブルは、最終的に生成すべき符号データを構成する各パケット毎に、符号化処理の対象であるか否かの指定情報と、その処理が済んだか否かのフラグとを記憶するためのもので、パケットの属性を決定付ける5種類のインデックス(タイル番号、プレシンクト番号、コンポーネント番号、解像度レベル、レイヤー番号)により、対応した属性を持つパケットの情報を検索可能な5次元テーブルである。なお、タイル別に符号テーブルを作成することも可能であり、この場合、各タイルの符号テーブルは4種類のインデックス(プレシンクト番号、コンポーネント番号、解像度レベル、レイヤー番号)によりパケットの情報を検索可能な4次元テーブルとすればよい。
さて、制御手段205は、最終的に生成すべき符号データを構成するパケットの範囲内で、1回目の符号化処理の対象となるパケットを決定し、その指定情報を符号テーブルに書き込み(ステップS24)、1回目の処理の開始を第1符号化処理手段206に指示する。例えば、解像度レベル0〜2のパケットからなる符号データを最終的に生成したい場合に、1回目の符号化処理で解像度レベル0,1のパケットのみからなる符号データを生成したいときには、解像度レベル0,1の属性を持つパケットを1回目の符号化処理の対象として指定する。
第1符号化処理手段206は、記憶手段201に記憶されている画像データを符号化条件で指定されたタイルサイズでタイル分割し、タイル番号0のタイルより順にタイルを選び、選んだタイルの画像データをプレシンクト単位で順に読み込む(ステップS26)。第1符号化処理手段206は、符号テーブルを参照することにより、読み込んだプレシンクトの画像データが処理の対象であるか否かを判定する(ステップS27)。符号テーブルにおいて、そのプレシンクト番号及びタイル番号を持つ1つ以上のパケットが処理対象に指定されていて、かつ、それらパケットに対する第1符号化処理のフラグがOFF(未処理)であるときに、該プレシンクトの画像データを処理対象と判断する。
第1符号処理手段206は、処理対象と判定したプレシンクトの画像データに対し第1符号化処理を行い(ステップS28)、その結果データをパケットに対応させて記憶手段207に書き込む(ステップS29)。すなわち、第1の実施例の場合には、色空間変換部211により色空間変換(必要ならばDCレベルシフトも)を行い、各コンポーネントのデータにウェーブレット変換部212でウェーブレット変換を行い、得られたウェーブレット係数に量子化部213で量子化を施し、その量子化係数を結果データとして記憶手段207に書き込む。第2の実施例の場合は、ウェーブレット変換までの処理を行い、得られたウェーブレット係数を結果データとして記憶手段207に書き込む。ステップS29において、第1符号化処理手段206は、処理したプレシンクトに対応したプレシンクト番号及びタイル番号を持つ全てのパケットについて、符号テーブル上の第1符号化処理のフラグをON(処理済み)に設定する処理も行う。
以上の処理が各タイルに対して繰り返され、最後のタイルの最後のプレシンクトの画像データまで処理されると、1回目の符号化処理の第1符号化処理は終了したと判断され(ステップS25)、制御手段205は第2符号化処理手段208に1回目の処理の開始を指示する。
第2符号化処理手段208は、符号化条件として指定されたプログレッションオーダに対応した前述したようなforループに従って、各パケットに対応した第1符号化処理の結果データ(ウェーブレット係数又はその量子化係数)を記憶手段207より順次読み込み(ステップS31)、符号テーブルにおいて該パケットが処理対象として指定されていて、かつ、該パケットの第2符号化処理のフラグがOFF(未処理)であるならば処理対象であると判断し(ステップS32,Yes)、該パケットに関する第2符号化処理を実行し、この際、該パケットの第2符号化処理のフラグをON(処理済み)に設定する(ステップS33)。すなわち、第1の実施例の場合、記憶手段207よりウェーブレット係数の量子化係数を読み込み、これに対しエントロピー符号化部214でエントロピー符号化を行い、その符号からタグ処理部215でパケットを生成する。なお、JPEG2000の符号データに必要なメインヘッダ、タイルパートヘッダ等のタグ情報やタグもタグ処理部215で生成される。
なお、第2符号化処理手段208は、ステップS33において、エントロピー符号化部214の処理終了時の「内部状態」を記憶手段207に保存する。この内部状態とは、エントロピー符号化部214の算術符号化器に処理される各係数の優位性の状態(Significantフラグ)と算術符号化器のレジスタの状態である。また、第2符号化処理手段208は、ステップS33において、最上位レイヤー以外のレイヤーのパケットのエントロピー符号化処理を行う場合には、処理に先立って、記憶手段207に保存されている「内部状態」を読み込んで、エントロピー符号化部214を以前の上位レイヤー・パケットの処理時の状態に復旧させる制御を行う。このような制御を行うことにより、最上位レイヤーのパケットからエントロピー符号化を再度行うことなく、下位レイヤーのパケットのエントロピー符号化を行うことが可能となる。本実施形態では「内部状態」を記憶手段207に保存したが、第2符号化処理手段208の内部に「内部状態」を保存するための記憶手段を備えてもよいことは当然である。
第2符号化処理手段208の同様の処理が繰り返されることにより、1回目の符号化処理の対象として指定されたパケット(例えば解像度レベル0,1のパケット)が指定されたプログレッションオーダの順に生成され、メインヘッダやタイルパートヘッダ、その他のタグを付加されて順次出力される。出力符号生成処理手段203は、第2符号化処理手段208より出力されたパケット、タグ情報、タグを記憶手段204に順次記憶させる処理を行う。
以上の1回目の第2符号化処理が完了すると(ステップS30,Yes)、上記例の場合、出力符号データとして、解像度レベル0,1のパケットからなるJPEG2000の符号データが記憶手段204上に生成される。
次に、制御手段205は、最終的に生成すべき符号データを構成するパケットの範囲内で、2回目の符号化処理の対象として追加するパケットを決定し、その指定情報を符号テーブルに書き込み(ステップS24)、2回目の処理の開始を第1符号化処理手段206に指示する。上記例の場合、解像度レベル2の属性を持つパケットを処理対象として追加指定する。
第1符号化処理手段206は1回目の処理時と同様の処理を実行する。上記例のように、特定の領域(タイル、プレシンクト)を除外しない符号化条件での符号化処理の場合、生成すべき全てのパケットに関連したタイル、プレシンクトの画像データについての第1符号化処理は1回目の処理時に終了しており、全てのパケットに対する第1符号化処理フラグがONに設定済みとなっている。したがって、全てのプレシンクトの画像データについてステップS27で処理対象でないと判定される結果、実際にはプレシンクト単位で画像データが読み捨てされ、同じパケットについて第1符号化処理が重複して実行されることはない。
第1符号化処理手段206の2回目の処理が終了すると(ステップS25,Yes)、制御手段205は第2符号化処理手段208に2回目の処理の開始を指示する。第2符号化処理手段20は1回目と同様の処理を行うが、第2符号化処理のフラグがON(処理済み)のパケットを処理対象から除外し(ステップS32)、符号化処理対象として指定されたパケットのうち1回目で処理されなかったパケットについてのみ第2符号化処理(ステップS33)を実行する。つまり、上記例の場合であれば、解像度レベル0〜2のパケット群のうち、解像度レベル2のパケットについてのみ第2符号化処理が実行される。したがって、2回目の符号化処理対象として指定されたパケットが生成され、第2符号化処理手段208より、これらパケットと必要なタイルパートヘッダが順次出力され、最後に更新されたメインヘッダが出力される。出力符号生成処理手段203は、第2符号化処理手段208より出力されるパケットやタイルパートヘッダ等を、記憶手段204内に1回目の符号化処理時に生成済みの出力符号データに結合する形で順次書き込み、最後に更新されたメインヘッダが入力されると、該メインヘッダにより旧メインヘッダを書き替える。かくして、上記例の場合、解像度レベル0〜2のパケットからなる、より高い解像度の出力符号データとして記憶手段204上に生成される。すなわち、出力符号生成処理手段203は、1回目の符号化処理時においては、符号化処理手段202から出力された符号データをそのまま出力符号データとして記憶手段204に生成し、2回目(それ以降の各回)の符号化処理時においては、符号化処理手段202より出力された符号データと、生成済みの出力符号データとを合成することにより新しい出力符号データを生成するわけである。
そして、上記例の場合、2回目の処理が終了すると(ステップS30,Yes)、処理は完了したと判断される(ステップS23,Yes)。符号化処理を3回以上に分けて実行する場合には、3回目以降の同様の処理が繰り返される。
以上のように、本実施形態においては、符号化処理は複数回に分けて実行されるが、第1符号化処理及び第2符号化処理のいずれにおいても同一パケットに関し処理が重複して行われることはない。したがって、符号化処理全体を単純に繰り返し実行する方法に比べ、処理を効率的に行うことができる。
ここで、図12との関連で符号化処理手段202の構成についてさらに述べれば、第1符号化処理手段206はステップS25,S26,S27,S28,S29それぞれに対応した機能を有する手段から構成され、第2符号化処理手段208はステップS30,S31,S32,S33それぞれに対応した機能を有する手段から構成される。そして、本実施形態では、それら手段の機能は、図13に示したようなコンピュータを利用しプログラムにより実現される。
さて、上記例では、1回目の処理で低解像度の出力符号データを生成し、2回目の処理でより高解像度の出力符号データを生成した。したがって、低解像度の出力符号データが生成された時点で、それをクライアントへ送信し、その後、高解像度の出力符号データが生成された時点でそれをクライアントへ送信するならば、クライアント側では、早い段階で低解像度画像を表示させて画像の内容を確認することができ、その後に精細な画像を表示させることができる。
なお、複数レイヤーの符号データを生成する処理を2回以上に分割して行い、1回目の処理で上位レイヤーのみのパケットからなる低画質の出力符号データを生成し、2回目以降の処理で、より下位レイヤーのパケットを含む、より高画質の出力符号データを生成することもできる。
以上に説明した画像処理装置200は、請求項に係る発明の一実施形態であり、また画像処理装置200としてコンピュータを動作させるためのプログラムは請求項に係る発明の一実施形態である。また、画像処理装置200による画像処理手順は請求項に係る発明の一実施形態でもある。
また、JPEG2000の符号データと同様な独立に処理可能な部分符号の集合から構成される符号データを生成する、他のサブバンド符号化方式を利用し、同様の符号化処理を実行する画像処理装置は、以上の説明から容易に実現可能であろう。この場合、そのサブバンド符号化方式による符号化処理の、サブバンド係数又はその量子化係数を生成する処理までを第1符号化処理手段206で実行し、それより後の処理を第2符号化処理手段208で実行する構成とすればよい。そして、1回目の符号化処理時に低解像度又は低画質のインデックスを持つ部分符号を処理対象として指定し、2回目以降の各回の符号化処理時に、前回より高解像度又は高画質のインデックスを持つ部分符号を処理対象として追加指定することにより、解像度又は画質を徐々に向上させた符号データを生成することが可能である。
JPEG2000の概要を説明するための概略ブロック図である。 JPEG2000の符号化処理フローの説明図である。 JPEG2000の復号処理フローの説明図である。 ウェーブレット変換によるサブバンド分割の例を示す図である。 画像、タイル、プレシンクト、コードブロックの説明図である。 レイヤー分割とレイヤーを構成するパケットの例を示す図である。 RLCPプログレッションオーダによるパケット配列の例を示す図である。 LRCPプログレッションオーダによるパケット配列の例を示す図である。 本発明の第1の実施形態に係る画像処理装置の構成を説明するためのブロック図である。 第1の実施形態に係る画像処理装置の動作を説明するためのフローチャートである。 本発明の第2の実施形態に係る画像処理装置の構成を説明するためのブロック図である。 第2の実施形態に係る画像処理装置の動作を説明するためのフローチャートである。 本発明の各実施形態に係る画像処理装置の実現のために利用可能なコンピュータの構成例を示すブロック図である。
符号の説明
100 画像処理装置
101 記憶手段
102 復号処理手段
103 表示画像生成処理手段
104 記憶手段
105 制御手段
106 第1復号処理手段
107 記憶手段
108 第2復号処理手段
200 画像処理装置
201 記憶手段
202 符号化処理手段
203 出力符号生成処理手段
204 記憶手段
205 制御手段
206 第1符号化処理手段
207 記憶手段
208 第2符号化処理手段

Claims (4)

  1. 処理対象画像データに対しJPEG2000の符号化処理を複数回に分けて実行する符号化処理手段と、
    前記符号化処理手段より第1回の符号化処理時に出力される符号データをそのまま出力符号データとして生成し、前記符号化処理手段より第2回以降の各回の符号化処理時に出力される符号データを前回の符号化処理時に生成済みの出力符号データと合成した新たな出力符号データを生成する出力符号生成処理手段と、
    前記符号化処理手段及び前記出力符号生成処理手段を制御する制御手段とを有し、
    前記符号化処理手段は、JPEG2000の符号化処理の、ウェーブレット係数又はその量子化係数を生成するまでの処理(以下、第1符号化処理と記す)を実行するための第1符号化処理手段、JPEG2000の符号化処理の第1符号化処理より後の処理(以下、第2符号化処理と記す)を実行するための第2符号化処理手段、及び、前記第1符号化処理手段により生成されるウェーブレット係数又はその量子化係数(以下、結果データと記す)を保存するための記憶手段を含み、
    前記制御手段は、前記符号化処理手段による各回の符号化処理時に前記出力符号生成処理手段により生成される出力符号データの解像度又は画質が前回の符号化処理時に生成された出力符号データの解像度又は画質より向上するように、前記出力符号生成処理手段により最終的に生成されるべき出力符号データを構成するパケットの範囲内で、前記符号化処理手段による各回の符号化処理時の処理対象として指定するパケットを決定し、
    前記符号化処理手段は第1回の符号化処理時に、前記制御手段よって処理対象として指定されたパケットに関連した、前記処理対象画像データの画像領域についてのみ前記第1符号化処理手段で第1符号化処理を実行し、その結果データを前記記憶手段に保存し、前記前記第2符号化処理手段で前記記憶手段に保存されている結果データを用い当該指定されたパケットを生成するための第2符号化処理を実行することにより、当該指定されたパケットを含む符号データを出力し、
    前記符号化処理手段は第2回以降の各回の符号化処理時に、前記制御手段によって処理対象として指定されたパケットに関連した、前記処理対象画像データの画像領域であって前回までの符号化処理未処理の画像領域についてのみ前記第1符号化処理手段で第1符号化処理を実行し、その結果データを前記記憶手段に保存し、前記第2符号化処理手段で前記記憶手段に保存されている結果データを用い当該指定されたパケットを生成するための第2符号化処理を実行することにより当該指定されたパケットを含む符号データを出力する、ことを特徴とする画像処理装置。
  2. 処理対象画像データに対しJPEG2000の符号化処理を複数回に分けて実行する符号化処理工程と、
    前記符号化処理工程より第1回の符号化処理時に出力される符号データをそのまま出力符号データとして生成し、前記符号化処理工程より第2回以降の各回の符号化処理時に出力される符号データを前回の符号化処理時に生成済みの出力符号データと合成した新たな出力符号データを生成する出力符号生成処理工程と、
    前記符号化処理工程及び前記出力符号生成処理工程を制御する制御工程とを有し、
    前記符号化処理工程は、JPEG2000の符号化処理の、ウェーブレット係数又はその量子化係数を生成するまでの処理(以下、第1符号化処理と記す)を実行するための第1符号化処理工程、JPEG2000の符号化処理の第1符号化処理より後の処理(以下、第2符号化処理と記す)を実行するための第2符号化処理工程、及び、前記第1符号化処理工程により生成されるウェーブレット係数又はその量子化係数(以下、結果データと記す)を記憶手段に保存する保存工程を含み、
    前記制御工程は、前記符号化処理工程による各回の符号化処理時に前記出力符号生成処理工程により生成される出力符号データの解像度又は画質が前回の符号化処理時に生成された出力符号データの解像度又は画質より向上するように、前記出力符号生成処理工程により最終的に生成されるべき出力符号データを構成するパケットの範囲内で、前記符号化処理工程による各回の符号化処理時の処理対象として指定するパケットを決定し、
    前記符号化処理工程において第1回の符号化処理時に、前記制御工程よって処理対象として指定されたパケットに関連した、前記処理対象画像データの画像領域についてのみ前記第1符号化処理工程で第1符号化処理を実行し、その結果データを前記保存工程で前記記憶手段に保存し、前記第2符号化処理工程で前記記憶手段に保存されている結果データを用い当該指定されたパケットを生成するための第2符号化処理を実行することにより、当該指定されたパケットを含む符号データを出力し、
    前記符号化処理工程において第2回以降の各回の符号化処理時に、前記制御工程によって処理対象として指定されたパケットに関連した、前記処理対象画像データの画像領域であって前回までの符号化処理未処理の画像領域についてのみ前記第1符号化処理工程で第1符号化処理を実行し、その結果データを前記保存工程で前記記憶手段に保存し、前記第2符号化処理工程で前記記憶手段に保存されている結果データを用い当該指定されたパケットを生成するための第2符号化処理を実行することにより当該指定されたパケットを含む符号データを出力する、ことを特徴とする画像処理方法。
  3. 処理対象画像データに対しJPEG2000の符号化処理を複数回に分けて実行する符号化処理手段と、
    前記符号化処理手段より第1回の符号化処理時に出力される符号データをそのまま出力符号データとして生成し、前記符号化処理手段より第2回以降の各回の符号化処理時に出力される符号データを前回の符号化処理時に生成済みの出力符号データと合成した新たな出力符号データを生成する出力符号生成処理手段と、
    前記符号化処理手段及び前記出力符号生成処理手段を制御する制御手段とを有し、
    前記符号化処理手段は、JPEG2000の符号化処理の、ウェーブレット係数又はその量子化係数を生成するまでの処理(以下、第1符号化処理と記す)を実行するための第1符号化処理手段、JPEG2000の符号化処理の第1符号化処理より後の処理(以下、第2符号化処理と記す)を実行するための第2符号化処理手段、及び、前記第1符号化処理手段により生成されるウェーブレット係数又はその量子化係数(以下、結果データと記す)を保存するための記憶手段を含み、
    前記制御手段は、前記符号化処理手段による各回の符号化処理時に前記出力符号生成処理手段により生成される出力符号データの解像度又は画質が前回の符号化処理時に生成された出力符号データの解像度又は画質より向上するように、前記出力符号生成処理手段により最終的に生成されるべき出力符号データを構成するパケットの範囲内で、前記符号化処理手段による各回の符号化処理時の処理対象として指定するパケットを決定し、
    前記符号化処理手段は第1回の符号化処理時に、前記制御手段よって処理対象として指定されたパケットに関連した、前記処理対象画像データの画像領域についてのみ前記第1符号化処理手段で第1符号化処理を実行し、その結果データを前記記憶手段に保存し、前記前記第2符号化処理手段で前記記憶手段に保存されている結果データを用い当該指定されたパケットを生成するための第2符号化処理を実行することにより、当該指定されたパケットを含む符号データを出力し、
    前記符号化処理手段は第2回以降の各回の符号化処理時に、前記制御手段によって処理対象として指定されたパケットに関連した、前記処理対象画像データの画像領域であって前回までの符号化処理未処理の画像領域についてのみ前記第1符号化処理手段で第1符号化処理を実行し、その結果データを前記記憶手段に保存し、前記第2符号化処理手段で前記記憶手段に保存されている結果データを用い当該指定されたパケットを生成するための第2符号化処理を実行することにより当該指定されたパケットを含む符号データを出力する、ことを特徴とする画像処理装置としてコンピュータを動作させるため、前記各手段としてコンピュータを機能させるプログラム。
  4. 請求項記載のプログラムが記録されたコンピュータが読み取り可能な情報記録媒体。
JP2006194763A 2006-07-14 2006-07-14 画像処理装置、画像処理方法、プログラム及び情報記録媒体 Expired - Fee Related JP4688164B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006194763A JP4688164B2 (ja) 2006-07-14 2006-07-14 画像処理装置、画像処理方法、プログラム及び情報記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006194763A JP4688164B2 (ja) 2006-07-14 2006-07-14 画像処理装置、画像処理方法、プログラム及び情報記録媒体

Publications (2)

Publication Number Publication Date
JP2008022488A JP2008022488A (ja) 2008-01-31
JP4688164B2 true JP4688164B2 (ja) 2011-05-25

Family

ID=39078093

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006194763A Expired - Fee Related JP4688164B2 (ja) 2006-07-14 2006-07-14 画像処理装置、画像処理方法、プログラム及び情報記録媒体

Country Status (1)

Country Link
JP (1) JP4688164B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9996895B2 (en) 2015-05-01 2018-06-12 Ricoh Company, Ltd. Image display system, information processing apparatus, and image display method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06309376A (ja) * 1993-04-26 1994-11-04 Hitachi Ltd 圧縮画像表示装置およびこれを用いた画像ファイル検索システム
JP2000244742A (ja) * 1999-02-19 2000-09-08 Canon Inc 画像処理装置及び方法
JP2005184086A (ja) * 2003-12-16 2005-07-07 Ricoh Co Ltd 画像処理装置、画像処理方法、プログラム及び情報記録媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06309376A (ja) * 1993-04-26 1994-11-04 Hitachi Ltd 圧縮画像表示装置およびこれを用いた画像ファイル検索システム
JP2000244742A (ja) * 1999-02-19 2000-09-08 Canon Inc 画像処理装置及び方法
JP2005184086A (ja) * 2003-12-16 2005-07-07 Ricoh Co Ltd 画像処理装置、画像処理方法、プログラム及び情報記録媒体

Also Published As

Publication number Publication date
JP2008022488A (ja) 2008-01-31

Similar Documents

Publication Publication Date Title
JP4177583B2 (ja) ウェーブレット処理システム、方法及びコンピュータプログラム
JP4064196B2 (ja) クライアントコンピュータ、サーバコンピュータ、プログラム、記憶媒体、画像データ処理システム及び画像データ処理方法
JP4618676B2 (ja) 構造化文書符号の転送方法、画像処理システム、サーバ装置、プログラム及び情報記録媒体
JP2007142614A (ja) 画像処理装置、画像処理方法、プログラム及び情報記録媒体
JP3922919B2 (ja) 静止画像伸長装置及び静止画像伸長方法
JP2004088425A (ja) 符号変換装置、符号変換方法、プログラム及び記憶媒体
CN101309417A (zh) 用于处理图像数据的方法和设备
JP4356032B2 (ja) 情報処理装置および方法
JP4409897B2 (ja) 画像処理装置、画像処理方法、プログラム及び情報記録媒体
JP2004153751A (ja) 画像処理装置及び画像処理方法
JP3952459B2 (ja) 画像処理装置、プログラム、記憶媒体及び画像処理方法
JP4609918B2 (ja) 画像処理システム、画像処理方法、プログラム及び情報記録媒体
JP4721262B2 (ja) 画像処理装置、画像処理方法、プログラム及び情報記録媒体
JP4450322B2 (ja) 画像処理装置、画像処理方法、プログラム及び情報記録媒体
JP2004186871A (ja) 画像処理装置、撮像装置、プログラム及び記憶媒体
US20050169542A1 (en) Image processing apparatus, image processing method, program, and information recording medium
JP4640942B2 (ja) サーバ装置
JP4688164B2 (ja) 画像処理装置、画像処理方法、プログラム及び情報記録媒体
JP2007014002A (ja) 画像処理装置、画像処理用プログラム及び記録媒体
JP4859014B2 (ja) 画像処理装置、画像処理方法、プログラム及び情報記録媒体
JP4489474B2 (ja) 画像処理装置、プログラムおよび記録媒体
JP3989801B2 (ja) 画像処理装置、画像処理用プログラム及び記憶媒体
JP4189956B2 (ja) 画像データ生成装置及び画像データ生成方法
JP4059399B2 (ja) 画像処理装置、画像処理システム、画像出力制御方法、プログラム、及び、記録媒体
JP4280752B2 (ja) コンピュータ等の画像処理装置、画像処理用プログラム及び記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110117

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110209

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110210

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140225

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees