(57)【要約】【課題】　画像を編集するためのシステムおよび方法を提供する。【解決手段】　各画像編集操作が、いくつかのパラメータで記述される。複数名のユーザが、画像のビット・マップ全体ではなく、少数のパラメータを共有することによって画像処理変更を共有することができる。編集リストは、画像変更を定義する複数のパラメータを記述する。編集リストのサイズは、非常に小さく、ネットワーク上の伝送および共同作業に理想的である。画像編集リストは、画像自体とは独立である。オリジナルのビットマップ画像から画像編集リストを切り離すことにより、他の利点も得られる。例えば、同一の編集リストを他の画像に適用することが可能であり、また複数の画像に同時に適用することも可能である。モディファイされた画像のレンダリングは、その後の時点で、必要なときにだけ行われることが可能である。共同編集の場合、伝送時間が大幅に短縮される。【選択図】　図４
2004064789.tif 000002
【特許請求の範囲】
【請求項１】
　ネットワークを介してデジタル画像を編集するコンピュータに実装されるプロセスであって、
　ネットワーク内の複数のクライアントにおいてモディファイされるべき画像を入力するプロセス動作と、
　第１のクライアントにおいて、前記画像に対して提案されるモディフィケーションを行うプロセス動作と、
　前記第１のクライアントにおいて前記提案されたモディフィケーションについての編集リストであって、前記画像に前記モディフィケーションを行うコマンドを収録する編集リストを生成するプロセス動作と、
　前記ネットワークを介して前記編集リストを第２のクライアントに伝送するプロセス動作と、
　前記第２のクライアントにおいて前記編集リストを前記画像に適用して前記画像をモディファイするプロセス動作と
　を実行するコンピュータを使用することを備えることを特徴とするコンピュータ実装プロセス。
【請求項２】
　前記入力するプロセス動作は、
　前記画像をコンピュータ可読媒体から入力するプロセス動作、
　前記画像をコンピュータ・メモリから入力するプロセス動作、および
　ネットワークを介して前記画像を受信することによって入力するプロセス動作
　のうちの１つを備えることを特徴とする請求項１に記載のコンピュータ実装プロセス。
【請求項３】
　前記モディファイするプロセス動作は、前記画像の空間的特性をモディファイするプロセス動作を備えることを特徴とする請求項１に記載のコンピュータ実装プロセス。
【請求項４】
　前記モディファイするプロセス動作は、前記画像の色特性をモディファイするプロセス動作を備えることを特徴とする請求項１に記載のコンピュータ実装プロセス。
【請求項５】
　前記モディファイするプロセス動作は、前記画像の空間的特性と色特性の組み合わせをモディファイするプロセス動作を備えることを特徴とする請求項１に記載のコンピュータ実装プロセス。
【請求項６】
　前記モディファイするプロセス動作は、前記モディフィケーション時に過渡的な画像を生成するプロセス動作を備えることを特徴とする請求項１に記載のコンピュータ実装プロセス。
【請求項７】
　前記過渡的な画像は、
　モディファイされるべき前記画像のビットマップ画像を表すキー・フレーム、
　前記画像をモディファイする空間変換を表す空間変換書式、
　前記画像をモディファイする色変換を表す色変換書式、
　前記画像をモディファイする空間変換と色変換の組み合わせを表す特別な変換書式、および
　前記空間変換書式、前記色変換書式、または前記特別な変換書式のどれにもマージすることができない変換を表す遷移変換書式
　のうちの１つを備えることを特徴とする請求項６に記載のコンピュータ実装プロセス。
【請求項８】
　前記空間的特性をモディファイする前記プロセス動作は、
　前記画像を回転させること、
　トランスレーションを使用して前記画像をモディファイすること、
　前記画像をトリミングすること、および
　前記画像のサイズ変更をすること
　のうちの少なくとも１つを備えることを特徴とする請求項３に記載のコンピュータ実装プロセス。
【請求項９】
　前記色特性を変更するプロセス動作は、
　画像の色を変更するプロセス動作、
　画像の輝度を変更するプロセス動作、
　画像のコントラストを変更するプロセス動作
　画像の色相を変更するプロセス動作、および
　画像の彩度を変更するプロセス動作
　のうちの少なくとも１つを備えることを特徴とする請求項４に記載のコンピュータ実装プロセス。
【請求項１０】
　前記第１のクライアントにおいて提案されたモディフィケーションを取り消すプロセス動作と、
　前記取り消された、提案されたモディフィケーションを前記編集リストから除去するプロセス動作と
　をさらに備えることを特徴とする請求項１に記載のコンピュータ実装プロセス。
【請求項１１】
　画像を編集するためのコンピュータに実装されるプロセスであって、
　サーバーにおいて少なくとも１つの画像を入力するプロセス動作と、
　前記少なくとも１つの画像を前記サーバーからホスティング・クライアント（hosting client）に送信するプロセス動作と、
　前記少なくとも１つの画像を前記ホスティング・クライアントにおいて編集するプロセス動作と、
　前記ホスティング・クライアントにおいて編集されている前記少なくとも１つの画像についての、それぞれに関係付けられる編集コマンドのリストを、前記少なくとも１つの画像が編集されている最中に、生成するプロセス動作と、
　編集コマンドの前記リストを前記ホスティング・クライアントから前記サーバーに送信するプロセス動作と、
　前記サーバーにおいて編集コマンドの前記リストを前記少なくとも１つの画像に関係付けるプロセス動作と
　を備えることを特徴とするコンピュータ実装プロセス。
【請求項１２】
　前記入力するプロセス動作は、
　前記画像をコンピュータ可読媒体から入力するプロセス動作、
　前記画像をコンピュータ・メモリから入力するプロセス動作、および
　ネットワークを介して前記画像を受信することによって入力するプロセス動作
　のうちの１つを備えることを特徴とする請求項１１に記載のコンピュータ実装プロセス。
【請求項１３】
　前記編集するプロセス動作は、前記画像の空間特性をモディファイするプロセス動作を備えることを特徴とする請求項１１に記載のコンピュータ実装プロセス。
【請求項１４】
　前記編集するプロセス動作は、前記画像の色特性をモディファイするプロセス動作を備えることを特徴とする請求項１１に記載のコンピュータ実装プロセス。
【請求項１５】
　前記編集するプロセス動作は、前記画像の空間特性と色特性の組み合わせをモディファイするプロセス動作を備えることを特徴とする請求項１１に記載のコンピュータ実装プロセス。
【請求項１６】
　前記モディファイするプロセス動作は、前記モディフィケーション時に過渡的な画像を生成するプロセス動作を備えることを特徴とする請求項１１に記載のコンピュータ実装プロセス。
【請求項１７】
　前記過渡的な画像は、
　モディファイされるべき前記画像のビットマップ画像を表すキー・フレーム、
　前記画像をモディファイする空間変換を表す空間変換書式、
　前記画像をモディファイする色変換を表す色変換書式、
　前記画像をモディファイする空間変換と色の変換の組み合わせを表す特別変換書式、および
　前記空間変換、前記色変換、または前記特別変換のどれにもマージすることができない変換を表す遷移変換書式
　のうちの１つを備えることを特徴とする請求項１６に記載のコンピュータ実装プロセス。
【請求項１８】
　前記空間的特性をモディファイする前記プロセス動作は、
　前記画像を回転させること、
　トランスレーションを使用して前記画像をモディファイすること、
　前記画像をトリミングすること、および
　前記画像のサイズ変更を行うこと
　の少なくとも１つを備えることを特徴とする請求項１３に記載のコンピュータ実装プロセス。
【請求項１９】
　前記色特性を変更するプロセス動作は、
　画像の色を変更するプロセス動作、
　画像の輝度を変更するプロセス動作、
　画像のコントラストを変更するプロセス動作
　画像の色相を変更するプロセス動作、および
　画像の彩度を変更するプロセス動作
　のうちの少なくとも１つを備えることを特徴とする請求項１４に記載のコンピュータ実装プロセス。
【請求項２０】
　前記少なくとも１つの画像を前記サーバーからホスティング・クライアントに送信するプロセス動作は、
　前記少なくとも１つの画像のオリジナルのサイズより小さいサイズで前記少なくとも１つの画像を送信するプロセス動作、および
　前記少なくとも１つの画像のオリジナルの解像度より低い解像度で前記少なくとも１つの画像を送信するプロセス動作
　のうつの少なくとも１つを備えることを特徴とする請求項１１に記載のコンピュータ実装プロセス。
【請求項２１】
　前記サーバーにおいて編集コマンドの前記リストを前記少なくとも１つの画像に適用して前記少なくとも１つの画像をモディファイするプロセス動作をさらに備えることを特徴とする請求項１１に記載のコンピュータ実装プロセス。
【請求項２２】
　前記ホスティング・クライアントにおいて編集コマンドの前記リストを前記少なくとも１つの画像に適用して前記少なくとも１つの画像をモディファイするプロセス動作をさらに備えることを特徴とする請求項１１に記載のコンピュータ実装プロセス。
【請求項２３】
　編集コマンドの前記リストは、
　２進形式、および
　ＸＭＬ形式
　のうちの１つで表現されることを特徴とする請求項１１に記載のコンピュータ実装プロセス。
【請求項２４】
　編集コマンドの前記リストは、キー画像状態のリストを備え、各キー画像状態は、最終のモディファイされた画像を実現するのに使用される過渡的な画像を定義する１組のデータ・フィールドを備えることを特徴とする請求項１１に記載のコンピュータ実装プロセス。
【請求項２５】
　ユーザが編集済み画像を保存する際に、編集コマンドの前記リスト内の前記モディフィケーションが適用されて、前記最終の編集済み画像が生成されることを特徴とする請求項１１に記載のコンピュータ実装プロセス。
【請求項２６】
　各キー画像状態は、
　モディファイされるべき前記画像のビットマップ画像を表すキー・フレーム、
　前記画像をモディファイする空間変換を表す空間変換書式、
　前記画像をモディファイする色変換を表す色変換書式、
　前記画像をモディファイする空間変換と色変換の組み合わせを表す特別変換書式、および
　前記空間変換、前記色変換、または前記特別変換のどれにもマージすることができない変換を表す遷移変換
　のうちの１つを備える１組のパラメータで記述されることを特徴とする請求項２４に記載のコンピュータ実装プロセス。
【請求項２７】
　前記ホスティング・クライアントにおいて編集されている前記少なくとも１つの画像のそれぞれに関係する編集コマンドの前記リストを、前記少なくとも１つの画像が編集されている最中に、取り消すプロセス動作をさらに備えることを特徴とする請求項１１に記載のコンピュータ実装プロセス。
【請求項２８】
　デジタル画像を編集するためのシステムであって、
　汎用計算デバイスと、
　前記計算デバイスによって実行可能なプログラム・モジュールを備えるコンピュータ・プログラムと
　を備え、前記計算デバイスは、
　モディファイされるべき画像を入力し、
　前記画像に対して提案されるモディフィケーションを行い、
　前記提案されたモディフィケーションについての編集リストであって、前記画像に対して前記モディフィケーションを行うためのコマンドを収録する前記変更の編集リストを生成し、かつ
　前記編集リストを前記画像に適用して前記画像をモディファイする
　ように前記コンピュータ・プログラムの前記プログラム・モジュールによって指図されることを特徴とするシステム。
【請求項２９】
　前記編集リストを適用する前記コンピュータ・モジュールは、前記編集リストを複数の画像に適用して前記画像をモディファイするサブ・モジュールを備えることを特徴とする請求項２８に記載のシステム。
【請求項３０】
　ネットワークを介してデジタル画像を編集するためのシステムであって、
　汎用計算デバイスと、
　前記計算デバイスによって実行可能なプログラム・モジュールを備えるコンピュータ・プログラムと
　を備え、前記計算デバイスは、
　モディファイされるべき画像を少なくとも２つのクライアントに入力し、
　前記クライアントの第１のクライアントにおいて画像交換モジュールを始動させ、
　前記クライアントの第２のクライアントにおいて前記画像に対して提案されるモディフィケーションを行い、
　前記提案されたモディフィケーションの編集リストで、前記画像に対して前記モディフィケーションを行うコマンドを収録する編集リストを、前記クライアントの前記第２のクライアントにおいて生成し、
　ネットワークを介して前記編集リストを前記第１のクライアントから前記第２のクライアントに伝送し、かつ
　前記クライアントの前記第１のクライアントにおいて前記編集リストを前記画像に適用して前記画像をモディファイする
　ように前記コンピュータ・プログラムの前記プログラム・モジュールによって指図されることを特徴とするシステム。
【請求項３１】
　ネットワークを介してデータを編集するためのコンピュータ実行可能命令を有するコンピュータ可読媒体であって、前記コンピュータ実行可能命令は、
　モディファイされるべきデータを少なくとも２つのクライアントに入力すること、
　前記クライアントの第１のクライアントにおいてデータ交換モジュールを始動させること、
　前記クライアントの第２のクライアントにおいて前記データに対して提案されるモディファイを行うこと、
　前記提案されたモディフィケーションの編集リストで、前記データに対して前記モディフィケーションを行うコマンドを収録する編集リストを、前記クライアントの前記第２のクライアントにおいて生成すること、
　ネットワークを介して前記編集リストを前記第１のクライアントから前記第２のクライアントに伝送すること、および
　前記クライアントの前記第１のクライアントにおいて前記編集リストを前記データに適用して前記データをモディファイすること
　を備えることを特徴とするコンピュータ可読媒体。
【請求項３２】
　前記データは、
　画像データ、
　画像注釈データ、
　音声データ、および
　ドキュメント形式設定データ
　の少なくとも１つであることを特徴とする請求項３１に記載のコンピュータ可読媒体。
【請求項３３】
　ネットワークを介してデータを編集するためのコンピュータ実行可能命令を有するコンピュータ可読媒体であって、前記コンピュータ実行可能命令は、
　サーバーにおいてデータを入力すること、
　前記データを前記サーバーからホスティング・クライアントに送信すること、
　前記サーバーにおいて前記ホスティング・クライアントから前記データに関する編集コマンドのリストを受信すること、および
　前記サーバーにおいて編集コマンドの前記リストを前記データに関係付けること
　を備えることを特徴とするコンピュータ可読媒体。
【請求項３４】
　編集コマンドの前記リストを前記データに適用して、前記データをモディファイするコンピュータ実行可能命令をさらに備えることを特徴とする請求項３３に記載のコンピュータ可読媒体。
【請求項３５】
　前記データは、
　画像データ、
　画像注釈データ、
　音声データ、および
　ドキュメント形式設定データ
　のうちの１つであることを特徴とする請求項３３に記載のコンピュータ可読媒体。
【請求項３６】
　ネットワークを介してデータを編集するためのコンピュータ実行可能命令を有するコンピュータ可読媒体であって、前記コンピュータ実行可能命令は、
　クライアントにおいて保持されるデータに関係付けられる編集コマンドのリストをサーバーから受信すること、および
　前記クライアントにおける前記データに編集コマンドの前記リストを適用して前記クライアントにおける前記データをモディファイすること
　を備えることを特徴とするコンピュータ可読媒体。
【請求項３７】
　前記データは、
　画像データ、
　画像注釈データ、
　音声データ、および
　ドキュメント形式設定データ
　のうちの１つであることを特徴とする請求項３６に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明は、デジタル画像処理のためのシステムおよび方法を対象とする。より詳細には、本発明は、ネットワークを介して画像を編集するための効率的な方法を対象とする。
【背景技術】
【０００２】
　近年、デジタル・カメラが普及してきており、デジタル・カメラの販売量が急速に増加している。デジタル・カメラが、このように普及してきたので、このカメラを使用して撮影された写真を家族、友人、および同僚の間で共有したいという望みが高まっている。画像のビジネスにおける使用も劇的に増加している。デジタル画像は、マーケティングの資料、技術論文、報告書、およびインターネットＷｅｂサイトで頻繁に使用されている。インターネットが発展し、インターネットが世界中で多く使用されるようになったことと併せて、電子メールが広く普及したことにより、画像を共有することがより容易になった。ただし、インターネットなどのネットワークを介するデジタル画像共有は、欠点を有している。
【０００３】
　デジタル画像は、通常、テキスト・ファイルと比べて非常に大きいデータ・サイズを有するビットマップ・ファイルである。この結果、デジタル画像は、膨大な量のハード・ドライブ・スペースを消費する。さらに、ファイル・サイズが大きいことにより、デジタル画像データ・ファイルは、ネットワークを介して処理し、伝送するのに大量のコンピュータ・リソースおよびネットワーク帯域幅を消費することになる。この結果、画像データ伝送速度は、通常、非常に遅い。したがって、画像データ・サイズを小さくする手立てをもたらすことにより、消費されるコンピュータ・メモリの量を低減し、そのようなデジタル画像を転送するデータ伝送時間を短縮することが重要である。
【０００４】
　デジタル画像共有の別の見地は、様々なアプリケーションにおいて共有され、使用される画像の品質である。人々は、しばしば、自分自身で、または他の人々と協力して画像を向上させることを求める。したがって、デジタル画像の品質を向上させる画像編集ソフトウェアも、極めて普及してきている。従来の暗室では、画像品質は、フィルム、薬剤、用紙（印画紙）、およびプロセスの選択で調整される。デジタルで暗室に相当するものでは、画像は、コンピュータ・システムおよび写真編集プログラムを使用して編集される。従来の暗室においてと同様に、デジタルツールの品質が、実現される画像の品質に影響を与える。デジタル画像は、写真編集ソフトウェアを使用して多種多様な仕方で編集することができる。一部のケースでは、編集プログラムは、画像の欠陥を、取り除くか、または少なくすることによって画像を向上させるのに使用される。例えば、デジタル画像を向上させる一部の写真編集操作には、トリミング（cropping；切り詰める）、輝度およびコントラストの調整、カラーバランスの補正、彩度の調整、フィルタリング、カラー画像の白黒への変換、白黒写真の手作業による着色（hand coloring）、赤目をなくすこと、および異なる解像度に画像をサイズ変更すること、が含まれる。
【０００５】
　画像が共同作業で向上させられるとき、画像は、画像を反復的に編集する人々の間でネットワークを介して、しばしば、やり取りされる。大きなサイズのデータは、データ伝送遅延を生じさせ、大量のコンピュータ処理リソースおよびハード・ドライブ・スペースを消費する。このことは、反復的な編集プロセスを極めて扱いにくくする可能性がある。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
　本発明は、画像全体を繰り返し転送してやり取りする代わりに、ネットワークを介して画像に対する変更だけを送信するシステムおよび方法により、ネットワークを介して画像データ・ファイルを編集して転送するシステムにおける前述した限界を、克服するシステムおよびプロセスを対象とする。画像編集の本システムおよび本方法では、それぞれの従来の画像処理操作が、少しのパラメータで記述される。この結果、複数のユーザが、すべてのビット・マップを交換して保存する代わりに、少しのパラメータを共有することにより、画像処理情報を共有することができる。大きいデジタル画像ファイルを、ネットワークを介して伝送してやり取りする必要がないので、このシステムおよび方法によって相当なデータの低減が得られる。また、極めて大きい画像ファイルの複数のバージョンをユーザのコンピュータ・ハード・ドライブに繰り返し保存しなくてもよい。
【課題を解決するための手段】
【０００７】
　本発明は、画像変更を記述する編集リストを使用する。編集リストのサイズは、非常に小さく、画像自体とは独立である。画像編集リストをオリジナルのビットマップ画像から切り離すことにより、他の利点も得られる。例えば、同じ編集リストを他の画像に適用することが可能であり、また複数の異なる画像に適用することも可能である。また、画像のレンダリングは、画像編集より後の時点で行うことができ、必要なときにだけ行うことができる。
【０００８】
　編集リストは、通常、２進形式で表現されるか、またはＸＭＬ形式で表現される。ただし、編集リストを形式設定するのに、その他の形式設定の規約を使用することも可能である。
【０００９】
　本発明の一実施形態では、編集リストは、キー画像状態のリストから構成される。キー画像状態（Key Image States）は、基本的に、最終の編集済み画像を実現するのに使用される過渡的な画像（transitional image）を定義する１組のデータ・フィールドである。編集リストにおけるモディフィケーション（modifications）は、ユーザが編集済みの画像を保存するときに適用されて、最終の編集済み画像が生成される。各キー画像状態は、キー・フレーム・フィールド、空間変換フィールド、色変換フィールド、特別変換フィールド、および遷移変換フィールドを含む１組のパラメータで記述される。
【００１０】
　キー・フレームは、空間変換、色変換、特別変換、または遷移変換が適用される基本ビット・マップへの参照である。キー画像状態のキー・フレーム・フィールドにより、どの画像ファイルが編集され、操作されているかに関する識別子が提供される。任意の共同編集に関与するすべての関係者が、この第１のキー・フレーム・ビット・マップのローカル・コピーを有するものと想定される。空間変換フィールドは、画像を編集するのに使用される空間変換コマンドを表す。この空間コマンドには、例えば、回転、トランスレーション（変換）、トリミング（cropping）、およびサイズ変更の従来の空間的画像編集コマンドが含まれる。色変換フィールドは、画像編集で使用される色変換コマンドを表す。この従来の画像編集コマンドには、例えば、輝度補正、コントラスト補正、色相補正、彩度補正、および赤目補正が含まれる。空間変換フィールドと色変換フィールドはともに、同時に並存することができる。というのは、空間的操作は、通常、色操作に影響を与えず、またその逆も当てはまるからである。特別変換フィールドは、個別の空間変換および個別の色変換のために個別のキー画像状態を使用する代わりに、同一のキー画像状態において空間変換と色変換の両方を組み合わせる変換を表す。このように空間変換と色変換を組み合わせることにより、より高い計算効率を得ることができる。遷移変換フィールドは、追加された画像変換を既存の空間変換フィールド、色変換フィールド、または特別変換フィールドにマージさせることができないとき、設定される。例えば、次の編集コマンドを現行の空間変換コマンド、色変換コマンド、または特別変換コマンドのどれにもマージすることができないとき、遷移変換フィールドが追加される。遷移変換は、追加されたとき、別のキー画像状態を生成するように編集リストに通知して、そのキー画像状態が編集リストに追加される。
【００１１】
　また、本発明の画像編集のシステムおよび方法は、ユーザが、自ら行った、または他のユーザによって行われたモディフィケーションを無効にすることができるようにする取消し（Undo）機能も含むことができる。画像のモディフィケーションを無効にすることにより、画像を以前のキー画像状態に復元することができる。
【００１２】
　画像編集のシステムおよび方法は、スタンドアロン構成で、ピア・ツー・ピア構成で、またはサーバー−クライアント構成で使用することが可能である。
【００１３】
　デジタル画像を編集するためのスタンドアロンのシステムおよびプロセスにおいて、モディファイされるべき１つまたは複数の画像（one or more images to be modified）が入力される。画像を入力することについて、コンピュータ可読媒体からユーザのコンピュータにロードされること、あるいは別のユーザから、または画像データベースに関連付けられた専用サーバーからネットワークを介して転送されることが可能である。ユーザは、モディファイされるべき１つまたは複数の画像を有するようになると、提案されるモディフィケーションを所与の画像に対して行い、これにより、編集リストを生成する。編集リストは、画像に対してモディフィケーションを行うための画像編集コマンドを収録する。ユーザは、提案される変更によってモディファイされた画像に満足すると、編集リストを画像に適用して画像をモディファイすることができる。
【００１４】
　本発明のスタンドアロンのシステムおよびプロセスにより、ユーザは、色、色相、画像サイズを変更することや、赤目効果を補正することなどの従来の仕方で画像を編集することができるようになる。ただし、画像編集アプリケーションのこの実施形態は、ユーザが、一連の画像の中の１つに対して微妙な補正を行い、その後、その補正をその他の画像に１回のアクションで適用することができるようにするというさらなる利点を有する。また、この実施形態により、ユーザは、前述した取消し機能を介して、画像に対するあらゆる変更を取り消すことも可能になる。
【００１５】
　本発明のピア・ツー・ピア構成では、専用の中央サーバーは全く使用されない。ピア・ツー・ピア画像編集の場合、２名またはそれより多くのユーザが、まず、後に編集されることになるオリジナルの画像を受け取る。その画像は、ネットワーク接続を介して受け取られたり、またはＣＤ　ＲＯＭなどのコンピュータ可読媒体からダウンロードされたりすることが可能である。ピア・ツー・ピア構成におけるユーザの各々は、本発明の画像編集のシステムおよび方法の一環として画像交換モジュールを有する。画像および編集リストの交換は、ユーザのうち誰かの画像交換コンポーネント（構成要素）によって、処理される。ユーザのうち誰かが、自らのコンピュータ上で画像交換プロセスを開始し、その他のユーザは、その画像交換コンポーネントにログオンする。ユーザのうち誰かが、オリジナルの画像をモディファイすると、編集リストが生成される。実際のモディファイされた画像ではなく、編集リストだけが、ネットワークを介して前述の１名のユーザの画像交換コンポーネントに送信され、次に、その他のユーザに転送される。その他のユーザは、画像交換コンポーネントから編集リストを受け取るとき、共有される画像に対して自らが行ったモディフィケーションに関して自らが生成した編集リストも自動的に交換する。受け取られる編集リストは、長い時間がかかるビット・マップ伝送が関与していないため、リアル・タイムでユーザのコンピュータ上の画像を自動的に更新する。
【００１６】
　また、本発明のシステムおよび方法は、サーバー−クライアント構成において１つまたは複数の専用サーバーを使用することにより、共同画像編集のために使用することも可能である。この実施形態では、通信サーバー、およびモディファイされるべき実際の画像を含む１つまたは複数の画像データ・サーバーが使用される。通信サーバーは、画像データ・サーバーまたは画像データ・サーバー群とは物理的に異なることが可能であり、あるいは１つのサーバーを使用して通信機能と画像データベース機能をともに行うことも可能である。通信サーバーは、ユーザと画像データ・サーバーの間の情報の流れを制御する。
【００１７】
　サーバー−クライアント構成では、ユーザ／クライアントが、通信サーバーにログオンしてシステムを使用する。通信サーバーは、モディファイされるべき画像のコピーをユーザに、その画像のコピーをまだ有していない場合に、送信する。画像データ・サーバー上に存在する高解像度の画像を送信する代わりに、画像のより小さいサムネール・バージョン、またはより低い解像度のバージョンをユーザに送信する。そうすることにより、より大きい画像データ・ファイルが、ネットワークを介して不必要に伝送されない。
【００１８】
　次に、ユーザは、自らのコンピュータ上で画像を編集する。ユーザは、画像データ・サーバーから自らが受け取った画像に対して画像編集を実行すると、編集リストだけを生成し、ネットワークを介して返送する。画像データ・サーバーは、対応する画像のそれぞれに関する編集リストを記憶する。別のユーザが、画像データ・サーバーから特定の画像を取り出す際、画像データ・サーバーは、その画像に対応する編集リストを送信する。ユーザが、より小さいサイズの画像、またはより低い解像度の画像を受け取っていない場合、画像データ・サーバーは、その画像も送信する。
【００１９】
　編集リストが、画像に関して変更されたとき、または更新されたとき、画像データ・サーバーは、既にオリジナルの画像を有しているので、編集リストだけがネットワークを介して画像データ・サーバーに送信される。これにより、ネットワーク・トラフィックが相当に減少させられる。画像データ・サーバーは、ユーザが最大解像度の画像を要求したときにだけ、その画像を送信する。編集リストにおけるあらゆる変更が記録され、その他のユーザに送信される。
【００２０】
　最大解像度の画像の編集リストを介する画像処理は、サーバー側、またはユーザ／クライアント側で処理することができる。つまり、高解像度の画像がサーバーから送信される前に、画像の修正が、編集リストを介して高解像度の画像に適用されること、あるいは、クライアントが、自らのコンピュータ上で、編集リストを高解像度の画像に適用してその画像のモディファイされたバージョンをローカルに得ることが可能である。
【００２１】
　本発明の特定の特徴、態様、および利点は、以下の説明、特許請求の範囲、および添付の図面に関してよりよく理解される。
【発明を実施するための最良の形態】
【００２２】
　本発明の好ましい実施形態の以下の説明では、説明の一部を成す添付の図面を参照する。図面では、例示のため、本発明を実施することが可能な特定の実施形態を示している。本発明の範囲を逸脱することなく、その他の実施形態を利用することができ、また構造上の変更を行うことが可能であることを理解されたい。
【００２３】
　１．０　例示的な動作環境
　図１は、本発明を実施することが可能な適切な計算システム環境の例を示している。計算システム環境１００は、適切な計算環境の一例に過ぎず、本発明の使用または機能の範囲に関して何ら限定を示唆するものではない。また、計算環境１００が、例示的な動作環境１００に例示した構成要素の任意の１つ、または任意の組み合わせに関連する何らかの依存性または要件を有していると解釈してはならない。
【００２４】
　本発明は、多数の他の汎用または特殊目的の計算システム環境または計算システム構成で動作する。本発明で使用するのに適している可能性がある周知の計算システム、計算環境、および／または計算構成の例には、パーソナル・コンピュータ、サーバー・コンピュータ、ハンドヘルド・デバイスまたはラップ・トップ・デバイス、マルチ・プロセッサ・システム、マイクロ・プロセッサ・ベースのシステム、セットトップボックス、プログラマブル家庭用電化製品、ネットワークＰＣ、ミニ・コンピュータ、メインフレーム・コンピュータ、以上のシステムまたはデバイスの任意のものを含む分散計算環境等が含まれるが、それらには限定されない。
【００２５】
　本発明は、コンピュータによって実行される、プログラム・モジュールなどの、コンピュータ実行可能命令の一般的な文脈で説明する。一般に、プログラム・モジュールには、特定のタスクを行う、または特定の抽象データタイプを実装するルーチン、プログラム、オブジェクト、構成要素、データ構造等が含まれる。また、本発明は、通信網を介してリンクされた遠隔の処理デバイスによってタスクが行われる分散計算環境において実施してもよい。分散計算環境では、プログラム・モジュールは、メモリ記憶デバイスを含むローカルのコンピュータ記憶媒体と遠隔のコンピュータ記憶媒体の両方の中に配置されることが可能である。
【００２６】
　図１を参照すると、本発明を実施するための例示的なシステムが、コンピュータ１１０の形態で汎用計算デバイスを含んでいる。コンピュータ１１０の構成要素には、処理ユニット１２０、システム・メモリ１３０、ならびにシステム・メモリから処理ユニット１２０までを含む様々なシステム構成要素を結合するシステム・バス１２１が含まれる可能性があるが、それらには限定されない。システム・バス１２１は、様々なバス・アーキテクチャの任意のものを使用するメモリ・バスまたはメモリ・コントローラ、周辺バス、およびローカル・バスを含むいくつかのタイプのバス構造の任意のものであることが可能である。例として、限定としてではなく、そのようなアーキテクチャには、インダストリ・スタンダード・アーキテクチャ（Industry Standard Architecture）（ＩＳＡ）バス、マイクロ・チャネル・アーキテクチャ（Micro Channel Architecture）（ＭＣＡ）バス、エンハンストＩＳＡ（Enhanced　ＩＳＡ）（ＥＩＳＡ）バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション（Video Electronics Standards Association）（ＶＥＳＡ）ローカル・バス、およびメザニン（Mezzanine）バスとしても知られるペリフェラル・コンポーネント・インターコネクト（Peripheral Component Interconnect）（ＰＣＩ）バスが含まれる。
【００２７】
　コンピュータ１１０は、通常、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ１１０によってアクセス可能な任意の利用可能な媒体であることが可能であり、揮発性の媒体と不揮発性の媒体、取外し可能な媒体と取外し不可能な媒体がともに含まれる。例として、限定としてではなく、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を備えることが可能である。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラム・モジュール、またはその他のデータなどの情報を記憶するための任意の方法または任意の技術で実装される揮発性の媒体および不揮発性の媒体、取外し可能な媒体および取外し不可能な媒体がともに含まれる。コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリまたは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル・バーサタイル・ディスク（ＤＶＤ）または他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶デバイス、あるいは所望の情報を記憶するのに使用することができ、コンピュータ１１０がアクセスすることができる任意の他の媒体が含まれるが、それらには限定されない。通信媒体は、通常、搬送波または他のトランスポート機構で変調されたデータ信号中において、コンピュータ可読命令、データ構造、プログラム・モジュール、またはその他のデータを具体化し、これにはあらゆる情報配信媒体が含まれる。「変調されたデータ信号」という用語は、信号に情報を符号化するような仕方で特性の１つまたは複数が設定または変更されている信号を意味する。例として、限定としてではなく、通信媒体には、有線ネットワークまたは直接配線接続などの有線媒体、ならびに音響媒体、ＲＦ媒体、赤外線媒体、およびその他の無線媒体などの無線媒体が含まれる。また、前述したもののいずれかの組み合わせも、コンピュータ可読媒体の範囲に含まれるべきものである。
【００２８】
　システム・メモリ１３０は、読取り専用メモリ（ＲＯＭ）１３１およびランダム・アクセス・メモリ（ＲＡＭ）１３２などの揮発性メモリおよび／または不揮発性メモリの形態のコンピュータ記憶媒体を含む。始動中など、コンピュータ１１０内部の要素間で情報を転送するのを助ける基本ルーチンを含む基本入力／出力システム１３３（ＢＩＯＳ）が、通常、ＲＯＭ１３１の中に記憶されている。ＲＡＭ１３２は、通常、処理ユニット１２０によって即時にアクセス可能であって、かつ／または現在、処理されている、データおよび／またはプログラム・モジュールを含む。例として、限定としてではなく、図１は、オペレーティング・システム１３４、アプリケーション・プログラム１３５、その他のプログラム・モジュール１３６、およびプログラム・データ１３７を示している。
【００２９】
　また、コンピュータ１１０は、他の取外し可能な／取外し不可能な、揮発性／不揮発性のコンピュータ記憶媒体を含むことも可能である。単に例として、図１は、取外し不可能な不揮発性の磁気媒体に対して読取りおよび書込みを行うハードディスク・ドライブ１４１、取外し可能な不揮発性の磁気ディスク１５２に対して読取りおよび書込みを行う磁気ディスク・ドライブ１５１、およびＣＤ−ＲＯＭまたは他の光媒体などの取外し可能な不揮発性の光ディスク１５６に対して読取りおよび書込みを行う光ディスク・ドライブ１５５を示している。例示的な動作環境において使用することができる他の取外し可能な／取外し不可能な揮発性／不揮発性のコンピュータ記憶媒体には、磁気テープ・カセット、フラッシュ・メモリ・カード、デジタル・バーサタイル・ディスク、デジタル・ビデオ・テープ、ソリッドステートＲＡＭ、ソリッドステートＲＯＭ等が含まれるが、それらには限定されない。ハードディスク・ドライブ１４１は、通常、インターフェース１４０のような取外し不可能なメモリ・インターフェースを介してシステム・バス１２１に接続され、また磁気ディスク・ドライブ１５１および光ディスク・ドライブ１５５は、通常、インターフェース１５０のような取外し可能なメモリ・インターフェースでシステム・バス１２１に接続される。
【００３０】
　前述し、図１に示すドライブおよび関連するコンピュータ記憶媒体により、コンピュータ可読命令、データ構造、プログラム・モジュール、およびその他のデータの記憶装置がコンピュータ１１０に提供される。図１では、例えば、ハードディスク・ドライブ１４１が、オペレーティング・システム１４４、アプリケーション・プログラム１４５、他のプログラム・モジュール１４６、およびプログラム・データ１４７を記憶しているものとして示されている。以上の構成要素は、オペレーティング・システム１３４、アプリケーション・プログラム１３５、他のプログラム・モジュール１３６、およびプログラム・データ１３７と同じであることも、異なることも可能であることに留意されたい。オペレーティング・システム１４４、アプリケーション・プログラム１４５、他のプログラム・モジュール１４６、およびプログラム・データ１４７に、ここでは、少なくともそれらが異なるコピーであることを示すために異なる符号を付けている。ユーザは、キーボード１６２、および一般にマウス、トラック・ボール、またはタッチ・パッドと呼ばれるポインティング・デバイス１６１などの入力デバイスを介してコンピュータ１１０にコマンドおよび情報を入力することができる。他の入力デバイス（図示せず）には、マイクロホン、ジョイスティック、ゲームパッド、サテライト・ディッシュ、スキャナ等が含まれる可能性がある。以上の入力デバイスおよび他の入力デバイスは、しばしば、システム・バス１２１に結合されたユーザ入力インターフェース１６０を介して処理ユニット１２０に接続されるが、パラレル・ポート、ゲーム・ポート、またはユニバーサル・シリアル・バス（Universal Serial Bus）（ＵＳＢ）などの他のインターフェースおよびバス構造で接続してもよい。また、モニタ１９１または他のタイプの表示デバイスも、ビデオ・インターフェース１９０などのインターフェースを介してシステム・バス１２１に接続される。モニタに加えて、コンピュータは、出力周辺インターフェース１９５を介して接続することができるスピーカ１９７やプリンタ１９６などの他の周辺出力デバイスも含むことが可能である。本発明に特に重要なこととして、一続きの画像１９３をキャプチャすることができるカメラ１９２（デジタル／電子式のスチール・カメラまたはビデオ・カメラ、またはフィルム／写真スキャナ）も、パーソナル・コンピュータ１１０に対する入力デバイスとして含まれることが可能である。さらに、１つのカメラだけを描いているが、複数のカメラが、パーソナル・コンピュータ１１０に対する入力デバイスとして含まれることも可能である。１つまたは複数のカメラからの画像１９３が、適切なカメラ・インターフェース１９４を介してコンピュータ１１０に入力される。このインターフェース１９４は、システム・バス１２１に接続され、これにより、画像をＲＡＭ１３２、またはコンピュータ１１０に関連する他のデータ記憶デバイスの１つに経路指定して、その中に記憶することができるようになる。ただし、画像データは、カメラ１９２の使用を必要とすることなしに、前述したコンピュータ可読媒体の任意のものからもコンピュータ１１０に入力することができることに留意され���い。
【００３１】
　コンピュータ１１０は、遠隔コンピュータ１８０のような１つまたは複数の遠隔コンピュータに対する論理接続を使用するネットワーク化された環境で動作することも可能である。遠隔コンピュータ１８０は、パーソナル・コンピュータ、サーバー、ルータ、ネットワークＰＣ、ピア・デバイス、または他の一般的なネットワーク・ノードであることが可能であり、通常、コンピュータ１１０に関連して前述した要素の多く、またはすべてを含むが、メモリ記憶デバイス１８１だけを図１に示している。図１に描いた論理接続は、ローカルエリア・ネットワーク（ＬＡＮ）１７１およびワイドエリア・ネットワーク（ＷＡＮ）１７３を含むが、他のネットワークを含むことも可能である。そのようなネットワーキング環境は、オフィス、企業全体のコンピュータ網、イントラネット、およびインターネットで一般的である。
【００３２】
　ＬＡＮネットワーキング環境で使用されるとき、コンピュータ１１０は、ネットワーク・インターフェースまたはネットワーク・アダプタ１７０を介してＬＡＮ１７１に接続される。ＷＡＮネットワーキング環境で使用されるとき、コンピュータ１１０は、通常、インターネットなどのＷＡＮ１７３を介して通信を確立するためのモデム１７２、または他の手段を含む。内部にあることも、外部にあることも可能なモデム１７２は、ユーザ入力インターフェース１６０または他の適切な機構を介してシステム・バス１２１に接続することが可能である。ネットワーク化された環境では、パーソナル・コンピュータ１１０に関連して描いたプログラム・モジュール、またはプログラム・モジュールの部分は、遠隔のメモリ記憶デバイスの中に記憶されることが可能である。例として、限定としてではなく、図１は、遠隔アプリケーション・プログラム１８５をメモリ・デバイス１８１上に常駐するものとして示している。図示したネットワーク接続は、例示的なものであり、コンピュータ間で通信リンクを確立する他の手段を使用してもよいことが認められよう。
【００３３】
　以上、例示的な動作環境について述べたので、この説明のセクションの以下の部分は、本発明を実現するそれぞれのプログラム・モジュールの説明に向けられる。
【００３４】
　２．０　画像編集のシステムおよび方法
　このセクションでは、本発明による画像編集のシステムおよび方法を説明する。
【００３５】
　２．１　概要
　画像処理では、オリジナルの画像をモディファイして所望の結果を得ることが普通である。例えば、画像の品質および鮮明度を向上させるのに、色、コントラスト、サイズ、および輝度がしばしば、変更される。画像編集の本システムおよび本方法では、それぞれの従来の画像処理操作が、通常、少数のパラメータで記述されることが可能である。この結果、複数のユーザが、ビットマップ画像全体を交換し、保存する代わりに、少数のパラメータを共有することによって画像処理情報を共有することができる。ネットワークを介して大きいデジタル画像ファイルを伝送してやり取りする必要がないため、本システムおよび本方法によって転送されるデータの相当な低減が得られる。また、極めて大きい画像ファイルの複数のバージョンを、繰り返してユーザのコンピュータ・ハード・ドライブに記憶しなくてもよい。
【００３６】
　本発明は、従来の画像変更を記述する編集リストを使用する。編集リストのサイズは非常に小さく、またほとんど帯域幅を要せず、迅速に伝送することができるため、ネットワーク伝送にとって理想的である。巨大な画像データ・ファイルの代わりに小さい編集リストだけがネットワークを介して伝送されるため、本発明の画像編集のシステムおよび方法は、複数の関係者の間における画像編集の共同作業にも理想的である。オリジナルのビットマップ画像から画像編集リストを切り離すことにより、他の利点も得られる。各画像編集リストは、画像自体とは独立である。したがって、同じ編集リストを新たに生成された画像に適用することが可能であり、また複数の異なる画像に適用することも可能である。また、画像のレンダリングを画像編集よりも後の時点で行うことができ、必要なときにだけ行うことができる。これは、計算処理の上でより効率的である。
【００３７】
　共同作業の場合、画像データを送信する伝送時間が大幅に短縮される。２名のユーザが前述した編集リストを理解する画像編集アプリケーションを有するとき、編集プロセスにおいて補正済み画像全体を繰り返してやり取りする必要がない。画像補正を行うために、２名のユーザは、編集リストをやり取りするだけでよい。
【００３８】
　ユーザが、その補正を複数の画像に適用することを望むとき、画像編集アプリケーションは、画像のすべてに対する補正を処理しなければならない。これは、時間がかかり、相当なコンピュータ・リソースを要する可能性がある。しかし、ユーザは、それらの画像の１つだけを見て、補正を行うことができる。この特徴は、ほぼ同時刻に、同様の条件下で撮影された一連の画像に補正を行う必要があるときに、特に有用である。しかしながら、ユーザが、画像のすべてに適用された結果を見ることを望むまでは、画像補正をその他の画像に適用することは必要ではない。補正は、ユーザが、画像の結果を見ることを望むときにだけ、またはその画像が保存されるときにだけ適用されることになる。オリジナルのファイルは、ユーザがそのファイルを保存するまでモディファイされない。したがって、この画像編集のシステムおよびプロセスは、ユーザが、１つの画像に対する補正を仕上げてから、その補正をその他の画像に適用することができるので、時間を節約し、計算の上で効率的である。
【００３９】
　この画像編集のシステムおよび方法は、スタンドアロン構成で、ピア・ツー・ピア構成で、またはサーバークライアント構成で使用することが可能である。
【００４０】
　２．２　編集リスト
　以下の段落では、編集リスト形式、データ・フィールド、および取消し機能（Undo function）を説明する。
【００４１】
　編集リストは、標準の編集パラメータのリストであり、ＸＭＬ形式で表現されるとき、任意の従来のテキスト編集プログラムによって生成されることが可能である。特殊な画像編集プログラムは、２進形式で編集リストを生成することができる。
【００４２】
　２．２．１　編集リスト形式（Editing List Format）
　前述したとおり、本発明は、画像変更を記述する編集リストを使用する。編集リストは、通常、２進形式、またはＸＭＬ形式で表現される。編集リストを２進形式で表現することにより、ファイル・サイズが小さくなる。編集リストをＸＭＬ形式で表現することにより、編集リスト・パラメータのテキスト編集が可能になる。ＸＭＬ形式を使用することは、ユーザが、標準のテキスト編集によって編集リストを容易にモディファイすることができ、編集リストを解析することができ、また編集リストにおけるパラメータ値を微調整することができることで、有利である。ただし、その他の形式設定の規約を使用して編集リストを形式設定することも可能である。
【００４３】
　２．２．２　編集リスト・フィールド
　図２に示す本発明の一実施形態では、編集リストは、キー画像状態２０２のリストから構成される。キー画像状態２０２は、基本的に、最終の編集済み画像を実現するのに使用される過渡的な画像を定義する１組のデータ・フィールドである。編集リストにおけるモディフィケーションは、ユーザが編集済み画像を保存する際に適用されて、最終の編集済み画像が生成される。各キー画像状態２０２は、キー・フレーム２０４ａ、２０４ｎ、空間変換２０６ａ、２０６ｎ、色変換２０８ａ、２０８ｎ、特別変換２１０ａ、２１０ｎ、および遷移変換２１２ａ、２１２ｎを含む１組のパラメータで記述される。以上のパラメータを以下により詳細に説明する。
【００４４】
　キー・フレーム（Key Frame）：　キー・フレームは、コンピュータ可読媒体上の、ネットワーク上の、またはコンピュータ・メモリ（ＲＡＭ）の中の基本ビット・マップのリファレンスであり、それに対して、空間変換、色変換、特別変換、または遷移変換が適用される。キー・フレーム・フィールド２０４ａ、２０４ｎは、どの画像ファイルが編集されているのか、または操作されているのかについての識別子を提供する。任意の共同編集に関与しているすべての関係者が、この第１のキー・フレーム・ビット・マップのローカル・コピーを有するものと想定する。第２以降のキー・フレームに関連するビット・マップは、コマンドに応じて生成される。
【００４５】
　空間変換（Space Transform）：　空間変換フィールド２０６ａ、２０６ｎは、画像を編集するのに使用される空間変換コマンドを表わす。この空間的コマンドには、例えば、回転、トランスレーション（変換）、トリミング、サイズ変更等が含まれる。
【００４６】
　色変換（Color Transform）：色変換フィールド２０８ａ、２０８ｎは、画像編集において使用される色変換コマンドを表す。このコマンドには、例えば、輝度補正、コントラスト補正、色相補正、彩度補正、および赤目補正が含まれる。
【００４７】
　特別変換（Extra Transform）：　空間的操作は、通常、色操作に影響を与えず、その逆も当てはまるため、空間変換２０６ａ、２０６ｎと色変換２０８ａ、２０８ｎは、同時に並存することができる。特別変換フィールド２１０ａ、２１０ｎは、個別の空間変換および個別の色変換に関して個別のキー画像状態を使用する代わりに、同一のキー画像状態において空間変換と色変換を組み合わせる変換を表す。これ（特別変換）は、個別の色変換および空間変換の組み合わせによって表現することのできない、より一般的な変換をもたらすことも可能である。特別変換フィールド２１０ａ、２１０ｎが使用されるとき、空間変換フィールド２０６ａ、２０６ｎと色変換フィールド２０８ａ、２０８ｎはともに、空に設定される。通常の空間画像変換および色画像変換の場合、特別変換フィールド２１０ａ、２１０ｎは、空に設定される。
【００４８】
　遷移変換（Transition Transform）：　遷移変換フィールド２１２ａ、２１２ｎは、追加された画像変換を、既存の空間変換フィールド、色変換フィールド、または特別変換フィールドにマージすることができないときに設定される。遷移変換２１２ａ、２１２ｎが追加されたとき、別のキー画像状態２０２を生成するように編集リストに通知し、そのキー画像状態が編集リストに追加される。例えば、次のコマンドが回転であり、前のコマンドがトリミング（crop）であるとき、回転コマンドをトリミング・コマンドにマージさせることができないので、回転コマンドが遷移変換に追加される。
【００４９】
　画像モディフィケーション・コマンドが編集リストに追加されたとき、アプリケーションが、画像をレンダリングするか、または画像を保存する時点まで、そのモディフィケーションを反映するビットマップ画像は生成されず、モディファイされているビットマップ画像にキー・フレーム・フィールドが付加されることもない。編集リストが保存されるか、インターネットを介して伝送されたとき、キー・フレームは、コンピュータ・メモリを節約するために除去される。
【００５０】
　２．２．３　編集リスト取消し機能
　本システムおよび本方法は、各ユーザが、自らの画像モディフィケーション、または他のユーザによって行われたモディフィケーションを取り消す手段も提供する。各ユーザのモディフィケーション／画像変換（image transformation）は、編集リストにおけるキー画像状態に関連付けられている。取消しバッファ（Undo Buffer）は、画像が最後に保存され、またはレンダリングされて、キー画像状態が生成されたとき以来の各画像変更コマンドを記録する。取消し（Undo）が呼び出されると、最後に保存してからのコマンドが無効にされ、前のキー画像状態が復元される。例えば、ユーザは、行った前のモディフィケーションが気に入らない場合、最後のキー画像状態が生成されて以来行われた編集リスト変更を無効にさせる取消し機能を起動することができる。取消し機能を繰り返し起動することにより（例えば、画像編集アプリケーションにおける取消しボタンを介して）、以前のキー画像状態のシーケンスが復元され、各キー画像状態に関連するモディフィケーションが取り消される。あるいは、ユーザは、取消し機能を使用して編集済み画像を特定の時点に戻すように復元することができる。
【００５１】
　取消し機能は、システムが、特定の所望のキー画像状態に戻る１つのコマンドを発行して、１回のアクションですべての介在したモディフィケーションを取り消すことができるという点で、効率的である。
【００５２】
　２．３　スタンドアロン構成
　本発明の画像編集のシステムおよび方法は、スタンドアロン構成で使用してデジタル画像を、編集して向上させることが可能である。画像編集アプリケーションの独立型バージョンは、前述した編集リストを生成し、ユーザが、モディファイ済み画像をレンダリングする、または保存するときに、その編集リストを適用してモディファイ済み画像を生成する。この実施形態により、単独のユーザが、スタンドアロンのコンピュータ上で画像編集アプリケーションを使用して画像を編集することが可能になる。この実施形態により、ユーザは、色、色相、画像サイズをモディファイすることや、赤目効果を補正することなどの従来の仕方で画像を編集することができるようになる。ただし、画像編集アプリケーションのこの実施形態は、ユーザが、一続きの画像の１つに対して微妙な補正を行った後、その補正をその他の画像に１回のアクションで適用することを可能にするさらなる利点を有する。また、この実施形態は、ユーザが、前述した取消し機能を介して画像に対するあらゆる変更を無効にさせることも可能にする。
【００５３】
　２．４　ピア・ツー・ピア構成
　本システムおよび本方法は、ピア・ツー・ピア構成における画像編集を可能にする。このピア・ツー・ピア構成では、専用の中央サーバーは全く使用されない。図３に示したプロセス流れ図に示されるピア・ツー・ピア画像編集のケースでは、２名またはそれより多くのユーザが、まず、その後に編集されることになるオリジナルの画像を受け取る（プロセス動作３０２）。画像は、ネットワーク接続を介して受け取られるか、またはＣＤ　ＲＯＭなどのコンピュータ可読媒体からダウンロードされることが可能である。ピア・ツー・ピア構成におけるユーザの各々は、本発明の画像編集のシステムおよび方法の一環として画像交換モジュールを有している。画像および編集リストの交換は、ユーザのうち誰かの画像交換コンポーネントによって処理される。プロセス動作３０４に示されるとおり、ユーザのうち誰かが、自らのコンピュータ上で画像交換プロセスを開始し、その他のユーザが、その画像交換構成要素にログオンする。
【００５４】
　ユーザのうち誰かがオリジナルの画像をモディファイすると、編集リストが生成される（プロセス動作３０６）。プロセス動作３０８に示されるとおり、実際のモディファイされた画像ではなく、編集リストだけが、ネットワークを介してその１名のユーザの画像交換コンポーネントに送られ、次に、その他のユーザに転送される。その他のユーザは、画像交換コンポーネントから編集リストを受け取るとき、共有される画像に対して自らが行ったモディフィケーションに関連付けられて生成された編集リストも、画像交換コンポーネントを介して自動的に交換する。受け取られた編集リストは、プロセス動作３１０で示されるとおり、時間のかかるビット・マップ伝送が関与していないので、リアル・タイムでユーザのコンピュータ上の画像を自動的に更新する。
【００５５】
　図４は、ピア・ツー・ピア構成の概略を示している。この構成は、複数名のユーザのコンピュータ（この場合、ユーザ１　４０２およびユーザ２　４０４）を含む。ユーザ１は、その他のユーザと画像補正の共同作業を開始することを望むとき、自らのコンピュータ上で本発明の画像編集アプリケーションの画像交換コンポーネントを始動させることによって共同作業プロセスを開始する。あるいは、ユーザ１は、自らのコンピュータ上で編集リスト交換を扱う別個の画像交換アプリケーションを始動させることができる。ユーザ２が、ユーザ１の画像交換コンポーネントにログオンする。次に、編集リストが、その画像交換コンポーネントを介してユーザ１とユーザ２の間で交換される。その編集リストモディフィケーションに関連付けられた画像は、その編集リストの変更が受け取られるとすぐに、各ユーザにおいて更新される。この機構は、２名のユーザに限定されない。任意の数のユーザが、ユーザ１の画像交換構成要素にログオンすることによってリアル・タイムの画像編集に参加することができる。また、本発明の画像編集アプリケーションは、各ユーザ用の画像交換コンポーネントを含むので、任意のユーザが、ユーザ１（画像交換コンポーネントを有するユーザ）になることが可能である。
【００５６】
　図５は、画像編集を共同作業で行っている２名のユーザの例を示している。このケースは、専用サーバーなしにユーザが直接に対話し、モディファイされるべき画像を操作するので、ピア・ツー・ピアと呼ばれる。図５に示すとおり、ユーザ１は、ユーザ１とユーザ２の両方によって保持される画像の輝度およびコントラストをモディファイする。この変更は、編集リストを介してユーザ２に送られ、それに応じてユーザ２の画像が更新される。画像自体は、伝送されない。編集リストに収録された画像変更だけが、ネットワークを介して伝送される。編集リストのサイズは、通常、画像自体よりはるかに小さいので、ネットワーク伝送時間は、極めて短い。このことは、２名のユーザが、ネットワークを介して実質的にリアル・タイムの画像補正を有することを可能にする。さらに、この機構は、２名のユーザに限定されないことに留意されたい。任意の数のユーザが、このリアル・タイム画像編集に参加することが可能である。
【００５７】
　２．５　サーバー−クライアント構成
　図６は、サーバー−クライアント構成において１つまたは複数の専用サーバーを使用することによる共同画像編集のプロセスを描いている。この実施形態では、共同画像編集を行うため、ユーザ６０６ａ、６０６ｂが、画像編集のための通信サーバー６０２にログオンする。通信サーバー６０２に加えて、モディファイされるべき実際の画像を含む１つまたは複数の画像データ・サーバー５０４も、この構成におけるシステムによって使用される。通信サーバー６０２は、画像データ・サーバーまたは画像データ・サーバー群６０４とは物理的に異なったり、あるいは通信機能と画像データベース機能をともに行うのに１つのサーバーを使用したりすることが可能である。通信サーバー６０２は、ユーザ６０６ａ、６０６ｂ、および画像データ・サーバー６０４の間の情報の流れを制御する。
【００５８】
　次に、図７を参照すると、ユーザがモディファイされるべき画像のコピーをまだ有していない場合、通信サーバーが、ユーザにそのコピーを送信する（プロセス動作７０２）。画像データ・サーバー上に存在する高解像度の画像を送信する代わりに、その画像のより小さいサムネール・バージョン、またはより低い解像度のバージョンがユーザに送られる。そうすることにより、大きい画像データ・ファイルが、ネットワークを介して不必要に伝送されることがない。
【００５９】
　次に、ユーザは、自らのコンピュータ上で画像を編集する。ユーザは、画像データ・サーバーから受け取った画像に対して画像編集を行う際（プロセス動作７０４）、編集リストだけを生成して、ネットワークを介して返送する（プロセス動作７０６）。画像データ・サーバーは、対応する画像のそれぞれに関する編集リストを記憶する（プロセス動作７０８）。別のユーザが、画像データ・サーバーから特定の画像を取り出す際、画像データ・サーバーは、その画像に対応する編集リストを送信する（プロセス動作７１０）。ユーザが、より小さいサイズの画像、またはより低い解像度の画像を受け取っていない場合、画像データ・サーバーは、その画像も送信する。
【００６０】
　編集リストが、その画像に関して変更されたり、または更新されたりした場合、編集リストだけがネットワークを介して送信される必要がある（プロセス動作７１２）。ユーザは、画像をモディファイしたとき、その画像自体を送信しなくてもよい。画像データ・サーバーは、既にオリジナルの画像を有しているので、編集リストだけが、画像データ・サーバーに送信される。これにより、ネットワーク・トラフィックが相当に減少させられる。画像データ・サーバーは、ユーザが最大解像度の画像を要求したときにだけ、最大解像度の画像を送信する（プロセス動作７１４および７１６）。編集リストにおけるあらゆる変更が記録され、その他のユーザに送られる。
【００６１】
　最大解像度の画像についての編集リストを介した画像処理は、サーバー側、またはユーザ／クライアント側で処理することができる。つまり、高解像度の画像がサーバーから送信される前に、画像の修正が、編集リストを介して高解像度の画像に適用されること、あるいは、クライアントが、自らのコンピュータ上で、編集リストを高解像度の画像に適用してその画像のモディファイされたバージョンをローカルに得ることが可能である。
【００６２】
　３．０　編集リストを使用して他のタイプのデータをモディファイする代替の実施形態
　本発明の画像編集のシステムおよび方法によって使用される編集リストに収録されるような変更の短縮されたリストを使用することにより、他のタイプのデータをモディファイすることが可能である。
【００６３】
　例えば、画像データベースの中の画像は、通常、画像を記述するキーワードを使用して探索を行うことによって所与の画像を探し出す際にユーザを助ける、メタ・データと一般に呼ばれる、何らかの種類の注釈データに関連付けられている。前述した画像編集システムのユーザは、編集リストを使用してメタ・データをモディファイし、交換することもできる。メタ・データに対するモディフィケーションは、画像モディフィケーションと同じ仕方で編集リストを介して交換されるが、注釈データを表す異なるデータ・フィールドが、編集リストにおいて使用される。モディフィケーションは、ユーザによってメタ・データが保存されるまで、メタ・データに対して継続的に行われることが可能であり、メタ・データが保存された時点で、メタ・データが保存され、画像ファイルに付加される。
【００６４】
　同様に、本発明のシステムおよび方法を使用して、ネットワークを介して音声データをモディファイすることができる。画像データと同様に、音声ファイルは、非常に大きい可能性があり、通常、他のユーザに伝送するのに大量のネットワーク帯域幅を消費する。画像に関して前述した方法と同様の仕方で、編集リストを適用して音声ファイルをモディファイすることができる。編集リスト・フィールドは、さらに、音声アプリケーションに適合させられる。例えば、音量、定性化パラメータ、左右バランス、および様々なフィルタ・パラメータをコマンドとして送ってサウンドに関する編集リストを形成することが可能である。
【００６５】
　本発明の別の実施形態は、電子ドキュメントに適用されることが可能な形式設定の変更に関する。この変更には、ページ・サイズ・コマンド、フォント・スタイル・コマンドおよびフォント・サイズ・コマンド、レイアウト・コマンド等が含まれる。電子ドキュメントを共同作業で編集しているとき、ユーザは、再形式設定されたドキュメント全体を送信する代わりに、編集リストを使用して、そのドキュメントに関する再形式設定コマンド（reformatting commands）だけを他のユーザに送信することができる。
【００６６】
　本発明の以上の説明は、例示および説明のために提示してきた。以上の説明は、すべてを網羅すること、または本発明を開示した形態そのものに限定することを意図するものではない。以上の教示に鑑みて、多数の変更形態および変形形態が可能である。本発明の範囲は、以上の詳細な説明によってではなく、特許請求の範囲によって限定されるものとする。
【図面の簡単な説明】
【００６７】
【図１】本発明を実施するための例示的なシステムを構成する汎用計算デバイスを描いた図である。
【図２】本発明によるシステムおよび方法の編集リストの一般的なフィールドを描いた図である。
【図３】本発明によるシステムおよび方法のピア・ツー・ピア・ネットワーク構成におけるデータ・フローを詳細に示す流れ図である。
【図４】本発明によるシステムおよび方法のピア・ツー・ピア・ネットワーク構成を示す概略図である。
【図５】本発明の編集リスト機構を介して別のユーザの画像に適用された１名のユーザの画像変更を描いた図である。
【図６】本発明によるシステムおよび方法のサーバー−クライアント構成を示す概略図である。
【図７】本発明によるシステムおよび方法のサーバー−クライアント・ネットワーク構成におけるデータ・フローの詳細を示す流れ図である。
【符号の説明】
【００６８】
　２０２　キー画像状態
　２０４ａ、２０４ｎ、２０６ａ、２０６ｎ、２０８ａ、２０８ｎ、２１０ａ、２１０ｎ、２１２ａ、２１２ｎ　編集リスト・フィールド
【図１】
2004064789.tif 000003
【図２】
2004064789.tif 000004
【図３】
2004064789.tif 000005
【図４】
2004064789.tif 000006
【図５】
2004064789.tif 000007
【図６】
2004064789.tif 000008
【図７】
2004064789.tif 000009