JP2015041234A - 画像分類装置、撮影装置、画像分類方法、及びプログラム - Google Patents
画像分類装置、撮影装置、画像分類方法、及びプログラム Download PDFInfo
- Publication number
- JP2015041234A JP2015041234A JP2013171706A JP2013171706A JP2015041234A JP 2015041234 A JP2015041234 A JP 2015041234A JP 2013171706 A JP2013171706 A JP 2013171706A JP 2013171706 A JP2013171706 A JP 2013171706A JP 2015041234 A JP2015041234 A JP 2015041234A
- Authority
- JP
- Japan
- Prior art keywords
- image
- sequence
- acquisition
- operations
- group
- 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
- Studio Devices (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
【課題】画像のクラスタリング精度を向上させる。【解決手段】画像の取得操作を含む、デバイスにおける複数の操作についての履歴を示す操作履歴を取得する。操作履歴から、1以上の予め規定された条件のいずれかに適合する、続けて行われる操作のシーケンスを検出する。検出されたシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、又は検出されたシーケンスの前後の取得操作により取得された画像が別のグループに含まれるように、複数の取得操作によりデバイスで取得された複数の画像を分類する。予め規定された条件のうちの少なくとも1つは、所定の操作の操作回数、操作で扱われる画像の取得時刻、及び操作で扱われる画像の情報のうちの少なくとも1つを用いて規定される。【選択図】図2
Description
本発明は、画像分類装置、撮影装置、画像分類方法、及びプログラムに関する。
デジタルカメラなどで撮影した画像をクラスタリングする技術が知られている。例えば、特許文献1には、撮影時刻順に並べられた複数の画像を複数のグループに分割する際に、カメラが一定時間以上電源をOFFにされていた場合に、電源OFFの前後に撮影された画像を別のグループに分類する技術を開示している。
しかしながら、電源OFFのようなデバイスの状態に基づいて画像をクラスタリングするのみでなく、より精度の高い画像クラスタリングを行うためのさらなる技術が求められていた。
本発明は、画像のクラスタリング精度を向上させることを目的とする。
本発明の目的を達成するために、例えば、本発明の画像分類装置は以下の構成を備える。すなわち、
画像の取得操作を含む、デバイスにおける複数の操作についての履歴を示す操作履歴を取得する取得手段と、
前記操作履歴から、1以上の予め規定された条件のいずれかに適合する、続けて行われる操作のシーケンスを検出する検出手段と、
前記検出されたシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、又は前記検出されたシーケンスの前後の取得操作により取得された画像が別のグループに含まれるように、複数の前記取得操作により前記デバイスで取得された複数の画像を分類する分類手段と、
を備える画像分類装置であって、
前記予め規定された条件のうちの少なくとも1つは、
所定の操作の操作回数、
操作で扱われる画像の取得時刻、及び
操作で扱われる画像の情報、
のうちの少なくとも1つを用いて規定されることを特徴とする。
画像の取得操作を含む、デバイスにおける複数の操作についての履歴を示す操作履歴を取得する取得手段と、
前記操作履歴から、1以上の予め規定された条件のいずれかに適合する、続けて行われる操作のシーケンスを検出する検出手段と、
前記検出されたシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、又は前記検出されたシーケンスの前後の取得操作により取得された画像が別のグループに含まれるように、複数の前記取得操作により前記デバイスで取得された複数の画像を分類する分類手段と、
を備える画像分類装置であって、
前記予め規定された条件のうちの少なくとも1つは、
所定の操作の操作回数、
操作で扱われる画像の取得時刻、及び
操作で扱われる画像の情報、
のうちの少なくとも1つを用いて規定されることを特徴とする。
画像のクラスタリング精度を向上させることができる。
以下、本発明の実施形態を図面に基づいて説明する。ただし、本発明の範囲は以下の実施例に限定されるものではない。
[実施形態1]
実施形態1に係る画像分類装置の構成について、図1を参照して説明する。図1は、実施形態1に係る画像分類装置の構成の一例を示すブロック図である。本実施形態に係る画像分類装置は、単一のコンピュータ装置で実現してもよいし、必要に応じて複数のコンピュータ装置に各機能を分散させることにより実現してもよい。本実施形態に係る画像分類装置を複数のコンピュータ装置で構成する場合、各コンピュータ装置が互いに通信可能となるように、各コンピュータ装置はローカル・エリア・ネットワーク(LAN)などの通信手段で接続することができる。このコンピュータ装置は、例えば、パーソナルコンピュータ(PC)又はワークステーション(WS)等の情報処理装置でありうる。一方で、このコンピュータ装置は、デジタルカメラ又はデジタルビデオカメラ等の撮像装置のような、他の情報処理装置であってもよい。すなわち、本実施形態に係る画像分類装置は、例えば、専用回路で構成される画像分類専用の装置であってもよいし、汎用のコンピュータであってもよいし、スマートフォンのような携帯デバイスであってもよいし、撮像装置であってもよい。
実施形態1に係る画像分類装置の構成について、図1を参照して説明する。図1は、実施形態1に係る画像分類装置の構成の一例を示すブロック図である。本実施形態に係る画像分類装置は、単一のコンピュータ装置で実現してもよいし、必要に応じて複数のコンピュータ装置に各機能を分散させることにより実現してもよい。本実施形態に係る画像分類装置を複数のコンピュータ装置で構成する場合、各コンピュータ装置が互いに通信可能となるように、各コンピュータ装置はローカル・エリア・ネットワーク(LAN)などの通信手段で接続することができる。このコンピュータ装置は、例えば、パーソナルコンピュータ(PC)又はワークステーション(WS)等の情報処理装置でありうる。一方で、このコンピュータ装置は、デジタルカメラ又はデジタルビデオカメラ等の撮像装置のような、他の情報処理装置であってもよい。すなわち、本実施形態に係る画像分類装置は、例えば、専用回路で構成される画像分類専用の装置であってもよいし、汎用のコンピュータであってもよいし、スマートフォンのような携帯デバイスであってもよいし、撮像装置であってもよい。
図1に示す画像分類装置100は、CPU101と、ROM102と、RAM103と、記憶装置104と、入力インターフェイス105と、出力インターフェイス106と、通信インターフェイス107と、システムバス108とを備える。CPU101(中央処理装置)は、画像分類装置100全体を制御する。ROM102(読み出し専用メモリ)は、変更を必要としないプログラム又はパラメータ等を格納する。RAM103(ランダムアクセスメモリ)は、外部装置等から供給されるプログラム又はデータを一時的に記憶する。記憶装置104は、画像分類装置100に設置されたハードディスク又はメモリカード等の記憶装置である。記憶装置104は、フレキシブルディスク(FD)、コンパクトディスク(CD)等の光ディスク、磁気カード、光カード、ICカード、又はメモリカード等の、着脱可能な記憶装置であってもよい。
入力インターフェイス105は、ポインティングデバイス又はキーボード等の入力デバイス109に接続され、入力デバイス109からユーザ操作又はユーザ入力を受け取る。出力インターフェイス106は、モニタ110等の出力デバイスに接続され、画像分類装置100が保持するデータ又は供給されたデータ等を出力デバイスに出力する。通信インターフェイス107は、インターネット等のネットワーク回線111、又はデジタルカメラ112、デジタルビデオカメラ113若しくはスマートフォン114等の外部装置へと接続できる。通信インターフェイス107は、これらからデータを取得し、これらへとデータを送信することができる。システムバス108は、各ユニット101〜107を通信可能に接続する。
後述する本実施形態に係る機能及び動作は、ROM102、RAM103又は記憶装置104等のコンピュータが読み取り可能な記憶媒体に格納されたプログラムを、CPU101が実行することにより実現することができる。
もっとも、前述のように画像分類装置100がデジタルカメラ、デジタルビデオカメラ、又はスマートフォンであってもよい。この場合、画像分類装置100は、入力デバイス109、モニタ110、及び撮像を行い得られた画像をメモリに格納する撮像部(不図示)のうちの少なくとも1つを有していてもよい。
次に、図2を参照して、本実施形態に係る画像分類装置100の機能構成について説明する。本実施形態に係る画像分類装置100は、操作シーケンス検出部201と、操作区間決定部202と、画像クラスタリング部203とを備える。これらの各部は、前述のように、専用のハードウェアにより実現されてもよいし、コンピュータが読み取り可能な記憶媒体に格納されたプログラムをCPU101が実行することにより実現されてもよい。
図2(A)に示すように、画像分類装置100は、「操作履歴」と「画像データ」とを入力データとして取得する。まず、この2つのデータについて説明する。
まず、操作履歴について図3(A)を参照して説明する。図3(A)は、操作履歴の一例を示す。操作履歴とは、デジタルカメラ112、デジタルビデオカメラ113、又はスマートフォン114等のデバイスにおける、複数の操作についての履歴を示す。本実施形態において、操作履歴を構成する1つのレコードは、機器ID・操作No・操作時刻・操作名・操作対象画像・バッテリー残量・メディア残量の組み合わせにより表される。図3(A)に示すテーブルは、複数の操作についての履歴を示し、テーブルの1行が1つの操作に対応する。
機器IDは、操作が行われたデバイスを特定する識別子である。機器IDが同一である履歴は、同一のデバイスにおける操作の履歴である。操作Noは、操作が行われた順番を示す。例えば、同一のデバイスにおいて複数の操作を行った場合には、それぞれの操作に対応する履歴に、昇順に連続番号を付すことができる。操作時刻は、操作が行われた時刻を示す。操作名は、操作の名称であり、操作を識別するために用いる。操作名としては、具体的な操作の名称の代わりに、操作を識別する識別子等を用いてもよい。操作対象画像は、操作の対象となった画像データを示す。例えば、撮影により得られた画像データ、又は表示された画像データのID(例えばファイル名等)が、操作対象画像として記録される。
バッテリー残量は、操作時刻におけるデバイスのバッテリーの残量を示す。本実施形態においては、バッテリー残量は量子化されたレベルで表される。具体的には、バッテリー残量として、残量が少ないことを示すLow、残量が多いことを示すHigh、残量が中程度であることを示すMiddle等の値が記録される。しかしながら、バッテリー残量の記録方法はこれに限定されず、電源容量や駆動可能時間等の数値で表されてもよい。メディア残量は、操作時刻におけるメディアの残量を示す。本実施形態において、メディアとは、画像データ等のデータを記憶する記憶部のことを指し、メディアの残量とは、この記憶部の残り容量のことを指す。メディア残量は、複数の記憶部についての残り容量の合計であってもよい。本実施形態において、メディア残量は、バッテリー残量と同様に量子化されたレベルで表される。しかしながら、メディア残量の記録方法はこれに限定されず、例えば利用可能なバイトサイズなどの数値で表されてもよい。
ここで、上述した項目のうち少なくとも1つが、別のテーブルに格納されてもよい。例えば、バッテリー残量又はメディア残量は、別のデータテーブルに格納されてもよい。この場合、バッテリー残量については、機器ID・記録時刻・バッテリー残量の組を記録する別のテーブルに記録することができる。操作履歴上のある操作時刻におけるバッテリー残量を得たい場合には、このテーブルを取得し、操作時刻に近い記録時刻におけるバッテリー残量に従って、操作時刻におけるバッテリー残量を決定することができる。メディア残量についても、同様に別のデータテーブルに格納することができる。このように、本実施形態において、操作履歴のデータ表現は図3(A)に示すものに限定されない。
また、異なる操作により、同一の動作が実現されることがある。例えば、電源ON動作が、電源ボタンの操作により行われる一方で、電源ボタン以外の操作により行われてもよいし。一方で、同一の操作により、異なる動作が実現されることもある。例えば、電源ボタンを操作した場合に、電源ON状態ならば電源OFF動作が行われ、電源OFF状態ならば電源ON動作が行われてもよい。また、操作が動作に関係するが、操作が動作に直結するわけではないこともある。例えば、メニュー選択を行う場合、十字キーが操作されると、決定ボタン等により実行された際に動作が行われる。十字キーにより直接動作が行われるわけではないが、十字キーの操作は動作に関係している。本実施形態においては、こうした表層的な操作により実際に行われる動作を、操作履歴として記録する。しかしながら、操作履歴の記録方法はこれに限られず、上記の十字キーの操作のような表層的な操作履歴を、操作履歴として記録してもよい。
また、1つの操作により複数の動作が行われることもある。例えば、多くのカメラにおいては、「電源ON」になると同時に撮影モードに入る。このように、「電源ON」操作により、「電源ON」と「撮影モード選択」とが同時に行われる。同様に、再生モードを選択することにより直前に撮影された画像が表示されてもよい。この場合、「再生モード選択」操作により、「再生モード選択」と「画像表示」が同時に行われる。さらには、撮影モードにある場合に再生モードが選択されると、「撮影モード終了」「再生モード選択」「画像表示」が同時に行われる。このように、1つの操作により複数の動作を行う場合には、操作名として、1つの操作により1つの操作を行う場合とは別の操作名を記録することができる。別名としては例えば「撮影モード終了・再生モード選択・画像表示」等でありうる。また、後述する検出ルールに従う検出動作において、このことを考慮して検出を行ってもよい。例えば、検出ルールに従って「撮影モード選択」に一致する履歴を検出する場合、操作名が「電源ON」である履歴も一致しているとみなすことができる。本実施形態においては、後者の方法、すなわち1つの操作が複数の動作に対応することを考慮して検出動作を行う方法を採用するものとする。しかしながら、前者の方法、すなわち別の操作名を記録する方法を用いてもよく、複数の動作に対応する操作の取り扱い方は特に限定されない。
また、システムによる自動的な操作を記録してもよい。例えば、電源ON状態で装置を放置している場合に、装置が自動的に電源OFF状態へと移行してもよい。こうした自動的な操作を、操作履歴に含めてもよい。このとき、ユーザによる操作か、デバイスによる自動操作か、を示す情報を操作履歴に残してもよい。このように、操作履歴はデバイスが行った操作を含んでもよい。
次に、本実施形態で用いる画像データについて図3(B)を参照して説明する。本実施形態においては、画像データがクラスタリングの対象として扱われる。本実施形態において、画像データは、画像IDと機器IDと撮影時刻と画像本体データとで構成される。画像IDは、画像を特定する識別子である。この画像IDは、図3(A)に示す「操作対象画像」と同様の情報でありうる。機器IDは、画像を生成したデバイスを特定する識別子である。この機器IDは、図3(A)に示す「機器ID」と同様の情報でありうる。撮影時刻は、画像の撮影を行った日時を示す情報である。撮影時刻が不明であるときは、画像データの生成日時が撮影時刻として記録されてもよい。画像本体データは、画像の内容を示すデータであり、例えば画像のピクセル情報などでありうる。画像本体データの代わりに、画像ファイルの所在を示す情報を記録してもよい。例えば、記憶装置等に記憶された画像ファイルのファイルパスを、画像本体データの代わりに画像データの一部として保持してもよい。画像本体データが必要な場合、ファイルパスを参照して記憶装置上のデータを特定し、このデータを取得することができる。このように、本実施形態における画像データのデータ表現は、図3(B)に示すものに限定されない。
図3(B)には、Image001〜Image004の4つの画像データが示されている。いずれの画像データもCamera1で生成されたデータであり、撮影時刻は図示の通りである。画像本体データはバイナリデータであるため、図3(B)においては省略されている。
次に、グループについて図3(C)を用いて説明する。グループはデータのまとまりであり、本実施形態においては画像データのまとまりである。本実施形態においては、画像データについてグループ分けが行われ、この結果が出力される。本実施形態において、グループは、グループIDと画像IDとの組を含むテーブルにより表現される。本実施形態におけるグループテーブルの例を図3(C)に示す。同一のグループIDが付された画像IDに対応する画像は、1つのグループを形成する。例えば、Gr001はImage001とImage002の2つを含むグループである。また、Gr002はImage003とImage004の2つを含むグループである。
本実施形態においては、それぞれのグループは階層的な関係にはないものとする。しかしながら、それぞれのグループが階層的な関係を有していてもよい。この場合、この階層的な関係は、それぞれのグループIDについての親子関係を示すテーブルにより表現し、出力することができる。
また、グループIDと、開始時刻及び終了時刻と、の組を含むテーブルにより、グループを表現することもできる。この場合、開始時刻と終了時刻との間の撮影時刻を有する複数の画像データが、グループIDに対応するグループを構成する。すなわち、例えば画像分類装置の外部において、グループの開始時刻と終了時刻の間に撮影時刻がある画像データを特定することにより、同一のグループにある画像データを特定することができる。さらには、グループを分ける境界位置を用いてグループを表現してもよい。例えば、画像IDの大きさに従ってグループ分けを行う場合に、グループ境界の前後にある2つの画像についての画像IDの組により、この境界を表すことができる。すなわち、境界を表す2つの画像IDの組を有するテーブルにより、グループを表現することができる。また、撮影時刻に従ってグループ分けを行う場合には、グループ分けの境界に対応する時刻により、グループを表現することができる。これらの場合、画像分類装置の外部において、境界を示す画像ID又は撮影時刻等を参照して、境界位置に従って画像データを分けることにより、グループ分けを行うことができる。このように、グループを表すためのデータ表現は、図3(C)に示すものに限定されない。
次に、本実施形態で用いられる操作シーケンスについて図3(D)を参照して説明する。操作シーケンスは、操作履歴上に出現する一連の操作列を指す。本実施形態で扱われる操作シーケンスの種類を図4に示す。例えば、「撮り直し」は、撮影後に撮影画像を確認する操作と再度撮影する操作とを含む操作列である。もっとも、操作シーケンスの種類が図4に示されるものに限られるわけではなく、他の操作シーケンスが考慮されてもよい。
本実施形態において、操作シーケンスは、第1の種類の操作のシーケンスと、第2の種類の操作のシーケンスとの2つに分類される。以下では、第1の種類の操作のシーケンスを連続操作と呼び、第2の種類の操作のシーケンスを境界操作と呼ぶ。境界操作は、撮影を行わないときに出現する操作シーケンスであり、予め規定された第2の種類の条件に適合するシーケンスである。一方、連続操作は、連続して撮影を行うときに出現する操作シーケンスであり、予め規定された第1の種類の条件に適合するシーケンスである。本実施形態においては、操作シーケンスのうち「観賞」「加工」及び「整理」が、境界操作として分類される。一方で、操作シーケンスのうち「撮影」「撮り直し」「撮影中のバッテリー交換」及び「撮影中の容量確保」が、連続操作として分類される。
図3(D)は、操作シーケンスの記録例を示す。それぞれの操作シーケンスの記録は、操作シーケンス名・開始機器ID・開始操作No・終了機器ID・終了操作No・開始時刻・終了時刻で構成されている。操作シーケンス名は、操作シーケンスの名称である。開始機器IDは操作シーケンスの最初の操作が行われたデバイスのIDであり、終了機器IDは操作シーケンスの最後の操作が行われたデバイスのIDである。開始操作Noは、操作シーケンスの最初の操作の操作Noであり、終了操作Noは、操作シーケンスの最後の操作の操作Noである。開始機器ID及び開始操作Noを参照して操作履歴を検索することにより、操作シーケンスの最初の操作に関連付けられた操作時刻、操作対象画像、バッテリー残量、及びメディア残量を特定することができる。また、終了機器IDと終了操作Noとを参照して操作履歴を検索することによっても、同様に操作シーケンスの最後の操作に関連づけられた情報を得ることができる。開始時刻及び終了時刻は、操作シーケンスの開始時刻及び終了時刻を表す。例えば、開始時刻及び終了時刻は、操作シーケンスの最初の操作の操作時刻及び最後の操作の操作時刻であってもよい。以下では、開始時刻から終了時刻までの区間を操作区間と呼ぶ。
図3(D)には、例として、「撮影」「観賞」という2つの操作シーケンスの記録が記載されている。図3(D)のように操作シーケンスを構成する最初及び最後の操作の操作IDを記録する代わりに、操作シーケンスを構成する各操作を列記することによって操作シーケンスを記録してもよい。また、後述する操作シーケンスの分類を示す情報、例えば境界操作か連続操作かを示す情報、をさらに記録してもよい。このように、本実施形態における操作シーケンスの表現方法は図3(D)のものに限定されない。
ここで、画像分類装置100が有する機能構成について説明する。操作シーケンス検出部201は、操作履歴から操作シーケンスを検出する。具体的には、操作シーケンス検出部201は、所定の検出ルールに従って操作シーケンスを検出する。操作シーケンスとは、続けて行われる操作により構成される操作列である。この検出ルールは、操作シーケンスを構成する操作の配列を規定する条件であって、予め規定されている。すなわち、操作シーケンス検出部201は、操作履歴から、検出ルールに合致する一連の操作列を特定する。そして、操作シーケンス検出部201は、特定された操作シーケンスを図3(D)に示すように記録する。本実施形態においては、操作シーケンス検出部201は、操作シーケンスの最初及び最後の操作についての情報を主に用いて、図3(D)に示す「操作シーケンス名・開始機器ID・開始操作No・終了機器ID・終了操作No」で構成される情報を生成する。図3(D)に示される情報のうち開始時刻及び終了時刻は、後述する操作区間決定部202によって生成される。
操作区間決定部202は、操作シーケンス検出部201によって検出された操作シーケンスについての操作区間を決定する。本実施形態において、操作区間決定部202は、操作シーケンスの最初及び最後の操作についての操作時刻を特定する。具体的には、操作区間決定部202は、操作シーケンス検出部201が検出した開始機器ID及び開始操作Noに対応する、操作シーケンスの最初の操作についての操作時刻を、操作履歴を参照して取得する。同様に、操作区間決定部202は、操作シーケンス検出部201が検出した終了機器ID及び終了操作Noに対応する、操作シーケンスの最後の操作についての操作時刻を、操作履歴を参照して取得する。操作区間決定部202は、開始時刻及び終了時刻として、こうして得られた操作シーケンスの最初及び最後の操作についての操作時刻を用いることができる。操作区間決定部202は、決定された開始時刻及び終了時刻の情報を、図3(D)に示されるように記録する。こうして、開始時刻及び終了時刻により定められる操作区間も特定される。
開始時刻及び終了時刻が、操作シーケンスの最初及び最後の操作についての操作時刻に一致する必要はない。例えば、画像の加工を行う場合には、再生モードで加工対象の画像を探してから、加工モードに移行することが多い。また、画像の加工後に再生モードで加工後の画像を見ることもある。そこで、「加工」操作シーケンスの開始時刻を、加工モードに入る直前の、再生モードを開始する操作の操作時刻とすることができる。また、「加工」操作シーケンスの終了時刻を、加工モードが終了した直後の、再生モードを終了する操作の操作時刻とすることもできる。しかしながら、加工モードの前後における再生モードの期間が長すぎる場合には、再生モードの全期間が画像の加工に関係しているとは限らない。そこで、加工モードを開始する操作の操作時刻から所定時間前であって、再生モードを開始する操作の操作時刻より後の時刻を、「加工」操作シーケンスの開始時刻としてもよい。こうして、加工モードに移行する少し前を、開始時刻として記録することができる。同様に、電源ON操作の後に再生モードを選択して画像の鑑賞を行う場合に、電源ON操作の操作時刻を、「鑑賞」操作シーケンスの開始時刻として記録してもよい。このように、本実施形態における操作区間の決定方法は、上述のものに限定されない。
画像クラスタリング部203は、操作シーケンス検出部201によって検出され、操作区間決定部202によって操作区間が決定された操作シーケンスの情報を参照して、画像データを分類する。分類される画像データには、操作履歴に含まれる複数の取得操作、例えば撮影操作、により、操作履歴を記録しているデバイスで取得された複数の画像データが含まれる。画像クラスタリング部203は、カメラ等の撮影装置による画像の取得操作によって取得した画像データを分類してもよい。この場合、画像分類装置100は、撮影装置によって撮影された画像データを取得する画像取得部(不図示)を備えていてもよい。また、画像分類装置100が、画像を撮影する撮影部(不図示)を備える撮影装置に含まれていてもよく、この場合、画像クラスタリング部203は、撮影部による画像の取得操作によって取得した画像データを分類してもよい。
本実施形態において、画像クラスタリング部203は、画像データを日時順に並べてから、操作シーケンスの情報を参照して画像データを分類する。画像クラスタリング部203は、さらに操作クラスタリング部204を有する。操作クラスタリング部204は、境界操作を示す操作シーケンスを参照して、画像データを分類する。クラスタリング処理の処理については後述する。
次に、画像分類装置100が行う画像分類処理について、図5を参照して説明する。図5(A)は、本実施形態に係る画像分類処理のフローチャートである。また、図5(B)は、本実施形態に係る画像分類処理の概念を示す図である。図5(B)においては、時間軸に沿って操作履歴に含まれるそれぞれの操作が図示されている。下向きの三角511は、撮影操作を示す。また、上向きの三角512は、撮影以外の操作を示す。
ステップS501において操作シーケンス検出部201は、操作履歴から操作シーケンスを検出する。本実施形態において操作シーケンス検出部201は、図4に示される種類の操作シーケンスの全てを検出する。図5(B)には、操作履歴から検出された操作シーケンス513が示されている。具体的には、「撮影」(C)、「鑑賞」(V)、及び「加工」(A)操作シーケンスが検出されている。ステップS501の詳細については後述する。
ステップS502において操作区間決定部202は、ステップS501で検出された操作シーケンスについての操作区間を決定する。操作区間の決定方法は、前述した通りである。
ステップS503において画像クラスタリング部203は、画像データを分類する。本実施形態において、画像クラスタリング部203は、境界操作の操作シーケンスに従って画像データを分類する。図5(B)には、境界操作の操作シーケンスについては、ラベル514(B)が付されている。ステップS503におけるクラスタリングの結果、囲み515で示されるように、3つのグループが形成される。それぞれのグループは、境界操作(B)によって区切られている。ステップS503の詳細については後述する。
以上のように、本実施形態においては、操作履歴に現れる操作シーケンスを検出し、境界操作に分類される操作シーケンスを用いて、画像データの分類が行われる。
次に、ステップS501の詳細について、図6を参照して説明する。図6は、ステップS501の処理を示すフローチャートである。画像分類装置100は、以下で用いられる操作シーケンスの検出ルールを、予め検出ルールリストとして保持しているものとする。図4は、この検出ルールリストの例である。図4のリストにおいては、操作シーケンスの識別子である「番号」と、「操作シーケンス名」と「分類」(境界操作又は連続操作)と、「検出ルール」とが対応付けられている。図4においては、説明のために、「検出ルール」にはフローチャートを表す図の番号が示されているが、通常は、検出ルールを規定するプログラムのメモリ上での開始位置などが「検出ルール」として記録される。
ステップS601及びステップS606は、それぞれの検出ルール番号について実行されるループ区間を示す。ステップS601は、ループの開始を示す。1回目のループにおいては、操作シーケンス検出部201は、ルール番号rを1に初期化する。2回目以降のループにおいては、rが検出ルールの数を超えていない場合には処理はステップS602へ移行する。また、rが検出ルールの数を超えている場合にはループが終了し、ステップS501の処理も終了する。
ステップS602において、操作シーケンス検出部201は、ルール番号rに対応する検出ルールを、検出ルールリストから選択する。ステップS603において、操作シーケンス検出部201は、S602で選択した検出ルールを用いて、操作履歴から操作シーケンスを検出する。ステップS603の詳細については後述する。
ステップS604において、操作シーケンス検出部201は、ステップS603において操作シーケンスが検出されたか否かを判定する。操作シーケンスが検出されていた場合、処理はステップS605へ移る。操作シーケンスが検出されていない場合、処理はステップS606へ移る。
ステップS605において、操作シーケンス検出部201は、ステップS603で検出された操作シーケンスを記録する。具体的には、操作シーケンス検出部201は、図3(D)に示すように、操作シーケンス名・開始機器ID・開始操作No・終了機器ID・終了操作Noの情報を生成して保持する。本実施形態において、操作シーケンス検出部201は、図4に示されるルール番号rに対応する操作シーケンス名を、操作シーケンス名とて記録する。また、ステップS603では、操作シーケンスの最初及び最後の操作についての操作履歴が特定されている。操作シーケンス検出部201は、操作シーケンスの最初の操作についての機器ID及び操作Noを、開始機器ID及び開始操作Noとして記録する。また、操作シーケンス検出部201は、操作シーケンスの最後の操作についての機器ID及び操作Noを、終了機器ID及び終了操作Noとして記録する。
ステップS606は、ループ区間の終端である。ステップS606において、操作シーケンス検出部201は、ルール番号rに1を加算し、その後処理はステップS601へ戻る。
次に、図7を参照して、ステップS603の処理について詳しく説明する。図7は、ステップS603における処理のフローチャートである。ステップS603の開始時には、既にr番目の検出ルールが選択されている。ステップS603においては、この選択されている検出ルールに従い、操作シーケンスが検出される。
ステップS701及びステップS706は、繰り返されるループ区間を示す。ステップS701は、ループ区間の開始を示す。1回目のループにおいては、操作シーケンス検出部201は、変数iを1に初期化する。変数iは、操作履歴に含まれるそれぞれの操作の番号を示す。最初の操作の番号は1であり、2番目の操作の番号は2であり、以下同様である。2回目以降のループにおいては、iが操作履歴に含まれる操作の数(操作履歴長)を超えていない場合には処理はステップS702へ移行する。また、iが操作の数を超えている場合にはループが終了し、ステップS603の処理も終了する。
ステップS702において、操作シーケンス検出部201は、変数iで示される操作を起点として、ステップS603で選択された検出ルールを適用する。具体的には、操作シーケンス検出部201は、変数iで示される操作に後続する操作列について、操作シーケンスを検出するための検出ルールに適合するか否かを判定する。適合する場合には、変数iで示される操作に後続する操作列は、ステップS603で選択された検出ルールに対応する操作シーケンスである。それぞれの検出ルールについてステップS702において行われる処理の詳細は、図9〜15のフローチャートを参照して後述する。
ステップS703において、操作シーケンス検出部201は、ステップS702で操作シーケンスが検出できたか否かを判定する。操作シーケンスが検出されていた場合、処理はS704へ移る。操作シーケンスが検出されていない場合、処理はステップS706へ移る。
ステップS704において、操作シーケンス検出部201は、ステップS702で検出された操作シーケンスを記録する。操作シーケンスの記録方法については、上述した通りである。記録された操作シーケンスは、ステップS604〜S605等において参照される。ステップS705において、操作シーケンス検出部201は、ステップS702で検出された操作シーケンスに含まれる最後の操作を示すように、変数iを変更する。
ステップS706は、ループ区間の終端である。ステップS706において、操作シーケンス検出部201は、変数iに1を加算し、その後処理はステップS701へ戻る。
次に、ステップS503における処理の詳細について、図8を参照して説明する。図8は、ステップS503における処理のフローチャートである。ステップS503の開始時には、操作履歴から操作シーケンスが検出されている。ステップS503においては、この操作シーケンスを参照してクラスタリング処理が行われる。
ステップS801において画像クラスタリング部203は、画像データを撮影時刻の昇順にソートし、得られた画像データ列を保持する。
ステップS802において画像クラスタリング部203は、画像データ列の先頭の画像データを含む新しいグループを作成する。この先頭の画像データは、撮影時刻が一番古い画像データである。そして、ステップS802で作成されたグループを、現在のグループと呼ぶ。現在のグループは、以下のステップS806,S807で参照される。
ステップS803及びステップS808は、ループ区間を示す。ステップS803は、ループ区間の開始を示す。1回目のループにおいては、画像クラスタリング部203は、画像データ列上の位置を示す変数iを2に初期化する。以下では、画像データ列上の位置iにある画像データを「画像データi」と呼ぶ。2回目以降のループにおいては、iが画像データ数を超えていない場合には処理はステップS804へ移行する。また、iが画像データ数を超えている場合にはループが終了し、ステップS503の処理も終了する。
ステップS804において画像クラスタリング部203は、では、画像データi−1と画像データiの撮影時刻の間で行われた境界操作を抽出する。境界操作は、ステップS502で検出された操作シーケンスに従って、抽出することができる。具体的には、画像クラスタリング部203は、ステップS502で検出された操作シーケンスから、境界操作を選び出す。それぞれの操作シーケンスが境界操作であるか否かは、例えば、図4に示す検出ルールリストを参照して判定することができる。さらに、画像クラスタリング部203は、「操作区間の開始時刻が画像データi−1の撮影時刻以後であり、かつ操作区間の終了時刻が画像データiの撮影時刻以前である」という条件を満たす境界操作を抽出する。
ステップS805において画像クラスタリング部203は、ステップS804で抽出した境界操作を参照して、画像データi−1と画像データiとの間に境界を設けるか否かを判定する。具体的には、ステップS804で境界操作が抽出された場合には、画像クラスタリング部203は、境界を設けることを決定する。そして、境界が無い場合には、処理はステップS806へ移る。一方で、境界があった場合は、処理はステップS807へ移る。
ステップS806において画像クラスタリング部203は、現在のグループに画像データiを追加する。
ステップS807において画像クラスタリング部203は、画像データiを含む新しいグループを作成し、現在のグループとする。こうして、画像データi−1までの画像データを含むグループと、画像データiから先の画像データを含むグループとが形成される。
ステップS808は、ループ区間の終端である。ステップS708において、画像クラスタリング部203は、変数iに1を加算し、その後処理はステップS803へ戻る。
以上の処理により、2つの画像データの撮影時刻の間で境界操作が行われている場合には、この2つの画像データが別々のグループに入るように、クラスタリングが行われる。言い換えれば、境界操作の前後における取得操作(例えば撮影操作)により取得された画像が別のグループに含まれるように、クラスタリングが行われる。クラスタリングの結果の出力方法は特に限定されない。例えば、各グループに含まれる画像データを識別する情報を作成し、この情報を出力することができる。また、撮影時刻に関して、グループ間の境界に対応する時刻を出力してもよい。
本実施形態においては、画像クラスタリング部203は、ステップS805において、境界操作の有無によって、境界を設けるか否かを判定している。しかしながら、境界を設けるか否かの判定方法はこの方法に限られない。例えば、2つの画像データの撮影時刻の間でより多くの境界操作が行われている場合には、2つの画像データの撮影時刻の間で1回の境界操作が行われている場合よりも、この2つの画像データ間に境界が存在する可能性が高い。言い換えれば、このような場合には2つの画像データの関連性は低い可能性が高い。そこで、境界操作の数を考慮して、境界を設けるか否かを判定してもよい。例えば、境界操作の数が所定数以上の場合に、境界を設けてもよい。
また、2つの画像データの撮影時刻の間でより長い時間の境界操作が行われている場合にも、この2つの画像データ間に境界が存在する可能性が高い。そこで、境界操作の時間を考慮して、境界を設けるか否かを判定してもよい。例えば、境界操作の総時間長が所定時間以上の場合に、境界を設けてもよい。
さらに、操作シーケンスの種類に応じて境界を設けるか否かを判定してもよい。また、「鑑賞」操作シーケンスを検出する際には、操作シーケンスにおける閲覧回数がカウントされる。この閲覧回数が多いほど、この2つの画像データ間に境界が存在する可能性が高い。同様に、「鑑賞」操作シーケンスにおいて、画像の表示時刻(操作時刻)と、その画像の撮影時刻との差が大きい場合、例えば差が所定の閾値以上である場合にも、この「鑑賞」操作シーケンスが画像データ間の境界を示している可能性が高い。なぜなら、時刻の差が小さい場合には、撮影条件の変更のために最近の撮影画像を確認している可能性が高く、時刻の差が大きい場合には、撮影を中断して過去の撮影画像を鑑賞している可能性が高いからである。そこで、こうした操作シーケンスの内容に応じて、境界を設けるか否かを判定してもよい。
また、境界操作だけではなく連続操作も参照して、境界を設けるか否かを判定してもよい。例えば、隣り合う2つの画像データの撮影時刻の間における連続操作が検出されている場合、又は隣り合う2つの画像データの少なくとも一方について撮影時刻を含む連続操作が検出されている場合には、2つの画像データ間には境界が存在しない可能性が高い。なぜなら、連続操作が検出されている場合には、画像が連続して撮影されており、2つの画像データの関連性が高い可能性が高いからである。このような場合には、境界を設けなくてもよい。さらに、隣り合う2つの画像データの撮影時刻の間で複数の操作シーケンスが検出されている場合には、操作シーケンスに付された優先順位に従い、優先順位の高い操作シーケンスに従って境界を設けるか否かを判定してもよい。一方で、境界操作を参照しない場合には、ステップS502において操作シーケンス検出部201は境界操作のみを検出してもよい。
上述の、境界操作の数、境界操作の時間、操作シーケンスの種類、操作シーケンスの内容、及び連続操作の存在等を組み合わせて、境界を設けるか否かを判定してもよい。例えば、それぞれの要素に応じて、境界が存在する可能性を示すパラメータ値を決定し、決定されたパラメータ値の合計と閾値とを比較することにより、境界を設けるか否かを判定してもよい。この閾値は予め定められていてもよいし、例えばユーザの指定により決定されてもよい。こうした条件に従って判断を行うことにより、より正確に境界を検出することができる。もっとも、境界を設定するか否かを判定するために参照される条件は上述のものに限定されず、任意の条件を参照することができる。
(操作シーケンスの検出ルール)
以下に、「鑑賞」「加工」「整理」「撮影」「撮り直し」「撮影中バッテリー交換」「撮影中の容量確保」操作シーケンスのそれぞれの検出ルールの例を説明する。以下の処理に従って、ステップS702において、操作シーケンス検出部201は、操作シーケンスを検出する。
以下に、「鑑賞」「加工」「整理」「撮影」「撮り直し」「撮影中バッテリー交換」「撮影中の容量確保」操作シーケンスのそれぞれの検出ルールの例を説明する。以下の処理に従って、ステップS702において、操作シーケンス検出部201は、操作シーケンスを検出する。
(検出ルール1:観賞)
本実施形態で用いられる、「観賞」操作シーケンスを検出するための検出ルールについて、図9のフローチャートを参照して説明する。この検出ルールでは、ゆっくりとした画像閲覧を行う操作シーケンスを検出する。本実施形態では、一定時間以上の時間をかけた画像表示を所定回数以上行う操作列を、「観賞」操作シーケンスとして検出する。
本実施形態で用いられる、「観賞」操作シーケンスを検出するための検出ルールについて、図9のフローチャートを参照して説明する。この検出ルールでは、ゆっくりとした画像閲覧を行う操作シーケンスを検出する。本実施形態では、一定時間以上の時間をかけた画像表示を所定回数以上行う操作列を、「観賞」操作シーケンスとして検出する。
以下、具体的な検出処理について説明する。上述したように、ステップS702の開始時には、検出の起点となる操作が変数iによって指定されている。以下では、検出の起点となる操作のことを起点位置と呼ぶ。すなわち、起点位置の操作に後続する操作列について、検出ルールに適合するか否かが判定される。
ステップS901において、操作シーケンス検出部201は、起点位置の操作名が「再生モードの選択」であるか否かを判定する。そうである場合、処理はステップS902に進む。そうではない場合は、「観賞」操作シーケンスの検出処理は終了する。
ステップS902において、操作シーケンス検出部201は、閲覧回数を示す変数を0に初期化する。
ステップS903及びS907は、ループ区間を示す。ステップS903は、ループ区間の開始を示す。1回目のループにおいては、操作シーケンス検出部201は、操作履歴上の操作の番号を示す変数jを起点位置の番号に初期化する。以下では、変数jによって示される操作を操作jと呼ぶ。2回目以降のループにおいては、変数jが操作履歴に含まれる最後の操作の番号以下である場合には処理はステップS904へ進む。また、変数jが最後の操作の番号を超えている場合には、「観賞」操作シーケンスの検出処理は終了する。
ステップS904において、操作シーケンス検出部201は、操作jの操作名を参照して処理を切り替える。具体的には、操作jの操作名が「画像表示」である場合、処理はステップS905へ移る。また、操作jの操作名が「再生モードの終了」である場合、処理はステップS908へ移る。それ以外の場合は、処理はステップS907へ移る。
ステップS905において、操作シーケンス検出部201は、操作jによる画像表示時間が閾値以上であるか否かを判定する。表示時間は、次の画像を表示する操作が行われるまでの時間、又は画像表示を終了するまでの時間であり、例えば、操作履歴に示される操作j+1の操作時刻を参照して決定することができる。表示時間が閾値以上である場合、処理はステップS906へ移る。それ以外の時は、処理はステップS907へ移る。
ステップS906において、操作シーケンス検出部201は、閲覧回数を示す変数に1を加算する。
ステップS907は、ループ区間の終端である。ステップS907において、操作シーケンス検出部201は、変数jに1を加算し、その後処理はステップS903へ戻る。
ステップS908において、操作シーケンス検出部201は、閲覧回数を示す変数が閾値以上であるか否かを判定する。閾値以上である場合、処理はステップS909へ移る。それ以外のときは、「観賞」操作シーケンスの検出処理は終了する。
ステップS909において、操作シーケンス検出部201は、起点位置の操作から操作jまでを、「観賞」操作シーケンスとして検出する。
「画像表示」という操作は、撮影者の意識が撮影へと向いていないことを示す。さらに、「画像表示」操作の回数が多いことは、撮影へと意識が向いていないことをより明確に示す。この検出ルールで検出される「鑑賞」操作シーケンスは、デバイス操作者の意識が、撮影ではなく、画像の閲覧に向かっていることを示す。このように、操作時刻において撮影に意識が向いていなかったことは、撮影対象となるイベントが存在していなかったことを示唆する。このために、「鑑賞」操作シーケンスは、グループの境界を発見する手がかりとなる。
ステップS905においては、表示画像の撮影時刻と操作時刻との差が閾値以上であることを、さらなるAND条件として加えてもよい。例えば、操作jにおける画像表示時間が閾値以上であり、かつ表示画像の撮影時刻と操作時刻との差が閾値以上である場合に、処理がステップS906へと移ってもよい。表示画像の撮影時刻と操作時刻との差が閾値以上であることは、昔の画像を閲覧していることを示し、したがって操作時刻における現在のイベントではなく、過去の時点に撮影者の意識が向いていることを示す。このような変形例においては、より信頼性の高い境界操作として、「観賞」操作シーケンスを検出することができる。
また、ステップS901,905においては、メディア残量が十分あることを、さらなるAND条件として加えてもよい。このような変形例においては、メディアの容量確保のために削除すべき画像をじっくりと選ぶ操作は、「観賞」操作シーケンスであるとはみなされない。
本実施形態のステップS905においては、表示時間が算出された。しかしながら、検出ルールの適用にあたって表示時間は何度も参照されるため、予め表示時間を計算し、操作履歴として保持してもよい。この場合は、図3(A)に示す操作履歴に、「表示時間」等の項目を追加することができる。このように、操作履歴に含まれるデータは、操作履歴の前処理により追加されたものであってもよい。
(検出ルール2:加工)
本実施形態で用いられる、「加工」操作シーケンスを検出するための検出ルールについて、図10のフローチャートを参照して説明する。この検出ルールでは、操作時刻からかなり前に撮影された画像の加工を行う操作列を、「加工」操作シーケンスとして検出する。
本実施形態で用いられる、「加工」操作シーケンスを検出するための検出ルールについて、図10のフローチャートを参照して説明する。この検出ルールでは、操作時刻からかなり前に撮影された画像の加工を行う操作列を、「加工」操作シーケンスとして検出する。
以下、具体的な検出処理について説明する。以下では、「鑑賞」操作シーケンスと同様、起点位置の操作に後続する操作列について、検出ルールに適合するか否かが判定される。
ステップS1001において、操作シーケンス検出部201は、起点位置の操作の操作名が「加工モードの選択」であるか否かを判定する。そうである場合、処理はステップS1002へ移る。それ以外の場合は、「加工」操作シーケンスの検出処理は終了する。
ステップS1002において、操作シーケンス検出部201は、画像の加工が行われていることを示す加工フラグをOFFに初期化する。
ステップS1003及びS1007は、ステップS903及びS907と同様のループ区間を示し、説明は省略する。
ステップS904において、操作シーケンス検出部201は、操作jの操作名を参照して処理を切り替える。具体的には、操作jの操作名が「加工画像の保存」である場合、処理はステップS1005へ移る。また、操作jの操作名が「加工モードの終了」である場合、処理はステップS1008へ移る。それ以外の場合は、処理はステップS1007へ移る。
ステップS1005において、操作シーケンス検出部201は、操作jにおいて保存される加工画像の撮影時刻と、操作jの操作時刻との差が閾値以上であるか否かを判定する。この差は、操作時刻から撮影時刻を引くことで求めることができる。差が閾値以上である場合、処理はステップS1006へ移る。それ以外の場合、処理はステップS1007へ移る。
ステップS1006において、操作シーケンス検出部201は、加工フラグをONにする。
ステップS1008において、操作シーケンス検出部201は、加工フラグがONであるか否かを判定する。加工フラグがONである場合、処理はステップS1009へ移る。それ以外の場合、「加工」操作シーケンスの検出処理は終了する。
ステップS1009において、操作シーケンス検出部201は、起点位置の操作から操作jまでを「加工」操作シーケンスとして検出する。
「加工画像の保存」という操作は、撮影に撮影者の意識が向いていないことを示唆する。また、加工対象の画像が操作時点よりも過去の画像であることは、操作時点で撮影者の意識が過去に向いていたことを示す。したがって、「加工」操作シーケンスは、「鑑賞」操作シーケンスと同様、グループの境界を発見する手がかりとなる。
「観賞」操作シーケンスと同様に、加工操作の種類、加工操作の数や、加工操作に要した時間、例えば加工画像の表示時間、等をさらに参照して、「加工」操作シーケンスを検出してもよい。加工操作には、例えば「書き込み」「フレーム付与」「スタンプ付与」「トリミング」「リサイズ」「色変換」などが含まれる。これらをさらに考慮することにより、加工に意識を向けているか否かを推定することができ、より正確性の高い境界操作として、「加工」操作シーケンスを検出することができる。
(検出ルール3:整理)
本実施形態で用いられる、「整理」操作シーケンスを検出するための検出ルールについて、図11のフローチャートを参照して説明する。この検出ルールでは、デバイス内の画像を整理する操作列を、「整理」操作シーケンスとして検出する。本実施形態においては、「整理」操作は、「画像へのレート付け」「画像の削除」「画像のWebアップロード」等の、画像情報編集操作、画像削除操作、及び画像転送操作を含む。これらの「整理」操作を所定の回数以上実行する操作列が、「整理」操作シーケンスとして検出される。
本実施形態で用いられる、「整理」操作シーケンスを検出するための検出ルールについて、図11のフローチャートを参照して説明する。この検出ルールでは、デバイス内の画像を整理する操作列を、「整理」操作シーケンスとして検出する。本実施形態においては、「整理」操作は、「画像へのレート付け」「画像の削除」「画像のWebアップロード」等の、画像情報編集操作、画像削除操作、及び画像転送操作を含む。これらの「整理」操作を所定の回数以上実行する操作列が、「整理」操作シーケンスとして検出される。
以下、具体的な検出処理について説明する。以下では、「整理」操作シーケンスと同様、起点位置の操作に後続する操作列について、検出ルールに適合するか否かが判定される。
ステップS1101において、操作シーケンス検出部201は、起点位置の操作の操作名が「再生モードの選択」であるか否かを判定する。そうである場合、処理はステップS1102へ移る。それ以外の場合は、「整理」操作シーケンスの検出処理は終了する。
ステップS1102において、操作シーケンス検出部201は、整理操作回数を示す変数を0に初期化する。
ステップS1103及びS1108は、ステップS903及びS907と同様のループ区間を示し、説明は省略する。
ステップS1104において、操作シーケンス検出部201は、操作jの操作名を参照して処理を切り替える。具体的には、操作jの操作名が「整理」操作である場合、処理はステップS1105へ移る。また、操作jの操作名が「再生モードの終了」である場合、処理はステップS1109へ移る。それ以外の場合は、処理はステップS1108へ移る。
ステップS1105において、操作シーケンス検出部201は、操作履歴を参照して、操作jの操作時刻におけるメディア残量が閾値以上であるか否かを判定する。メディア残量が閾値以上である場合、処理はステップS1106へ移る。それ以外の場合、処理はステップS1108へ移る。
ステップS1106において、操作シーケンス検出部201は、操作jにおける整理対象画像の撮影時刻と、操作jの操作時刻との差が閾値以上であるか否かを判定する。この差は、操作時刻から撮影時刻を引くことで求めることができる。差が閾値以上である場合、処理はステップS1107へ移る。それ以外の場合、処理はステップS1108へ移る。
ステップS1107において、操作シーケンス検出部201は、整理操作回数を示す変数に1を加算する。
ステップS1109において、操作シーケンス検出部201は、整理操作回数を示す変数が閾値以上であるか否かを判定する。閾値以上である場合、処理はステップS1110へ移る。それ以外の場合、「整理」操作シーケンスの検出処理は終了する。
ステップS1110において、操作シーケンス検出部201は、起点位置の操作から操作jまでを「整理」操作シーケンスとして検出する。
「整理」操作は、撮影に撮影者の意識が向いていないことを示唆する。また、整理対象の画像が操作時点よりも過去の画像であることは、操作時点で撮影者の意識が過去に向いていたことを示す。したがって、「整理」操作シーケンスは、「鑑賞」操作シーケンスと同様、グループの境界を発見する手がかりとなる。ただし、メディア容量が少ない場合に、撮影画像を格納するために、過去の画像を消すことがある。メディア容量が少ない場合における「整理」操作をカウントしないことにより、このような状況における「整理」操作を「整理」操作シーケンスとして検出しにくくなる。ステップS1105においては、起点位置の操作の操作時刻におけるメディア残量が閾値以上であるか否かを判定してもよい。このような変形例によれば、画像の削除を行っていくことでメディア容量が十分に確保される場合に、操作が「整理」操作としてカウントされてしまうことを回避できる。
(検出ルール4:撮影)
本実施形態で用いられる、「撮影」操作シーケンスを検出するための検出ルールについて、図12のフローチャートを参照して説明する。この検出ルールでは、連続した撮影を行う操作列を、「撮影」操作シーケンスとして検出する。本実施形態においては、撮影モードで少なくとも一度の撮影を行う操作列が、「撮影」操作シーケンスとして検出される。
本実施形態で用いられる、「撮影」操作シーケンスを検出するための検出ルールについて、図12のフローチャートを参照して説明する。この検出ルールでは、連続した撮影を行う操作列を、「撮影」操作シーケンスとして検出する。本実施形態においては、撮影モードで少なくとも一度の撮影を行う操作列が、「撮影」操作シーケンスとして検出される。
以下、具体的な検出処理について説明する。以下では、「鑑賞」操作シーケンスと同様、起点位置の操作に後続する操作列について、検出ルールに適合するか否かが判定される。
ステップS1201において、操作シーケンス検出部201は、起点位置の操作の操作名が「撮影モードの選択」であるか否かを判定する。そうである場合、処理はステップS1202へ移る。それ以外の場合は、「撮影」操作シーケンスの検出処理は終了する。
ステップS1202において、操作シーケンス検出部201は、撮影回数を示す変数を0に初期化する。
ステップS1203及びS1206は、ステップS903及びS907と同様のループ区間を示し、説明は省略する。
ステップS1204において、操作シーケンス検出部201は、操作jの操作名を参照して処理を切り替える。具体的には、操作jの操作名が「撮影」である場合、処理はステップS1205へ移る。また、操作jの操作名が「撮影モードの終了」である場合、処理はステップS1207へ移る。それ以外の場合、処理はステップS1206へ移る。
ステップS1205において、操作シーケンス検出部201は、撮影回数を示す変数に1を加算する。
ステップS1207において、操作シーケンス検出部201は、撮影回数を示す変数が1以上であるか否かを判定する。1以上である場合、処理はステップS1208へ移る。それ以外の場合、「撮影」操作シーケンスの検出処理は終了する。
ステップS1208において、操作シーケンス検出部201は、起点位置の操作から操作jまでを「撮影」操作シーケンスとして検出する。
「撮影モードの選択」及び「撮影」という操作は、撮影に撮影者の意識が向いていることを示唆する。また、「撮影」操作が1回以上行われたことは、撮影の意図をもって撮影モードが選択されたことを示し、特に撮影モードを選択した時点で撮影者が撮影意図を持っていたことを示している。このように、「撮影」操作シーケンスの間は、撮影者の意識が継続的に撮影へと向いていたことが推定される。したがって、「撮影」操作シーケンスは、撮影画像をグループにまとめるための手がかりとなる。
(検出ルール5:撮り直し)
本実施形態で用いられる、「撮り直し」操作シーケンスを検出するための検出ルールについて、図13のフローチャートを参照して説明する。この検出ルールでは、撮影後に撮影画像を確認してから再度撮影する操作列を、「撮り直し」操作シーケンスとして検出する。本実施形態においては、撮影後に、直前に撮影した画像を閲覧又は削除し、すぐ撮影を行う操作列が、「撮り直し」操作シーケンスとして検出される。
本実施形態で用いられる、「撮り直し」操作シーケンスを検出するための検出ルールについて、図13のフローチャートを参照して説明する。この検出ルールでは、撮影後に撮影画像を確認してから再度撮影する操作列を、「撮り直し」操作シーケンスとして検出する。本実施形態においては、撮影後に、直前に撮影した画像を閲覧又は削除し、すぐ撮影を行う操作列が、「撮り直し」操作シーケンスとして検出される。
以下、具体的な検出処理について説明する。以下では、「鑑賞」操作シーケンスと同様、起点位置の操作に後続する操作列について、検出ルールに適合するか否かが判定される。
ステップS1301において、操作シーケンス検出部201は、起点位置の操作の操作名が「撮影」であるか否かを判定する。そうである場合、処理はステップS1302へ移る。それ以外の場合、「撮影」操作シーケンスの検出処理は終了する。
ステップS1302及びS1306は、第1のループ区間を示す。このループ区間はステップS903及びS907と同様のものであり、説明は省略する。
ステップS1303において、操作シーケンス検出部201は、起点位置の操作の操作時刻と、操作jの操作時刻との差が、閾値以内であるか否かを判定する。閾値以内である場合、処理はステップS1304へと移る。閾値以内ではない場合、「撮影」操作シーケンスの検出処理は終了する。
ステップS1304において、操作シーケンス検出部201は、操作jの操作名が「画像表示」又は「画像削除」であるか否かを判定する。どちらかである場合、処理はステップS1305へ移る。どちらでもない場合、処理はS1306へ移る。
ステップS1305において、操作シーケンス検出部201は、起点位置の操作と操作jの操作対象が同じであるか否かを判定する。具体的には、起点位置の操作で撮影された画像と、位置jの操作(画像表示又は画像削除)の対象の画像とが、同じであるか否かが判定される。この処理は、操作履歴における、操作対象画像の「画像ID」を比較することによって行うことができる。別の方法として、操作履歴に示される「画像本体データ」から画像特徴量(色味、テクスチャ、又は局所特徴量等)を抽出し、特徴量を比較することによって、画像が同じであるか否かを判定してもよい。操作対象が同じである場合、処理はステップS1307へ移る。同じではない場合、処理はステップS1306へ移る。
ステップS1307及びS1310は、第2のループ区間を示す。ステップS1307は、第2のループ区間の開始を示す。1回目のループにおいては、操作シーケンス検出部201は、操作履歴上の操作の番号を示す変数kを、変数jで初期化する。2回目以降のループにおいては、変数kが操作履歴に含まれる最後の操作の番号以下である場合には処理はステップS1308へ進む。また、変数kが最後の操作の番号を超えている場合には、「撮り直し」操作シーケンスの検出処理は終了する。
ステップS1308において、操作シーケンス検出部201は、操作jの操作時刻と、操作kの操作時刻との差が、閾値以内であるか否かを判定する。閾値以内である場合、処理はステップS1309へと移る。閾値以内ではない場合、「撮り直し」操作シーケンスの検出処理は終了する。
ステップS1309において、操作シーケンス検出部201は、操作kの操作名が「撮影」であるか否かを判定する。「撮影」である場合、処理はステップS1311へ移る。それ以外の場合、処理はステップS1310へ移る。
ステップS1310は、第2のループ区間の終端である。ステップS1310において、操作シーケンス検出部201は、変数kに1を加算し、その後処理はステップS1307へ戻る。
ステップS1311において、操作シーケンス検出部201は、起点位置の操作から操作kまでを、「撮り直し」操作シーケンスとして検出する。
この検出ルールによれば、撮影から所定時間内に撮影画像を表示しており、所定時間内にさらに再度撮影を行っている場合に、「撮り直し」操作シーケンスが検出される。このような場合には、撮影者は、撮影から意識が離れた状態で画像を閲覧しているのではなく、撮影の確認のために画像を閲覧していることが推定される。このように、「撮り直し」操作シーケンスの間は、撮影者の意識が継続的に撮影へと向いていたことが推定される。したがって、「撮り直し」操作シーケンスは、撮影画像をグループにまとめるための手がかりとなる。
本実施形態においては、撮影後に画像表示が行われていることを「撮り直し」操作シーケンスを検出するための条件とした。変形例として、表示時間が所定時間以上であることをさらなる条件としてもよい。この変形例によれば、画像をさっと見た場合ではなく、確認する意図をもって画像を見ている場合を、検出することが可能となる。
(検出ルール6:撮影中のバッテリー交換)
本実施形態で用いられる、「撮影中バッテリー交換」操作シーケンスを検出するための検出ルールについて、図14のフローチャートを参照して説明する。この検出ルールでは、撮影中にバッテリー残量が少なくなった場合にバッテリーを交換する操作列を、「撮影中バッテリー交換」操作シーケンスとして検出する。本実施形態においては、撮影後に、バッテリー残量が少ない状況下でバッテリー交換をし、すぐにさらなる撮影を行う操作列が、「撮影中バッテリー交換」操作シーケンスとして検出している。
本実施形態で用いられる、「撮影中バッテリー交換」操作シーケンスを検出するための検出ルールについて、図14のフローチャートを参照して説明する。この検出ルールでは、撮影中にバッテリー残量が少なくなった場合にバッテリーを交換する操作列を、「撮影中バッテリー交換」操作シーケンスとして検出する。本実施形態においては、撮影後に、バッテリー残量が少ない状況下でバッテリー交換をし、すぐにさらなる撮影を行う操作列が、「撮影中バッテリー交換」操作シーケンスとして検出している。
以下、具体的な検出処理について説明する。以下では、「鑑賞」操作シーケンスと同様、起点位置の操作に後続する操作列について、検出ルールに適合するか否かが判定される。
ステップS1401において、操作シーケンス検出部201は、起点位置の操作の操作名が「撮影」であるか否かを判定する。そうである場合、処理はステップS1402へ移る。それ以外の場合は、「撮影」操作シーケンスの検出処理は終了する。
ステップS1402において、操作シーケンス検出部201は、操作履歴を参照して、起点位置の操作の操作時刻におけるバッテリー残量が閾値以下であるか否かを判定する。バッテリー残量が閾値以下である場合、処理はステップS1403へ移る。それ以外の場合、「撮影中バッテリー交換」操作シーケンスの検出処理は終了する。
ステップS1403及びS1406は、第1のループ区間を示す。このループ区間はステップS903及びS907と同様のものであり、説明は省略する。
ステップS1403において、操作シーケンス検出部201は、起点位置の操作の操作時刻と、操作jの操作時刻との差が、閾値以内であるか否かを判定する。閾値以内である場合、処理はステップS1405へと移る。閾値以内ではない場合、「撮影中バッテリー交換」操作シーケンスの検出処理は終了する。
ステップS1405において、操作シーケンス検出部201は、操作jの操作名が「バッテリー交換」であるか否かを判定する。そうである場合、処理はステップS1407へ移る。それ以外の場合、処理はステップS1406へ移る。
ステップS1407及びS1410は、第2のループ区間を示す。このループ区間はステップS1307及びS1310と同様のものであり、説明は省略する。
ステップS1408において、操作シーケンス検出部201は、操作jの操作時刻と、操作kの操作時刻との差が、閾値以内であるか否かを判定する。閾値以内である場合、処理はステップS1409へと移る。閾値以内ではない場合、「撮影中バッテリー交換」操作シーケンスの検出処理は終了する。
ステップS1409において、操作シーケンス検出部201は、操作kの操作名が「撮影」であるか否かを判定する。「撮影」である場合、処理はステップS1411へ移る。それ以外の場合、処理はステップS1410へ移る。
ステップS1411において、操作シーケンス検出部201は、起点位置の操作から操作kまでを、「撮影中バッテリー交換」操作シーケンスとして検出する。
この検出ルールによって検出された「撮影中バッテリー交換」操作シーケンスにおける「バッテリー交換」操作は、バッテリー残量が少ない時に行われたものであり、やむをえないものであったことが推定される。このように、この検出ルールによれば、デバイス状態を参照して「撮影中バッテリー交換」操作シーケンスが検出される。また、「バッテリー交換」操作の前後は撮影操作であることから、この操作シーケンスの間は、撮影者は継続的に撮影へと意識を向けていたと推定できる。このため、「撮影中バッテリー交換」操作シーケンスは、撮影画像をグループにまとめるための手がかりとなる。
(検出ルール7:撮影中の容量確保)
本実施形態で用いられる、「撮影中の容量確保」操作シーケンスを検出するための検出ルールについて、図15のフローチャートを参照して説明する。この検出ルールでは、撮影中にメディア容量が少なくなった場合にメディア容量を確保する操作を行う操作列を、「撮影中の容量確保」操作シーケンスとして検出する。本実施形態においては、撮影後に、メディア容量が少ない状況下で画像を削除し、すぐに撮影を行う操作列が、「撮影中の容量確保」操作シーケンスとして検出される。
本実施形態で用いられる、「撮影中の容量確保」操作シーケンスを検出するための検出ルールについて、図15のフローチャートを参照して説明する。この検出ルールでは、撮影中にメディア容量が少なくなった場合にメディア容量を確保する操作を行う操作列を、「撮影中の容量確保」操作シーケンスとして検出する。本実施形態においては、撮影後に、メディア容量が少ない状況下で画像を削除し、すぐに撮影を行う操作列が、「撮影中の容量確保」操作シーケンスとして検出される。
以下、具体的な検出処理について説明する。以下では、「鑑賞」操作シーケンスと同様、起点位置の操作に後続する操作列について、検出ルールに適合するか否かが判定される。
ステップS1501において、操作シーケンス検出部201は、起点位置の操作の操作名が「撮影」であるか否かを判定する。そうである場合、処理はステップS1502へ移る。それ以外の場合は、「撮影中の容量確保」操作シーケンスの検出処理は終了する。
ステップS1502において、操作シーケンス検出部201は、容量の確保が行われたことを示す容量確保フラグをOFFにする。また、操作シーケンス検出部201は、容量を確保する操作列における最後の「画像削除」操作の操作時刻を示す変数(最終操作時刻)を初期化する。本実施形態においては、最終操作時刻は、起点位置の操作の操作時刻で初期化される。
ステップS1503において、操作シーケンス検出部201は、起点位置の操作時刻におけるメディア残量が閾値以下であるか否かを、操作履歴を参照して判定する。メディア残量が閾値以下である場合、処理はS1504へ移る。それ以外の場合、「撮影中の容量確保」操作シーケンスの検出処理は終了する。
ステップS1504及びS1510は、ステップS903及びS907と同様のループ区間を示し、説明は省略する。
ステップS1505において、操作シーケンス検出部201は、操作jの操作名を参照して処理を切り替える。具体的には、操作jの操作名が「画像削除」である場合、処理はステップS1506へ移る。それ以外の場合、処理はステップS1508へ移る。
ステップS1506において、操作シーケンス検出部201は、最終操作時刻と、操作jの操作時刻との差が閾値以内であるか否かを判定する。閾値以内である場合、処理はステップS1507へ移る。そうではない場合、処理はステップS1508へ移る。
ステップS1507において、操作シーケンス検出部201は、容量確保フラグをONに設定する。また、操作シーケンス検出部201は、最終操作時刻を操作jの操作時刻に設定する。
ステップS1508において、操作シーケンス検出部201は、容量確保フラグがONであるか否かを判定する。ONである場合、処理はステップS1509へ移る。そうではない場合、処理はステップS1510へ移る。
ステップS1509において、操作シーケンス検出部201は、操作jの操作名を参照して処理を切り替える。具体的には、操作jの操作名が「撮影」である場合、処理はステップS1511へ移る。それ以外の場合、処理はステップS1510へ移る。
ステップS1511において、操作シーケンス検出部201は、最終操作時刻と操作jの操作時刻との差が閾値以内であるか否かを判定する。閾値以内である場合、処理はステップS1512へ移る。そうではない場合、「撮影中の容量確保」操作シーケンスの検出処理は終了する。
ステップS1512において、操作シーケンス検出部201は、起点位置の操作から操作jまでを「撮影中の容量確保」操作シーケンスとして検出する。
この検出ルールによって検出された「撮影中の容量確保」操作シーケンスにおける「画像削除」操作は、メディア残量が少ない時に行われたものであり、やむをえないものであったことが推定される。このように、この検出ルールによれば、デバイス状態を参照して「撮影中の容量確保」操作シーケンスが検出される。また、「画像削除」操作の前後は撮影操作であることから、この操作シーケンスの間は、撮影者は継続的に撮影へと意識を向けていたと推定できる。このため、「撮影中の容量確保」操作シーケンスは、撮影画像をグループにまとめるための手がかりとなる。
(その他の操作シーケンス)
本実施形態においては、図4に示す操作シーケンスを検出した。しかしながら、検出する操作シーケンスは図4に示すものに限られない。例えば、境界操作を示す操作シーケンスとして「ストレージ接続」「休止」「充電」「撮影前準備」などを検出してもよい。
本実施形態においては、図4に示す操作シーケンスを検出した。しかしながら、検出する操作シーケンスは図4に示すものに限られない。例えば、境界操作を示す操作シーケンスとして「ストレージ接続」「休止」「充電」「撮影前準備」などを検出してもよい。
「ストレージ接続」操作シーケンスは、デバイスで生成したデータが転送され、データを保持しておくストレージに、デバイスが接続されたことを示す操作シーケンスである。例えば、PC又はメディアステーション等のデータ格納装置への接続操作を、「ストレージ接続」操作シーケンスとして検出できる。
「休止」操作シーケンスは、デバイスが使われずに長く放置されていたことを示す操作シーケンスである。例えば、電源OFF操作を行い、所定の時間が経過してから、電源ON操作を行う操作列を、「休止」操作シーケンスとして検出できる。
「充電」操作シーケンスは、デバイスが充電されていたことを示す操作シーケンスである。例えば、デバイスを電源コンセントへ接続し、所定の時間が経過してから、デバイスを電源コンセントから取り外したことを、「充電」操作シーケンスとして検出できる。また、デバイスからバッテリーを取り外し、所定の時間が経過してから、デバイスにバッテリーを装着したことを、「充電」操作シーケンスとして検出してもよい。この場合には、バッテリー残量の変化を考慮して、例えばバッテリー残量が所定値以上増えている場合に、「充電」操作シーケンスを検出してもよい。
「撮影前準備」操作シーケンスは、撮影前の準備が行われていたことを示す操作シーケンスである。例えば、レンズ交換を行い、所定の時間が経過してから、撮影を行ったことを、「撮影前準備」操作シーケンスとして検出することができる。この場合、レンズ交換は撮影前に準備として行われる操作の1つであり、レンズ交換の時刻は撮影時刻とは近くないために、レンズ交換は撮影前の準備であったと判断することができる。
以上の「ストレージ接続」「休止」「充電」「撮影前準備」操作シーケンスは、ユーザが「撮影機会が訪れる」と考えているときには、操作履歴上には出現しにくい。このため、これらの操作シーケンスが出現した際には撮影者の撮影意図は中断していることが示唆される。このように、これらの操作シーケンスは画像グループの境界を示す可能性が高く、境界操作、すなわちグループを分ける手がかりとして扱うことができる。
また、連続操作を示す操作シーケンスとして、「撮影中の設定変更」「短時間での撮影」操作シーケンスなどがある。
「撮影中の設定変更」操作シーケンスは、撮影後に設定を変更してから再度撮影したことを示す操作シーケンスである。例えば、撮影後に、レンズ又はフラッシュ等のオプションパーツを装着し、取り外し、又は交換して、所定時間内に撮影を行ったことを、「撮影中の設定変更」操作シーケンスとして検出することができる。また、撮影後に、フラッシュ使用の有無、ズーム倍率、又はシーンタイプなどの撮影パラメータを変更し、所定時間内に撮影を行ったことを、「撮影中の設定変更」操作シーケンスとして検出してもよい。さらには、撮影後に、セピア化処理、又は魚眼レンズで撮影されたように画像を補正する処理等のエフェクト効果を撮影画像に適用するように設定を行い、所定時間内に撮影を行ったことを、「撮影中の設定変更」操作シーケンスとして検出してもよい。
「短時間での撮影」操作シーケンスは、短い時間内に続けて撮影が行われたことを示す操作シーケンスである。例えば、所定時間の間に行われた複数の撮影操作、又は所定時間以下の間隔で行われた複数の撮影操作を、「短時間での撮影」操作シーケンスとして検出することができる。
「撮影中の設定変更」「短時間での撮影」操作シーケンスは、ユーザが継続して撮影を行っている際に出現することが多い操作シーケンスである。このため、これらの操作シーケンスが検出された時刻付近に画像グループの境界が存在する可能性は低く、連続操作、すなわちグループをまとめるための手掛かりとして扱うことができる。
本実施形態において検出される操作シーケンスとしては、様々なものが考えられ、上述のものに限定されるわけではない。また、上述の操作シーケンスの全てを検出する必要はない。
一実施形態において、操作シーケンスを検出するための予め規定された条件のうちの少なくとも1つは、所定の操作の操作回数を用いて規定される。例えば、上述の「閲覧」操作シーケンスは、「画像表示」操作に基づいて定められる閲覧回数が閾値以上であることを条件として検出される。
一実施形態において、操作シーケンスを検出するための予め規定された条件のうちの少なくとも1つは、操作で扱われる画像の取得時刻(例えば撮影時刻)を用いて規定される。例えば、上述の「加工」操作シーケンスは、「加工画像の保存」操作で扱われる加工画像の撮影時刻と、操作時刻との差が、閾値以上であることを条件として検出される。
一実施形態において、操作シーケンスを検出するための予め規定された条件のうちの少なくとも1つは、操作で扱われる画像の情報を用いて規定される。例えば、上述の「撮り直し」操作シーケンスは、「画像表示」又は「画像削除」操作で扱われる画像が、「撮影」操作で撮影された画像と同じであることを条件として検出され、画像が同じであるか否かは、例えば画像の識別子又は特徴量を用いて判定される。
一実施形態において、操作シーケンスを検出するための予め規定された条件のうちの少なくとも1つは、複数の操作についての操作時刻の差を用いて規定される。例えば、上述の「撮り直し」操作シーケンスは、「撮り直し」操作の時刻と、「画像表示」又は「画像削除」操作の時刻との差が、閾値以内であることを条件として検出される。
一実施形態において、操作シーケンスを検出するための予め規定された条件のうちの少なくとも1つは、操作が行われたデバイスの状態を用いて規定される。例えば、上述の「整理」操作シーケンスは、メディア残量が閾値以上であることを条件として検出される。
一実施形態において、操作シーケンスを検出するための予め規定された条件のうちの少なくとも1つは、所定の操作の操作回数、操作で扱われる画像の取得時刻、及び操作で扱われる画像の情報、のうちの少なくとも1つでありうる。さらなる実施形態において、操作シーケンスを検出するための予め規定された条件は、複数の操作についての操作時刻の差を用いて規定される条件と、操作が行われたデバイスの状態を用いて規定される条件と、のうちの少なくとも1つをさらに含む。これらの情報は、ユーザの操作意図、例えば連続して撮影を行っているのか、又は撮影を中断しているのか、を示唆するものであり、これらを考慮することにより正確な画像クラスタリングが可能となる。
また、一実施形態において、検出される操作シーケンスは、「鑑賞」操作シーケンスのように、画像表示操作を含んでいる。別の実施形態において、検出される操作シーケンスは、「加工」操作シーケンスのように、画像加工操作を含んでいる。さらなる実施形態において、検出される操作シーケンスは、「整理」操作シーケンスのように、画像整理操作を含んでいる。一実施形態において、検出される操作シーケンスは、画像表示操作、画像加工操作、及び画像整理操作のうちの少なくとも1つを含んでいてもよい。これらの操作も、ユーザの操作意図、例えば連続して撮影を行っているのか、又は撮影を中断しているのか、を示唆するものであり、これらを考慮することにより正確な画像クラスタリングが可能となる。
本実施形態においては、検出ルールに従って操作シーケンスを検出する際に、起点位置から先の操作に対して検出ルールを適用した。しかしながら、検出ルールをステートマシンなどにより実現してもよい。この場合、操作履歴中の各操作をステートマシンに入力するごとに、それまでに入力された操作列が検出ルールに一致するか否かを逐次判断するようにしてもよい。
また、本実施形態では、検出ルールを1つずつ選択して、それぞれの検出ルールを操作履歴に対して順次適用した。しかし、ステートマシン等を用いて逐次判断を行う場合には、操作履歴中の各操作をそれぞれの検出ルールに対応するステートマシンに並行して入力することにより、並行して操作シーケンスを検出することができる。検出ルールの間に優先順位等の関係がある場合には、優先度の高い操作シーケンスが検出された時点で、他の検出ルールに従う検出処理を停止させてもよい。
さらに、本実施形態では、1つの検出ルールにより1つの操作シーケンスを検出した。しかしながら、1つの検出ルールにより複数種類の操作シーケンスを検出してもよい。例えば、排他的な関係を有する複数種類の操作シーケンスを、1つの検出ルールによりまとめて検出してもよい。さらには、隠れマルコフモデルなどに従って予め境界操作と連続操作とを学習させ、学習結果に従って境界操作と連続操作を検出してもよい。
以上のように、本実施形態に係る操作シーケンスの検出方法は、様々なものが考えられ、上述のものに限定されるわけではない。
[実施形態2]
実施形態1では、操作履歴を参照して画像のクラスタリングを行った。一方で、画像データの撮影時刻を用いて画像のクラスタリングを行うこともできる。実施形態2においては、画像データの撮影時刻を用いたクラスタリング結果を、操作履歴を参照して補正する。本実施形態によれば、操作履歴又は撮影時刻のみを用いて画像をクラスタリングする場合よりも、より高い精度で画像のクラスタリングを行うことかできる。
実施形態1では、操作履歴を参照して画像のクラスタリングを行った。一方で、画像データの撮影時刻を用いて画像のクラスタリングを行うこともできる。実施形態2においては、画像データの撮影時刻を用いたクラスタリング結果を、操作履歴を参照して補正する。本実施形態によれば、操作履歴又は撮影時刻のみを用いて画像をクラスタリングする場合よりも、より高い精度で画像のクラスタリングを行うことかできる。
本実施形態に係る画像分類装置は、図1に示す実施形態1に係る画像分類装置100と同様である。また、本実施形態に係る画像分類装置の機能構成も、図2に示す実施形態1のものと同様であるが、画像クラスタリング部203の構成が異なる。本実施形態に係る画像クラスタリング部203は、図16に示す構成を有する。具体的には、本実施形態に係る画像クラスタリング部203は、基本クラスタリング部1601と補正部1602とを備える。
基本クラスタリング部1601は、時間に基づいて画像データをクラスタリングする。具体的には、基本クラスタリング部1601は、画像の取得時刻(例えば撮影時刻)に基づいて、画像データをクラスタリングする。例えば、基本クラスタリング部1601は、それぞれの画像データについての撮影間隔を比較し、相対的に大きいと判断される撮影間隔で画像グループが分割されるように、境界を設定することができる。基本クラスタリング部1601により分類された画像グループ群を、以下では基本グループ群と呼び、基本グループ群を構成する各グループを、基本グループと呼ぶ。基本クラスタリング部1601が行う処理の詳細については後述する。
基本クラスタリング部1601によるクラスタリング処理は、時間に基づくものには限られない。例えば、基本クラスタリング部1601は、画像データの撮影位置に基づいてクラスタリングを行ってもよい。この場合、基本クラスタリング部1601は、撮像時にGPS等を用いた位置測定を行う等の方法で画像データに付された位置情報を参照することができる。具体的な一例として、基本クラスタリング部1601は、撮影時刻順に並べた画像データのうち隣接する2つについて、撮影された位置が所定距離以上離れているときに、この2つの画像データが異なるグループへと分けられるように境界を設定することができる。
さらに、基本クラスタリング部1601は、画像の類似性に基づいてクラスタリングを行ってもよい。例えば、テクスチャや色味などの画像の特徴量の類似性に基づいてクラスタリングすることが考えられる。具体的な一例として、基本クラスタリング部1601は、撮影時刻順に並べた画像データのうち隣接する2つについて、特徴量が所定の閾値以上に異なっているときに、この2つの画像データが異なるグループへと分けられるように境界を設定することができる。このように、基本クラスタリング部1601によるクラスタリング方法は、特に限定されず、さまざまな方法を用いることができる。
補正部1602は、検出した操作シーケンスを参照して、基本クラスタリング部1601が設定した基本グループ群を補正する。このようにして、基本クラスタリング部1601による分類結果が修正される。具体的な一例として、補正部1602は、連続操作の操作区間が、2つの異なるグループについての撮影時間帯にまたがるとき、これらのグループを統合することができる。この場合、連続操作に含まれる取得操作(例えば撮影操作)により取得された画像データが、同じグループに含まれるように、グループの統合が行われる。
また、補正部1602は、1つのグループについての撮影時間帯に境界操作が検出された場合、このグループを分割することができる。言い換えれば、境界操作の前後における取得操作(例えば撮影操作)により取得された画像が別のグループに含まれるように、グループの分割が行われる。補正部1602の処理の詳細については後述する。ここで、撮影時間帯とは、グループに含まれる画像データの撮影時刻のうち最も早い撮影時刻から最も遅い撮影時刻までの時間帯を指す。
次に、本実施形態における画像分類処理について、図17(A)を参照して説明する。図17(A)は、本実施形態における画像分類処理のフローチャートを示す。
ステップS1701において、操作シーケンス検出部201は、実施形態1のステップS501と同様に、操作履歴から操作シーケンスを検出する。
ステップS1702において、操作区間決定部202は、ステップS1701で検出された操作シーケンスについての操作区間を決定する。この処理は、実施形態1のステップS502と同様に行われ、操作シーケンスの開始操作の時刻と終了操作の時刻とが、操作区間として決定される。
本実施形態において、操作区間決定部202はさらに、連続操作の操作区間が互いに重なるとき、これを1つの操作シーケンスとして統合する。例えば、2つの連続操作A,Bについて「Aの開始時刻≦Bの開始時刻≦Aの終了時刻≦Bの終了時刻」という関係が満たされた場合、2つの連続操作A,Bを統合することができる。具体的な方法の一例として、操作区間決定部202は、図3(D)に示す操作シーケンスの記録において、操作シーケンスAの終了機器ID及び終了操作Noを、操作シーケンスBの終了機器ID及び終了操作Noで置き換えることができる。また、操作区間決定部202は、操作シーケンスAの終了時刻を、操作シーケンスBの終了時刻で置き換えることができる。さらに、操作区間決定部202は、操作シーケンスBについての記録を無効にする。こうして、短い連続操作を統合して、長い連続操作を作り出すことができる。「Aの開始時刻≦Bの開始時刻≦Bの終了時刻≦Aの終了時刻」である場合、同様に操作シーケンスBについての記録を無効にしてもよい。
ステップS1703において、基本クラスタリング部1601は、画像データをクラスタリングして基本グループ群を得る。ステップS1703における処理の詳細については後述する。
ステップS1704において、補正部1602は、操作シーケンスを参照して、基本グループ群を補正する。図17(B)は、ステップS1704における処理のフローチャートを示す。ステップS1711において、補正部1602は、境界操作を参照して、基本グループ群の分割処理を行う。ステップS1711の処理の詳細については後述する。以下では、ステップS1711により補正して得られたグループ群を分割後グループ群と呼び、分割後グループ群を構成する各グループを分割後グループと呼ぶ。ステップS1712において、補正部1602は、連続操作を参照して、分割後グループ群の統合処理を行う。ステップS1712の処理の詳細についても後述する。以下では、ステップS1712により補正して得られたグループ群を統合後グループ群と呼び、統合後グループ群を構成する各グループを統合後グループと呼ぶ。こうして、本実施形態に係る画像分類処理が終了する。
次に、ステップS1711における分割処理について、図18(A)を参照して説明する。図18(A)は、ステップS1711における処理を示すフローチャートである。ステップS1711の開始時には、既に基本グループ群が作成されている。ここで、それぞれの基本グループには予め番号が付されているものとする。例えば、基本クラスタリング部1601は、それぞれの基本グループの開始時刻、すなわち基本グループに属する最も古い画像データの撮影時刻、が早い順に、各基本グループに連続番号を付すことができる。また、ステップS1711の開始時には、既に操作履歴から操作シーケンスが検出されている。
ステップS1801及びS1809は、それぞれの基本グループ番号について実行されるループ区間を示す。ステップS1801は、ループの開始を示す。1回目のループにおいては、操作シーケンス検出部201は、基本グループ番号を示す変数kを1に初期化する。2回目以降のループにおいては、kが基本グループの数を超えていない場合には処理はステップS1802へ移行する。また、kが基本グループの数を超えている場合にはループが終了し、ステップS1711の処理も終了する。
以下では、変数kによって示される基本グループを基本グループkと呼ぶ。また、基本グループkに含まれるそれぞれの画像データには画像番号が付されているものとする。本実施形態においては、それぞれの画像データの撮影時刻が早い順に、各画像データに連続番号が付されている。以下では、画像番号iが付された画像データを画像データiと呼ぶ。もっとも撮影時刻の早い画像データには画像番号1が付されており、もっとも撮影時刻の遅い画像データに付された画像番号は、基本グループkに含まれる画像データの数に一致する。
ステップS1802において、補正部1602は、基本グループkの先頭画像データを含む「分割後グループ」を作成する。具体的には、補正部1602は、基本グループkに属する画像データのうちもっとも撮影時刻の早い画像データ、すなわち画像データ1を、先頭画像データとして選択する。そして、この先頭画像データを含む「分割後グループ」を、「現在の分割後グループ」として作成する。
ステップS1803及びS1808は、基本グループkに属するそれぞれの画像データについて実行されるループを示す。ステップS1803は、ループの開始を示す。1回目のループにおいては、補正部1602は、画像番号iを2に初期化する。2回目以降のループにおいては、iが基本グループkに含まれる画像データの数を超えていない場合には処理はステップS1804へ移行する。また、iが基本グループkに含まれる画像データの数を超えている場合にはループが終了し、処理はステップS1809に移行する。
ステップS1804において、補正部1602は、画像データi−1の撮影時刻と画像データiの撮影時刻との間で実施された境界操作を選択する。具体的な処理の一例として、補正部1602は、検出された操作シーケンスのうち、境界操作であり、開始時刻が画像データi−1の撮影時刻以後であり、かつ操作区間の終了時刻が画像データiの撮影時刻以前である操作シーケンスを選択する。このような条件を満たす操作シーケンスが存在しない場合には、補正部1602は操作シーケンスを選択しない。
ステップS1805において、補正部1602は、画像データi−1と画像データiとの間での境界の有無を判定する。具体的には、ステップS1804において補正部1602が操作シーケンスを選択した場合には、境界が存在するものと判定される。また、ステップS1804において補正部1602が操作シーケンスを選択しなかった場合には、境界は存在しないものと判定される。境界が存在しない場合、処理はステップS1806へ移る。境界が存在する場合、処理はステップS1807へ移る。
ステップS1806において、補正部1602は、現在の分割後グループに画像データiを追加する。
ステップS1807において、補正部1602は、画像データiを含む新しい分割後グループを、現在の分割後グループとして作成する。
ステップS1808は、ループ区間の終端である。ステップS1808において、補正部1602は、画像番号iに1を加算し、その後処理はステップS1803へ戻る。
ステップS1809は、ループ区間の終端である。ステップS1809において、補正部1602は、基本グループ番号kに1を加算し、その後処理はステップS1801へ戻る。
次に、ステップS1712における統合処理について、図18(B)を参照して説明する。図18(B)は、ステップS1712における処理を示すフローチャートである。ステップS1712の開始時には、既に分割後グループ群が作成されている。また、ステップS1712の開始時には、既に操作履歴から操作シーケンスが検出されている。
ステップS1811において、補正部1602は、先頭の分割後グループの画像データを含む統合後グループを、現在の統合後グループとして作成する。具体的な処理の一例としては、補正部1602は、まず、それぞれの分割後グループについての撮影時刻にしたがって、分割後グループを古い順にソートする。分割後グループについての撮影時刻としては、それぞれの分割後グループに属する画像データのうちもっとも撮影時刻の早い画像データの撮影時刻を用いることができる。そして、補正部1602は、ソート順に、分割後グループのそれぞれに対して1から順に番号を割り当てる。以下では、番号iが付された分割後グループを分割後グループiと呼ぶ。さらに、補正部1602は、分割後グループ1に属する全ての画像データを含む「統合後グループ」を作成する。
ステップS1812及びS1817は、分割後グループiのそれぞれについて実行されるループを示す。ステップS1812は、ループの開始を示す。1回目のループにおいては、補正部1602は、グループ番号iを2に初期化する。2回目以降のループにおいては、iが分割後グループの数を超えていない場合には処理はステップS1813へ移行する。また、iが分割後グループの数を超えている場合にはループが終了し、ステップS1712の処理は終了する。
ステップS1813において、補正部1602は、分割後グループi−1と分割後グループiとをまたぐ連続操作を選択する。ここでは、分割後グループに属する画像データのうち最も撮影時刻が早い画像の撮影時刻を、グループの開始時刻と呼ぶ。一方で、分割後グループに属する画像データのうち最も撮影時刻が遅い画像の撮影時刻を、グループの終了時刻と呼ぶ。本実施形態において、補正部1602は、検出された操作シーケンスのうち、連続操作であり、「開始操作時刻≦分割後グループi−1の終了時刻」であり、かつ「分割後グループiの開始時刻≦終了操作時刻」である操作シーケンスを選択する。このような条件を満たす操作シーケンスが存在しない場合には、補正部1602は操作シーケンスを選択しない。
ステップS1814において、補正部1602は、分割後グループi−1と分割後グループiとを統合するか否かを判定する。具体的には、ステップS1813において補正部1602が操作シーケンスを選択した場合には、統合が行われる。一方で、ステップS1813において補正部1602が操作シーケンスを選択しなかった場合には、統合は行われない。統合を行う場合、処理はステップS1815へ移る。一方で、統合を行わない場合、処理はステップS1816へ移る。
ステップS1815において、補正部1602は、現在の統合後グループに、分割後グループiの画像を追加する。
ステップS1816において、補正部1602は、分割後グループiの画像を含む新しい統合後グループを、現在の統合後グループとして作成する。
ステップS1807は、ループ区間の終端である。ステップS1807において、補正部1602は、グループ番号iに1を加算し、その後処理はステップS1802へ戻る。
本実施形態においては、基本グループ群に対して、まずステップS1711において分割処理を行い、続いてステップS1712において統合処理を行った。しかしながら、分割処理と統合処理の順序は逆であってもよい。また、分割処理と統合処理との双方を行うことは必須ではなく、分割処理及び統合処理のうちの一方が行われてもよい。
ステップS1805においては、所定の条件を満たす境界操作の有無によって、境界を設けるか否かを判定した。しかしながら、実施形態1で説明したように、境界を設けるか否かの判定方法はこの方法に限られない。例えば、実施形態1と同様に、検出された境界操作の数、境界操作の総時間長、又は境界操作の種類等に応じて、境界を設けるか否かを判定してもよい。
同様に、ステップS1814においては、所定の条件を満たす連続操作の有無によって、グループを統合するか否かを判定した。しかしながら、境界を設けるか否かの判定方法はこの方法に限られない。例えば、境界操作の場合と同様に、検出された連続操作の数、又は連続操作の種類等に応じて、グループを統合するか否かを判定してもよい。また、「撮影」操作シーケンスにおいて、撮影の頻度が高い場合には、連続撮影が行われている可能性が高い。さらに、「撮り直し」操作シーケンスにおいて、画像確認後の撮り直しが素早く行われていた場合、実際に撮り直しが行われた可能性が高い。これらの場合には、連続した撮影の意図が継続していた(連続度合いが高い)こと、及びその操作シーケンスの操作区間には画像データ間の境界が存在しないことが示唆される。このように、連続操作の内容を考慮して、グループを統合するか否かを判定してもよい。具体的な一例としては、実施形態1で説明したように、境界が存在する可能性を示すパラメータ値を決定し、このパラメータ値に基づいて境界を設けるか否かを判定することができる。
また、基本グループを作成する際に、画像グループ間の境界についてのさらなる情報、例えば上記のような境界が存在する可能性を考慮してもよい。これにより、より正確性の高いクラスタリングを行えるようになる。
上記では、複数の基本グループ、分割後グループ、及び統合後グループのそれぞれについての撮影時間帯は時間軸上で互いに重なり合わないものとして説明した。しかしながら、例えば、複数の基本グループについての撮影時間帯が時間軸上で互いに重なり合っていてもよい。このような場合、S1813においては、分割後グループi−1と分割後グループiとの間で重なり合う撮影時間帯に、操作区間が含まれるような連続操作を選択してもよい。このように、複数の基本グループについての撮影時間帯が時間軸上で互いに重なり合っている場合であっても、グループを統合することが可能となる。
次に、ステップS1703におけるクラスタリング処理について、図21(A)を参照して説明する。図21は、ステップS1703における処理の詳細を示すフローチャートである。ステップS1703において基本クラスタリング部1601は、与えられたクラスタリング対象をグループに分ける。本実施形態において、クラスタリング対象は画像データ群である。
本実施形態において、基本クラスタリング部1601は、階層的にグループを構築する。具体的には、基本クラスタリング部1601は、与えられた画像データ群をグループへと分類し、得られたグループをさらに大きいグループへと分類する。このようにクラスタリングを繰り返すことにより、階層的にグループを構築する。本実施形態において、基本クラスタリング部1601は、指定された数の階層を構築するものとする。この指定された数は、ユーザ入力等に応じて適宜決定できるが、本実施形態においては予め定数として決定されており、基本クラスタリング部1601が保持しているものとする。また、基本クラスタリング部1601は、指定された階層におけるグループ分けを示す情報を出力するものとする。
ステップS2101において、基本クラスタリング部1601は、クラスタリング対象をソートする。本実施形態において、基本クラスタリング部1601は、クラスタリング対象に関連する時刻に従ってクラスタリング対象をソートする。本実施形態においてクラスタリング対象は画像データであり、基本クラスタリング部1601は、画像データの撮影時刻に従って、画像データをソートする。本実施形態において、基本クラスタリング部1601は、画像データを昇順にソートする。
基本クラスタリング部1601は、画像データのグループをクラスタリング対象としてもよい。この場合、クラスタリング対象である画像データのグループは、始端時刻と終端時刻とを持つ。この場合、グループに属する画像データの撮影時刻のうち最も早い撮像時刻がグループの始端時刻であり、グループに属する画像データの撮影時刻のうち最も遅い撮像時刻がグループの終端時刻でありうる。この場合、基本クラスタリング部1601は、グループの始端時刻に従って、昇順にグループをソートすることができる。
クラスタリング対象が画像データである場合について、画像データについての始端時刻及び終端時刻を定義することもでき、この場合始端時刻及び終端時刻は画像データの撮影時刻に一致しうる。こうして、クラスタリング対象が画像データである場合と、クラスタリング対象が画像グループである場合とについて、同様の処理によりクラスタリングを行うことができる。また、クラスタリング対象であるグループのうち2以上について、始端時刻と終端時刻との間の区間が重なる場合には、1つのグループとして扱ってもよい。
ステップS2102及びS2106は、それぞれの階層について実行されるループ区間を示す。ステップS2102は、ループの開始を示す。1回目のループにおいては、基本クラスタリング部1601は、階層番号を示す変数iを1に初期化する。2回目以降のループにおいては、iが指定された階層数を超えていない場合には処理はステップS2103へ移行し、iが指定された階層数を超えている場合にはループが終了し、処理はステップS2107に進む。
ステップS2103では、それぞれのクラスタリング対象をグループにまとめる。本実施形態においては、基本クラスタリング部1601は、1回目のループ(i=1)においては、クラスタリング対象となる画像データの全てを1グループにまとめる。2回目以降のループ(i≧2)においては、基本クラスタリング部1601は、直前のステップS2105で設定されたクラスタリング対象(画像グループ)を、1つのより大きなグループにまとめる。
ステップS2104において、基本クラスタリング部1601は、ステップS2103で得られたグループに対して分割処理を適用する。この処理によって、S2103で得られたグループが、いくつかのサブグループへと分割される。この結果、1回目のループ(i=1)においては、画像データがいくつかのグループへとまとめられる。また、2回目以降のループ(i≧2)においては、直前のループで決定された複数のグループが、より少ない数のグループへとまとめられる。ステップS2104の処理の詳細については後述する。
ステップS2105において、基本クラスタリング部1601は、S2104で得られたサブグループのそれぞれを、新たなクラスタリング対象として決定する。
ステップS2106は、ループ区間の終端である。ステップS2106において、基本クラスタリング部1601は、階層番号を示す変数iに1を加算し、その後処理はステップS2102へ戻る。
ステップS2107において、基本クラスタリング部1601は、グループ分けの結果を出力する。結果の表現形式は特に限定されず、例えば、実施形態1においてクラスタリング処理の結果として出力される情報の表現形式と同様でありうる。具体的な一例としては、直前のステップS2105で決定されたクラスタリング対象(画像データ群)のそれぞれについて、これに含まれる画像データを識別する情報を出力することができる。ここで、出力される情報は、指定された階層に対応するグループ分けを示す。
次に、ステップS2104における処理の詳細について、図21(B)を参照して説明する。図21(B)は、ステップS2104の処理のフローチャートである。ステップS2104の処理は、それぞれのグループに対して行われる。以下では、1つのグループに対する処理について説明する。ステップS2104においては、1つのグループに対して再帰的な分割処理を行う。
ステップS2111において、基本クラスタリング部1601は、グループ内の「分割の候補位置」を選出する。具体的には、グループに含まれるクラスタリング対象の最大の間隔を特定し、特定された間隔の位置を分割の候補位置とする。本実施形態において、クラスタリング対象の間隔とは、クラスタリング対象をステップS2101のようにソートした場合における、1つのクラスタリング対象についての終端時刻と、これに後続するクラスタリング対象についての始端時刻と、の間隔である。より具体的には、クラスタリング対象が画像データである場合には、ソートした場合に互いに隣接する画像データ間の撮像時刻の間隔である。また、クラスタリング対象が画像グループである場合には、ソートした場合に互いに隣接する画像グループについて、先行するグループについての終端時刻と、後続するグループについての始端時刻と、の間隔である。以下では、クラスタリング対象のことを要素と呼ぶことがある。
ステップS2112において、基本クラスタリング部1601は、候補位置に境界があるか否かを判定する。境界がある場合、処理はステップS2113へ移る。境界が無い場合には、1つのグループについての分割処理が終了する。
本実施形態においては、候補位置に境界があるか否かは、以下のように判定される。すなわち、グループに属するデータ間隔は一定の確率的傾向を持つと考え、グループに確率モデルを割り当てる。そして、候補位置でグループを分割する場合に、分割前のグループに対するモデル割り当てと、分割後各グループに対するモデル割り当てと、のどちらが良好であるかを判断する。判断基準としては、例えば、BIC(ベイズ情報基準量)を用いることができる。すなわち、分割前のBICと分割後のBICとの差分から、分割によってモデル当てはめが改善されるか否かが判断される。分割前のBICと分割後のBICとの差分は、次式(1)に示す通りに定義できる。本実施形態においては、式(1)により得られる値が正である場合、基本クラスタリング部1601は、候補位置に境界があると判断する。別の実施形態において、基本クラスタリング部1601は、式(1)により得られる値が一定の閾値以上である場合に、候補位置に境界があると判断してもよい。
式(1)において、Sは分割前のグループを、S1及びS2は候補位置における分割後のグループのそれぞれを表す。また、Nは、クラスタリング対象の間隔の数であり、すなわち、S2104で処理される1つのグループに含まれる要素(例えば画像データ又は画像グループ)の数から1を減算して得られる値である。さらに、L(S)はグループSに対応する対数尤度を表す。具体的には、L(S)は次式(2)に示す通りに定義される。
式(2)において、ZsはグループSを構成する要素の間隔の列を示す。また、Zs(i)はグループSを構成する要素の間隔の列における、i番目の間隔を示す。length(Zs)は、グループSを構成する要素の間隔の数を示す。rは、グループSを構成する要素の間隔の平均の逆数である。
L(S)は、グループに含まれる要素の数が0であるときは、1であるものと定義する。また、要素の間隔に0が含まれることを防ぐことにより計算における不都合を防ぐために、間隔に微小な値(例えば1)を加算してから、L(S)の計算を行ってもよい。
ステップS2113において、基本クラスタリング部1601は、候補位置においてグループを分割する。以下では、分割により得られたグループをグループ1及びグループ2と呼ぶ。ステップS2114において、基本クラスタリング部1601は、グループ1に対してステップS2104の処理を再帰的に適用することにより、グループ1をさらに分割する。ステップS2115において、基本クラスタリング部1601は、グループ1に対してステップS2104の処理を再帰的に適用することにより、グループ2をさらに分割する。
本実施形態によれば、基本クラスタリングにより過分割又は分割不足が起こる場合であっても、操作シーケンスによって示唆される操作時の意図に従って、クラスタリングが補正される。特に、撮影間隔の相対的な比較によりクラスタリングを行う場合、撮影間隔が十分な相対的な差を有しないとき、過分割又は分割不足が起こりえる。このような場合でも、イベントの境界又は操作の連続等を示す操作シーケンスに従って、基本クラスタリングを補正することで、精度よくクラスタリングを行うことができる。
[実施形態3]
実施形態2では、操作履歴のすべての部分から操作シーケンスを検出した。しかしながら、例えば上述の基本クラスタリング処理のような仮のクラスタリングが行われており、仮のクラスタリングを補正する場合、操作履歴のすべての部分から操作シーケンスを検出しなくてもよいことがある。例えば、仮のクラスタリングで決定された各グループについての撮影時間帯から外れた時刻に行われた境界操作は、補正のために使用しなくてもよい。なぜならば、境界操作は、仮のクラスタリングで決定されたグループを分割するために用いられるからである。また、仮のクラスタリングで決定されたグループについての撮影時間帯において行われた連続操作も、補正のために使用しなくてもよい。なぜならば、連続操作は仮のクラスタリングで決定されたグループを統合するために用いられるためである。したがって、これらの境界操作及び連続操作は検出しなくてもよい。このため、操作履歴のうち検出対象となる部分を示す検出区間に応じて、検出対象となる操作シーケンスを限定してもよく、この方法によれば処理を効率化できる。本実施形態では、検出区間を決定し、検出区間内の操作履歴から操作シーケンスを検出する。
実施形態2では、操作履歴のすべての部分から操作シーケンスを検出した。しかしながら、例えば上述の基本クラスタリング処理のような仮のクラスタリングが行われており、仮のクラスタリングを補正する場合、操作履歴のすべての部分から操作シーケンスを検出しなくてもよいことがある。例えば、仮のクラスタリングで決定された各グループについての撮影時間帯から外れた時刻に行われた境界操作は、補正のために使用しなくてもよい。なぜならば、境界操作は、仮のクラスタリングで決定されたグループを分割するために用いられるからである。また、仮のクラスタリングで決定されたグループについての撮影時間帯において行われた連続操作も、補正のために使用しなくてもよい。なぜならば、連続操作は仮のクラスタリングで決定されたグループを統合するために用いられるためである。したがって、これらの境界操作及び連続操作は検出しなくてもよい。このため、操作履歴のうち検出対象となる部分を示す検出区間に応じて、検出対象となる操作シーケンスを限定してもよく、この方法によれば処理を効率化できる。本実施形態では、検出区間を決定し、検出区間内の操作履歴から操作シーケンスを検出する。
実施形態3に係る画像分類装置の構成について、図19(A)を参照して説明する。図19(A)は、本実施形態に係る画像分類装置の機能的構成を示すブロック図である。本実施形態に係る画像分類装置は、図16に示す、実施形態2に係る画像分類装置と類似しているが、さらに検出区間決定部1901を有し、また操作シーケンス検出部201の処理が異なる。以下では、実施形態2と同様の構成については説明を省略する。
検出区間決定部1901は、基本クラスタリング部1601によって決定された基本グループを参照して、操作シーケンスを検出する検出区間を決定する。検出区間とは、操作履歴のうち、操作シーケンスの検出が行われる範囲を示す。本実施形態においては、検出区間は時区間であり、開始時刻と終了時刻によって特定される。しかしながら、検出区間の表現方法はこの方法に限定されない。例えば、操作履歴の一部分を特定する他の方法により、検出区間を表現してもよい。具体的な一例としては、操作履歴を構成する各操作に付された連続番号を用いて、検出区間に含まれる最初の操作と最後の操作とを特定してもよい。
本実施形態においては、「境界操作の検出区間」と「連続操作の検出区間」の2種類の検出区間が用いられ、検出区間決定部1901はそれぞれの検出区間を決定する。各々の検出区間の決定方法については後述する。
操作シーケンス検出部201は、検出区間決定部1901が決定した検出区間において、操作履歴から操作シーケンスを検出する。特に、操作シーケンス検出部201は、境界操作の検出区間においては、境界操作を検出する。一方で、操作シーケンス検出部201は、連続操作の検出区間においては、連続操作を検出する。詳細な処理については後述する。
次に、本実施形態に係る画像分類処理について、図19(B)を参照して説明する。図19(B)は、本実施形態に係る画像分類処理のフローチャートである。
ステップS1901において、基本クラスタリング部1601は、実施形態2のステップS1703と同様に、基本クラスタリング処理を行う。
ステップS1902において、検出区間決定部1901は、境界操作の検出区間を決定する。具体的には、本実施形態においては、S1901で決定されたそれぞれの基本グループについての時間帯が、境界操作の検出区間として用いられる。各基本グループについての時間帯とは、基本グループに属する画像データの撮影時刻のうち、最も早い撮影時刻(始端時刻)から最も遅い撮影時刻(終端時刻)までを指す。各基本グループについての境界操作の検出区間に対応する操作履歴上の操作列には、基本グループに属するそれぞれの画像データを取得した取得操作(例えば撮影操作)が含まれる。
ステップS1903において、検出区間決定部1901は、連続操作の検出区間を決定する。本実施形態においては、ステップS1901で決定されたそれぞれの基本グループについての時間帯を参照して、連続操作の検出区間が決定される。具体的には、連続する2つの基本グループについての時間帯に挟まれた時区間を含むように、連続操作の検出区間が決定される。具体的な一例として、連続する2つの基本グループA及びBがあり、基本グループAの時間帯は基本グループBの時間帯より前であるものとする。この場合には、検出区間は、「Aの終端時刻からBの始端時刻まで」を含むように決定される。すなわち、連続操作の検出区間は、一方の基本グループAに含まれる最も遅く取得された画像の取得時刻から、後続する他方の基本グループBに含まれる最も早く取得された画像の取得時刻まで、を含む。
本実施形態においては、検出区間は、「Aの終端時刻からBの始端時刻まで」付近、例えば「Aの終端時刻から第1の所定時間前の時刻から、Bの始端時刻から第2の所定時間後の時刻まで」とする。検出区間を「第1の所定時間」又は「第2の所定時間」だけ広げることにより、2つの基本グループをまたいでいる連続操作をより確実に検出することができる。
ステップS1902及びステップS1903で検出されたそれぞれの検出区間には、検出区間を識別する検出区間番号が付される。本実施形態においては、検出区間がN区間ある場合には、1番からN番までの検出区間番号が用いられる。それぞれの検出区間についての時区間は重複していてもよい。
ステップS1904及びステップS1908は、それぞれの検出区間についてのループ区間を示す。ステップS1904は、ループの開始を示す。1回目のループにおいては、操作シーケンス検出部201は、検出区間番号iを1に初期化する。2回目以降のループにおいては、iが検出区間の数を超えていない場合には処理はステップS1905へ移行する。また、iが検出区間の数を超えている場合にはループが終了し、処理はステップS1909へ移行する。以下では、検出区間番号iが割り当てられた検出区間を、検出区間iと呼ぶ。
ステップS1905において、操作シーケンス検出部201は、検出区間iにおける操作列を、操作履歴から抽出する。具体的には、検出区間は時区間によって特定されているため、この時区間内に行われた操作についての操作列を、操作履歴から抽出する。
ステップS1906において、操作シーケンス検出部201は、検出区間iの種類に応じて、使用する検出ルールを抽出する。具体的には、検出区間iが「連続操作の検出区間」である場合には、予め保持されている図4に示すような検出ルールリストから、連続操作として分類されている検出ルールを抽出する。一方で、検出区間iが「境界操作の検出区間」である場合には、境界操作として分類されている検出ルールを抽出する。
ステップS1907において、操作シーケンス検出部201は、ステップS1905で抽出した操作列から、ステップS1906で抽出した検出ルールに従って、操作シーケンスを検出する。ステップS1907における処理は、抽出の対象となる操作履歴中の操作列と、用いられる検出ルールとが限定されることを除き、図6に示すステップS501の処理と同様であり、説明は省略する。
ステップS1908は、ループ区間の終端である。ステップS1908において、操作シーケンス検出部201は、検出区間番号iに1を加算し、その後処理はステップS1904へ戻る。
ステップS1909において、操作シーケンス検出部201は、操作シーケンスの操作区間を決定し、連続操作を統合する。この処理は、図17(A)のステップS1702の処理と同様であり、説明は省略する。
ステップS1910において、補正部1602は、操作シーケンスを用いて基本グループを分割あるいは統合する。この処理は、図17(B)のステップS1704の処理と同様であり、説明は省略する。
以上説明した方法によれば、操作履歴に対する、「境界操作の検出区間」と「連続操作の検出区間」の2種類の検出区間が設定される。こうして、検出処理の効率化が図られる。以上の方法に加えて、又はこの方法に代えて、誤ったグループ分割を行う可能性が高い部分のみから操作シーケンスを検出することもでき、この方法によっても検出処理を効率化できる。
例えば、ステップS1902においては、それぞれの基本グループについての時区間を、「境界操作の検出区間」として用いた。しかしながら、「境界操作の検出区間」の決定方法はこの方法に限られない。例えば、基本グループについての時区間のうち、より境界が存在する可能性が高い区間を選択し、「境界操作の検出区間」として用いてもよい。具体的な一例としては、基本グループに含まれる画像データから、撮影間隔が閾値以上である連続する2つの画像データを選択し、この2つの画像データの撮影時刻の間を、境界操作の検出区間として選択してもよい。それぞれの基本グループのうち、始端時刻と終端時刻との間の時間が長い基本グループ、または撮影間隔が閾値以上である連続する2つの画像データを含む基本グループを選択し、この基本グループについての時区間を境界操作の検出区間として用いてもよい。
さらに、基本クラスタリングにおける誤りの可能性に着目して、「境界操作の検出区間」を決定してもよい。実施形態2で説明した時間に基づく基本クラスタリングにおいては、撮影間隔の相対的な比較によってグループ境界を決定した。このため、複数の撮影間隔についての相対的な変化が小さい場合には、絶対的には大きい撮影間隔であっても、グループ境界とは判定されないことがある。そこで、「基本グループ内の各画像データについての撮影間隔の平均は閾値以上であるが、撮影間隔の分散は閾値以下である」ような基本グループを選択し、この基本グループについての時区間を境界操作の検出区間として用いてもよい。このようにして、境界操作の検出区間をさらに絞り込むことができる。
また、ステップS1903においては、連続する2つの基本グループについての時間帯に挟まれた時区間付近を、「連続操作の検出区間」として用いた。しかしながら、「連続操作の検出区間」の決定方法はこの方法に限られない。例えば、より境界が存在しない可能性、すなわち連続した操作が意図されている可能性が高い区間を選択し、「連続操作の検出区間」として用いてもよい。具体的な一例としては、例えば、連続する基本グループについての時間帯に挟まれた時区間のうち、長さが閾値以下である時区間を選択し、この時区間を含むように、「連続操作の検出区間」を決定してもよい。このようにして、連続操作の検出区間をさらに絞り込むことができる。
以上説明した実施形態3によれば、検出区間を限定することによって、操作シーケンスの検出処理を効率的に行えるようになる。
[実施形態4]
実施形態2では、時間に基づく基本クラスタリングを行って基本グループを生成し、その後操作履歴から検出された操作シーケンスに従って基本グループを補正した。実施形態4では、まず操作履歴に従って画像データをクラスタリングし、その結果に対して基本クラスタリングを行う。
実施形態2では、時間に基づく基本クラスタリングを行って基本グループを生成し、その後操作履歴から検出された操作シーケンスに従って基本グループを補正した。実施形態4では、まず操作履歴に従って画像データをクラスタリングし、その結果に対して基本クラスタリングを行う。
実施形態4に係る画像分類装置の構成について説明する。本実施形態に係る画像分類装置は、実施形態1に係る画像分類装置と同様の構成を有するが、画像クラスタリング部203の構成が異なる。以下では、画像クラスタリング部203について図20(A)を参照して説明し、その他の構成については説明を省略する。
本実施形態において、画像クラスタリング部203は、操作クラスタリング部2001と基本クラスタリング部2002とを備える。
操作クラスタリング部2001は、操作シーケンスに従って、画像データをクラスタリングする。具体的には、操作クラスタリング部2001は、まず検出された境界操作に従って画像データを複数のグループに分割する。この処理によって得られたそれぞれのグループを、以下では境界操作グループと呼ぶ。さらに、操作クラスタリング部2001は、検出された連続操作に従って、それぞれの境界操作グループ内の画像データをグループ化する。この処理によって得られたグループを、以下では連続操作グループと呼ぶ。この処理によって、境界操作グループ内に連続操作グループが作成される。以下では、これらの連続操作グループ及び境界操作グループを合わせて操作グループと呼ぶ。
基本クラスタリング部2002は、境界操作グループと連続操作グループとを参照して、時間に基づく基本クラスタリングを行う。具体的には、基本クラスタリング部2002は、操作クラスタリング部2001により決定された境界操作グループのそれぞれについて、時間に基づく基本クラスタリングを行う。この際、基本クラスタリング部2002は、連続操作グループに含まれる画像データが同じグループに入るように、クラスタリングを行う。
次に、本実施形態における画像分類処理について、図20(B)を参照して説明する。図20(B)は、本実施形態における画像分類処理のフローチャートを示す。
ステップS2001において、操作シーケンス検出部201は、実施形態1のステップS501と同様に、操作履歴から操作シーケンスを検出する。ステップS2002において、操作区間決定部202は、実施形態2のステップS1702と同様に、操作シーケンスについての操作区間を決定し、連続操作を統合する。ステップS2003において、操作クラスタリング部2001は、実施形態1のステップS503と同様に、境界操作を参照してクラスタリング処理を行う。画像クラスタリング部203はさらに、この処理により得られた境界操作グループのそれぞれに番号を割り当てる。
ステップS2004及びS2007は、それぞれの境界操作グループについて実行されるループ区間を示す。ステップS2004は、ループの開始を示す。1回目のループにおいては、基本クラスタリング部2002は、境界操作グループ番号を示す変数iを1に初期化する。2回目以降のループにおいては、iが境界操作グループの数を超えていない場合には処理はステップS2005へ移行する。また、iが境界操作グループの数を超えている場合にはループが終了し、本実施形態に係る画像分類処理も終了する。以下では、変数iによって示される境界操作グループを境界操作グループiと呼ぶ。
ステップS2005において基本クラスタリング部2002は、境界操作グループi内に、連続操作グループを作成する。具体的には、基本クラスタリング部2002は、検出された連続操作を参照して、連続操作の操作区間に撮影時刻が含まれる画像データ群を1つの連続操作グループにまとめる。いずれの連続操作グループにも入らない画像データは、それぞれが1つの画像データで構成される連続操作グループを形成する。
ステップS2006において基本クラスタリング部2002は、境界操作グループiに含まれる連続操作グループのそれぞれをクラスタリング対象として、実施形態2のステップS2104と同様に、時間に基づく基本クラスタリングを行う。すなわち、境界操作グループiに含まれる連続操作グループのそれぞれが、1以上の連続操作グループにより構成されるグループのいずれかへと分類される。この場合、連続操作に含まれる取得操作(例えば撮影操作)により取得された画像データが、同じグループに含まれるように、分類は行われる。ここで、連続操作グループの始端時刻及び終端時刻は、連続操作グループに含まれる画像データのうち最も早く撮影された画像データの撮影時刻、及び最も遅く撮影された画像データの撮影時刻である。したがって、2つの連続操作グループA及びBがあり、時間軸において連続操作グループAが連続操作グループBより前に存在するときこの2つのグループの間隔は、「連続操作グループBの始端時刻から連続操作グループAの終端時刻を引いたもの」となる。
ステップS2007は、境界操作グループについてのループ区間の終端である。ステップS2007において、基本クラスタリング部2002は、変数iに1を加算し、その後処理はステップS2004へ戻る。
本実施形態においては、連続操作グループの始端時刻及び終端時刻は、連続操作グループに含まれる画像データのうち最も早く撮影された画像データの撮影時刻、及び最も遅く撮影された画像データの撮影時刻とした。しかしながら、連続操作グループの始端時刻と終端時刻との少なくとも一方を、この連続操作グループを形成するために用いられた連続操作を参照して決定してもよい。例えば、連続操作グループを形成するために用いられた連続操作についての操作区間、すなわち開始操作の時刻及び終了操作までの時刻を、連続操作グループの始端時刻及び終端時刻として用いてもよい。
画像の撮影前には、「電源をONにし、フラッシュの設定を決め、及び焦点距離を決める」ような、撮影に関連する操作が行われることがある。したがって、連続する画像データの撮影時刻の間隔には、このような操作時間も含まれることがある。これらの撮影に関連する操作を連続操作の一部として検出する場合、連続操作についての操作区間に従って連続操作グループの始端時刻と終端時刻とを決定すると、連続操作グループの間隔からはこのような操作時間が除かれる。このような操作時間を含まない連続操作グループの間隔は、撮影者が撮影に集中していない時間により密接に関連するものであり、より本質的な撮影間隔の情報であるといえる。したがって、このように連続操作についての操作区間に従って連続操作グループの始端時刻及び終端時刻を決定することにより、クラスタリングの精度を向上できる。
本実施形態によれば、「時間に基づくクラスタリング処理」を適用する前に、画像データが境界操作グループへとグループ分けされ、それぞれの境界操作グループに対してクラスタリング処理が行われる。それぞれのグループを構成する要素の数は、グループ分け前よりも少ないために、クラスタリング処理をより効率的に行うことが可能となる。また、処理の並列化も可能となる。さらに、本実施形態によれば、「時間に基づくクラスタリング処理」を適用する前に、画像データが連続操作グループへとグループ分けされ、連続操作グループについてクラスタリング処理が行われる。要素の数がグループ分けにより減少するために、クラスタリング処理をより効率的に行うことが可能となる。
本実施形態においては、境界操作に従うグループ分けと連続操作に従うグループ分けとの双方が行われたが、どちらか一方のみを行うことによっても、クラスタリング処理の効率化という効果を得ることができる。
[実施形態5]
本実施形態では、操作履歴が、複数の異なるデバイスにおける操作を含む場合について説明する。例えば、カメラとスマートフォンとをユーザが所有している場合、ユーザはカメラで撮影及び観賞等を行う一方で、スマートフォンでも撮影及び鑑賞等を行うことができる。このように各々のデバイスで行われた操作を操作履歴が含んでいる場合、操作履歴から機器IDが同一である操作を抽出してから、実施形態1で説明したように検出ルールを適用することができる。このようにして、各々のデバイスで行われた操作についての操作シーケンスを検出することができる。別の方法として、各々のデバイスにおける操作を含む操作履歴から検出ルールに従って操作シーケンスを検出する際に、開始操作についての機器IDと同一の機器IDを有する操作にのみ着目して、操作シーケンスの検出を行ってもよい。
本実施形態では、操作履歴が、複数の異なるデバイスにおける操作を含む場合について説明する。例えば、カメラとスマートフォンとをユーザが所有している場合、ユーザはカメラで撮影及び観賞等を行う一方で、スマートフォンでも撮影及び鑑賞等を行うことができる。このように各々のデバイスで行われた操作を操作履歴が含んでいる場合、操作履歴から機器IDが同一である操作を抽出してから、実施形態1で説明したように検出ルールを適用することができる。このようにして、各々のデバイスで行われた操作についての操作シーケンスを検出することができる。別の方法として、各々のデバイスにおける操作を含む操作履歴から検出ルールに従って操作シーケンスを検出する際に、開始操作についての機器IDと同一の機器IDを有する操作にのみ着目して、操作シーケンスの検出を行ってもよい。
各々のデバイスで行われた操作についての操作シーケンスを総合して、画像の分類を行うこともできる。例えば、スマートフォンでの操作列から検出した「鑑賞」操作シーケンス(境界操作)を用いて、すなわちスマートフォンで「観賞」を行っていたことに基づいて、カメラで撮影した画像データの分類を行うこともできる。
また、複数のデバイスにわたる操作シーケンスを検出してもよい。例えば、カメラで撮影を行い、その画像をスマートフォンに転送し、スマートフォンで画像加工を行い、そしてWebへアップロードすることがある。このような操作列を、操作シーケンスとして検出してもよい。この場合、検出ルールにおいて、操作シーケンスを構成するそれぞれの操作がどのデバイスにおける操作であるのかが特定されていてもよい。このような構成は、例えば、操作シーケンスを構成するそれぞれの操作を検出する際に、操作名と機器IDとの双方が検出ルールに従うか否かを判定することにより実現できる。
また、機器IDの代わりに、「デバイスの種別」を示す情報を検出条件として用いて、操作シーケンスを検出してもよい。デバイスの種別としては、例えば、カメラ及びスマートフォン等が挙げられる。例えば、カメラにおける「転送」操作の後に、スマートフォンにおける「画像加工」操作を行う操作シーケンスが検出されてもよい。このような場合に、カメラから画像が転送されたスマートフォンにおいて画像加工が行われていることを確認するために、操作履歴において、「転送」操作についての記録に関連付けて「転送先機器ID」を保持しておいてもよい。このような構成により、機器横断的な操作シーケンスを検出することができる。
電子機器、例えばスマートフォンでは、デバイス上で様々なアプリケーションが動作することがある。このような場合、アプリケーションの識別子を、機器IDとして用いてもよい。これによって、アプリケーションごとに操作履歴を区別することができる。
また、スマートフォン上で「観賞」操作を行いながら、カメラで「撮影」操作を行うことがある。例えば、スマートフォン上に表示した画像の構図を参考に、カメラでの撮影を行うことがある。このような場合に、スマートフォン上での「観賞」操作シーケンス(境界操作)をもとに画像データを分割すると、連続して撮影された画像データ群が分割され、意図に反した結果となる可能性がある。そこで、カメラの動作状態に関する条件が検出ルールに加えられてもよい。例えば、カメラの動作状態が電源ON状態である場合には、スマートフォン上での「観賞」操作シーケンスを検出しないように、検出ルールを設定してもよい。このように、操作が行われたデバイスとは異なるデバイスの状態に関する条件を含むように、検出ルールを構成してもよい。
本実施形態によれば、操作履歴が複数のデバイスについての操作を含む場合においても、操作シーケンスを検出することができ、検出した操作シーケンスを用いてクラスタリング処理を行うことができる。
[実施形態6]
上述の各実施形態においては、画像データは主に写真等の静止画像であるものとして説明した。しかしながら、画像データが動画等であってもよい。この場合は、動画等についての開始撮影時刻と終了撮影時刻とによって規定される時区間に従って、操作シーケンスの検出及びクラスタリング処理等を行うことができる。例えば、動画同士の間隔は、一方の動画の終了撮影時刻と、これに後続する動画の開始撮影時刻との差として算出することができる。また、画像データ間の操作シーケンスを検出する際にも、同様に、一方の動画の終了撮影時刻と、これに後続する動画の開始撮影時刻と、の間から操作シーケンスを検出することができる。以上のように、上述の各実施形態は、静止画像だけでなく動画等にも適用可能である。
上述の各実施形態においては、画像データは主に写真等の静止画像であるものとして説明した。しかしながら、画像データが動画等であってもよい。この場合は、動画等についての開始撮影時刻と終了撮影時刻とによって規定される時区間に従って、操作シーケンスの検出及びクラスタリング処理等を行うことができる。例えば、動画同士の間隔は、一方の動画の終了撮影時刻と、これに後続する動画の開始撮影時刻との差として算出することができる。また、画像データ間の操作シーケンスを検出する際にも、同様に、一方の動画の終了撮影時刻と、これに後続する動画の開始撮影時刻と、の間から操作シーケンスを検出することができる。以上のように、上述の各実施形態は、静止画像だけでなく動画等にも適用可能である。
(他の実施形態)
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
Claims (21)
- 画像の取得操作を含む、デバイスにおける複数の操作についての履歴を示す操作履歴を取得する取得手段と、
前記操作履歴から、1以上の予め規定された条件のいずれかに適合する、続けて行われる操作のシーケンスを検出する検出手段と、
前記検出されたシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、又は前記検出されたシーケンスの前後の取得操作により取得された画像が別のグループに含まれるように、複数の前記取得操作により前記デバイスで取得された複数の画像を分類する分類手段と、
を備える画像分類装置であって、
前記予め規定された条件のうちの少なくとも1つは、
所定の操作の操作回数、
操作で扱われる画像の取得時刻、及び
操作で扱われる画像の情報、
のうちの少なくとも1つを用いて規定されることを特徴とする、画像分類装置。 - 前記予め規定された条件が、
複数の操作についての操作時刻の差を用いて規定される条件と、
操作が行われたデバイスの状態を用いて規定される条件と、
のうちの少なくとも1つをさらに含むことを特徴とする、請求項1に記載の画像分類装置。 - 前記操作履歴は、複数のデバイスにおける操作履歴を含むことを特徴とする、請求項1又は2に記載の画像分類装置。
- 前記予め規定された条件が、操作が行われたデバイスとは異なるデバイスの状態を用いて規定される条件をさらに含むことを特徴とする、請求項3に記載の画像分類装置。
- 前記検出手段は、前記予め規定された条件に含まれる第1の種類の条件のいずれかに適合する第1の種類の操作のシーケンスと、前記予め規定された条件に含まれる第2の種類の条件のいずれかに適合する第2の種類の操作のシーケンスと、を検出し、
前記分類手段は、前記第1の種類の操作のシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、及び前記第2の種類の操作のシーケンスの前後の取得操作により取得された画像が別のグループに含まれるように、前記複数の取得操作により取得された複数の画像を分類する
ことを特徴とする、請求項1乃至4の何れか1項に記載の画像分類装置。 - 前記分類手段は、
前記複数の取得操作により取得された複数の画像を複数のグループへと分類する第1の分類手段と、
前記第1の種類の操作のシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、及び前記第2の種類の操作のシーケンスの前後の取得操作により取得された画像が別のグループに含まれるように、前記第1の分類手段による分類結果を修正する第2の分類手段と、
を備えることを特徴とする、請求項5に記載の画像分類装置。 - 前記検出手段は、前記第1の分類手段によって決定された前記複数のグループのそれぞれについて、前記グループに含まれるそれぞれの画像を取得した取得操作を含む操作列を前記操作履歴から選択し、該選択された操作列から前記第2の種類の操作のシーケンスを検出することを特徴とする、請求項6に記載の画像分類装置。
- 前記検出手段は、前記第1の分類手段によって決定された前記複数のグループのうち画像の取得時刻に関して隣接する2つの前記グループについて、一方のグループに含まれる最も遅く取得された画像の取得時刻から第1の所定時間前と、該一方のグループに後続する他方のグループに含まれる最も早く取得された画像の取得時刻から第2の所定時間後と、の間に行われた操作列を前記操作履歴から選択し、該選択された操作列から前記第1の種類の操作のシーケンスを検出することを特徴とする、請求項6又は7に記載の画像分類装置。
- 前記分類手段は、
前記第2の種類の操作のシーケンスの前後の取得操作により取得された画像が別のグループに含まれるように、前記複数の取得操作により取得された複数の画像を分類する第2の分類手段と、
前記第2の分類手段によって決定された前記複数のグループのそれぞれについて、前記第1の種類の操作のシーケンスが行われている時に取得された画像が同じ分類に含まれるように、該グループに含まれる画像をさらに分類する第1の分類手段と、
を備えることを特徴とする、請求項5に記載の画像分類装置。 - 前記第1の分類手段は、画像の取得時刻に従って分類を行うことを特徴とする、請求項6乃至9の何れか1項に記載の画像分類装置。
- 前記画像の取得操作は画像の撮影操作であることを特徴とする、請求項1乃至10の何れか1項に記載の画像分類装置。
- 撮影装置によって撮影された前記画像を取得する手段をさらに備えることを特徴とする、請求項11に記載の画像分類装置。
- 請求項11に記載の画像分類装置と、前記画像を撮影する撮影手段と、を備えることを特徴とする撮像装置。
- 画像分類装置が行う画像分類方法であって、
画像の取得操作を含む、デバイスにおける複数の操作についての履歴を示す操作履歴を取得する取得工程と、
前記操作履歴から、1以上の予め規定された条件のいずれかに適合する、続けて行われる操作のシーケンスを検出する検出工程と、
前記検出されたシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、又は前記検出されたシーケンスの前後の取得操作により取得された画像が別のグループに含まれるように、複数の前記取得操作により前記デバイスで取得された複数の画像を分類する分類工程と、
を有する画像分類方法であって、
前記予め規定された条件のうちの少なくとも1つは、
所定の操作の操作回数、
操作で扱われる画像の取得時刻、及び
操作で扱われる画像の情報、
のうちの少なくとも1つを用いて規定されることを特徴とする、画像分類方法。 - コンピュータに、
画像の取得操作を含む、デバイスにおける複数の操作についての履歴を示す操作履歴を取得する取得工程と、
前記操作履歴から、1以上の予め規定された条件のいずれかに適合する、続けて行われる操作のシーケンスを検出する検出工程と、
前記検出されたシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、又は前記検出されたシーケンスの前後の取得操作により取得された画像が別のグループに含まれるように、複数の前記取得操作により前記デバイスで取得された複数の画像を分類する分類工程と、
を実行させるプログラムであって、
前記予め規定された条件のうちの少なくとも1つは、
所定の操作の操作回数、
操作で扱われる画像の取得時刻、及び
操作で扱われる画像の情報、
のうちの少なくとも1つを用いて規定されることを特徴とする、プログラム。 - 画像の取得操作を含む、デバイスにおける複数の操作についての履歴を示す操作履歴を取得する取得手段と、
前記操作履歴から、1以上の予め規定された条件のいずれかに適合する、続けて行われる操作のシーケンスを検出する検出手段と、
前記検出されたシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、複数の前記取得操作により前記デバイスで取得された複数の画像を分類する分類手段と、
を備えることを特徴とする画像分類装置。 - 画像分類装置が行う画像分類方法であって、
画像の取得操作を含む、デバイスにおける複数の操作についての履歴を示す操作履歴を取得する取得工程と、
前記操作履歴から、1以上の予め規定された条件のいずれかに適合する、続けて行われる操作のシーケンスを検出する検出工程と、
前記検出されたシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、複数の前記取得操作により前記デバイスで取得された複数の画像を分類する分類工程と、
を有することを特徴とする画像分類方法。 - コンピュータに、
画像の取得操作を含む、デバイスにおける複数の操作についての履歴を示す操作履歴を取得する取得工程と、
前記操作履歴から、1以上の予め規定された条件のいずれかに適合する、続けて行われる操作のシーケンスを検出する検出工程と、
前記検出されたシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、複数の前記取得操作により前記デバイスで取得された複数の画像を分類する分類工程と、
を実行させるプログラム。 - 画像の取得操作を含む、デバイスにおける複数の操作についての履歴を示す操作履歴を取得する取得手段と、
前記操作履歴から、1以上の予め規定された条件のいずれかに適合する、続けて行われる操作のシーケンスであって、画像表示操作、画像加工操作、及び画像整理操作のうちの少なくとも1つを含むシーケンスを検出する検出手段と、
前記検出されたシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、又は前記検出されたシーケンスの前後の取得操作により取得された画像が別のグループに含まれるように、複数の前記取得操作により前記デバイスで取得された複数の画像を分類する分類手段と、
を備えることを特徴とする画像分類装置。 - 画像分類装置が行う画像分類方法であって、
画像の取得操作を含む、デバイスにおける複数の操作についての履歴を示す操作履歴を取得する取得工程と、
前記操作履歴から、1以上の予め規定された条件のいずれかに適合する、続けて行われる操作のシーケンスであって、画像表示操作、画像加工操作、及び画像整理操作のうちの少なくとも1つを含むシーケンスを検出する検出工程と、
前記検出されたシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、又は前記検出されたシーケンスの前後の取得操作により取得された画像が別のグループに含まれるように、複数の前記取得操作により前記デバイスで取得された複数の画像を分類する分類工程と、
を有することを特徴とする画像分類方法。 - コンピュータに、
画像の取得操作を含む、デバイスにおける複数の操作についての履歴を示す操作履歴を取得する取得工程と、
前記操作履歴から、1以上の予め規定された条件のいずれかに適合する、続けて行われる操作のシーケンスであって、画像表示操作、画像加工操作、及び画像整理操作のうちの少なくとも1つを含むシーケンスを検出する検出工程と、
前記検出されたシーケンスに含まれる取得操作により取得された画像が同じグループに含まれるように、又は前記検出されたシーケンスの前後の取得操作により取得された画像が別のグループに含まれるように、複数の前記取得操作により前記デバイスで取得された複数の画像を分類する分類工程と、
を実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013171706A JP2015041234A (ja) | 2013-08-21 | 2013-08-21 | 画像分類装置、撮影装置、画像分類方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013171706A JP2015041234A (ja) | 2013-08-21 | 2013-08-21 | 画像分類装置、撮影装置、画像分類方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015041234A true JP2015041234A (ja) | 2015-03-02 |
Family
ID=52695362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013171706A Pending JP2015041234A (ja) | 2013-08-21 | 2013-08-21 | 画像分類装置、撮影装置、画像分類方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015041234A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017520809A (ja) * | 2015-04-08 | 2017-07-27 | 小米科技有限責任公司Xiaomi Inc. | アルバム表示方法及び装置 |
WO2023100664A1 (ja) * | 2021-12-01 | 2023-06-08 | ソニーグループ株式会社 | 画像処理装置、画像処理方法、及びプログラム |
-
2013
- 2013-08-21 JP JP2013171706A patent/JP2015041234A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017520809A (ja) * | 2015-04-08 | 2017-07-27 | 小米科技有限責任公司Xiaomi Inc. | アルバム表示方法及び装置 |
US9953212B2 (en) | 2015-04-08 | 2018-04-24 | Xiaomi Inc. | Method and apparatus for album display, and storage medium |
WO2023100664A1 (ja) * | 2021-12-01 | 2023-06-08 | ソニーグループ株式会社 | 画像処理装置、画像処理方法、及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11461392B2 (en) | Providing relevant cover frame in response to a video search query | |
CN102129448B (zh) | 图像管理设备及其控制方法 | |
CN102483767B (zh) | 对象关联装置、对象关联方法、程序及记录介质 | |
CN102737089B (zh) | 图像处理装置和图像处理方法 | |
JP5934653B2 (ja) | 画像分類装置、画像分類方法、プログラム、記録媒体、集積回路、モデル作成装置 | |
KR101417548B1 (ko) | 사진 콜렉션에서 이벤트들을 생성하고 라벨링하는 방법 및 시스템 | |
US9607013B2 (en) | Image management apparatus, management method, and storage medium | |
JP2012239028A (ja) | 画像処理装置、画像処理方法及びプログラム | |
CN109348120B (zh) | 一种拍摄方法、图像的显示方法、系统及设备 | |
JP6203188B2 (ja) | 類似画像検索装置 | |
US8285008B2 (en) | Image processing apparatus, method and program for facilitating retrieval of an individual group using a list of groups, a list of selected group members and a list of members of the groups excluding the selected group members | |
JP5963756B2 (ja) | コンテンツ選択装置、およびコンテンツ選択方法 | |
JP2008269490A (ja) | 画像管理方法、画像管理装置、制御プログラム及びコンピュータ可読記憶媒体 | |
KR20170098139A (ko) | 영상 요약 장치 및 방법 | |
JP2015041234A (ja) | 画像分類装置、撮影装置、画像分類方法、及びプログラム | |
CN104519218A (zh) | 图像处理设备和图像处理方法 | |
JP6564275B2 (ja) | 画像処理装置、及び画像処理方法 | |
JP2014154971A (ja) | 画像表示装置、画像表示方法及びプログラム | |
JP2007142644A (ja) | 対応付け装置 | |
US20080068483A1 (en) | Image reproducing apparatus and image reproducing method | |
Zheng et al. | Exif as language: Learning cross-modal associations between images and camera metadata | |
JP6109118B2 (ja) | 画像処理装置および方法、情報処理装置および方法、並びにプログラム | |
KR101412478B1 (ko) | 선택패턴 기반의 사진관리 방법 및 이를 위한 컴퓨터로 판독가능한 기록매체 | |
JP2016122413A (ja) | 画像処理装置、画像処理装置の制御方法およびプログラム | |
JP2016075992A (ja) | 撮像装置、情報処理装置およびそれらの情報処理方法、並びに、情報処理システム |