画像配信システム、サーバ装置、クライアント装置、キャッシュ制御方法、プログラム及び情報記録媒体
【課題】 キャッシュの機能を持つクライアント装置へサーバ装置より画像データの符号データを送信する画像配信システムにおいて、キャッシュの効果を損なうことなく、クライアント装置側での複製の禁止された画像データの複製を防止することにある。
【解決手段】サーバ装置200のキャッシュ制御手段202は、クライアント装置220へ送信する符号データが複製の禁止された画像データのものである場合には、その符号データの画像復元のために重要な一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成し、それをサーバ処理手段201によりクライアント装置220へ送信させる。クライアント装置220のキャッシュ制御手段222は受信した符号データの、キャッシュ制御情報によりキャッシュが禁止された部分符号を除いてキャッシュする制御を行う。
【解決手段】サーバ装置200のキャッシュ制御手段202は、クライアント装置220へ送信する符号データが複製の禁止された画像データのものである場合には、その符号データの画像復元のために重要な一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成し、それをサーバ処理手段201によりクライアント装置220へ送信させる。クライアント装置220のキャッシュ制御手段222は受信した符号データの、キャッシュ制御情報によりキャッシュが禁止された部分符号を除いてキャッシュする制御を行う。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像データの符号データをサーバ装置よりクライアント装置へ送信する画像配信システムに係り、特に、複製の禁止された画像データの符号データに対するクライアント装置側でのキャッシュの制御に関する。
【背景技術】
【0002】
サーバ装置に蓄積された文書データや画像データを、ネットワークを介して接続されたクライアント装置において閲覧したり保存する処理が盛んに行われている。その最も一般的な例は、インターネット上のWWW(World Wide Web)サーバにWebブラウザからアクセスして、文書データや画像データが混在したホームページ(以下HP)を閲覧するWWWドキュメントシステムである。WWWドキュメントシステムにおけるHPはHTML(Hyper Text Markup Language)で記述されているのが現在最も一般的である。
【0003】
Webブラウザによるホームページの閲覧は、クライアント装置がインターネットを介してHTTP(Hyper Text Transfer Protocol)によってWWWサーバよりHTML文書を受信し、受信したHTML文書をブラウザの表示機能によって表示することによって実現されている。
【0004】
HTML文書は外部参照が可能となっており、ページ内の画像データはHTML文書とは別の画像ファイルとして保存されるのが一般的である。Webブラウザによる閲覧ではHTML文書とともにページ内の画像データも受信して表示するため、画像データを含むHPは、テキストのみのHPと比較して表示に時間がかかるとともにネットワーク上のトラフィックも増大する。
【0005】
このような問題への対処方法として、現在のWebブラウザはキャッシュという機能を備えている。ここでのキャッシュの機能によれば、一度閲覧したHPのHTML文書と関連する画像データのファイルは所定の記憶領域に保存され(キャッシュされ)、再度同一のHPを閲覧する際にはキャッシュされているデータを読み出して表示を行うことができる。これによって、表示の高速化というユーザビリティの向上と、ネットワークトラフィックの削減という生産性向上の効果がもたらされる。特にデータ量の大きな画像データについてキャッシュの恩恵を受ける度合いが大きい。サーバ側のデータが変化してしまえば、その再転送をする必要があるが、HPの文字情報のみ変化があり画像データに変化がない場合には、文字情報のみ再転送をすればよく、キャッシュ機能による高速性の恩恵を十分受けることが出来る。
【0006】
なお、このようなキャッシュ機能は、インターネット上のWWWドキュメントシステムに限らず、LAN(Local Area Network)を使用したローカルなファイルサーバシステムに応用可能である。
【0007】
また、ネットワーク上でキャッシュサーバというキャッシュ専用のサーバを配置して、複数クライアントでキャッシュを共有する技術もある。これは、ローカルなネットワーク内のいずれかのクライアントがアクセスしたHPをキャッシュサーバ内のキャッシュに保存しておき、複数クライアントでキャッシュを共有するものである。キャッシュサーバの代表的な例は、内部ネットワークと外部のインターネットを接続しているプロキシーサーバがその機能を備えている場合等である。
【0008】
前述したようなネットワークを介した画像データの転送時においては、データの転送量を削減する目的で画像データを圧縮符号化することが前提となっている。現在、HP上でよく使用されている圧縮符号化方式はJPEG、GIF、PNG等であるが、JPEGよりも高画質、多機能化が図られた新しい圧縮符号化方式であるJPEG2000の基本方式(part1)がISOのIS 15444−1として標準化され、次世代圧縮方式として注目されている。JPEG2000に関しては拡張方式や通信プロトコル等も標準化が行われている。JPEGは拡張システムにおいて転送路を介して画像を表示させる事を主な目的としたプログレッシブ符号化方式が定義されているが、JPEG2000においては基本方式からプログレッシブ符号化方式が定義されている。JPEG2000におけるプログレッシブ符号化においては、画質(レイヤ(L))、解像度(R)、コンポーネント(C)、位置(プレシンクト(P))という4つの画像の要素の優先順位を変更することによって5通りのプログレッションが定義されている。
【0009】
このようなJPEG2000の符号データを対象とした画像配信システムにおいて、クライアント側で上に述べたと同様のキャッシュ機能を備え、キャッシュされていない符号データのみサーバに要求する例が特許文献1,2に記載されている。
【0010】
【特許文献1】特開2003-023630号公報
【特許文献2】特開2003-224704号公報
【発明の開示】
【発明が解決しようとする課題】
【0011】
近年、ネットワークを使用したファイル交換の普及にともない、違法コピー等の著作権侵害が大きな問題となっている。
【0012】
前述したようなキャッシュ機能をクライアント側が備えている場合、複製が禁止された画像データの符号データがクライアント側にキャッシュされてしまうと、キャッシュされた符号データから容易に画像の複製が可能となってしまう。そこで、従来は、複製が禁止された画像データについては、その符号データ全体のキャッシュを禁止することによって画像データの複製の防止を図っていた。
【0013】
しかし、このような対処法では、一度閲覧したHPや画像データを再度閲覧する場合に、容量の大きな画像データの符号データの全体を再度送信する必要が生じるため、前述した表示の高速化というユーザビリティの向上、ネットワークトラフィックの削減という生産性の向上といったキャッシュの効果を享受できない。
【0014】
よって、本発明の目的は、キャッシュの機能を持つクライアント装置へサーバ装置より画像データの符号データを送信する画像配信システムにおいて、上に述べたようなキャッシュの効果を損なうことなく、クライアント装置側での複製の禁止された画像データの複製を防止することにある。
【課題を解決するための手段】
【0015】
請求項1記載の発明は、サーバ装置とクライアント装置とからなり、前記サーバ装置に蓄積されている、所定の分割単位により部分符号に分割可能な画像データの符号データを、前記クライアント装置からの要求に応じて前記サーバ装置より前記クライアント装置へ送信する画像配信システムであって、
前記クライアント装置は前記サーバ装置より受信した符号データのキャッシュを実行するキャッシュ機構を備え、
前記サーバ装置は、前記クライアント装置へ送信する符号データが複製の禁止された画像データの符号データである場合には、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成する手段を有し、当該手段により生成された前記キャッシュ制御情報を前記クライアント装置へ送信し、
前記クライアント装置の前記キャッシュ機構は、前記サーバ装置より受信した符号データについて、当該符号データに関し前記サーバ装置より受信した前記キャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行する、ことを特徴とする画像配信システムである。
【0016】
請求項2記載の発明は、請求項1記載の発明に係る画像配信システムであって、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、当該符号データから画像データを再現する場合に重要度の高い部分符号のキャッシュの禁止が指示されることを特徴とする画像配信システムである。
【0017】
請求項3記載の発明は、請求項2記載の発明に係る画像配信システムであって、画像データの符号データは解像度プログレッシブに階層符号化された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、低解像度成分の部分符号のキャッシュの禁止が指示されることを特徴とする画像配信システムである。
【0018】
請求項4記載の発明は、請求項2記載の発明に係る画像配信システムであって、画像データの符号データはビットプレーンに分割符号化された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、上位ビットプレーンの部分符号のキャッシュの禁止が指示されることを特徴とする画像配信システムである。
【0019】
請求項5記載の発明は、請求項2記載の発明に係る画像配信システムであって、画像データの符号データは画質プログレッシブにレイヤ分割された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、上位レイヤの部分符号のキャッシュの禁止が指示されることを特徴とする画像配信システムである。
【0020】
請求項6記載の発明は、請求項2記載の発明に係る画像配信システムであって、画像データの符号データは画像の部分領域に分割して符号された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、一部の部分領域に対応した部分符号のキャッシュの禁止が指示されることを特徴とする画像配信システムである。
【0021】
請求項7記載の発明は、請求項2記載の発明に係る画像配信システムであって、画像データの符号データは画像の一部の領域が高画質化された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、高画質化された領域の部分符号のキャッシュの禁止が指示されることを特徴とする画像配信システムである。
【0022】
請求項8記載の発明は、請求項2乃至7のいずれか1項記載の発明に係る画像配信システムであって、画像データの符号データは複数のコンポーネントからなり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報によりキャッシュの禁止が指示される部分符号は特定のコンポーネントの部分符号であること特徴とする画像配信システムである。
【0023】
請求項9記載の発明は、請求項8記載の発明に係る画像配信システムであって、前記特定のコンポーネントは輝度コンポーネントであることを特徴とする画像配信システムである。
【0024】
請求項10記載の発明は、請求項1乃至9のいずれか1項記載の発明に係る画像配信システムであって、画像データの符号データはJPEG2000により符号化された符号データであることを特徴とする画像配信システムである。
【0025】
請求項11記載の発明は、クライアント装置からの要求に応じて、所定の分割単位により部分符号に分割可能な画像データの符号データを前記クライアント装置へ送信するサーバ装置であって、
前記クライアント装置へ送信する符号データが複製の禁止された画像データの符号データである場合には、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成する手段を有し、当該手段により生成された前記キャッシュ制御情報を前記クライアント装置へ送信することを特徴とするサーバ装置である。
【0026】
請求項12記載の発明は、サーバ装置より、所定の分割単位により部分符号に分割可能な画像データの符号データを受信し、その復号処理を行うクライアント装置であって、
受信した符号データのキャッシュを実行するキャッシュ機構を有し、
前記キャッシュ機構は、前記サーバ装置により受信した符号データについて、当該符号データに関し前記サーバ装置より受信したキャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行する、ことを特徴とするクライアント装置である。
【0027】
請求項13記載の発明は、サーバ装置とクライアント装置とからなり、前記サーバ装置に蓄積されている、所定の分割単位により部分符号に分割可能な画像データの符号データを、前記クライアント装置からの要求に応じて前記サーバ装置より前記クライアント装置へ送信する画像配信システムにおいて、
前記サーバ装置は、前記クライアント装置へ送信する符号データが複製の禁止された画像データの符号データである場合には、前記クライアント装置に対し、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を送信し、
前記クライアント装置は、前記サーバ装置より受信した符号データについて、当該符号データに関し前記サーバ装置より受信した前記キャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行する、ことを特徴とするキャッシュ制御方法である。
【0028】
請求項14記載の発明は、
所定の分割単位により部分符号に分割可能な画像データの符号データを記憶している符号データ記憶手段、
クライアント装置からの要求に応じて、前記符号データ記憶手段に記憶されている画像データの符号データを前記クライアント装置へ送信するサーバ処理手段、
前記クライアント装置へ送信される符号データが複製の禁止された画像データの符号データである場合に、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成し、それを前記サーバ処理手段により前記クライアント装置へ送信させるキャッシュ制御手段としてコンピュータを機能させるプログラムである。
【0029】
請求項15記載の発明は、
サーバ装置へ画像送信要求を送信し、これに応じて前記サーバ装置より送信される所定の分割単位により部分符号に分割可能な画像データの符号データ及び当該符号データに関するキャッシュ制御情報を受信し、受信した符号データの復号処理を行うクライアント処理手段、
前記クライアント処理手段により受信した符号データについて、当該符号データに関し前記クライアント処理手段により受信したキャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行するキャッシュ機構としてコンピュータを機能させるプログラムである。
【0030】
請求項16記載の発明は、請求項14又は15記載の発明に係るプログラムが記録された、コンピュータが読み取り可能な情報記録媒体である。
【発明の効果】
【0031】
請求項1〜10,13記載の発明によれば、複製禁止の画像データの符号データの一部の部分符号についてクライアント装置側でのキャッシュを禁止することにより、クライアント装置側でキャッシュされた符号データから画像データの正常な復元を不可能とし、画像データの複製防止の目的を達成できる。また、キャッシュが禁止されるのは一部の部分符号のみであるため、同じ画像データを閲覧する場合には、未キャッシュの一部の部分符号のみ再度受信するだけでよいため、符号データ全体のキャッシュを禁止する方法と異なり、再表示の高速性、転送路のトラフィック削減等のキャッシュ機能の効果は損なわれない。
【0032】
請求項11,12記載の発明によれば、請求項1記載の発明に係る画像配信システムの構築のためのサーバ装置、クライアント装置を提供できる。請求項14〜16記載の発明によれば、請求項1記載の発明に係る画像配信システムの構築のためのサーバ装置、クライアント装置をコンピュータを利用し容易に実現できる。
【発明を実施するための最良の形態】
【0033】
本発明において扱われる符号データは適当な単位で部分符号に分割し得る構造であれば、その符号化方式は問わないが、以下に説明する本発明の実施の形態においてはJPEG2000part1の符号データを扱う。そこで、以下の説明の理解に必要な限度でJPEG2000Part1の概要について説明する。なお、JPEG2000にはpart2等の拡張方式も存在するが、それらとJPEG2000Part1との相違点は本発明との関連からは重要ではない。
【0034】
図15はJPEG2000part1(以下JPEG2000)における圧縮符号化処理のブロック図である。ここでは入力画像データとしてRed,Green,Blue(以下R,G,B)の3コンポーネントからなる画像データを例にして説明する。
【0035】
入力されたRGB画像データは、タイリング処理部301にてタイルと呼ばれる矩形のブロック単位で入力される。ラスタ形式の画像データが入力された場合は、タイリング処理部301においてラスタ/ブロック変換を行う。JPEG2000においては、タイルを単位として独立して符号化、復号化が可能となっている。このことはハードウェアにより符号化、復号化を行う場合にハード量を削減できる効果があるとともに、必要なタイルのみ復号して表示することも可能となるなど、JPEG2000における多機能化の一翼を担っている。なお、JPEG2000ではタイリングはオプションであり、タイリングを行うのは任意となっているが、タイリングを行わない場合にはタイル数が1として扱われる。
【0036】
次に、画像データは色変換処理部302にて輝度/色差系の信号に変換される。JPEG2000では離散ウェーブレット変換(以下DWT)に使用するフィルタの種類(5x3と9x7の2通り)によって2通りの色変換が定められており、例えば可逆変換可能な5x3フィルタを使用する場合は、式(1)によって可逆の色変換を行う。
【0037】
Y=|_ (R+2G+B)/4 _|
U=R−G
V=B−G 式(1)
但し、|_x_|は、xを超えない最大の整数を表す。
【0038】
なお、上記の色変換に先立ち、RGB各々の信号毎に、信号のダイナミックレンジの半分を減じるDCレベルシフトが施される。例えば入力RGB信号が8bitの場合は、DCレベルシフトは式(2)にて表される。
【0039】
R’=R−128 式(2)。
【0040】
色変換後の信号に対し、DWT処理部303においてY,U,V各コンポーネント毎にDWT(離散ウェーブレット変換)が行われ、ウェーブレット係数が出力される。DWTは2次元にて行われるが、通常はリフティング演算と呼ばれる演算方法により1次元フィルタ演算のコンボリューションにて実施される。1次元の変換式を式(3)に示す。
【0041】
L(k)=x(2k)+(H(k)+H(k+1))/4
H(k)=x(2k-1)−(x(2k)+x(2k-2))/2 式(3)
但し、L(k)は低周波成分、H(k)は高周波成分、x(k)は画素値、kは座標を表す。なお、DWTはダウンサンプリングを伴うため、L(k)、H(k)は入力画像と比較して1/2の解像度となる。
【0042】
図16は、オクターブ分割されたウェーブレット係数を表す図である。DWTは、1デコンポジション(分解)レベル毎にLL,HL,LH,HHの4つのサブバンドと呼ばれる方向成分が出力され、LLに対してDWTを再帰的に行う事によってより低解像度へとデコンポジションレベルをあげていく。解像度の最も高いデコンポジションレベル1の係数を1HL,1LH,1HHと表し、以下2HL,2LH・・・nHHと表す。なお、図3は、3デコンポジションレベルに分割した例である。図3には解像度レベルも示されている。解像度レベルは、図3に見られるように、デコンポジションレベルとは逆方向に解像度の低い係数から0,1,2,3というように付けられる。
【0043】
各デコンポジションレベルにおけるサブバンド内は、プレシンクトと呼ばれる領域に分割して符号の集合を形成する事が可能となっている。また、符号化はコードブロックとよばれる所定のブロック単位にて実施される。図17は、タイル内ウェーブレット係数におけるタイル、プレシンクト、コードブロックの関係を示す図である。
【0044】
DWT処理部303から出力されたウェーブレット係数は、量子化部304によってサブバンド毎にスカラー量子化が行われるが、可逆変換を実施する場合にはスカラー量子化は行わないか“1”により量子化する。また、後段のポスト量子化においても、量子化とほぼ同様な効果が得られる。なお、スカラー量子化はタイル単位にパラメータを変更可能となっている。
【0045】
量子化処理部304から出力されたウェーブレット係数は、エントロピー符号化部305にてエントロピー符号化が行われる。JPEG2000におけるエントロピー符号化は、サブバンド内をコードブロックと呼ばれる矩形領域に分割し(但し、サブバンド領域のサイズがコードブロックサイズ以下の場合は分割しない。)、コードブロック単位で行われる。
【0046】
また、コードブロック内のウェーブレット係数は、図18に模式的に示すようにビットプレーンに分解された後、各ビットプレーンを変換係数の画質への影響度を表す状態に従って3つのパス(Significance propagationパス,Magnitude refinementパス,Clean upパス)に分割し、各々がMQコーダと呼ばれる算術符号化方式により符号化される。ビットプレーンはMSB側ほど、符号化パスはSignificance propagation、Magnitude
refinement、Clean upの順に、重要度(画質への寄与度)が高くなっている。また、各パスの終端は切り捨て点(トランケーションポイント)とも呼ばれ、後段のポスト量子化の際の符号の切り捨て可能な単位となっている。
【0047】
エントロピー符号化された符号データに対し、ポスト量子化部306にて必要に応じて符号の切り捨て(トランケーション)が行われ、これはポスト量子化と呼ばれる。なお、可逆の符号を出力する必要がある場合には、このポスト量子化は行われない。このような符号化後に符号の切り捨てにより符号量を制御することができ、符号量の制御にフィードバックを必要としない構成(1パスの符号化)となっており、これはJPEG2000の特徴の1つとなっている。
【0048】
ポスト量子化後の符号データについて、符号ストリーム生成処理部307で、所定のプログレッシブ順序(符号データの復号順序)に従った符号の並べ替えとヘッダの付加を行い当該タイル分の符号ストリームを形成する。
【0049】
図19は、JPEG2000におけるレイヤプログレッションによる符号ストリーム全体を表した図である。全体符号は、メインヘッダと画像を分割した複数のタイルで構成される。タイル符号は、タイルヘッダとタイル内符号をレイヤとよばれる符号単位(詳細は後述する)に区切った複数のレイヤにより構成されており、レイヤ0、レイヤ1・・・というように上位レイヤから順番に並んでいる。レイヤ符号の構成は、レイヤ用のタイルヘッダと複数のパケットにより構成されており、パケットはパケットヘッダと符号データから構成されている。
【0050】
パケットは、符号データの最小単位であり、1つのタイルコンポーネント内の1つの解像度レベル(デコンポジションレベル)における1つのプレシンクト内の1つのレイヤの符号データから成っている。
【0051】
次に、JPEG2000におけるプログレッシブ順序について説明する。JPEG2000では、画質(レイヤ(L))、解像度(R)、コンポーネント(C)、位置(プレシンクト(P))という4つの画像の要素の優先順位を変更することによって以下に示す5通りのプログレッションが定義されている。
【0052】
・LRCPプログレッション:プレシンクト、コンポーネント、解像度レベル、レイヤの順序に復号され、レイヤのインデックスが進む毎に画像全面の画質が改善されるため、画質のプログレッションを実現できる。レイヤプログレッションとも呼ばれる。
【0053】
・RLCPプログレッション:プレシンクト、コンポーネント、レイヤ、解像度レベルの順序に復号されるため、解像度のプログレッションを実現できる。
【0054】
・RPCLプログレッション:レイヤ、コンポーネント、プレシンクト、解像度レベルの順序に復号されるため、RLCP同様、解像度のプログレッションであるが、特定位置の優先度を高くすることができる。
【0055】
・PCRLプログレッション:レイヤ、解像度レベル、コンポーネント、プレシンクトの順序に復号されるため、特定部分の復号が優先されるようになり、空間位置のプログレッションを実現できる。
【0056】
・CPRLプログレッション:レイヤ、解像度レベル、プレシンクト、コンポーネントの順序に復号されるため、例えばカラー画像のプログレッシブ復号の際に最初にグレーの画像を再現するようなコンポーネントのプログレッションを実現できる。
【0057】
図20はLRCPプログレッション(以下レイヤプログレッション)のプログレッシブ順序を模式的に表した図であり、図21は、RLCPプログレッションまたはRPCLプログレッション(以下解像度プログレッション)のプログレッシブ順序を模式的に表した図である。
【0058】
図20及び図21において、横軸はデコンポジションレベルである(数字が高いほど低解像度)。また、縦軸はレイヤ番号である(数字が高いほど下位レイヤであり、上位レイヤに下位レイヤの符号を付加して復号することによってより高画質な再生が可能となる)。図中、塗りつぶされた長方形の図形は、当該デコンポジションレベル、レイヤにおける符号を表し、その大きさは符号量の割合を模式的に表している。図中の点線の矢印は、符号順序を表している。
【0059】
図20は、レイヤプログレッションに復号する符号順序を表しており、1つのレイヤの全ての解像度の符号の復号を行い、次にその下位のレイヤの符号について同様に復号するというような復号順序となる。ウェーブレット係数レベルでみれば、係数の上位bitから先に復号されることになるため、徐々に画質が向上する画質プログレッションが実現可能である。図21は、解像度プログレッションに復号する符号順序を表しており、1つのデコンポジション(解像度)レベルの全てのレイヤの復号を行い、次にそれより高解像度側のデコンポジションレベルの復号を行うという復号順序となる。したがって、徐々に解像度が向上する解像度プログレッションが実現可能である。
【0060】
以下、本発明の実施の形態について説明する。
【0061】
図1は本発明の実施の形態を説明するための簡略化されたブロック図である。ここに示す本発明に係る画像配信システムは、本発明に係るサーバ装置200と本発明に係るクライアント装置220とが外部転送路210を介して接続されたサーバ・クライアントシステムである。ここで、外部転送路210の「外部」はサーバ装置200やクライアント装置220の内部のデータ転送路と区別するための修飾語にすぎない。外部転送路210は具体的にはインターネットやLAN等である。
【0062】
本発明に係るサーバ装置200は、コマンドの受信・解析、画像データの符号データの送信といったサーバ装置としての基本的な処理機能を実現するサーバ処理手段201、画像データの符号データ(ここでは前述のようにJPEG2000の符号データ)を蓄積している符号データ記憶手段203に加え、蓄積されている画像データの複製の許可・不許可を管理するための管理情報を記憶している管理情報記憶手段204と、その管理情報を基にクライアント装置220側での符号データのキャッシュを制御するキャッシュ制御手段202を備える構成である。ただし、管理情報を蓄積されている画像データの符号データにフラグ情報等として付加しておくことも可能であり、この場合には独立した管理情報記憶手段204は不要である。かかる態様も本発明に包含される。
【0063】
なお、本発明における「キャッシュ」とは、前述のようにクライアント装置側で受信した符号データを再利用できるように一時的に(永久的ではなく)保存する動作を意味するもである。
【0064】
本発明に係るクライアント装置220は、コマンド送信、符号データの受信、受信した符号データの復号といったクライアント装置としての基本的な処理機能を実現するクライアント処理手段221に加え、キャッシュ機能を実現するキャッシュ機構を備える構成である。このキャッシュ機構は、受信した符号データの一時的保存(キャッシュ)のためのキャッシュ記憶手段223、キャッシュされた符号データに関する管理情報(キャッシュ管理情報)を保存するためのキャッシュ管理情報記憶手段224、及び、キャッシュ動作を制御するためのキャッシュ制御手段223から構成される。なお、クライアント装置220は、以上のようなクライアント機能に関連した構成に加えて各種の画像処理機能のための構成を備えたものであってもよい。換言すれば、クライアント装置220はクライアント機能を備える各種の画像処理装置であってもよい。
【0065】
図1に示したクライアント装置220は、例えば図2に示すような構成のパーソナルコンピュータ(PC)等のコンピュータ上でプログラムによって実現される。すなわち、プログラムにより、コンピュータを図1に示した要素221,222,223,224として機能させる。このようなプログラムと、それが記録されたコンピュータが読み取り可能な情報記録媒体も本発明に包含される。
【0066】
図2において、101はプログラムに従って演算や処理を実行するCPU、102はプログラムのコードや画像の符号データ等のデータを一時的に記憶するために使用される揮発性のメモリ、103はデータやプログラム等を保存するためのハードディスク(以下HDD)、104はモニタ230への表示データを記憶するためのビデオメモリである。ビデオメモリ104に書き込まれた画像データは定期的にモニタ204へ表示される。105はインターネットやLAN等の外部転送路210を介してデータを送受信する外部インターフェース、106は上記各構成要素を接続するバスである。通常、マウスやキーボード等の入力デバイスも存在するが図中省略されている。クライアント装置220のキャッシュ記憶手段223及びキャッシュ管理情報記憶手段224としてHDD103が用いられる。クライアント処理手段221やキャッシュ制御手段222の作業用記憶域としてはメモリ102が利用される。クライアント処理手段221やキャッシュ機構としてコンピュータを機能させるためのプログラムは、HDD103に保存されており、それらは必要に応じてメモリ102にロードされCPU101により実行される。
【0067】
図示しないが、サーバ装置200も同様にワークステーション等のコンピュータを用いてプログラムにより実現される。プログラムにより、ワークステーション等のコンピュータはサーバ処理手段201、キャッシュ制御手段202等として機能させられ、それらの作業用記憶域としてはコンピュータのメモリが利用される。符号データ記憶手段203や管理情報記憶手段204として、例えばコンピュータのHDDが利用される。このようなプログラムと、それが記録されたコンピュータが読み取り可能な情報記録媒体も本発明に包含される。
【0068】
図1には、サーバ装置200とクライアント装置220の間の画像配信時のデータの流れが模式的に示されている。画像配信の動作の概略は次の通りである。最初にクライアント装置220から画像送信要求がサーバ装置200へ送信される。サーバ装置201は画像送信要求を受信すると、管理情報記憶手段204に記憶されている画像の管理情報を基にキャッシュ制御情報を生成し、それをクライアント装置220へ送信する。次にサーバ装置200は、符号データ記憶手段203に蓄積されている、要求された画像データの符号データを送信する。クライアント装置220は受信した符号データをプログレッシブに復号しながら画像をモニタ装置220にプログレッシブに表示させる。なお、一般的にモニタ等の表示装置にてプログレッシブ表示と言えばノンインタレース表示のことを差すが、ここでのプログレッシブ表示は上に述べたような画質や解像度を徐々に向上させるような表示方法を意味する。また、クライアント装置220のキャッシュ制御手段222は、クライアント装置200より受信したキャッシュ制御情報に基づいて、受信した符号データのキャッシュの制御を行うが、その詳細は後述する。
【0069】
以下、画像配信に関する動作をより詳細に説明する。図3は画像配信時のクライアント装置220とサーバ装置200の動作を説明するためのフローチャートである。なお、画像配信においては、要求(リクエスト)に対し承認(アクノレッジ)を返すハンドシェークの手順をとるのが一般的であるが、説明の簡略化のためアクノレッジの送信を省略する。
【0070】
クライアント装置220側で、ユーザが図示しない入力デバイスを使用し、サーバ装置200に蓄積されている特定の画像データの符号データを受信してを表示するためのアクションを行うことにより、画像配信動作がスタートする。
【0071】
ステップS101:クライアント装置220において、上記アクションによりクライアント処理手段221より受信したい画像データの識別情報がキャッシュ制御手段222に渡される。過去に受信された画像データの符号データが、その一部でもキャッシュされているならば、その画像データの識別情報と関連付けられて、その符号データの記憶アドレス情報及びキャッシュ管理情報がキャッシュ管理情報記憶手段224に記憶されている。キャッシュ制御手段222は、クライアント処理手段221より渡された画像データの識別情報と、キャッシュ管理情報記憶手段224に記憶されている画像データの識別情報を比較し、一致がとれたならば受信しようとする画像データの符号データがキャッシュされていると判断し、一致がとれないならばキャッシュされていないと判断する。キャッシュされていないと判断した場合には、ステップS102,S103はスキップされる。
【0072】
ステップS102:キャッシュ制御手段222は、受信したい画像データに関するキャッシュ管理情報と、その符号データの記憶アドレス情報をキャッシュ管理情報記憶手段224からコンピュータのメモリに読み込む。キャッシュ管理情報は、画像データの符号データのどの部分がキャッシュされ、どの部分がキャッシュされていないかを把握するためのものであるが、その具体的内容については後述する。
【0073】
ステップS103:キャッシュ制御手段222は、メモリに読み込んだアドレス情報を基に、キャッシュ記憶手段223にキャッシュされている当該画像データの符号データをコンピュータのメモリに読み込む。
【0074】
ステップS104:キャッシュ制御手段222は、メモリに読み込んだキャッシュ管理情報に基づいて、当該画像データのキャッシュされていない符号データの部分、つまりサーバ装置側から受信する必要がある符号データの部分を指示するための情報(符号情報)を生成する。当該画像データの符号データが全くキャッシュされていない場合(そのキャッシュ管理情報は読み込まれていない)、当該画像データの符号データの全部を指示する符号情報を生成する。
【0075】
ステップS105,S201:クライアント装置220のクライアント処理手段221はステップS104で生成された符号情報とともに当該画像データの送信要求をサーバ装置200へ送信し、これをサーバ装置200のサーバ処理手段201が受信する。サーバ処理手段201は、当該画像データの識別情報をキャッシュ制御手段202に渡す。
【0076】
ステップS202:サーバ装置200において、管理情報記憶手段204には、蓄積されている画像データの識別情報に関連付けられて、その複製の許可・禁止を示す管理情報が記憶されている。キャッシュ制御手段202は、サーバ処理手段201より渡された画像データの識別情報に関連付けられた管理情報を管理情報記憶手段204よりコンピュータのメモリに読み込む。
【0077】
ステップS203:キャッシュ制御手段202は、メモリに読み出した管理情報により当該画像データの複製が禁止されているか否かを判定する。
【0078】
ステップS204:キャッシュ制御手段202は、当該画像データの複製が禁止されている場合には(ステップS203,Yes)、その符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成する。
【0079】
ステップS205:キャッシュ制御手段202は、当該画像データの複製が許可されている場合には(ステップS203,No)、その符号データのどの部分符号もキャッシュの禁止を指定しないキャッシュ制御情報を生成する。
【0080】
なお、ステップS203,S204で生成されるキャッシュ制御情報は、クライアント装置側へ送信する符号データの所定の分割単位による部分符号毎にキャッシュの許可・不許可を指定する情報であり、その具体例は後述する。
【0081】
ステップS206,S105:サーバ処理手段201はステップS205で生成されたキャッシュ制御情報を送信し、これをクライアント装置220のクライアント処理手段221が受信する。
【0082】
ステップS207,S107:サーバ装置200のサーバ処理手段201は、送信要求された画像データの符号データを符号データ記憶手段203より読み込み、その符号データの、クライアント装置220より受信した符号情報で指定された部分のみからなる符号データを編集して送信し、これをクライアント装置220のクライアント処理手段221が受信する。
【0083】
当該画像データの符号データがまったくキャッシュされていない場合には、その符号データの全体が送信される。ただし、符号データの「全体」は、必ずしも符号データ記憶手段203に記憶されている符号データの全部とは限らず、例えばクライアント装置側で所望の解像度・画質・領域・コンポーネントの画像復元のために必要な全ての符号データである。当該画像データの符号データの一部がキャッシュ済みの場合には、その符号データの未キャッシュ部分のみが送信される。いずれにしてもクライアント装置220のメモリに、当該画像データの画像復元に必要な符号データが得られる。
【0084】
ステップS108:クライアント処理手段221は、メモリに得られた当該画像データの符号データの復号処理を行い、復元された画像データをビデオメモリに書き込むことによりモニタ230に表示させる。なお、モニタ230の表示サイズと画像サイズの関係から必要な場合には、画像データの拡大/縮小処理をクライアント処理手段221で行う。
【0085】
ステップS109:キャッシュ制御手段222は、メモリ上の符号データ(今回受信された符号データのみ、又は、キャッシュ済み符号データと今回受信された符号データ)より、キャッシュ制御情報によりキャッシュの禁止が指示された部分符号を削除する。これは、キャッシュ禁止が指示された部分符号をキャッシュの対象から除外するためである。
【0086】
ステップS110:キャッシュ制御手段222は、前ステップで削除されずに残ったメモリ上の符号データによりキャッシュ記憶手段223の内容を書き換える。これで、当該符号データのキャッシュ禁止の部分符号を除外したキャッシュが実行されたことになる。
【0087】
ステップS111:キャッシュ制御手段222は、サーバ装置200から受信したキャッシュ制御情報と、ステップS102でキャッシュ管理情報記憶手段224よりメモリに読み出したキャッシュ管理情報を照らし合わせ、必要な場合はメモリ上のキャッシュ管理情報を更新し、更新後のキャッシュ管理情報でキャッシュ管理情報記憶手段224の内容を書き換える。この際、必要に応じて当該画像データの符号データの記憶アドレス情報も書き換える。
【0088】
なお、キャッシュ制御情報を符号データの送信に先だって送信したが、符号データの後にキャッシュ制御情報を送信する形態をとることもできる。また、キャッシュ制御情報を符号データと一体化した形で転送する形態をとることも可能である。このような変形形態も本発明に包含される。
【0089】
また、図3には示されていないが、受信したい画像データの符号データの全体がキャッシュされている場合には、クライアント装置220はサーバ装置200への画像送信要求は行わず、キャッシュ記憶手段223からその符号データをメモリに読み出し、それを復号処理して表示を行う。ここで、符号データの「全体」とは、必ずしもサーバ装置側に蓄積されている当該画像データの符号データの全部とは限らず、所望の解像度・画質・領域・コンポーネントの画像表示のために必要とされる符号データの全てを意味する。
【0090】
以下、キャッシュ制御の具体例を説明する。
【0091】
<キャッシュ制御例1> ここでは、JPEG2000のRLCPプログレッションの符号データに対するキャッシュ制御の例を説明する。
【0092】
図4は、JPEG2000のRLCPプログレッションの符号データの一例を示す模式図である。ただし、この符号データは3コンポーネントのカラー画像データを、デコンポジションレベル数2、レイヤ数2で符号化したものである。
【0093】
このようなJPEG2000の符号データはパケット単位に分割して扱う事が可能であり、サーバ装置200からの符号データの送信はパケット番号順に行われるが、前述したように、RLCPプログレッションの場合は低解像度側のパケットから順次送信される。
【0094】
図4の符号データに対応したキャッシュ制御情報及びキャッシュ管理情報の一例を図5に示す。キャッシュ制御情報とパケット管理情報は性質的に同じものなので、ここでは両者は同一のものとして扱う。また、ここではキャッシュ制御をパケット単位で行うものとして記載しているが、キャッシュ制御の単位をもっと大きな符号の分割単位であるレイヤ、サブバンド、解像度レベル等とすることもできる。但し、キャッシュ制御の単位をパケットとするのが、最も詳細なキャッシュ制御が可能となり、キャッシュを許可する符号量も増やす事が出来るため一般に好適である。
【0095】
図5において、OFFはキャッシュの禁止の指示であり、ONはキャッシュの許可の指示である。この例では、パケット番号0〜5のパケットにいてキャッシュの禁止が指示されている。すなわち、解像度レベル0(いわゆるLL成分)の部分符号を全てキャッシュ禁止としている。
【0096】
図6は、ある画像を3デコンポジションレベルに符号化した場合の、各サブバンド毎の復号画像を示したものである。同図は、図16のウェーブレット係数と対応している。ここで画像データを再現する場合に最も重要度が高いのは画像の原形を把握する事の可能なLL成分であり、その他の成分に関しては、画像の概要がうっすらと見える程度であり、LL成分以外の成分のみで画像を復元することは不可能である。
【0097】
したがって、複製が禁止された画像データの符号データであっても、本例に示すようにLL成分のパケットのキャッシュを禁止するならば、クライアント装置側でキャッシュされた符号データから画像を復元(複製)することは困難であり、複製禁止の目的が達成される。そして、クライアント装置側で当該画像を再度復元したい場合には、LL成分の符号のみ受信すれば足りるため、符号データの全てをキャッシュ禁止とした場合(符号データ全体を再度受信する必要がある)に比べ、ネットワークのトラフィックが大きく軽減されるという効果がある。
【0098】
なお、クライアント装置側でモニタ230の表示サイズや解像度等の関係から、例えば図4の符号データの解像度レベル1までの符号のみを必要とするような場合には、解像度レベル2のパケットは送信する必要はない。同様に、クライアント装置側で画像のモノクロ表示を望む場合には、コンポーネント1,2のパケットは送信する必要がない。このことは以下に述べる他のキャッシュ制御例にあっても同様である。
【0099】
<キャッシュ制御例2> ここでは、JPEG2000のLRCPプログレッションの符号データに対するキャッシュ制御の例を説明する。
【0100】
図7は、JPEG2000のLRCPプログレッションの符号データの一例を示す模式図である。ただし、この符号データは、3コンポーネントのカラー画像データを、デコンポジションレベル数2、レイヤ数2として符号化したものである。
【0101】
このような符号データはパケット単位に分割して扱うことがて可能であり、サーバ装置200からの符号データの送信はパケット番号順に行われるが、前述したように、LRCPプログレッションの場合は最上位レイヤ(レイヤ0)のパケットから順次送信が行われることになる。
【0102】
図7の符号データに対応したキャッシュ制御情報及びキャッシュ管理情報の一例を図8に示す。この例では、パケット単位でキャッシュ制御が行われ、パケット番号0〜17のパケットのキャッシュの禁止が指示されている。すなわち、レイヤ0のパケット全てがキャッシュ禁止とされている。
【0103】
図9に、デコンポジションレベル数を2,プリシンクトサイズ=サブバンドサイズとしたときのレイヤーと、それに含まれるパケットの例を示す。パケットはプリシンクトを単位とするものであるから、プリシンクト=サブバンドとした場合、パケットはHL〜HHサブバンドをまたいだものとなる。なお、図9には一部のパケットのみ示されている。
【0104】
上位のレイヤ(レイヤ番号が若いレイヤ)は、ウェーブレット係数の上位ビット側の符号からなるため、上位レイヤのパケットほど画像への重要度は高くなる。したがって、本例のように上位レイヤ(上位ビット側)のパケットのキャッシュを禁止することにより、クライアント装置側ではキャッシュされている符号データからの画像の復元(複製)が困難となり、複製禁止の目的が達成される。
【0105】
なお、レイヤ0のパケットを全てキャッシュ禁止とすると、キャッシュ禁止パケット数が増加し、クライアント装置側で画像を再度復元する時にサーバ装置より再度受信しなければならない符号量が増える懸念がある。この場合には、前記キャッシュ制御例1と同様に、図7の符号データのパケット番号0〜2までのパケットのみキャッシュを禁止するようにしてもよい。つまり、レイヤ0のLL成分のパケットのみキャッシュを禁止する。このようにすると、画像の再現は困難となるので複製防止の目的を達成することができ、かつ、クライアント装置側で再度受信する必要がある符号量が大幅に減少する。
【0106】
<キャッシュ制御例3> ここでは、コンポーネント毎のキャッシュ制御の例を説明する。
【0107】
ここでも、図4に示したRLCPプログレッションの符号データを扱うものとし、キャッシュ制御情報及びキャッシュ管理情報の一例を図10に示す。キャッシュ制御の単位はパケットである。
【0108】
本例では、パケット番号0,3、6、9、12〜15、24〜27のパケットのキャッシュが禁止される。すなわち、コンポーネント0(輝度成分Y)の全てのパケットのキャッシュが禁止される。
【0109】
カラー画像の場合、1つの輝度成分と2つの色差成分に分離されるが、画像の形状を最もよく表すのは輝度成分であるため、本例のように輝度成分の符号をキャッシュ禁止とすることによって、クライアント装置側ではキャッシュされた符号データからの画像の復元(複製)が困難となり、複製防止の目的を達成することができる。
【0110】
なお、本例のように輝度成分のパケットを全てキャッシュ禁止とすると、非常に多くのキャッシュ禁止パケットが発生し、クライアント装置側で再度画像を復元する時にサーバ装置より受信しなければならない符号量が増える懸念がある場合には、前記キャッシュ制御例1と同様に、図4の符号データのパケット番号0のパケットのみキャッシュを禁止するようにしてもよい。つまり、コンポーネント0(輝度)のLL成分のパケットのみキャッシュ禁止とするわけである。このようなキャッシュ制御を行えば、通常、キャッシュされた符号データだけでは画像の再現は困難となるので、複製防止の目的を達成することができ、しかも、クライアント装置が画像を再度復元しようとする時にサーバ装置よりコンポーネント0のLL成分のパケットのみ再度受信するだけでよく受信符号量は大幅に減少する。
【0111】
<キャッシュ制御例4> ここでは、タイルやプレシンクト等の画像の位置(部分領域)との関連性の大きなパラメータによってキャッシュ制御を行う例を説明する。
【0112】
図11は、ある画像のタイル分割例を示す模式図である。図中の番号は便宜上のタイル番号を表している。JPEG2000においては、符号データをタイル毎に分割可能であり、タイル単位での符号化・復号化が可能である。
【0113】
このような16個のタイルに分割される場合におけるキャッシュ制御情報及びキャッシュ管理情報の一例を図12に示す。キャッシュ制御の単位はタイルであるため、前述したパケット単位のキャッシュ制御に比べると制御が簡単になるという利点を有する。なお、キャッシュ制御情報をパケット単位で構成してもよいことは当然である。
【0114】
本例では、タイル番号5,6,9,10のタイルのパケットのキャッシュが禁止される。これらタイルは、画像の中央部、すなわち図11に示す画像中の女性の顔の部分に対応する。したがって、クライアント装置においてキャッシュされた符号データのみを復号して再現される画像は図13に示すような画像となり、実質的に複製の目的を達成することができる。
【0115】
なお、本例では画像の中央部分のタイルについてキャッシュを禁止するような制御となるが、これは一例にすぎず、画像の重要な情報が存在する部分についてキャッシュを禁止するように制御すればよい。画像の重要な情報が存在する部分は、例えば、人物が写った画像であれば顔の部分、絵文字混在の画像であれば文字部、というように個々の画像毎に選べばよい。この決定をサーバ装置で自動的に行うようにすることもできる。その簡易な方法としては、符号量の大きなタイルを重要な部分として認識する方法がある。
【0116】
また、JPEG2000ではROI(Regeon of Interrest)と呼ばれる、特定の部分領域を高画質化する処理が許されている。具体的には、ROI領域について、Max
Shiftと呼ばれる手法によって、他の部分よりも符号化の優先度を向上させる。ROI領域が含まれるタイルは最も重要な領域という事は明白であるので、そのタイルをキャッシュ禁止タイルに選ぶことができる。かかる態様も本発明に包含される。
【0117】
JPEG2000の符号データでは、タイルに代えてプレシンクトを単位として同様なキャッシュ制御を行う事も可能である。各パケットはプレシンクトを超えられない決まりがあるので、プレシンクト単位のキャッシュ制御は前記キャッシュ制御例1〜3と同様なパケット単位のキャッシュ制御情報を用いることによって行うことができる。かかる態様も本発明に包含される。
【0118】
なお、プレシンクトの位置関係は図17を参照されたい。プレシンクトの大きさは各サブバンドで独立に設定でき、キャッシュ制御もサブバンド別に独立に行うことができる。プレシンクト単位のキャッシュ制御は、LL成分の一部のプレシンクトのみをキャッシュ禁止の対象とするのが最も効率が良く、かかる態様も本発明に包含される。
【0119】
また、このような特定の部分領域の符号のキャッシュ禁止は、特定のコンポーネント(実際的には輝度コンポーネント)のみを対象に行ってもよい。かかる態様も本発明に包含される。
【0120】
以上の説明においては、クライアント装置220側で必要な符号データとそのキャッシュ制御情報を一括してサーバ装置200から送信したが、1パケット単位で順次に符号データとキャッシュ制御情報を送信するようにしてもよい。このような配信方法をとる場合のクライアント装置側のフローチャートを図14に示す。
【0121】
図14中のステップS120〜S122が、図3に示したフローチャートと異なる部分である。すなわち、ステップS120で、クライアント処理手段221は、ステップS104で生成された符号情報に基づき受信が必要なパケットを1つ選択し、そのパケットの送信要求を行う。次のステップS121で、クライアント処理手段221は、サーバ装置200より当該パケットと、それに関するキャッシュ制御情報を受信する。クライアント処理手段221は、ステップS122で必要なパケットを全て受信したと判断するまで、1パケット単位で必要なパケットとそのキャッシュ制御情報の受信を繰り返す。
【0122】
このように最小の部分符号である1パケット単位で符号データとキャッシュ制御情報を転送する方法によれば、クライアント装置220によりサーバ装置200が占有される時間が最短となるため、サーバ装置200が複数クライアント装置から画像送信要求を受けた場合等にサーバ装置200の処理負荷が軽減される利点がある。また、データサイズの小さなパケット単位で通信セッションが切れるため、エラー発生時の復帰が早くなる、送信要求のキャンセルへの対応が早くなる等、ユーザビリティが向上する利点もある。
【0123】
ただし、このような1パケット単位の送信方法はオーバーヘッドが増加するため、送信符号量が多い場合には、符号データ及びキャッシュ制御情報を一括して送信する方法の方が全体の通信時間が短くなるという利点がある。
【0124】
以上、画像配信システムと、それを構成するクライアント装置及びサーバ装置に関して本発明の実施の形態を説明したが、以上の説明は本発明のキャッシュ制御方法の説明でもあることは明らかである。
【図面の簡単な説明】
【0125】
【図1】本発明の実施の形態を説明するためのブロック図である。
【図2】クライアント装置をプログラムにより実現するためのコンピュータの構成例を示すブロック図である。
【図3】画像配信動作を説明するためのフローチャートである。
【図4】RLCPプログレッションの符号データの例を示す模式図である。
【図5】キャッシュ制御情報及びキャッシュ管理情報の一例を示す図である。
【図6】サブバンド毎の復号画像の説明図である。
【図7】LRCPプログレッションの符号データの例を示す模式図である。
【図8】キャッシュ制御情報及びキャッシュ管理情報の一例を示す図である。
【図9】レイヤ構造の一例を示す図である。
【図10】キャッシュ制御情報及びキャッシュ管理情報の一例を示す図である。
【図11】画像のタイル分割の一例を示す図である。
【図12】キャッシュ制御情報及びキャッシュ管理情報の一例を示す図である。
【図13】図12に示すキャッシュ制御情報に従ってキャッシュされた符号データから復元される画像を示す図である。
【図14】パケット単位での符号データ及びキャッシュ制御情報の送信を行う場合のクライアント装置の動作を説明するためのフローチャートである。
【図15】JPEG2000の符号化処理を説明するためのブロック図である。
【図16】3デコンポジションレベルのサブバンド分割の説明図である。
【図17】タイル、プレシンクト、コードブロックの関係を示す模式図である。
【図18】ビットプレーンとサブビットプレーンの関係を示す模式図である。
【図19】レイヤプログレッションの符号データの構成を示す模式図である。
【図20】レイヤプログレッションの符号順序を示す模式図である。
【図21】解像度プログレッションの符号順序を示す模式図である。
【符号の説明】
【0126】
200 サーバ装置
201 サーバ処理手段
202 キャッシュ制御手段
203 符号データ記憶手段
204 管理情報記憶手段
210 外部転送路
220 クライアント装置
221 クライアント処理手段
222 キャッシュ制御手段
223 キャッシュ記憶手段
224 キャッシュ管理情報記憶手段
【技術分野】
【0001】
本発明は、画像データの符号データをサーバ装置よりクライアント装置へ送信する画像配信システムに係り、特に、複製の禁止された画像データの符号データに対するクライアント装置側でのキャッシュの制御に関する。
【背景技術】
【0002】
サーバ装置に蓄積された文書データや画像データを、ネットワークを介して接続されたクライアント装置において閲覧したり保存する処理が盛んに行われている。その最も一般的な例は、インターネット上のWWW(World Wide Web)サーバにWebブラウザからアクセスして、文書データや画像データが混在したホームページ(以下HP)を閲覧するWWWドキュメントシステムである。WWWドキュメントシステムにおけるHPはHTML(Hyper Text Markup Language)で記述されているのが現在最も一般的である。
【0003】
Webブラウザによるホームページの閲覧は、クライアント装置がインターネットを介してHTTP(Hyper Text Transfer Protocol)によってWWWサーバよりHTML文書を受信し、受信したHTML文書をブラウザの表示機能によって表示することによって実現されている。
【0004】
HTML文書は外部参照が可能となっており、ページ内の画像データはHTML文書とは別の画像ファイルとして保存されるのが一般的である。Webブラウザによる閲覧ではHTML文書とともにページ内の画像データも受信して表示するため、画像データを含むHPは、テキストのみのHPと比較して表示に時間がかかるとともにネットワーク上のトラフィックも増大する。
【0005】
このような問題への対処方法として、現在のWebブラウザはキャッシュという機能を備えている。ここでのキャッシュの機能によれば、一度閲覧したHPのHTML文書と関連する画像データのファイルは所定の記憶領域に保存され(キャッシュされ)、再度同一のHPを閲覧する際にはキャッシュされているデータを読み出して表示を行うことができる。これによって、表示の高速化というユーザビリティの向上と、ネットワークトラフィックの削減という生産性向上の効果がもたらされる。特にデータ量の大きな画像データについてキャッシュの恩恵を受ける度合いが大きい。サーバ側のデータが変化してしまえば、その再転送をする必要があるが、HPの文字情報のみ変化があり画像データに変化がない場合には、文字情報のみ再転送をすればよく、キャッシュ機能による高速性の恩恵を十分受けることが出来る。
【0006】
なお、このようなキャッシュ機能は、インターネット上のWWWドキュメントシステムに限らず、LAN(Local Area Network)を使用したローカルなファイルサーバシステムに応用可能である。
【0007】
また、ネットワーク上でキャッシュサーバというキャッシュ専用のサーバを配置して、複数クライアントでキャッシュを共有する技術もある。これは、ローカルなネットワーク内のいずれかのクライアントがアクセスしたHPをキャッシュサーバ内のキャッシュに保存しておき、複数クライアントでキャッシュを共有するものである。キャッシュサーバの代表的な例は、内部ネットワークと外部のインターネットを接続しているプロキシーサーバがその機能を備えている場合等である。
【0008】
前述したようなネットワークを介した画像データの転送時においては、データの転送量を削減する目的で画像データを圧縮符号化することが前提となっている。現在、HP上でよく使用されている圧縮符号化方式はJPEG、GIF、PNG等であるが、JPEGよりも高画質、多機能化が図られた新しい圧縮符号化方式であるJPEG2000の基本方式(part1)がISOのIS 15444−1として標準化され、次世代圧縮方式として注目されている。JPEG2000に関しては拡張方式や通信プロトコル等も標準化が行われている。JPEGは拡張システムにおいて転送路を介して画像を表示させる事を主な目的としたプログレッシブ符号化方式が定義されているが、JPEG2000においては基本方式からプログレッシブ符号化方式が定義されている。JPEG2000におけるプログレッシブ符号化においては、画質(レイヤ(L))、解像度(R)、コンポーネント(C)、位置(プレシンクト(P))という4つの画像の要素の優先順位を変更することによって5通りのプログレッションが定義されている。
【0009】
このようなJPEG2000の符号データを対象とした画像配信システムにおいて、クライアント側で上に述べたと同様のキャッシュ機能を備え、キャッシュされていない符号データのみサーバに要求する例が特許文献1,2に記載されている。
【0010】
【特許文献1】特開2003-023630号公報
【特許文献2】特開2003-224704号公報
【発明の開示】
【発明が解決しようとする課題】
【0011】
近年、ネットワークを使用したファイル交換の普及にともない、違法コピー等の著作権侵害が大きな問題となっている。
【0012】
前述したようなキャッシュ機能をクライアント側が備えている場合、複製が禁止された画像データの符号データがクライアント側にキャッシュされてしまうと、キャッシュされた符号データから容易に画像の複製が可能となってしまう。そこで、従来は、複製が禁止された画像データについては、その符号データ全体のキャッシュを禁止することによって画像データの複製の防止を図っていた。
【0013】
しかし、このような対処法では、一度閲覧したHPや画像データを再度閲覧する場合に、容量の大きな画像データの符号データの全体を再度送信する必要が生じるため、前述した表示の高速化というユーザビリティの向上、ネットワークトラフィックの削減という生産性の向上といったキャッシュの効果を享受できない。
【0014】
よって、本発明の目的は、キャッシュの機能を持つクライアント装置へサーバ装置より画像データの符号データを送信する画像配信システムにおいて、上に述べたようなキャッシュの効果を損なうことなく、クライアント装置側での複製の禁止された画像データの複製を防止することにある。
【課題を解決するための手段】
【0015】
請求項1記載の発明は、サーバ装置とクライアント装置とからなり、前記サーバ装置に蓄積されている、所定の分割単位により部分符号に分割可能な画像データの符号データを、前記クライアント装置からの要求に応じて前記サーバ装置より前記クライアント装置へ送信する画像配信システムであって、
前記クライアント装置は前記サーバ装置より受信した符号データのキャッシュを実行するキャッシュ機構を備え、
前記サーバ装置は、前記クライアント装置へ送信する符号データが複製の禁止された画像データの符号データである場合には、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成する手段を有し、当該手段により生成された前記キャッシュ制御情報を前記クライアント装置へ送信し、
前記クライアント装置の前記キャッシュ機構は、前記サーバ装置より受信した符号データについて、当該符号データに関し前記サーバ装置より受信した前記キャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行する、ことを特徴とする画像配信システムである。
【0016】
請求項2記載の発明は、請求項1記載の発明に係る画像配信システムであって、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、当該符号データから画像データを再現する場合に重要度の高い部分符号のキャッシュの禁止が指示されることを特徴とする画像配信システムである。
【0017】
請求項3記載の発明は、請求項2記載の発明に係る画像配信システムであって、画像データの符号データは解像度プログレッシブに階層符号化された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、低解像度成分の部分符号のキャッシュの禁止が指示されることを特徴とする画像配信システムである。
【0018】
請求項4記載の発明は、請求項2記載の発明に係る画像配信システムであって、画像データの符号データはビットプレーンに分割符号化された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、上位ビットプレーンの部分符号のキャッシュの禁止が指示されることを特徴とする画像配信システムである。
【0019】
請求項5記載の発明は、請求項2記載の発明に係る画像配信システムであって、画像データの符号データは画質プログレッシブにレイヤ分割された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、上位レイヤの部分符号のキャッシュの禁止が指示されることを特徴とする画像配信システムである。
【0020】
請求項6記載の発明は、請求項2記載の発明に係る画像配信システムであって、画像データの符号データは画像の部分領域に分割して符号された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、一部の部分領域に対応した部分符号のキャッシュの禁止が指示されることを特徴とする画像配信システムである。
【0021】
請求項7記載の発明は、請求項2記載の発明に係る画像配信システムであって、画像データの符号データは画像の一部の領域が高画質化された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、高画質化された領域の部分符号のキャッシュの禁止が指示されることを特徴とする画像配信システムである。
【0022】
請求項8記載の発明は、請求項2乃至7のいずれか1項記載の発明に係る画像配信システムであって、画像データの符号データは複数のコンポーネントからなり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報によりキャッシュの禁止が指示される部分符号は特定のコンポーネントの部分符号であること特徴とする画像配信システムである。
【0023】
請求項9記載の発明は、請求項8記載の発明に係る画像配信システムであって、前記特定のコンポーネントは輝度コンポーネントであることを特徴とする画像配信システムである。
【0024】
請求項10記載の発明は、請求項1乃至9のいずれか1項記載の発明に係る画像配信システムであって、画像データの符号データはJPEG2000により符号化された符号データであることを特徴とする画像配信システムである。
【0025】
請求項11記載の発明は、クライアント装置からの要求に応じて、所定の分割単位により部分符号に分割可能な画像データの符号データを前記クライアント装置へ送信するサーバ装置であって、
前記クライアント装置へ送信する符号データが複製の禁止された画像データの符号データである場合には、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成する手段を有し、当該手段により生成された前記キャッシュ制御情報を前記クライアント装置へ送信することを特徴とするサーバ装置である。
【0026】
請求項12記載の発明は、サーバ装置より、所定の分割単位により部分符号に分割可能な画像データの符号データを受信し、その復号処理を行うクライアント装置であって、
受信した符号データのキャッシュを実行するキャッシュ機構を有し、
前記キャッシュ機構は、前記サーバ装置により受信した符号データについて、当該符号データに関し前記サーバ装置より受信したキャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行する、ことを特徴とするクライアント装置である。
【0027】
請求項13記載の発明は、サーバ装置とクライアント装置とからなり、前記サーバ装置に蓄積されている、所定の分割単位により部分符号に分割可能な画像データの符号データを、前記クライアント装置からの要求に応じて前記サーバ装置より前記クライアント装置へ送信する画像配信システムにおいて、
前記サーバ装置は、前記クライアント装置へ送信する符号データが複製の禁止された画像データの符号データである場合には、前記クライアント装置に対し、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を送信し、
前記クライアント装置は、前記サーバ装置より受信した符号データについて、当該符号データに関し前記サーバ装置より受信した前記キャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行する、ことを特徴とするキャッシュ制御方法である。
【0028】
請求項14記載の発明は、
所定の分割単位により部分符号に分割可能な画像データの符号データを記憶している符号データ記憶手段、
クライアント装置からの要求に応じて、前記符号データ記憶手段に記憶されている画像データの符号データを前記クライアント装置へ送信するサーバ処理手段、
前記クライアント装置へ送信される符号データが複製の禁止された画像データの符号データである場合に、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成し、それを前記サーバ処理手段により前記クライアント装置へ送信させるキャッシュ制御手段としてコンピュータを機能させるプログラムである。
【0029】
請求項15記載の発明は、
サーバ装置へ画像送信要求を送信し、これに応じて前記サーバ装置より送信される所定の分割単位により部分符号に分割可能な画像データの符号データ及び当該符号データに関するキャッシュ制御情報を受信し、受信した符号データの復号処理を行うクライアント処理手段、
前記クライアント処理手段により受信した符号データについて、当該符号データに関し前記クライアント処理手段により受信したキャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行するキャッシュ機構としてコンピュータを機能させるプログラムである。
【0030】
請求項16記載の発明は、請求項14又は15記載の発明に係るプログラムが記録された、コンピュータが読み取り可能な情報記録媒体である。
【発明の効果】
【0031】
請求項1〜10,13記載の発明によれば、複製禁止の画像データの符号データの一部の部分符号についてクライアント装置側でのキャッシュを禁止することにより、クライアント装置側でキャッシュされた符号データから画像データの正常な復元を不可能とし、画像データの複製防止の目的を達成できる。また、キャッシュが禁止されるのは一部の部分符号のみであるため、同じ画像データを閲覧する場合には、未キャッシュの一部の部分符号のみ再度受信するだけでよいため、符号データ全体のキャッシュを禁止する方法と異なり、再表示の高速性、転送路のトラフィック削減等のキャッシュ機能の効果は損なわれない。
【0032】
請求項11,12記載の発明によれば、請求項1記載の発明に係る画像配信システムの構築のためのサーバ装置、クライアント装置を提供できる。請求項14〜16記載の発明によれば、請求項1記載の発明に係る画像配信システムの構築のためのサーバ装置、クライアント装置をコンピュータを利用し容易に実現できる。
【発明を実施するための最良の形態】
【0033】
本発明において扱われる符号データは適当な単位で部分符号に分割し得る構造であれば、その符号化方式は問わないが、以下に説明する本発明の実施の形態においてはJPEG2000part1の符号データを扱う。そこで、以下の説明の理解に必要な限度でJPEG2000Part1の概要について説明する。なお、JPEG2000にはpart2等の拡張方式も存在するが、それらとJPEG2000Part1との相違点は本発明との関連からは重要ではない。
【0034】
図15はJPEG2000part1(以下JPEG2000)における圧縮符号化処理のブロック図である。ここでは入力画像データとしてRed,Green,Blue(以下R,G,B)の3コンポーネントからなる画像データを例にして説明する。
【0035】
入力されたRGB画像データは、タイリング処理部301にてタイルと呼ばれる矩形のブロック単位で入力される。ラスタ形式の画像データが入力された場合は、タイリング処理部301においてラスタ/ブロック変換を行う。JPEG2000においては、タイルを単位として独立して符号化、復号化が可能となっている。このことはハードウェアにより符号化、復号化を行う場合にハード量を削減できる効果があるとともに、必要なタイルのみ復号して表示することも可能となるなど、JPEG2000における多機能化の一翼を担っている。なお、JPEG2000ではタイリングはオプションであり、タイリングを行うのは任意となっているが、タイリングを行わない場合にはタイル数が1として扱われる。
【0036】
次に、画像データは色変換処理部302にて輝度/色差系の信号に変換される。JPEG2000では離散ウェーブレット変換(以下DWT)に使用するフィルタの種類(5x3と9x7の2通り)によって2通りの色変換が定められており、例えば可逆変換可能な5x3フィルタを使用する場合は、式(1)によって可逆の色変換を行う。
【0037】
Y=|_ (R+2G+B)/4 _|
U=R−G
V=B−G 式(1)
但し、|_x_|は、xを超えない最大の整数を表す。
【0038】
なお、上記の色変換に先立ち、RGB各々の信号毎に、信号のダイナミックレンジの半分を減じるDCレベルシフトが施される。例えば入力RGB信号が8bitの場合は、DCレベルシフトは式(2)にて表される。
【0039】
R’=R−128 式(2)。
【0040】
色変換後の信号に対し、DWT処理部303においてY,U,V各コンポーネント毎にDWT(離散ウェーブレット変換)が行われ、ウェーブレット係数が出力される。DWTは2次元にて行われるが、通常はリフティング演算と呼ばれる演算方法により1次元フィルタ演算のコンボリューションにて実施される。1次元の変換式を式(3)に示す。
【0041】
L(k)=x(2k)+(H(k)+H(k+1))/4
H(k)=x(2k-1)−(x(2k)+x(2k-2))/2 式(3)
但し、L(k)は低周波成分、H(k)は高周波成分、x(k)は画素値、kは座標を表す。なお、DWTはダウンサンプリングを伴うため、L(k)、H(k)は入力画像と比較して1/2の解像度となる。
【0042】
図16は、オクターブ分割されたウェーブレット係数を表す図である。DWTは、1デコンポジション(分解)レベル毎にLL,HL,LH,HHの4つのサブバンドと呼ばれる方向成分が出力され、LLに対してDWTを再帰的に行う事によってより低解像度へとデコンポジションレベルをあげていく。解像度の最も高いデコンポジションレベル1の係数を1HL,1LH,1HHと表し、以下2HL,2LH・・・nHHと表す。なお、図3は、3デコンポジションレベルに分割した例である。図3には解像度レベルも示されている。解像度レベルは、図3に見られるように、デコンポジションレベルとは逆方向に解像度の低い係数から0,1,2,3というように付けられる。
【0043】
各デコンポジションレベルにおけるサブバンド内は、プレシンクトと呼ばれる領域に分割して符号の集合を形成する事が可能となっている。また、符号化はコードブロックとよばれる所定のブロック単位にて実施される。図17は、タイル内ウェーブレット係数におけるタイル、プレシンクト、コードブロックの関係を示す図である。
【0044】
DWT処理部303から出力されたウェーブレット係数は、量子化部304によってサブバンド毎にスカラー量子化が行われるが、可逆変換を実施する場合にはスカラー量子化は行わないか“1”により量子化する。また、後段のポスト量子化においても、量子化とほぼ同様な効果が得られる。なお、スカラー量子化はタイル単位にパラメータを変更可能となっている。
【0045】
量子化処理部304から出力されたウェーブレット係数は、エントロピー符号化部305にてエントロピー符号化が行われる。JPEG2000におけるエントロピー符号化は、サブバンド内をコードブロックと呼ばれる矩形領域に分割し(但し、サブバンド領域のサイズがコードブロックサイズ以下の場合は分割しない。)、コードブロック単位で行われる。
【0046】
また、コードブロック内のウェーブレット係数は、図18に模式的に示すようにビットプレーンに分解された後、各ビットプレーンを変換係数の画質への影響度を表す状態に従って3つのパス(Significance propagationパス,Magnitude refinementパス,Clean upパス)に分割し、各々がMQコーダと呼ばれる算術符号化方式により符号化される。ビットプレーンはMSB側ほど、符号化パスはSignificance propagation、Magnitude
refinement、Clean upの順に、重要度(画質への寄与度)が高くなっている。また、各パスの終端は切り捨て点(トランケーションポイント)とも呼ばれ、後段のポスト量子化の際の符号の切り捨て可能な単位となっている。
【0047】
エントロピー符号化された符号データに対し、ポスト量子化部306にて必要に応じて符号の切り捨て(トランケーション)が行われ、これはポスト量子化と呼ばれる。なお、可逆の符号を出力する必要がある場合には、このポスト量子化は行われない。このような符号化後に符号の切り捨てにより符号量を制御することができ、符号量の制御にフィードバックを必要としない構成(1パスの符号化)となっており、これはJPEG2000の特徴の1つとなっている。
【0048】
ポスト量子化後の符号データについて、符号ストリーム生成処理部307で、所定のプログレッシブ順序(符号データの復号順序)に従った符号の並べ替えとヘッダの付加を行い当該タイル分の符号ストリームを形成する。
【0049】
図19は、JPEG2000におけるレイヤプログレッションによる符号ストリーム全体を表した図である。全体符号は、メインヘッダと画像を分割した複数のタイルで構成される。タイル符号は、タイルヘッダとタイル内符号をレイヤとよばれる符号単位(詳細は後述する)に区切った複数のレイヤにより構成されており、レイヤ0、レイヤ1・・・というように上位レイヤから順番に並んでいる。レイヤ符号の構成は、レイヤ用のタイルヘッダと複数のパケットにより構成されており、パケットはパケットヘッダと符号データから構成されている。
【0050】
パケットは、符号データの最小単位であり、1つのタイルコンポーネント内の1つの解像度レベル(デコンポジションレベル)における1つのプレシンクト内の1つのレイヤの符号データから成っている。
【0051】
次に、JPEG2000におけるプログレッシブ順序について説明する。JPEG2000では、画質(レイヤ(L))、解像度(R)、コンポーネント(C)、位置(プレシンクト(P))という4つの画像の要素の優先順位を変更することによって以下に示す5通りのプログレッションが定義されている。
【0052】
・LRCPプログレッション:プレシンクト、コンポーネント、解像度レベル、レイヤの順序に復号され、レイヤのインデックスが進む毎に画像全面の画質が改善されるため、画質のプログレッションを実現できる。レイヤプログレッションとも呼ばれる。
【0053】
・RLCPプログレッション:プレシンクト、コンポーネント、レイヤ、解像度レベルの順序に復号されるため、解像度のプログレッションを実現できる。
【0054】
・RPCLプログレッション:レイヤ、コンポーネント、プレシンクト、解像度レベルの順序に復号されるため、RLCP同様、解像度のプログレッションであるが、特定位置の優先度を高くすることができる。
【0055】
・PCRLプログレッション:レイヤ、解像度レベル、コンポーネント、プレシンクトの順序に復号されるため、特定部分の復号が優先されるようになり、空間位置のプログレッションを実現できる。
【0056】
・CPRLプログレッション:レイヤ、解像度レベル、プレシンクト、コンポーネントの順序に復号されるため、例えばカラー画像のプログレッシブ復号の際に最初にグレーの画像を再現するようなコンポーネントのプログレッションを実現できる。
【0057】
図20はLRCPプログレッション(以下レイヤプログレッション)のプログレッシブ順序を模式的に表した図であり、図21は、RLCPプログレッションまたはRPCLプログレッション(以下解像度プログレッション)のプログレッシブ順序を模式的に表した図である。
【0058】
図20及び図21において、横軸はデコンポジションレベルである(数字が高いほど低解像度)。また、縦軸はレイヤ番号である(数字が高いほど下位レイヤであり、上位レイヤに下位レイヤの符号を付加して復号することによってより高画質な再生が可能となる)。図中、塗りつぶされた長方形の図形は、当該デコンポジションレベル、レイヤにおける符号を表し、その大きさは符号量の割合を模式的に表している。図中の点線の矢印は、符号順序を表している。
【0059】
図20は、レイヤプログレッションに復号する符号順序を表しており、1つのレイヤの全ての解像度の符号の復号を行い、次にその下位のレイヤの符号について同様に復号するというような復号順序となる。ウェーブレット係数レベルでみれば、係数の上位bitから先に復号されることになるため、徐々に画質が向上する画質プログレッションが実現可能である。図21は、解像度プログレッションに復号する符号順序を表しており、1つのデコンポジション(解像度)レベルの全てのレイヤの復号を行い、次にそれより高解像度側のデコンポジションレベルの復号を行うという復号順序となる。したがって、徐々に解像度が向上する解像度プログレッションが実現可能である。
【0060】
以下、本発明の実施の形態について説明する。
【0061】
図1は本発明の実施の形態を説明するための簡略化されたブロック図である。ここに示す本発明に係る画像配信システムは、本発明に係るサーバ装置200と本発明に係るクライアント装置220とが外部転送路210を介して接続されたサーバ・クライアントシステムである。ここで、外部転送路210の「外部」はサーバ装置200やクライアント装置220の内部のデータ転送路と区別するための修飾語にすぎない。外部転送路210は具体的にはインターネットやLAN等である。
【0062】
本発明に係るサーバ装置200は、コマンドの受信・解析、画像データの符号データの送信といったサーバ装置としての基本的な処理機能を実現するサーバ処理手段201、画像データの符号データ(ここでは前述のようにJPEG2000の符号データ)を蓄積している符号データ記憶手段203に加え、蓄積されている画像データの複製の許可・不許可を管理するための管理情報を記憶している管理情報記憶手段204と、その管理情報を基にクライアント装置220側での符号データのキャッシュを制御するキャッシュ制御手段202を備える構成である。ただし、管理情報を蓄積されている画像データの符号データにフラグ情報等として付加しておくことも可能であり、この場合には独立した管理情報記憶手段204は不要である。かかる態様も本発明に包含される。
【0063】
なお、本発明における「キャッシュ」とは、前述のようにクライアント装置側で受信した符号データを再利用できるように一時的に(永久的ではなく)保存する動作を意味するもである。
【0064】
本発明に係るクライアント装置220は、コマンド送信、符号データの受信、受信した符号データの復号といったクライアント装置としての基本的な処理機能を実現するクライアント処理手段221に加え、キャッシュ機能を実現するキャッシュ機構を備える構成である。このキャッシュ機構は、受信した符号データの一時的保存(キャッシュ)のためのキャッシュ記憶手段223、キャッシュされた符号データに関する管理情報(キャッシュ管理情報)を保存するためのキャッシュ管理情報記憶手段224、及び、キャッシュ動作を制御するためのキャッシュ制御手段223から構成される。なお、クライアント装置220は、以上のようなクライアント機能に関連した構成に加えて各種の画像処理機能のための構成を備えたものであってもよい。換言すれば、クライアント装置220はクライアント機能を備える各種の画像処理装置であってもよい。
【0065】
図1に示したクライアント装置220は、例えば図2に示すような構成のパーソナルコンピュータ(PC)等のコンピュータ上でプログラムによって実現される。すなわち、プログラムにより、コンピュータを図1に示した要素221,222,223,224として機能させる。このようなプログラムと、それが記録されたコンピュータが読み取り可能な情報記録媒体も本発明に包含される。
【0066】
図2において、101はプログラムに従って演算や処理を実行するCPU、102はプログラムのコードや画像の符号データ等のデータを一時的に記憶するために使用される揮発性のメモリ、103はデータやプログラム等を保存するためのハードディスク(以下HDD)、104はモニタ230への表示データを記憶するためのビデオメモリである。ビデオメモリ104に書き込まれた画像データは定期的にモニタ204へ表示される。105はインターネットやLAN等の外部転送路210を介してデータを送受信する外部インターフェース、106は上記各構成要素を接続するバスである。通常、マウスやキーボード等の入力デバイスも存在するが図中省略されている。クライアント装置220のキャッシュ記憶手段223及びキャッシュ管理情報記憶手段224としてHDD103が用いられる。クライアント処理手段221やキャッシュ制御手段222の作業用記憶域としてはメモリ102が利用される。クライアント処理手段221やキャッシュ機構としてコンピュータを機能させるためのプログラムは、HDD103に保存されており、それらは必要に応じてメモリ102にロードされCPU101により実行される。
【0067】
図示しないが、サーバ装置200も同様にワークステーション等のコンピュータを用いてプログラムにより実現される。プログラムにより、ワークステーション等のコンピュータはサーバ処理手段201、キャッシュ制御手段202等として機能させられ、それらの作業用記憶域としてはコンピュータのメモリが利用される。符号データ記憶手段203や管理情報記憶手段204として、例えばコンピュータのHDDが利用される。このようなプログラムと、それが記録されたコンピュータが読み取り可能な情報記録媒体も本発明に包含される。
【0068】
図1には、サーバ装置200とクライアント装置220の間の画像配信時のデータの流れが模式的に示されている。画像配信の動作の概略は次の通りである。最初にクライアント装置220から画像送信要求がサーバ装置200へ送信される。サーバ装置201は画像送信要求を受信すると、管理情報記憶手段204に記憶されている画像の管理情報を基にキャッシュ制御情報を生成し、それをクライアント装置220へ送信する。次にサーバ装置200は、符号データ記憶手段203に蓄積されている、要求された画像データの符号データを送信する。クライアント装置220は受信した符号データをプログレッシブに復号しながら画像をモニタ装置220にプログレッシブに表示させる。なお、一般的にモニタ等の表示装置にてプログレッシブ表示と言えばノンインタレース表示のことを差すが、ここでのプログレッシブ表示は上に述べたような画質や解像度を徐々に向上させるような表示方法を意味する。また、クライアント装置220のキャッシュ制御手段222は、クライアント装置200より受信したキャッシュ制御情報に基づいて、受信した符号データのキャッシュの制御を行うが、その詳細は後述する。
【0069】
以下、画像配信に関する動作をより詳細に説明する。図3は画像配信時のクライアント装置220とサーバ装置200の動作を説明するためのフローチャートである。なお、画像配信においては、要求(リクエスト)に対し承認(アクノレッジ)を返すハンドシェークの手順をとるのが一般的であるが、説明の簡略化のためアクノレッジの送信を省略する。
【0070】
クライアント装置220側で、ユーザが図示しない入力デバイスを使用し、サーバ装置200に蓄積されている特定の画像データの符号データを受信してを表示するためのアクションを行うことにより、画像配信動作がスタートする。
【0071】
ステップS101:クライアント装置220において、上記アクションによりクライアント処理手段221より受信したい画像データの識別情報がキャッシュ制御手段222に渡される。過去に受信された画像データの符号データが、その一部でもキャッシュされているならば、その画像データの識別情報と関連付けられて、その符号データの記憶アドレス情報及びキャッシュ管理情報がキャッシュ管理情報記憶手段224に記憶されている。キャッシュ制御手段222は、クライアント処理手段221より渡された画像データの識別情報と、キャッシュ管理情報記憶手段224に記憶されている画像データの識別情報を比較し、一致がとれたならば受信しようとする画像データの符号データがキャッシュされていると判断し、一致がとれないならばキャッシュされていないと判断する。キャッシュされていないと判断した場合には、ステップS102,S103はスキップされる。
【0072】
ステップS102:キャッシュ制御手段222は、受信したい画像データに関するキャッシュ管理情報と、その符号データの記憶アドレス情報をキャッシュ管理情報記憶手段224からコンピュータのメモリに読み込む。キャッシュ管理情報は、画像データの符号データのどの部分がキャッシュされ、どの部分がキャッシュされていないかを把握するためのものであるが、その具体的内容については後述する。
【0073】
ステップS103:キャッシュ制御手段222は、メモリに読み込んだアドレス情報を基に、キャッシュ記憶手段223にキャッシュされている当該画像データの符号データをコンピュータのメモリに読み込む。
【0074】
ステップS104:キャッシュ制御手段222は、メモリに読み込んだキャッシュ管理情報に基づいて、当該画像データのキャッシュされていない符号データの部分、つまりサーバ装置側から受信する必要がある符号データの部分を指示するための情報(符号情報)を生成する。当該画像データの符号データが全くキャッシュされていない場合(そのキャッシュ管理情報は読み込まれていない)、当該画像データの符号データの全部を指示する符号情報を生成する。
【0075】
ステップS105,S201:クライアント装置220のクライアント処理手段221はステップS104で生成された符号情報とともに当該画像データの送信要求をサーバ装置200へ送信し、これをサーバ装置200のサーバ処理手段201が受信する。サーバ処理手段201は、当該画像データの識別情報をキャッシュ制御手段202に渡す。
【0076】
ステップS202:サーバ装置200において、管理情報記憶手段204には、蓄積されている画像データの識別情報に関連付けられて、その複製の許可・禁止を示す管理情報が記憶されている。キャッシュ制御手段202は、サーバ処理手段201より渡された画像データの識別情報に関連付けられた管理情報を管理情報記憶手段204よりコンピュータのメモリに読み込む。
【0077】
ステップS203:キャッシュ制御手段202は、メモリに読み出した管理情報により当該画像データの複製が禁止されているか否かを判定する。
【0078】
ステップS204:キャッシュ制御手段202は、当該画像データの複製が禁止されている場合には(ステップS203,Yes)、その符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成する。
【0079】
ステップS205:キャッシュ制御手段202は、当該画像データの複製が許可されている場合には(ステップS203,No)、その符号データのどの部分符号もキャッシュの禁止を指定しないキャッシュ制御情報を生成する。
【0080】
なお、ステップS203,S204で生成されるキャッシュ制御情報は、クライアント装置側へ送信する符号データの所定の分割単位による部分符号毎にキャッシュの許可・不許可を指定する情報であり、その具体例は後述する。
【0081】
ステップS206,S105:サーバ処理手段201はステップS205で生成されたキャッシュ制御情報を送信し、これをクライアント装置220のクライアント処理手段221が受信する。
【0082】
ステップS207,S107:サーバ装置200のサーバ処理手段201は、送信要求された画像データの符号データを符号データ記憶手段203より読み込み、その符号データの、クライアント装置220より受信した符号情報で指定された部分のみからなる符号データを編集して送信し、これをクライアント装置220のクライアント処理手段221が受信する。
【0083】
当該画像データの符号データがまったくキャッシュされていない場合には、その符号データの全体が送信される。ただし、符号データの「全体」は、必ずしも符号データ記憶手段203に記憶されている符号データの全部とは限らず、例えばクライアント装置側で所望の解像度・画質・領域・コンポーネントの画像復元のために必要な全ての符号データである。当該画像データの符号データの一部がキャッシュ済みの場合には、その符号データの未キャッシュ部分のみが送信される。いずれにしてもクライアント装置220のメモリに、当該画像データの画像復元に必要な符号データが得られる。
【0084】
ステップS108:クライアント処理手段221は、メモリに得られた当該画像データの符号データの復号処理を行い、復元された画像データをビデオメモリに書き込むことによりモニタ230に表示させる。なお、モニタ230の表示サイズと画像サイズの関係から必要な場合には、画像データの拡大/縮小処理をクライアント処理手段221で行う。
【0085】
ステップS109:キャッシュ制御手段222は、メモリ上の符号データ(今回受信された符号データのみ、又は、キャッシュ済み符号データと今回受信された符号データ)より、キャッシュ制御情報によりキャッシュの禁止が指示された部分符号を削除する。これは、キャッシュ禁止が指示された部分符号をキャッシュの対象から除外するためである。
【0086】
ステップS110:キャッシュ制御手段222は、前ステップで削除されずに残ったメモリ上の符号データによりキャッシュ記憶手段223の内容を書き換える。これで、当該符号データのキャッシュ禁止の部分符号を除外したキャッシュが実行されたことになる。
【0087】
ステップS111:キャッシュ制御手段222は、サーバ装置200から受信したキャッシュ制御情報と、ステップS102でキャッシュ管理情報記憶手段224よりメモリに読み出したキャッシュ管理情報を照らし合わせ、必要な場合はメモリ上のキャッシュ管理情報を更新し、更新後のキャッシュ管理情報でキャッシュ管理情報記憶手段224の内容を書き換える。この際、必要に応じて当該画像データの符号データの記憶アドレス情報も書き換える。
【0088】
なお、キャッシュ制御情報を符号データの送信に先だって送信したが、符号データの後にキャッシュ制御情報を送信する形態をとることもできる。また、キャッシュ制御情報を符号データと一体化した形で転送する形態をとることも可能である。このような変形形態も本発明に包含される。
【0089】
また、図3には示されていないが、受信したい画像データの符号データの全体がキャッシュされている場合には、クライアント装置220はサーバ装置200への画像送信要求は行わず、キャッシュ記憶手段223からその符号データをメモリに読み出し、それを復号処理して表示を行う。ここで、符号データの「全体」とは、必ずしもサーバ装置側に蓄積されている当該画像データの符号データの全部とは限らず、所望の解像度・画質・領域・コンポーネントの画像表示のために必要とされる符号データの全てを意味する。
【0090】
以下、キャッシュ制御の具体例を説明する。
【0091】
<キャッシュ制御例1> ここでは、JPEG2000のRLCPプログレッションの符号データに対するキャッシュ制御の例を説明する。
【0092】
図4は、JPEG2000のRLCPプログレッションの符号データの一例を示す模式図である。ただし、この符号データは3コンポーネントのカラー画像データを、デコンポジションレベル数2、レイヤ数2で符号化したものである。
【0093】
このようなJPEG2000の符号データはパケット単位に分割して扱う事が可能であり、サーバ装置200からの符号データの送信はパケット番号順に行われるが、前述したように、RLCPプログレッションの場合は低解像度側のパケットから順次送信される。
【0094】
図4の符号データに対応したキャッシュ制御情報及びキャッシュ管理情報の一例を図5に示す。キャッシュ制御情報とパケット管理情報は性質的に同じものなので、ここでは両者は同一のものとして扱う。また、ここではキャッシュ制御をパケット単位で行うものとして記載しているが、キャッシュ制御の単位をもっと大きな符号の分割単位であるレイヤ、サブバンド、解像度レベル等とすることもできる。但し、キャッシュ制御の単位をパケットとするのが、最も詳細なキャッシュ制御が可能となり、キャッシュを許可する符号量も増やす事が出来るため一般に好適である。
【0095】
図5において、OFFはキャッシュの禁止の指示であり、ONはキャッシュの許可の指示である。この例では、パケット番号0〜5のパケットにいてキャッシュの禁止が指示されている。すなわち、解像度レベル0(いわゆるLL成分)の部分符号を全てキャッシュ禁止としている。
【0096】
図6は、ある画像を3デコンポジションレベルに符号化した場合の、各サブバンド毎の復号画像を示したものである。同図は、図16のウェーブレット係数と対応している。ここで画像データを再現する場合に最も重要度が高いのは画像の原形を把握する事の可能なLL成分であり、その他の成分に関しては、画像の概要がうっすらと見える程度であり、LL成分以外の成分のみで画像を復元することは不可能である。
【0097】
したがって、複製が禁止された画像データの符号データであっても、本例に示すようにLL成分のパケットのキャッシュを禁止するならば、クライアント装置側でキャッシュされた符号データから画像を復元(複製)することは困難であり、複製禁止の目的が達成される。そして、クライアント装置側で当該画像を再度復元したい場合には、LL成分の符号のみ受信すれば足りるため、符号データの全てをキャッシュ禁止とした場合(符号データ全体を再度受信する必要がある)に比べ、ネットワークのトラフィックが大きく軽減されるという効果がある。
【0098】
なお、クライアント装置側でモニタ230の表示サイズや解像度等の関係から、例えば図4の符号データの解像度レベル1までの符号のみを必要とするような場合には、解像度レベル2のパケットは送信する必要はない。同様に、クライアント装置側で画像のモノクロ表示を望む場合には、コンポーネント1,2のパケットは送信する必要がない。このことは以下に述べる他のキャッシュ制御例にあっても同様である。
【0099】
<キャッシュ制御例2> ここでは、JPEG2000のLRCPプログレッションの符号データに対するキャッシュ制御の例を説明する。
【0100】
図7は、JPEG2000のLRCPプログレッションの符号データの一例を示す模式図である。ただし、この符号データは、3コンポーネントのカラー画像データを、デコンポジションレベル数2、レイヤ数2として符号化したものである。
【0101】
このような符号データはパケット単位に分割して扱うことがて可能であり、サーバ装置200からの符号データの送信はパケット番号順に行われるが、前述したように、LRCPプログレッションの場合は最上位レイヤ(レイヤ0)のパケットから順次送信が行われることになる。
【0102】
図7の符号データに対応したキャッシュ制御情報及びキャッシュ管理情報の一例を図8に示す。この例では、パケット単位でキャッシュ制御が行われ、パケット番号0〜17のパケットのキャッシュの禁止が指示されている。すなわち、レイヤ0のパケット全てがキャッシュ禁止とされている。
【0103】
図9に、デコンポジションレベル数を2,プリシンクトサイズ=サブバンドサイズとしたときのレイヤーと、それに含まれるパケットの例を示す。パケットはプリシンクトを単位とするものであるから、プリシンクト=サブバンドとした場合、パケットはHL〜HHサブバンドをまたいだものとなる。なお、図9には一部のパケットのみ示されている。
【0104】
上位のレイヤ(レイヤ番号が若いレイヤ)は、ウェーブレット係数の上位ビット側の符号からなるため、上位レイヤのパケットほど画像への重要度は高くなる。したがって、本例のように上位レイヤ(上位ビット側)のパケットのキャッシュを禁止することにより、クライアント装置側ではキャッシュされている符号データからの画像の復元(複製)が困難となり、複製禁止の目的が達成される。
【0105】
なお、レイヤ0のパケットを全てキャッシュ禁止とすると、キャッシュ禁止パケット数が増加し、クライアント装置側で画像を再度復元する時にサーバ装置より再度受信しなければならない符号量が増える懸念がある。この場合には、前記キャッシュ制御例1と同様に、図7の符号データのパケット番号0〜2までのパケットのみキャッシュを禁止するようにしてもよい。つまり、レイヤ0のLL成分のパケットのみキャッシュを禁止する。このようにすると、画像の再現は困難となるので複製防止の目的を達成することができ、かつ、クライアント装置側で再度受信する必要がある符号量が大幅に減少する。
【0106】
<キャッシュ制御例3> ここでは、コンポーネント毎のキャッシュ制御の例を説明する。
【0107】
ここでも、図4に示したRLCPプログレッションの符号データを扱うものとし、キャッシュ制御情報及びキャッシュ管理情報の一例を図10に示す。キャッシュ制御の単位はパケットである。
【0108】
本例では、パケット番号0,3、6、9、12〜15、24〜27のパケットのキャッシュが禁止される。すなわち、コンポーネント0(輝度成分Y)の全てのパケットのキャッシュが禁止される。
【0109】
カラー画像の場合、1つの輝度成分と2つの色差成分に分離されるが、画像の形状を最もよく表すのは輝度成分であるため、本例のように輝度成分の符号をキャッシュ禁止とすることによって、クライアント装置側ではキャッシュされた符号データからの画像の復元(複製)が困難となり、複製防止の目的を達成することができる。
【0110】
なお、本例のように輝度成分のパケットを全てキャッシュ禁止とすると、非常に多くのキャッシュ禁止パケットが発生し、クライアント装置側で再度画像を復元する時にサーバ装置より受信しなければならない符号量が増える懸念がある場合には、前記キャッシュ制御例1と同様に、図4の符号データのパケット番号0のパケットのみキャッシュを禁止するようにしてもよい。つまり、コンポーネント0(輝度)のLL成分のパケットのみキャッシュ禁止とするわけである。このようなキャッシュ制御を行えば、通常、キャッシュされた符号データだけでは画像の再現は困難となるので、複製防止の目的を達成することができ、しかも、クライアント装置が画像を再度復元しようとする時にサーバ装置よりコンポーネント0のLL成分のパケットのみ再度受信するだけでよく受信符号量は大幅に減少する。
【0111】
<キャッシュ制御例4> ここでは、タイルやプレシンクト等の画像の位置(部分領域)との関連性の大きなパラメータによってキャッシュ制御を行う例を説明する。
【0112】
図11は、ある画像のタイル分割例を示す模式図である。図中の番号は便宜上のタイル番号を表している。JPEG2000においては、符号データをタイル毎に分割可能であり、タイル単位での符号化・復号化が可能である。
【0113】
このような16個のタイルに分割される場合におけるキャッシュ制御情報及びキャッシュ管理情報の一例を図12に示す。キャッシュ制御の単位はタイルであるため、前述したパケット単位のキャッシュ制御に比べると制御が簡単になるという利点を有する。なお、キャッシュ制御情報をパケット単位で構成してもよいことは当然である。
【0114】
本例では、タイル番号5,6,9,10のタイルのパケットのキャッシュが禁止される。これらタイルは、画像の中央部、すなわち図11に示す画像中の女性の顔の部分に対応する。したがって、クライアント装置においてキャッシュされた符号データのみを復号して再現される画像は図13に示すような画像となり、実質的に複製の目的を達成することができる。
【0115】
なお、本例では画像の中央部分のタイルについてキャッシュを禁止するような制御となるが、これは一例にすぎず、画像の重要な情報が存在する部分についてキャッシュを禁止するように制御すればよい。画像の重要な情報が存在する部分は、例えば、人物が写った画像であれば顔の部分、絵文字混在の画像であれば文字部、というように個々の画像毎に選べばよい。この決定をサーバ装置で自動的に行うようにすることもできる。その簡易な方法としては、符号量の大きなタイルを重要な部分として認識する方法がある。
【0116】
また、JPEG2000ではROI(Regeon of Interrest)と呼ばれる、特定の部分領域を高画質化する処理が許されている。具体的には、ROI領域について、Max
Shiftと呼ばれる手法によって、他の部分よりも符号化の優先度を向上させる。ROI領域が含まれるタイルは最も重要な領域という事は明白であるので、そのタイルをキャッシュ禁止タイルに選ぶことができる。かかる態様も本発明に包含される。
【0117】
JPEG2000の符号データでは、タイルに代えてプレシンクトを単位として同様なキャッシュ制御を行う事も可能である。各パケットはプレシンクトを超えられない決まりがあるので、プレシンクト単位のキャッシュ制御は前記キャッシュ制御例1〜3と同様なパケット単位のキャッシュ制御情報を用いることによって行うことができる。かかる態様も本発明に包含される。
【0118】
なお、プレシンクトの位置関係は図17を参照されたい。プレシンクトの大きさは各サブバンドで独立に設定でき、キャッシュ制御もサブバンド別に独立に行うことができる。プレシンクト単位のキャッシュ制御は、LL成分の一部のプレシンクトのみをキャッシュ禁止の対象とするのが最も効率が良く、かかる態様も本発明に包含される。
【0119】
また、このような特定の部分領域の符号のキャッシュ禁止は、特定のコンポーネント(実際的には輝度コンポーネント)のみを対象に行ってもよい。かかる態様も本発明に包含される。
【0120】
以上の説明においては、クライアント装置220側で必要な符号データとそのキャッシュ制御情報を一括してサーバ装置200から送信したが、1パケット単位で順次に符号データとキャッシュ制御情報を送信するようにしてもよい。このような配信方法をとる場合のクライアント装置側のフローチャートを図14に示す。
【0121】
図14中のステップS120〜S122が、図3に示したフローチャートと異なる部分である。すなわち、ステップS120で、クライアント処理手段221は、ステップS104で生成された符号情報に基づき受信が必要なパケットを1つ選択し、そのパケットの送信要求を行う。次のステップS121で、クライアント処理手段221は、サーバ装置200より当該パケットと、それに関するキャッシュ制御情報を受信する。クライアント処理手段221は、ステップS122で必要なパケットを全て受信したと判断するまで、1パケット単位で必要なパケットとそのキャッシュ制御情報の受信を繰り返す。
【0122】
このように最小の部分符号である1パケット単位で符号データとキャッシュ制御情報を転送する方法によれば、クライアント装置220によりサーバ装置200が占有される時間が最短となるため、サーバ装置200が複数クライアント装置から画像送信要求を受けた場合等にサーバ装置200の処理負荷が軽減される利点がある。また、データサイズの小さなパケット単位で通信セッションが切れるため、エラー発生時の復帰が早くなる、送信要求のキャンセルへの対応が早くなる等、ユーザビリティが向上する利点もある。
【0123】
ただし、このような1パケット単位の送信方法はオーバーヘッドが増加するため、送信符号量が多い場合には、符号データ及びキャッシュ制御情報を一括して送信する方法の方が全体の通信時間が短くなるという利点がある。
【0124】
以上、画像配信システムと、それを構成するクライアント装置及びサーバ装置に関して本発明の実施の形態を説明したが、以上の説明は本発明のキャッシュ制御方法の説明でもあることは明らかである。
【図面の簡単な説明】
【0125】
【図1】本発明の実施の形態を説明するためのブロック図である。
【図2】クライアント装置をプログラムにより実現するためのコンピュータの構成例を示すブロック図である。
【図3】画像配信動作を説明するためのフローチャートである。
【図4】RLCPプログレッションの符号データの例を示す模式図である。
【図5】キャッシュ制御情報及びキャッシュ管理情報の一例を示す図である。
【図6】サブバンド毎の復号画像の説明図である。
【図7】LRCPプログレッションの符号データの例を示す模式図である。
【図8】キャッシュ制御情報及びキャッシュ管理情報の一例を示す図である。
【図9】レイヤ構造の一例を示す図である。
【図10】キャッシュ制御情報及びキャッシュ管理情報の一例を示す図である。
【図11】画像のタイル分割の一例を示す図である。
【図12】キャッシュ制御情報及びキャッシュ管理情報の一例を示す図である。
【図13】図12に示すキャッシュ制御情報に従ってキャッシュされた符号データから復元される画像を示す図である。
【図14】パケット単位での符号データ及びキャッシュ制御情報の送信を行う場合のクライアント装置の動作を説明するためのフローチャートである。
【図15】JPEG2000の符号化処理を説明するためのブロック図である。
【図16】3デコンポジションレベルのサブバンド分割の説明図である。
【図17】タイル、プレシンクト、コードブロックの関係を示す模式図である。
【図18】ビットプレーンとサブビットプレーンの関係を示す模式図である。
【図19】レイヤプログレッションの符号データの構成を示す模式図である。
【図20】レイヤプログレッションの符号順序を示す模式図である。
【図21】解像度プログレッションの符号順序を示す模式図である。
【符号の説明】
【0126】
200 サーバ装置
201 サーバ処理手段
202 キャッシュ制御手段
203 符号データ記憶手段
204 管理情報記憶手段
210 外部転送路
220 クライアント装置
221 クライアント処理手段
222 キャッシュ制御手段
223 キャッシュ記憶手段
224 キャッシュ管理情報記憶手段
【特許請求の範囲】
【請求項1】
サーバ装置とクライアント装置とからなり、前記サーバ装置に蓄積されている、所定の分割単位により部分符号に分割可能な画像データの符号データを、前記クライアント装置からの要求に応じて前記サーバ装置より前記クライアント装置へ送信する画像配信システムであって、
前記クライアント装置は前記サーバ装置より受信した符号データのキャッシュを実行するキャッシュ機構を備え、
前記サーバ装置は、前記クライアント装置へ送信する符号データが複製の禁止された画像データの符号データである場合に、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成する手段を有し、当該手段により生成された前記キャッシュ制御情報を前記クライアント装置へ送信し、
前記クライアント装置の前記キャッシュ機構は、前記サーバ装置より受信した符号データについて、当該符号データに関し前記サーバ装置より受信した前記キャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行する、
ことを特徴とする画像配信システム。
【請求項2】
複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、当該符号データから画像データを再現する場合に重要度の高い部分符号のキャッシュの禁止が指示されることを特徴とする請求項1記載の画像配信システム。
【請求項3】
画像データの符号データは解像度プログレッシブに階層符号化された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、低解像度成分の部分符号のキャッシュの禁止が指示されることを特徴とする請求項2記載の画像配信システム。
【請求項4】
画像データの符号データはビットプレーンに分割符号化された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、上位ビットプレーンの部分符号のキャッシュの禁止が指示されることを特徴とする請求項2記載の画像配信システム。
【請求項5】
画像データの符号データは画質プログレッシブにレイヤ分割された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、上位レイヤの部分符号のキャッシュの禁止が指示されることを特徴とする請求項2記載の画像配信システム。
【請求項6】
画像データの符号データは画像の部分領域に分割して符号された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、一部の部分領域に対応した部分符号のキャッシュの禁止が指示されることを特徴とする請求項2記載の画像配信システム。
【請求項7】
画像データの符号データは画像の一部の領域が高画質化された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、高画質化された領域の部分符号のキャッシュの禁止が指示されることを特徴とする請求項2記載の画像配信システム。
【請求項8】
画像データの符号データは複数のコンポーネントからなり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報によりキャッシュの禁止が指示される部分符号は特定のコンポーネントの部分符号であること特徴とする請求項2乃至7のいずれか1項記載の画像配信システム。
【請求項9】
前記特定のコンポーネントは輝度コンポーネントであることを特徴とする請求項8記載の画像配信システム。
【請求項10】
画像データの符号データはJPEG2000により符号化された符号データであることを特徴とする請求項1乃至9のいずれか1項記載の画像配信システム。
【請求項11】
クライアント装置からの要求に応じて、所定の分割単位により部分符号に分割可能な画像データの符号データを前記クライアント装置へ送信するサーバ装置であって、
前記クライアント装置へ送信する符号データが複製の禁止された画像データの符号データである場合には、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成する手段を有し、当該手段により生成された前記キャッシュ制御情報を前記クライアント装置へ送信することを特徴とするサーバ装置。
【請求項12】
サーバ装置より、所定の分割単位により部分符号に分割可能な画像データの符号データを受信し、その復号処理を行うクライアント装置であって、
受信した符号データのキャッシュを実行するキャッシュ機構を有し、
前記キャッシュ機構は、前記サーバ装置により受信した符号データについて、当該符号データに関し前記サーバ装置より受信したキャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行する、
ことを特徴とするクライアント装置。
【請求項13】
サーバ装置とクライアント装置とからなり、前記サーバ装置に蓄積されている、所定の分割単位により部分符号に分割可能な画像データの符号データを、前記クライアント装置からの要求に応じて前記サーバ装置より前記クライアント装置へ送信する画像配信システムにおいて、
前記サーバ装置は、前記クライアント装置へ送信する符号データが複製の禁止された画像データの符号データである場合には、前記クライアント装置に対し、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を送信し、
前記クライアント装置は、前記サーバ装置より受信した符号データについて、当該符号データに関し前記サーバ装置より受信した前記キャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行する、ことを特徴とするキャッシュ制御方法。
【請求項14】
所定の分割単位により部分符号に分割可能な画像データの符号データを記憶している符号データ記憶手段、
クライアント装置からの要求に応じて、前記符号データ記憶手段に記憶されている画像データの符号データを前記クライアント装置へ送信するサーバ処理手段、
前記クライアント装置へ送信される符号データが複製の禁止された画像データの符号データである場合に、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成し、それを前記サーバ処理手段により前記クライアント装置へ送信させるキャッシュ制御手段としてコンピュータを機能させるプログラム。
【請求項15】
サーバ装置へ画像送信要求を送信し、これに応じて前記サーバ装置より送信される所定の分割単位により部分符号に分割可能な画像データの符号データ及び当該符号データに関するキャッシュ制御情報を受信し、受信した符号データの復号処理を行うクライアント処理手段、
前記クライアント処理手段により受信した符号データについて、当該符号データに関し前記クライアント処理手段により受信したキャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行するキャッシュ機構としてコンピュータを機能させるプログラム。
【請求項16】
請求項14又は15記載のプログラムが記録された、コンピュータが読み取り可能な情報記録媒体。
【請求項1】
サーバ装置とクライアント装置とからなり、前記サーバ装置に蓄積されている、所定の分割単位により部分符号に分割可能な画像データの符号データを、前記クライアント装置からの要求に応じて前記サーバ装置より前記クライアント装置へ送信する画像配信システムであって、
前記クライアント装置は前記サーバ装置より受信した符号データのキャッシュを実行するキャッシュ機構を備え、
前記サーバ装置は、前記クライアント装置へ送信する符号データが複製の禁止された画像データの符号データである場合に、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成する手段を有し、当該手段により生成された前記キャッシュ制御情報を前記クライアント装置へ送信し、
前記クライアント装置の前記キャッシュ機構は、前記サーバ装置より受信した符号データについて、当該符号データに関し前記サーバ装置より受信した前記キャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行する、
ことを特徴とする画像配信システム。
【請求項2】
複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、当該符号データから画像データを再現する場合に重要度の高い部分符号のキャッシュの禁止が指示されることを特徴とする請求項1記載の画像配信システム。
【請求項3】
画像データの符号データは解像度プログレッシブに階層符号化された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、低解像度成分の部分符号のキャッシュの禁止が指示されることを特徴とする請求項2記載の画像配信システム。
【請求項4】
画像データの符号データはビットプレーンに分割符号化された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、上位ビットプレーンの部分符号のキャッシュの禁止が指示されることを特徴とする請求項2記載の画像配信システム。
【請求項5】
画像データの符号データは画質プログレッシブにレイヤ分割された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、上位レイヤの部分符号のキャッシュの禁止が指示されることを特徴とする請求項2記載の画像配信システム。
【請求項6】
画像データの符号データは画像の部分領域に分割して符号された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、一部の部分領域に対応した部分符号のキャッシュの禁止が指示されることを特徴とする請求項2記載の画像配信システム。
【請求項7】
画像データの符号データは画像の一部の領域が高画質化された符号データであり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報により、高画質化された領域の部分符号のキャッシュの禁止が指示されることを特徴とする請求項2記載の画像配信システム。
【請求項8】
画像データの符号データは複数のコンポーネントからなり、複製の禁止された画像データの符号データについて、前記キャッシュ制御情報によりキャッシュの禁止が指示される部分符号は特定のコンポーネントの部分符号であること特徴とする請求項2乃至7のいずれか1項記載の画像配信システム。
【請求項9】
前記特定のコンポーネントは輝度コンポーネントであることを特徴とする請求項8記載の画像配信システム。
【請求項10】
画像データの符号データはJPEG2000により符号化された符号データであることを特徴とする請求項1乃至9のいずれか1項記載の画像配信システム。
【請求項11】
クライアント装置からの要求に応じて、所定の分割単位により部分符号に分割可能な画像データの符号データを前記クライアント装置へ送信するサーバ装置であって、
前記クライアント装置へ送信する符号データが複製の禁止された画像データの符号データである場合には、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成する手段を有し、当該手段により生成された前記キャッシュ制御情報を前記クライアント装置へ送信することを特徴とするサーバ装置。
【請求項12】
サーバ装置より、所定の分割単位により部分符号に分割可能な画像データの符号データを受信し、その復号処理を行うクライアント装置であって、
受信した符号データのキャッシュを実行するキャッシュ機構を有し、
前記キャッシュ機構は、前記サーバ装置により受信した符号データについて、当該符号データに関し前記サーバ装置より受信したキャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行する、
ことを特徴とするクライアント装置。
【請求項13】
サーバ装置とクライアント装置とからなり、前記サーバ装置に蓄積されている、所定の分割単位により部分符号に分割可能な画像データの符号データを、前記クライアント装置からの要求に応じて前記サーバ装置より前記クライアント装置へ送信する画像配信システムにおいて、
前記サーバ装置は、前記クライアント装置へ送信する符号データが複製の禁止された画像データの符号データである場合には、前記クライアント装置に対し、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を送信し、
前記クライアント装置は、前記サーバ装置より受信した符号データについて、当該符号データに関し前記サーバ装置より受信した前記キャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行する、ことを特徴とするキャッシュ制御方法。
【請求項14】
所定の分割単位により部分符号に分割可能な画像データの符号データを記憶している符号データ記憶手段、
クライアント装置からの要求に応じて、前記符号データ記憶手段に記憶されている画像データの符号データを前記クライアント装置へ送信するサーバ処理手段、
前記クライアント装置へ送信される符号データが複製の禁止された画像データの符号データである場合に、当該符号データの一部の部分符号のキャッシュの禁止を指示するキャッシュ制御情報を生成し、それを前記サーバ処理手段により前記クライアント装置へ送信させるキャッシュ制御手段としてコンピュータを機能させるプログラム。
【請求項15】
サーバ装置へ画像送信要求を送信し、これに応じて前記サーバ装置より送信される所定の分割単位により部分符号に分割可能な画像データの符号データ及び当該符号データに関するキャッシュ制御情報を受信し、受信した符号データの復号処理を行うクライアント処理手段、
前記クライアント処理手段により受信した符号データについて、当該符号データに関し前記クライアント処理手段により受信したキャッシュ制御情報によりキャッシュの禁止が指示された部分符号を除外してキャッシュを実行するキャッシュ機構としてコンピュータを機能させるプログラム。
【請求項16】
請求項14又は15記載のプログラムが記録された、コンピュータが読み取り可能な情報記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【公開番号】特開2006−166046(P2006−166046A)
【公開日】平成18年6月22日(2006.6.22)
【国際特許分類】
【出願番号】特願2004−354847(P2004−354847)
【出願日】平成16年12月8日(2004.12.8)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
【公開日】平成18年6月22日(2006.6.22)
【国際特許分類】
【出願日】平成16年12月8日(2004.12.8)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
[ Back to top ]