(57)【特許請求の範囲】
【請求項１】
画像編集機能を有するアプリケーションプログラムが動作しているクライアントと通信する画像処理装置であって、
前記アプリケーションプログラムで処理対象となる画像の特徴を取得する特徴取得手段と、
前記取得手段により取得された画像の特徴に基づき、前記アプリケーションプログラムに追加する複数の画像編集機能を選択する機能選択手段と、
前記機能選択手段により選択された画像編集機能に対応するインストールプログラムを取得して前記クライアントに送信するプログラム送信手段とを備えることを特徴とする画像処理装置。
【請求項２】
前記取得手段が取得する画像の特徴は、前記クライアントにおいて選択された処理対象の画像に対応する画像データの解析の結果または属性情報であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
更に、前記取得手段が取得した前記特徴に基づき複数の画像編集機能の候補を示す情報を前記クライアントに送信する送信手段と、
前記候補の中から前記クライアントにより選択された画像編集機能の情報を受信する受信手段とを有し
前記選択手段は、前記受信手段により受信した画像編集機能を前記アプリケーションプログラムに追加する機能として選択することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記取得手段は、複数の処理対象の画像に対応した画像データまたは属性情報を取得し、前記機能選択手段は、複数の画像データまたは複数の属性情報に基づき画像編集機能を選択することを特徴とする請求項１ないし３のいずれか一項に記載の画像処理装置。
【請求項５】
画像編集機能を有するアプリケーションプログラムが動作している画像処理装置であって、
前記アプリケーションプログラムで処理対象となる画像を選択する画像選択手段と、
前記画像選択手段により選択された画像の特徴に基づき、前記アプリケーションプログラムに追加する複数の画像編集機能を選択する機能選択手段と、
前記機能選択手段により選択された画像編集機能に対応するインストールプログラムを取得するプログラム取得手段と、
前記プログラム取得手段で取得した前記インストールプログラムを用いて画像編集機能を追加する制御手段とを有することを特徴とする画像処理装置。
【請求項６】
前記機能選択手段は、前記画像選択手段で選択された処理対象の画像に対応する画像データの解析結果または属性情報に基づき前記画像編集機能を選択することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
更に外部サーバと通信する通信手段を有し、
前記機能選択手段は、前記画像選択手段で選択された画像の特徴に基づき前記外部サーバで決定した複数の画像編集機能の候補の中から画像編集機能を選択することを特徴とする請求項５または６に記載の画像処理装置。
【請求項８】
前記プログラム取得手段は、前記機能選択手段で選択された画像編集機能に対応するインストールプログラムを、前記通信手段を介して前記外部サーバから取得することを特徴とする請求項７に記載の画像処理装置。
【請求項９】
さらに画像の特徴と、追加すべき画像編集機能との対応関係を示す情報を記憶する記憶手段を有し、
前記機能選択手段は、前記記憶手段に記憶している情報を用いて、前記画像選択手段で選択した画像の特徴に対応した画像編集機能を選択することを特徴とする請求項５に記載の画像処理装置。
【請求項１０】
更に外部サーバと通信する通信手段を有し、
前記機能選択手段で選択された画像編集機能に対応するインストールプログラムを前記通信手段を介して前記外部サーバから取得することを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
更に、前記機能選択手段で選択された画像編集機能に対応するインストールプログラムを、外部記録媒体から読み出す読み出し手段を有することを特徴とする請求項９に記載の画像処理装置。
【請求項１２】
画像編集機能を有するアプリケーションプログラムが動作しているクライアントと通信する画像処理装置の制御方法であって、
前記アプリケーションプログラムで処理対象となる画像の特徴を取得する特徴取得ステップと、
前記取得ステップで取得された画像の特徴に基づき、前記アプリケーションプログラムに追加する複数の画像編集機能を選択する機能選択ステップと、
前記機能選択ステップで選択された画像編集機能に対応するインストールプログラムを取得して前記クライアントに送信するプログラム送信ステップとを備えることを特徴とする制御方法。
【請求項１３】
コンピュータを、
画像編集機能を有するアプリケーションプログラムが動作しているクライアントと通信する画像処理装置の制御方法において、
前記アプリケーションプログラムで処理対象となる画像の特徴を取得する特徴取得手段、前記取得手段により取得された画像の特徴に基づき、前記アプリケーションプログラムに追加する複数の画像編集機能を選択する機能選択手段、前記機能選択手段により選択された画像編集機能に対応するインストールプログラムを取得して前記クライアントに送信するプログラム送信手段として機能させるプログラム。
【請求項１４】
請求項１３のプログラムを記録したコンピュータが読み取り可能な記録媒体。
【請求項１５】
画像編集機能を有するアプリケーションプログラムが動作している画像処理装置の制御方法において、
前記アプリケーションプログラムで処理対象となる画像を選択する画像選択ステップと、
前記画像選択ステップで選択された画像の特徴に基づき、前記アプリケーションプログラムに追加する複数の画像編集機能を選択する機能選択ステップと、
前記機能選択ステップで選択された画像編集機能に対応するインストールプログラムを取得するプログラム取得ステップと、
前記プログラム取得ステップで取得した前記インストールプログラムを用いて画像編集機能を追加する制御ステップとを備えることを特徴とする制御方法。
【請求項１６】
コンピュータを、
画像編集機能を有するアプリケーションプログラムが動作している画像処理装置において、
前記アプリケーションプログラムで処理対象となる画像を選択する画像選択手段、前記画像選択手段により選択された画像の特徴に基づき、前記アプリケーションプログラムに追加する複数の画像編集機能を選択する機能選択手段、前記機能選択手段により選択された画像編集機能に対応するインストールプログラムを取得するプログラム取得手段、前記プログラム取得手段で取得した前記インストールプログラムを用いて画像編集機能を追加する制御手段として機能させるプログラム。
【請求項１７】
請求項１６のプログラムを記録したコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、特に画像を処理するアプリケーションプログラムに機能を追加することを可能とする画像処理装置、画像処理装置の制御方法およびプログラムに関する。
【背景技術】
【０００２】
例えばPCなどの処理装置で動作するアプリケーションプログラム（以下、アプリケーションと記載する）には、現状のアプリケーションに無い機能を、拡張機能として追加できるものがある。このような拡張機能はプラグインと呼ばれることが多く、ユーザーがアプリケーションをインストールした後でも、必要に応じて機能を追加することを可能としている。
このような機能追加を行う方法として、サーバで公開されている機能のリストからユーザーが所望の機能を選択して追加する方法がある。
また、端末にデータを取り込んだ際に、取り込んだデータの種類に応じて追加できるアプリケーションを表示して、ユーザーに選択させる方法もある（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−６１０２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、一覧表示されたリストから機能を選択して追加する場合、単に数多くの追加機能が提示されているだけだと、機能を選択する際にユーザーが迷ってしまうことが考えられる。また、その際、ユーザーが適当に機能を選択して追加したとしても、手持ちのファイルに対しては使えない機能である可能性もある。
そのような場合を避けるためには、ユーザーが処理(例えば編集)したいファイルに応じて追加機能を選択でき、その結果ユーザーが使いたい機能だけを追加できる処理装置が切望される。
【０００５】
本件発明の目的は、アプリケーションで処理される画像ファイルに応じてアプリケーションに追加できる処理機能を選択可能とすることにより、画像ファイルに応じた処理機能の追加を適切に行うことが可能な画像処理装置の提供を目的とする。
【課題を解決するための手段】
【０００６】
上記本件発明の目的を達成するため、本件発明の一態様によれば、画像処理装置は、記画像編集機能を有するアプリケーションプログラムが動作しているクライアントと通信する画像処理装置であって、前記アプリケーションプログラムで処理対象となる画像の特徴を取得する特徴取得手段と、前記取得手段により取得された画像の特徴に基づき、前記アプリケーションプログラムに追加する複数の画像編集機能を選択する機能選択手段と、前記機能選択手段により選択された画像編集機能に対応するインストールプログラムを取得して前記クライアントに送信するプログラム送信手段とを備える。
また、本件発明の他の態様によれば、画像処理装置は、画像編集機能を有するアプリケーションプログラムが動作している画像処理装置であって、前記アプリケーションプログラムで処理対象となる画像を選択する画像選択手段と、前記画像選択手段により選択された画像の特徴に基づき、前記アプリケーションプログラムに追加する複数の画像編集機能を選択する機能選択手段と、前記機能選択手段により選択された画像編集機能に対応するインストールプログラムを取得するプログラム取得手段と、前記プログラム取得手段で取得した前記インストールプログラムを用いて画像編集機能を追加する制御手段とを有する。
【発明の効果】
【０００７】
本件発明の情報処理装置によれば、ユーザーが選択した画像の特徴に応じて画像処理アプリケーションの追加機能（候補機能）を検索してその結果をユーザーに提示できる。これによりユーザーは、選択した画像に応じた機能を容易にかつ適切に追加することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施形態に係る画像処理アプリケーションの表示画面を示す図である。
【図２】本発明の一実施形態に係る情報処理装置のシステム構成を示す図である。
【図３】本発明の一実施形態に係る画像情報の取得と画像処理アプリケーションにインストールされている機能の情報の取得を行うためのフローチャートを示す図である。
【図４】本発明の一実施形態に係る画像情報とインストールされている機能の情報の構成を示す図である。
【図５】本発明の一実施形態に係る追加機能を決定する処理のフローチャートを示す図である。
【図６】本発明の一実施形態に係る画像情報と機能情報との対応関係を示す図である。
【図７】本発明の一実施形態に係る追加機能情報の表示処理のフローチャートを示す図である。
【図８】本発明の一実施形態において複数の画像が選択されたときの画像処理アプリケーションの機能情報表示画面を示す図である。
【図９】本発明の一実施形態において選択された複数の画像の画像情報および画像情報と機能情報との対応関係を示す図である。
【図１０】本発明の一実施形態において、多数の画像が選択されたときに画像処理アプリケーションが表示する機能情報表示画面を示す図である。
【図１１】本発明の一実施形態において多数の画像が選択されたときの、選択された画像中で画像情報を有する選択画像の割合および画像情報と機能情報との対応関係を示す図である。
【図１２】本発明の一実施形態に係る画像処理アプリケーションにおいて編集機能を実行する際に表示する機能情報表示画面を示す図である。
【図１３】本発明の一実施形態に係る画像処理アプリケーションにおいて編集機能を実行するためのフローチャートを示す図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照して本発明の実施形態を説明する。
【００１０】
図２は、本発明のシステム構成を示す図である。図２の２０１は、画像処理機能を有するアプリケーションプログラム（以下、アプリケーションと記載する）がインストールされている情報処理装置(以下、ＰＣと記す)である。２０８はＰＣ２０１の外部装置となる情報処理装置(以下、サーバーと記す)であり、画像処理アプリケーションや、追加機能用のインストールプログラムをユーザーに提供するための機能を有する。本発明では、ＰＣ２０１で動作する画像処理アプリケーションにおいて、ユーザーが画像を選択した状態で機能追加を実行すると、選択されている画像の画像情報を用いて追加機能（例えば追加可能な機能や追加を推奨する候補の機能）を検索する。そして、検索された機能の情報を画像処理アプリケーションで表示することで、選択した画像に応じた追加機能をユーザーに提示している。２０２はＰＣ２０１全体を制御するためのＣＰＵである。２０４は、ハードディスクなどの二次記憶装置であり、ＣＰＵ２０２によってＰＣ２０１の動作を制御するためのプログラムや画像ファイルなどのデータを格納する。２０３は、ＲＡＭなどの一次記憶装置であり、二次記憶装置から読み出されたプログラムを格納するとともに、プログラムの実行時のワークエリアを提供する。２０５は、液晶ディスプレーなどの表示部である。２０６は、キーボードやマウスなどの操作部である。２０７は、他のコンピュータと通信する手段として、Ethernet(登録商標)端子などのネットワーク装置である。２０８は前述のとおりサーバである。２０９はサーバ２０８全体を制御するためのＣＰＵである。２１１は、ハードディスクなどの二次記憶装置であり、ＣＰＵ２０９によってサーバ２０８を制御するためのプログラムを格納する。また、本発明の実施例に応じて画像処理アプリケーションに追加できる機能の情報も格納している。
【００１１】
図２のシステムは、以下に説明する本件発明の実施例の構成を達成するための基本構成であり、各実施例の具体的構成はＰＣ２０１およびサーバ２０８のそれぞれの二次記憶装置に格納されている制御プログラムに従ったＣＰＵの制御動作により実現される。
【００１２】
第１の実施例
図１（ａ）は、本実施例においてＰＣ２０１で動作する画像処理アプリケーションの表示画面である。１０１はフォルダ選択エリアである。このエリアに表示されるフォルダを選択すると、選択したフォルダに保存されている画像のサムネイルをサムネイル表示エリア１０３に表示する。画像は、撮影情報、属性情報などのデータとともにファイル形式でフォルダ内に格納され、フォルダは二次記憶装置記憶されている。図１（ａ）の場合は、フォルダ１０２を選択しており、サムネイル表示エリア１０３に３枚の画像を表示している。サムネイルエリア１０３に表示されている画像は、例えば操作部２０６を操作することで、画像処理の対象として選択することができ、図１（ａ）の場合はサムネイル画像１０４が処理対象として選択されている。画像が選択されると、選択された画像の枠が図のように強調されて表示される。言うまでもなく、他の表示方法で選択を表してもよい。
【００１３】
サムネイルエリア１０３に表示している画像を選択すると、メニューに表示している機能追加処理１０５を選択して実行することができる。機能追加処理は、コンテキストメニューや専用のボタンから実行するようにしてもよい。
【００１４】
図３のフローチャートは、画像選択の処理が行われてから、機能追加の処理を実行するときの、ＰＣ２０１が行う処理を示す。この処理は、ＣＰＵ２０２が二次記憶装置２０４に格納されているプログラムに従ってＰＣ２０１の各構成要素を制御して画像処理アプリケーションを実行することによって実現される。
【００１５】
まず、ステップＳ３０１で、ＣＰＵ２０２は選択している画像の特徴を取得するための特徴取得の処理を行う。ここで、画像の特徴とは、例えば画像を撮影したときの日時情報や絞り値、撮影モードなどの撮影情報を含む。しかし、これに限るものではなく、例えばＣＰＵ２０２が画像の属性情報や画像の明るさや色味、被写体の種類などを解析し、その解析結果を表現した特徴量のデータでも良い。
以下の説明では、上記の撮影情報や特徴量データなど、その画像の特徴を示す情報を総じて、画像情報と呼ぶこととする。
【００１６】
図１（ａ）の画像処理アプリケーションで選択している画像１０４の画像情報の例を図４（ａ）に示す。図に示すように、画像情報は画像情報の種類と値、そして種類と値それぞれに対応したIDから構成される。例えば画像情報４０２は、撮影モードが水中であることを示している。ここで、「撮影モード」という画像情報の種類には「００２」というＩＤが、「水中」という撮影情報の値には「００８」というＩＤが割り振られている。プログラム内部での処理や、サーバとの通信では、「撮影モード」および「水中」という情報を送受信するのではなく、画像情報の種類として「００２」、画像情報の値として「００８」というＩＤを送受信する。このようにＩＤを用いることで、扱う情報の量を少なくすることができる。また、画像処理アプリケーションを多言語にローカライズしたときに、言語の影響を受けることなく、サーバとの通信を行うことができる。
【００１７】
図４（ａ）によれば、画像１０４の画像情報は画像フォーマットがＪＰＧであり（４０１）、撮影モードが水中であり（４０２）、ＧＰＳ情報がある（４０３）ことになる。ステップＳ３０１での画像情報の取得は、画像データから画像情報を直接読み取ってもよいし、画像処理アプリケーションが管理しているデータベースから読み取ってもよい。また、画像情報にはサムネイル画像も含まれる。このサムネイル画像は、一般的に画像解像度が縦１２０ピクセル、横１６０ピクセルで構成される縮小画像である。
【００１８】
ステップＳ３０２で、ＣＰＵ２０２は画像処理アプリケーションの機能としてＰＣ２０１に既にインストールされている機能の情報を取得する機能取得の処理を実行する。画像処理アプリケーションは、自身のアプリケーションにインストールされている機能の情報をレジリストなどに格納しているので、このレジストリの情報を参照して、インストールされている機能の情報を取得することが可能である。この取得される機能情報の例を図４（ｂ）に示す。機能情報は、ＩＤと機能名から構成される。ＩＤは他の機能と重複しない固有の値を持っており、画像処理アプリケーションの開発者が機能ごとに固有の値を付けるものとする。図４（ｂ）は、ＰＣ２０１に自動調整（４０４）と、動画カット（４０５）と、ＲＡＷ現像（４０６）の機能が既にインストールされていることを示している。
【００１９】
ステップＳ３０３において、ＣＰＵ２０２はステップＳ３０２で取得した画像情報と機能情報をサーバに送信する。サーバ２０８への送信は、ネットワーク装置２０７を介して行う。なお、上述したように画像自体を画像情報として使用する場合は、図４（ａ）の画像情報に加えて画像またはその縮小画像自体を画像情報として送信する。
【００２０】
このように本実施例では、ステップＳ３０２でＰＣにインストールされている機能の情報を取得し、ステップＳ３０３でその機能情報をサーバへ送信している。これは、機能追加に際しては、ＰＣにインストールされていない追加機能のみをユーザーに提示するためである。そこで、既にインストールされている機能の情報をサーバに送信し、サーバで画像情報に対応した機能を検索する際に、既にインストールされている機能が見つかっても、その機能情報をＰＣに送信しないようにしている。また、ＰＣ２０１から送信された機能情報は、サーバ２０８においてＰＣ２０１にすでにインストールされている機能の更新状況をチェックするのに使用することができる。
【００２１】
図５のフローチャートは、ＰＣ２０１がステップＳ３０３で送信した画像情報と機能情報を利用して、サーバ２０８がＰＣ２０１に追加を推奨する機能を検索し、選択的に追加機能をＰＣ２０１に通知する処理を示す。
【００２２】
ステップＳ５０１で、ＣＰＵ２０９はＰＣ２０１から送られてきた画像情報と機能情報を受信する。ＰＣ２０１から送られてきた情報の受信は、ネットワーク装置２１４を介して行う。
【００２３】
ステップＳ５０２で、ＣＰＵ２０９は受信した画像情報と機能情報を用いて、ＰＣ２０１に送信する機能情報を生成する。この機能情報は、ＰＣ２０１から受信した画像情報と機能情報を用いて、図６に示す機能情報管理表として二次記憶装置２１１に記憶されている管理情報から、ＰＣ２０１に追加できる機能を検索し、決定することによりで生成する。
【００２４】
図６に示されるように、機能情報管理表は、画像情報６０１と機能情報６０２の２つに分けることができる。画像情報６０１には、ＰＣから送られてくる可能性のある全ての画像情報が含まれる。画像情報６０１の構成は、図４（ａ）で説明した画像情報の構成と同じである。例えば、図４（ａ）にある画像フォーマットがＪＰＧという画像情報４０１は、図６の６０３に存在している。同じように、図４（ａ）にある画像情報４０２と画像情報４０３も、図６の６０４と６０５に存在している。機能情報６０２には、検索対象となる機能が含まれる。この機能は画像情報と関連付けられている。例えば、６０６で示した機能（静止画切り出し、動画結合、動画カット）は、画像フォーマットが動画という画像情報と関連付けられている。このように画像情報６０１と機能情報６０２とを関連付けること（対応関係）によって、ＰＣから送られてきた画像情報に対応する機能を検索することができる。また、機能情報６０２の構成は、図４（ｂ）で説明した画像情報の構成と同様に、ＩＤと機能名を含む。また、機能情報６０２は、後述するように機能の表示優先度情報を含んでもよい。
【００２５】
ステップＳ５０２の追加機能の検索の説明に戻る。ＣＰＵ２０９は、受信した画像情報に関連付けられている機能を、機能情報管理表から検索する。例えば、図４（ａ）に示す画像情報が送られてきた場合、図６の機能情報管理表の太線のように、画像情報４０１、４０２および４０３に関連付けられている機能情報６０７、機能情報６０８および機能情報６０９が検索結果となる。すなわち、明るさ補正、トリミング（ＪＰＧ）、コントラスト調整、傾き補正、水中補正および地図表示が機能の検索結果となる。ここで検索された機能は、追加される候補機能としてＰＣ２０１に通知される。そしてＰＣ２０１では、この候補機能からインストールを希望する機能を選択する機能選択の処理を行うことにより、選択した機能のみを、または全ての機能を、追加する対象として選択することが可能となる。
ここで、画像情報４０１に関連付けられている機能情報６１０（自動調整）が検索結果から外れている理由について説明する。前述したように、ユーザーが機能追加を実行するとき、既にＰＣ２０１にインストールされている機能を新たに提示する必要はない。そこで、ステップＳ５０１で受信した機能情報に含まれている機能である自動調整の情報は、ステップＳ５０２の検索結果から外している。このように検索結果をすでにＰＣにインストールされている機能以外の機能に絞り込むことで、ＰＣに既にインストールされている機能情報をユーザーに提示しないようにする。
【００２６】
また、サーバ２０８は、ＰＣ２０１から受信した機能情報に含まれるインストール済みの機能の更新状況を取得するように構成してもよい。例えば、インストール済みの機能の最新バージョン情報を取得してＰＣ２０１に追加機能の検索結果とともに送信するようにしてもよい。このようにすれば、画像処理アプリケーションで既にインストールされている機能であっても、より新しいバージョンに関する更新情報を、追加機能の提示と一緒に行う様な事も可能となす。
【００２７】
ステップＳ５０３で、ＣＰＵ２０９は検索結果に含まれる各機能で画像を処理する。ここで述べる画像処理とは、サムネイル画像を用いて、明るさ補正や水中補正などの機能を実行することである。画像処理に使用するサムネイル画像は、ＰＣ２０１から受信された画像情報に含まれるものを使用する。ステップＳ５０２での検索結果が機能情報６０７〜６０９の場合は、図６に示される合計６つの機能で画像処理を行う。
ステップＳ５０４で、ＣＰＵ２０９は検索結果の機能情報と、ステップＳ５０３での処理された処理結果画像データをＰＣ２０１へ送信する。例えば、図４（ａ）に示す画像情報が送られてきた場合は、検索結果の機能情報６０７〜６０９と、ステップＳ５０２で作成した６つのサムネイル画像をＰＣ２０１へ送信する。このように、サーバ２０８の送信処理により送信された機能は、ＰＣ２０１が追加する機能の候補となる。
ここで、ＰＣ２０１へ機能情報を送信する際は、例えば「００２」というＩＤだけでなく、「明るさ補正」という機能名も送信する。ＩＤだけでなく機能名も送信するのは、追加機能の場合はＰＣに今まで存在していないＩＤの機能を表示させるので、ＩＤだけでは機能名が分らないためである。また、本実施例では、ＰＣ２０１へ送信する機能情報に、表示優先度６１１の情報も含ませる。表示優先度は、ＰＣ２０１において画像処理アプリケーションでサーバ２０８から受信した機能情報を表示する際の優先順位を示す情報である。表示優先度はサーバ管理者が設定、修正できる情報とし、各機能の表示優先度は他の機能と重複しない固有の値をとする。ＰＣ２０１の画像処理アプリケーションは、表示優先度の番号が若い順に機能情報を表示する構成されている。このように、自由に表示優先度を設定できるようにすることで、ユーザーに積極的に提示させたい機能を適宜決定、変更できる。さらには、上述したように、サーバ２０８はＰＣ２０１に既にインストールされている機能の最新バージョン情報をもＰＣ２０１に送信するように構成してもよい。このようにすれば、ＰＣ２０１においてインストール済みの機能のバージョンチェックを行うことができ、その結果に基づいてユーザーに機能の更新を促すことが可能となる。
【００２８】
図７のフローチャートは、サーバ２０８が送信した機能情報と処理された画像データをＰＣ２０１が受信したときにＰＣ２０１が行う処理を示す。
【００２９】
ステップＳ７０１で、ＣＰＵ２０２はサーバ２０８から送られてきた機能情報と処理された画像データを受信する。
ステップＳ７０２で、ＣＰＵ２０２は受信した機能情報と処理された画像データを画像処理アプリケーションにより表示する。図１（ｂ）は、図１（ａ）の画像を選択した状態で機能追加を実行したときに、受信した機能情報と処理された画像データを画像処理アプリケーションに表示した画面を示す。つまり、図１（ａ）の状態で機能追加を実行すると、ＰＣ２０１はサーバとの通信を行い、その結果、画像処理アプリケーションはその表示画面を図１（ｂ）の状態に変更する。１０８は受信した機能情報と処理された画像データを表示する機能情報表示エリアである。１０９はサーバ２０８から受信した機能情報の１つである。１１０は受信した処理された画像データである。このように機能情報と処理された画像データをセットで表示することで、選択した画像を追加機能で処理した結果が一目で分かるようになり、ただ機能名だけを表示するよりも、追加することのできる機能をユーザーが認識し易くなる。また、ＣＰＵ２０２は受信した機能情報を機能情報表示エリア１０８に表示する際に、機能情報に含まれる表示優先度に従って表示を制御する。図１（ｂ）の場合は、受信した表示優先度の番号が若い順に、画面左から機能情報を表示している。ここで、受信した機能情報が機能情報表示エリア１０８に入りきらない場合は、機能情報エリア１０８にスクロールバーを設けて、スクロールバーを動かすことで全ての機能情報を表示優先度順に表示できるようにしてもよい。また、機能情報エリア１０８にボタンを設置して、そのボタンを押下すると別ウィンドウが開いて、入りきらなかった機能情報を別ウィンドウに表示してもよい。また、表示優先度に基づく表示を行うかどうかをユーザーに選択させる機能を画像処理アプリケーションに持たせてもよい。また、サーバ２０８からインストール済みの機能の最新バージョン情報をも受信している場合は、インストール済みの機能で更新可能な機能を示す情報を表示するようにしてもよい。
【００３０】
図１（ｂ）において、機能表示エリア１０８に表示されている機能から、インストールを希望する機能をユーザーが選択する操作をＰＣ２０１が受け付けると、その機能を示す情報をサーバに送信する（ステップＳ７０３）。すると、選択された機能を示す情報を受信したサーバは、選択された機能をインストールするためのプログラムをＰＣ２０１に送信するプログラム送信処理を実行する（不図示）。ステップＳ７０４では、サーバから読み出されてＰＣ２０１に送られてきたインストールプログラムを取得すると、そのインストールプログラムを起動して、新しい機能がアプリケーションに追加される（プログラム取得手段）。
例えば、ユーザーが１０９の水中補正を選択した場合、ＣＰＵ２０２は選択した機能に対応するＩＤをサーバ２０８に送信する。サーバ２０８は受信したＩＤに対応する機能を検索し、その機能のプログラムを画像処理アプリケーションに追加するためのインストーラーをＰＣ２０１へ送信する。ＰＣ２０１では、受信したインストーラーを実行して、画像処理アプリケーションに機能を追加する。インストール済みの機能で更新可能な機能を表示している場合も同様の処理ができるように構成することも可能である。
【００３１】
本実施例は、サーバが追加機能となりえる候補機能を検索することを基本構成としている。この点を考慮した場合、例えば次のように本実施例を変形することが可能である。    第１の実施例では、図１（ｂ）の追加機能の情報の表示において既にインストール済みの機能を表示させないために、選択した画像の画像情報をサーバに送信する際に、インストール済みの機能の情報も合わせてサーバに送信していた。これにより、サーバ２０８がステップＳ５０２で機能を検索したときに、インストール済みの機能を検索結果から外していた。しかし、インストール済みの機能情報を表示させない方法として、ＰＣ２０１がステップＳ７０２で機能を表示する際に、インストール済みの機能を表示対象外にすることも可能である。そこで、第１の実施例の第１の変形例として、インストール済みの機能の情報をサーバに送信せず、サーバから追加機能の検索結果を受信したＰＣ２０１がインストール済みの機能を表示対象外にする。すなわち、ＰＣ２０１がステップ７０２で機能情報を表示する際に、インストール済みの機能を表示対象外にする。
【００３２】
まず、図３のステップＳ３０２を実行するが、ステップＳ３０３でＣＰＵ２０２がサーバに送信する情報は、画像情報である。これに対応して、ステップＳ５０１でサーバ２０８が受信する情報も画像情報である。そして、ステップＳ５０２では受信した画像情報を用いて追加機能の検索を行う。即ち、図４（ａ）に示す画像情報を受信した場合は、図６の機能情報６０７〜６１０に示す全ての機能が検索結果となる。先ほどの説明ではＰＣにインストール済みの機能６１０が検索結果から外れていたが、今回の手順ではこの時点でＰＣにインストール済みの機能かどうかは分らないため、受信した画像情報に関連付けられている全ての機能が検索結果となる。そして、サーバ２０８は検索結果である機能情報をＰＣ２０１へ送信する。ＰＣ２０１では、サーバが送信した機能情報を受信する。そして、ステップ７０２の前に、取得してある既にＰＣにインストールされている機能の情報に基づいてサーバから受信した機能情報のうち、既にＰＣにインストールされている機能を除外する。このようにステップＳ７０２で表示する機能情報を限定することで、ＰＣにインストール済みの機能の情報を画像処理アプリケーションに表示しないようにすることができる。以上が、インストール済みの機能の情報を画像処理アプリケーションに表示させないための、もう一つの方法である。なお、ステップ３０２の処理を行なわずに、ステップＳ７０１と７０２の間で行うようにすることも可能である。また、本変形例は、後述する他の変形例にも適用することが可能である。ところで、本変形例では、サーバに機能情報を送信していないので、機能追加の際にインストール済みに機能の最新バージョン情報の取得ができなくなる。
【００３３】
次に、第１の実施例の第２の変形例を説明する。本変形例は、画像編集アプリケーションで選択する画像を複数の画像に拡張できる構成とすることにより、選択した複数の画像に対して第１の実施例の機能追加を実行することを可能とする。なお、本変形例においても選択された画像の画像情報とインストール済みの機能の機能情報がＰＣ２０１からサーバ２０８に送信される構成は第１の実施例と同様である。
【００３４】
図８は、複数の画像を選択して機能追加を実行した際の画像処理アプリケーションの表示画面を示している。図８では、サムネイル表示エリアの画像８０１、８０２をユーザーが選択している。複数の画像の選択は、操作部２０６の操作、例えばマウスのドラッグ操作や、キーボード操作で行うことができる。この状態で機能追加を実行すると、選択している２枚の画像の画像情報を機能情報（例えば図４（ｂ））とともにサーバ２０８に送信する。すなわち、ＰＣ２０１は、図３のフローチャートに従って選択されている各画像にたいして処理を行う。例えば、図８で選択している２つの画像の画像情報がそれぞれ図９（ａ）および（ｂ）であったとすると、画像情報９０１〜９０４と画像８０１、８０２のそれぞれのサムネイル画像およびステップＳ３０２で取得される機能情報がサーバ２０８に送信される。サーバ２０８は、図５のフローチャートに従って、まず受信した画像情報と機能情報とを用いて、図９（ｃ）に示す機能情報管理表からＰＣ２０１へ送信する追加機能を検索、決定する。本実施例では、複数の画像の画像情報がサーバ２０８に送られてきた場合は、まず受信した画像情報と関連付けられている機能を検索結果とする。即ち、図９（ａ）および（ｂ）に示す画像情報が送られてきた場合は、ＰＣ２０１から受信した機能情報を参照して機能情報管理表の中の機能９０５〜９０７を検索結果とする。９０５の機能は、画像フォーマットがＪＰＧという画像情報に関連付けられたものであり、９０６の機能は撮影モードが夜景という画像情報に関連付けられたものであり、９０７の機能は撮影モードがスポーツという画像情報に関連付けられたものである。
【００３５】
次に、サーバ２０８は前述の検索結果の機能の中で、選択されている全ての画像で適用できる機能を検索する。即ち、図９（ａ）および（ｂ）に示す画像情報が送られてきた場合は、画像フォーマットがＪＰＧという画像情報が共通であるので、９０５の機能が２つの画像に適用できることになる。そこで、この機能９０５にはフラグを付けておく。このフラグは、検索された機能の中で、選択している全ての画像で適用できる機能と、いずれかの画像で適用できる機能を区別するためのものである。従って、機能９０６、９０７の方にフラグを付けてもよいし、フラグ以外の方法で区別してもよい。このように、本変形例では選択された画像が複数であることを考慮して、ユーザーによる機能追加にとって有益となる処理を追加している。
【００３６】
次に、ステップＳ５０３の画像処理を実行する際は、検索結果の機能を適用できる全ての画像に対して、画像処理を行う。即ち、画像８０１、８０２のサムネイルに対して共通な機能９０５に含まれる明るさ補正、トリミング、コントラスト調整、傾き補正を行う。画像８０１のサムネイルに対しては機能９０６の夜景補正を行い、画像８０２のサムネイルに対しては機能９０７の手ブレ補正を行う。ステップＳ５０４でサーバ２０８が機能情報を送信する際は、機能情報９０５〜９０７と、先ほど付けたフラグも送信する。また、処理された画像データを送信する際も、前述した全ての処理された画像データを送信する。画像処理アプリケーションでは、機能情報を受信すると、選択したいずれかの画像で適用できる機能と処理された画像データを表示する。図８では、画像８０１に適用できる夜景補正機能８０３と、その処理された画像８０４を表示するとともに、画像８０２に適用できる手ブレ補正機能８０５と、その処理された画像８０６を表示する。また、画像８０１と８０２の両方に適用できる明るさ補正機能８０７と、その処理された画像８０８と８０９をも表示する。ここで、選択しているいずれかの画像に適用できる機能の表示モードと、選択している全ての画像で適用できる機能の表示モードとは、ラジオボタン８１０と８１１で切り替えることができる。デフォルトの状態では、いずれかの画像で適用できる機能を表示しているため、検索結果のORを示すラジオボタン８１０が選択されている。検索結果のＡＮＤを示すラジオボタン８１１を選択すると、選択している全ての画像で適用できる機能の表示のみを行う。ここで、画像処理アプリケーションが選択している全ての画像で適用できる機能の表示を行うためには、サーバから送信されたフラグを参照する。サーバで追加機能の検索を行った際に、選択している全ての画像で適用できる機能にフラグを付けた場合は、ラジオボタン８１１を選択すると、フラグが付与された機能情報だけを表示する。即ち、図９（ｃ）にある９０５の機能情報を表示する。このように、サーバで付けたフラグを参照することで、選択している全ての画像で適用できる機能の表示と、いずれかの画像で適用できる機能の表示を切り替えることができる。
【００３７】
本変形は第１の実施例の構成を前提としているが、上記第１の変形例の構成を前提としても本変形例のフラグの付与にはなんら変更を生じない。この場合、ＰＣ２０１側でサーバ２０８から受信した検索結果からインストール済みの機能の情報を除いた結果に対して上記説明の表示制御を行えばよい。ＰＣ２０１側でのインストール済みの機能の除外の結果、選択画像に共通の追加機能情報が無くなったときは、そのように表示制御が行われるだけである。
【００３８】
第３の変形例として、選択している画像が１００枚などの大量枚数の場合に好適な第１の実施例の変形例を説明する。例えば選択している画像が１００枚であり、その中の９９枚に共通な画像情報があっても、残りの１枚にその画像情報が存在しない場合は、図８のラジオボタン８１１（ＡＮＤ）を選択しても、９９枚に共通な機能は表示されない。また、ラジオボタン８１０を選択すれば、９９枚に共通な機能は表示されるが、その他に多数の機能情報が表示されることが予想されるため、９９枚に共通な画像情報に関連付けられた機能をユーザーが探すのに手間がかかってしまう。このような事態は、例えば選択した１００枚全ての画像を、ユーザーは夜景という撮影モードで撮影したと思っていても、実際は９９枚の撮影モードが夜景であり、残りの１枚の撮影モードがスポーツであった場合などに起こることが考えられる。そこで、多数の画像を選択して機能追加を実行する際は、サーバ２０８で機能を検索するときに、選択している複数の画像の中で所定の閾値以上の割合で存在する画像情報に関連付けられている機能を検索して決定するようにする。
【００３９】
以下、図１０を参照して本変形例を説明する。なお、本変形例においても選択された画像の画像情報とインストール済みの機能の機能情報がＰＣ２０１からサーバ２０８に送信される構成は第１の実施例と同様である。すなわち、以下の説明では第１の実施例に従って機能情報がＰＣ２０１からサーバ２０８に送信される構成において複数画像が選択された場合を前提としている。
【００４０】
図１０は、サムネイル表示エリア１００１に表示されている１００枚の画像を選択した状態で、機能追加を実行した際の画像処理アプリケーションの表示画面を示している。サムネイル表示エリア１００１で選択されている複数の画像が有する画像情報の割合を図１１（ａ）に示す。同図によれば、画像情報１１０１については、選択している１００枚の画像の中で８５枚の画像フォーマットがＪＰＧであり、１５枚が動画であり、５枚がＲＡＷであることを示している。画像情報１１０２については、１０枚の撮影モードが夜景であり、９０枚がスポーツであり、撮影モードが水中の画像は無いことを示している。画像情報１１０３については、６０枚にＧＰＳ情報が付加されており、４０枚には付加されていないことを示している。ユーザーが１００枚の画像を選択して機能追加を実行すると、ＰＣ２０１は図１１（ａ）に示す画像情報をサーバ２０８に送信する。なお、図１１（ａ）の情報を作成できるかどうかの判断の基準は、画像処理アプリケーション側に例えば画像の選択数としてユーザーが設定できるようにすることで達成できる。あるいは、サーバ管理者がサーバ側の都合で画像処理アプリケーションに設定するようにしてもよい。
【００４１】
サーバ２０８では、受信した１００枚の画像に対して所定の閾値以上の割合を持つ画像情報に関連付けられている機能を検索して決定する。例えば、サーバ管理者が閾値を５０％に設定していたとする。この場合、選択している画像の中で、画像情報の割合が５０％を超えているのは、図１１（ａ）にある画像情報１１０４〜１１０６である。そこで、サーバ２０８は、図１１（ｂ）に示す機能情報管理表を用いて、画像情報１１０４〜１１０６に関連付いた機能を検索する。図１１（ｂ）においては、機能情報１１０６〜１１０８が検索結果となる。検索結果に自動調整機能が含まれていないのは第３の実施例と同様の理由による。サーバ２０８は、検索結果の機能情報１１０６〜１１０８をＰＣ２０１へ送信する。画像処理アプリケーションでは、受信した機能情報を表示優先度に従って表示する。図１０の場合は、表示優先度が高い順に画面左から、手ブレ補正機能１００２、地図表示機能１００３、明るさ補正機能１００４を表示している。ここで、サーバ２０８で設定する閾値は、サーバ管理者が自由に設定することが可能である。このように、選択した画像に対して所定の閾値以上の割合を持つ画像情報に関連付けられている機能を検索することで、多数の画像を選択して機能追加を実行した際も、効率良く機能を検索することができる。
【００４２】
なお、図１０に示されているように、本実施例においても処理されたサムネイル画像が追加機能名とともに表示される。このためには、例えばサーバ２０８が、受信した画像情報の割合に含まれる画像情報を有する画像を受信した画像情報から識別する必要がある。そして、検索された追加機能に対応するすべてのサムネイル画像を処理して、追加機能とセットにしてＰＣ２０１に送信することになる。この処理は基本的に第１の実施例と同様である。選択画像の数が多いので、追加機能の表示は、表示優先度に対するスクロールバー(水平方向)と処理画像に対するスクロールバー(垂直方向)を設けるなどで対処できる。
【００４３】
本変形例は、多くの画像を選択して機能追加を実行するときに、所定の閾値以上の割合で存在している画像情報に関連付けられている機能を検索するが、画像情報の割合が高い順に、所定の数だけ機能を検索する構成としてもよい。例えば、サーバ２０８で受信した画像情報の中で割合が高い順に、７つの機能を検索することを考える。この「７」という値はサーバ管理者が自由に設定できるものとする。図１１（ａ）に示す画像情報の中で、選択した画像に対する割合が高い順に検索を行うと、まずは９０％の割合を持つ、撮影モードがスポーツという画像情報１１０５に対する検索が行われる。この画像情報に関連付けられている機能を、図１1（ｂ）に示す機能情報管理表を用いて検索すると、１１０７に示す手ブレ補正機能が検索される。このようにして、選択した画像に対する画像情報の割合が高い順に、７つの機能が見つかるまで検索を行うと、１１０６〜１１０９の機能が検索結果となる。この場合においても、ＰＣ２０１でインストール済みの機能については検索結果から除外されている。また、同じ画像情報に関連付けられている機能が複数あり、その機能を全て検索結果にすると所定の閾値を超えてしまう場合は、表示優先度が高い機能を優先するものとする。サーバ２０８は、検索結果の機能情報をＰＣ２０１へ送信して、画像処理アプリケーションでは受信した機能情報を表示する。即ち、選択した画像の画像情報の割合が図１１（ａ）に示すものであれば、サーバでの検索結果である１１０６〜１１０９の機能情報を画像処理アプリケーションに表示する。このように、サーバ管理者が検索結果の機能数に所定の閾値を設定することで、多数の画像の画像情報がサーバに送信された際も、ユーザーが効率良く機能を検索することができる。
【００４４】
第２の実施例
第１の実施例およびその変形例では、画像を選択した状態で機能追加を選択、実行したときに、選択した画像の画像情報に関連付けられていた機能をサーバで検索して、ユーザーに提示した。本実施例では、画像を選択した状態でメニューの編集機能を選択すると、その画面上で既にＰＣにインストールされている機能のうち選択した画像に適用できる機能と機能追加処理を選択、実行することのできる構成とする。
【００４５】
まず、編集メニューでの機能の選択について図１２（ａ）を参照して説明する。基本的な画面構成は図１（ａ）と同じであるが、本実施例の画像処理アプリケーションのメニューには編集１２０２がある。この編集メニュー１２０２は、ユーザーがサムネイル表示エリアに表示されている画像を選択すると、選択、実行することができる。なお、編集メニュー１２０２は、画像を編集する機能を実行するためのものであり、コンテキストメニューや専用のボタンから行うようにしてもよい。図１２（ａ）は、サムネイル表示エリアに表示されている画像１２０１を選択して、１２０２の編集メニューを選択した際の画像処理アプリケーションの表示画面を示している。編集メニュー１２０２を選択すると、画像処理アプリケーションは既にＰＣにインストールされている機能の中で、選択している画像に適用できる機能１２０３を表示する。この表示は、第１の実施例と同様に、ＣＰＵ２０２が画像処理アプリケーションの機能としてＰＣ２０１に既にインストールされている機能の情報を取得することで行なうことが可能である。図１２（ａ）の場合は、自動調整と水中補正の機能が既にＰＣにインストールされていることを示している。例えば、自動調整という機能を選択した場合は、選択している画像１２０１に対して自動調整を実行する。また、ＰＣに他の機能がインストールされていたとしても、選択している画像１２０１に適用できない機能である場合は、１２０３には表示しない。機能１２０３の下には、機能追加１２０４の表示を行う。機能追加１２０４を選択すると、選択している画像の画像情報に関連付けられている機能をサーバ２０８で検索して、その機能情報を画像処理アプリケーションに表示する。この部分の処理については、前述した実施例の処理と同様である。
すなわち、図１２（ａ）において、機能追加１２０４を選択するとサーバ２０８と通信を行い、サーバでの検索結果である機能情報を受信して、図１２（ｂ）のように受信した機能情報１２０５を表示する。例えば、選択している画像１２０１の画像情報が図４（ａ）である場合を考える。また、ＰＣには自動調整と水中補正という機能が既にインストールされているものとする。この場合、選択されている画像１２０１の画像情報とＰＣにインストールされている機能情報を送信すると、サーバ２０８は図６（ｂ）に示す機能情報管理表を用いることで、６０７と６０９の機能が検索結果となる。６０８と６１０の機能は、ＰＣに既にインストールされているため、検索結果から外れる。そして、サーバ２０８は検索結果の機能情報をＰＣ２０１へ送信し、画像処理アプリケーションでは、受信した機能情報を表示する。受信した機能情報１２０５は、例えば機能追加１２０４の右側に表示される。また、選択している画像で実行できる機能がＰＣに１つもインストールされていない場合は、例えば機能追加１２０４のみを表示するようにする。このように、編集メニューを選択すると、既にＰＣにインストールされている機能の中で選択している画像に適用できる機能が表示され、ユーザーは選択した画像に適用できる編集機能のみを選択することができる。また、現在インストールされていない追加機能をユーザーが欲している場合は、同じ操作で機能の追加を実行することができる。また、選択している画像で実行できる機能が１つもインストールされていない場合でも、同じ操作で機能の追加を実行することができる。
【００４６】
なお、図１２（ａ）で複数の画像が選択されている場合は、第１の実施例の第２または第３の変形例と同様にサーバ２０８へ送信する画像情報の生成およびサーバ２０８での検索処理を行ってもよい。そうすれば、上記第２または第３の変形例と同様の追加機能の表示構成を図１２(b)の表示１２０５において達成することが可能となる。例えば、図８のＯＲおよびＡＮＤボタンに対応した表示および図１０の画像情報の割合に基づく表示も第２および第３の変形例と同様に可能である。なお、追加機能が選択画像に共通かどうかは、表示される機能名にマークなどを付けて識別することができる。
【００４７】
また、本実施例では、追加機能の検索に伴うサーバ２０８で処理されたサムネイル画像の表示がないので、選択画像の画像情報とともにサムネイル画像をＰＣ２０１からサーバ２０８に送信しない構成にしても画像処理アプリケーションでは問題を生じない。同様に、例えば第１の実施例のようにサムネイル画像をサーバに送信して、その処理画像を受信する構成のままでもかまわない。
【００４８】
第３の実施例
第２の実施例では追加機能の検索をサーバ２０８で行っているが、本実施例ではＰＣ２０１側で行う構成とする。すなわち、本実施例では、ＰＣ２０１にインストールされている画像処理アプリケーションに付随するデータベースとして機能情報管理表をＰＣ２０１内に保持するよう画像処理アプリケーションを構成する。そうすれば、追加機能の検索機能をＰＣ２０１において実行することが可能となる。これにより、追加機能の検索を行う際に、サーバ２０８との通信を行わなくても、選択された画像に適用できる追加機能を提示することが可能となる。
【００４９】
本実施例の機能情報管理表は、機能の追加メニューを選択する前に、予め画像処理アプリケーションに付随してサーバ２０８から提供されて、二次記憶装置２０４に格納されているものとする。また、この機能情報管理表は、アプリケーションの機能により、またはサ−バー２０８からの指示により随時、最新の管理表に更新可能に構成されている。また、機能情報管理表の構成を、上記実施例１または２と同じとすればサーバ２０８で実行されていた検索処理をそのまま画像処理アプリケーションに移行することが可能となる。すなわち、画像処理アプリケーションは、選択画像の画像情報と既にインストール済みの機能の情報とを用いて機能情報管理表を検索することになる。また、図１２（ｂ）の機能情報１２０５の表示を、表示優先度に従って制御することも可能となる。さらには、複数の画像が選択された場合の追加機能の検索処理についても、第２の実施例で説明したように、第１の実施例の変形例で説明した処理を、画像処理アプリケーションに移行することで可能となる。ただし、第１の実施例の変形例で使用される「所定の閾値」は、機能情報管理表とともにサーバ２０８からＰＣ２０１に予め与えておくものとする。
【００５０】
以上に加えて、機能情報管理表に各機能のバージョン情報を追加しておけば、既にＰＣ２０１にインストールされている機能のバージョンを検索時に判定することができ、ユーザーに機能の更新の有無を提示することが可能となる。例えば、既にインストールされている機能のバージョンが最新のバージョンでない場合は、図１２（ａ）の表示１２０３において該当する機能名にマークなどを付すことで更新できることを提示することができる。
【００５１】
図１３のフローチャートを参照して本実施例の処理の流れを説明する。本処理は、上述のようにすべてＰＣ２０１内で実行される。
【００５２】
ステップＳ１３０１において図１２（ａ）の画面で表示されている画像が選択する。なお、図１２（ａ）の画面が表示されたときにはすでに機能情報管理表が画像処理アプリケーションに付随するデータベースとしてＰＣ２０１内に取得されているとする。次いで、ステップＳ１３０２において、編集メニューが選択されたかどうか判定する。選択されていないと判定されたときは、本判定を繰り返す。選択されたと判定されたときは、ステップ１３０３において編集メニューの表示、即ち図１２（ａ）の画面表示を行う。この表示は、第２の実施例と同様に、ＣＰＵ２０２が画像処理アプリケーションの機能としてＰＣ２０１に既にインストールされている機能の情報を取得することで行なうことが可能である。次いで、ステップＳ１３０４で、表示メニューの選択を判定する。機能追加が選択されたと判定されたときは、ステップＳ１３０５において追加機能の検索を行なう。この検索処理は、ＰＣ２０１内で実行されること以外は上記第２の実施例と同じである。ステップＳ１３０４で編集機能が選択されたと判定されたときは、選択されている画像に対して選択された編集機能を実行する。ステップＳ１３０７では、ステップＳ１３０５での追加機能の検索またはステップＳ１３０６での編集機能の実行の結果を表示する。
【００５３】
その他の実施例
上記の実施例では追加機能をインストールするためのプリグラムを記憶する装置は外部サーバであるとして説明を行ったが、これに限るものではない。例えば、追加機能を選択した外部サーバとは異なる別のサーバや、ネットワーク上のハードディスクといった外部記録装置や、ＣＤ−ＲＯＭ等の外部記録媒体に、追加機能をインストールするためのプログラムを記憶しておき、インストールしようとする追加機能に対応するプログラムを、この外部記録装置または外部記録媒体から読み出すように構成しても良い。
【００５４】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又はコンピュータ読み取り可能な各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行することで本件発明を実現する。
【００５５】
「コンピュータ読み取り可能な各種記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、一定時間プログラムを保持しているものも含むものとする。例えば、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発メモリ（ＲＡＭ）が該当する。
【００５６】
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。上述の実施形態の一部を適宜組み合わせてもよい。
【図２】
0005852370.tif 000002
【図３】
0005852370.tif 000003
【図４】
0005852370.tif 000004
【図５】
0005852370.tif 000005
【図６】
0005852370.tif 000006
【図７】
0005852370.tif 000007
【図９】
0005852370.tif 000008
【図１１】
0005852370.tif 000009
【図１３】
0005852370.tif 000010
【図１】
0005852370.tif 000011
【図８】
0005852370.tif 000012
【図１０】
0005852370.tif 000013
【図１２】
0005852370.tif 000014