JP2017041086A - 情報処理装置、システム、情報処理方法及びプログラム - Google Patents
情報処理装置、システム、情報処理方法及びプログラム Download PDFInfo
- Publication number
- JP2017041086A JP2017041086A JP2015162204A JP2015162204A JP2017041086A JP 2017041086 A JP2017041086 A JP 2017041086A JP 2015162204 A JP2015162204 A JP 2015162204A JP 2015162204 A JP2015162204 A JP 2015162204A JP 2017041086 A JP2017041086 A JP 2017041086A
- Authority
- JP
- Japan
- Prior art keywords
- image
- user
- sharing group
- display priority
- image sharing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- User Interface Of Digital Computer (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】ユーザにとって新規な画像を優先的に閲覧できるようにすることを目的とする。【解決手段】第1の画像共有グループに所属するユーザが第2の画像共有グループに追加された場合、前記第2の画像共有グループで共有される画像の表示優先度を、前記第1の画像共有グループで共有される画像と類似する度合いに応じて決定する決定手段と、前記決定手段により決定された、前記第2の画像共有グループで共有される画像の表示優先度に係る情報を、前記ユーザのクライアント装置に提供する提供手段と、を有する。【選択図】図8
Description
本発明は、情報処理装置、システム、情報処理方法及びプログラムに関する。
複数ユーザからなるグループを構成し、同一のグループに参加しているユーザ同士で画像を共有するサービスが様々な運営元によってユーザへ提供されている。特許文献1には、複数ユーザからなるグループの作成に関する技術が開示されている。特許文献1の技術は、ユーザがサーバ上に保存した画像を解析し、類似した画像を持つユーザからなるグループを新たに作成し、そのグループの中でユーザ同士の画像の共有を可能にする技術である。
ユーザがグループを移動したりして他のグループに参加する場合、移動後のグループで共有される画像の中に、移動前のグループで共有される画像と同じようなシーンや被写体を撮影した類似画像が多数存在する場合、以下のような問題がある。即ち、グループを移動したユーザは、他のグループに参加したのに、移動前のグループと同じような画像を多数閲覧することになってしまうという問題があった。
特許文献1では、複数ユーザからなるグループの作成が容易になるものの、上記問題を解決するものではなかった。
そこで、本発明は、ユーザにとって新規な画像を優先的に閲覧できるようにすることを目的とする。
特許文献1では、複数ユーザからなるグループの作成が容易になるものの、上記問題を解決するものではなかった。
そこで、本発明は、ユーザにとって新規な画像を優先的に閲覧できるようにすることを目的とする。
上記課題を解決するための一手段として、情報処理装置は、第1の画像共有グループに所属するユーザが第2の画像共有グループに追加された場合、前記第2の画像共有グループで共有される画像の表示優先度を、前記第1の画像共有グループで共有される画像と類似する度合いに応じて決定する決定手段と、前記決定手段により決定された、前記第2の画像共有グループで共有される画像の表示優先度に係る情報を、前記ユーザのクライアント装置に提供する提供手段と、を有する。
また、上記課題を解決するための一手段として、情報処理装置は、第1の画像共有グループに所属するユーザが第2の画像共有グループに追加された場合、追加されたユーザによって前記第2の画像共有グループに追加される画像の表示優先度を、前記第2の画像共有グループの既存ユーザによって共有されている画像と類似する度合いに応じて決定する決定手段と、前記決定手段により決定された、前記追加されたユーザによって前記第2の画像共有グループに追加される画像の表示優先度に係る情報を、前記第2の画像共有グループの既存ユーザのクライアント装置に提供する提供手段と、を有する。
また、上記課題を解決するための一手段として、情報処理装置は、第1の画像共有グループに所属するユーザが第2の画像共有グループに追加された場合、追加されたユーザによって前記第2の画像共有グループに追加される画像の表示優先度を、前記第2の画像共有グループの既存ユーザによって共有されている画像と類似する度合いに応じて決定する決定手段と、前記決定手段により決定された、前記追加されたユーザによって前記第2の画像共有グループに追加される画像の表示優先度に係る情報を、前記第2の画像共有グループの既存ユーザのクライアント装置に提供する提供手段と、を有する。
本発明によれば、ユーザにとって新規な画像を優先的に閲覧できるようにすることができる。
以下、本発明の実施形態について図面に基づいて説明する。
<実施形態1>
図1は、画像管理システムのシステム構成の一例を示す図である。本実施形態の画像管理システムは、クライアント装置101とサーバ装置(情報処理装置)102を含む。クライアント装置101とサーバ装置102とは、ネットワーク103を介して相互に接続されている。クライアント装置101及びサーバ装置102は、例えばPCやスマートフォン等の情報処理装置等である。
サーバ装置102は、クライアント装置101に対して図6で後述するコマンド一覧テーブル600等を公開している。クライアント装置101は、サーバ装置102が公開するコマンド一覧テーブル600に含まれるコマンドをサーバ装置102に送信することで、送信するコマンドに応じた処理をサーバ装置102へ指示する。
クライアント装置101は、サーバ装置102に対しコマンドとリクエストデータとを送信することで、コマンドに応じた処理の依頼を実行する。サーバ装置102は、受信したコマンドとリクエストデータとに基づいて、コマンドに応じた処理を行い、処理の結果をレスポンスデータとしてクライアント装置101へ送信する。クライアント装置101は、サーバ装置102から、依頼した処理のレスポンスデータを受信する。
図1は、画像管理システムのシステム構成の一例を示す図である。本実施形態の画像管理システムは、クライアント装置101とサーバ装置(情報処理装置)102を含む。クライアント装置101とサーバ装置102とは、ネットワーク103を介して相互に接続されている。クライアント装置101及びサーバ装置102は、例えばPCやスマートフォン等の情報処理装置等である。
サーバ装置102は、クライアント装置101に対して図6で後述するコマンド一覧テーブル600等を公開している。クライアント装置101は、サーバ装置102が公開するコマンド一覧テーブル600に含まれるコマンドをサーバ装置102に送信することで、送信するコマンドに応じた処理をサーバ装置102へ指示する。
クライアント装置101は、サーバ装置102に対しコマンドとリクエストデータとを送信することで、コマンドに応じた処理の依頼を実行する。サーバ装置102は、受信したコマンドとリクエストデータとに基づいて、コマンドに応じた処理を行い、処理の結果をレスポンスデータとしてクライアント装置101へ送信する。クライアント装置101は、サーバ装置102から、依頼した処理のレスポンスデータを受信する。
また、サーバ装置102がクライアント装置101から送信されるコマンドに対してクライアント装置101へ送信するレスポンスデータは、処理成功フラグを含む。処理成功フラグは、クライアント装置101から指示された処理が正常に完了した場合、TRUEとなり、正常に完了しなかった場合、FALSEとなる。また、本実施形態では、クライアント装置101とサーバ装置102とは、例えば、Hyper Text Transfer Protocolを用いて、互いに通信している。サーバ装置102は、ヘッダ部分のステータスコードに処理成功フラグに相当する情報を含むレスポンスデータをクライアント装置101に送信することとしてもよい。
本実施形態では、画像管理システムは、クライアント装置101とサーバ装置102とをそれぞれ一台ずつ含むこととするが、二台以上含むこととしてもよい。また、サーバ装置102は、アカウント情報に基づいて、クライアント装置101を操作するユーザを、識別する。ユーザは、クライアント装置101を介して、サーバ装置102上にアカウント情報、画像や動画等のコンテンツ等を保存し、更に、別のユーザに対してアカウント情報、コンテンツ等を公開する。また、サーバ装置102は、複数のユーザを含むユーザグループを管理し、同一のユーザグループに参加しているユーザ同士で、各ユーザが所有するコンテンツを共有させる。ユーザグループに参加しているユーザは、そのユーザグループの所属ユーザの一例である。ユーザグループは、画像共有グループの一例である。
本実施形態では、画像管理システムは、クライアント装置101とサーバ装置102とをそれぞれ一台ずつ含むこととするが、二台以上含むこととしてもよい。また、サーバ装置102は、アカウント情報に基づいて、クライアント装置101を操作するユーザを、識別する。ユーザは、クライアント装置101を介して、サーバ装置102上にアカウント情報、画像や動画等のコンテンツ等を保存し、更に、別のユーザに対してアカウント情報、コンテンツ等を公開する。また、サーバ装置102は、複数のユーザを含むユーザグループを管理し、同一のユーザグループに参加しているユーザ同士で、各ユーザが所有するコンテンツを共有させる。ユーザグループに参加しているユーザは、そのユーザグループの所属ユーザの一例である。ユーザグループは、画像共有グループの一例である。
図2(a)は、サーバ装置102のハードウェア構成の一例を示す図である。サーバ装置102は、CPU110、主記憶装置111、補助記憶装置112、ネットワークI/F113を含む。CPU110、主記憶装置111、補助記憶装置112、ネットワークI/F113は、システムバス114を介して、相互に接続されている。
CPU110は、サーバ装置102の処理を制御する中央演算装置である。主記憶装置111は、CPU110のワークエリアや種々のデータの記憶領域として機能する記憶装置である。補助記憶装置112は、各種プログラム、各種閾値、各種テーブル等の設定値等を格納する。CPU110は、ネットワークI/F113を介して、外部装置と通信を行う。
CPU110が、補助記憶装置112等に記録されたプログラムに基づき処理を実行することによって、図3で後述するサーバ装置102の機能、図8、9、12、18、21、22で後述するフローチャートの処理が実現される。
CPU110は、サーバ装置102の処理を制御する中央演算装置である。主記憶装置111は、CPU110のワークエリアや種々のデータの記憶領域として機能する記憶装置である。補助記憶装置112は、各種プログラム、各種閾値、各種テーブル等の設定値等を格納する。CPU110は、ネットワークI/F113を介して、外部装置と通信を行う。
CPU110が、補助記憶装置112等に記録されたプログラムに基づき処理を実行することによって、図3で後述するサーバ装置102の機能、図8、9、12、18、21、22で後述するフローチャートの処理が実現される。
図2(b)は、クライアント装置101のハードウェア構成の一例を示す図である。クライアント装置101は、CPU120、主記憶装置121、補助記憶装置122、ネットワークI/F123、表示部124を含む。CPU120、主記憶装置121、補助記憶装置122、ネットワークI/F123、表示部124は、システムバス125を介して、相互に接続されている。
CPU120は、クライアント装置101の処理を制御する中央演算装置である。主記憶装置121は、CPU120のワークエリアや種々のデータの記憶領域として機能する記憶装置である。補助記憶装置122は、各種プログラム、各種閾値、各種設定値等を格納する。CPU120は、ネットワークI/F123を介して、外部装置と通信を行う。表示部124は、サーバ装置102から取得された画像等を表示するディスプレイ等である。CPU120は、表示部124を介して、サーバ装置102からの画像等についての表示制御を行う。
CPU120が、補助記憶装置122等に記録されたプログラムに基づき処理を実行することによって、図10で後述するクライアント装置101の機能、図11、19で後述するフローチャートの処理が実現される。
CPU120は、クライアント装置101の処理を制御する中央演算装置である。主記憶装置121は、CPU120のワークエリアや種々のデータの記憶領域として機能する記憶装置である。補助記憶装置122は、各種プログラム、各種閾値、各種設定値等を格納する。CPU120は、ネットワークI/F123を介して、外部装置と通信を行う。表示部124は、サーバ装置102から取得された画像等を表示するディスプレイ等である。CPU120は、表示部124を介して、サーバ装置102からの画像等についての表示制御を行う。
CPU120が、補助記憶装置122等に記録されたプログラムに基づき処理を実行することによって、図10で後述するクライアント装置101の機能、図11、19で後述するフローチャートの処理が実現される。
図3は、サーバ装置102の機能構成の一例を示す図である。サーバ装置102は、ユーザ管理部201、画像管理部202、データ送受信部203、を含む。
ユーザ管理部201は、アカウント情報管理部211、ユーザグループ管理部212を含む。アカウント情報管理部211は、図4で後述するアカウント情報管理テーブル300を含み、ユーザを一意に特定するアカウント情報を管理する。
図4は、アカウント情報管理テーブルの一例を示す図である。アカウント情報とは、ユーザの管理に利用される情報であり、ユーザID、ユーザ名、パスワード、プロフィール情報を含む。アカウント情報管理部211は、パスワードを、暗号化を施してからアカウント情報管理テーブル300に保存してもよい。プロフィール情報は、メールアドレスや年齢、性別等のユーザの属性情報を表す情報である。本実施形態では、アカウント情報管理テーブル300は、補助記憶装置112に保管されている。
ユーザ管理部201は、アカウント情報管理部211、ユーザグループ管理部212を含む。アカウント情報管理部211は、図4で後述するアカウント情報管理テーブル300を含み、ユーザを一意に特定するアカウント情報を管理する。
図4は、アカウント情報管理テーブルの一例を示す図である。アカウント情報とは、ユーザの管理に利用される情報であり、ユーザID、ユーザ名、パスワード、プロフィール情報を含む。アカウント情報管理部211は、パスワードを、暗号化を施してからアカウント情報管理テーブル300に保存してもよい。プロフィール情報は、メールアドレスや年齢、性別等のユーザの属性情報を表す情報である。本実施形態では、アカウント情報管理テーブル300は、補助記憶装置112に保管されている。
ユーザグループ管理部212は、図5で後述するユーザグループ管理テーブル400を含む。
図5は、ユーザグループ管理テーブルの一例を示す図である。ユーザグループ管理テーブル400は、ユーザグループを一意に識別するためのユーザグループIDと、ユーザグループIDに対応するユーザグループに参加しているユーザのユーザIDと、を含む。また、ユーザグループ管理テーブル400は、ユーザグループIDに対応するユーザグループから脱退したユーザのユーザIDを含む。更に、ユーザグループ管理テーブル400は、ユーザグループIDに対応するユーザグループのユーザグループ名やユーザグループIDに対応するユーザグループの作成日時等のユーザグループの属性情報を含む。本実施形態では、ユーザグループ管理テーブル400は、補助記憶装置112に保管されている。
図5は、ユーザグループ管理テーブルの一例を示す図である。ユーザグループ管理テーブル400は、ユーザグループを一意に識別するためのユーザグループIDと、ユーザグループIDに対応するユーザグループに参加しているユーザのユーザIDと、を含む。また、ユーザグループ管理テーブル400は、ユーザグループIDに対応するユーザグループから脱退したユーザのユーザIDを含む。更に、ユーザグループ管理テーブル400は、ユーザグループIDに対応するユーザグループのユーザグループ名やユーザグループIDに対応するユーザグループの作成日時等のユーザグループの属性情報を含む。本実施形態では、ユーザグループ管理テーブル400は、補助記憶装置112に保管されている。
画像管理部202は、画像保管部221、表示優先度設定部222と、を含む。画像保管部221は、画像記憶部221−1と、画像検索部221−2とを含む。画像記憶部221−1は、補助記憶装置112等で構成される。画像保管部221は、画像記憶部221−1に画像データを記憶し、図6で後述する画像管理テーブル500を用いて画像を管理する。
図6は、画像管理テーブルの一例を示す図である。画像管理テーブル500は、画像を一意に識別するための画像IDと、画像IDに対応する画像を所有するユーザを識別する所有ユーザIDと、画像IDに対応する画像の画像タイトルと、画像IDに対応する画像のMIMEタイプ等の画像属性情報と、を含む。また、画像管理テーブル500は、画像IDに対応する画像がどのユーザグループで共有されたかを示す共有済みグループIDを含む。なお、画像保管部221は、画像管理テーブルに、共有済みグループIDを複数記録することができる。
図6は、画像管理テーブルの一例を示す図である。画像管理テーブル500は、画像を一意に識別するための画像IDと、画像IDに対応する画像を所有するユーザを識別する所有ユーザIDと、画像IDに対応する画像の画像タイトルと、画像IDに対応する画像のMIMEタイプ等の画像属性情報と、を含む。また、画像管理テーブル500は、画像IDに対応する画像がどのユーザグループで共有されたかを示す共有済みグループIDを含む。なお、画像保管部221は、画像管理テーブルに、共有済みグループIDを複数記録することができる。
画像保管部221は、画像検索部221−2を介して、画像管理テーブル500の中から画像検索クエリと一致する画像を取得する。
表示優先度設定部222は、図8のS713で後述する第一の画像リストと、図8のS714で後述する第二の画像リストと、を入力とし受け付け、以下の処理を行う。画像リストとは、画像を特定するための情報を一列に並べたものである。即ち、表示優先度設定部222は、第一の画像リストに類似した画像が第二の画像リストに存在するか否かに応じて、第一の画像リストの各画像の表示優先度を決定する。このように表示優先度設定部222は、決定部としての機能を有している。
データ送受信部203は、クライアント装置101からのコマンドを受信したり、クライアント装置101へのレスポンスデータを送信したりする。
表示優先度設定部222は、図8のS713で後述する第一の画像リストと、図8のS714で後述する第二の画像リストと、を入力とし受け付け、以下の処理を行う。画像リストとは、画像を特定するための情報を一列に並べたものである。即ち、表示優先度設定部222は、第一の画像リストに類似した画像が第二の画像リストに存在するか否かに応じて、第一の画像リストの各画像の表示優先度を決定する。このように表示優先度設定部222は、決定部としての機能を有している。
データ送受信部203は、クライアント装置101からのコマンドを受信したり、クライアント装置101へのレスポンスデータを送信したりする。
図7は、サーバ装置102がクライアント装置101に公開するコマンド一覧テーブルの一例を示す図である。サーバ装置102は、クライアント装置101に対して、コマンドの一覧をテーブル形式で表したコマンド一覧テーブル600を公開する。より具体的には、サーバ装置102は、クライアント装置101からアクセス可能な補助記憶装置112内の記憶領域にコマンド一覧テーブル600を保管することで、クライアント装置101に対して、コマンド一覧テーブル600を公開する。また、サーバ装置102は、クライアント装置101から送信されるコマンド一覧の要求に応じて、コマンド一覧テーブル600をクライアント装置101に送信することで、クライアント装置101に対して、コマンド一覧テーブル600を公開してもよい。本実施形態では、コマンド一覧テーブル600は、補助記憶装置112に保管されている。
CREATE GROUPコマンドは、ユーザグループを新規に作成する処理をサーバ装置102に指示するためのコマンドである。SEARCH GROUPコマンドは、ユーザグループを検索する処理をサーバ装置102に指示するためのコマンドである。JOIN GROUPコマンドは、指定されたユーザをユーザグループに参加させる処理をサーバ装置102に指示するためのコマンドである。
CREATE GROUPコマンドは、ユーザグループを新規に作成する処理をサーバ装置102に指示するためのコマンドである。SEARCH GROUPコマンドは、ユーザグループを検索する処理をサーバ装置102に指示するためのコマンドである。JOIN GROUPコマンドは、指定されたユーザをユーザグループに参加させる処理をサーバ装置102に指示するためのコマンドである。
LEAVE GROUPコマンドは、指定されたユーザをユーザグループから脱退させる処理をサーバ装置102に指示するためのコマンドである。SAVE IMAGEコマンドは、画像のアップロード処理をサーバ装置102に指示するためのコマンドである。
ADD IMAGEコマンドは、ユーザグループで共有する画像を追加する処理をサーバ装置102に指示するためのコマンドである。SEARCH IMAGEコマンドは、画像の検索処理をサーバ装置102に指示するためのコマンドである。
サーバ装置102は、以上のコマンドに加えて、アカウント情報、画像、ユーザグループ等の情報の更新や削除の処理をサーバ装置102に指示するためのコマンドを、コマンド一覧テーブル600に記録し、クライアント装置101に公開することとしてもよい。サーバ装置102は、例えば、アカウント情報の更新処理をサーバ装置102に指示するためのコマンドであるUPDATE ACCOUNTコマンドを、コマンド一覧テーブル600に記録することとしてもよい。また、サーバ装置102は、例えば、アカウント情報の削除処理をサーバ装置102に指示するためのコマンドであるDELETE ACCOUNTコマンドを、コマンド一覧テーブル600に記録することとしてもよい。
ADD IMAGEコマンドは、ユーザグループで共有する画像を追加する処理をサーバ装置102に指示するためのコマンドである。SEARCH IMAGEコマンドは、画像の検索処理をサーバ装置102に指示するためのコマンドである。
サーバ装置102は、以上のコマンドに加えて、アカウント情報、画像、ユーザグループ等の情報の更新や削除の処理をサーバ装置102に指示するためのコマンドを、コマンド一覧テーブル600に記録し、クライアント装置101に公開することとしてもよい。サーバ装置102は、例えば、アカウント情報の更新処理をサーバ装置102に指示するためのコマンドであるUPDATE ACCOUNTコマンドを、コマンド一覧テーブル600に記録することとしてもよい。また、サーバ装置102は、例えば、アカウント情報の削除処理をサーバ装置102に指示するためのコマンドであるDELETE ACCOUNTコマンドを、コマンド一覧テーブル600に記録することとしてもよい。
図8、9は、サーバ装置102によるコマンドの受付処理の一例を示すフローチャートである。
S701において、アカウント情報管理部211は、クライアント装置101から送信されたユーザIDとパスワードとに基づいて、ユーザの認証を行う。より具体的には、アカウント情報管理部211は、アカウント情報管理テーブル300に受信したユーザIDとパスワードとの組み合わせに対応する情報が記録されているか否かを判定する。アカウント情報管理部211は、アカウント情報管理テーブル300に受信したユーザIDとパスワードとの組み合わせに対応する情報が記録されていると判定した場合、ユーザの認証が成功したとする。また、アカウント情報管理部211は、アカウント情報管理テーブル300に受信したユーザIDとパスワードとの組み合わせに対応する情報が記録されていないと判定した場合、ユーザの認証が失敗したとする。
S702において、アカウント情報管理部211は、S701でユーザの認証が成功したか否かを判定する。アカウント情報管理部211は、S701でユーザの認証が成功したと判定した場合、S703の処理に進む。アカウント情報管理部211は、S701でユーザの認証が失敗したと判定した場合、クライアント装置101に送信するレスポンスデータの処理成功フラグをFALSEにして、図8、9の処理を終了する。
S701において、アカウント情報管理部211は、クライアント装置101から送信されたユーザIDとパスワードとに基づいて、ユーザの認証を行う。より具体的には、アカウント情報管理部211は、アカウント情報管理テーブル300に受信したユーザIDとパスワードとの組み合わせに対応する情報が記録されているか否かを判定する。アカウント情報管理部211は、アカウント情報管理テーブル300に受信したユーザIDとパスワードとの組み合わせに対応する情報が記録されていると判定した場合、ユーザの認証が成功したとする。また、アカウント情報管理部211は、アカウント情報管理テーブル300に受信したユーザIDとパスワードとの組み合わせに対応する情報が記録されていないと判定した場合、ユーザの認証が失敗したとする。
S702において、アカウント情報管理部211は、S701でユーザの認証が成功したか否かを判定する。アカウント情報管理部211は、S701でユーザの認証が成功したと判定した場合、S703の処理に進む。アカウント情報管理部211は、S701でユーザの認証が失敗したと判定した場合、クライアント装置101に送信するレスポンスデータの処理成功フラグをFALSEにして、図8、9の処理を終了する。
S703において、アカウント情報管理部211は、クライアント装置101を介して処理を指示してきたユーザのIDを、S701で認証されたユーザのユーザIDであると決定する。以下では、S703で決定されたユーザIDに対応するユーザを、リクエスト元のユーザとする。
S704において、サーバ装置102は、クライアント装置101から送信されたコマンドがコマンド一覧テーブル600のどのコマンドであるかを判定する。サーバ装置102は、クライアント装置101から送信されたコマンドがSAVE IMAGEコマンドであると判定した場合、S705の処理に進む。サーバ装置102は、クライアント装置101から送信されたコマンドがSEARCH IMAGEコマンドであると判定した場合、S710の処理に進む。
S704において、サーバ装置102は、クライアント装置101から送信されたコマンドがコマンド一覧テーブル600のどのコマンドであるかを判定する。サーバ装置102は、クライアント装置101から送信されたコマンドがSAVE IMAGEコマンドであると判定した場合、S705の処理に進む。サーバ装置102は、クライアント装置101から送信されたコマンドがSEARCH IMAGEコマンドであると判定した場合、S710の処理に進む。
サーバ装置102は、クライアント装置101から送信されたコマンドがCREATE GROUPコマンドであると判定した場合、S801の処理に進む。サーバ装置102は、クライアント装置101から送信されたコマンドがJOIN GROUPコマンドであると判定した場合、S804の処理に進む。サーバ装置102は、クライアント装置101から送信されたコマンドがLEAVE GROUPコマンドであると判定した場合、S805の処理に進む。
サーバ装置102は、クライアント装置101から送信されたコマンドがADD IMAGEコマンドであると判定した場合、S807の処理に進む。サーバ装置102は、クライアント装置101から送信されたコマンドがSEARCH GROUPコマンドであると判定した場合、S809の処理に進む。
サーバ装置102は、クライアント装置101から送信されたコマンドがADD IMAGEコマンドであると判定した場合、S807の処理に進む。サーバ装置102は、クライアント装置101から送信されたコマンドがSEARCH GROUPコマンドであると判定した場合、S809の処理に進む。
サーバ装置102は、S704で、クライアント装置101から送信されたコマンドがどのコマンドであるか判定する処理を行うとともに、クライアント装置101から送信されたリクエストデータの検証を行う処理を行うこととしてもよい。
例えば、CREATE GROUPコマンドがクライアント装置101から送信された場合、ユーザ管理部201は、ユーザグループ名の最大文字数を制限するために、以下の処理を行う。即ち、ユーザ管理部201は、クライアント装置101から送信されたリクエストデータに含まれるユーザグループIDの文字数が設定された最大文字数以下かどうかを判定する。そして、ユーザ管理部201は、送信されたリクエストデータに含まれるユーザグループIDの文字数が設定された最大文字数よりも多いと判定した場合、レスポンスデータの処理成功フラグをFALSEにし、図8、9の処理を終了してもよい。
例えば、CREATE GROUPコマンドがクライアント装置101から送信された場合、ユーザ管理部201は、ユーザグループ名の最大文字数を制限するために、以下の処理を行う。即ち、ユーザ管理部201は、クライアント装置101から送信されたリクエストデータに含まれるユーザグループIDの文字数が設定された最大文字数以下かどうかを判定する。そして、ユーザ管理部201は、送信されたリクエストデータに含まれるユーザグループIDの文字数が設定された最大文字数よりも多いと判定した場合、レスポンスデータの処理成功フラグをFALSEにし、図8、9の処理を終了してもよい。
図10は、クライアント装置101の機能構成の一例を示す図である。クライアント装置101は、ユーザ操作受付部901と、データ送受信部902と、画像表示部903と、を含む。
ユーザ操作受付部901は、クライアント装置101のユーザインターフェース等を介したユーザの操作に基づいて、コマンド一覧テーブル600に含まれるコマンドをサーバ装置102に送信する。また、ユーザ操作受付部901は、クライアント装置101のユーザインターフェース等を介したユーザの操作に基づいて、ユーザ名やパスワード等のサーバ装置102に送信する認証情報を取得する。
ユーザ操作受付部901は、クライアント装置101のユーザインターフェース等を介したユーザの操作に基づいて、コマンド一覧テーブル600に含まれるコマンドをサーバ装置102に送信する。また、ユーザ操作受付部901は、クライアント装置101のユーザインターフェース等を介したユーザの操作に基づいて、ユーザ名やパスワード等のサーバ装置102に送信する認証情報を取得する。
データ送受信部902は、クライアント装置101のネットワークI/Fを介して、サーバ装置102にユーザ認証情報、コマンド、リクエストデータ等を送信し、サーバ装置102からレスポンスデータ等を受信する。
画像表示部903は、データ送受信部902によりサーバ装置102から取得された画像等を表示する。画像表示部903は、表示優先度別画像表示部931を含み、サーバ装置102から取得された画像に設定された表示優先度に応じて、画像の表示を行う。
画像表示部903は、データ送受信部902によりサーバ装置102から取得された画像等を表示する。画像表示部903は、表示優先度別画像表示部931を含み、サーバ装置102から取得された画像に設定された表示優先度に応じて、画像の表示を行う。
以下、図1〜16を用いて、本実施形態1の処理の更なる詳細について説明する。本実施形態では、管理されるアカウント情報は、予め、アカウント情報管理テーブル300に記録されている。
本実施形態では、クライアント装置101は、図11のフローチャートの処理を実行することで、ユーザの複数の異なるユーザグループへの参加や脱退をサーバ装置102に指示する処理等を行う。
まず、図8、図9を用いて、サーバ装置102により実行されるクライアント装置101から受信したコマンドに対応する処理について説明する。
本実施形態では、クライアント装置101は、図11のフローチャートの処理を実行することで、ユーザの複数の異なるユーザグループへの参加や脱退をサーバ装置102に指示する処理等を行う。
まず、図8、図9を用いて、サーバ装置102により実行されるクライアント装置101から受信したコマンドに対応する処理について説明する。
S705において、画像保管部221は、新規に画像IDを発行する。画像保管部221は、既存の画像IDと重複せず、画像を一意に特定できる値を、保管する画像の画像IDとして決定する。
S706において、画像保管部221は、画像記憶部221−1に画像IDと関連付けて、クライアント装置101からリクエストデータとして受信した画像データを保存する。
S707において、画像保管部221は、S706で保存した画像を解析し、S706で保存した画像のタイトル、MIMEタイプ等の画像属性情報を取得する。画像保管部221は、S706で保存した画像のヘッダ部分の情報等から、S706で保存した画像の画像属性情報を取得することができる。
S708において、画像保管部221は、S705で発行した画像IDと、S703で決定したリクエスト元のユーザIDと、S707で取得したタイトル、MIMEタイプ等の画像属性情報と、を一件の画像情報として画像管理テーブル500に記録する。
S709において、画像保管部221は、クライアント装置101に送信するレスポンスデータとして、S705で発行した画像IDの情報を決定する。
S706において、画像保管部221は、画像記憶部221−1に画像IDと関連付けて、クライアント装置101からリクエストデータとして受信した画像データを保存する。
S707において、画像保管部221は、S706で保存した画像を解析し、S706で保存した画像のタイトル、MIMEタイプ等の画像属性情報を取得する。画像保管部221は、S706で保存した画像のヘッダ部分の情報等から、S706で保存した画像の画像属性情報を取得することができる。
S708において、画像保管部221は、S705で発行した画像IDと、S703で決定したリクエスト元のユーザIDと、S707で取得したタイトル、MIMEタイプ等の画像属性情報と、を一件の画像情報として画像管理テーブル500に記録する。
S709において、画像保管部221は、クライアント装置101に送信するレスポンスデータとして、S705で発行した画像IDの情報を決定する。
S710において、画像検索部221−2は、クライアント装置101からリクエストデータとして送信された画像検索クエリ情報の種類を判定する。画像検索クエリは、画像管理テーブル500の各項目に関して検索条件を指定する情報であり、ユーザIDやユーザグループID等に関する検索条件を示す。また、クライアント装置101は、検索結果の画像の個数を指定する検索条件を含む画像検索クエリをサーバ装置102に送信することとしてもよい。更に、クライアント装置101は、AND条件やOR条件等による複数の検索条件の組み合わせである検索クエリを、リクエストデータとして、サーバ装置102に送信することとしてもよい。
画像検索部221−2は、クライアント装置101から送信された検索クエリがユーザグループIDに関する検索条件である場合、S711の処理に進む。画像検索部221−2は、クライアント装置101から送信された検索クエリがユーザIDに関する検索条件である場合、S712の処理に進む。また、画像検索部221−2は、クライアント装置101から送信された検索クエリが、ユーザグループIDに関する検索条件と、ユーザIDに関する検索条件とを含む場合、S711、S712の処理のどちらも実行することとしてもよい。
画像検索部221−2は、クライアント装置101から送信された検索クエリがユーザグループIDに関する検索条件である場合、S711の処理に進む。画像検索部221−2は、クライアント装置101から送信された検索クエリがユーザIDに関する検索条件である場合、S712の処理に進む。また、画像検索部221−2は、クライアント装置101から送信された検索クエリが、ユーザグループIDに関する検索条件と、ユーザIDに関する検索条件とを含む場合、S711、S712の処理のどちらも実行することとしてもよい。
S711において、画像検索部221−2は、クライアント装置101から送信された画像検索クエリに含まれるユーザグループIDに対応するユーザグループにリクエスト元のユーザが参加しているか否かを判定する。
画像検索部221−2は、ユーザグループ管理テーブル400から、クライアント装置101から送信された画像検索クエリに含まれるユーザグループIDに対応するユーザグループを特定する。画像検索部221−2は、特定したユーザグループの参加中ユーザIDの項目にS703で決定したユーザIDが含まれる場合、特定したユーザグループにリクエスト元のユーザが参加していると判定し、S713の処理に進む。また、画像検索部221−2は、特定したユーザグループの参加中ユーザIDの項目にS703で決定したユーザIDが含まれない場合、特定したユーザグループにリクエスト元のユーザが参加していないと判定し、図8、9の処理を終了する。
なお、画像保管部221は、ユーザグループに参加していないユーザによるユーザグループで共有される画像の閲覧を許可するか否かを示す設定項目をユーザグループ管理テーブル400の項目として追加してもよい。例えば、画像保管部221は、ユーザグループ管理テーブル400に新たに、「外部からの画像閲覧許可」という項目を追加するとする。画像保管部221は、「外部からの画像閲覧許可」の値がTRUEであるユーザグループで共有される画像の読み込みを、そのユーザグループに参加していないユーザに許可することとしてもよい。なお、「外部からの画像閲覧許可」という項目を追加するためのリクエストデータを、CREATE GROUPコマンドのリクエストデータに含ませて、クライアント装置101からサーバ装置102に送信し、サーバ装置102がそれを受信すると、ユーザグループ管理テーブル400に、「外部からの画像閲覧許可」という項目を追加するようにしてもよい。
画像検索部221−2は、ユーザグループ管理テーブル400から、クライアント装置101から送信された画像検索クエリに含まれるユーザグループIDに対応するユーザグループを特定する。画像検索部221−2は、特定したユーザグループの参加中ユーザIDの項目にS703で決定したユーザIDが含まれる場合、特定したユーザグループにリクエスト元のユーザが参加していると判定し、S713の処理に進む。また、画像検索部221−2は、特定したユーザグループの参加中ユーザIDの項目にS703で決定したユーザIDが含まれない場合、特定したユーザグループにリクエスト元のユーザが参加していないと判定し、図8、9の処理を終了する。
なお、画像保管部221は、ユーザグループに参加していないユーザによるユーザグループで共有される画像の閲覧を許可するか否かを示す設定項目をユーザグループ管理テーブル400の項目として追加してもよい。例えば、画像保管部221は、ユーザグループ管理テーブル400に新たに、「外部からの画像閲覧許可」という項目を追加するとする。画像保管部221は、「外部からの画像閲覧許可」の値がTRUEであるユーザグループで共有される画像の読み込みを、そのユーザグループに参加していないユーザに許可することとしてもよい。なお、「外部からの画像閲覧許可」という項目を追加するためのリクエストデータを、CREATE GROUPコマンドのリクエストデータに含ませて、クライアント装置101からサーバ装置102に送信し、サーバ装置102がそれを受信すると、ユーザグループ管理テーブル400に、「外部からの画像閲覧許可」という項目を追加するようにしてもよい。
S712において、画像検索部221−2は、クライアント装置101から送信された画像検索クエリに含まれるユーザIDがS703で決定されたリクエスト元のユーザIDと等しいか否かを判定する。画像検索部221−2は、クライアント装置101から送信された画像検索クエリに含まれるユーザIDがS703で決定されたリクエスト元のユーザIDと等しいと判定した場合、S713の処理に進む。画像検索部221−2は、クライアント装置101から送信された画像検索クエリに含まれるユーザIDがS703で決定されたリクエスト元のユーザIDと等しくないと判定した場合、図8、9の処理を終了する。
なお、画像保管部221は、他のユーザによるユーザの画像の閲覧を許可するか否かを示す設定項目を画像管理テーブル500の項目として追加してもよい。例えば、画像保管部221は、画像管理テーブル500に新たに、「画像閲覧許可」という項目を追加するとする。画像保管部221は、「画像閲覧許可」の値がTRUEである画像を、画像の所有者以外のユーザからも閲覧することができることとしてもよい。なお、「画像閲覧許可」という項目を追加するためのリクエストデータを、SAVE IMAGEコマンド又はADD IMAGEコマンドのリクエストデータに含ませて、クライアント装置101からサーバ装置102に送信し、サーバ装置102がそれを受信すると、ユーザグループ管理テーブル400に、「画像閲覧許可」という項目を追加するようにしてもよい。
なお、画像保管部221は、他のユーザによるユーザの画像の閲覧を許可するか否かを示す設定項目を画像管理テーブル500の項目として追加してもよい。例えば、画像保管部221は、画像管理テーブル500に新たに、「画像閲覧許可」という項目を追加するとする。画像保管部221は、「画像閲覧許可」の値がTRUEである画像を、画像の所有者以外のユーザからも閲覧することができることとしてもよい。なお、「画像閲覧許可」という項目を追加するためのリクエストデータを、SAVE IMAGEコマンド又はADD IMAGEコマンドのリクエストデータに含ませて、クライアント装置101からサーバ装置102に送信し、サーバ装置102がそれを受信すると、ユーザグループ管理テーブル400に、「画像閲覧許可」という項目を追加するようにしてもよい。
S713において、画像検索部221−2は、画像管理テーブル500で管理される画像の中から、クライアント装置101から送信された検索クエリが示す検索条件を満たす画像を検索する。画像検索部221−2は、検索した全ての画像の情報を並べた第一の画像リストを取得する。第一の画像リストに列挙される画像は、S703で決定されたユーザIDに対応するユーザの未閲覧画像の一例である。
S714において、画像検索部221−2は、リクエスト元のユーザの閲覧済みの画像を全て取得し、取得した画像の情報を並べた第二の画像リストを取得する。ユーザの閲覧済みの画像は、ユーザが現在までに参加した全てのユーザグループそれぞれで共有された画像であるとする。そのため、画像検索部221−2は、ユーザグループ管理テーブル400からリクエスト元のユーザのユーザIDを脱退済みユーザIDとして含むユーザグループのユーザグループIDを取得する。第二の画像リストに列挙される画像は、S703で決定されたユーザIDに対応するユーザの閲覧済画像の一例である。
S714において、画像検索部221−2は、リクエスト元のユーザの閲覧済みの画像を全て取得し、取得した画像の情報を並べた第二の画像リストを取得する。ユーザの閲覧済みの画像は、ユーザが現在までに参加した全てのユーザグループそれぞれで共有された画像であるとする。そのため、画像検索部221−2は、ユーザグループ管理テーブル400からリクエスト元のユーザのユーザIDを脱退済みユーザIDとして含むユーザグループのユーザグループIDを取得する。第二の画像リストに列挙される画像は、S703で決定されたユーザIDに対応するユーザの閲覧済画像の一例である。
そして、画像検索部221−2は、画像管理テーブル500から、取得したユーザグループIDの何れかを共有済みグループIDとして含む画像を取得し、取得した画像の情報を並べた第二の画像リストを取得する。また、リクエスト元のユーザが現在までに参加したことのあるユーザグループが複数ある場合、画像検索部221−2は、ユーザグループの作成日時等に基づいて、第二の画像リストに含めるユーザグループの絞り込みを行ってもよい。
また、アカウント情報管理部211は、アカウント情報管理テーブル300に、各ユーザが実際に閲覧した画像の画像IDを保持する項目を追加してもよい。例えば、アカウント情報管理部211は、アカウント情報管理テーブル300に、新たに「閲覧済画像ID」という項目を追加するとする。画像検索部221−2は、ユーザが過去に参加したユーザグループで共有される画像の中から、アカウント情報管理テーブル300の「閲覧済画像ID」に画像IDが含まれる画像を取得し、取得した画像の情報を並べた第二の画像リストを取得することとしてもよい。
また、アカウント情報管理部211は、アカウント情報管理テーブル300に、各ユーザが実際に閲覧した画像の画像IDを保持する項目を追加してもよい。例えば、アカウント情報管理部211は、アカウント情報管理テーブル300に、新たに「閲覧済画像ID」という項目を追加するとする。画像検索部221−2は、ユーザが過去に参加したユーザグループで共有される画像の中から、アカウント情報管理テーブル300の「閲覧済画像ID」に画像IDが含まれる画像を取得し、取得した画像の情報を並べた第二の画像リストを取得することとしてもよい。
S715において、表示優先度設定部222は、S713で決定された第一の画像リストと、S714で決定された第二の画像リストと、に基づいて、第一の画像リストに含まれる画像それぞれについて表示優先度を設定する。S715の処理の詳細は、図12で後述する。
S716において、表示優先度設定部222は、S715で表示優先度が設定された第一の画像リスト(表示優先度に係る情報)を、クライアント装置101に送信するレスポンスデータとして決定する。また、表示優先度設定部222は、クライアント装置101に送信するレスポンスデータとして、第一の画像リストに加え、画像記憶部221−1から取得する第一の画像リストに含まれる画像の画像データを決定してもよい。また、表示優先度設定部222は、クライアント装置101に送信するレスポンスデータとして、第一の画像リストに加え、第一の画像リストに含まれる画像の画像データの取得元のURLを決定してもよい。このように、表示優先度に係る情報とは、表示優先度が設定された第一の画像リストやURL等である。また、表示優先度に係る情報とは、表示優先度そのものを示す情報であってもよい。表示優先度設定部222は、このような情報を、クライアント装置101に対して送信したり、クライアント装置101に対して公開したり、クライアント装置101の表示部124に表示させたりすることで、クライアント装置101に提供する。このように、表示優先度設定部222は、提供部としての機能も有している。
S716において、表示優先度設定部222は、S715で表示優先度が設定された第一の画像リスト(表示優先度に係る情報)を、クライアント装置101に送信するレスポンスデータとして決定する。また、表示優先度設定部222は、クライアント装置101に送信するレスポンスデータとして、第一の画像リストに加え、画像記憶部221−1から取得する第一の画像リストに含まれる画像の画像データを決定してもよい。また、表示優先度設定部222は、クライアント装置101に送信するレスポンスデータとして、第一の画像リストに加え、第一の画像リストに含まれる画像の画像データの取得元のURLを決定してもよい。このように、表示優先度に係る情報とは、表示優先度が設定された第一の画像リストやURL等である。また、表示優先度に係る情報とは、表示優先度そのものを示す情報であってもよい。表示優先度設定部222は、このような情報を、クライアント装置101に対して送信したり、クライアント装置101に対して公開したり、クライアント装置101の表示部124に表示させたりすることで、クライアント装置101に提供する。このように、表示優先度設定部222は、提供部としての機能も有している。
S801において、ユーザ管理部201は、新規にユーザグループIDを発行することで、新たなユーザグループを生成する。ユーザ管理部201は、既存のユーザグループのユーザグループIDの値と重複せず、新たなユーザグループを一意に特定できる値を新規なユーザグループのユーザグループIDとして決定する。
S802において、ユーザ管理部201は、S801で発行したユーザグループIDと、クライアント装置101から受信したリクエストデータの内容と、を一件のユーザグループ情報としてユーザグループ管理テーブル400に記録する。
S802において、ユーザ管理部201は、S801で発行したユーザグループIDと、クライアント装置101から受信したリクエストデータの内容と、を一件のユーザグループ情報としてユーザグループ管理テーブル400に記録する。
S803において、ユーザ管理部201は、S801で発行したユーザグループIDを、クライアント装置101に送信するレスポンスデータとして決定する。
また、ユーザ管理部201は、S803で、リクエスト元のユーザを、S801で生成されたユーザグループに参加させることとしてもよい。ユーザ管理部201は、S802で記録したユーザグループ情報の参加中ユーザIDの項目にS703で決定されたユーザIDを記録することで、リクエスト元のユーザを、S801で生成されたユーザグループに参加させる。それにより、ユーザは、クライアント装置101を介して、改めて、JOIN GROUPコマンドをサーバ装置102に送信しなくても、S801で生成されたユーザグループに参加することができる。
また、ユーザ管理部201は、S803で、リクエスト元のユーザを、S801で生成されたユーザグループに参加させることとしてもよい。ユーザ管理部201は、S802で記録したユーザグループ情報の参加中ユーザIDの項目にS703で決定されたユーザIDを記録することで、リクエスト元のユーザを、S801で生成されたユーザグループに参加させる。それにより、ユーザは、クライアント装置101を介して、改めて、JOIN GROUPコマンドをサーバ装置102に送信しなくても、S801で生成されたユーザグループに参加することができる。
S804において、ユーザ管理部201は、ユーザグループ管理テーブル400内のユーザグループの中から、ユーザグループIDがクライアント装置101からリクエストデータとして送信されたユーザグループIDであるユーザグループを特定する。ユーザ管理部201は、特定したユーザグループの参加中ユーザIDの項目に、S703で決定されたユーザIDを記録する。
また、リクエストデータにユーザグループに参加するユーザIDを含ませるようにし、ユーザ管理部201がリクエスト元のユーザとは異なるユーザをユーザグループに参加させるようにしてもよい。
また、ユーザ管理部201は、S804で、一人のユーザが同時に参加できるユーザグループ数を制限するために、リクエスト元のユーザが参加しているユーザグループ数の確認を行うこととしてもよい。
また、リクエストデータにユーザグループに参加するユーザIDを含ませるようにし、ユーザ管理部201がリクエスト元のユーザとは異なるユーザをユーザグループに参加させるようにしてもよい。
また、ユーザ管理部201は、S804で、一人のユーザが同時に参加できるユーザグループ数を制限するために、リクエスト元のユーザが参加しているユーザグループ数の確認を行うこととしてもよい。
S805において、ユーザ管理部201は、ユーザグループ管理テーブル400に記録されるユーザグループの中から、ユーザグループIDがクライアント装置101からリクエストデータとして送信されたユーザグループIDであるユーザグループを特定する。ユーザ管理部201は、特定したユーザグループの参加中ユーザIDの項目から、S703で決定されたユーザIDを削除することで、リクエスト元のユーザを特定したユーザグループから脱退させる。
S806において、ユーザ管理部201は、S805で特定したユーザグループの脱退済みユーザIDの項目に、S703で決定されたユーザIDを記録する。
また、リクエストデータにユーザグループから脱退させるユーザIDを含ませるようにし、ユーザ管理部201がリクエスト元のユーザとは異なるユーザをユーザグループから脱退させるようにしてもよい。
S806において、ユーザ管理部201は、S805で特定したユーザグループの脱退済みユーザIDの項目に、S703で決定されたユーザIDを記録する。
また、リクエストデータにユーザグループから脱退させるユーザIDを含ませるようにし、ユーザ管理部201がリクエスト元のユーザとは異なるユーザをユーザグループから脱退させるようにしてもよい。
S807において、画像保管部221は、リクエスト元のユーザがクライアント装置101から送信されたリクエストデータに含まれるユーザグループIDで指定されたユーザグループに参加している否かを判定する。
より具体的には、画像保管部221は、ユーザグループ管理テーブル400内のユーザグループから、ユーザグループIDがクライアント装置101から送信されたリクエストデータに含まれるユーザグループIDと同じ値のユーザグループを特定する。そして、画像保管部221は、特定したユーザグループの参加中ユーザIDの項目に、S703で決定したユーザIDが含まれる場合、リクエスト元のユーザが特定したユーザグループに参加していると判定する。また、画像保管部221は、特定したユーザグループの参加中ユーザIDの項目に、S703で決定したユーザIDが含まれていない場合、リクエスト元のユーザが特定したユーザグループに参加していないと判定する。
より具体的には、画像保管部221は、ユーザグループ管理テーブル400内のユーザグループから、ユーザグループIDがクライアント装置101から送信されたリクエストデータに含まれるユーザグループIDと同じ値のユーザグループを特定する。そして、画像保管部221は、特定したユーザグループの参加中ユーザIDの項目に、S703で決定したユーザIDが含まれる場合、リクエスト元のユーザが特定したユーザグループに参加していると判定する。また、画像保管部221は、特定したユーザグループの参加中ユーザIDの項目に、S703で決定したユーザIDが含まれていない場合、リクエスト元のユーザが特定したユーザグループに参加していないと判定する。
画像保管部221は、リクエスト元のユーザが特定したユーザグループに参加していると判定した場合、S808の処理に進み、リクエスト元のユーザが特定したユーザグループに参加していないと判定した場合、図8、9の処理を終了する。
なお、画像保管部221は、ユーザグループに参加していないユーザからのユーザグループへの画像の追加を許可するか否かを示す設定項目をユーザグループ管理テーブル400の項目として追加してもよい。例えば、画像保管部221は、ユーザグループ管理テーブル400に新たに、「外部からの画像追加許可」という項目を追加するとする。画像保管部221は、「外部からの画像追加許可」の値がTRUEであるユーザグループに対して、そのユーザグループに参加していないユーザからの画像追加を許可することとしてもよい。
S808において、画像保管部221は、画像管理テーブル500内の画像から、画像IDがクライアント装置101から送信されたリクエストデータに含まれる画像IDと同じ値のものを特定する。画像保管部221は、特定した画像の共有済みグループIDに、S807でリクエスト元のユーザが参加していると判定されたユーザグループのユーザグループIDを記録する。
なお、画像保管部221は、ユーザグループに参加していないユーザからのユーザグループへの画像の追加を許可するか否かを示す設定項目をユーザグループ管理テーブル400の項目として追加してもよい。例えば、画像保管部221は、ユーザグループ管理テーブル400に新たに、「外部からの画像追加許可」という項目を追加するとする。画像保管部221は、「外部からの画像追加許可」の値がTRUEであるユーザグループに対して、そのユーザグループに参加していないユーザからの画像追加を許可することとしてもよい。
S808において、画像保管部221は、画像管理テーブル500内の画像から、画像IDがクライアント装置101から送信されたリクエストデータに含まれる画像IDと同じ値のものを特定する。画像保管部221は、特定した画像の共有済みグループIDに、S807でリクエスト元のユーザが参加していると判定されたユーザグループのユーザグループIDを記録する。
S809において、ユーザ管理部201は、クライアント装置101から送信されたリクエストデータに含まれるユーザグループ検索クエリに基づいて、ユーザグループの検索を実行する。ユーザ管理部201は、検索結果のユーザグループのリストを、クライアント装置101に送信するレスポンスデータとして決定する。
ユーザグループ検索クエリは、ユーザグループ管理テーブル400の各項目に対して検索条件を示す情報であり、ユーザグループ名や参加中ユーザID等を含む。また、ユーザグループ検索クエリは、検索結果のユーザグループの個数を指定する情報を含む場合もある。なお、ユーザグループ検索クエリは、AND条件やOR条件等による複数の検索条件の組み合わせであってもよい。
例えば、ユーザ管理部201は、検索クエリがユーザグループIDである場合、ユーザグループ管理テーブル400から、ユーザグループIDが検索クエリのユーザグループIDと同じものを検索する。また、例えば、ユーザ管理部201は、検索クエリがユーザIDである場合、ユーザグループ管理テーブル400から、参加中ユーザIDに検索クエリのユーザIDを含むものを検索する。
ユーザグループ検索クエリは、ユーザグループ管理テーブル400の各項目に対して検索条件を示す情報であり、ユーザグループ名や参加中ユーザID等を含む。また、ユーザグループ検索クエリは、検索結果のユーザグループの個数を指定する情報を含む場合もある。なお、ユーザグループ検索クエリは、AND条件やOR条件等による複数の検索条件の組み合わせであってもよい。
例えば、ユーザ管理部201は、検索クエリがユーザグループIDである場合、ユーザグループ管理テーブル400から、ユーザグループIDが検索クエリのユーザグループIDと同じものを検索する。また、例えば、ユーザ管理部201は、検索クエリがユーザIDである場合、ユーザグループ管理テーブル400から、参加中ユーザIDに検索クエリのユーザIDを含むものを検索する。
図12のフローチャートを用いて、S715の処理の詳細を説明する。図12は、表示優先度設定処理の一例を示すフローチャートである。
S1101において、表示優先度設定部222は、S1103〜S1114の処理の繰り返しを制御するために利用される変数iに0を代入する。
S1102において、表示優先度設定部222は、S713で決定された第一の画像リストに含まれる画像の数を格納する変数Aを確保する。
図13は、第一の画像リストの一例である。本実施形態では、第一の画像リストには、No1−1〜1−AのA個の画像が含まれる。
S1101において、表示優先度設定部222は、S1103〜S1114の処理の繰り返しを制御するために利用される変数iに0を代入する。
S1102において、表示優先度設定部222は、S713で決定された第一の画像リストに含まれる画像の数を格納する変数Aを確保する。
図13は、第一の画像リストの一例である。本実施形態では、第一の画像リストには、No1−1〜1−AのA個の画像が含まれる。
S1103において、表示優先度設定部222は、変数iの値が変数Aの値未満か否かを判定する。表示優先度設定部222は、変数iの値が変数Aの値未満であると判定した場合、S1104の処理に進み、変数iの値が変数Aの値以上であると判定した場合、図12の処理を終了する。
S1104において、表示優先度設定部222は、S1107〜S1112の処理の繰り返しを制御するために利用される変数jに0を代入する。
S1105において、表示優先度設定部222は、S714で決定された第二の画像リストに含まれる画像数を格納する変数Bを確保する。
図14は、第二の画像リストの一例である。本実施形態では、第二の画像リストには、No2−1〜2−BのB個の画像が含まれる。
S1104において、表示優先度設定部222は、S1107〜S1112の処理の繰り返しを制御するために利用される変数jに0を代入する。
S1105において、表示優先度設定部222は、S714で決定された第二の画像リストに含まれる画像数を格納する変数Bを確保する。
図14は、第二の画像リストの一例である。本実施形態では、第二の画像リストには、No2−1〜2−BのB個の画像が含まれる。
S1106において、表示優先度設定部222は、第一の画像リストのi番目の画像の表示優先度を、「高」に決定する。
S1107において、表示優先度設定部222は、変数jの値が変数Bの値未満か否かを判定する。表示優先度設定部222は、変数jの値が変数Bの値未満であると判定した場合、S1108の処理に進み、変数jの値が変数Bの値以上であると判定した場合、S1113の処理に進む。
S1108において、表示優先度設定部222は、第一の画像リストのi番目の画像と第二の画像リストのj番目の画像との類似度Sを算出する。この類似度Sは、第一の画像リストのi番目の画像と、第二の画像リストのj番目の画像との類似する度合いを示している。表示優先度設定部222は、類似度Sの取得処理に、公知の画像類似度判定方法を用いることができる。即ち、表示優先度設定部222は、第一の画像リストのi番目の画像と第二の画像リストのj番目の画像との解析を行い、それぞれの画像の特徴を取得し、取得した特徴に基づいて、類似度Sを算出することができる。画像の特徴には、認識されたオブジェクトの種類、検出された色等の属性データや、HOG特徴量やSIFT特徴量等の各種の画像特徴量等がある。本実施形態では、表示優先度設定部222は、取得した類似度Sを図15のような表形式で記録する。
S1107において、表示優先度設定部222は、変数jの値が変数Bの値未満か否かを判定する。表示優先度設定部222は、変数jの値が変数Bの値未満であると判定した場合、S1108の処理に進み、変数jの値が変数Bの値以上であると判定した場合、S1113の処理に進む。
S1108において、表示優先度設定部222は、第一の画像リストのi番目の画像と第二の画像リストのj番目の画像との類似度Sを算出する。この類似度Sは、第一の画像リストのi番目の画像と、第二の画像リストのj番目の画像との類似する度合いを示している。表示優先度設定部222は、類似度Sの取得処理に、公知の画像類似度判定方法を用いることができる。即ち、表示優先度設定部222は、第一の画像リストのi番目の画像と第二の画像リストのj番目の画像との解析を行い、それぞれの画像の特徴を取得し、取得した特徴に基づいて、類似度Sを算出することができる。画像の特徴には、認識されたオブジェクトの種類、検出された色等の属性データや、HOG特徴量やSIFT特徴量等の各種の画像特徴量等がある。本実施形態では、表示優先度設定部222は、取得した類似度Sを図15のような表形式で記録する。
図15は、類似度Sの算出結果の一例を示す図である。図15の類似度Sの算出結果の表は、一行毎に、第一の画像リストの画像と、第二の画像リストの画像と、第一の画像リストの画像と第二の画像リストの画像との類似度と、が対応付けて記録されている。図15の例では、表示優先度設定部222は、類似度Sを正規化して、記録するが、正規化しないで記録することとしてもよい。
また、表示優先度設定部222は、第二の画像リストの中に類似度Sが閾値Tよりも大きい画像が合計で何枚あるかに基づいて、第一の画像リストの画像の表示優先度を決定してもよい。
また、表示優先度設定部222は、第二の画像リストの中に類似度Sが閾値Tよりも大きい画像が合計で何枚あるかに基づいて、第一の画像リストの画像の表示優先度を決定してもよい。
S1109において、表示優先度設定部222は、類似度Sが設定された閾値Tよりも大きいか否かを判定する。表示優先度設定部222は、類似度Sが閾値Tよりも大きいと判定した場合、S1110の処理に進み、類似度Sが設定された閾値T以下であると判定した場合、S1111の処理に進む。
本実施形態では、閾値Tは、サーバ装置102の補助記憶装置112等に記録されている設定値である。しかし、クライアント装置101は、クライアント装置101のユーザインターフェース等を介したユーザの操作に基づいて、閾値Tの値を決定し、決定した閾値Tをサーバ装置102に送信することとしてもよい。また、サーバ装置102は、ユーザから送信された閾値Tを特定のユーザ又は特定のユーザグループに適用する値として設定してもよい。即ち、サーバ装置102は、ユーザやユーザグループ毎に異なる閾値Tを設定できるようにしてもよい。そして、サーバ装置102は、送信された閾値TをS1109で利用することとしてもよい。
S1110において、表示優先度設定部222は、類似度Sが設定された閾値T以下である、第一の画像リストのi番目の画像の表示優先度を、「低」に決定する。
本実施形態では、閾値Tは、サーバ装置102の補助記憶装置112等に記録されている設定値である。しかし、クライアント装置101は、クライアント装置101のユーザインターフェース等を介したユーザの操作に基づいて、閾値Tの値を決定し、決定した閾値Tをサーバ装置102に送信することとしてもよい。また、サーバ装置102は、ユーザから送信された閾値Tを特定のユーザ又は特定のユーザグループに適用する値として設定してもよい。即ち、サーバ装置102は、ユーザやユーザグループ毎に異なる閾値Tを設定できるようにしてもよい。そして、サーバ装置102は、送信された閾値TをS1109で利用することとしてもよい。
S1110において、表示優先度設定部222は、類似度Sが設定された閾値T以下である、第一の画像リストのi番目の画像の表示優先度を、「低」に決定する。
S1111において、表示優先度設定部222は、変数jに1を加える。
S1112において、表示優先度設定部222は、S1107の処理に戻る。
表示優先度設定部222は、S1107〜S1112(図12のループ2)の処理を繰り返すことで、第二の画像リストの各画像との類似度Sと、閾値とを比較することになり、第二の画像リストの各画像との類似度Sが閾値より大きい場合は、表示優先度が高いままとなる。表示優先度設定部222は、第二の画像リストの各画像との比較が終わると次のS1113に進む。
S1113において、表示優先度設定部222は、変数iに1を加える。
S1114において、表示優先度設定部222は、S1103の処理に戻り、第一の画像リストの次の画像について同様な処理を行う。
表示優先度設定部222は、図12の処理により、第一の画像リストの各画像に対して表示優先度を決定する。図16は、図15の例の類似度Sの算出結果に対して、閾値Tを0.5とした場合に図12の処理の結果として第一の画像リストに設定された表示優先度の例を示す図である。また、表示優先度設定部222は、表示優先度を図16のように「高」や「低」のような離散値で表現してもよいし、連続値で表現してもよい。
また、表示優先度設定部222は、例えば、優先度が高い順に大きな値を付してもよいし、優先度が高い順に小さな値を付してもよい。いずれにしても優先する順序がわかればよい。
このように、類似度が第1の画像(I003)よりも低い第2の画像(I001)の表示優先度は、第1の画像の表示優先度よりも高くなるように、決定されている。
また、表示優先度設定部222は、第1の画像リストの各画像と、第2の画像リストの各画像との類似度を比較したが、第1の画像リストの各画像の特徴と、第2の画像リストの各画像を平均化した画像特徴との類似度Sを求め、その類似度Sを用いて優先度を決定してもよい。そうすると、表示優先度設定部222は、類似度の算出回数や、類似度Sと閾値との比較回数を少なくすることができる。
S1112において、表示優先度設定部222は、S1107の処理に戻る。
表示優先度設定部222は、S1107〜S1112(図12のループ2)の処理を繰り返すことで、第二の画像リストの各画像との類似度Sと、閾値とを比較することになり、第二の画像リストの各画像との類似度Sが閾値より大きい場合は、表示優先度が高いままとなる。表示優先度設定部222は、第二の画像リストの各画像との比較が終わると次のS1113に進む。
S1113において、表示優先度設定部222は、変数iに1を加える。
S1114において、表示優先度設定部222は、S1103の処理に戻り、第一の画像リストの次の画像について同様な処理を行う。
表示優先度設定部222は、図12の処理により、第一の画像リストの各画像に対して表示優先度を決定する。図16は、図15の例の類似度Sの算出結果に対して、閾値Tを0.5とした場合に図12の処理の結果として第一の画像リストに設定された表示優先度の例を示す図である。また、表示優先度設定部222は、表示優先度を図16のように「高」や「低」のような離散値で表現してもよいし、連続値で表現してもよい。
また、表示優先度設定部222は、例えば、優先度が高い順に大きな値を付してもよいし、優先度が高い順に小さな値を付してもよい。いずれにしても優先する順序がわかればよい。
このように、類似度が第1の画像(I003)よりも低い第2の画像(I001)の表示優先度は、第1の画像の表示優先度よりも高くなるように、決定されている。
また、表示優先度設定部222は、第1の画像リストの各画像と、第2の画像リストの各画像との類似度を比較したが、第1の画像リストの各画像の特徴と、第2の画像リストの各画像を平均化した画像特徴との類似度Sを求め、その類似度Sを用いて優先度を決定してもよい。そうすると、表示優先度設定部222は、類似度の算出回数や、類似度Sと閾値との比較回数を少なくすることができる。
図11は、本実施形態でのクライアント装置101の処理の一例を示すフローチャートである。本実施形態におけるユーザのユーザIDは、U001である。
S1001において、ユーザ操作受付部901は、ユーザ操作受付部901を介したユーザの操作に基づいて、サーバ装置102に、Group1という名のユーザグループの生成を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、サーバ装置102に、ユーザグループの生成を指示する。即ち、ユーザ操作受付部901は、Group1というユーザグループ名のデータを含むリクエストデータと、CREATE GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1001でのクライアント装置101からの指示に応じて、S801〜S803の処理と同様の処理を行い、ユーザグループを生成する。そして、サーバ装置102は、生成したユーザグループのユーザグループIDをレスポンスデータとしてクライアント装置101に送信する。本実施形態では、レスポンスデータとして送信されるユーザグループIDは、G001である。
S1001において、ユーザ操作受付部901は、ユーザ操作受付部901を介したユーザの操作に基づいて、サーバ装置102に、Group1という名のユーザグループの生成を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、サーバ装置102に、ユーザグループの生成を指示する。即ち、ユーザ操作受付部901は、Group1というユーザグループ名のデータを含むリクエストデータと、CREATE GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1001でのクライアント装置101からの指示に応じて、S801〜S803の処理と同様の処理を行い、ユーザグループを生成する。そして、サーバ装置102は、生成したユーザグループのユーザグループIDをレスポンスデータとしてクライアント装置101に送信する。本実施形態では、レスポンスデータとして送信されるユーザグループIDは、G001である。
S1002において、ユーザ操作受付部901は、ユーザ操作受付部901を介したユーザの操作に基づいて、サーバ装置102に、S1001で作成されたユーザグループへのユーザの参加処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、ユーザの参加処理を指示する。即ち、ユーザ操作受付部901は、S1001で生成されたユーザグループのユーザグループIDを含むリクエストデータと、JOIN GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1002でのクライアント装置101からの指示に応じて、S804の処理と同様の処理を行い、S1001で生成したユーザグループにユーザを参加させる。
サーバ装置102は、S1002でのクライアント装置101からの指示に応じて、S804の処理と同様の処理を行い、S1001で生成したユーザグループにユーザを参加させる。
S1003において、ユーザ操作受付部901は、ユーザ操作受付部901を介したユーザの操作に基づいて、サーバ装置102に、画像のアップロード処理を指示する。本実施形態では、アップロードする画像のタイトルは、Image001であるとする。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、サーバ装置102に画像のアップロード処理を指示する。即ち、ユーザ操作受付部901は、画像のタイトルであるImage001を示す情報と画像のデータとを含むリクエストデータと、SAVE IMAGEコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1003でのクライアント装置101からの指示に応じて、S705〜S709の処理と同様の処理を行い、クライアント装置101から送信された画像を保存する。サーバ装置102は、レスポンスデータとして保存した画像IDを、クライアント装置101に送信する。本実施形態では、S1003で保存された画像の画像IDは、I001とする。
サーバ装置102は、S1003でのクライアント装置101からの指示に応じて、S705〜S709の処理と同様の処理を行い、クライアント装置101から送信された画像を保存する。サーバ装置102は、レスポンスデータとして保存した画像IDを、クライアント装置101に送信する。本実施形態では、S1003で保存された画像の画像IDは、I001とする。
S1004において、ユーザ操作受付部901は、ユーザ操作受付部901を介したユーザの操作に基づいて、サーバ装置102に、S1003で保存された画像を、S1002で参加したユーザグループで共有させる処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、サーバ装置102に画像を共有させる処理を指示する。即ち、ユーザ操作受付部901は、共有する画像の画像IDとS1002でユーザが参加したユーザグループのユーザグループIDとを含むリクエストデータと、ADD IMAGEコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1004でのクライアント装置101からの指示に応じて、S807〜S808の処理と同様の処理を行い、画像を共有させる。S1004の処理が行われて以降も、サーバ装置102は、クライアント装置101からのADD IMAGEコマンドに対応する処理の指示に応じて、S1001で生成されたユーザグループ内で画像を共有させる処理が繰り返し行われたものとする。
サーバ装置102は、S1004でのクライアント装置101からの指示に応じて、S807〜S808の処理と同様の処理を行い、画像を共有させる。S1004の処理が行われて以降も、サーバ装置102は、クライアント装置101からのADD IMAGEコマンドに対応する処理の指示に応じて、S1001で生成されたユーザグループ内で画像を共有させる処理が繰り返し行われたものとする。
S1005において、ユーザ操作受付部901は、ユーザ操作受付部901を介したユーザの操作に基づいて、サーバ装置102に、S1001で生成したユーザグループからのユーザの脱退処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、ユーザの脱退処理を指示する。即ち、ユーザ操作受付部901は、G001というユーザグループIDのデータを含むリクエストデータと、LEAVE GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1005でのクライアント装置101からの指示に応じて、S805〜S806の処理と同様の処理を行い、S1001で生成したユーザグループからユーザを脱退させる。
サーバ装置102は、S1005でのクライアント装置101からの指示に応じて、S805〜S806の処理と同様の処理を行い、S1001で生成したユーザグループからユーザを脱退させる。
ユーザが、Group2という名のユーザグループで画像の共有を行っていることを知り、ユーザグループ名がGroup2のユーザグループへ改めて参加することとしたとする。
S1006において、ユーザ操作受付部901は、ユーザ操作受付部901を介したユーザの操作に基づいて、サーバ装置102に、ユーザグループ名がGroup2であるユーザグループを検索する処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、ユーザグループの検索処理を指示する。即ち、ユーザ操作受付部901は、G002というユーザグループ名のデータをユーザグループ検索クエリとして含むリクエストデータと、SEARCH GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1006でのクライアント装置101からの指示に応じて、S809の処理と同様の処理を行い、グループ名がG002のグループを検索する。サーバ装置102は、レスポンスデータとして、ユーザグループ名がG002のユーザグループのユーザグループIDを、クライアント装置101に送信する。
S1006において、ユーザ操作受付部901は、ユーザ操作受付部901を介したユーザの操作に基づいて、サーバ装置102に、ユーザグループ名がGroup2であるユーザグループを検索する処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、ユーザグループの検索処理を指示する。即ち、ユーザ操作受付部901は、G002というユーザグループ名のデータをユーザグループ検索クエリとして含むリクエストデータと、SEARCH GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1006でのクライアント装置101からの指示に応じて、S809の処理と同様の処理を行い、グループ名がG002のグループを検索する。サーバ装置102は、レスポンスデータとして、ユーザグループ名がG002のユーザグループのユーザグループIDを、クライアント装置101に送信する。
S1007において、ユーザ操作受付部901は、ユーザ操作受付部901を介したユーザの操作に基づいて、サーバ装置102に、S1006で検索されたユーザグループへのユーザの参加処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、ユーザの参加処理を指示する。即ち、ユーザ操作受付部901は、S1006でレスポンスデータとして受信したユーザグループIDを含むリクエストデータと、JOIN GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1007でのクライアント装置101からの指示に応じて、S804の処理と同様の処理を行い、S1006で検索されたユーザグループにユーザを参加させる。
サーバ装置102は、S1007でのクライアント装置101からの指示に応じて、S804の処理と同様の処理を行い、S1006で検索されたユーザグループにユーザを参加させる。
S1008において、ユーザ操作受付部901は、ユーザ操作受付部901を介したユーザの操作に基づいて、サーバ装置102に、S1007でユーザが参加したユーザグループで共有されている画像を取得する処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、ユーザが参加したユーザグループで共有されている画像を取得する処理を指示する。即ち、ユーザ操作受付部901は、S1007でユーザが参加したグループIDを検索クエリとして含むリクエストデータと、SEARCH IMAGEコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1008でのクライアント装置101からの指示に応じて、S710〜S716の処理と同様の処理を行い、ユーザが参加したユーザグループで共有されている画像を取得する。本実施形態でのS1008で取得された画像の情報は、図16の通りであるとする。
サーバ装置102は、S1008でのクライアント装置101からの指示に応じて、S710〜S716の処理と同様の処理を行い、ユーザが参加したユーザグループで共有されている画像を取得する。本実施形態でのS1008で取得された画像の情報は、図16の通りであるとする。
S1009において、画像表示部903は、S1008で取得された画像をクライアント装置101の表示部124に表示させる。より具体的には、表示優先度別画像表示部931は、表示優先度が「高」である画像のみを表示部124に一定時間表示させ、その後、取得した全ての画像を表示部124に表示させる。図16の例では、表示優先度別画像表示部931は、画像IDがI001、I005、I00A等の表示優先度が「高」である画像のみを表示部124に一定時間表示させる。
また、表示優先度別画像表示部931は、表示優先度の違いに応じて画像を装飾して表示部124に表示させてもよい。または、表示優先度の高い画像のみを表示部124に表示させ、表示優先度の低い画像は表示部124に表示させなくてもよい。更に、表示優先度別画像表示部931は、表示優先度別にどのような設定方法を用いるかを、ユーザによるユーザ操作受付部901を介した操作に基づいて、複数の候補の中から選択できるようにしてもよい。また、表示優先度別画像表示部931は、優先度の高い画像から順に並べて表示するようにしてもよい。
また、表示優先度別画像表示部931は、表示優先度の違いに応じて画像を装飾して表示部124に表示させてもよい。または、表示優先度の高い画像のみを表示部124に表示させ、表示優先度の低い画像は表示部124に表示させなくてもよい。更に、表示優先度別画像表示部931は、表示優先度別にどのような設定方法を用いるかを、ユーザによるユーザ操作受付部901を介した操作に基づいて、複数の候補の中から選択できるようにしてもよい。また、表示優先度別画像表示部931は、優先度の高い画像から順に並べて表示するようにしてもよい。
以上、本実施形態の処理によって、画像管理システムは、ユーザがユーザグループを移動した際に、移動先のユーザグループに新たに参加したユーザが既に閲覧した画像と類似していない新規な画像を優先的に閲覧できるようにすることができる。
<実施形態2>
実施形態1では、ユーザが所属グループを第一のユーザグループから第二のユーザグループに移動する際に、画像管理システムが第二のユーザグループで共有されている画像を表示優先度付きで取得し、ユーザが閲覧可能なよう表示する処理について説明した。
本実施形態では、第二のユーザが第二のユーザグループから第一のユーザグループに移動する際に、画像管理システムが第二のユーザにより第二のユーザグループに追加された画像を第一のユーザグループに追加する処理を説明する。更に、画像管理システムが第二のユーザが追加した画像を表示優先度付きで取得し、第一のユーザグループに既に参加している第一のユーザにより閲覧可能なように表示する処理を説明する。第一のユーザグループに既に参加している第一のユーザは、既存ユーザの一例である。
本実施形態の画像管理システムのシステム構成は、実施形態1と同様である。本実施形態のクライアント装置101とサーバ装置102とのハードウェア構成、機能構成も、実施形態1と同様である。本実施形態のクライアント装置101からコマンドを送信されたサーバ装置102の処理のうち、実施形態1の図8、9の処理と異なる部分について主に説明する。
実施形態1では、ユーザが所属グループを第一のユーザグループから第二のユーザグループに移動する際に、画像管理システムが第二のユーザグループで共有されている画像を表示優先度付きで取得し、ユーザが閲覧可能なよう表示する処理について説明した。
本実施形態では、第二のユーザが第二のユーザグループから第一のユーザグループに移動する際に、画像管理システムが第二のユーザにより第二のユーザグループに追加された画像を第一のユーザグループに追加する処理を説明する。更に、画像管理システムが第二のユーザが追加した画像を表示優先度付きで取得し、第一のユーザグループに既に参加している第一のユーザにより閲覧可能なように表示する処理を説明する。第一のユーザグループに既に参加している第一のユーザは、既存ユーザの一例である。
本実施形態の画像管理システムのシステム構成は、実施形態1と同様である。本実施形態のクライアント装置101とサーバ装置102とのハードウェア構成、機能構成も、実施形態1と同様である。本実施形態のクライアント装置101からコマンドを送信されたサーバ装置102の処理のうち、実施形態1の図8、9の処理と異なる部分について主に説明する。
図17は、本実施形態でサーバ装置102が公開するコマンド一覧テーブルのうち、図7と異なる部分を示す図である。本実施形態のJOIN GROUPコマンドは、実施形態1と同様に、ユーザがユーザグループに参加する処理をサーバ装置102に指示するためのコマンドである。クライアント装置101は、JOIN GROUPコマンドと共に、リクエストデータとしてユーザグループIDと画像移転フラグとを送信する。画像移転フラグは、リクエスト元のユーザが過去に参加したユーザグループに追加した画像を、リクエスト元のユーザが参加するユーザグループに追加するか否かを示す情報である。サーバ装置102は、画像移転フラグがTRUEの場合、リクエスト元のユーザが過去に参加したユーザグループに追加した画像を、リクエスト元のユーザが参加するユーザグループに追加する。
図18は、サーバ装置102がクライアント装置101からJOIN GROUPコマンドを送信された際に実行する処理の一例を示すフローチャートである。図18の処理は、図8の処理の「A」から「B」の間に行われる処理である。図18の処理の詳細は、図19のS1802で後述する。
図18は、サーバ装置102がクライアント装置101からJOIN GROUPコマンドを送信された際に実行する処理の一例を示すフローチャートである。図18の処理は、図8の処理の「A」から「B」の間に行われる処理である。図18の処理の詳細は、図19のS1802で後述する。
図19は、本実施形態におけるクライアント装置101の処理の一例を示すフローチャートである。以下、図19を用いて、本実施形態の処理について詳細に説明する。本実施形態における第一のユーザのユーザID、第二のユーザのユーザIDは、それぞれU001、U002とする。本実施形態では、第一のユーザグループは、ユーザグループIDがG001のユーザグループである。また、第二のユーザグループは、ユーザグループIDがG002のユーザグループである。なお、第一のユーザが第一のユーザグループに参加する処理、第二のユーザが第二のユーザグループに参加する処理、そして、第二のユーザが第二のユーザグループから第一のユーザグループに移動する処理を説明する。
S1801において、ユーザ操作受付部901は、ユーザ操作受付部901を介した第一のユーザの操作に基づいて、サーバ装置102に、第一のユーザグル―プへの第一のユーザの参加処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、第一のユーザの参加処理を指示する。即ち、ユーザ操作受付部901はG001というユーザグループIDとFALSEである画像移転フラグとを含むリクエストデータと、JOIN GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1002でのクライアント装置101からの指示に応じて、S804の処理と同様の処理を行い、第一のユーザグループに第一のユーザを参加させる。
S1801において、ユーザ操作受付部901は、ユーザ操作受付部901を介した第一のユーザの操作に基づいて、サーバ装置102に、第一のユーザグル―プへの第一のユーザの参加処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、第一のユーザの参加処理を指示する。即ち、ユーザ操作受付部901はG001というユーザグループIDとFALSEである画像移転フラグとを含むリクエストデータと、JOIN GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1002でのクライアント装置101からの指示に応じて、S804の処理と同様の処理を行い、第一のユーザグループに第一のユーザを参加させる。
S1802において、ユーザ操作受付部901は、ユーザ操作受付部901を介した第二のユーザの操作に基づいて、サーバ装置102に、第二のユーザグループへの第二のユーザの参加処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、第二のユーザの参加処理を指示する。即ち、ユーザ操作受付部901はG001というユーザグループIDとFALSEである画像移転フラグとを含むリクエストデータと、JOIN GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1002でのクライアント装置101からの指示に応じて、S804の処理と同様の処理を行い、第二のユーザグループに第二のユーザを参加させる。
サーバ装置102は、S1002でのクライアント装置101からの指示に応じて、S804の処理と同様の処理を行い、第二のユーザグループに第二のユーザを参加させる。
S1803において、ユーザ操作受付部901は、ユーザ操作受付部901を介した第二のユーザの操作に基づいて、サーバ装置102に、画像のアップロード処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、サーバ装置102に画像のアップロード処理を指示する。即ち、ユーザ操作受付部901は、画像のタイトルを示す情報と画像のデータとを含むリクエストデータと、SAVE IMAGEコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1803でのクライアント装置101からの指示に応じて、S705〜S709の処理と同様の処理を行い、クライアント装置101から送信された画像を保存する。サーバ装置102は、レスポンスデータとして保存した画像IDを、クライアント装置101に送信する。
サーバ装置102は、S1803でのクライアント装置101からの指示に応じて、S705〜S709の処理と同様の処理を行い、クライアント装置101から送信された画像を保存する。サーバ装置102は、レスポンスデータとして保存した画像IDを、クライアント装置101に送信する。
S1804において、ユーザ操作受付部901は、ユーザ操作受付部901を介した第二のユーザの操作に基づいて、サーバ装置102に、S1803で保存された画像を、第二のユーザグループで共有させる処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、サーバ装置102に画像を共有させる処理を指示する。即ち、ユーザ操作受付部901は、共有する画像の画像IDと第二のユーザグループのユーザグループIDとを含むリクエストデータと、ADD IMAGEコマンドと、をサーバ装置102に送信する。サーバ装置102は、S1804でのクライアント装置101からの指示に応じて、S807〜S808の処理と同様の処理を行い、画像を共有させる。
S1805において、ユーザ操作受付部901は、ユーザ操作受付部901を介した第二のユーザの操作に基づいて、サーバ装置102に、第二のユーザグループからのユーザの脱退処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、第二のユーザの脱退処理を指示する。即ち、ユーザ操作受付部901は、G002というユーザグループIDのデータを含むリクエストデータと、LEAVE GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1805でのクライアント装置101からの指示に応じて、S805〜S806の処理と同様の処理を行い、第二のユーザグループから第二のユーザを脱退させる。
S1805において、ユーザ操作受付部901は、ユーザ操作受付部901を介した第二のユーザの操作に基づいて、サーバ装置102に、第二のユーザグループからのユーザの脱退処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、第二のユーザの脱退処理を指示する。即ち、ユーザ操作受付部901は、G002というユーザグループIDのデータを含むリクエストデータと、LEAVE GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1805でのクライアント装置101からの指示に応じて、S805〜S806の処理と同様の処理を行い、第二のユーザグループから第二のユーザを脱退させる。
S1806において、ユーザ操作受付部901は、ユーザ操作受付部901を介した第二のユーザの操作に基づいて、サーバ装置102に、第一のユーザグループへの第二のユーザの参加処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、第二のユーザの参加処理を指示する。即ち、ユーザ操作受付部901は、G002というユーザグループIDとTRUEである画像移転フラグとを含むリクエストデータと、JOIN GROUPコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1002でのクライアント装置101からの指示に応じて、図18の処理を行い、第一のユーザグループに第二のユーザを参加させる。図18の処理の詳細を説明する。
S804の処理は、図9と同様である。
サーバ装置102は、S1002でのクライアント装置101からの指示に応じて、図18の処理を行い、第一のユーザグループに第二のユーザを参加させる。図18の処理の詳細を説明する。
S804の処理は、図9と同様である。
S1701において、画像管理部202は、S1802で送信されたリクエストデータに含まれる画像移転フラグがTRUEであるか否かを判定する。画像管理部202は、S1802で送信されたリクエストデータに含まれる画像移転フラグがTRUEであると判定した場合、S1702の処理に進む。画像管理部202は、S1802で送信されたリクエストデータに含まれる画像移転フラグがFALSEであると判定した場合、図18の処理を終了する。
S1702において、ユーザ管理部201は、リクエスト元のユーザが現在までに参加したことがあるユーザグループをユーザグループ管理テーブル400から取得する。より具体的には、ユーザ管理部201は、ユーザグループ管理テーブル400から、脱退済みユーザIDの項目に、S703で決定したリクエスト元のユーザのユーザIDを含むユーザグループを取得する。
S1703において、画像管理部202は、画像管理テーブル500から、共有済みグループIDの項目にS1702で取得したユーザグループIDを含む画像の情報を取得し、取得した全ての画像の情報を並べた画像リストPを取得する。
S1702において、ユーザ管理部201は、リクエスト元のユーザが現在までに参加したことがあるユーザグループをユーザグループ管理テーブル400から取得する。より具体的には、ユーザ管理部201は、ユーザグループ管理テーブル400から、脱退済みユーザIDの項目に、S703で決定したリクエスト元のユーザのユーザIDを含むユーザグループを取得する。
S1703において、画像管理部202は、画像管理テーブル500から、共有済みグループIDの項目にS1702で取得したユーザグループIDを含む画像の情報を取得し、取得した全ての画像の情報を並べた画像リストPを取得する。
S1704において、画像管理部202は、S1703で取得した画像Pの数を格納する変数Nを確保する。
S1705において、画像管理部202は、S1706〜S1709の処理の繰り返しを制御するために利用される変数iに0を代入する。
S1706において、画像管理部202は、変数iの値が変数Nの値未満か否かを判定する。画像管理部202は、変数iの値が変数Nの値未満であると判定した場合、S1707の処理に進み、変数iの値が変数Nの値以上であると判定した場合、図18の処理を終了する。
S1705において、画像管理部202は、S1706〜S1709の処理の繰り返しを制御するために利用される変数iに0を代入する。
S1706において、画像管理部202は、変数iの値が変数Nの値未満か否かを判定する。画像管理部202は、変数iの値が変数Nの値未満であると判定した場合、S1707の処理に進み、変数iの値が変数Nの値以上であると判定した場合、図18の処理を終了する。
S1707において、画像管理部202は、画像リストPのi番目の画像をS1802で送信されたリクエストデータに含まれるユーザグループIDのユーザグループで共有させる。画像管理部202は、画像管理テーブル500内の画像から、画像IDが画像リストPのi番目の画像と同じ値のものを特定する。画像管理部202は、特定した画像の共有済みグループIDに、リクエスト元のユーザ(U002)が参加するユーザグループのユーザグループID(G001)を記録する。
S1708において、画像管理部202は、変数iに1を加える。
S1709において、画像管理部202は、S1706の処理に進む。
S1708において、画像管理部202は、変数iに1を加える。
S1709において、画像管理部202は、S1706の処理に進む。
S1807において、ユーザ操作受付部901は、ユーザ操作受付部901を介した第一のユーザの操作に基づいて、サーバ装置102に、第二のユーザが現在までに参加したユーザグループに追加した画像を取得する処理を指示する。より具体的には、ユーザ操作受付部901は、データ送受信部902を介して、以下の処理を行うことで、第二のユーザが現在までに参加したユーザグループに追加した画像を取得する処理を指示する。即ち、ユーザ操作受付部901は、第二のユーザのユーザIDを含む検索クエリを示すリクエストデータと、SEARCH IMAGEコマンドと、をサーバ装置102に送信する。
サーバ装置102は、S1807でのクライアント装置101からの指示に応じて、S710〜S716の処理と同様の処理を行い、第二のユーザが現在までに参加したユーザグループにおいて追加した画像を取得する。
更に、S1807において、表示優先度設定部222は、第二のユーザが現在までに参加したユーザグループに追加した画像等の第二のユーザが所有する画像であって、第二のユーザによって第一のユーザグループに追加される各画像と、第一の画像共有グループの既存ユーザによって既に共有されている各画像との類似度Sを算出する。
そして、表示優先度設定部222は、図12で説明した方法で、第二のユーザによって第一のユーザグループに追加される各画像の優先度を決定する。表示優先度設定部222は、第二のユーザによって第一のユーザグループに追加される各画像を、図12の説明における第一の画像リストの画像として、また、第一の画像共有グループの既存ユーザによって既に共有されている各画像を、図12の説明における第二の画像リストの画像として、優先度を算出する。表示優先度設定部222は、既に共有されている画像との類似度が相対的に低い画像の表示優先度を、既に共有されている画像との類似度が相対的に高い画像の表示優先度よりも、が高くなるように決定する。
サーバ装置102は、S1807でのクライアント装置101からの指示に応じて、S710〜S716の処理と同様の処理を行い、第二のユーザが現在までに参加したユーザグループにおいて追加した画像を取得する。
更に、S1807において、表示優先度設定部222は、第二のユーザが現在までに参加したユーザグループに追加した画像等の第二のユーザが所有する画像であって、第二のユーザによって第一のユーザグループに追加される各画像と、第一の画像共有グループの既存ユーザによって既に共有されている各画像との類似度Sを算出する。
そして、表示優先度設定部222は、図12で説明した方法で、第二のユーザによって第一のユーザグループに追加される各画像の優先度を決定する。表示優先度設定部222は、第二のユーザによって第一のユーザグループに追加される各画像を、図12の説明における第一の画像リストの画像として、また、第一の画像共有グループの既存ユーザによって既に共有されている各画像を、図12の説明における第二の画像リストの画像として、優先度を算出する。表示優先度設定部222は、既に共有されている画像との類似度が相対的に低い画像の表示優先度を、既に共有されている画像との類似度が相対的に高い画像の表示優先度よりも、が高くなるように決定する。
S1808において、表示優先度設定部222は、表示優先度に係る情報をクライアント装置101に提供する。例えば、画像表示部903は、S1807で取得された画像をクライアント装置101の表示部124に表示させることで表示優先度に係る情報を提供する。より具体的には、表示優先度別画像表示部931は、表示優先度が「高」である画像のみを一定時間、表示部124に表示させ、その後、取得した全ての画像を表示させる。
また、表示優先度別画像表示部931は、表示優先度の違いに応じて画像を装飾して表示部124に表示させてもよい。表示優先度別画像表示部931は、表示優先度の高い画像のみを表示部124に表示させ、表示優先度の低い画像は表示部124に表示させなくてもよい。更に、表示優先度別画像表示部931は、表示優先度別にどのような設定方法を用いるかを、ユーザによるユーザ操作受付部901を介した操作に基づいて、複数の候補の中から選択できるようにしてもよい。また、表示優先度別画像表示部931は、優先度の高い画像から順に並べて表示部124に表示させるようにしてもよい。以上の例の場合は、表示優先度によって選択された画像や、表示優先度によって並べ変えられた画像が表示優先度に係る情報である。
また、表示優先度に係る情報は、表示優先度が設定された画像リスト、画像リストに含まれる画像の画像データの取得元のURL等であってもよい。また、表示優先度に係る情報とは、表示優先度そのものを示す情報であってもよい。
表示優先度設定部222は、表示優先度に係る情報を、クライアント装置101に対して送信したり、クライアント装置101に対して公開したり、クライアント装置101の表示部124に表示させたりすることで、クライアント装置101に提供する。このように、表示優先度設定部222は、提供部としての機能も有している。
また、表示優先度別画像表示部931は、表示優先度の違いに応じて画像を装飾して表示部124に表示させてもよい。表示優先度別画像表示部931は、表示優先度の高い画像のみを表示部124に表示させ、表示優先度の低い画像は表示部124に表示させなくてもよい。更に、表示優先度別画像表示部931は、表示優先度別にどのような設定方法を用いるかを、ユーザによるユーザ操作受付部901を介した操作に基づいて、複数の候補の中から選択できるようにしてもよい。また、表示優先度別画像表示部931は、優先度の高い画像から順に並べて表示部124に表示させるようにしてもよい。以上の例の場合は、表示優先度によって選択された画像や、表示優先度によって並べ変えられた画像が表示優先度に係る情報である。
また、表示優先度に係る情報は、表示優先度が設定された画像リスト、画像リストに含まれる画像の画像データの取得元のURL等であってもよい。また、表示優先度に係る情報とは、表示優先度そのものを示す情報であってもよい。
表示優先度設定部222は、表示優先度に係る情報を、クライアント装置101に対して送信したり、クライアント装置101に対して公開したり、クライアント装置101の表示部124に表示させたりすることで、クライアント装置101に提供する。このように、表示優先度設定部222は、提供部としての機能も有している。
以上、本実施形態の処理により、画像管理システムは、ユーザグループに新たにユーザが参加した場合、ユーザグループに元々参加しているユーザが新たに参加したユーザの有する画像のうち、新規な画像を優先的に閲覧できるようにすることができる。
なお、画像管理部202は、S1707の処理に先立って、Pのi番目の画像をすでに追加されているユーザグループから削除してもよい。より具体的には、画像管理部202は、画像管理テーブル500に保存された共有済みグループIDを全て削除する。
また、クライアント装置101は、SEARCH IMAGEコマンドと共にサーバ装置102に送信するリクエストデータに、画像取得元ユーザグループIDを追加してもよい。それにより、画像管理部202は、特定のユーザグループに追加した画像のみを取得することができる。
なお、画像管理部202は、S1707の処理に先立って、Pのi番目の画像をすでに追加されているユーザグループから削除してもよい。より具体的には、画像管理部202は、画像管理テーブル500に保存された共有済みグループIDを全て削除する。
また、クライアント装置101は、SEARCH IMAGEコマンドと共にサーバ装置102に送信するリクエストデータに、画像取得元ユーザグループIDを追加してもよい。それにより、画像管理部202は、特定のユーザグループに追加した画像のみを取得することができる。
<実施形態3>
実施形態1、2では、サーバ装置102は、SEARCH IMAGEコマンドに対応する処理のレスポンスデータとして、表示優先度が設定された画像リストをクライアント装置101に送信する。
本実施形態では、サーバ装置102は、SEARCH IMAGEコマンドに対するレスポンスデータとしての画像リストに表示優先度を設定するか否かを、クライアント装置101からの要望に応じて切り替えることができる。
本実施形態の画像管理システムのシステム構成は、実施形態1と同様である。本実施形態のクライアント装置101とサーバ装置102とのハードウェア構成、機能構成も、実施形態1と同様である。本実施形態のクライアント装置101からコマンドを送信されたサーバ装置102の処理のうち、実施形態1の図8、9の処理と異なる部分について主に説明する。
実施形態1、2では、サーバ装置102は、SEARCH IMAGEコマンドに対応する処理のレスポンスデータとして、表示優先度が設定された画像リストをクライアント装置101に送信する。
本実施形態では、サーバ装置102は、SEARCH IMAGEコマンドに対するレスポンスデータとしての画像リストに表示優先度を設定するか否かを、クライアント装置101からの要望に応じて切り替えることができる。
本実施形態の画像管理システムのシステム構成は、実施形態1と同様である。本実施形態のクライアント装置101とサーバ装置102とのハードウェア構成、機能構成も、実施形態1と同様である。本実施形態のクライアント装置101からコマンドを送信されたサーバ装置102の処理のうち、実施形態1の図8、9の処理と異なる部分について主に説明する。
図20は、本実施形態におけるサーバ装置102が公開するコマンド一覧テーブルのうち、実施形態1と異なる部分を示す図である。クライアント装置101は、SEARCH IMAGEコマンドと共に、リクエストデータとして画像検索クエリと表示優先度設定フラグとをサーバ装置102に送信する。表示優先度設定フラグは、サーバ装置102から取得される画像に表示優先度を設定するか否かを示す情報である。表示優先度設定フラグは、サーバ装置102による表示対象の画像の決定処理の実行の要否を示す要否情報の一例である。サーバ装置102は、表示優先度設定フラグがFALSEの場合は、表示優先度が設定されていない画像リストをレスポンスデータとして送信することになる。
図21は、コマンド受付処理の一例を示すフローチャートである。図21の処理は、図8の「A」から「B」の間に行われる処理である。図21では、図8と比べてS2001の処理が追加されている。
図21は、コマンド受付処理の一例を示すフローチャートである。図21の処理は、図8の「A」から「B」の間に行われる処理である。図21では、図8と比べてS2001の処理が追加されている。
S2001において、表示優先度設定部222は、クライアント装置101から送信されたリクエストデータに含まれる表示優先度設定フラグがTRUEであるか否かを判定する。表示優先度設定部222は、クライアント装置101から送信されたリクエストデータに含まれる表示優先度設定フラグがTRUEであると判定した場合、S714の処理に進む。表示優先度設定部222は、クライアント装置101から送信されたリクエストデータに含まれる表示優先度設定フラグがFALSEであると判定した場合、S716の処理に進む。
S716において、表示優先度設定部222は、S2001でクライアント装置101から送信されたリクエストデータに含まれる表示優先度設定フラグがFALSEであると判定した場合、以下の処理を行う。即ち、表示優先度設定部222は、表示優先度設定を行わず、クライアント装置101に送信するレスポンスデータとして、S713で決定された第一の画像リストを決定する。
S716において、表示優先度設定部222は、S2001でクライアント装置101から送信されたリクエストデータに含まれる表示優先度設定フラグがFALSEであると判定した場合、以下の処理を行う。即ち、表示優先度設定部222は、表示優先度設定を行わず、クライアント装置101に送信するレスポンスデータとして、S713で決定された第一の画像リストを決定する。
以上、本実施形態の処理により、サーバ装置102は、クライアント装置101を介したユーザの要望に応じて、画像に対する表示優先度設定処理を実行するか否かを選択する。それにより、サーバ装置102は、不要な表示優先度設定処理の負担を減らすことができる。
SEARCH IMAGEコマンドに対応するリクエストデータに含まれる表示優先度設定フラグは、表示優先度の値と比較演算子とを含む表示優先度クエリとしてもよい。表示優先度クエリとは、第一の画像リスト中の画像の表示優先度に関する条件式等の情報である。表示優先度クエリがリクエストデータとして送信された場合、表示優先度設定部222は、S715で表示優先度を設定した第一の画像リストの中から表示優先度が表示優先度クエリに該当する画像のみを含む画像リストをレスポンスデータとして決定する。例えば、表示優先度クエリとして「=「高」」が送信されたとすると、表示優先度設定部222は、図15の例では、表示優先度設定結果の中から表示優先度が「高」の画像のみをレスポンスデータとして決定する。それにより、クライアント装置101は、表示に必要な画像だけをサーバ装置102から効率良く取得できるようになり、クライアント装置101とサーバ装置102間の通信量を削減することができる。
SEARCH IMAGEコマンドに対応するリクエストデータに含まれる表示優先度設定フラグは、表示優先度の値と比較演算子とを含む表示優先度クエリとしてもよい。表示優先度クエリとは、第一の画像リスト中の画像の表示優先度に関する条件式等の情報である。表示優先度クエリがリクエストデータとして送信された場合、表示優先度設定部222は、S715で表示優先度を設定した第一の画像リストの中から表示優先度が表示優先度クエリに該当する画像のみを含む画像リストをレスポンスデータとして決定する。例えば、表示優先度クエリとして「=「高」」が送信されたとすると、表示優先度設定部222は、図15の例では、表示優先度設定結果の中から表示優先度が「高」の画像のみをレスポンスデータとして決定する。それにより、クライアント装置101は、表示に必要な画像だけをサーバ装置102から効率良く取得できるようになり、クライアント装置101とサーバ装置102間の通信量を削減することができる。
<実施形態4>
実施形態1〜3では、サーバ装置102は、第一の画像リストの画像それぞれと第二の画像リストの画像それぞれとを比較し、類似度を取得した。そして、サーバ装置102は、第一の画像リストのある画像と、第二の画像リストの画像全てとを比較して、第一の画像リストの画像の表示優先度を取得した。そのため、実施形態1〜3では、第一の画像リストの画像の数と、第二の画像リストの画像の数と、の積に比例して、処理の負担が増大するという問題がある。
本実施形態では、サーバ装置102は、第一の画像リストの画像と第二の画像リストの画像と、設定された数の区分に分割する。そして、サーバ装置102は、分割された区分それぞれについて、第一の画像リストの画像それぞれと第二の画像リストの画像それぞれとを比較し、第一の画像リストの画像の類似度を取得し、第一の画像リストの画像の表示優先度を決定する。
本実施形態の画像管理システムのシステム構成は、実施形態1と同様である。本実施形態のクライアント装置101とサーバ装置102とのハードウェア構成、機能構成も、実施形態1と同様である。本実施形態のサーバ装置102の処理は、実施形態1の図8、9の処理と比べてS715の処理が異なる。
実施形態1〜3では、サーバ装置102は、第一の画像リストの画像それぞれと第二の画像リストの画像それぞれとを比較し、類似度を取得した。そして、サーバ装置102は、第一の画像リストのある画像と、第二の画像リストの画像全てとを比較して、第一の画像リストの画像の表示優先度を取得した。そのため、実施形態1〜3では、第一の画像リストの画像の数と、第二の画像リストの画像の数と、の積に比例して、処理の負担が増大するという問題がある。
本実施形態では、サーバ装置102は、第一の画像リストの画像と第二の画像リストの画像と、設定された数の区分に分割する。そして、サーバ装置102は、分割された区分それぞれについて、第一の画像リストの画像それぞれと第二の画像リストの画像それぞれとを比較し、第一の画像リストの画像の類似度を取得し、第一の画像リストの画像の表示優先度を決定する。
本実施形態の画像管理システムのシステム構成は、実施形態1と同様である。本実施形態のクライアント装置101とサーバ装置102とのハードウェア構成、機能構成も、実施形態1と同様である。本実施形態のサーバ装置102の処理は、実施形態1の図8、9の処理と比べてS715の処理が異なる。
図22は、本実施形態における表示優先度設定処理の一例を示すフローチャートである。本実施形態では、サーバ装置102は、S715で、図12の処理の代わりに図22の処理を行う。
S2201において、表示優先度設定部222は、S713で決定された第一の画像リストの全ての画像と、S714で決定された第二の画像リストの全ての画像と、を設定された数の区間に分割する。表示優先度設定部222は、時間軸上における画像の撮影頻度に基づいて、第一の画像リストの全ての画像と第二の画像リストの全ての画像とを設定された区間に分割する。分割する方法としては、k平均法等の公知のクラスタリングアルゴリズムが利用できる。また、表示優先度設定部222は、画像を解析した結果取得される画像の特徴(認識されたオブジェクトの種類、検出された色等)に基づいて、第一の画像リストの全ての画像と第二の画像リストの全ての画像とを設定された区間に分割してもよい。
S2202において、表示優先度設定部222は、S2201で分割した区間の数を格納する変数Nを確保する。
S2201において、表示優先度設定部222は、S713で決定された第一の画像リストの全ての画像と、S714で決定された第二の画像リストの全ての画像と、を設定された数の区間に分割する。表示優先度設定部222は、時間軸上における画像の撮影頻度に基づいて、第一の画像リストの全ての画像と第二の画像リストの全ての画像とを設定された区間に分割する。分割する方法としては、k平均法等の公知のクラスタリングアルゴリズムが利用できる。また、表示優先度設定部222は、画像を解析した結果取得される画像の特徴(認識されたオブジェクトの種類、検出された色等)に基づいて、第一の画像リストの全ての画像と第二の画像リストの全ての画像とを設定された区間に分割してもよい。
S2202において、表示優先度設定部222は、S2201で分割した区間の数を格納する変数Nを確保する。
S2203において、表示優先度設定部222は、S2204〜S2220の処理の繰り返しを制御するために利用される変数iに0を代入する。
S2204において、表示優先度設定部222は、変数iの値が変数Nの値未満か否かを判定する。表示優先度設定部222は、変数iの値が変数Nの値未満であると判定した場合、S2205の処理に進み、変数iの値が変数Nの値以上であると判定した場合、図22の処理を終了する。
S2205において、表示優先度設定部222は、S2207〜S2218の処理の繰り返しを制御するために利用される変数jに0を代入する。
S2206において、表示優先度設定部222は、S2201で分割された区間の中で、i番目の区間であるRiに属する第一の画像リストの画像の数を格納する変数Lを確保する。
S2204において、表示優先度設定部222は、変数iの値が変数Nの値未満か否かを判定する。表示優先度設定部222は、変数iの値が変数Nの値未満であると判定した場合、S2205の処理に進み、変数iの値が変数Nの値以上であると判定した場合、図22の処理を終了する。
S2205において、表示優先度設定部222は、S2207〜S2218の処理の繰り返しを制御するために利用される変数jに0を代入する。
S2206において、表示優先度設定部222は、S2201で分割された区間の中で、i番目の区間であるRiに属する第一の画像リストの画像の数を格納する変数Lを確保する。
S2207において、表示優先度設定部222は、変数jの値が変数Lの値未満か否かを判定する。表示優先度設定部222は、変数jの値が変数Lの値未満であると判定した場合、S2208の処理に進み、変数iの値が変数Lの値以上であると判定した場合、S2219の処理に進む。
S2208において、表示優先度設定部222は、S2210〜S2216の処理の繰り返しを制御するために利用される変数kに0を代入する。
S2209において、表示優先度設定部222は、区間Riに属する第二の画像リストの画像の数を格納する変数Mを確保する。
S2208において、表示優先度設定部222は、S2210〜S2216の処理の繰り返しを制御するために利用される変数kに0を代入する。
S2209において、表示優先度設定部222は、区間Riに属する第二の画像リストの画像の数を格納する変数Mを確保する。
S2210において、表示優先度設定部222は、第一の画像リストのj番目の画像の表示優先度を、「高」に決定する。
S2211において、表示優先度設定部222は、変数kの値が変数Mの値未満か否かを判定する。表示優先度設定部222は、変数kの値が変数Mの値未満であると判定した場合、S2212の処理に進み、変数kの値が変数Mの値以上であると判定した場合、S2217の処理に進む。
S2212において、表示優先度設定部222は、第一の画像リストのj番目の画像と第二の画像リストのk番目の画像との類似度Sを算出する。類似度Sの算出方法は、S1108と同様である。
S2211において、表示優先度設定部222は、変数kの値が変数Mの値未満か否かを判定する。表示優先度設定部222は、変数kの値が変数Mの値未満であると判定した場合、S2212の処理に進み、変数kの値が変数Mの値以上であると判定した場合、S2217の処理に進む。
S2212において、表示優先度設定部222は、第一の画像リストのj番目の画像と第二の画像リストのk番目の画像との類似度Sを算出する。類似度Sの算出方法は、S1108と同様である。
S2213において、表示優先度設定部222は、類似度Sが設定された閾値Tよりも大きいか否かを判定する。表示優先度設定部222は、類似度Sが閾値Tよりも大きいと判定した場合、S2214の処理に進み、類似度Sが設定された閾値T以下であると判定した場合、S2215の処理に進む。
本実施形態では、閾値Tは、サーバ装置102の補助記憶装置112等に記録されている設定値である。しかし、クライアント装置101は、クライアント装置101のユーザインターフェース等を介したユーザの操作に基づいて、閾値Tの値を決定し、決定した閾値Tをサーバ装置102に送信することとしてもよい。そして、サーバ装置102は、送信された閾値TをS1109で利用することとしてもよい。
S2214において、表示優先度設定部222は、第一の画像リストのj番目の画像の表示優先度を、「低」に決定する。
本実施形態では、閾値Tは、サーバ装置102の補助記憶装置112等に記録されている設定値である。しかし、クライアント装置101は、クライアント装置101のユーザインターフェース等を介したユーザの操作に基づいて、閾値Tの値を決定し、決定した閾値Tをサーバ装置102に送信することとしてもよい。そして、サーバ装置102は、送信された閾値TをS1109で利用することとしてもよい。
S2214において、表示優先度設定部222は、第一の画像リストのj番目の画像の表示優先度を、「低」に決定する。
S2215において、表示優先度設定部222は、変数kに1を加える。
S2216において、表示優先度設定部222は、S2210の処理に進む。
S2217において、表示優先度設定部222は、変数jに1を加える。
S2218において、表示優先度設定部222は、S2207の処理に進む。
S2219において、表示優先度設定部222は、変数iに1を加える。
S2220において、表示優先度設定部222は、S2204の処理に進む。
S2216において、表示優先度設定部222は、S2210の処理に進む。
S2217において、表示優先度設定部222は、変数jに1を加える。
S2218において、表示優先度設定部222は、S2207の処理に進む。
S2219において、表示優先度設定部222は、変数iに1を加える。
S2220において、表示優先度設定部222は、S2204の処理に進む。
以上、本実施形態の処理により、サーバ装置102は、第一の画像リストの画像と第二の画像リストの画像とを、複数の区間に分けて、それぞれの区間ごとに類似度算出、表示優先度の設定を行う。それにより、サーバ装置102は、第一の画像リスト、第二の画像リストに含まれる画像の数の増大により、処理の負担を軽減することができる。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではない。
例えば、上述したサーバ装置のソフトウェア構成の一部又は全てをハードウェアとしてサーバ装置に実装してもよい。また、上述したクライアント装置のソフトウェア構成の一部又は全てをハードウェアとしてクライアント装置に実装してもよい。
また、各実施形態を組み合わせてもよい。
また、各実施形態は、ユーザがユーザグループを移動した際に限らず、ユーザが新たなユーザグループに参加したときにも適用可能である。つまり、各実施形態は、ユーザがユーザグループに新たに追加されたときに適用することができる。
例えば、上述したサーバ装置のソフトウェア構成の一部又は全てをハードウェアとしてサーバ装置に実装してもよい。また、上述したクライアント装置のソフトウェア構成の一部又は全てをハードウェアとしてクライアント装置に実装してもよい。
また、各実施形態を組み合わせてもよい。
また、各実施形態は、ユーザがユーザグループを移動した際に限らず、ユーザが新たなユーザグループに参加したときにも適用可能である。つまり、各実施形態は、ユーザがユーザグループに新たに追加されたときに適用することができる。
101 クライアント装置、102 サーバ装置、202 画像管理部
Claims (17)
- 第1の画像共有グループに所属するユーザが第2の画像共有グループに追加された場合、前記第2の画像共有グループで共有される画像の表示優先度を、前記第1の画像共有グループで共有される画像と類似する度合いに応じて決定する決定手段と、
前記決定手段により決定された、前記第2の画像共有グループで共有される画像の表示優先度に係る情報を、前記ユーザのクライアント装置に提供する提供手段と、
を有する情報処理装置。 - 前記決定手段は、前記第1の画像共有グループで共有される画像と類似する度合いが相対的に低い画像の表示優先度を、前記度合いが相対的に高い画像の表示優先度よりも高くなるように、前記第2の画像共有グループで共有される画像の表示優先度を決定する請求項1記載の情報処理装置。
- 前記第2の画像共有グループで共有される画像の特徴と、前記第1の画像共有グループで共有される画像の特徴とに基づいて、前記第2の画像共有グループで共有される画像と前記第1の画像共有グループで共有される画像との類似度を取得する取得手段を更に有し、
前記決定手段は、前記ユーザが前記第2の画像共有グループに追加された場合、前記取得手段で取得された前記類似度に応じて、前記第2の画像共有グループで共有される画像の表示優先度を決定する請求項1又は2記載の情報処理装置。 - 前記決定手段は、前記ユーザが前記第2の画像共有グループに追加された場合、前記取得手段で取得された前記類似度が閾値よりも低い画像を表示対象とするように、前記第2の画像共有グループで共有される画像の表示優先度を決定する請求項3記載の情報処理装置。
- 前記第1の画像共有グループで共有される画像の特徴と、前記第2の画像共有グループで共有される画像の特徴とに基づいて、前記第1の画像共有グループで共有される画像と前記第2の画像共有グループで共有される画像とを複数の区間に分割する分割手段を更に有し、
前記取得手段は、前記分割手段により分割された区間ごとに、前記第2の画像共有グループで共有される画像の特徴と前記第1の画像共有グループで共有される画像の特徴とに基づいて、前記類似度を取得する請求項3又は4記載の情報処理装置。 - 前記決定手段は、前記ユーザが前記第2の画像共有グループに追加された場合、追加された前記ユーザによって前記第2の画像共有グループに追加される画像の表示優先度を、前記第2の画像共有グループの既存ユーザによって共有されている画像と類似する度合いに応じて決定し、
前記提供手段は、前記決定手段により決定された、前記追加されたユーザによって前記第2の画像共有グループに追加される画像の表示優先度に係る情報を、前記第2の画像共有グループの既存ユーザのクライアント装置に提供する請求項1乃至5何れか1項記載の情報処理装置。 - 第1の画像共有グループに所属するユーザが第2の画像共有グループに追加された場合、追加されたユーザによって前記第2の画像共有グループに追加される画像の表示優先度を、前記第2の画像共有グループの既存ユーザによって共有されている画像と類似する度合いに応じて決定する決定手段と、
前記決定手段により決定された、前記追加されたユーザによって前記第2の画像共有グループに追加される画像の表示優先度に係る情報を、前記第2の画像共有グループの既存ユーザのクライアント装置に提供する提供手段と、
を有する情報処理装置。 - 前記決定手段は、前記第2の画像共有グループの既存ユーザによって共有されている画像と類似する度合いが相対的に低い画像の表示優先度が、前記度合いが相対的に高い画像の表示優先度よりも高くなるように、前記ユーザによって前記第2の画像共有グループに追加される画像の表示優先度を決定する請求項7記載の情報処理装置。
- 前記ユーザによって前記第2の画像共有グループに追加される画像の特徴と、前記第2の画像共有グループの既存ユーザによって共有されている画像の特徴とに基づいて、前記ユーザによって前記第2の画像共有グループに追加される画像と、前記第2の画像共有グループの既存ユーザによって共有されている画像との類似度を取得する取得手段を更に有し、
前記決定手段は、前記ユーザが前記第2の画像共有グループに追加された場合、前記取得手段で取得された前記類似度に応じて、前記ユーザによって前記第2の画像共有グループに追加される画像の表示優先度を決定する請求項7又は8記載の情報処理装置。 - 前記決定手段は、前記ユーザが前記第2の画像共有グループに追加された場合、前記取得手段で取得された前記類似度が閾値よりも低い画像を表示対象とするように、前記ユーザによって前記第2の画像共有グループに追加される画像の表示優先度を決定する請求項9記載の情報処理装置。
- 前記第1の画像共有グループで共有される画像と前記第2の画像共有グループで共有される画像とを複数の区間に分割する分割手段を更に有し、
前記取得手段は、前記分割手段により分割された区間ごとに、前記ユーザによって前記第2の画像共有グループに追加される画像の特徴と、前記第2の画像共有グループの既存ユーザによって共有されている画像の特徴とに基づいて、前記類似度を取得する請求項9又は10記載の情報処理装置。 - 前記表示優先度を決定する処理を要するか否かを示す要否情報を受信する受信手段を更に有し、
前記決定手段は、前記受信手段により受信された前記要否情報が前記表示優先度を決定する処理を要することを示す情報であり、前記ユーザが前記第2の画像共有グループに追加された場合、前記表示優先度を決定する請求項1乃至11何れか1項記載の情報処理装置。 - 情報処理装置とクライアント装置とを含むシステムであって、
前記情報処理装置は、
第1の画像共有グループに所属するユーザが第2の画像共有グループに追加された場合、前記第2の画像共有グループで共有される画像の表示優先度を、前記第1の画像共有グループで共有される画像と類似する度合いに応じて決定する決定手段と、
前記決定手段により決定された、前記第2の画像共有グループで共有される画像の表示優先度に係る情報を、前記ユーザのクライアント装置に提供する提供手段と、
を有し、
前記クライアント装置は、
前記提供手段により提供された前記情報に応じて、前記第2の画像共有グループで共有される画像を表示部に表示させる表示制御手段を有するシステム。 - 情報処理装置とクライアント装置とを含むシステムであって、
前記情報処理装置は、
第1の画像共有グループに所属するユーザが第2の画像共有グループに追加された場合、追加されたユーザによって前記第2の画像共有グループに追加される画像の表示優先度を、前記第2の画像共有グループの既存ユーザによって共有されている画像と類似する度合いに応じて決定する決定手段と、
前記決定手段により決定された、前記追加されたユーザによって前記第2の画像共有グループに追加される画像の表示優先度に係る情報を、前記第2の画像共有グループの既存ユーザのクライアント装置に提供する提供手段と、
を有し、
前記クライアント装置は、
前記提供手段により提供された前記情報に応じて、前記ユーザによって前記第2の画像共有グループに追加される画像を表示部に表示させる表示制御手段を有するシステム。 - 情報処理装置が実行する情報処理方法であって、
第1の画像共有グループに所属するユーザが第2の画像共有グループに追加された場合、前記第2の画像共有グループで共有される画像の表示優先度を、前記第1の画像共有グループで共有される画像と類似する度合いに応じて決定する決定ステップと、
前記決定ステップにより決定された、前記第2の画像共有グループで共有される画像の表示優先度に係る情報を、前記ユーザのクライアント装置に提供する提供ステップと、
を含む情報処理方法。 - 情報処理装置が実行する情報処理方法であって、
第1の画像共有グループに所属するユーザが第2の画像共有グループに追加された場合、追加されたユーザによって前記第2の画像共有グループに追加される画像の表示優先度を、前記第2の画像共有グループの既存ユーザによって共有されている画像と類似する度合いに応じて決定する決定ステップと、
前記決定ステップにより決定された、前記追加されたユーザによって前記第2の画像共有グループに追加される画像の表示優先度に係る情報を、前記第2の画像共有グループの既存ユーザのクライアント装置に提供する提供ステップと、
を含む情報処理方法。 - コンピュータを、請求項1乃至12何れか1項記載の情報処理装置の各手段として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015162204A JP2017041086A (ja) | 2015-08-19 | 2015-08-19 | 情報処理装置、システム、情報処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015162204A JP2017041086A (ja) | 2015-08-19 | 2015-08-19 | 情報処理装置、システム、情報処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017041086A true JP2017041086A (ja) | 2017-02-23 |
Family
ID=58206618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015162204A Pending JP2017041086A (ja) | 2015-08-19 | 2015-08-19 | 情報処理装置、システム、情報処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017041086A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019139577A (ja) * | 2018-02-13 | 2019-08-22 | 日立Geニュークリア・エナジー株式会社 | データ検索方法、データ検索装置及びプログラム |
-
2015
- 2015-08-19 JP JP2015162204A patent/JP2017041086A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019139577A (ja) * | 2018-02-13 | 2019-08-22 | 日立Geニュークリア・エナジー株式会社 | データ検索方法、データ検索装置及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3641238B1 (en) | Information exchange method and terminal | |
KR101645149B1 (ko) | 데이터 동기화 | |
US10116599B2 (en) | Topic categorized instant message communication | |
US9799004B2 (en) | System and method for multi-model, context-aware visualization, notification, aggregation and formation | |
CN105493070B (zh) | 用于高效数据共享的任务上下文架构 | |
EP2608138A1 (en) | Methods, Apparatuses and Computer Program Products for Providing Content to Users in a Collaborative Workspace System | |
CN105900121B (zh) | 用于生成活动流的方法 | |
EP2680212A1 (en) | Simultaneous experience of online content | |
JP2023529665A (ja) | コンテキストハブ内のサードパーティソースのインテリジェントな生成及び管理 | |
US20220164743A1 (en) | Managing projects in a content management system | |
US20150326620A1 (en) | Media presentation in a virtual shared space | |
KR20130060917A (ko) | 정보 제공 방법, 기기와 컴퓨터로 읽을 수 있는 기록 매체 | |
CN112069409B (zh) | 基于待办推荐信息的方法和装置、计算机系统和存储介质 | |
US9473742B2 (en) | Moment capture in a collaborative teleconference | |
JP2017041086A (ja) | 情報処理装置、システム、情報処理方法及びプログラム | |
EP2752853B1 (en) | Worklist with playlist and query for video composition by sequentially selecting segments from servers depending on local content availability | |
CN112541513B (zh) | 一种模型训练方法、装置、设备及存储介质 | |
WO2023134389A1 (zh) | 一种资源信息的共享方法、电子设备及计算机存储介质 | |
CN110012298B (zh) | 信息处理设备、视频传输设备及其控制方法 | |
JP6452458B2 (ja) | データ管理装置、データ管理方法、およびプログラム | |
JP2021516394A (ja) | 遅延データのためのユーザインタフェース最適化 | |
CN114222186A (zh) | 基于大数据深度挖掘的信息推送系统及方法 | |
JP2016004391A (ja) | 情報処理システム、管理装置、取得装置、情報処理装置、情報処理方法、コンピュータプログラム | |
US11716512B2 (en) | Personalized media guide for offline media devices | |
RU141446U1 (ru) | Информационно-поисковое устройство представления данных об объектах |