"バーチャル顕微鏡スライドを閲覧するためのサーバシステムであって、バーチャルスライド画像ファイル、認証情報、および注釈データを含んでいるデータ記憶領域と、バーチャルスライド要求を受信し、要求の種類を特定し、処理のために該要求を案内し、応答を提供するように構成された接続モジュールと、バーチャルスライド要求を受信し、前記データ記憶領域からバーチャルスライドデータを取り出し、応答としてバーチャルスライドデータを提供するように構成されたバーチャルスライドモジュールと、を有しているサーバシステム。前記バーチャルスライド要求が、ユーザ認証情報を含んでおり、前記接続モジュールが、該バーチャルスライド要求内のユーザ認証情報を検証するため、前記データ記憶領域の認証情報にアクセスするように構成されている請求項1に記載のシステム。前記バーチャルスライド要求が、バーチャルスライド画像データの要求を含んでいる請求項1に記載のシステム。前記バーチャルスライド要求が、バーチャルスライドに関連する情報の要求を含んでいる請求項1に記載のシステム。前記接続モジュールから注釈データを受信して、前記データ記憶領域に注釈データを保存するよう構成された注釈モジュールをさらに有している請求項1に記載のシステム。前記バーチャルスライド要求が、注釈データの要求を含んでいる請求項5に記載のシステム。さらに前記バーチャルスライドモジュールが、前記データ記憶領域からのバーチャルスライドデータを一時的に保存するように構成されたキャッシュと、バーチャルスライド画像データを圧縮および解凍するように構成されたコーデック、とを有している請求項1に記載のシステム。さらに前記キャッシュが、最近に閲覧したバーチャルスライド画像の個別的な部位であって、前記データ記憶領域内のバーチャルスライド画像の対応する部位と事実上同じフォーマットで前記個別的な部位を保存するように構成されたブロックキャッシュと、最近にアクセスしたバーチャルスライド情報を保存するように構成されたファイル情報キャッシュと、最近に閲覧したバーチャルスライド画像の個別的なサブ領域を保存するように構成され、前記コーデックに通信可能に接続されているサブ領域キャッシュと、を有している請求項7に記載のシステム。前記個別的なサブ領域が、前記データ記憶領域内のバーチャルスライド画像のフォーマットと異なるフォーマットに変換されている請求項8に記載のシステム。前記キャッシュが、最近に認証されたユーザに関する情報を保存するように構成された認証キャッシュをさらに有している請求項7に記載のシステム。当該サーバシステムに通信リンクを介して通信可能に接続されるクライアントビューアをさらに有している請求項1に記載のシステム。前記通信リンクが直接のケーブル接続である請求項11に記載のシステム。前記通信リンクがネットワーク接続である請求項11に記載のシステム。前記クライアントビューアが、バーチャルスライド画像データおよび関連するバーチャルスライド情報を受信して、該画像データおよび情報を閲覧のために処理するように構成された表示域コントローラと、前記バーチャルスライド画像データおよび関連するバーチャルスライド情報を表示するように構成されたグラフィカルユーザインターフェイスと、を有している請求項11に記載のシステム。前記表示域コントローラが、画像データを受信し、画像データをキャッシュに保持し、画像データを表示のために前記グラフィカルユーザインターフェイスへと提供するように構成されたレンダリングエンジンをさらに有している請求項14に記載のシステム。前記レンダリングエンジンが、バーチャルスライド画像データを所望の解像度へと拡大縮小するように構成された画像拡大縮小モジュールをさらに有している請求項15に記載のシステム。前記レンダリングエンジンが、バーチャルスライド画像データを直角方向に回転させるように構成された画像変形モジュールをさらに有している請求項15に記載のシステム。前記レンダリングエンジンが、バーチャルスライド画像データをフィルタ処理するように構成された画像フィルタ処理モジュールをさらに有している請求項15に記載のシステム。前記レンダリングエンジンが、バーチャルスライド画像データに対応する表示ピクセルのカラー値を変更するよう構成された画像ガンマ調節器をさらに有している請求項15に記載のシステム。当該サーバシステムから受信したバーチャルスライド画像データのブロックを解凍するように構成されたコーデックをさらに有している請求項11に記載のシステム。当該サーバシステムに通信可能に接続されたウェブサーバおよび要求元ブラウザをさらに有しており、該ウェブサーバが、該要求元ブラウザからバーチャルスライド要求を受信し、該要求を当該サーバシステムへと送信し、対応する応答を当該サーバシステムから受信し、該対応する応答を前記要求元ブラウザに提供するように構成されている請求項1に記載のシステム。バーチャルスライドの同時閲覧のためのシステムであって、バーチャル顕微鏡カンファレンスサーバと、リーダクライアントビューアと、参加者クライアントビューアとを有しており、前記リーダクライアントビューアが、前記バーチャル顕微鏡カンファレンスサーバへとバーチャルスライド閲覧指令を発し、該サーバが、応答としてのバーチャルスライドデータを前記リーダクライアントビューアおよび前記参加者クライアントビューアに提供することを特徴とするシステム。前記バーチャル顕微鏡カンファレンスサーバが、前記バーチャルスライド閲覧指令を受信および処理するように構成されたバーチャル顕微鏡カンファレンスセッションマネージャをさらに有している請求項22に記載のシステム。前記バーチャル顕微鏡カンファレンスサーバが、複数のエントリを含んでいるバーチャル顕微鏡カンファレンスセッションテーブルをさらに有しており、第1のセッションテーブルエントリが、前記リーダクライアントビューアに関連付けられ、第2のセッションテーブルエントリが、前記参加者クライアントビューアに関連付けられている請求項23に記載のシステム。セッションテーブルのエントリが、対応するクライアントビューアについての現在の閲覧状態を含んでいる請求項24に記載のシステム。バーチャルスライド画像データを閲覧するための方法であって、複数の焦点レベルで顕微鏡スライドをスキャンするステップと、対応する焦点レベルのそれぞれについて個別的なバーチャルスライド画像を生成するステップと、前記複数の焦点レベルのそれぞれに対応する複数のバーチャルスライド画像を、三次元バーチャルスライド画像へと組み合わせるステップと、所望の焦点レベルおよび所望の解像度を含んでいるバーチャルスライド画像要求を受信するステップと、第1のバーチャルスライド画像および第2のバーチャルスライド画像を、前記所望の焦点レベルが該第1のバーチャルスライド画像の焦点レベルと該第2のバーチャルスライド画像の焦点レベルとの間になるように特定するステップと、前記第1のバーチャルスライド画像の解像度を前記所望の解像度へと拡大縮小するステップと、前記第2のバーチャルスライド画像の解像度を前記所望の解像度へと拡大縮小するステップと、応答用のバーチャルスライド画像を、前記拡大縮小された第1のバーチャルスライド画像および前記拡大縮小された第2のバーチャルスライド画像から補間するステップと、前記所望の焦点レベルおよび前記所望の解像度にある前記応答用のバーチャルスライド画像を提供するステップと、を含んでいる方法。前記バーチャルスライド画像要求が、所望の位置をさらに含んでおり、前記特定するステップが、前記第1のバーチャルスライド画像の或る部位および前記第2のバーチャルスライド画像の或る部位を特定するステップをさらに含んでおり、前記所望の位置が各部位の中にある請求項26に記載の方法。前記応答用のバーチャルスライド画像をスキューするステップをさらに含んでいる請求項26に記載の方法。前記スキューするステップが、前記拡大縮小された第1のバーチャルスライド画像の画像ピクセルを、第1の方向にずらすステップと、前記拡大縮小された第2のバーチャルスライド画像の画像ピクセルを、前記第1の方向と反対である第2の方向にずらすステップとをさらに含んでいる請求項28に記載の方法。バーチャルスライド画像ファイルの構造であって、バーチャルスライド画像を取り込んだ際の解像度に事実上等しい解像度を有するベースライン画像と、ベースライン画像の全体の画像であって、かつベースライン画像よりも低い解像度を有しているサムネイル画像と、ベースライン画像の全体の拡大縮小バージョンであり、かつベースライン画像よりも低くサムネイル画像よりも高い解像度を有している中間レベル画像とを含んでいるバーチャルスライド画像ファイルの構造。前記ベースライン画像が、複数のデータブロックをさらに含んでいる請求項30に記載のバーチャルスライド画像ファイルの構造。各データブロックが圧縮されている請求項31に記載のバーチャルスライド画像ファイルの構造。各データブロックがJPEG2000を使用して圧縮されている請求項32に記載のバーチャルスライド画像ファイルの構造。各データブロックが、画像の完全性を検証するためのチェックサムを含んでいる請求項31に記載のバーチャルスライド画像ファイルの構造。各データブロックが、圧縮後の画像の忠実度の指標を含んでいる請求項31に記載のバーチャルスライド画像ファイルの構造。前記画像の忠実度の指標が、元の画像データからの平均二乗平均平方根距離として計算される請求項35に記載のバーチャルスライド画像ファイルの構造。前記画像の忠実度の指標が、前記元の画像データからの平均三乗平均立方根距離として計算される請求項35に記載のバーチャルスライド画像ファイルの構造。前記サムネイル画像が、JPEG2000を使用して圧縮されている請求項30に記載のバーチャルスライド画像ファイルの構造。前記サムネイル画像が、最大512ピクセルの幅および最大512ピクセルの高さを有している請求項30に記載のバーチャルスライド画像ファイルの構造。複数の中間レベル画像をさらに含んでいる請求項30に記載のバーチャルスライド画像ファイルの構造。各中間レベル画像が、複数のデータブロックをさらに含んでいる請求項40に記載のバーチャルスライド画像ファイルの構造。各データブロックが圧縮されている請求項41に記載のバーチャルスライド画像ファイルの構造。各データブロックがJPEG2000を使用して圧縮されている請求項42に記載のバーチャルスライド画像ファイルの構造。各データブロックが、画像の完全性を検証するためのチェックサムを含んでいる請求項41に記載のバーチャルスライド画像ファイルの構造。各データブロックが、圧縮後の画像の忠実度の指標を含んでいる請求項41に記載のバーチャルスライド画像ファイルの構造。前記画像の忠実度の指標が、前記元の画像データからの平均二乗平均平方根距離として計算される請求項45に記載のバーチャルスライド画像ファイルの構造。前記画像の忠実度の指標が、前記元の画像データからの平均三乗平均立方根距離として計算される請求項45に記載のバーチャルスライド画像ファイルの構造。前記バーチャルスライド画像ファイルが、タグ付き画像ファイルフォーマット規格を使用して保存される請求項41に記載のバーチャルスライド画像ファイルの構造。線スキャン法によってもたらされる他の大きな進歩は、従来からの画像タイルシステムが数千もの別個独立の画像タイルを生成するのとまったく対照的に、バーチャルスライドがコンピュータシステム上のただ1つの画像ファイルに含まれるという点にある。1つのバーチャルスライドについてただ1つの画像ファイルを管理すればよいため、数千もの別個独立の画像タイルを対応するインデックスとともに管理することに比べ、オペレーティングシステムに必要とされるオーバヘッドがきわめて小さくなる。しかしながら、1つのバーチャルスライドについて画像ファイルをただ1つ生成するということは、きわめて効率的であって要する時間も少ない反面、それらバーチャルスライドの閲覧に関して、挑戦すべき新たな困難を生じさせる。画像タイルのサイズが1MB程度であるのと対照的に、線スキャナによって生成されるバーチャルスライドファイルは、4ギガバイトGBにもなる可能性がある。したがって、バーチャルスライドを生成するための優れた線スキャンシステムを導入することにより、この新規な技法によって課される固有の必要性に適合するバーチャルスライド閲覧システムおよび閲覧方法に対するニーズが、この業界において生じている。本発明は、大量の視覚画像データについて、スタンドアロン装置での閲覧あるいは構内または広域通信網を介しての閲覧を容易にするバーチャルスライド画像ファイルフォーマットを提供する。バーチャルスライド画像データおよび対応する情報が、バーチャルスライド画像データおよび対応する情報への高性能なアクセスを提供するバーチャルスライド画像サーバ上のデータ記憶領域に保存される。バーチャルスライド画像データを効率的に表示および操作するように構成されたクライアントビューアが、特定の解像度で画像データを要求する。画像サーバが、要求された解像度に最も近い解像度で、データ記憶領域から対応する画像データを取得する。次いで、この画像データがクライアントビューアへと送信される。バーチャルスライドクライアントビューアは、バーチャルスライド画像データを保存された解像度で受信し、次いでこの画像データを閲覧のため適切な解像度へと拡大縮小する。したがって、ベースライン解像度でスキャンされたバーチャルスライド画像を、より高い任意の解像度で画像の忠実度を損なうことなく閲覧することができる。さらに、ウェブベースのシステムも提供される。さらに、バーチャルスライド画像サーバは、リーダクライアントビューアおよび幾つかの参加者クライアントビューアによるバーチャルスライドの同時協働閲覧を容易にする。参加者クライアントビューアは、閲覧するバーチャルスライドの操作について制限されているが、協働セッションのリーダは、リーダの役割を参加者クライアントビューアに引き継ぐことができ、引き継ぎののち、新たなリーダが閲覧の制御を行なうことができ、先のリーダは参加者クライアントへと格下げされる。さらに本発明は、バーチャルスライドの三次元閲覧を提供する。顕微鏡スライドの標本が、複数の垂直レベルでスキャンされ、それぞれの垂直レベルについて別個のバーチャルスライド画像が生成される。この複合バーチャルスライド画像の閲覧が要求され、要求されたレベルが2つのスキャンレベルの間にあるとき、要求された閲覧レベルを画像の忠実度を損なうことなく生成するため、直上のレベルおよび直下のレベルが補間される。さらに、直上のレベルの画像の画像ピクセルを第1の方向にずらすとともに直下のレベルの画像の画像ピクセルを反対方向にずらして、要求されたレベルについてスキューされた画像を提供することによって、三次元閲覧を提供することができ、複合画像の三次元閲覧が可能である。添付の図面を検討することによって、本発明の詳細を、その構成および動作の両者に関して或る程度学ぶことができるであろう。添付の図面において、同様の参照番号は同様な部分を指し示している。本明細書に開示する或る幾つかの実施の形態は、ファイルサイズが4GBにもなるきわめて大きな画像100GBにもなる圧縮前の生の画像データを含んでいるであるバーチャル顕微鏡スライドを閲覧するためのシステムおよび方法を提供する。本発明は、このような大型の画像ファイルにアクセスし、対応する画像データをローカルまたはリモートの閲覧用ステーションに表示するための高速かつ効率的なシステムおよび方法を提供する。例えば、本明細書に開示の一方法によれば、クライアントビューアが、バーチャルスライド画像ファイルからの画像データを特定の解像度で要求できる。サーバシステムが、要求された解像度に近い解像度にある画像データを含んでいる画像データの圧縮済みブロックを取得し、このデータブロックをクライアントへと送信する。次いで、クライアントは、この画像データを拡大縮小し、要求された解像度で画像を提示する。当業者であれば、この説明を読むことによって、他のさまざまな実施の形態および他のさまざまな用途において本発明をどのように実行するのかを、理解できるであろう。本発明の種々の実施の形態を本明細書にて説明するが、これらの実施の形態があくまで例であって、本発明を限定するものではないことを理解すべきである。すなわち、種々の代替となる実施の形態についてここで詳細に説明するが、それらを添付の特許請求の範囲に記載される本発明の技術的範囲を制限するものとして解釈すべきではない。図1は、本発明の一実施の形態に従ってバーチャルスライド画像を閲覧するための典型的なシステム10を示したネットワーク図である。図示の実施の形態において、システム10は、クライアントビューア70およびウェブビューア80にネットワーク60を介して通信可能に接続したバーチャルスライドサーバ30を有している。複数のクライアントビューア70が存在してもよく、複数のウェブビューア80が存在してもよい。さらに、システム10がウェブサーバ40を備えていてもよい。図示のとおり、ウェブサーバ40は別個独立であってよく、あるいは複合サーバ20としてバーチャルスライドサーバと同じ場所に位置してもよい。複合サーバ50は、データ記憶領域50を備えて構成される。あるいは、バーチャルスライドサーバ30がウェブサーバ40と別個独立である場合には、別個のサーバのそれぞれが、好ましくは自身のデータ記憶領域図示されていないを備えて構成される。そのような実施の形態においては、バーチャルスライドサーバ30が、バーチャルスライド画像データを保存する他のデータとともにためのデータ記憶領域を有することができ、ウェブサーバ40が、ウェブページデータを保存する他のデータとともにためのデータ記憶領域を有することができる。クライアントビューア70も、データ記憶領域72を備えて構成される。このデータ記憶領域は、好ましくはバーチャルスライド画像、ならびにバーチャルスライドの閲覧を容易にするための他のデータまたは情報を、ローカルに保存するために使用することができる。ウェブビューア80は、キャッシュが好ましくはローカルのディスク式記憶装置ではなくコンピュータのメモリを使用して実行されるため、データ記憶領域を必要としない。他の実施の形態においては、データ記憶領域を備えてもよい。ネットワーク60は、種々ある任意のネットワーク形態および物理層を含むことができる。例えば、ネットワーク60は、構内通信網LAN、広域通信網WAN、無線広域通信網WWAN、またはインターネットなどのネットワークの組み合わせであってよい。さらに、ネットワーク60は、TCP/IPなどのさまざまな通信プロトコルを使用でき、HTTPなどのアプリケーションプロトコルを使用することができる。図2Aは、本発明の一実施の形態による典型的なバーチャルスライドサーバ20を示したブロック図である。図示の実施の形態においては、バーチャルスライドサーバ20が、接続モジュール100、バーチャルスライドモジュール110、注釈モジュール160、認証モジュール130、およびデータベースモジュール140を有している。このサーバ20は、データ記憶領域50を備えて構成されている。代案として、データ記憶領域50を、データ記憶領域120とデータ記憶領域150など、2つ以上の別個のデータ記憶領域へと物理的または論理的あるいは両方に分割することができる。データ記憶領域120が、バーチャルスライド画像データを含んでおり、データ記憶領域150が、注釈およびユーザ認証情報、ならびにおそらくはバーチャルスライド状況情報などの他の管理上のデータを含んでいる。接続モジュール100は、好ましくは、クライアントビューアまたはウェブビューアからの要求を受信するように構成されている。要求によって、情報または画像データあるいは両者を求めることができる。さらに、要求によって、認証情報または注釈情報などの情報をもたらすことができる。別個に図示されているが、注釈モジュール160および認証モジュール130は、接続モジュール100の一部であってよい。バーチャルスライド画像に関する要求は、接続モジュール100によって、バーチャルスライドモジュール110へと導かれる。バーチャルスライドモジュールは、データ記憶領域120から画像データを取得し、この画像データを必要に応じて処理し、要求元のビューアクライアントビューアまたはウェブビューアへと応答を送り返す。さらに、バーチャルスライドモジュールは、注釈モジュール160と通信し、バーチャルスライド画像に注釈の重ね合わせをもたらすことができる。注釈モジュール160は、種々のバーチャルスライド画像についての注釈を、別個のレイヤーにて保持しており、バーチャルスライドモジュール110と関連して、注釈の生成および変更ならびに注釈レイヤーの表示を容易にする。認証モジュール130は、要求を送信しているビューアを検証するように構成されている。認証モジュール130は、秘密に属するバーチャルスライド画像データおよび/または関連のデータベース情報が、権限のない要求元ビューアへと誤って提供されてしまうことがないよう、ユーザおよびパスワードまたは他の認証情報例えば、IPアドレスについてのデータベースを保持できる。このデータベースは、データ記憶領域150内に保持できる。データ記憶領域150内にデータを保存するさまざまなモジュールは、データベースモジュール140を介して当該データにアクセスできる。一実施の形態においては、モジュールが、従来からのファイルシステムにてデータ記憶領域150にデータを保存でき、したがって実際のデータベース構造のオーバヘッドを必要としない。しかしながら、データ記憶領域150と関連してデータベースを使用することによって、或る幾つかの利点および最適化を実現することができ、そのような場合、データベースモジュール140によって、照会、取り出し、および保存などのデータベースとの通信を、容易にすることができる。図2Bは、本発明の一実施の形態による典型的なバーチャルスライドモジュール110を示したブロック図である。図示の実施の形態においては、バーチャルスライドモジュール110は、要求ハンドラ170、入出力I/Oモジュール172、1つ以上のデータ符号器/復号器コーデック174、および画像キャッシュ176を含んでいる。I/Oモジュール172が、データ記憶領域120にアクセスし、バーチャルスライド画像データおよび他の関連のバーチャルスライド情報の取り出しおよび保存を行なう。例えば、バーチャルスライド画像データの要求に応じ、I/Oモジュール172によってデータ記憶領域120からの取り出しが行なわれる。さらに、バーチャルスライド画像について直角回転または新規に拡大縮小スケーリングされたレベルを、I/Oモジュール172によって画像キャッシュ176に保存することができる。要求ハンドラは、受信した要求の種類を特定するように構成されている。例えば、要求は、バーチャルスライド画像の特定のブロックを要求するものであってよく、あるいはバーチャルスライド画像の特定のサブ領域を要求するものであってよい。要求は、バーチャルスライドについての情報を要求するものであってもよい。バーチャルスライド画像ファイルのブロックとサブ領域との間の相違は、図4A~4Fに関して後で詳しく説明するとおり、バーチャルスライド画像ファイルの構造にもとづいている。しかしながら、基本的には、ブロックは、保存されたバーチャルスライド画像のファイル構造に固有の所定のデータブロックである。一方、サブ領域は、バーチャルスライド画像の任意の領域であって、ただ1つのブロックまたは2つ以上のブロックの任意の組み合わせからなる部分集合であってよい。したがって、ブロックの読み出しがきわめて効率的である一方で、サブ領域の読み出しおよび構成は、プロセッサをより多く使用する。コーデック174は、好ましくは、種々さまざまな圧縮技法を実行するように構成されている。好ましい実施の形態においては、バーチャルスライド画像ファイルについてJPEG2000圧縮が使用され、したがってコーデック174が、JPEG2000の規格に従って圧縮および解凍を行なうように構成されている。さらに、コーデック174を、JPEGおよびレンペル‐ジブ‐ウェルチLempel‐ZivWelchLZWの圧縮の規格、ならびに他の可逆および不可逆の画像圧縮技法に従って圧縮および解凍を行なうように構成してもよい。バーチャルスライドモジュール110は、複数の圧縮技法を同時にサポートすることができ、その場合、画像の属性にもとづいて選択されるコーデック174の複数のインスタンスが存在するであろう。キャッシュ176は、ただ1つの物理的なキャッシュとして、あるいは複数の別個の物理的なキャッシュとして、実装することができる。一実施の形態においては、画像ブロックのためのキャッシュ、画像サブ領域のためのキャッシュ、およびバーチャルスライド情報のためのキャッシュなど、論理的に別個である複数のキャッシュが、バーチャルスライドモジュール110によって使用される。図2Cは、本発明の一実施の形態に従ってバーチャルスライド画像のブロックの要求を取り扱うための典型的なプロセスを示したフロー図である。最初に、ステップ178において、バーチャルスライドモジュールが、クライアントビューアからの要求を受信する。要求は、要求ハンドラによって受信され、処理のためにI/Oモジュールへと渡される。ステップ180において、I/Oモジュールが、要求されたブロックをデータ記憶領域から取り出し、当該ブロックを要求ハンドラへと返す。あるいは、画像データがキャッシュにあるかどうかを調べるため、I/Oモジュールが、最初にキャッシュをチェックしてもよい。次に、要求ハンドラは、要求されたブロックをステップ182において要求元のビューアへと送り返し、さらにステップ184に示されているとおり、要求されたブロックをブロックキャッシュに保存する。さらに、要求ハンドラまたはI/Oモジュールが、要求されるであろう隣接または他のブロックの可能性を判断するため、予測機能を実行してもよい。この可能性が或る閾値を超えると判断される場合、その特定されたブロックを、要求を先取りすべくI/Oモジュールによってデータ記憶領域からあらかじめ読み出し、一時的にブロックキャッシュに配置することができる。このような先読み機能によれば、閲覧システムの動作全体を大幅に改善することができ好都合である。この先読みの予測機能は、それまでの要求およびユーザのアクセスのパターンにもとづく経験則を実装することができる。図2Dは、本発明の一実施の形態に従ってバーチャルスライド画像のサブ領域の要求を取り扱うための典型的なプロセスを示したフロー図である。ステップ188において、要求ハンドラが要求を受信し、その要求をデータの取り出しのためI/Oモジュールへと渡す。ステップ190に示すとおり、I/Oモジュールが、当該サブ領域の構築に必要とされる1つまたは複数のブロックを、キャッシュまたはデータ記憶領域から取り出す。1つまたは複数のブロックが入手されると、ステップ192でサブ領域が構築され、ステップ194でサブ領域のフォーマットが変換される。画像データをウェブビューアへと提供するときに、特定のウェブビューアクライアントが本来のフォーマット例えばJPEG2000に対応しない場合に、サブ領域のフォーマットの変換は必要になることが多い。圧縮形式の他に、画像データの拡大縮小、画像データの変形回転または反転、色の補正、コンボリューションマトリクスの適用、などのため、さらなる変換を実行してもよい。これらのステップは、すべて要求元クライアントの代理として要求ハンドラによって実行することができる。さらに、他の実施の形態においては、画像データの変換によってサブ領域を構築するステップを、本閲覧システムにおいて要求側に位置するクライアントビューアのプログラムによって好都合に実行することができる。したがって、サブ領域の構築および変換のステップは、より効率的であるブロックレベルの画像を要求および処理することができないウェブビューアクライアントまたは他のビューアクライアントから要求を受け取った場合にのみ、必要とすることができる。ひとたびサブ領域が構築されて、画像が必要であれば変換されると、得られたサブ領域が、ステップ196に示すとおり、要求元のビューアへと送信される。サブ領域が送信されると、バーチャルスライドモジュールは、好ましくはステップ198に示すとおり、当該サブ領域をサブ領域キャッシュに保存する。図3は、本発明の一実施の形態に従ってバーチャルスライド画像を閲覧するための典型的なウェブサーバ40を示したネットワーク図である。図示の実施の形態においては、ウェブビューアクライアント80が、ネットワーク図示されていないを介してウェブサーバ40に通信可能に接続されている。好都合なことに、ウェブビューアクライアントは、特別なソフトウェアモジュールを必要とせず標準的なウェブブラウザ210を備えているだけである。ウェブサーバ40は、コモンゲートウェイインターフェイスCGI220、ウェブビューア230、およびHTMLビルダを有している。一実施の形態においては、HTMLビルダを、ウェブビューア230の一部として実装できる。さらに、図示の実施の形態には、バーチャルスライドに関する画像データおよび他の情報を保持および提供するバーチャルスライドサーバ30が示されている。図示のとおり、ウェブビューア80がウェブサーバ40へとHTTP要求を送信して、バーチャルスライドを要求する。CGI220が、この要求を受信してウェブビューア230に渡し、ウェブビューア230が、対応するバーチャルスライド要求を、HTTP要求によってバーチャルスライドサーバ30へと送信する。バーチャルスライドサーバ30は、画像情報を含んでなるHTTP応答によって、この要求に応答する。ウェブサーバ40へのHTTP応答は、実際の画像データは含んでおらず、画像属性などの他の情報を含んでいる。バーチャルスライドサーバ30からHTTP応答を受信したのち、ウェブサーバ40において、ウェブビューア230がHTTPビルダ240と協働し、ウェブビューア80のためのHTTP応答を構築する。好ましくは、HTTP応答が、バーチャルスライド画像を表示するためのHTMLの枠組みをウェブブラウザ210に提供するとともに、本来の画像データ例えば、JPEGについての画像タグ参照を含んでいる。ウェブブラウザ210は、ウェブサーバ40からのHTTP応答を処理する際に画像タグ参照を発見し、これに従ってウェブビューア80に、画像データを求めるHTTP要求をバーチャルスライドサーバ30へと送信させる。ウェブビューア80からの要求に応じ、バーチャルスライドサーバが、画像データをウェブブラウザ210によって表示できるフォーマットで送信する。図4Aは、本発明の一実施の形態による典型的なバーチャルスライドファイルフォーマット250を示したブロック図である。バーチャルスライド画像ファイルが複数の画像を含んでおり、これら複数の画像はそれぞれ、バーチャルスライドの全体についての異なる解像度での画像である。一実施の形態においては、バーチャルスライドを閲覧する際により効率的な拡大縮小の入手を提供するため、バーチャルスライドが生成されるときに、中間レベルの画像もいくつか生成され、バーチャルスライド画像ファイルに保存される。図示の実施の形態においては、ファイルフォーマットが、ヘッダ260およびチェックサム310を含んでいる。チェックサム310は、任意であってよい。一実施の形態においては、バーチャルスライド画像が大きく、全画像についてチェックサムを計算することが現実的でないため、チェックサムをブロックレベルに使用することができる。さらに、ブロックレベルにおける他の検証または保全も、使用することができる。ヘッダは、好ましくはファイル情報およびベースライン画像270への参照を含んでおり、ベースライン画像270は、バーチャルスライド画像を線スキャナ装置から受け取ったままの本来の解像度で含んでいる。一実施の形態においては、ファイルにおいてベースライン画像270の次に、バーチャルスライド全体の低解像度のサムネイル画像を含んでいるサムネイル画像280が続いている。同様に、ファイルにおいてサムネイル画像280の次には、ベースレベルから作られた中間画像のすべてについて、中間画像レベル290が続き、さらに中間レベル291が続き、以下同様である。ベースライン画像270および中間レベル画像290、291は、ランダムアクセスを容易にするため、ブロックの連続として組織されている。個々のブロックを圧縮してもよい。好ましくは、ブロックは、JPEG2000の規格に従って圧縮される。代案として、あるいはこれに加えて、個々のブロックをJPEG規格に従って圧縮してもよく、あるいはLZW可逆符号化によって圧縮してもよい。さらに、個々のブロックが、画像の完全性を検証すべく使用されるチェックサムを含んでもよく、さらに/あるいは元の圧縮なしの画像データからの平均二乗平均平方根RMSまたは平均三乗平均立方根RMC距離など、圧縮後の画像の忠実度についての指標を含んでもよい。一実施の形態においては、バーチャルスライド画像ファイルフォーマットが、ここでの参照によってその全体が本明細書に組み込まれる1992年6月3日付の最終のTIFF規格、リビジョン6.0に記載のファイルフォーマットに、事実上合致している。図4B~Fは、ファイル中に種々の解像度レベルを含んでなる本発明の一実施の形態による典型的なバーチャルスライドファイルフォーマットを示したブロック図である。図から理解されるように、ベースライン画像の種々のレベルを解像度が小さくなっていく順序で垂直に積層させたとき、ピラミッドが形成される。図4Bに示すとおり、ピラミッドの底部はベースライン画像270である。次のレベルは、図4Cに示すとおり中間画像290である。中間画像290は、バーチャルスライド中の他のすべての解像度のなかで、最もベースライン解像度に近いバーチャルスライド画像である。図4Dは、ピラミッドにおいてベースライン画像および第1の中間レベル画像の上方に位置する第2の中間レベル画像291を示している。任意の数の中間画像を含むことができる。例えば、一実施の形態においては、隣り合う中間画像が、それぞれ先の画像の1/4の解像度を有している。最後に、図4Eにおいて、サムネイル画像280が、バーチャルスライド画像ファイルを構成する画像のピラミッドの最上部に位置している。これら種々のレベルの解像度およびそれらに対応するバーチャルスライドファイル中の各画像によって、バーチャルスライドの閲覧時に、解像度レベルをまたがるより効率的な拡大縮小を、好都合に提供できる。例えば、図4Fは、第2の中間レベル画像291とサムネイル画像280との間にある現在閲覧中のレベル320を示している。一実施の形態においては、ビューアが現在の閲覧レベル320の解像度でのバーチャルスライドの閲覧を選択したとき、バーチャルスライドサーバは、クライアントビューアへと第2の中間レベル画像291からの1つ以上のブロックを提供でき、クライアントビューアが、それらを現在の閲覧レベルの解像度へと縮小スケールダウンすることができる。他の実施の形態においては、ビューアが現在の閲覧レベル320の解像度でバーチャルスライドを閲覧することを選択したとき、バーチャルスライドサーバが、より低い解像度レベルの画像をクライアントビューアへと提供でき、クライアントビューアが、それを現在の閲覧レベルの解像度へと拡大スケールアップすることができる。好ましくは、画像の忠実度を保つため、より高解像度の画像が縮小される。または、バーチャルスライドサーバは相互レベル補間を実行できる。一実施の形態においては、バーチャルスライドの種々の解像度レベルにまたがっての高速な拡大縮小をさらに改善するため、補間によって中間レベルを得たのち、当該新しいレベルを、ビューアまたはサーバのキャッシュに加えることができる。或る状況においては、最初のレンダリングの後に現在の閲覧をディスクに保存するよりもむしろ、現在の閲覧レベルを後続の第2の時に再度解釈し、後の第2の閲覧のために保存された画像を後に取り出すことがより効率的であり得る。図4Gは、本発明の一実施の形態による典型的なバーチャルスライドファイルフォーマットを、種々の解像度レベルとの関連について示したブロック図である。図5Aは、本発明の一実施の形態による典型的なクライアントビューア70を示したブロック図である。クライアントビューア70は、ネットワークを介してバーチャルスライドサーバと通信可能に接続され、あるいは場合によってはコンピュータケーブルなどで直接接続されるリモート装置上で動作するアプリケーションである。図示の実施の形態においては、クライアントビューア70は、グラフィカルユーザインターフェイスGUIハンドラ350、バーチャル顕微鏡カンファレンスvirtualmicroscopyconferencingVMCモジュール360、および表示域コントローラviewportcontrol370を有している。GUIハンドラ350は、ウインドウおよびそれらウインドウの中身の閲覧装置上への表示を管理する。さらに、GUIハンドラ350は、クライアントビューア70へのすべてのキーボードおよびマウス入力を管理する。VMCモジュール360は、図7A~7Bに関して後に詳述するバーチャル顕微鏡カンファレンスセッションのために使用される。表示域コントローラ370は、ローカルのバーチャルスライドファイルへの直接アクセスを介し、あるいはすでに述べたとおりバーチャルスライドサーバへのリモートアクセスを介するバーチャルスライドについてのすべてのやり取りを管理する。図5Bは、本発明の一実施の形態による典型的な表示域コントローラ370を示したブロック図である。図示の実施の形態では、表示域コントローラが、注釈コントローラ400、レンダリングエンジン420、先読み器430、I/Oモジュール440、通信モジュール450、1つ以上のコーデック460、およびキャッシュ470を有している。注釈コントローラ400は、新規注釈の追加、注釈の削除、種々の注釈レイヤーの提示などの注釈要求を処理する。レンダリングエンジン420は、バーチャルスライド画像データの表示および操作を管理する。レンダリングエンジン420は、バーチャルスライド画像についてバーチャルスライド内の任意の位置、任意の寸法、および任意の解像度で可能な限り良好な閲覧を提供するため、キャッシュされた画像データを使用するように構成されている。より多くのデータがバーチャルスライドサーバから受信されるとき、レンダリングエンジン420は、画像を向上させるべく現在表示されている画像を好都合に更新する。先読み器430は、バーチャルスライドの画像データを、レンダリングエンジン420からの要求を先取りして動的に取り出す。先読み器430は、表示域コントローラ370によって表示されたバーチャルスライドにおけるユーザのナビゲーション動作を追跡し、バーチャルスライド画像の特定の方向への動きを判断する。これにより、先読み器430は、スライドの動きの方向に従って画像データを取り出し、レンダリングエンジン420によって要求される画像データを先取りする。I/Oモジュール440は、ローカルデータ記憶領域図示せずからのバーチャルスライドデータについてのすべての要求を処理する。好都合には、ローカルクライアントビューアは、スタンドアロンでバーチャルスライドを閲覧できるよう、画像データをローカルに記憶することができる。これらの画像は、好ましくは、I/Oモジュール440によってアクセス可能なローカルデータ記憶領域に保存される。通信モジュール450は、バーチャルスライドサーバとのネットワーク通信を取り扱う。好ましくは、通信モジュール450は、先読み器430、レンダリングエンジン420、および表示域コントローラ370の他のコンポーネント、ならびにクライアントビューアと協働し、バーチャルスライドサーバのデータおよび情報にアクセスする。さらに、通信モジュール450は、好ましくは、注釈コントローラ400と協働し、バーチャルスライドサーバに新規の注釈、注釈の変更、および注釈の削除を提供する。さらに、表示域コントローラは、好ましくは種々さまざまな圧縮および解凍技法を実行するように構成された1つ以上のコーデック460を有している。好ましい実施の形態においては、バーチャルスライド画像ファイルについてJPEG2000圧縮が使用され、したがってコーデック460は、JPEG2000の規格に従って圧縮および解凍を実行するように構成されている。さらに、コーデック460を、JPEGおよびレンペル‐ジブ‐ウェルチLZWの圧縮規格に従って圧縮および解凍を実行するように構成してもよい。表示域コントローラは、複数の圧縮技法を同時にサポートすることができ、その場合、画像の属性にもとづいて選択されるコーデック460の複数のインスタンスが存在するであろう。最後に、表示域コントローラは、キャッシュ470を有している。キャッシュ470は、ただ1つの物理的なキャッシュとして、あるいは複数の別個の物理的なキャッシュとして、実装することができる。一実施の形態においては、ブロックのためのキャッシュ、画像サブ領域のためのキャッシュ、およびバーチャルスライド情報のためのキャッシュなど、論理的に別個である複数のキャッシュが、表示域コントローラ370によって使用される。I/Oモジュール440が、データをローカルディスクまたはリモートサーバから取り出す前に、ブロックおよび/または画像データについて適切なキャッシュ470をチェックするとともに、新たに取り出したデータでキャッシュを更新する。図5Cは、本発明の一実施の形態による典型的なレンダリングエンジン420を示したブロック図である。レンダリングエンジン420は、表示域コントローラの主要コンポーネントであり、ガンマ調節器500、フィルタ処理モジュール510、拡大縮小スケーリングモジュール520、および変形モジュール530を有している。ガンマ調節器500は、画像データ内の赤‐緑‐青RGB値の実際にモニタ上に表示されるピクセルへのカラーマッピングについて、リアルタイムでの調節を提供する。この能力の利点は、バーチャルスライドを閲覧するときに環境光およびモニタ特性の相違を補償できる点にある。フィルタ処理モジュール510は、所定またはユーザ指定のコンボリューションマトリクスを画像データに適用することによって、バーチャルスライド画像データのフィルタ処理を可能にし、コントラストの強調、エッジの鮮鋭化、および他の画像処理能力を提供する。拡大縮小モジュール520は、画像の忠実度の喪失を小さく抑えつつ、バーチャルスライド画像の解像度の増減を可能にする。好都合なことに、拡大縮小に必要な時間は、バーチャルスライド画像ファイルに種々の中間レベル解像度画像290、291を前もって備えておくことによって、大幅に低減される。変形モジュール530は、90°回転などバーチャルスライド画像の直角回転を可能にし、さらに画像の水平および垂直反転を実現できる。図5D~Hは、本発明の一実施の形態による典型的な閲覧ウインドウおよび操作制御ウインドウを示したスクリーンショットである。図5Dは、典型的なクライアントビューアウインドウを示している。このウインドウは、それぞれ別個のスライドの画像を表示している2つの表示域540に分割されている。右側の表示域540がアクティブなウインドウであり、このウインドウについての情報が、ステータスバー542に示されている。ステータスバーには、この画像が73,042×62,633ピクセルであり、このバーチャルスライドの画像データが約13.1GBである旨が示されている。さらに、ステータスバーは、表示域540が現在データを先読みしていることを示している。さらに、それぞれの表示域540には、サムネイル画像544など、バーチャルスライド全体のサムネイル画像が示されている。好都合なことに、サムネイル画像内でマウスをクリックまたはドラッグすると、これに対応して表示域ウインドウ内の拡大画像を位置させることができる。さらに、現在の閲覧の相対位置およびサイズを示すため、サムネイル画像内に四角形が表示されている。さらに、それぞれの表示域540に拡大鏡ウインドウ546を開くことができる。好都合なことに、拡大鏡ウインドウ546は、カーソルの周囲の領域を2倍の相対倍率で表示することができる。マウスをドラッグすることによって、マウスの周囲の拡大領域を移動させることができる。コンピュータ画面上のピクセルのサイズが小さいため、好都合には、ビューアすなわち、人物により多くの情報を提供すべく、スキャンした解像度レベルを超えて画像を拡大することができる。拡大鏡ウインドウ546によって、ユーザは、追加の2倍の解像度を得るべく表示された画像データ上を移動することができる。この追加の解像度は、ベースライン画像についても利用可能である。さらに、各表示域ウインドウの解像度を所定の特定の解像度に設定できるよう、ツールバー548も用意されている。好都合には、この所定の解像度が、バーチャルスライド画像ファイルにすでに存在しているベースラインおよび中間レベルに、直接対応しているとよい。最後に、ズームスライダ550によって、任意の解像度レベルを選択することができるとともに、表示域コントローラ内のバーチャルスライド画像について迅速な拡大縮小が可能である。図5Eは、典型的なガンマ調節ウインドウを示している。画像の明るさ/コントラスト、画像のカラーバランス、および画像のカラー曲線を調節し、さらに調節設定の読み込みおよび保存を行なうため、さまざまなタブが利用可能である。図示の実施の形態では、カラー曲線タブが示されている。カラー曲線552によって、ユーザは、スペクトルに沿ってカラーマッピングを調節することができる。左側のカラーボックスによって、ユーザは、変更しようとする特定のカラーチャネルについての曲線を独立に選択でき、あるいはすべてのカラーチャネルを同時に変更すべく選択することができる。図5Fは、典型的なフィルタ処理ウインドウを示している。ウインドウの上部には、あらかじめ定められたいくつかのフィルタが挙げられており、所望のラジオボタンを選択することによって適用することができる。さらに、カスタム設定できる5×5のコンボリューションマトリクスを、ダイアログボックスの入力フィールド556に適当な値を入力することによって定義することができる。コンボリューションマトリクスによって、コントラストの強調、エッジの強調、および他の画像処理機能が可能である。図5Gは、典型的な変形ウインドウを示している。変形ウインドウにより、所望のラジオボタンを選択することによって、ユーザは、バーチャルスライド画像を90°回転させることができ、あるいは水平または垂直の中心線を横切って画像を鏡像反転させることができる。図5Hは、典型的なウェブビューアウインドウを示している。ウェブビューアウインドウは、HTMLおよび埋め込みされた画像で作られている。標準的なテキスト560を、図3に関してすでに説明したとおりウェブビューアによって生成し、所望のとおり表示および配置することができる。また、サムネイル画像562も、内部サイズおよび中間解像度画像564の位置確認のための位置基準とともに提供されている。さらに、中間解像度画像564の内部には、高解像度画像566の現在の位置を示す同様の基準が提示されている。図6Aは、本発明の一実施の形態による典型的な注釈モジュール160を示したブロック図である。注釈モジュール160は、注釈ビューア164および注釈ハンドラ162を有している。注釈ビューア164は、バーチャルスライドモジュール110と関連して動作し、バーチャルスライド画像データに重ねて表示すべく注釈情報すなわち、レイヤーを提供する。注釈ハンドラ162が、クライアントビューア80などのビューアからの注釈の生成、編集、および削除の要求を処理する。さらに、注釈ハンドラ162は、データ記憶領域150への注釈情報の保持を管理するとともに、適切な場合、注釈データを取り出して、当該注釈情報を注釈ビューア164に提供する。一実施の形態において、ユーザはクライアントビューア80において、例えば注釈コントローラ400を使用して注釈を生成することができる。注釈情報が、クライアントビューア80の通信モジュール450によって、バーチャルスライドサーバ20へと送信される。注釈の生成を含んでいる要求が、通信モジュール100によって処理され、注釈ハンドラ162に渡される。次いで、注釈ハンドラ162が、注釈をデータ記憶領域150への保存のためにデータベースモジュール140へと提供する。図6B~Cは、本発明の一実施の形態による典型的な注釈を示したスクリーンショットである。図6Bは、構造化言語による典型的な注釈を示している。図示の実施の形態においては、注釈が拡張可能マークアップ言語XMLで示されているが、他の構造化言語も使用可能である。好都合には、当業者であれば理解できるとおり、このような注釈を、単純な文字列としてデータベースに保存することができる。注釈は、バーチャルスライドのベース解像度レベルに対応する座標を使用して記述でき、保存でき、取り出すことができる。これにより、注釈を、それらが説明している画像データとともに、任意の解像度レベルへと拡大縮小することができる。図示の実施の形態においては、注釈が、表示される1つ以上の特徴または領域で構成されており、レイヤーへとグループ化されている。一実施の形態においては、個々の注釈レイヤーを選択的に有効にでき、あるいは無効にできる。図6Cは、注釈を有する典型的な表示域ウインドウを示している。フローティング移動可能なダイアログボックス602が、ユーザに注釈コントローラを提供し、注釈レイヤーおよびレイヤー属性の選択を容易にする。同様に、ダイアログボックス604が、現在のレイヤー内で個々の注釈および注釈属性を追加し、編集し、削除する能力を、ユーザに提供する。個々の注釈606は、いくつか例を挙げると、楕円、矢印、自由形状多角形、および矩形など、種々さまざまな形態を具現化できる。一実施の形態においては、或る特定のレイヤー内の各注釈が、例えば現在選択されている注釈が黒の縁取りを有するなど、異なる色で表示される。注釈作成ツールがメニューバー608に出現し、いくつか例を挙げると、ペンツール、形状ツール矩形および楕円形、および矢印ツールを含んでいる。一実施の形態においては、注釈が、バーチャルスライドのベースライン画像に対して特定の位置に関連付けられた注釈領域で構成されている。各注釈領域に関してさまざまな値を設定でき、注釈文字列にkey=valueの形式で保存することができる。注釈レイヤーが、複数の注釈領域を含んでもよい。さらに、注釈レイヤーが、さまざまな値を例えばkey=valueの形式でレイヤーに関連付け、注釈文字列とともに保存して有してもよい。図7Aは、本発明の一実施の形態による典型的なVMC閲覧システム12を示したネットワーク図である。図示の実施の形態においては、VMCサーバ32が、リーダクライアントビューア74および参加者クライアントビューア76に、ネットワーク62を介して通信可能に接続されている。一実施の形態においては、複数の参加者クライアントビューア76が存在してよいが、リーダクライアントビューア74は、カンファレンスのセッションごとに1つだけである。リーダクライアントビューア74は、ローカルなデータ記憶領域75を備えて構成でき、各参加者クライアントビューア76も、同様にローカルなデータ記憶領域77を備えて構成できる。代案となる実施の形態においては、2つ以上のリーダクライアントビューア74が存在してもよい。図7Aに示すとおり、本発明の一実施の形態においては、バーチャルスライドサーバ34が、データ記憶領域50または画像キャッシュ図示せずから、バーチャル顕微鏡カンファレンスセッションのすべての参加者74および76に、画像データを供給する。任意により、バーチャルスライドサーバ34が、バーチャル顕微鏡カンファレンスサーバ32と同じ位置にあってもよく、さらに/あるいはサーバ34および32を、1つの共有サーバ21へと一体に組み合わせてもよい。バーチャル顕微鏡カンファレンスにおいては、リーダクライアントビューア74が、セッションの閲覧を管理する。リーダクライアントビューア74から受け取ったバーチャルスライド指令により、VMCサーバ32が、それらの指令を当該セッションの他の参加者ビューアに伝達する。例えば、注釈レイヤーの表示および注釈領域の生成を含め、リーダクライアントビューア74から受信される視点の移動および拡大縮小ならびに他の相互作用の指令がすべて、ローカルで実行され、他のすべての参加者ビューアへと伝達される。さらに、画像を開く指令および閉じる指令、ならびに他のセッション制御行為は、当該セッションリーダによって開始される。参加者クライアントは、自身の画像表示をローカルで変更視点移動、拡大縮小、などしてもよいが、これらの動作がVMCサーバ32を介して他のセッション参加者に伝えられることはない。図7Bは、本発明の一実施の形態によるバーチャル顕微鏡カンファレンスのための典型的なVMCサーバ32を示したブロック図である。VMCサーバ32は、VMCセッションマネージャ620およびVMCセッションテーブル630を備えている。認証モジュール130およびデータベースモジュール140が、VMCセッションの参加者を認証するために使用される。好都合には、VMCセッションマネージャが、リーダクライアントビューアから受け取るすべてのVMC要求を処理する。さらに、VMCセッションマネージャ620は、どのクライアントがリーダであるのかを把握し、リーダシップを要求したクライアントの待ち行列を保持するため、VMCセッションテーブル630を維持する。さらに、VMCセッションテーブル630は、好ましくは、各参加者クライアントビューアの現在のバーチャルスライド閲覧をリーダクライアントビューアのものと同期させるため、各参加者クライアントビューアの状態を保持する。一実施の形態においては、VMCセッションテーブル630が、リーダクライアントビューアになることを要求した参加者クライアントビューアのリストを含んでいる。好都合には、リーダクライアントビューアが、VMCサーバ32においてセッションリーダーシップ待ち行列中で順番を待っている次の参加者クライアントを選択するように要求することで、明示的または暗黙裡に、セッションのリーダシップをいずれかの参加者クライアントビューアへと、いつでも渡すことができる。VMCセッションマネージャ620は、まず、第1のクライアントビューアからセッションを確立するためのVMC要求を受信する。この第1のクライアントビューアがリーダクライアントビューアとなって、パスワードおよびセッション識別子を設定する。このセッション識別子を指定し、かつ正しいパスワードを提示するさらなるクライアントビューアが、参加者クライアントビューアになる。一実施の形態においては、各参加者クライアントビューアが、当該参加者クライアントビューアの状態を追跡すべく生成された固有のVMCセッションテーブルを有している。リーダ74およびすべての参加者76を含むVMCセッションのクライアントは、すでに述べたとおり、画像データを取得するための1つ以上のバーチャルスライドサーバ34へのアクセスを共有する。画像データへのアクセスは、画像ブロックレベルであって、ブロックの処理がクライアントによって行なわれてもよく、あるいは画像サブ領域のレベルであって、サブ領域を描くためのブロックの処理がクライアントの代理としてサーバによって行なわれてもよい。一実施の形態においては、バーチャルスライド画像のガンマ調節が、個々の参加者ベースで利用可能である。ガンマ調節は、個々のモニタおよび環境光のそれぞれに固有であって、したがってVMCセッションの個々の参加者クライアントビューアのそれぞれによって制御可能であると好都合である。ガンマ調節の操作は、バーチャルスライドサーバ34上で実行できるが、より一般的には、ローカルのクライアントビューアにて実行される。図7Cは、バーチャルスライドビューア70内へと作りこまれたバーチャル顕微鏡カンファレンスクライアントリーダまたは参加者のいずれかの典型的な一実施の形態を示している。フローティング移動可能なダイアログボックスが、参加者のリスト702など現在のセッションの状態を表示している。セッションのリーダシップを要求し、割り当て、放棄するため、コントローラ704が設けられている。図8Aは、本発明の一実施の形態による典型的な三次元バーチャルスライドを示したブロック図である。三次元バーチャルスライドは、垂直の次元に複数の画像平面を含んでいる。例えば、顕微鏡スライドにおいて組織標本がかなりの厚さを有している場合、標本全体を垂直方向のただ1つの焦点面で捉えることは、多くの場合困難である。したがって、顕微鏡スライドが、焦点面の異なるいくつかの垂直レイヤーにてスキャンすなわち、デジタル化され、垂直レイヤーのそれぞれが別個の垂直スライド画像を構成する。図示の実施の形態においては、顕微鏡スライドが5つの別個の垂直レイヤーにてスキャンされ、これら5つのレイヤー0~4のそれぞれについてバーチャルスライドが生成され、保存される。さらに、各レイヤーについての垂直軸本明細書においてZ軸とも称する方向のオフセットが、各レイヤーについてのバーチャルスライドと垂直軸方向のオフセット716とからなる複合画像ファイルを生成するため、保存される。したがって、クライアントビューアが、レイヤー0の画像712とレイヤー1の画像714との間に位置する現閲覧レイヤー712など、Z軸において5つあるレイヤーのうちの2つのレイヤーの間の閲覧を要求したとき、直上のレイヤーおよび直下のレイヤーが、要求された垂直レベルについての閲覧をユーザに提供すべく補間される。図8Bは、本発明の一実施の形態による三次元バーチャルスライドスキュー720を示したブロック図である。垂直軸について現閲覧レベルを補間することの利点は、得られる現在の閲覧をスキューできる点にある。例えば、レイヤー0の画像710からの画像ピクセルを或る一方向にずらすことができ、レイヤー1の画像714からの画像ピクセルを、反対方向にずらすことができる。この結果、得られる現在の閲覧レベルの画像が、実際のスキャン方向への角度を近似する視点をもたらすことになる。三次元バーチャルスライドのスキューを操作することによって、ユーザは、好都合にも、スライド上の対象組織または細胞の回転三次元画像を見ることができる。図8Cは、バーチャルスライドビューア70内へと作りこまれた本発明の一実施の形態による典型的な三次元バーチャルスライド閲覧ウインドウを示したスクリーンショットである。図示の実施の形態においては、表示域画像540が、直上の画像レイヤーと直下の画像レイヤーとから補間された現在の閲覧レベルを表示している。垂直方向のレイヤーの奥行きについてのスライダコントローラ730によって、ユーザは、表示域の表示をZ軸に沿って変化させることができる。さらに、スキューコントローラ732によって、ユーザは、表示域内のバーチャルスライド画像について、スキュー方向およびスキューの量を動的に変化させることができる。一実施の形態においては、スキュー制御ウインドウ内の十字線をドラッグすることによって、三次元の視点を変化させることができる。好都合には、暗い影の円が、対象物例えば、白い円に対する視点例えば、十字線の関係を示している。典型的な実施の形態以下で、本発明の典型的な実装例を、図9A~9Fに関して説明する。この典型的な実施の形態は、あくまで例として説明されるものであり、これまでに記載し添付の特許請求の範囲にも記載される本発明の広がりおよび技術的範囲を限定するものとして解釈するべきではない。図9A~9Fは、バーチャル顕微鏡スライド画像を閲覧するための典型的な実施の形態を示したブロック図である。図9Aは、バーチャルスライド閲覧システムの各コンポーネントおよびそれらの間のインターフェイスを、下記のとおり説明している。図示の実施の形態は、デジタル化スキャンによる顕微鏡スライドバーチャルスライドの閲覧および管理のためのコンピュータシステムを含んでいる。このコンピュータシステムは、バーチャルスライド情報を保存する1つ以上のサーバ装置、およびスライド情報の閲覧に使用される1つ以上のクライアント装置を有している。システム内のコンピュータは、TCP/IPインターネットで使用される標準的なネットワークプロトコルによるHTTP要求を使用して通信する。システムのコンピュータは、互いに物理的に近くにあって構内通信網LANによって通信してもよく、あるいは物理的に離れていて広域通信網WANによって通信してもよい。このシステムの重要な特徴は、WANにおいて優秀な性能を示す点にあり、すなわちLANの装置間帯域幅を必要としない点にある。サーバ装置は、典型的には、インテル社Intelのアーキテクチャのプロセッサを特徴として備え、マイクロソフト社MicrosoftのウインドウズWindows登録商標またはリナックスLinux登録商標を動作させる強力なPCである。システムのアーキテクチャは、サーバの実装の詳細とは無関係である。システムのすべてのサーバコンポーネントは、1つのサーバ装置に同居してもよく、あるいは性能向上または保守性を考慮して別個独立であってもよい。このシステムは、2つの閲覧環境を提供する。クライアント閲覧インターフェイスは、簡単かつ簡潔なグラフィカルユーザインターフェイスGUIを提供するスタンドアロンの閲覧プログラムイメージスコープImageScopeを使用する。ウェブ閲覧インターフェイスは、任意の標準的なインターネットブラウザを使用し、クライアント側にアプレット、プラグイン、または他のソフトウェアを必要としない。クライアント閲覧インターフェイスは、任意のインテルアーキテクチャのコンピュータ上で、マイクロソフトウインドウズの任意のバージョン上で動作する。このシステムの特徴は、クライアント装置の構成とは無関係である。ウェブ閲覧インターフェイスは、そのような環境がHTMLページの処理およびJPEG画像の表示という標準的なウェブブラウザの能力を提供する限りにおいて、あらゆるコンピュータ上で、あらゆるオペレーティングシステムのあらゆるバージョン上で動作する。A‐イメージサーバImageServer装置このコンピュータは、バーチャルスライド画像を収容し、スライドデータへのアクセスのために使用されるネットワークアプリケーションプログラムインターフェイスAPIを提供する。この装置は、インテル‐アーキテクチャのコンピュータであってマイクロソフトウインドウズまたはリナックス登録商標を動作させており、典型的には、かなりのメモリキャッシュ用および大量のディスク記憶領域バーチャルスライドの保存用を装備する強力なPCである。B‐ウェブサーバ装置このコンピュータは、ウェブインターフェイスを使用してバーチャルスライドデータにアクセスするために使用されるウェブサイトを収容している。ウェブビューアWebViewerソフトウェアが、ウェブサーバに一体化されている。この装置は、マイクロソフトウインドウズおよびマイクロソフトインターネットインフォメーションサーバIISを動作させるインテル‐アーキテクチャのコンピュータであってよく、あるいはアパッチApacheを動作させる任意のアーキテクチャのコンピュータであってよい。ウェブサーバ装置が、イメージサーバ装置と同じであることも可能である。C‐バーチャルスライド画像ファイルバーチャルスライドは、典型的には200MB~4GBのサイズの別個独立のファイルとして保存される。イメージサーバ装置は、容量および堅牢性の理由で、複数の別個独立のディスクからなる冗長アレイRAIDを備えて構成されることが多い。D‐データベース認証用のデータおよび注釈を含むバーチャルスライド情報が、SQLデータベースに保存される。このデータベースは、通常はイメージサーバ装置に位置するが、必ずしもそのようである必要はない。典型的な実装例は、マイクロソフトデータベースエンジンMSDEまたはマイクロソフトSQLサーバを使用する。データベースへのアクセスは、システムの一部として提供されるサービスを経由する。このサービスへのインターフェイスは、TCP/IPによるHTTPであり、データベースアクセスの分散を可能にする。E‐イメージサーバImageServerイメージサーバは、バーチャルスライドデータへのアクセスのためのネットワークAPIを提供するスタンドアロンのアプリケーションである。イメージサーバは、バーチャルスライド画像ファイルにアクセスするとともに、認証および注釈データへのアクセスのため、データベースへのインターフェイスを有している。F‐イメージスコープImageScopeビューアイメージスコープは、スライド情報の閲覧のために簡単かつ簡潔なグラフィカルユーザインターフェイスを提供するスタンドアロンのアプリケーションである。イメージスコープは、イメージサーバのネットワークAPIを利用してイメージサーバとやり取りし、あるいはバーチャルスライドファイルを直接読み出すことができる。G‐ウェブビューアWebViewerウェブビューアソフトウェアは、スライド情報を閲覧するためのHTMLユーザインターフェイスをウェブブラウザに届けるため、標準的なウェブサーバのもとで動作する。HTMLページは、ウェブブラウザにイメージサーバからのJPEG画像情報を要求させる画像タグ<IMG>を含んでいる。HTMLページとJPEG画像の組み合わせが、ウェブビューアインターフェイスを構成する。H‐ウェブブラウザ任意のプラットフォーム上のあらゆる標準的なウェブブラウザを、ウェブビューアを利用してバーチャルスライドデータを閲覧すべく使用することができる。X‐画像ブロックAPIイメージサーバは、バーチャルスライドファイルのブロックにアクセスするため、TCP/IPによるHTTPメッセージインターフェイスをサポートしている。これらのブロックは、イメージビューアクライアント側によって解凍され、処理される。Y‐画像サブ領域APIイメージサーバは、バーチャルスライドファイルのサブ領域にアクセスするため、TCP/IPによるHTTPメッセージインターフェイスをサポートしている。これらの領域は、イメージサーバサーバ側によって解凍および処理され、JPEG画像として再圧縮されてブラウザへと送信される。Z‐ウェブサーバへのHTMLインターフェイスこれは、ウェブブラウザとウェブサーバとの間の標準的なTCP/IPによるHTTPインターフェイスであって、ブラウザへとHTMLページを届けるために使用される。ウェブビューアが、ページの動的な生成、および応答データの処理を行なう。図9Bは、イメージサーバの内部の実装の詳細を、以下に説明するとおり示している。イメージサーバは、バーチャルスライド画像データへのアクセスのため、クライアントにネットワークAPIを提供するスタンドアロンのアプリケーションである。クライアントは、画像ブロック圧縮された生の画像データまたは画像領域解凍され、拡大縮小され、変形され、フィルタ処理され、JPEGフォーマットへと再圧縮された画像データにアクセスすることができる。さらに、種々の画像属性寸法、説明文、などおよび注釈情報へのアクセスも提供される。イメージサーバは、複数のクライアントに同時にサービスを提供することができ、画像データへのアクセスを高速化するために複数のメモリキャッシュを使用する。サーバへの要求はすべて、状態と無関係statelessである。要求は、TCP/IPによってHTTPで行なわれる。HTTP1.1の要求パイプラインがサポートされている1つのソケット接続によって複数の要求を順次に行なうことができる。イメージサーバは、クライアントからの新規ソケット接続を受け入れて、すべてのクライアント要求を管理する接続マネージャコンポーネントを含んでいる。各クライアント要求は、任意により、HTTP認証ヘッダを含むことができる。このヘッダは、ウェブブラウザユーザが、ユーザID/パスワード認証情報を入力したときおよびイメージスコープなどのスタンドアロンクライアントプログラムによって生成される。接続マネージャは、届いた要求のすべての認証情報を検証する。認証は、ディレクトリレベルで実行される。いくつかのディレクトリはパブリックであってよく認証が要求されない、他のディレクトリは、当該ディレクトリ内のあらゆる画像を閲覧可能にする前に、明示的な認証を要求することができる。A‐接続マネージャコンポーネントが、クライアントからの新規ソケット接続を受け入れ、すべてのクライアント要求を管理し、認証の確認を実行する。B‐各要求すべての接続は状況と無関係であるにおいてクライアントが、HTTP認証ヘッダ内にユーザID/パスワード情報を供給することによって、認証証明を提示する。C‐要求ごとに認証データベースにアクセスしなくてもよいよう、認証キャッシュが、イメージサーバによって保持される。このキャッシュは、定期的に新規の接続が確立されたときに書き換えられ、あるいは明示的にリセットRESET要求が受信されたときに書き換えられる。D‐データベースサービスが、データベースへのインターフェイスを提供する。このサービスは、HTTP要求を受け入れ、データベースをイメージサーバとは別個の装置に配置できるようにする。このサービスは、データベース情報にアクセスするために標準的なSQL要求を使用する。E‐認証および注釈の情報を保存するため、SQLデータベースが使用される。このデータベースは、通常は、マイクロソフトデータベースエンジンMSDEを使用して実装されるが、SQLサーバであってもよく、あるいは他の任意のSQL準拠のデータベースであってよい。F‐クライアントによって画像情報要求が行なわれ、画像の寸法、説明文、およびピラミッド構造などの属性が返される。情報要求は、データを返すためにイメージオブジェクトImageObjectのプロパティpropertiesを使用する。G‐イメージサーバによって管理される別個のバーチャルスライド画像のそれぞれについて、イメージオブジェクトがインスタンス作成され、バーチャルスライドとやり取りするためのプロパティおよび方法が提供される。性能上の目的で、最近アクセスされたオブジェクトのキャッシュが保持される。イメージオブジェクトは、バーチャルスライドの詳細な実装からアプリケーションを切り離すため、システム全体において使用される。H‐バーチャルスライドファイルへのアクセスをカプセル化encapsulateするため、イメージオブジェクト内にファイルオブジェクトFileObjectがインスタンス作成され、そのようなファイルとやり取りするためのプロパティおよび方法が提供される。I‐性能上の目的で、ファイル情報キャッシュが、すべてのファイルオブジェクトにわたって保持される。これにより、要求がなされたとき、最近アクセスされたファイルについてのすべての情報を再ロードする必要なく、イメージオブジェクトをインスタンス作成し、破壊することが可能である。ファイル情報キャッシュは、ファイルオブジェクトがインスタンス作成されたときに定期的に書き換えられ、あるいは明示的にリセット要求が受信されたときに書き換えられる。J‐バーチャルスライドファイル情報にアクセスするため、I/Oライブラリが、ファイルオブジェクトによって使用される。このライブラリは、タグ付き画像ファイルフォーマットTIFFファイルヘッダの詳細をカプセル化している。K‐バーチャルスライド画像ファイルは、通常のファイルと同様にイメージサーバ装置上に保存されるたとえ、きわめて大きいファイルであっても。L‐ブロック要求は、画像ファイルブロックを直接デコードできるクライアントすなわち、イメージオブジェクトを含んでいるクライアントによってなされる。これは、スキャンスコープビューアならびにアルゴリズムフレームワークAlgorithmFrameworkを含んでいる。ブロック要求は、直接ファイルオブジェクトへとイメージオブジェクトを通過し、I/Oライブラリへと渡される。ブロック要求は、サーバにおいて必要とされる処理がきわめて少ないため高速であり、バーチャルスライド画像の元のJPEG2000圧縮がクライアント/サーバインターフェイスを横断して保たれるため、高密度である。M‐性能上の目的で、ブロックキャッシュが、最近使用MRU基準にもとづき、すべてのファイルオブジェクトを横断して保持される。ブロックキャッシュの大きさは、イメージサーバ装置上に構成されたメモリの量の関数であり、イメージサーバプロセスに渡されたパラメータによる。N‐領域要求は、画像ファイルブロックを直接デコードすることができないクライアントウェブブラウザ、などによってなされる。領域が、画像の任意のサブサーフェイス領域を指しており、画像ファイルまたは画像ファイルが取得されたやり方についての固定の属性ではないことに、注意すべきである。この点で、ここに記載の典型的な実施の形態は、画像データがタイルとして取得されてタイルとして保存されていて、タイルが画像の物理的なプロパティである他のシステムと、根本的に相違している。画像のサブ領域は、画像内の任意のX,Y位置について、任意の解像度および任意の寸法で要求することができる。領域は、JPEG2000データを理解できないクライアントとの互換性のため、JPEG画像としてエンコードされて返される。領域要求は、サーバにおいて必要とされる前処理の量ゆえにブロック要求よりも低速であり、画像データがJPEG2000ではなくJPEGにエンコードされて返されるため、ブロック要求よりも密度が低い。O‐さまざまな圧縮機構をカプセル化するため、コーデックオブジェクトCodecObjectが、イメージオブジェクトとともにインスタンス作成される。バーチャルスライド画像については、通常は、高い画像忠実度ゆえJPEG2000が好ましいが、JPEGおよびLZWならびに生の画像圧縮なしもサポートされる。P‐性能上の目的で、領域キャッシュが、最近使用基準にもとづき、すべてのイメージオブジェクトを横断して保持される。領域キャッシュの大きさは、イメージサーバ装置上に構成されたメモリの量の関数であり、イメージサーバプロセスに渡されたパラメータによる。Q‐画像についての注釈情報を要求および更新するため、注釈要求がクライアントによってなされる。注釈は、XMLにて保存され、データベースサービスへとなされた要求によって、データベースからクライアントへと直接、ブロブblobとして返される。クライアントは、適切な認証を有している場合に、画像についての注釈情報を更新することができる。W‐注釈データインターフェイスクライアントがHTTP要求を行い、応答としてXMLフォーマットの画像注釈データを受け取る。さらに、注釈データを、XMLフォーマットの画像注釈データを含んでいるHTTP投稿によって、更新することができる。X‐画像ファイル情報インターフェイスクライアントがHTTP要求を行い、画像属性を取得するためのXMLフォーマットの応答データを受け取る。Y‐画像ブロックインターフェイスクライアントがHTTP要求を行い、応答として画像ファイルブロックを受け取る。ブロックは、X,Y位置およびレベルによって要求される。クライアントが、画像ファイルブロックの解凍JPEG2000コーデックを使用および適切な解像度への拡大縮小を担当する。Z‐画像領域インターフェイスクライアントがHTTP要求を行い、応答としてJPEG画像を受け取る。領域は、画像の任意のサブ領域であり、X,Y位置および解像度ならびに所望の寸法によって要求される。JPEG2000の解凍および適切な解像度への拡大縮小は、イメージサーバプロセスによってなされる。図9Cは、イメージスコープビューアの内部の実装の詳細を、以下に説明するとおり示している。イメージスコープは、スライド情報の閲覧のために簡単かつ簡潔なグラフィカルユーザインターフェイスを提供するスタンドアロンのアプリケーションである。イメージスコープは、イメージサーバのネットワークAPIを利用してイメージサーバとやり取りし、あるいはバーチャルスライドファイルを直接読み出すことができる。イメージスコープは、きわめて大きなバーチャルスライドについてのリアルタイムでの視点移動および拡大縮小、複数の同時画像および表示窓の同期のサポート、JPEG2000ウェーブレットの画像品質、性能を改善するための予測によるデータの先読み、性能向上のためのブロックおよび領域のキャッシュ、リアルタイムで調節可能なガンマRGBカラーマッピング、コンボリューションフィルタのリアルタイム適用、リアルタイムでの直角変形90°回転および鏡像反転、レイヤーによる注釈の表示および編集のサポート、バーチャル顕微鏡カンファレンスVMCのサポート、および複数のZ軸スキャンにて得たスライドデータの3D閲覧、など、バーチャルスライドの精査を容易にするための独自の特徴を提供する。イメージスコープは、その機能の大部分をビューポートviewportと呼ばれるアクティブエックスActiveXコントローラにカプセル化する新規なアーキテクチャで実装される。ビューポートコントローラは、バーチャルスライド閲覧能力を提供するため、さまざまなアプリケーションに容易に組み込むことができる。ビューポートコントローラは、性能を最適化するため広範囲にわたるキャッシュおよび先読みの技法を使用する。アプリケーションは、性能の最大化および利用可能なメモリの活用のため、オブジェクト間キャッシュを共有する複数の表示域をインスタンス化できる。ビューポートそのものがイメージオブジェクトをカプセル化し、次にイメージオブジェクトが、ファイルオブジェクトをカプセル化し、イメージオブジェクトおよびファイルオブジェクトが、イメージサーバプログラムと共有される。イメージスコーププログラムおよびビューポートコントローラの重要な属性は、きわめて大きいバーチャルスライド画像を、ネットワーク帯域幅が比較的低速300Kである広域通信網を介して閲覧できるという能力にある。この理由のため、画面の書き換えは決して同時性ではなく、代わりにビューポートは、現在キャッシュから利用可能である画像ビューの最良のバージョンを表示し、このビューのますます高い解像度のバージョンをイメージサーバから取り出すように継続的に試み、それがなされると画面を更新する。エンドユーザにとっての効用は、応答を感じることができ、接続の帯域幅を意識することがないという点にある。A‐イメージスコープアプリケーションは、バーチャルスライドへのアクセスのためのグラフィカルユーザインターフェイスGUIを収容し、ビューポートアクティブエックスコントローラの複数のインスタンスのための容器として機能する。B‐GUIスクリーンマネージャは、イメージスコーププログラムの主たる論理をカプセル化し、バーチャルスライド表示窓ならびにすべてのキーボードおよびマウス入力を管理する。C‐ビューポートアクティブエックスコントローラこのコントローラのプロパティおよび方法は、バーチャルスライドへのすべてのアクセスをカプセル化する。コントローラのウインドウが、スライド情報を表示する表示窓の表面である。D‐レンダリングエンジンが、ビューポートコントローラの核心である。このエンジンは、任意の位置、寸法、および解像度におけるバーチャルスライド画像の任意の閲覧の最良のバージョンを構築するため、キャッシュされたデータを使用する。より良いバージョンが入手可能であるより多くのデータがイメージサーバから取り出されるとき、エンジンは、現在表示されている画面を更新する。E‐バーチャルスライド画像をカプセル化すべく、ビューポートコントローラによってイメージオブジェクトがインスタンス作成され、バーチャルスライドとやり取りするためのプロパティおよび方法が提供される。F‐イメージオブジェクトは、領域配置のためのロジックを含んでおり、バーチャルスライドの任意の領域を所望の任意のレベルの解像度で描く。このロジックは、先読みスレッドprefetchthreadによって惹起されたときなど、同期的必要な画像情報を要求するであってよく、あるいはレンダリングエンジンによって惹起されたときなど、非同期入手できる画像情報のみを使用するであってよい。G‐コーデックオブジェクトが、種々の圧縮機構をカプセル化するため、イメージオブジェクトとともにインスタンス作成される。バーチャルスライド画像については、通常は、高い画像忠実度ゆえJPEG2000が好ましいが、JPEGおよびLZWならびに生の画像圧縮なしもサポートされる。H‐バーチャルスライドファイルへのアクセスをカプセル化するため、イメージオブジェクト内にファイルオブジェクトがインスタンス作成され、そのようなファイルとやり取りするためのプロパティおよび方法が提供される。ファイルオブジェクトは、リモートTCP/IPライブラリを介してイメージサーバからアクセスされるまたはローカルI/Oライブラリを介してローカルのファイルシステムからアクセスされるであってよいバーチャルスライドファイルについて、場所に依存しないアクセスを可能にする。I‐TCP/IPライブラリが、イメージサーバへのネットワークインターフェイスをカプセル化するため、ファイルオブジェクトによって使用される。このライブラリは、サーバへのブロックインターフェイスを使用する。J‐I/Oライブラリが、ローカルのバーチャルスライドファイルにアクセスするためファイルオブジェクトによって使用される。このライブラリは、TIFFファイルヘッダタグ付き画像ファイルフォーマットの詳細をカプセル化している。K‐バーチャルスライド画像ファイルをローカルに保存でき、ビューポートを使用してアクセスするそして、イメージスコープを使用して閲覧することができる。L‐性能上の目的で、ブロックキャッシュが、最近使用MRU基準にもとづき、すべてのファイルオブジェクトを横断して保持されるこのキャッシュは、1つのプログラム内の複数のビューポートにまたがる。ブロックキャッシュの大きさは、イメージスコープ装置上に構成されたメモリの量の関数であり、イメージスコーププログラムに渡されたパラメータによる。M‐性能上の目的で、ファイル情報キャッシュが、すべてのファイルオブジェクトを横断して保持されるこのキャッシュは、1つのプログラム内の複数のビューポートにまたがる。N‐性能上の目的で、領域キャッシュが、最近使用MRU基準にもとづき、すべてのイメージオブジェクトを横断して保持されるこのキャッシュは、1つのプログラム内の複数のビューポートにまたがる。領域キャッシュの大きさは、イメージスコープ装置上に構成されたメモリの量の関数であり、イメージスコーププログラムに渡されたパラメータによる。O‐ビューポートは、リアルタイムでの直角変形90°回転および鏡像反転をサポートする。これらの変形は、レンダリングエンジンにて適用される。P‐ビューポートは、所望の任意の解像度へのリアルタイムでの拡大縮小をサポートする。この能力は、バーチャルスライド画像レベルの上に作られる。拡大縮小は、レンダリングエンジンに作り込まれる。Q‐ビューポートは、リアルタイムでのフィルタ処理をサポートし、所定またはカスタム設定の5×5のコンボリューションカーネルを画像に適用できる。フィルタ処理は、レンダリングエンジンに作り込まれる。R‐ビューポートは、リアルタイムでのガンマ調節をサポートし、実際に表示されるピクセルへのRGB値のカラーマッピングを、調節できるようにする。この能力は、バーチャルスライドが閲覧されるときの環境光およびモニタ特性の相違を補償するために、きわめて重要である。ガンマ調節は、レンダリングエンジンに作り込まれる。S‐ビューポートは、注釈レイヤーの表示および編集をサポートする。注釈の表示は、レンダリングエンジンに作り込まれる。T‐ビューポートは、表示されているバーチャルスライドについての画像データをレンダリングエンジンの要求を先取りして動的に取り出す先読みスレッドを組み込んでなる。先読みのロジックが、現在のユーザの画像とのやり取りについて動きを割り出し、これを先読みを案内するために使用する例えば、ユーザが画像を右へとスクロールしている場合、さらに右側の新しい画像データが先読みされる。U‐イメージスコープは、GUIスクリーンマネージャとビューポートコントローラとの間に位置するVMCインターセプトVMCInterceptを含んでいる。VMCインターセプトは、ビューポートへのユーザ指令をVMCサーバへと伝達し、さらにVMCサーバからの指令を受け付けて、あたかもGUIスクリーンマネージャからのものであるようにビューポートへと供給する。X‐イメージサーバインターフェイスビューポート/ファイルオブジェクト/TCP/IPライブラリが、イメージサーバへのHTTP要求を生成し、応答としてバーチャルファイルブロックを受け取る。さらに、このインターフェイスは、画像属性を取り出すためにも使用される。Y‐VMCサーバインターフェイスMVCインターセプトが、VMCサーバへのHTTP要求を生成し、XMLフォーマットの応答を受け取る。このインターフェイスは、インターセプトした指令をVMCサーバへと渡すために使用されこのアプリケーションがセッションをリードしている場合、VMCサーバからの指令を受信するために使用されるこのアプリケーションが従である場合。図9Dは、ウェブビューアの各コンポーネントおよびそれらの間のインターフェイスを示し、以下に説明するとおりである。ウェブビューアソフトウェアは、標準的なウェブサーバの元で動作し、ウェブブラウザでスライド情報を閲覧するためのHTMLユーザインターフェイスを届ける。HTMLページは、ウェブブラウザにイメージサーバからのJPEG画像情報を要求せしめる画像タグ<IMG>を含んでいる。HTMLページとJPEG画像との組み合わせが、ウェブビューアインターフェイスを構成する。ウェブビューアインターフェイスの重要な特徴は、追加のアプレット、プラグイン、または他のソフトウェアを一切必要とせず、あらゆる標準的なウェブブラウザで利用できる点にある。これにより、きわめて可搬性に富んだ事実上あらゆるプラットフォームで利用できるものとなり、新たなユーザも、すぐにバーチャルスライドデータを閲覧することができる。A‐ウェブブラウザあらゆるプラットフォーム上のあらゆる標準的なブラウザがサポートされる。B‐ウェブサーバ装置これは、通常は、ウインドウズのもとで動作するマイクロソフトインターネットインフォメーションサーバIIS、またはリナックス登録商標またはユニックスUnix登録商標のもとで動作するアパッチである。コーンシェルKornShellをサポートするプラットフォーム上でCGIインターフェイスをサポートするあらゆるウェブサーバが、サポートされる。C‐ウェブビューアスクリプトこれらは、ウェブサーバプロセスのもとで動作し、コモンゲートウェイインターフェイスCGIを通じて惹起される。これらのスクリプトは、常駐のコーンシェルインタプリタを必要とする。ウェブビューアが、ウェブ閲覧のためのインターフェイスを有するHTMLページを構築し、インターフェイスからの入力マウスのクリックを処理する。D‐CGIは、コモンゲートウェイインターフェイスであり、ウェブ環境にてHTTP入力を処理して出力としてHTMLページコンテンツを生成するプログラムを動作させるためにウェブサーバによって提供される標準的な機構である。E‐ウェブビューアは、バーチャルスライドの表示に使用されるHTMLを生成するHTMLページビルダモジュールを含んでいる。各スライド領域が、ウェブブラウザが複数の画像サブ領域を並行して取り出すことができ、さらに画像サブ領域をキャッシュすることができるよう、多数の小さな領域から構成される。F‐イメージサーバプロセスが、実際の画像データを提供する。画像属性が、HTMLページビルダによって要求される。HTMLページは、イメージサーバの画像データを要求するURLを含んでいるIMGタグのアレイを含んでいる。これらのURLは、イメージサーバへの領域インターフェイスを使用してJPEGサブ領域を要求し、次いで、これらサブ領域がウェブブラウザによって表示される。X‐ウェブブラウザとウェブサーバとの間のHTTPインターフェイスは、標準的である。HTTP要求がブラウザによって送信され、CGIを通じてウェブビューアへと導かれ、HTMLページが生成されてブラウザへと返される。Y‐ウェブビューアは、画像属性を取得するため、イメージサーバへと直接にHTTP要求を行なう。Z‐ウェブブラウザは、HTMLページに生成されたIMGタグから、イメージサーバへとHTTP要求を行なう。これらの要求は、イメージサーバへの領域インターフェイスを使用し、応答としてJPEG画像が返される。図9Eは、バーチャルスライド閲覧システムにおける注釈サポートの詳細な実装を、以下に説明するとおり示している。このバーチャルスライド閲覧システムは、画像ごとに複数のレイヤー上の複数の注釈をサポートしている。注釈は、i矩形領域、ii楕円形領域、iii特定のスポットを指し示す矢印、およびiv任意の数の頂点を有する任意の多角形領域、という4つの形態のうちの1つをとる注釈領域で構成される。領域は、常にバーチャルスライドのベースライン画像に対して配置され、解像度とは無関係であるすなわち、注釈領域が画像とともに拡大縮小される。各注釈領域は、1つ以上の属性を、key=valueのかたちで自身に関連付けて有することができる。keyのセットは、注釈内のすべての領域について同じである。注釈内のすべての領域がまとまって、注釈レイヤーを構成する。注釈レイヤーは、画像上へのプラスチックの重ね合わせと考えることができる。各レイヤーを個々に表示でき、あるいは隠すことができる。レイヤーは、1つ以上の属性を、key=valueのかたちで自身に関連付けて有することができる。注釈レイヤーについてのkeyは、任意の1つのレイヤーの領域についてのkeyと異なっていてもよい。表示域コントローラが、画像注釈の表示を管理するためのプロパティおよび方法を提供する。画像データが表示のためにフォーマットされるとき、有効にされている注釈レイヤーが画像上に描かれる。イメージスコープアプリケーションが、注釈を編集するためのGUIツール一式を提供する。これらのツールを使用し、ユーザは、表示域コントローラの表面上のバーチャルスライドに注釈領域を対話的に描くことができる。移動可能なウインドウが、注釈領域およびレイヤーに関する属性を入力するためのインターフェイスを提供する。画像についてのすべての注釈は、XML文字列として保存される。表示域コントローラがXML文字列をフォーマットし、これをローカルファイルとしてディスクに保存でき、あるいはデータベースへの保存のためにイメージサーバへと送信できる。同様に、注釈を、データベースまたはローカルファイルから取り出すことができる。A‐閲覧クライアント装置イメージスコープが動作しているコンピュータ。B‐イメージスコープビューア注釈の表示および編集のためのユーザインターフェイスを提供するアプリケーション。C‐イメージサーバ装置イメージサーバが動作しているコンピュータ。D‐イメージサーバアプリケーション注釈を含むバーチャルスライド画像データへのアクセスのためのネットワークAPIを提供するプロセス。E‐データベースこのSQLデータベース典型的には、MSDEまたはSQLサーバが、サーバ上に注釈情報を保存する。F‐イメージスコープのGUIスクリーンマネージャコンポーネントが、注釈の編集に使用される入力ツールおよびマウスの動きを管理する。G‐表示域コントローラが、注釈表示ロジックを含むバーチャルスライドへのすべてのアクセスをカプセル化する。注釈へのアクセスは、オープンAPIによって提供される。H‐ビューポート内の注釈ロジックが、バーチャルスライドについてのすべての注釈を、画像データ上に要求どおりに描く。I‐表示域コントローラのレンダリングエンジンが、表示のための画像領域を構成し、これが注釈表示ロジックへと渡される。J‐バーチャルスライドファイルそのものへのアクセスをカプセル化するため、イメージオブジェクトが、各表示域コントローラ内でインスタンス作成される。K‐イメージサーバと要求/応答の通信を行なうため、TCP/IPライブラリが、イメージオブジェクトによって使用される。L‐イメージサーバの接続マネージャが、新規のソケット接続を受け付け、クライアントからのすべての要求を管理する。M‐接続マネージャ内の認証レイヤーが、注釈についての要求を含む各要求について、認証証明を検証する。認証情報は、画像のための注釈レイヤーのそれぞれについて別個に保持され、すなわち、或る何人かのユーザが、或る幾つかのレイヤーについて読み出しのみのアクセスを有し、他のレイヤーについて更新アクセスを有してもよい。N‐注釈要求は、HTTPインターフェイスを使用してデータベースサービスに渡される。O‐データベースサービスは、イメージサーバとデータベースとの間のインターフェイスを提供し、データベースを別個の装置上に配置してもよいようにする。P‐イメージスコープ内のVMCインターセプトが、表示域コントローラへのすべての指令をVMCサーバへと導きユーザが、セッションのリーダである場合、さらに/あるいはVMCサーバからの指令をビューポートへと導くユーザが、セッションの追従者である場合。これは、注釈の表示および編集の指令を含んでいる。図9Fは、以下に説明するバーチャルスライド閲覧システムにおけるVMCサポートの内部の実装の詳細を示している。VMCは、複数のユーザが同時に閲覧セッションに参加して同じバーチャルスライドを閲覧する技法である。各ユーザのビューが他のユーザのビューに同期され、すなわち全員が同じ情報を眺めることになる。あらゆる瞬間について、各セッションにおいては1人のユーザがセッションリーダであり、他のユーザは追従者である。リーダが、視点の移動および拡大縮小、ビューの変更、注釈の作成、などを実行し、これらの指令のそれぞれが、すべての追従者に伝達される。リーダは、いつでも、セッションのリーダシップを他の任意のユーザに譲り渡すことができる。追従者は、当該セッションのリーダになりたい旨をリーダに伝えることができる。VMCサーバが、各セッションについてリーダになることを希望する追従者の待ち行列を保持する先入れ先出しFIFOの順番で。リーダは、セッションのリーダシップを他のユーザに渡そうとするときに、特定のユーザを明示的に指名することができ、あるいは先頭で待っている追従者へとリーダシップを渡してもよい。VMCセッションは、VMCサーバ装置を使用して確立される。VMCサーバへと接続する最初のユーザが、セッションを生成し、説明用の名称を与え、パスワードを割り当てる。VMCサーバへと接続する後続のユーザは、説明用の名称によってセッションを特定でき、パスワードを入力することによって参加をすることができる。同時にVMCセッションに参加できるユーザの数に、制限はない。新規セッションを定めた最初のユーザが、最初のリーダになる。必要であれば、特定のVMCサーバへの接続のために認証を要求することができる。この認証は、サーバそのものにアクセスするためのものであり、個々のセッションは、固有のパスワードを最初に接続したユーザが確立したとおり有している。新たなユーザが進行中のVMCセッションに加わるとき、当該セッションのために現在開かれているあらゆる画像が、この新規ユーザのために開かれ、すべての表示窓が、当該セッションにおける現在の位置に同期させられる。セッションにおいて、リーダは、1つ以上のバーチャルスライドを開くことができる。それらのスライドは、当該セッションのすべてのユーザにとってアクセスできるイメージサーバ上になければならない。画像が開かれるとき、セッションの他のすべてのユーザも、その画像を同時に開く。イメージサーバは、VMCサーバと同じ装置であってよいが、必ずしも同じ装置である必要はなく、同じ場所に位置している必要もない。セッションリーダが画像を閉じるとき、その画像は、セッションのすべてのユーザについても閉じられる。セッションリーダは、セッションの一部である任意の画像において、任意の位置および任意の倍率へと視点の移動および拡大縮小を行なうことができる。他のすべてのユーザは、これに自動的に倣う。閲覧ウインドウの寸法および構成は、個々のユーザが寸法の異なるモニタを使用している可能性がある点などを考慮するため、各ユーザの制御下に残される。各画像の配置は、常に閲覧ウインドウの中心を基準にする。セッションにおいて、各ユーザのイメージサーバへの接続の帯域幅が異なっている可能性があり、この結果、視点移動および拡大縮小において、応答時間が異なる可能性がある。ビューポート更新の非同期の性質ゆえ、これらの操作において、最悪でも或るユーザが他のユーザと同じ解像度では画像ビューを眺めることができないより高解像度のデータがサーバから取り出されるまでだけであり、いずれのユーザも阻止されることがないようにされる。イメージスコープビューアのガンマ調節設備は、セッションのすべてのユーザについて同期されてはいない。これは、各ユーザが自身の好みに合わせて調節する余地を残している。これは、ガンマ調節が、通常は室内光およびモニタ温度ならびに個人の好みを補償するために行なわれるからであり、したがってリーダのガンマ設定をすべての追従者に渡しても意味がないからである。セッションリーダは、VMCセッションの一部として開かれたバーチャルスライドについて、注釈を有効および無効にすることができる。すべてのユーザが、同時に注釈を有効および無効にする。さらに、セッションリーダは、新規の注釈レイヤーおよび領域を生み出すことができる。セッションの各ユーザは、部分的に完成したレイヤーおよび領域を見る。これは、注釈が本質的に一時的である可能性があるため、イメージサーバ上の注釈データベースを通じて同期をするのではなく、リーダの注釈コマンドをすべてのユーザに伝達することによって、達成される。幾つかのセッションでは、1つの注釈レイヤー上で協働リーダシップをお互いに渡すことによってでき、他のセッションにおいては、各ユーザが自身の注釈レイヤーを有することができる。この決定は、セッションのユーザの責任である。ユーザは、いつでもVMCセッションを離れることができる。ユーザがセッションを離れるとき、当該セッションの一部であったすべての画像表示窓が閉じられる。そのユーザがセッションリーダであった場合、待ち行列中の次の追従者が、セッションリーダになる。リーダになるのを待っている追従者がいない場合、リーダはランダムに選ばれるいずれの瞬間においても、1ユーザがセッションリーダでなければならない。最後のユーザがVMCセッションを離れることによって、当該セッションが終息する。サーバは、終息したセッションについてはいかなる情報も保持しない。A‐閲覧クライアント装置各ユーザがイメージスコープビューアを動作させているコンピュータ。B‐イメージスコープビューアVMCセッションのためのクライアントインターフェイスを実装するアプリケーションプログラム。C‐VMCサーバ装置VMCサーバアプリケーションが動作しているコンピュータ。このコンピュータは、VMCセッションにおいて閲覧される画像を提供するイメージサーバ装置と同じであってよいが、必ずしも同じである必要はない。D‐VMCサーバプロセスイメージスコープビューアを一体に相互接続することによってVMCセッションを管理するアプリケーション。各クライアントは、TCP/IPによるHTTP要求を使用してVMCサーバと通信する。E‐データベースSQLデータベース典型的には、MSDEまたはSQLサーバが、認証情報を保存する。これがVMCサーバへとアクセスするための認証情報であり、イメージサーバ装置上の画像にアクセスするために必要とされる認証情報と相違していてよいことに、注意すべきである。F‐イメージスコープのGUIスクリーンマネージャが、各ユーザに彼らのセッションを管理するためのインターフェイスを提供する。ユーザがセッションの追従者である場合、当該セッションにおいて開かれている画像の視点移動または拡大縮小あるいは注釈の作成を、行なうことはできない。G‐VMCインターセプトが、GUIスクリーンマネージャと表示域コントローラとの間に位置し、セッションリーダによって与えられたすべての指令をVMCサーバへと導く。セッションの追従者によって与えられたあらゆる指令は、無視される。さらに、VMCインターセプトは、セッションの追従者へのVMCサーバからの指令を受信し、あたかもGUIスクリーンマネージャからのものであるように表示域コントローラへと導く。H‐表示域コントローラは、バーチャルスライドへのすべてのアクセスをカプセル化する。このコントローラのプロパティおよび方法は、GUIとバーチャルスライドとの間ならびにVMCセッションとバーチャルスライドとの間のインターフェイスである。各表示域コントローラが、VMCセッションの各画像についてイメージサーバへの接続を行なう点、およびそれらの接続がVMCサーバへの接続とは別個である点に、注意すべきである。I‐VMCサーバプログラム内の接続マネージャが、すべてのソケット接続を取り扱い、すべてのクライアント要求を処理する。永続のソケット接続が、各VMCセッションの動作中のクライアントのそれぞれへと保たれる通常のHTTP1.1要求と異なり、これらの接続はタイムアウトしない。これにより、セッションリーダからの指令を、各追従者のVMCインターセプトへと非同期で送り返すことができる。J‐VMCセッションマネージャが、各VMCセッションにおける指令の流れを制御する各VMCサーバプロセスが、複数のVMCセッションを同時に管理してもよい。K‐VMCセッションテーブルが、現在のリーダ、すべての画像表示窓の現在の状態、リーダになることを希望する追従者の待ち行列、など、活動中の各VMCセッションおよび各セッション中のすべてのユーザについて、情報を保存する。L‐接続マネージャの認証レイヤーが、VMCサーバへと接続する新規ユーザのそれぞれについて認証証明を検証する。この認証は、サーバへのアクセスを可能にし、次いでユーザは、既存のセッションに参加するために正しいパスワードを提示しなければならない。M‐データベースサービスが、VMCサーバとデータベースとの間のインターフェイスを提供し、データベースを別個の装置上に配置してもよいようにする。X‐イメージスコープクライアントVMCインターセプトとVMCサーバプログラムとの間のインターフェイスは、TCP/IPによるHTTPである。各クライアントは、VMCセッションの間、サーバへの恒久的なソケット接続を有する。セッションリーダであるクライアントが、サーバへと要求を送信し、応答を受信する。セッションの追従者であるクライアントは、サーバからの要求を受信し、応答を送信する。図10は、本明細書に記載の種々の実施の形態に関連して使用できる典型的なコンピュータシステム950を示したブロック図である。例えば、コンピュータシステム950を、すでに述べたとおりバーチャルスライドサーバ、ウェブサーバ、または閲覧クライアントと関連して使用することができる。しかしながら、当業者にとっては明白であるとおり、他のコンピュータシステムおよび/またはアーキテクチャも使用可能である。コンピュータシステム950は、好ましくは、プロセッサ952などの1つ以上のプロセッサを備えている。入/出力を管理するための補助プロセッサ、浮動小数点演算操作を行なうための補助プロセッサ、信号処理アルゴリズムの高速な実行のために適したアーキテクチャを有する特殊目的のマイクロプロセッサ例えば、デジタルシグナルプロセッサ、主処理システムに従属するスレーブプロセッサ例えば、バックエンドプロセッサ、デュアルまたは複数プロセッサシステムのための追加のマイクロプロセッサまたはコントローラ、あるいはコプロセッサなど、追加のプロセッサを設けてもよい。このような補助的なプロセッサは、別個のプロセッサであってよく、あるいはプロセッサ952と統合されてもよい。プロセッサ952は、好ましくは通信バス954に接続される。通信バス954は、記憶領域とコンピュータシステム950の他の周辺コンポーネントとの間の情報の伝達を容易にするため、データチャネルを含むことができる。さらに、通信バス954は、データバス、アドレスバス、および制御バスなど図示されていない、プロセッサ952との通信に使用される信号一式を提供することができる。通信バス954は、例えばインダストリスタンダードアーキテクチャISA、拡張インダストリスタンダードアーキテクチャEISA、マイクロチャネルアーキテクチャMCA、ペリフェラルコンポーネントインターコネクトPCIローカルバス、あるいはIEEE488汎用インターフェイスバスGPIBやIEEE696/S‐100などの米国電気電子技術者協会IEEEによって広められた規格に準拠したバスアーキテクチャなど、任意の標準的または標準的でないバスアーキテクチャからなることができる。コンピュータシステム950は、好ましくは主メモリ996を備えており、さらに二次メモリ958を備えることができる。主メモリ996は、プロセッサ952上で動作するプログラムのためのインストラクションおよびデータの記憶領域を提供する。主メモリ996は、通常は、ダイナミックランダムアクセスメモリDRAMおよび/またはスタティックランダムアクセスメモリSRAMなどの半導体ベースのメモリである。半導体ベースの他の種類のメモリには、読み出し専用メモリROMを含み、シンクロナスダイナミックランダムアクセスメモリSDRAM、ラムバスRambusダイナミックランダムアクセスメモリRDRAM、強誘電体ランダムアクセスメモリFRAM登録商標、などがある。二次メモリ958は、任意により、ハードディスクドライブ960、および/または例えばフロッピー登録商標ディスクドライブ、磁気テープドライブ、コンパクトディスクCDドライブ、デジタル多用途ディスクDVDドライブなどのリムーバブルストレージドライブ962を備えることができる。リムーバブルストレージドライブ962は、広く知られたやり方で、着脱可能な記憶媒体964からの読み出し、および/または着脱可能な記憶媒体964への書き込みを行なう。着脱可能な記憶媒体964は、例えば、フロッピー登録商標ディスク、磁気テープ、CD、DVDなどであってよい。着脱可能な記憶媒体964は、好ましくは、コンピュータで実行可能なコードすなわち、ソフトウェアおよび/またはデータが保存されているコンピュータで読み取り可能な媒体である。着脱可能な記憶媒体964に保存されているコンピュータソフトウェアまたはデータは、電気通信信号978としてコンピュータシステム950に読み込まれる。他の実施の形態においては、二次メモリ958が、コンピュータプログラムまたは他のデータあるいはインストラクションをコンピュータシステム950へとロードできるようにするための他の同様の手段を備えることができる。そのような手段には、例えば、外部記憶媒体972およびインターフェイス970が含まれる。外部記憶媒体972の例としては、外部のハードディスクドライブまたは外部の光学式ドライブ、あるいは外部の光磁気ドライブがある。二次メモリ958の他の例には、プログラマブル読み出し専用メモリPROM、消去可能プログラマブル読み出し専用メモリEPROM、電気的に消去可能な読み出し専用メモリEEPROM、またはフラッシュメモリEEPROMに類似するブロック指向のメモリなど、半導体ベースのメモリが含まれる。さらには、リムーバブルストレージユニット972からコンピュータシステム950へとソフトウェアおよびデータを伝送できる他の任意のリムーバブルストレージユニット972およびインターフェイス970も含まれる。さらに、コンピュータシステム950は、通信インターフェイス974を含むことができる。通信インターフェイス974は、ソフトウェアおよびデータを、コンピュータシステム950と外部の装置例えば、プリンタ、ネットワーク、または情報源との間で伝送できるようにする。例えば、コンピュータソフトウェアまたは実行可能コードを、通信インターフェイス974を介してネットワークサーバからコンピュータシステム950へと伝送することができる。通信インターフェイス974の例としては、いくつか例を挙げると、モデム、ネットワークインターフェイスカードNIC、通信ポート、PCMCIAスロットおよびカード、赤外線インターフェイス、およびIEEE1394ファイアワイヤfire‐wireがある。通信インターフェイス974は、好ましくは、イーサネット登録商標IEEE802規格、ファイバーチャネルFiberChannel、デジタル加入者線DSL、非同期デジタル加入者線ADSL、フレームリレー、非同期転送モードATM、総合デジタルサービス網ISDN、パーソナル通信サービスPCS、伝送制御プロトコル/インターネットプロトコルTCP/IP、シリアル線インターネットプロトコル/ポイントトゥーポイントプロトコルSLIP/PPP、など、この業界で普及しているプロトコル規格を実装するが、専用または非標準のインターフェイスプロトコルを実装することも可能である。通信インターフェイス974を介して伝送されるソフトウェアおよびデータは、一般に、電気通信信号978の形式である。これらの信号978は、好ましくは、通信チャネル976を介して通信インターフェイス974へともたらされる。通信チャネル976が信号978を運ぶが、いくつか例を挙げると、ワイヤまたはケーブル、光ファイバ、従来からの電話線、携帯電話リンク、無線RFリンク、または赤外線リンクなど、種々の通信手段を使用して実装することができる。コンピュータで実行可能なコードすなわち、コンピュータプログラムまたはソフトウェアが、主メモリ996および/または二次メモリ958に記憶される。さらに、コンピュータプログラムを、通信インターフェイス974を介して受信して、主メモリ996および/または二次メモリ958に記憶することができる。そのようなコンピュータプログラムを実行することで、コンピュータシステム950は、すでに説明したとおり本発明のさまざまな機能を実行することができる。本明細書において、コンピュータで読み取り可能な媒体という用語は、コンピュータで実行可能なコード例えば、ソフトウェアおよびコンピュータプログラムをコンピュータシステム950へともたらすために使用されるあらゆる媒体を指して使用されている。それら媒体の例には、主メモリ996、二次メモリ958ハードディスクドライブ960、リムーバブル記憶媒体964、および外部の記憶媒体972を含む、および通信インターフェイス974に通信可能に接続される任意の周辺機器ネットワーク情報サーバまたは他のネットワーク装置を含むが含まれる。これらコンピュータで読み取り可能な媒体は、コンピュータシステム950に実行可能コード、プログラミングインストラクション、およびソフトウェアをもたらすための手段である。ソフトウェアを使用して実装される一実施の形態においては、当該ソフトウェアをコンピュータで読み取り可能な媒体に保存し、リムーバブルストレージドライブ962、インターフェイス970、または通信インターフェイス974によって、コンピュータシステム950にロードすることができる。そのような実施の形態においては、ソフトウェアが、電気通信信号978の形式でコンピュータシステム950へとロードされる。プロセッサ952によって実行されるとき、当該ソフトウェアが、本明細書にてすでに説明した本発明の特徴および機能を、プロセッサ952に実行せしめる。さらに、さまざまな実施の形態を、例えば特定用途向け集積回路ASICまたはフィールドプログラマブルゲートアレイFPGAなどのコンポーネントを使用して、ハードウェア主体で実装することも可能である。本明細書に記載の機能を実行できるハードウェア状態機械の実装も、当業者にとって明らかであろう。さらに、種々の実施の形態を、ハードウェアおよびソフトウェアの両者の組み合わせを使用して実装することも可能である。本明細書に示して詳しく説明した特定のシステムおよび方法は、本発明の前記目的を完全に達成することができるが、本明細書に提示した説明および図面が本発明の現時点での好ましい実施の形態を示したものであって、本発明が広く想定する主題の代表であることを、理解すべきである。さらに、本発明の技術的範囲が、当業者にとって自明になるであろう他の実施の形態を完全に包含しており、したがって本発明の技術的範囲は、添付の特許請求の範囲以外のなにものによっても限定されないことを、理解すべきである。"