JP4789192B2 - 符号処理装置、プログラム及び情報記録媒体 - Google Patents
符号処理装置、プログラム及び情報記録媒体 Download PDFInfo
- Publication number
- JP4789192B2 JP4789192B2 JP2006109746A JP2006109746A JP4789192B2 JP 4789192 B2 JP4789192 B2 JP 4789192B2 JP 2006109746 A JP2006109746 A JP 2006109746A JP 2006109746 A JP2006109746 A JP 2006109746A JP 4789192 B2 JP4789192 B2 JP 4789192B2
- Authority
- JP
- Japan
- Prior art keywords
- code
- progression
- tile
- order
- jpeg2000
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8146—Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
- H04N21/8153—Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics comprising still images, e.g. texture, background image
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/164—Feedback from the receiver or from the transmission channel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/167—Position within a video image, e.g. region of interest [ROI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/187—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/188—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/40—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/48—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
- H04N19/64—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
- H04N19/647—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission using significance based coding, e.g. Embedded Zerotrees of Wavelets [EZW] or Set Partitioning in Hierarchical Trees [SPIHT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/85406—Content authoring involving a specific file format, e.g. MP4 format
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Computer Security & Cryptography (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
本発明は、JPEG2000の符号又はそれを含むJPEG2000ファミリーフォーマットのファイルの生成と処理に関する。本発明はJPIPサーバ等に好適に応用できるものである。
近年、画像圧縮の分野において、JPEG(Joint Photographic Coding Experts Group)で採用されたDCT(離散コサイン変換)に代わる周波数変換として、ウェーブレット変換の採用が増加している。その代表例は、2001年に国際標準になったJPEG2000である。
JPEG2000の符号化処理は概ね図1のブロック図に示す流れで行われる。画像は矩形のタイルに分割され(分割数≧1)、タイル毎に処理される。
まず、各タイルは、輝度・色差等のコンポ−ネントへ色変換される(ブロック1)。RBGデータのような正数で表されるデータの場合、ダイナミックレンジの半分を減じるDCレベルシフトも施される。変換後のコンポ−ネント(タイルコンポ−ネントと呼ばれる)はウェーブレット変換を適用されてサブバンドに分割される(ブロック2)。1回のウェーブレット変換(デコンポジション)によってLL,HL,LH,HHと略称される4つのサブバンドに分割される。そして、LLサブバンドに対して再帰的にウェーブレット変換を繰返すと、最終的に1つのLLサブバンドと複数のHL,LH,HHサブバンドが生成される。
3回のウェーブレット変換(デコンポジション)を行った場合のサブバンドを図3に示す。図3中の各サブバンド名の接頭の数字(例えば”3LL”の”3”)は、デコンポジションレベル(施されたウェーブレット変換の回数)を示す。また、後の説明のため、デコンポジションレベルと解像度レベルの関係を図3に示した。
9×7変換と呼ばれる非可逆ウェーブレット変換が用いられる場合には、ウェーブレット係数は、サブバンド毎に線形量子化(正規化を含む)を施され(ブロック3)、次にエントロピー符号化される(ブロッ4)。このエントロピー符号化では、各サブバンドはプリシンクトとよばれる矩形に分割される。プリシンクトとは、サブバンドを矩形に分割したもので、HL,LH,HHの3つのサブバンドの対応したプリシンクトは3つで1まとまりとして扱われる。ただし、LLサブバンドを分割したプリシンクトは1つで1まとまりとして扱われる。プリシンクトは、大まかには画像中の場所(Position)を表すものである。プリシンクトはサブバンドと同じサイズにできる。プリシンクトをさらに矩形に分割したものがコードブロックである。図2にタイル、サブバンド、プリシンクト、コードブロックの関係を示す。よって、物理的な大きさの序列は、画像≧タイル>サブバンド≧プリシンクト≧コードブロックとなる。以上の分割の後、係数のエントロピー符号化(ビットプレーン符号化)が、コードブロック毎かつビットプレーン順に行われる。
次に必要なエントロピー符号をまとめてパケットを生成する(ブロック5)。パケットとは、プリシンクトに含まれる全てのコードブロックから、ビットプレーンの符号の一部(例えば全てのコードブロックのMSBから3枚目までのビットプレーンの符号)を集めたものにヘッダ(パケットヘッダ)をつけたものである。上記”一部”は”空”(から)でもよいので、パケットの中身が符号的には”空)”ということもある。パケットヘッダには、当該パケットに含まれる符号に関する情報が含まれる。各パケットは独立に扱うことができる。いわばパケットは符号の単位である。
そして、全てのプリシンクト(=全てのコードブロック=全てのサブバンド)のパケットを集めると、画像全域の符号の一部(例えば、画像全域のウェーブレット係数の、MSBから3枚目までのビットプレーンの符号)ができるが、これをレイヤと呼ぶ。レイヤは、大まかには画像全体のビットプレーンの符号の一部であるから、復号されるレイヤ数が増えれば画質は上がることになる。すなわち、レイヤは画質の単位である。すべてのレイヤを集めると、画像全域の全てのビットプレーンの符号になる。
デコンポジションレベル数=2、プリシンクトサイズ=サブバンドサイズ、としたときのレイヤの例を図4の上段に示す。いくつかのレイヤに含まれるパケットを図4の下段に太枠で囲んで示す。
以上のようにして生成されたパケットやレイヤの区切りに従って、パケットを配列するとともに必要なタグやタグ情報を付加することにより、最終的なJPEG2000の符号(コードストリーム)が形成される(ブロック6)。
以上の説明から理解されるように、パケットは
・どのコンポ−ネント(記号C)に属するか、
・どの解像度レベル(記号R)に属するか、
・どのプリシンクト(“場所”,記号P)に属するか、
・どのレイヤ(記号L)に属するか、
という4つの属性(本願では、これら属性を”プログレッション属性”と呼ぶ)を有する。パケットの先頭にはパケットヘッダがあり、その後にMQ符号(パケットデータ)が続いているが、パケットヘッダには上記属性そのものは記述されていない。
・どのコンポ−ネント(記号C)に属するか、
・どの解像度レベル(記号R)に属するか、
・どのプリシンクト(“場所”,記号P)に属するか、
・どのレイヤ(記号L)に属するか、
という4つの属性(本願では、これら属性を”プログレッション属性”と呼ぶ)を有する。パケットの先頭にはパケットヘッダがあり、その後にMQ符号(パケットデータ)が続いているが、パケットヘッダには上記属性そのものは記述されていない。
パケットの配列とは、パケット(パケットヘッダおよびパケットデータ)を、どの属性の順に階層的に並べるかを意味する。この配列順をプログレッションオーダと呼び、図5に示す5通りが規定されている。
ここで、エンコーダがプログレッションオーダの順にパケットを並べる様子と、デコーダがプログレッションオーダの順にパケットの属性を解釈する様子を以下に示す。
例えば、LRCPプログレッションオーダの場合、次のようなforループ
for(レイヤ){
for(解像度){
for(コンポ−ネント){
for(プリシンクト){
エンコード時:パケットを配置
デコード時:パケットの属性を解釈
}
}
}
}
により、パケットの配列(エンコード時)又は解釈(デコード時)がなされる。
for(レイヤ){
for(解像度){
for(コンポ−ネント){
for(プリシンクト){
エンコード時:パケットを配置
デコード時:パケットの属性を解釈
}
}
}
}
により、パケットの配列(エンコード時)又は解釈(デコード時)がなされる。
各パケットのパケットヘッダには、
・そのパケットが空かどうか、
・そのパケットにどのコードブロックが含まれるか、
・そのパケットに含まれる各コードブロックのゼロビットプレーン数、
・そのパケットに含まれる各コードブロック符号のコーディングパス数(ビットプレーン数)、
・そのパケットに含まれる各コードブロックの符号長、
が記載されている。しかし、レイヤ番号や解像度レベル等はパケットヘッダには一切記載されていない。デコード時に、そのパケットがどのレイヤのどの解像度レベルのものかを判別するには、メインヘッダ中のCODマーカセグメント(図17,図18参照)等に記載されたプログレッションオーダから上記のようなforループを構成し、そのパケットに含まれる各コードブロックの符号長の和からパケットの切れ目を判別し、各パケットがforループ内のどの位置でハンドリングされたかを見ればよい。これは、パケットヘッダ中の符号長さえ読み出せば、パケットデータ(エントロピー符号)をデコードしなくとも、次のパケットを検出できること、すなわち任意のパケットにアクセス可能であることを意味する。
・そのパケットが空かどうか、
・そのパケットにどのコードブロックが含まれるか、
・そのパケットに含まれる各コードブロックのゼロビットプレーン数、
・そのパケットに含まれる各コードブロック符号のコーディングパス数(ビットプレーン数)、
・そのパケットに含まれる各コードブロックの符号長、
が記載されている。しかし、レイヤ番号や解像度レベル等はパケットヘッダには一切記載されていない。デコード時に、そのパケットがどのレイヤのどの解像度レベルのものかを判別するには、メインヘッダ中のCODマーカセグメント(図17,図18参照)等に記載されたプログレッションオーダから上記のようなforループを構成し、そのパケットに含まれる各コードブロックの符号長の和からパケットの切れ目を判別し、各パケットがforループ内のどの位置でハンドリングされたかを見ればよい。これは、パケットヘッダ中の符号長さえ読み出せば、パケットデータ(エントロピー符号)をデコードしなくとも、次のパケットを検出できること、すなわち任意のパケットにアクセス可能であることを意味する。
なお、本願においては、上記のようなforループのネストの一番外側を”プログレッションオーダの最外殻”と呼ぶ。
図6は、LRCPプログレッションオーダの符号の様な、レイヤ(L)がプログレッションオーダの最外殻に位置するレイヤプログレッシブ符号の概念図である。ただし、タイルパート(後述)の数は1としている。
図7に、画像サイズ=100×100画素、タイル分割無し(1タイル)、2レイヤ、解像度レベル数=3(0〜2)、3コンポ−ネント(0〜2)、プリシンクトサイズ=32×32、LRCPプログレッションオーダの場合における36個のパケットの配列例を示す。ただし、タイルパート(後述)の数は1としている。
図8は、RLCPプログレッションオーダの符号の様な、解像度レベルがプログレッションオーダの最外殻に位置する解像度プログレッシブ符号の概念図である。ただし、タイルパート数は1としている。
図9に、画像サイズ=100×100画素、タイル分割無し(1タイル)、2レイヤ、解像度レベル数=3(0〜2)、3コンポ−ネント(0〜2)、プリシンクトサイズ=32×32、RLCPプログレッションオーダの場合における36個のパケットの配列例を示す。ただし、タイルパート(後述)の数は1としている。
さて、各タイルを構成する符号を、パケットの切れ目でさらに複数の部分に分割することができ、分割した部分をタイルパートと呼ぶ。なお、先に言及したように、図7と図9はタイルパート数=1の場合である。
各タイルパートは、パケットのほかに、SOT(start of tile-part)マーカセグメントで始まりSOD(start of data)マーカで終わるヘッダを有し、このヘッダをタイルパートヘッダと呼ぶ(図6,図8参照)。
図10にSOTマーカセグメントの構成を示す。なお、マーカ(この例ではSOTマーカ)とそれに関連したパラメータから構成されるものをマーカセグメントと呼ぶ。SOTマーカセグメントのパラメータの内容を図11に示す。図11から理解されるように、SOTマーカセグメント中のパラメータPsotの内容を読めば当該タイルパートの長さを知ることができる。したがって、SOTマーカセグメントを読み込めば、パケットヘッダをデコードすることなく、タイルパート単位で符号にアクセスすることができる。
パケットヘッダのデコードを省略したい場合には、タイルパートヘッダ中のPLTマーカセグメントやメインヘッダ中のPLMマーカセグメントに、各パケットの長さを記録しておくこともできる。さらに、SOTマーカセグメントを探すプロセスを省きたい場合には、メインヘッダ中のTLMマーカセグメントに各タイルパートの長さを記録しておくこともできる。TLMマーカセグメントは図12に示すような構成であり、そのパラメータの内容は図13に示す通りである。TLMマーカセグメント中のPtml(i)を読めば、i番目のタイルパートの長さを知ることができる。
さて、以上に説明したように、JPEG2000の符号は、パケット単位でのアクセスが可能であるとともに、より簡易には、タイルパート単位でのアクセスが可能である。これは、原符号から、それをデコードすることなく、必要なパケットやタイルパートだけを抜き出して新たな符号を生成できることを意味する。また、原符号の必要なパケット又はタイルパートだけを復号することができることをも意味する。
例えば、サーバに保存されている大きな画像をクライアント側で表示しようとする場合に、必要な画質だけの符号、必要な解像度だけの符号、見たい場所だけの符号、見たいコンポ−ネントだけの符号をサーバから受信して復号するような事が可能である。
この様に、サーバにあるJPEG2000の符号の必要な部分だけを受信するためのプロトコルをJPIP(JPEG2000 Interactive Protocol)と呼び、現在、標準化の途上にある。このような階層的な画像を部分的にアクセスするためのプロトコルは、古くは、画像の多重解像度表現であるFlashPixと、それにアクセスするためのプロトコルであるIIP(Internet Imaging Protocol)に見ることができる(例えば特許文献1参照)。なお、webサイトhttp://www.i3a.org/i_iip.htmlでIIPの標準書を提供している。また、JPIPに関連した先行技術文献としては、例えばJPIPのキャッシュモデル等に関する特許文献2がある。
さて、JPIPにおいて、クライアントからサーバへ、描画したい解像度と実際に描画するウィンドウサイズを指定することが提案されている。このような指定を受けた場合、サーバ側では当該解像度の当該領域をカバーするプリシンクトのパケットを送信するか、あるいは、より簡易に、当該領域をカバーするタイルパートを送信する。
まず、後者のタイルパートを送信するJPIPシステム(これをJPTシステムという)を例に説明する。
JPTシステムの場合、画像全体を構成するタイルパート中から、当該領域をカバーするタイルパートを抽出する手順は以下の通りである。サーバは、自分が管理する符号が、どのようにタイルパートに分かれているか知っていることが前提となる。
今、図9に示した1タイル、2レイヤのRLCPプログレッションオーダの符号のパケットを、すべての解像度レベルの境界位置(解像度レベルの切り替わり位置)でタイルパートに分けた場合、図14に示したような3個のタイルパートができる。また、同じRLPCプログレッションオーダの符号のパケットを、すべての解像度レベルの境界位置及び全てのレイヤの境界位置でタイルパートに分けた場合、図15に示したような6個のタイルパートができる。また、同じ符号を、すべての解像度レベルの境界位置、すべてのレイヤの境界位置及びすべてのコンポ−ネントの境界位置でタイルパートに分けた場合、図16に示したような18個のタイルパートができる。
ここで、クライアントからサーバへ、「25×25画素に相当する解像度部分を、20×20のウィンドウサイズで表示したい」というリクエストが来たとする。図9の例では、25×25画素に相当する解像度とは解像度レベル0の部分を指し、20×20のウィンドウとは解像度レベル0の画素のうちの20×20の部分だけを表示するということを意味する。
したがって、サーバは、自分の持っている符号から、解像度レベル0をカバーするタイルパート(図14の例ならタイルパート0)を抽出し、それをメインヘッダの情報とともにクライアントへ送信すればよい。タイルパートの先頭には必ずSOTマーカセグメントがあり、タイルパートの長さもわかるため、タイルパートの境界自体は常に判別可能である。
しかし、図14、図15及び図16の例を見れば明らかなように、(何番目から)何番目までのタイルパートを送信すればよいかは、符号のプログレッションオーダ及びタイルパートへの分割方法(分割位置)という2つのパラメータに依存するのである。
前者のプログレッションオーダは、メインヘッダやタイルパートヘッダのCODマーカセグメントに記述されているため直ちに知ることができる。
しかし、後者のタイルパートへの分割方法は、JPEG2000の符号やJPEG2000ファミリーフォーマットのファイルに記録されているわけではない。したがって、従来は、タイルパートへの分割方法が既知でない限り、所望のタイルパートを選ぶには符号のパケットを1つ1つ数えていかざるを得ず効率が悪い。
この問題を解決するため、本願出願人は、JPEG2000の符号フォーマットにおけるベンダー情報等の自由な情報を入れることが許されているCOMマーカセグメント、あるいは、JPEG2000ファミリーのファイルフォーマットにおけるベンダー情報等の自由な情報を記録可能なUUIDBox又はXMLBoxに、タイルパートへの分割方法を示す情報を記録することを特徴とする発明を提案している(特願2006−67482号)。
さて、以上のようにJPTサーバにおいては、
・各タイルパートの位置を算出する
・そのタイルパートの送信が必要ならば送信する
という2つのステップを実行する。その代表的な構成は、
(i)全てのタイルパートの位置を算出する(SOTマーカセグメントをスキャンする)
(ii)そのタイルパートの送信が必要ならば送信する
である。
・各タイルパートの位置を算出する
・そのタイルパートの送信が必要ならば送信する
という2つのステップを実行する。その代表的な構成は、
(i)全てのタイルパートの位置を算出する(SOTマーカセグメントをスキャンする)
(ii)そのタイルパートの送信が必要ならば送信する
である。
したがって、このような構成のJPTサーバでは、上記(i)として
for(全てのタイルパートについて){
次のSOTマーカセグメントをスキャンしタイルパートの位置と長さを記録
}
というステップ(これを「ステップA」と呼ぶ)が実行されるのが通常である。
for(全てのタイルパートについて){
次のSOTマーカセグメントをスキャンしタイルパートの位置と長さを記録
}
というステップ(これを「ステップA」と呼ぶ)が実行されるのが通常である。
このような構成をとる理由の一つは、送信する必要のあるタイルパートが、クライアント側ユーザのウィンドウ選択等によって時系列で変わるため、送信要否の判断の前に全タイルパートの位置を予め算出して保持しておくのが実装が簡易になるからである。しかし、一番の理由は、符号中のタイルパートの並び方に関するものである。以下、これについて述べる。
JPTにとって、符号中にタイルパートがどのような順番で並んでいるかということが重要な要素である。例えば、2つのタイルからなり、各タイルとも「最高解像度レベル=2、レイヤ数=1、解像度レベルの境界位置でタイルパートへ分割されている」モノクロ画像の符号(図24参照)を例にタイルパートの並び方(配列方法)について考える。
この場合、従来のプログレッション属性R,L,C,Pによるプログレッションオーダに、「どのタイルか(タイルindex)」という要素が加わり、タイルパートの配列方法として、図25に示す様な「タイル順→解像度レベル順」(このようなプログレッションオーダの最外殻にタイルがあるかの様な順番をタイル順最上位と呼ぶ)、又は図26に示す様な「解像度レベル順→タイル順」をとり得る。
さて、JPTで要求されるタイルパートが例えば解像度レベル0のものである場合、図25のようなタイルパート配列の符号ならば、図中に示した”タイルパートA”までの位置と長さがわかればよいため、合計4個のタイルパートをスキャンすれば足りる(要求されるタイルパートが変わらない限り)。そして、この例の場合、前記”ステップA”のような構成(全タイルパートをスキャンする)であっても、スキャンされるタイルパートは合計6個にすぎず、それほど余分なSOTスキャンが行われるわけではない。
一方、図26のようなタイルパート配列の場合、図中に示した”タイルパートB”までの位置と長さがわかればよいため、合計2個のタイルパートをスキャンすれば足りる(要求されるタイルパートが変わらない限り)。そして、この例の場合には、前記”ステップA”のような構成であると、合計6個分のSOTスキャンの3分の2は無駄なスキャンである。
しかし、図26のようなタイルパート配列であることが既知である場合には、「解像度レベル順→タイル順」というforループを構成し、
for(解像度レベル=0){
for(0≦タイルindex≦1){
次のSOTマーカセグメントをスキャンしてタイルパートの位置と長さを記録
}
}
という手順をとることにより、必要な2個のタイルパートのスキャンのみ行い、無駄なスキャンを排除することが可能になる。このようなforループを構成するためには(あるいは最初から必要なタイルパート数を算出しておき,SOTマーカセグメントをスキャンする回数自体を制限するためには)、その前提として、そのようなタイルパート配列であることが分からなければならない。しかしながら、従来のJPEG2000の符号やJPEG2000ファミリーフォーマットのファイルには、符号中のタイルパートの配列方法が記録されているわけではないのである。
for(解像度レベル=0){
for(0≦タイルindex≦1){
次のSOTマーカセグメントをスキャンしてタイルパートの位置と長さを記録
}
}
という手順をとることにより、必要な2個のタイルパートのスキャンのみ行い、無駄なスキャンを排除することが可能になる。このようなforループを構成するためには(あるいは最初から必要なタイルパート数を算出しておき,SOTマーカセグメントをスキャンする回数自体を制限するためには)、その前提として、そのようなタイルパート配列であることが分からなければならない。しかしながら、従来のJPEG2000の符号やJPEG2000ファミリーフォーマットのファイルには、符号中のタイルパートの配列方法が記録されているわけではないのである。
なお、JPTあるいはJPP(JPIP Precinct)においては、用途に応じた属性をプログレションオーダの最外殻に位置させるのが典型である。例えば、縮小表示が主な用途であれば最外殻にRを位置させ、カラー画像の白黒表示が主な用途であれば最外殻にCを位置させるのである。そして、JPTでは、かかる用途に応じた属性の境界位置でタイルパートへ分割するのが典型である。
以上の観点に鑑み、本願出願人は、タイルパートの分割方法と配列方法を示す情報を、符号中のCOMマーカセグメント、あるいはJPEG2000ファミリーのファイルフォーマットのUUIDBox又はXMLBoxに記録することを特徴とする発明を提案している(特願2006−77206号)。
さて、図26に示したような「解像度レベル順→タイル順」というタイルパート配列を可能とするためには、各タイルが解像度レベルの境界位置で「2以上の」タイルパートに分割されいることが前提となるのである。1タイルパート/1タイルでは、そのようなタイルパート配列に並べ替えることはできないからである。
本発明は、以上の議論を踏まえ、かつ、JPEG2000の符号が基本的にパケットを単位としてアクセス可能で、各パケットがR,L,C,Pというプログレッション属性を持つことに着目したものであり、その目的は、所要のパケットを簡易かつ効率的にアクセスもしくは選択することが可能なJPEG2000の符号及びJPEG2000ファミリーフォーマットのファイルを生成すること、及び、JPIPサーバ等において、JPEG2000の符号又はそれを含むJPEG2000ファミリーフォーマットのファイルから、符号の所要のパケットを簡易かつ効率的に選択し、さらには選択したパケットをJPIPクライアント等へ送信できるようにすることにある。
JPEG2000の符号はパケットで構成され、パケットは解像度レベル毎に存在する。したがって、「あるタイルの、ある解像度レベルに属する全てのパケット」を、あたかも「解像度レベルの境界位置で分割された1つのタイルパート」と見なし、図26に示したように「解像度レベル順→タイル順」に並べ、サーバ側に蓄積することは可能である。プログレッション属性として、R,L,C,Pに「タイル」という属性を追加し、あたかも「解像度レベル順→タイル順」にパケットを並べるのである。
この「タイル」という属性を追加し拡張したプログレッションオーダに従って「解像度レベル順→タイル順」に並べた符号は、JPEG2000の仕様に忠実に従うものではないから、厳密には、正規の(legal)JPEG2000符号ではないという意味でJPEG2000ライクな符号というべきであろう。しかし、このようなパケットの並びを持つ符号は、サーバ側で適切に解釈・管理するならば、JPEG2000符号として扱って支障がないものであり、余計なパケットをスキャンすることなく所要のパケットを簡易・効率的にアクセスもしくは選択することができるというメリットが生まれるのである。
ここで、JPEG2000において、プログレッション属性としてR,L,C,Pを用いる通常のプログレッションオーダは、図5に示すように、LRCP、RLCP、RPCL、PCRL、CPRLと表記される。
この表記方法に倣って、本願においては、プログレッション属性にタイル(T)を加えて拡張したプログレッションオーダをTxxxx,xTxxx,xxTxx,xxxTx,xxxxTと表すものとする。この表記において、左端のxはプログレッションオーダの最外殻に位置する属性であり、各xはR,L,C,Pのいずれかである。
このような拡張したプログレッションは、具体的には図27に示すTLRCPからCPRLTまでの25通りである。ただし、Txxxxすなわち最初の5通りTLRCP,TRLCP,TRPCL,TPCRL,TCPRLは、通常のプログレッションオーダLRCP,RLCP,RPCL,PCRL,CPRLとパケットの並び順が実質的に同じである。複数のタイルからなる例えばLRCP符号では、TLRCP順にパケットが並ぶからである。
先に述べたように、JPEG2000には、ベンダー情報等の任意の情報を記録可能なマーカセグメントとしてCOMマーカセグメントがある。COMマーカセグメントは図19に示す構造であり、そのCcom(i)に任意のデータをバイト単位で記録することができる。
また、先に述べたJPEG2000ファミリーフォーマットとは、JP2、JPX、JPMである。図20にJP2フォーマットのファイル構造を示す。図中のUUIDBoxとXMLBoxに任意の情報を記録可能である。図21にBoxの構造を、図22にBox情報の内容を示す。UUIDBoxのDBox(のDATAフィールド)とXMLBoxのDBoxに任意の情報を記録できる。
JPXはJP2の拡張ファイルフォーマットであり、その構造は示さないが、UUIDBoxとXMLBoxに関してはJP2フォーマットと同様である。
また、図23に、JPM(JPEG2000 Multi Layer)フォーマットのファイル構造を示す。図中の”C.2”で示されたMetadataBoxに、図21と同様なUUIDBox、XMLBoxが含まれており、ここに任意の情報を記録可能である。
しかして、請求項1記載の発明は、JPEG2000の符号又は該符号を含むJPEG2000ファミリーフォーマットのファイルを生成する符号処理装置であって、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従って前記符号中のパケットを配列する手段を有することを特徴とする符号処理装置である。
ここで、「拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従って前記符号中のパケットを配列する」とは、「パケットを、プログレッションオーダの最外殻に位置するプログレッション属性以外のプログレッション属性に関し、タイル順にソートして配置する」と言い換えることもできる。
請求項2記載の発明は、請求項1記載の発明に係る符号処理装置であって、前記選択されたプログレッションオーダを特定する情報を、前記符号中のCOMマーカセグメント(図19)に記録する手段を有することを特徴する符号処理装置である。ここで選択されたプログレッションオーダを特定する情報としては、具体的には例えば図27に示すように拡張したプログレッションオーダを割り当てた1バイトデータを用いることができる。
請求項3記載の発明は、請求項1記載の発明に係る符号処理装置であって、前記選択されたプログレッションオーダを特定する情報を、前記符号中のCODマーカセグメントに記録する手段を有することを特徴する符号処理装置である。JPEG2000の仕様では、CODマーカセグメント(図17)のSgcodに、プログレッションオーダを1バイトデータとして指定する。これを踏まえるならば、具体的には例えば、前記選択されたプログレッションオーダを特定する情報として図27のように拡張したプログレッションオーダを割り当てた1バイトデータを用い、これをCODマーカセグメントのSgcodに記録するとよい。
請求項4記載の発明は、請求項1記載の発明に係る符号処理装置であって、前記選択されたプログレッションオーダを特定する情報を、前記符号中のCOMマーカセグメント及びCODマーカセグメントに分散して記録する手段を有することを特徴する符号処理装置である。具体的には例えば、Txxxx,xTxxx,xxTxx,xxxxTのいずれであるかを特定するための図28のように割り当てた1バイトデータ(データA)をCOMマーカセグメントに記録し、また、xxxx(通常のプログレッションオーダに相当)を特定するための1バイトデータ(データB)をCODマーカセグメントのSgcodに記録することができる。JPEG2000の仕様によれば、Sgcod中のプログレッションオーダを指定するバイトは図18のようにプログレッションオーダが割り当てられているが、この割り当てに従ったバイトデータそのままデータBとして用いればよい。
請求項5記載の発明は、JPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルを生成する符号処理装置であって、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従って前記符号中のパケットを配列する手段と、前記選択されたプログレッションオーダを特定する情報を、前記ファイル中のUUIDBox又はXMLBoxに記録する手段とを有することを特徴とする符号処理装置である。具体的には、前記選択されたプログレッションオーダを特定するための情報としては例えば図27のように拡張したプログレッションオーダを割り当てた1バイトデータを用いることができ、これをUUIDBox又はXMLBoxのDBox位置に記録することができる。
請求項6記載の発明は、JPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルを生成する符号処理装置であって、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従って前記符号中のパケットを配列する手段と、前記選択されたプログレッションオーダを特定する情報を、前記ファイル中のUUIDBox又はXMLBoxと前記符号中のCODマーカセグメントとに分散して記録する手段とを有することを特徴とする符号処理装置である。具体的には例えば、前記選択されたプログレッションオーダを特定する情報として、図28のように割り当てた1バイトデータをUUIDBox又はXMLBoxに記録し、図18のように割り当てられた1バイトデータをCODマーカセグメントのSgcodに記録することができる。
請求項7記載の発明は、請求項1記載の発明に係る符号処理装置であって、前記選択されたプログレッションオーダを特定する情報を、前記符号又は前記ファイルと関連付けて外部データベースに記録する手段を有することを特徴とする符号処理装置である。具体的には例えば、外部データベースに、図29に示すようにファイル名(もしくは符号の識別子)と図27に示すように拡張したプログレッションオーダを割り当てた1バイトデータを対応させて記録することができる。
請求項8記載の発明は、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号、又は該符号を含むJPEG2000ファミリーフォーマットのファイルを処理する符号処理装置であって、前記符号中のパケットのプログレッションオーダに対応したforループを構成する手段と、前記構成する手段により構成されたforループにより前記符号から所要のパケットを選択する手段と、を有することを特徴とする符号処理装置である。ただし、ここでは、パケットのプログレッションオーダは既知であることを前提としている。
請求項9記載の発明は、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号、又は該符号を含むJPEG2000ファミリーフォーマットのファイルを処理する符号処理装置であって、前記符号中のCOMマーカセグメントとCODマーカセグメントのいずれか一方又は両方に記録されている、前記選択されたプログレッションオーダを特定する情報を参照することにより、前記符号中のパケットのプログレッションオーダを検知する手段と、前記検知する手段により検知されたプログレッションオーダに対応したforループを構成する手段と、前記構成する手段により構成されたforループにより前記符号から所要のパケットを選択する手段と、を有することを特徴とする符号処理装置である。この符号処理装置は、請求項2,3又は4記載の発明に係る符号処理装置により生成された符号もしくはファイル、あるいは、それと同様の符号もしくはファイルを処理の対象とするものである。
請求項10記載の発明は、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルを処理する符号処理装置であって、前記ファイル中のUUIDBox又はXMLBox、あるいは、前記符号中のCODマーカセグメントと前記ファイル中のUUIDBox又はXMLBoxに記録されている、前記選択されたプログレッションオーダを特定する情報を参照することにより、前記符号中のパケットのプログレッションオーダを検知する手段と、前記検知する手段により検知されたプログレッションオーダに対応したforループを構成する手段と、前記構成する手段により構成されたforループにより前記符号から所要のパケットを選択する手段と、を有することを特徴とする符号処理装置である。この符号処理装置は、請求項5又は6記載の発明に係る符号処理装置により生成されたファイル、あるいは、それと同様のファイルを処理の対象とするものである。
請求項11記載の発明は、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号、又は該符号を含むJPEG2000ファミリーフォーマットのファイルを処理する符号処理装置であって、前記符号又は前記ファイルに関連付けられて外部データベースに記録されている、前記選択されたプログレッションオーダを特定する情報を参照することにより、前記符号中のパケットのプログレッションオーダを検知する手段と、前記検知する手段により検知されたプログレッションオーダに対応したforループを構成する手段と、前記構成する手段により構成されたforループにより前記符号から所要のパケットを選択する手段と、を有することを特徴とする符号処理装置。この符号処理装置は、請求項7記載の発明に係る符号処理装置により生成された符号もしくはファイル、あるいは、それと同様の符号もしくはファイルを処理の対象とするものである。
請求項12記載の発明は、請求項7,8,9,10又は11記載の発明に係る符号処理装置であって、前記選択する手段により選択されたパケットを外部装置へ送信する手段を有することを特徴とする符号処理装置である。
請求項13記載の発明は、請求項7,8,9,10又は11記載の発明に係る符号処理装置であって、前記選択する手段により選択されたパケットからタイルパートを生成する手段と、前記生成する手段により生成されたタイルパートを外部装置へ送信する手段を有することを特徴とする符号処理装置である。
請求項14記載の発明は、JPEG2000の符号又は該符号を含むJPEG2000ファミリーフォーマットのファイルを生成する処理をコンピュータに行わせるプログラムであって、コンピュータに、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従ってメモリ上の前記符号中のパケットを配列する工程と、前記選択されたプログレッションオーダを特定する情報をメモリ上の前記符号中のCOMマーカセグメント又はCODマーカセグメントに記録する工程とを実行させることを特徴するプログラムである。
請求項15記載の発明は、JPEG2000の符号又は該符号を含むJPEG2000ファミリーフォーマットのファイルを生成する処理をコンピュータに行わせるプログラムであって、コンピュータに、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従ってメモリ上の前記符号中のパケットを配列する工程と、前記選択されたプログレッションオーダを特定する情報をメモリ上の前記符号中のCOMマーカセグメントとCODマーカセグメントに分散して記録する工程とを実行させることを特徴するプログラムである。
請求項16記載の発明は、JPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルを生成する処理をコンピュータに行わせるプログラムであって、コンピュータに、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従ってメモリ上の前記符号中のパケットを配列する工程と、前記選択されたプログレッションオーダを特定する情報をメモリ上の前記ファイル中のUUIDBox又はXMLBoxに記録する工程とを実行させることを特徴とするプログラムである。
請求項17記載の発明は、JPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルを生成する処理をコンピュータに行わせるプログラムであって、コンピュータに、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従ってメモリ上の前記符号中のパケットを配列する工程と、前記選択されたプログレッションオーダを特定する情報を、メモリ上の前記ファイル中のUUIDBox又はXMLBoxと前記符号中のCODマーカセグメントとに分散して記録する工程とを実行させることを特徴とするプログラムである。
請求項18記載の発明は、JPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルを生成する処理をコンピュータに行わせるプログラムであって、コンピュータに、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従ってメモリ上の前記符号中のパケットを配列する工程と、前記選択されたプログレションオーダを特定する情報を前記符号又は前記ファイルと関連付けて外部データベースに記録する工程とを実行させることを特徴とするプログラムである。
請求項19記載の発明は、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号、又は該符号を含むJPEG2000ファミリーフォーマットのファイルに対する処理をコンピュータに行わせるプログラムであって、コンピュータに、メモリ上の前記符号中のCOMマーカセグメントとCODマーカセグメントの一方又は両方に記録されている、前記選択されたプログレッションオーダを特定する情報を参照することにより、メモリ上の前記符号中のパケットのプログレッションオーダを検知する工程と、前記検知する工程により検知されたプログレッションオーダに対応したforループを構成する工程と、前記構成する工程により構成されたforループによりメモリ上の前記符号から所要のパケットを選択する工程とを実行させることを特徴とするプログラムである。
請求項20記載の発明は、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルに対する処理をコンピュータに行わせるプログラムであって、コンピュータに、メモリ上の前記ファイル中のUUIDBox又はXMLBox、あるいは、メモリ上の前記ファイル中のUUIDBox又はXMLBoxと前記符号中のCODマーカセグメントとに記録されている、前記選択されたプログレッションオーダを特定する情報を参照することにより、前記符号中のパケットのプログレッションオーダを検知する工程と、前記検知する工程により検知されたプログレッションオーダに対応したforループを構成する工程と、前記構成する工程により構成されたforループによりメモリ上の前記符号から所要のパケットを選択する工程とを実行させることを特徴とするプログラムである。
請求項21記載の発明は、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号、又は該符号を含むJPEG2000ファミリーフォーマットのファイルに対する処理をコンピュータに行わせるプログラムであって、コンピュータに、前記符号又は前記ファイルに関連付けられて外部データベースに記録されている、前記選択されたプログレッションオーダを特定する情報を参照することにより、前記符号中のパケットのプログレッションオーダを検知する工程と、前記検知する工程により検知されたプログレッションオーダに対応したforループを構成する工程と、前記構成する工程により構成されたforループによりメモリ上の前記符号から所要のパケットを選択する工程とを実行させることを特徴とするプログラムである。
請求項22記載の発明は、18,19,20又は21記載の発明に係るプログラムであって、前記選択する工程により選択されたパケットを外部装置へ送信する工程をコンピュータに実行させることを特徴とするプログラムである。
請求項23記載の発明は、請求項18,19,20又は21記載の発明に係るプログラムであって、前記選択する工程により選択されたパケットからタイルパートをメモリ上に生成する工程と、前記生成する工程により生成されたタイルパートを外部装置へ送信する工程とをコンピュータに実行させることを特徴とするプログラムである。
請求項24記載の発明は、請求項14乃至23のいずれか1項記載の発明に係るプログラムが記録された、コンピュータが読み取り可能な情報記録媒体である。
請求項25記載の発明は、JPEG2000の符号又は該符号を含むJPEG2000ファミリーフォーマットのファイルが記録された、コンピュータが読み取り可能な情報記録媒体であって、前記符号中のパケットが、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”より選択されたプログレッションオーダに従って配列されており、前記選択されたプログレッションオーダを特定する情報が、前記符号中のCOMマーカセグメントに記録され、あるいは、前記符号中のCOMマーカセグメントとCODマーカセグメントとに分散して記録され、あるいは、前記ファイル中のUUIDBox又はXMLBoxに記録され、あるいは、前記符号中のCODマーカセグメントと前記ファイル中のUUIDBox又はXMLBoxとに分散して記録されていることを特徴とする情報記録媒体である。
請求項1乃至7記載の発明に係る符号処理装置によれば、所要のパケットを簡易かつ効率的に選択もしくはアクセス可能で、JPIPサーバ等に好適な符号又はそれを含むファイルを生成することができる。これについて図30乃至図32により説明する。
今、図30に模式的に示すような「2つのタイルからなり、各タイルとも最高解像度レベル=2、レイヤ数=1、プリシンクト数=1(マキシマムプリシンクト)のモノクロ画像」の符号を考える。プログレッションオーダが通常のRLCPの場合(L=C=P=1であるため実質はRプログレッション)、パケットは図31に示す順番に並ぶ。なお、各タイルのパケットの先頭にSOTマーカセグメントが配置される。この符号の場合、例えば全タイルの解像度レベル0のパケットを選択しようとすると、図示の先頭から4個目までのパケットまでは少なくともスキャンする必要がある。あるいは、予め全てのパケットの位置及び長さを検出する必要がある。
一方、請求項1乃至7記載の発明に係る符号処理装置によれば、例えば拡張したプログレッションオーダのRTLCPが選ばれた場合には、符号中のパケットは図32に示すように「解像度レベル順→タイル順」に並べられる。したがって、先頭から2個目までのパケットをスキャンするだけで全タイルの解像度レベル0のパケットを効率よく選択することが可能になる。
なお、このRTLCP符号の場合、図32の上段の図に示すようにタイル0とタイル1のSOTマーカセグメントをパケットの先頭に集めた形で設けることもできるが、図32の下段の図に示すように、タイル0のSOTマーカセグメントのみをパケットの先頭に設ける形をとっても、次の理由から通常支障はない。すなわち、通常、各タイルの符号化条件が共通の場合には、2番目以降のSOTマーカセグメントにはタイル番号、タイルパート番号、タイルパート長の値が含まれる。しかし、符号のデコードやパケット選択を行う際に、タイルをプログレッション属性に含めた拡張プログレッションオーダのforループのループ変数のカウントによってタイル番号は検知可能となり、また、タイルパート番号はパケットのデコードや選択には不要である。そして、パケット長は、パケットヘッダあるいはPLTマーカセグメント等によって知ることができるからである。
参考のために、タイル数=2、解像度レベル数=3、レイヤ数=2、コンポ−ネンント数=3、プリシンクト数=1(マキシマムプリシンクト)の符号におけるパケット配列を図33と図34に示す。図33はTLRCPプログレッションオーダの場合であり、図34はLTRCPプログレッションオーダの場合である。
また、請求項2乃至7記載の発明に係る符号処理装置によれば、生成される符号又はファイル、あるいは外部データベースに、符号中のパケットのプログレッションオーダ(拡張プログレッションオーダ)を特定する情報が記録される。したがって、その符号の所望のパケットを選択する際に、上記情報からパケットのプログレッションオーダを容易に検知することができるので、プログレッションオーダが既知でなくとも、パケット選択のためのforループを容易に構成することができるようになる。
請求項8乃至13記載の発明に係る符号処理装置によれば、請求項1乃至7記載の発明に係る符号処理装置によって生成された符号もしくはファイルを入力として、符号中の所要のファイルを簡易かつ効率的に選択することが可能である。また、請求項12記載の発明に係る符号処理装置はJPTストリーム送信が可能であり、請求項13記載の発明に係る符号処理装置はJPPストリーム送信が可能である。
また、請求項14乃至23記載の発明に係るプログラム、または請求項24記載の発明に係る情報記録媒体に記録されたプログラムをコンピュータに実行させることにより、コンピュータを利用して容易に請求項1乃至13記載の発明を実施することができる。
また、請求項25記載の発明に係る情報記録媒体は、それに記録されている符号又はファイルが、符号中の所要のパケットを簡易かつ効率的に選択することが可能であってJPIPサーバ等にとって有用である。
以下、本発明の実施の形態について説明する。
本発明は、例えば図35に示すようなシステムで実施することができる。図35において、100と101はパーソナルコンピュータ(PC)であり、ネットワーク(LAN、イントラネット、インターネット等)102を経由して通信可能である。
PC100はCPU110、RAM111、ハードディスク装置112、表示装置113、キーボード、マウス等の入力装置114、ネットワーク・インターフェース115等がバス116に接続された一般的な構成である。PC101も同様の構成で構わない。
本発明は、各PC100,101がそれぞれ単独で実施する形態、あるいは、例えばPC101をクライアント、PC100をサーバとしたクライアント・サーバシステム上で実施する形態をとり得る。また、単独のPC100又は101上でクライアント・ソフトウェアとサーバ・ソフトウェアを走らせてクライアント・サーバシステムを構築することも可能であり、かかるシステム上で本発明を実施する形態もとり得る。なお、後述する各実施例を専用のハードウェアで実施することも可能であり、かかる実施形態も本発明に当然に包含される。
図36は、本発明の実施例1を説明するためのフローチャートである。このフローチャートに示す手順は、JPEG2000の符号化処理も含めて、図35に示したPC100(又は101)上でソフトウェアによって実行されるものとする。そのためのプログラムは、ハードディスク装置112に保存されており、RAM(メインメモリ)111へロードされてCPU110により実行されるものとする。ただし、JPEG2000のハードウェア・エンコーダをPC100が備えている場合には、JPEG2000の符号化処理そのものは同エンコーダにより実行させることも可能であり、そのような態様も本実施例に含まれる。以上は、下記の実施例2,3,4においても同様である。
処理の対象となる画像データはハードディスク装置112に蓄積されており、これがRAM111へ転送されて処理されるものとする。その処理結果であるJPEG2000の符号(コードストリーム)と、それを格納したJP2ファイルはRAM111上に生成され、該ファイルはハードディスク装置112に転送され保存されるものとして説明する。このことは下記の実施例2,3,4においても同様である。
図36を参照する。まず、PC100において拡張プログレッションオーダxTxxx,xxTxx,xxxTx,xxxxTのいずれかを選択する(step100)。例えば、ユーザが入力装置114より拡張プログレッションオーダの指定入力を行い、指定された拡張プログレッションオーダを選択する。あるいは、クライアントであるPC101より同様の指定が入力される。あるいは、予め決められた拡張プログレッションオーダが選択される。
次に、PC100において、選択された拡張プログレッションオーダに対応した図27のバイトデータをCOMマーカセグメントに記録する(step101)。具体的には例えば、RAM111上に確保されたJPEG2000フォーマット用領域のメインヘッダ領域に当該バイトデータを記録したCOMマーカセグメントを書き込む。COMマーカセグメントは図19に示す構造であるが、該バイトデータはバイナリデータであるためRcom=0に設定され、該バイトデータはコメントデータ(Ccom(0))として書き込まれる。COMマーカ自体を除いたマーカセグメントの長さは5バイト(=2+2+1)であるので、Lcom=5に設定される。
次にPC100において、ハードディスク装置112より画像データをRAM111に読み込み、この画像データに対しJPEG2000のパケット生成までの符号化処理(図1中のブロック1〜5の処理)を実行することにより、RAM111上にパケットを生成する(step102)。
次に、PC100において、それらパケットを選択された拡張プログレッションオーダに従って配列し(step103)、上記COMマーカセグメントを含むメインヘッダ等を付加した最終的なJPEG2000符号(厳密にはJPEG2000ライクな符号)をRAM111上に生成する(step104)。このstep103,104は図1中のブロック6の処理に相当する。最後に、この符号を格納したJP2フォーマットのファイルをRAM111上に生成し(step105)、これをハードディスク装置112へ転送し保存する(step106)。なお、生成したJPEG2000の符号をJP2フォーマットでファイル化せず、そのままハードディスク装置112に保存することも可能であり、かかる態様も本実施例に包含される。
以上の説明から明らかなように、本実施例は、コンピュータを利用した請求項1,2記載の発明に係る符号処理装置の一実施例に相当するものである。また、本実施例に係る符号処理装置より生成される符号又はファイルが記録された、コンピュータが読み取り可能な各種の情報記録媒体は、請求項25記載の発明に係る情報記録媒体の一実施例に相当する。また、本実施例のためのプログラムは、請求項14記載の発明に係るプログラムの一実施例に相当する。かかるプログラムが記録された情報記録媒体は請求項24記載の発明に係る情報記録媒体の一実施例に相当する。
なお、本実施例の一変形例によれば、step101において、選択された拡張プログレッションオーダに対応した図27のバイトデータが、メインヘッダのCOMマーカセグメントに記録されるのではなく、CODマーカセグメントのSgcodに記録される。この変形例に係る符号処理装置は、請求項1,3記載の発明に係る符号処理装置の一実施例に相当し、該変形例により生成されたファイル又は符号が記録された情報記録媒体は請求項25記載の発明に係る情報記録媒体の一実施例に相当する。また、この変形例のためのプログラムは請求項14記載の発明に係るプログラムの一実施例に相当し、該プログラムが記録された情報記録媒体は請求項24記載の発明に係る情報記録媒体の一実施例に相当する。
図37は、本発明の実施例2を説明するためのフローチャートである。図中のstep200,202〜206は、前記実施例1に係る図36中の対応したstep100,102〜106と同一処理のステップであるので、その説明を省略する。
step201は図36中のstep101に対応する処理ステップであるが、処理内容が一部異なる。すなわち、PC100は、step200で選択された拡張プログレッションオーダを特定する情報として、図28に示した該拡張プログレッションオーダに対応したバイトデータと、該拡張プログレッションオーダにおけるR,L,C,Pの並び順(つまり通常のプログレッションオーダ)に対応した図18に示したバイトデータを生成し、前者のバイトデータをCOMマーカセグメントに記録し、後者のバイトデータをCODマーカセグメントに記録する。具体的には例えば、RAM111上に確保されたJPEG2000フォーマット用領域のメインヘッダ領域に、前者のバイトデータを記録したCOMマーカセグメントを書き込み、後者のバイトデータを記録したCODマーカセグメントを書き込む。
なお、step204で生成したJPEG2000の符号をJP2フォーマットでファイル化せず、そのままハードディスク装置112に保存することも可能であり、かかる態様も本実施例に包含される。
以上の説明から明らかなように、本実施例は、コンピュータを利用した請求項1,4記載の発明に係る符号処理装置の一実施例に相当するものである。また、本実施例に係る符号処理装置より生成される符号又はファイルが記録された、コンピュータが読み取り可能な各種の情報記録媒体は、請求項25記載の発明に係る情報記録媒体の一実施例に相当する。また、本実施例のためのプログラムは、請求項15記載の発明に係るプログラムの一実施例に相当し、該プログラムが記録された情報記録媒体は請求項24記載の発明に係る情報記録媒体の一実施例に相当する。
なお、本実施例の一変形例によれば、step201は省かれるとともに、例えばstep206の後で、step101で選択された拡張プログレッションオーダに対応した図27のバイトデータが、当該ファイルのファイル名、あるいは、該ファイルに含まれる符号の識別子と関連付けられた形で外部データベース(図29参照)に記録される。かかる変形例に係る符号処理装置は、請求項1,7記載の発明に係る符号処理装置の一実施例に相当し、そのためのプログラムは請求項18記載の発明に係るプログラムの一実施例に相当する。該プログラムが記録された情報記録媒体は請求項24記載の発明に係る情報記録媒体の一実施例に相当する。
図38は、本発明の実施例3を説明するためのフローチャートである。図中のstep300,301,302,303,305,306は、前記実施例1に係る図36中の対応したstep100,102,103,104,105,106と同様の処理ステップであるので、その説明を省略する。
本実施例ではstep304において、step300で選択した拡張プログレッションオーダを特定する情報として、該拡張プログレッションオーダに対応した図27に示すバイトデータを、JP2フォーマットのUUIDBoxのDbox(のDATAフィールド)に記録するか、又はXMLBoxのDBoxにタグ形式で記録する。より具体的には例えば、RAM111上に確保されたJP2フォーマット領域中のこれらBox領域に該バイトデータが書き込まれる。
以上の説明から明らかなように、本実施例は、コンピュータを利用した請求項1,5記載の発明に係る符号処理装置の一実施例に相当するものである。また、本実施例に係る符号処理装置より生成される符号又はファイルが記録された、コンピュータが読み取り可能な各種の情報記録媒体は、請求項25記載の発明に係る情報記録媒体の一実施例に相当する。また、本実施例のためのプログラムは、請求項16記載の発明に係るプログラムの一実施例に相当し、該プログラムが記録された情報記録媒体は請求項24記載の発明に係る情報記録媒体の一実施例に相当する。
図39は、本発明の実施例4を説明するためのフローチャートである。図中のstep400,401,402,404,406,407は、前記実施例1に係る図36中の対応したstep100,102,103,104,105,106と同様の処理ステップであるので、その説明を省略する。
PC100は、選択された拡張プログレッションオーダを特定するための情報として、該拡張プログレッションオーダにおけるR,L,C,Pの並び順に対応した図18に示すバイトデータをJPEG2000符号フォーマットのメインヘッダ中のCODマーカセグメントのSgcodに記録し(step403)、また、該拡張プログレッションオーダに対応した図28に示すバイトデータをJP2ファイルフォーマットのUUIDBox又はXMLBoxのDBoxに記録する(step405)。
以上の説明から明らかなように、本実施例は、コンピュータを利用した請求項1,6記載の発明に係る符号処理装置の一実施例に相当するものである。また、本実施例に係る符号処理装置より生成されるファイルが記録された、コンピュータが読み取り可能な各種の情報記録媒体は、請求項25記載の発明に係る情報記録媒体の一実施例に相当する。また、本実施例のためのプログラムは、請求項17記載の発明に係るプログラムの一実施例に相当し、該プログラムが記録された情報記録媒体は請求項24記載の発明に係る情報記録媒体の一実施例に相当する。
図40は、本発明の実施例5を説明するためのフローチャートである。本実施例においては、PC100がJPIPサーバとして動作し、PC101がJPIPクライアントとして動作する場合を想定している。また、図40に示す手順は、JPIPサーバとしてのPC100で実行されるものである。
処理の対象となるファイルは、前記実施例1乃至4(それら変形例も含む)のいずれかに係る符号処理装置によって生成されたJP2フォーマットのファイルであり、これはPC100内のハードディスク装置112に保存されているものとする。ただし、そのJP2フォーマットファイルが、JPIPサーバにより管理されている外部のハードディスク装置等に保存されている態様も本実施例に包含される。選択された拡張プログレッションオーダを特定する情報がどのような形で記録されているかは既知であるものとする。
JPIPでは、クライアントからサーバへ、表示したいファイル名のほか解像度指定と表示ウインドウ指定が送信される。解像度指定はx方向のサイズfx、y方向のサイズfy等からなるfsizというパラメータによって指定され、表示ウインドウはrsizというパラメータによって指定される。例えば
fsiz="fsiz" "=" x方向のサイズ "," y方向のサイズ ["," "closest"]
rsiz="rsiz" "=" x方向のウインドウサイズ "," x方向のウインドウサイズ
の様に表現される。
fsiz="fsiz" "=" x方向のサイズ "," y方向のサイズ ["," "closest"]
rsiz="rsiz" "=" x方向のウインドウサイズ "," x方向のウインドウサイズ
の様に表現される。
ただし、ここでは、クライアントが要求する解像度レベル(の画像サイズ)と表示ウインドウウサイズとは一致しているものとする。また、ファイルに格納されている符号のタイルサイズは、縦横ともに2のべき乗であるものとする。
図40を参照する。まず、JPIPサーバであるPC100は、JPIPクライアントであるPC101から表示すべきファイル名と解像度レベル(fsizとして)を受信する(step500)。
PC100において、指定されたファイルを開き(step501)、fsizのx方向サイズ(fx),y方向サイズ(fy)から送信の必要な解像度レベルrを算出する(step502)。解像度レベル0から解像度レベルrまでのパケットを送信する必要がある。step502の詳細は後述する。
次にPC100において、指定ファイル内の符号のメインヘッダ中のSIZマーカセグメントやCODマーカセグメントから、該符号の符号化条件すなわちタイル数、デコンポジションレベル数、レイヤ数、コンポーネント数、プリシンクト分割数を検出する(step503)。
次にPC100におい、符号のパケットの並び順(ここではプログレション属性にタイルを含む拡張プログレッションオーダ)を検知する(step504)。この検知は、符号及び/又はファイル、あるいは外部データベースに記録されている拡張プログレッションオーダを特定する情報(前記実施例1乃至4及び変形例を参照)を参照することによって行う。ただし、符号のパケットが特定の拡張プログレッションオーダに従って配列されていることが既知の場合は、step504は省略される。かかる態様も本実施例に包含される。
次にPC100は、符号のメインヘッダに関する情報をメインヘッダデータビンとしてクライアントPC101へ送信する(step505)。
次に、解像度レベルrで解像度レベルのループ変数を制限した、当該拡張プログレッションオーダに対応したforループを構成する(step504)。このforループを回して、必要なパケットを選択し、選択したパケットをクライアントPC101へ送信する(step507)。最後に指定ファイルを閉じ(step508)、一連の処理を完了する。
例えば、タイル数=2、解像度レベル数=3、レイヤ数=2、コンポ−ネンント数=3、プリシンクト数=1(マキシマムプリシンクト)、拡張プログレッションオーダRTLCPに従ってパケットが配列された符号であるとすると、
for(0≦解像度レベル≦r){
for(0≦タイル番号≦1){
for(0≦レイヤ番号)≦1){
for(0≦コンポ−ネント番号≦2){
for(プリシンクト番号=0){
}
}
}
}
}
というforループが構成される。
for(0≦解像度レベル≦r){
for(0≦タイル番号≦1){
for(0≦レイヤ番号)≦1){
for(0≦コンポ−ネント番号≦2){
for(プリシンクト番号=0){
}
}
}
}
}
というforループが構成される。
この場合、step507においては、
for(0≦解像度レベル≦r){
for(0≦タイル番号≦1){
for(0≦レイヤ番号)≦1){
for(0≦コンポ−ネント番号≦2){
for(プリシンクト番号=0){
パケットヘッダをデコードしてパケット長を検知し、
当該パケットの先頭位置およびパケット長を保持する
}
}
}
}
}
というループ処理によって、送信すべき全てのパケットの先頭位置とパケット長をまず取得し、次に、この情報に基づいて送信すべきパケットを実際に選択して送信する形態をとることができる。
for(0≦解像度レベル≦r){
for(0≦タイル番号≦1){
for(0≦レイヤ番号)≦1){
for(0≦コンポ−ネント番号≦2){
for(プリシンクト番号=0){
パケットヘッダをデコードしてパケット長を検知し、
当該パケットの先頭位置およびパケット長を保持する
}
}
}
}
}
というループ処理によって、送信すべき全てのパケットの先頭位置とパケット長をまず取得し、次に、この情報に基づいて送信すべきパケットを実際に選択して送信する形態をとることができる。
あるいは、
for(0≦解像度レベル≦r){
for(0≦タイル番号≦1){
for(0≦レイヤ番号)≦1){
for(0≦コンポ−ネント番号≦2){
for(プリシンクト番号=0){
パケットヘッダをデコードしてパケット長を検知し、
このパケット長をもとに当該パケットを選択して送信する
}
}
}
}
}
という処理の形態をとることができる。
for(0≦解像度レベル≦r){
for(0≦タイル番号≦1){
for(0≦レイヤ番号)≦1){
for(0≦コンポ−ネント番号≦2){
for(プリシンクト番号=0){
パケットヘッダをデコードしてパケット長を検知し、
このパケット長をもとに当該パケットを選択して送信する
}
}
}
}
}
という処理の形態をとることができる。
いずれの形態をとるにしても、複数のタイルからなる符号であるにもかかわらず、検知(スキャン)すべきパケット数を制限し、必要なパケットを効率的に選択することが可能となる。
そして、以上のようにして選択したパケットの送信に関して2つの形態をとり得る。その1つは、選択した各パケットの前に、あるいは選択したパケット列の解像度レベル又はコンポーネントの境界位置に、SOTマーカセグメントを付加することにより、選択したパケットをタイルパート化してから送信する形態である。この場合、生成した各タイルパートを必要に応じて分割し、所定のメッセージヘッダを付けてJPTの「メッセージ」とすればよい。つまりJPTストリーム送信を行う形態である。
もう1つの形態は、選択したパケットをパケット化することなく送信する方法である。この場合、各パケットを必要に応じて分割し、所定の「メッセージヘッダ」を付けてJPPの「メッセージ」とすればよい。つまり、JPPストリーム送信を行う形態である。ここで、JPP(JPIP Precinct)とは、JPIPにおけるパケットを送信の対象とする方式である。
図41は、step502の処理内容を示すフローチャートである。まず、fsizのfx,fyを取り込み(step600)、指定ファイル内の符号のメインヘッダ中のSIZマーカセグメントから原画像の横方向サイズ(Xziz)と縦方向サイズ(Ysiz)を検出し(step601)、メインヘッダ中のCODマーカセグメントからデコンポジションレベル数dを検出する(step602)。そして、2のd乗によりXsizを除した値がfx以下であり、かつ、2のd乗によりYsizを除した値がfy以下であるという条件の判定を行い(step603)、条件が成立するならば(step603,Yes)、解像度レベルr=0とする(step604)。条件が不成立ならば(step603,No)、次の演算
解像度レベルr=d−min[log2(Xsiz/fx),log2(Ysiz/yx)]+1
により解像度レベルrを求める(step605)。ここで、log2()は2を底とする対数であり、min[a,b]はa,bのうちの大きくない値を与える関数である。
解像度レベルr=d−min[log2(Xsiz/fx),log2(Ysiz/yx)]+1
により解像度レベルrを求める(step605)。ここで、log2()は2を底とする対数であり、min[a,b]はa,bのうちの大きくない値を与える関数である。
なお、本実施例においては、クライアントが要求する解像度レベル(の画像サイズ)と表示ウィンドウサイズとは一致しているものとしたが、前記要求解像度レベルの画像サイズよりも表示ウィンドウサイズが小さい場合には、要求解像度レベルにおいて、表示ウィンドウに含まれる位置に存在するタイルだけに関してパケットあるいはタイルパートを送信すればよい。
また、前記実施例においては、JP2フォーマットのファイルを処理するものとしたが、ファイル化されない符号を入力として同様の処理も可能であり、かかる態様も当然に本実施例に包含される。
以上の説明から明らかなように、本実施例に係る符号処理装置(JPIPサーバ)は、コンピュータを利用した請求項8乃至13記載の発明に係る符号処理装置の一実施例に相当する。本実施例に係る符号処理装置のためのプログラムは、請求項19乃至23記載の発明に係るプログラムの一実施例に相当する。また、このプログラムが記録された情報記録媒体は、請求項24記載の発明に係る情報記録媒体の一実施例に相当する。
なお、本実施例は選択したパケットを送信する例であったが、選択したパケットのみからなる別の符号又はそれを含むファイルを生成する処理を行うことも可能である。このような処理を行う符号処理装置も請求項8乃至11記載の発明に係る符号処理装置に包含される。また、そのためのプログラムも請求項19乃至21記載の発明に係るプログラムに包含される。
100 パーソナルコンピュータ(JPIPサーバ)
101 パーソナルコンピュータ(JPIPクライアント)
102 ネットワーク
110 CPU
111 RAM
112 ハードディスク装置
113 表示装置
114 入力装置
115 ネットワーク・インターフェース
101 パーソナルコンピュータ(JPIPクライアント)
102 ネットワーク
110 CPU
111 RAM
112 ハードディスク装置
113 表示装置
114 入力装置
115 ネットワーク・インターフェース
Claims (25)
- JPEG2000の符号又は該符号を含むJPEG2000ファミリーフォーマットのファイルを生成する符号処理装置であって、
プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従って前記符号中のパケットを配列する手段を有することを特徴とする符号処理装置。 - 前記選択されたプログレッションオーダを特定する情報を、前記符号中のCOMマーカセグメントに記録する手段を有することを特徴する請求項1記載の符号処理装置。
- 前記選択されたプログレッションオーダを特定する情報を、前記符号中のCODマーカセグメントに記録する手段を有することを特徴する請求項1記載の符号処理装置。
- 前記選択されたプログレッションオーダを特定する情報を、前記符号中のCOMマーカセグメント及びCODマーカセグメントに分散して記録する手段を有することを特徴する請求項1記載の符号処理装置。
- JPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルを生成する符号処理装置であって、
プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従って前記符号中のパケットを配列する手段と、
前記選択されたプログレッションオーダを特定する情報を、前記ファイル中のUUIDBox又はXMLBoxに記録する手段と、を有することを特徴とする符号処理装置。 - JPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルを生成する符号処理装置であって、
プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従って前記符号中のパケットを配列する手段と、
前記選択されたプログレッションオーダを特定する情報を、前記ファイル中のUUIDBox又はXMLBoxと前記符号中のCODマーカセグメントとに分散して記録する手段と、を有することを特徴とする符号処理装置。 - 前記選択されたプログレッションオーダを特定する情報を、前記符号又は前記ファイルと関連付けて外部データベースに記録する手段を有することを特徴とする請求項1記載の符号処理装置。
- プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号、又は該符号を含むJPEG2000ファミリーフォーマットのファイルを処理する符号処理装置であって、
前記符号中のパケットのプログレッションオーダに対応したforループを構成する手段と、
前記構成する手段により構成されたforループにより前記符号から所要のパケットを選択する手段と、を有することを特徴とする符号処理装置。 - プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号、又は該符号を含むJPEG2000ファミリーフォーマットのファイルを処理する符号処理装置であって、
前記符号中のCOMマーカセグメントとCODマーカセグメントのいずれか一方又は両方に記録されている、前記選択されたプログレッションオーダを特定する情報を参照することにより、前記符号中のパケットのプログレッションオーダを検知する手段と、
前記検知する手段により検知されたプログレッションオーダに対応したforループを構成する手段と、
前記構成する手段により構成されたforループにより前記符号から所要のパケットを選択する手段と、を有することを特徴とする符号処理装置。 - プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルを処理する符号処理装置であって、
前記ファイル中のUUIDBox又はXMLBox、あるいは、前記符号中のCODマーカセグメントと前記ファイル中のUUIDBox又はXMLBoxに記録されている、前記選択されたプログレッションオーダを特定する情報を参照することにより、前記符号中のパケットのプログレッションオーダを検知する手段と、
前記検知する手段により検知されたプログレッションオーダに対応したforループを構成する手段と、
前記構成する手段により構成されたforループにより前記符号から所要のパケットを選択する手段と、を有することを特徴とする符号処理装置。 - プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号、又は該符号を含むJPEG2000ファミリーフォーマットのファイルを処理する符号処理装置であって、
前記符号又は前記ファイルに関連付けられて外部データベースに記録されている、前記選択されたプログレッションオーダを特定する情報を参照することにより、前記符号中のパケットのプログレッションオーダを検知する手段と、
前記検知する手段により検知されたプログレッションオーダに対応したforループを構成する手段と、
前記構成する手段により構成されたforループにより前記符号から所要のパケットを選択する手段と、を有することを特徴とする符号処理装置。 - 前記選択する手段により選択されたパケットを外部装置へ送信する手段を有することを特徴とする請求項7,8,9,10又は11記載の符号処理装置。
- 前記選択する手段により選択されたパケットからタイルパートを生成する手段と、
前記生成する手段により生成されたタイルパートを外部装置へ送信する手段を有することを特徴とする請求項7,8,9,10又は11記載の符号処理装置。 - JPEG2000の符号又は該符号を含むJPEG2000ファミリーフォーマットのファイルを生成する処理をコンピュータに行わせるプログラムであって、
コンピュータに、
プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従ってメモリ上の前記符号中のパケットを配列する工程と、
前記選択されたプログレッションオーダを特定する情報をメモリ上の前記符号中のCOMマーカセグメント又はCODマーカセグメントに記録する工程とを実行させることを特徴するプログラム。 - JPEG2000の符号又は該符号を含むJPEG2000ファミリーフォーマットのファイルを生成する処理をコンピュータに行わせるプログラムであって、
コンピュータに、
プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従ってメモリ上の前記符号中のパケットを配列する工程と、
前記選択されたプログレッションオーダを特定する情報をメモリ上の前記符号中のCOMマーカセグメントとCODマーカセグメントに分散して記録する工程とを実行させることを特徴するプログラム。 - JPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルを生成する処理をコンピュータに行わせるプログラムであって、
コンピュータに、
プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従ってメモリ上の前記符号中のパケットを配列する工程と、
前記選択されたプログレッションオーダを特定する情報をメモリ上の前記ファイル中のUUIDBox又はXMLBoxに記録する工程とを実行させることを特徴とするプログラム。 - JPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルを生成する処理をコンピュータに行わせるプログラムであって、
コンピュータに、
プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従ってメモリ上の前記符号中のパケットを配列する工程と、
前記選択されたプログレッションオーダを特定する情報を、メモリ上の前記ファイル中のUUIDBox又はXMLBoxと前記符号中のCODマーカセグメントとに分散して記録する工程とを実行させることを特徴とするプログラム。 - JPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルを生成する処理をコンピュータに行わせるプログラムであって、
コンピュータに、
プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従ってメモリ上の前記符号中のパケットを配列する工程と、
前記選択されたプログレションオーダを特定する情報を前記符号又は前記ファイルと関連付けて外部データベースに記録する工程とを実行させることを特徴とするプログラム。 - プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号、又は該符号を含むJPEG2000ファミリーフォーマットのファイルに対する処理をコンピュータに行わせるプログラムであって、
コンピュータに、
メモリ上の前記符号中のCOMマーカセグメントとCODマーカセグメントの一方又は両方に記録されている、前記選択されたプログレッションオーダを特定する情報を参照することにより、メモリ上の前記符号中のパケットのプログレッションオーダを検知する工程と、
前記検知する工程により検知されたプログレッションオーダに対応したforループを構成する工程と、
前記構成する工程により構成されたforループによりメモリ上の前記符号から所要のパケットを選択する工程とを実行させることを特徴とするプログラム。 - プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号を含むJPEG2000ファミリーフォーマットのファイルに対する処理をコンピュータに行わせるプログラムであって、
コンピュータに、
メモリ上の前記ファイル中のUUIDBox又はXMLBox、あるいは、メモリ上の前記ファイル中のUUIDBox又はXMLBoxと前記符号中のCODマーカセグメントとに記録されている、前記選択されたプログレッションオーダを特定する情報を参照することにより、前記符号中のパケットのプログレッションオーダを検知する工程と、
前記検知する工程により検知されたプログレッションオーダに対応したforループを構成する工程と、
前記構成する工程により構成されたforループによりメモリ上の前記符号から所要のパケットを選択する工程とを実行させることを特徴とするプログラム。 - プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従ってパケットが配列されたJPEG2000の符号、又は該符号を含むJPEG2000ファミリーフォーマットのファイルに対する処理をコンピュータに行わせるプログラムであって、
コンピュータに、
前記符号又は前記ファイルに関連付けられて外部データベースに記録されている、前記選択されたプログレッションオーダを特定する情報を参照することにより、前記符号中のパケットのプログレッションオーダを検知する工程と、
前記検知する工程により検知されたプログレッションオーダに対応したforループを構成する工程と、
前記構成する工程により構成されたforループによりメモリ上の前記符号から所要のパケットを選択する工程とを実行させることを特徴とするプログラム。 - 前記選択する工程により選択されたパケットを外部装置へ送信する工程をコンピュータに実行させることを特徴とする請求項18,19,20又は21記載のプログラム。
- 前記選択する工程により選択されたパケットからタイルパートをメモリ上に生成する工程と、
前記生成する工程により生成されたタイルパートを外部装置へ送信する工程と、
をコンピュータに実行させることを特徴とする請求項18,19,20又は21記載のプログラム。 - 請求項14乃至23のいずれか1項記載のプログラムが記録された、コンピュータが読み取り可能な情報記録媒体。
- JPEG2000の符号又は該符号を含むJPEG2000ファミリーフォーマットのファイルが記録された、コンピュータが読み取り可能な情報記録媒体であって、
前記符号中のパケットが、プログレッション属性として解像度レベル、レイヤ、コンポーネント、プリシンクトに加えタイルを用いる拡張したプログレッションオーダ”xTxxx”,”xxTxx”,”xxxTx”及び”xxxxT”(ただし、左端のxがプログレッションオーダの最外殻に位置する属性であり、各xは解像度レベル、レイヤ、コンポーネント又はプリシンクトのいずれかであり、Tはタイルである)より選択されたプログレッションオーダに従って配列されており、
前記選択されたプログレッションオーダを特定する情報が、前記符号中のCOMマーカセグメントに記録され、あるいは、前記符号中のCOMマーカセグメントとCODマーカセグメントとに分散して記録され、あるいは、前記ファイル中のUUIDBox又はXMLBoxに記録され、あるいは、前記符号中のCODマーカセグメントと前記ファイル中のUUIDBox又はXMLBoxとに分散して記録されている、
ことを特徴とする情報記録媒体。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006109746A JP4789192B2 (ja) | 2006-04-12 | 2006-04-12 | 符号処理装置、プログラム及び情報記録媒体 |
| US11/784,269 US7865028B2 (en) | 2006-04-12 | 2007-04-06 | Code processing apparatus and code processing method |
| CN2007101292596A CN101080010B (zh) | 2006-04-12 | 2007-04-12 | 编码处理装置和编码处理方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006109746A JP4789192B2 (ja) | 2006-04-12 | 2006-04-12 | 符号処理装置、プログラム及び情報記録媒体 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2007288241A JP2007288241A (ja) | 2007-11-01 |
| JP4789192B2 true JP4789192B2 (ja) | 2011-10-12 |
Family
ID=38604891
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006109746A Expired - Fee Related JP4789192B2 (ja) | 2006-04-12 | 2006-04-12 | 符号処理装置、プログラム及び情報記録媒体 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US7865028B2 (ja) |
| JP (1) | JP4789192B2 (ja) |
| CN (1) | CN101080010B (ja) |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20090003270A1 (en) * | 2007-06-29 | 2009-01-01 | Schwenke Derek L | Server-Driven Progressive Image Transmission |
| JP5010562B2 (ja) * | 2008-06-27 | 2012-08-29 | 株式会社リコー | 通信端末装置 |
| US20120162699A1 (en) * | 2010-12-27 | 2012-06-28 | Xerox Corporation | Method for printing compressed images |
| US8862695B2 (en) * | 2012-10-29 | 2014-10-14 | Vmware, Inc. | Performance enhancement in virtual desktop infrastructure (VDI) |
| JP6692087B2 (ja) * | 2013-12-27 | 2020-05-13 | サン パテント トラスト | 配信方法、およびシステム |
| CN108664533A (zh) * | 2017-04-02 | 2018-10-16 | 田雪松 | 编码图样信息的处理方法及装置 |
| JP2024074521A (ja) | 2022-11-21 | 2024-05-31 | 株式会社リコー | 画像処理装置、画像処理方法及びプログラム |
Family Cites Families (58)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6483946B1 (en) * | 1995-10-25 | 2002-11-19 | Sarnoff Corporation | Apparatus and method for encoding zerotrees generated by a wavelet-based coding technique |
| JPH11205786A (ja) | 1997-12-25 | 1999-07-30 | Hewlett Packard Co <Hp> | 動画データの格納形式、動画データ転送システム、動画表示方法および記憶媒体 |
| US7206804B1 (en) * | 2000-11-10 | 2007-04-17 | Sharp Laboratories Of America, Inc. | Methods and systems for transmitting digital images |
| US6898323B2 (en) * | 2001-02-15 | 2005-05-24 | Ricoh Company, Ltd. | Memory usage scheme for performing wavelet processing |
| JP4293740B2 (ja) | 2001-05-29 | 2009-07-08 | 株式会社リコー | 画像圧縮装置 |
| US7127117B2 (en) | 2001-06-11 | 2006-10-24 | Ricoh Company, Ltd. | Image compression method and apparatus for suppressing quantization rate in particular region, image expansion method and apparatus therefor, and computer-readable storage medium storing program for the compression or expansion |
| US7581027B2 (en) * | 2001-06-27 | 2009-08-25 | Ricoh Co., Ltd. | JPEG 2000 for efficent imaging in a client/server environment |
| US7110608B2 (en) * | 2001-07-02 | 2006-09-19 | Canon Kabushiki Kaisha | Digital image compression |
| US7302104B2 (en) * | 2001-12-28 | 2007-11-27 | Ricoh Co., Ltd. | Smoothing tile boundaries of images encoded and decoded by JPEG 2000 |
| US7200272B2 (en) * | 2002-01-31 | 2007-04-03 | Canon Kabushiki Kaisha | Image processing method storing input encoded data into a memory |
| US7228000B2 (en) | 2002-03-15 | 2007-06-05 | Ricoh Co., Ltd. | Image data generation with reduced amount of processing |
| JP4086728B2 (ja) * | 2002-07-03 | 2008-05-14 | 株式会社リコー | 画像通信方法及びシステム |
| US7330596B2 (en) | 2002-07-17 | 2008-02-12 | Ricoh Company, Ltd. | Image decoding technique for suppressing tile boundary distortion |
| JP3783956B2 (ja) | 2002-07-23 | 2006-06-07 | 株式会社リコー | 画像記録装置及び画像データ選択方法 |
| JP3966461B2 (ja) * | 2002-08-09 | 2007-08-29 | 株式会社リコー | 電子カメラ装置 |
| US7245775B2 (en) | 2002-08-26 | 2007-07-17 | Ricoh Company, Ltd. | Image processing apparatus for compositing images |
| JP4003945B2 (ja) | 2002-08-26 | 2007-11-07 | 株式会社リコー | 画像処理装置、画像処理方法、プログラム及び記憶媒体 |
| JP3988990B2 (ja) | 2002-08-27 | 2007-10-10 | 株式会社リコー | 符号変換装置、符号変換方法、プログラム及び記録媒体 |
| JP2004104347A (ja) | 2002-09-06 | 2004-04-02 | Ricoh Co Ltd | 画像処理装置、画像処理方法、プログラム及び記録媒体 |
| JP2004104650A (ja) * | 2002-09-12 | 2004-04-02 | Ricoh Co Ltd | 画像処理装置、画像読取装置、画像形成装置、画像処理用プログラム及び記憶媒体 |
| JP3956360B2 (ja) | 2002-09-30 | 2007-08-08 | 株式会社リコー | 撮像装置及び画像処理方法 |
| US7450768B2 (en) | 2002-10-02 | 2008-11-11 | Ricoh Company, Ltd. | Apparatus and method for processing image data based on object movement speed within a frame |
| JP2004135122A (ja) | 2002-10-11 | 2004-04-30 | Ricoh Co Ltd | 画像データ入出力装置、プログラム及び記憶媒体 |
| JP4093405B2 (ja) * | 2002-10-25 | 2008-06-04 | 株式会社リコー | 画像処理装置、プログラム及び記憶媒体 |
| JP3960597B2 (ja) | 2002-11-11 | 2007-08-15 | 株式会社リコー | 符号生成装置、画像処理装置、符号生成プログラム、画像処理プログラムおよび記憶媒体 |
| JP3928859B2 (ja) | 2002-11-11 | 2007-06-13 | 株式会社リコー | 画像処理装置、画像処理方法、プログラム及び記録媒体 |
| JP2004172766A (ja) | 2002-11-18 | 2004-06-17 | Ricoh Co Ltd | 画像閲覧装置、画像閲覧保存方法、プログラム及び記録媒体 |
| US7454069B2 (en) | 2002-11-20 | 2008-11-18 | Ricoh Company, Ltd. | Image processing apparatus, image compressing apparatus, image decompressing apparatus, image processing method, image compressing method, image decompressing method, information processing apparatus, information processing method, program and recording medium |
| JP4179498B2 (ja) | 2002-11-20 | 2008-11-12 | 株式会社リコー | 画像処理装置及び画像処理方法 |
| JP3982686B2 (ja) | 2002-11-21 | 2007-09-26 | 株式会社リコー | 符号生成装置、符号生成プログラム、および記憶媒体 |
| JP4189952B2 (ja) | 2002-11-22 | 2008-12-03 | 株式会社リコー | 符号化復号化装置、符号化復号化用プログラム及び記憶媒体 |
| US7580577B2 (en) * | 2002-12-09 | 2009-08-25 | Canon Kabushiki Kaisha | Methods, apparatus and computer products for generating JPEG2000 encoded data in a client |
| JP2004215021A (ja) * | 2003-01-06 | 2004-07-29 | Ricoh Co Ltd | 画像処理装置、画像処理方法、プログラム及び記録媒体 |
| JP2004236299A (ja) | 2003-01-07 | 2004-08-19 | Ricoh Co Ltd | 画像処理装置、画像形成装置、画像処理方法、プログラム及び記憶媒体 |
| JP2004221633A (ja) | 2003-01-09 | 2004-08-05 | Ricoh Co Ltd | 画像処理装置、画像処理用プログラム及び記憶媒体 |
| JP2004242290A (ja) | 2003-01-14 | 2004-08-26 | Ricoh Co Ltd | 画像処理装置および画像処理方法、画像編集処理システム、画像処理プログラム及び記憶媒体 |
| JP4148462B2 (ja) | 2003-01-20 | 2008-09-10 | 株式会社リコー | 画像処理装置、電子カメラ装置及び画像処理方法 |
| JP2004248268A (ja) | 2003-01-22 | 2004-09-02 | Ricoh Co Ltd | 画像処理装置、画像形成装置、画像復号装置、画像処理方法、プログラムおよび記憶媒体 |
| JP4111923B2 (ja) * | 2003-01-22 | 2008-07-02 | 株式会社リコー | データ形式可逆変換方法、画像処理装置、データ形式可逆変換用プログラム及び記憶媒体 |
| JP4155929B2 (ja) | 2003-01-22 | 2008-09-24 | 株式会社リコー | 画像符号化装置、符号復号化装置、画像符号化方法、符号復号化方法、プログラム及び記憶媒体 |
| JP2004248271A (ja) | 2003-01-23 | 2004-09-02 | Ricoh Co Ltd | 画像処理装置、画像形成装置、画像処理方法、プログラムおよび記憶媒体 |
| JP2004254298A (ja) * | 2003-01-30 | 2004-09-09 | Ricoh Co Ltd | 画像処理装置、プログラム及び記憶媒体 |
| JP4136951B2 (ja) | 2003-01-31 | 2008-08-20 | 株式会社リコー | 画像処理装置、プログラム及び記憶媒体 |
| JP4055994B2 (ja) * | 2003-02-06 | 2008-03-05 | 株式会社リコー | 画像処理装置、画像処理方法、プログラム及び記録媒体 |
| JP4392783B2 (ja) * | 2003-02-20 | 2010-01-06 | 株式会社リコー | 動画再生システム、動画送信装置、動画送信方法、プログラム、及び、記録媒体 |
| US7447369B2 (en) * | 2003-03-07 | 2008-11-04 | Ricoh Co., Ltd. | Communication of compressed digital images |
| US7460724B2 (en) * | 2003-03-07 | 2008-12-02 | Ricoh Co., Ltd. | JPP-stream to JPEG 2000 codestream conversion |
| JP3948619B2 (ja) | 2003-03-31 | 2007-07-25 | 株式会社リコー | 画像圧縮装置、画像圧縮方法、プログラム及び記録媒体 |
| FR2854525B1 (fr) * | 2003-04-29 | 2005-06-17 | Canon Kk | Selection de la taille de decodage d'une image multi-resolutions. |
| JP4017112B2 (ja) | 2003-04-30 | 2007-12-05 | 株式会社リコー | 符号化データ生成装置及び方法、プログラム並びに情報記録媒体 |
| JP4086196B2 (ja) | 2003-06-27 | 2008-05-14 | 株式会社リコー | 画像符号化装置、プログラム及び記憶媒体 |
| US7643700B2 (en) * | 2003-08-29 | 2010-01-05 | Ricoh Company, Ltd. | Processing of coded data according to user preference |
| JP4229323B2 (ja) | 2003-09-05 | 2009-02-25 | 株式会社リコー | 符号化装置、符号化方法及びプログラム |
| JP4416611B2 (ja) * | 2003-10-01 | 2010-02-17 | キヤノン株式会社 | 画像処理方法、画像処理装置 |
| JP4097586B2 (ja) * | 2003-10-03 | 2008-06-11 | 三洋電機株式会社 | データ処理装置 |
| JP4530274B2 (ja) | 2005-01-11 | 2010-08-25 | 株式会社リコー | 符号処理装置、符号処理方法、プログラム及び情報記録媒体 |
| JP4618676B2 (ja) | 2005-04-28 | 2011-01-26 | 株式会社リコー | 構造化文書符号の転送方法、画像処理システム、サーバ装置、プログラム及び情報記録媒体 |
| US20060269151A1 (en) | 2005-05-25 | 2006-11-30 | Hiroyuki Sakuyama | Encoding method and encoding apparatus |
-
2006
- 2006-04-12 JP JP2006109746A patent/JP4789192B2/ja not_active Expired - Fee Related
-
2007
- 2007-04-06 US US11/784,269 patent/US7865028B2/en not_active Expired - Fee Related
- 2007-04-12 CN CN2007101292596A patent/CN101080010B/zh not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2007288241A (ja) | 2007-11-01 |
| US7865028B2 (en) | 2011-01-04 |
| CN101080010B (zh) | 2011-06-29 |
| CN101080010A (zh) | 2007-11-28 |
| US20070242889A1 (en) | 2007-10-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4377103B2 (ja) | サーバクライアント環境におけるjpeg2000のための画像処理 | |
| JP4709493B2 (ja) | 圧縮されたディジタル画像を通信する方法及び製造物 | |
| US7580577B2 (en) | Methods, apparatus and computer products for generating JPEG2000 encoded data in a client | |
| JP4187415B2 (ja) | 多解像度圧縮像管理システム及び方法 | |
| JP4530274B2 (ja) | 符号処理装置、符号処理方法、プログラム及び情報記録媒体 | |
| JP2004274758A (ja) | Jpp−ストリームからjpeg2000符号ストリームへの変換方法及び変換装置 | |
| JP2004274759A (ja) | 制限されたアクセスとサーバ/クライアント受け渡しを有する圧縮されたディジタル画像の通信方法及び装置 | |
| JP5167944B2 (ja) | 情報処理装置、情報処理方法、プログラム及び記録媒体 | |
| US20080089413A1 (en) | Moving Image Encoding Apparatus And Moving Image Encoding Method | |
| US7865028B2 (en) | Code processing apparatus and code processing method | |
| US20070294375A1 (en) | Server, client, and method of storing shared text data | |
| JP4743613B2 (ja) | 符号生成装置、ファイル生成装置、符号処理装置、プログラム、情報記録媒体 | |
| JP4748672B2 (ja) | 符号処理装置、プログラム及び情報記録媒体 | |
| JP2006295886A (ja) | 画像処理システム、プログラムおよび記録媒体 | |
| JP4874170B2 (ja) | 画像処理装置及び画像処理方法 | |
| JP3914197B2 (ja) | 情報処理装置、情報処理方法、プログラム及びコンピュータ読取り可能な記録媒体 | |
| JP2008263589A (ja) | 符号化装置、符号変換装置、符号伸張装置、符号化方法、符号変換方法及び符号伸張方法 | |
| JP2006086579A (ja) | 画像処理装置、プログラム、及び記憶媒体 | |
| JP4059399B2 (ja) | 画像処理装置、画像処理システム、画像出力制御方法、プログラム、及び、記録媒体 | |
| JP5146145B2 (ja) | 画像処理装置、画像処理方法、コンピュータプログラム、及び、情報記録媒体 | |
| JP4721258B2 (ja) | 画像処理装置、画像処理方法、プログラム及び情報記録媒体 | |
| JP4789197B2 (ja) | 符号処理装置、符号処理方法、プログラム及び情報記録媒体 | |
| JP5187120B2 (ja) | 画像配信装置、端末装置、画像配信方法、プログラム、および記録媒体 | |
| JP4956179B2 (ja) | データ処理装置、データ処理方法、データ処理プログラム並びに記憶媒体 | |
| JP3919104B2 (ja) | 画像処理装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090225 |
|
| 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: 20110713 |
|
| 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: 20110714 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140729 Year of fee payment: 3 |
|
| LAPS | Cancellation because of no payment of annual fees |