(57)【要約】【課題】ユーザにとってより違和感の少ないクラスタリング結果を得る。【解決手段】時系列に沿って配列される１以上のデータに対してクラスタリング処理するデータ処理装置は、新規のデータが追加されたとき、時系列において新規のデータより前方に存在しかつ前方の境界との間の１以上の既存のデータを用いて、クラスタリング処理におけるグループ分割の基準を規定する基準データを生成する生成手段と、基準データに基づいて、新規のデータと該新規のデータの直前に位置する既存のデータとの間にグループ分割すべき境界が存在するか否かを判定する判定手段と、を有する。【選択図】図３
2015099505.tif 000002
【特許請求の範囲】
【請求項１】
時系列に沿って配列される１以上のデータに対してクラスタリング処理するデータ処理装置であって、
新規のデータが追加されたとき、時系列において前記新規のデータより前方に存在しかつ前方の境界との間の１以上の既存のデータを用いて、前記クラスタリング処理におけるグループ分割の基準を規定する基準データを生成する生成手段と、
前記基準データに基づいて、前記新規のデータと該新規のデータの直前に位置する既存のデータとの間にグループ分割すべき境界が存在するか否かを判定する判定手段と、
を有することを特徴とするデータ処理装置。
【請求項２】
前記１以上のデータのそれぞれは時刻情報を含んでおり、
前記生成手段は、時系列において前記新規のデータより前方に存在しかつ前方の境界との間の１以上の既存のデータにおける時系列において隣接するデータ間の時刻情報の差分に基づいて前記基準データを生成し、
前記判定手段は、前記基準データと、前記新規のデータと該新規のデータの直前に位置する既存のデータとの時刻情報の差分と、を比較することにより、前記新規のデータと該新規のデータの直前に位置する既存のデータとの間にグループ分割すべき境界が存在するか否かを判定する
ことを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
前記１以上のデータのそれぞれは撮像装置により生成された写真画像データであり、
前記生成手段は、時系列において前記新規のデータより前方に存在しかつ前方の境界との間の１以上の既存のデータにおける時系列において隣接するデータ間の属性値又は画像特徴量の差分に基づいて前記基準データを生成し、
前記判定手段は、前記基準データと、前記新規のデータと該新規のデータの直前に位置する既存のデータとの属性値又は画像特徴量の差分と、を比較することにより、前記新規のデータと該新規のデータの直前に位置する既存のデータとの間にグループ分割すべき境界が存在するか否かを判定する
ことを特徴とする請求項１に記載のデータ処理装置。
【請求項４】
前記属性値は、撮影時刻、撮影位置、撮影パラメータの何れかを含む
ことを特徴とする請求項３に記載のデータ処理装置。
【請求項５】
前記判定手段により前記新規のデータと該新規のデータの直前に位置する既存のデータとの間にグループ分割すべき境界が存在しないと判定された場合、前記新規のデータと該新規のデータの直前に位置する既存のデータとの差分を用いて前記基準データを更新する更新手段を更に有する
ことを特徴とする請求項２乃至４の何れか一項に記載のデータ処理装置。
【請求項６】
前記基準データは、時系列において前記新規のデータより前方に存在しかつ前方の境界との間の１以上の既存のデータにおける時系列において隣接するデータ間の時刻情報の差分のリストであり、
前記更新手段は、前記新規のデータと該新規のデータの直前に位置する既存のデータとの差分を前記基準データに追加することにより前記基準データを更新する
ことを特徴とする請求項５に記載のデータ処理装置。
【請求項７】
前記基準データは、時系列において前記新規のデータより前方に存在しかつ前方の境界との間の１以上の既存のデータにおける時系列において隣接するデータ間の時刻情報の差分のリストの統計量であり、
前記更新手段は、前記新規のデータと該新規のデータの直前に位置する既存のデータとの差分に基づき前記基準データを更新する
ことを特徴とする請求項５に記載のデータ処理装置。
【請求項８】
前記クラスタリング処理におけるグループ分割の基準を規定する仮想データを保持する記憶手段を更に有し、
前記生成手段は、既存のデータが存在しない場合は、前記仮想データから前記基準データを生成し、既存のデータが存在する場合は、前記仮想データと、時系列において前記新規のデータより前方に存在しかつ前方の境界との間の１以上の既存のデータとを用いて、前記基準データを生成する
ことを特徴とする請求項１乃至７の何れか一項に記載のデータ処理装置。
【請求項９】
時系列に沿って配列される１以上のデータの各々に対して、少なくとも時系列において後方に存在しかつ後方の境界との間の１以上のデータに基づいた再クラスタリング処理を実行する再クラスタリング手段と、
前記再クラスタリング手段によるグループ分割の判定結果と前記判定手段によるグループ分割の判定結果とが異なる場合、前記再クラスタリング手段による判定結果に基づく各グループ内のデータに基づき前記仮想データを更新する仮想データ更新手段と、
を更に有することを特徴とする請求項８に記載のデータ処理装置。
【請求項１０】
時系列に沿って配列される１以上のデータに対してクラスタリング処理するデータ処理方法であって、
新規のデータが追加されたとき、時系列において前記新規のデータより前方に存在しかつ前方の境界との間の１以上の既存のデータを用いて、前記クラスタリング処理におけるグループ分割の基準を規定する基準データを生成する生成工程と、
前記基準データに基づいて、前記新規のデータと該新規のデータの直前に位置する既存のデータとの間にグループ分割すべき境界が存在するか否かを判定する判定工程と、
を含むことを特徴とするデータ処理方法。
【請求項１１】
コンピュータを、請求項１乃至９の何れか一項に記載のデータ処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理に関するものであり、特に、データをグループ分類するためのクラスタリング装置に関するものである。
【背景技術】
【０００２】
従来、デジタルカメラなどで撮影した画像データに対して、イベント単位にクラスタリングすることが行われている。例えば、特許文献１には、複数の画像データを撮影時刻順に並べた場合の隣接する画像データ間の撮影間隔を用いて、イベントの境界を判定する技術が開示されている。また、非特許文献１には、近傍の時間範囲に含まれる複数の画像データ間の撮影間隔に基づいて境界の有無を判定しクラスタリングする技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−０９９１２０号公報
【非特許文献】
【０００４】
【非特許文献１】John C. Platt, Mary Czerwinski, Brent A. Field "PhotoTOC: Automatic Clustering for Browsing Personal Photographs" Information, Communications and Signal Processing, 2003 and Fourth Pacific Rim Conference on Multimedia. Proceedings of the 2003 Joint Conference of the Fourth International Conference on. ,2003, Vol.1, pp. 6-10.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述の従来技術は、クラスタリングの対象となる画像データを全て収集した後、一括してクラスタリングを行うことを想定したものである。そのため、新規に画像データを追加した場合、再びクラスタリングを行うこととなり、クラスタリング結果が変わってしまうことがあった。そのため、クラスタリング処理を高い頻度で行う場合、クラスタリング結果を表示する度に、個々の画像データに対するクラスタリング結果が変化し、ユーザに違和感を与える場合がある。
【０００６】
また、非特許文献１のように、判定対象の近傍の撮影間隔のみを用いるとき、判定に影響する画像データを蓄積してからクラスタリングを行えば、画像データを追加しながらクラスタリングすることはできる。しかしながら、その場合、蓄積している間はクラスタリング結果を提供できないことになる。例えば、前方後方それぞれ１０枚程度の蓄積を必要とするとき、平均撮影間隔が約９０秒とすると、判定箇所の後方１０枚が蓄積されるには約１５分程度の蓄積時間が必要とされ、その間はクラスタリング結果を提供できないことになる。
【０００７】
判定対象より前方の画像のみを参照してクラスタリングを行えば、後方の画像の蓄積は不要となる。しかしながら、この場合には、写真列の開始時点などのように前方に画像が存在しないときには判定ができない。加えて、非特許文献１のように、参照する範囲を固定枚数で指定する場合、結果としてより多くの前方の画像を参照する必要がある。その結果、境界と判定されるような大きな撮影間隔を含めて参照する可能性があり、その場合、境界判定を正しくできない場合がある。
【０００８】
本発明は、このような問題に鑑みてなされたものであり、ユーザにとってより違和感の少ないクラスタリング結果を得ることのできるクラスタリング技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述の問題点を解決するため、本発明に係るデータ処理装置は以下の構成を備える。すなわち、時系列に沿って配列される１以上のデータに対してクラスタリング処理するデータ処理装置において、新規のデータが追加されたとき、時系列において前記新規のデータより前方に存在しかつ前方の境界との間の１以上の既存のデータを用いて、前記クラスタリング処理におけるグループ分割の基準を規定する基準データを生成する生成手段と、前記基準データに基づいて、前記新規のデータと該新規のデータの直前に位置する既存のデータとの間にグループ分割すべき境界が存在するか否かを判定する判定手段と、を有する。
【発明の効果】
【００１０】
本発明によれば、ユーザにとってより違和感の少ないクラスタリング結果を得ることのできるクラスタリング技術を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】撮像装置の構成および画面表示を説明する図である。
【図２】画像データの管理を説明する図である。
【図３】画像管理プログラムの構成を示す図である（第１実施形態）。
【図４】境界判定の概要を説明する図である。
【図５】画像クラスタリング処理のフローチャートである。
【図６】各確率分布モデルに対する、判定式、パラメータ、基準データ更新式、仮想データを説明する図である。
【図７】画像管理プログラムの構成を示す図である（第４実施形態）。
【図８】境界情報選択処理及び仮想データ更新処理のフローチャートである。
【図９】再クラスタリング処理及び更新用仮想データ生成処理のフローチャートである。
【図１０】境界判定に関わる各データの関係を概念的に示す図である。
【発明を実施するための形態】
【００１２】
以下に、図面を参照して、この発明の好適な実施の形態を詳しく説明する。なお、以下の実施の形態はあくまで例示であり、本発明の範囲を限定する趣旨のものではない。
【００１３】
（第１実施形態）
本発明に係るデータ処理装置の第１実施形態として、撮像装置を例に挙げて以下に説明する。
【００１４】
＜装置構成＞
図１は、第１実施形態に係る撮像装置の構成について、図１（ａ）のブロック図を参照して説明する。ＣＰＵ１０１は、撮像装置１００全体を制御する機能部である。ＲＯＭ１０２は、変更を必要としないプログラムやパラメータを格納する機能部である。ＲＡＭ１０３は、外部装置などから供給されるプログラムやデータを一時記憶する機能部である。外部記憶部１０４は、撮像装置１００に固定して設置されたハードディスクやメモリカードである。外部記憶部１０４は、フレキシブルディスク（ＦＤ）、光ディスク（ＣＤ、ＤＶＤ等）、磁気カードや光カード、ＩＣカード、メモリカードなどで構成される。
【００１５】
入力部１０５は、ユーザの操作を受け、データを入力する機能部であり、電源ボタン・撮像ボタン・画像表示ボタン・十字ボタン・決定ボタン・タッチパネルなどで構成される。表示部１０６は、保持するデータや供給されたデータを表示するための機能部であり、液晶ディスプレイなどで構成される。撮像部１０７は、レンズなどの集光光学系とＣＣＤなどの撮像素子とによって静止画あるいは動画などの画像データを作成する機能部である。通信部１０８は、インターネットなどに接続するために有線／無線通信を行う機能部である。計時部１０９は、時間を計測し、現在時刻を管理する機能部である。システムバス１１０は、上述の各機能部を相互に通信可能に接続する機能部である。
【００１６】
以下の説明においては、図３を参照して後述する画像管理プログラムはＲＯＭ１０２に格納されており、ＣＰＵ１０１によって実行されるものとする。もちろん、画像管理プログラムを外部記憶部１０４に格納するよう構成しても良い。
【００１７】
＜クラスタリングの対象となるデータ＞
第１実施形態では、クラスタリングの対象とするデータとして、画像データを用いる場合について説明する。特に、新規に画像データを外部記憶部１０４に追加する場合、当該画像データの直前に「境界」があるか否かを順に判定しながらクラスタリングを行う場合について説明する。すなわち、新規に追加される画像データと外部記憶部１０４に既に格納されている既存の画像データとが異なるグループにクラスタリングされるべきか否かを順に判定する。
【００１８】
図２は、第１実施形態で用いる画像データの管理を説明する図である。図２（ａ）に示されるように、各画像データは、写真画像データであり、画像ＩＤと撮影時刻と撮影時間と画像本体データとを含む。
【００１９】
画像ＩＤは画像を特定する識別子である。撮影時刻は、画像の撮影を行った日時情報である。撮影時間は、動画などの撮影していた期間の長さを示す情報であり、静止画の場合は「０」が記録される。画像本体データは画像のピクセル情報などである。なお、画像本体データは図中においては省略されている。
【００２０】
なお、画像本体データは、外部記憶部などに記憶された画像ファイルのファイルパスを更に有するするにしてもよい。画像本体データが必要な場合、ファイルパスが示す外部記憶部上のデータを特定する。なお、画像データのデータ表現はこれに限定されるものではない。
【００２１】
ところで、画像データの「撮影間隔」は、時系列的に隣接する２つの画像データの撮影時刻の差として定義される。なお、動画の画像データの場合は、撮影時間も含めて撮影間隔を計算してもよい。つまり、時系列的に隣接する２つの画像データにおいて、「撮影時刻の新しい画像データの撮影時刻」と「撮影時刻の古い画像データの撮影時刻に撮影時間を加算した時刻」との差を「撮影間隔」としてもよい。ただし、撮影間隔の求め方はこれに限定されるものではない。
【００２２】
ここで、撮影順序は、画像データの撮影時刻の順序として定義される。なお、撮影時刻とは別に撮影順序を示す値を画像データごとに保持しておき、その値の順番として定義してもよい。撮影順序の求め方はこれに限定されるものではない。
【００２３】
図２（ｂ）は、画像クラスタリング部が出力する境界情報を説明する図である。境界情報は、時系列的に隣接する２つの画像データの「撮影間隔」の位置を特定する情報と、当該「撮影間隔」に「境界」が存在するか否かを示す情報を含む。例えば、「間隔ＩＤ」と２つの「画像ＩＤ」と「境界有無」とを含む。境界有無は、２つの画像ＩＤで示される画像データ間に「境界」があるとき「Ｔｒｕｅ」の値をとる。一方で、「境界」がないとき「Ｆａｌｓｅ」の値をとる。画像データを撮影順（つまり時系列順）に並べ、「境界」の位置で画像データ列を分割することでグループ分けすることができる。
【００２４】
なお、「撮影間隔」の位置は、２つ画像ＩＤがなくとも、片方のみでも特定できる。そのため、片方の画像ＩＤのみを保持するようにしてもよい。あるいは、２つの画像ＩＤそれぞれが示す撮影時刻の中間の時刻を保持するよう構成してもよい。このような境界情報を利用することによりとき、画像データを撮影順に並べ、境界有無が「Ｔｒｕｅ」の撮影間隔位置で複数の画像データを分けることでグループ分類できる。なお、境界情報の表現はこれらに限定されるものではない。
【００２５】
＜画像管理プログラムの構成＞
図３は、第１実施形態に係る画像管理プログラムの構成を示す図である。
【００２６】
画像管理部３０１は、画像データを格納し、さらにグループに分類して管理する。具体的には、撮像部１０７によって得た画像データを、外部記憶部１０４に格納する。さらに、画像クラスタリング部３０３より境界情報を得て、外部記憶部１０４に格納する。あるいは、境界情報を用いて、画像データをグループに分類して管理する。
【００２７】
グループ表示部３０２は、画像管理部３０１に格納された画像データをグループに分類して表示部１０６に表示する。例えば、撮像装置１００の画像表示ボタンが押下されたことを入力部１０５を介して検出したとき、図１（ｂ）に示すようなグループ表示画面を表示する。図１（ｂ）では、グループの代表画像１０１ｂが一覧表示されている。グループの代表画像として、グループ内の先頭画像データ（撮影時刻の最も古い画像データ）を用いる。あるいは、別の基準によってグループ内から選ばれた画像データであってもよい。また、グループ表示画面も、タイムライン上に位置付けて表示するなどしてもよい。なお、グループの表示方法はこれらに限定されるものではない。
【００２８】
画像クラスタリング部３０３は、１以上の画像データをクラスタリング（グループ分割）する。具体的には、撮像部１０７で画像データが撮影されたとき、直前に撮影された画像データとの間に、境界があるか否かを決定する。画像クラスタリング部３０３は、近傍判定部３０４と、仮想データ記憶部３０５と、基準データ作成部３０６と、境界判定部３０７を含む。
【００２９】
図４は、境界判定の概要を説明する図である。また、図４を参照して境界判定に係る用語を併せて説明する。図４（ａ）では、撮影順に並べられた画像データ４０１〜４０４が、間隔４０６を境界として２つのグループに分けられていることを示している。つまり、間隔４０６より前に撮影された画像データと間隔４０６より後に撮影された画像データとでグループ分けがなされている。
【００３０】
ここで、時系列の方向に関して「前方」および「後方」という言葉を用いる。「前方」は、撮影時刻の古い側を指す用語である。例えば、画像データ４０１は間隔４０６の前方に位置すると表現する。反対に「後方」は、撮影時刻の新しい側を指す用語である。例えば、画像データ４０３は間隔４０６の後方に位置すると表現する。
【００３１】
ここで、新たに画像データが撮影されると、図４（ｂ）に示すように、新たな画像データ４０５が、時系列的な末尾に追加されることになる。その場合、画像クラスタリング部３０３は、画像データ４０４と画像データ４０５の間の間隔４０７に境界が存在するか否かを判定する。以下の説明では、境界の有無を判定する対象である間隔４０７を「判定対象」の間隔と呼ぶ。
【００３２】
図４（ｃ）は、図４（ｂ）の画像データの撮影間隔の長さを棒グラフで表したものである。例えば、撮影間隔４０６ｃは図４（ｂ）の間隔４０６に対応している。また、撮影間隔４０７ｃは図４（ｂ）の判定対象の間隔４０７と対応している。なお、判定対象においても、画像データの場合と同様に、古い側を前方と呼び、新しい側を後方と呼ぶ。
【００３３】
図１０は、境界判定に関わる各データの関係を概念的に示す図である。第１実施形態では、撮影間隔に着目して「判定対象」に対して境界であるか否かの「境界判定」を行うことで、「境界情報」を得る。このとき、図１０に示すように、境界判定にでは「基準データ」を用いる。ここで、「基準データ」は、「仮想データ」と「近傍データ」から生成されるデータであり、クラスタリング処理におけるグループ分割の基準を規定するデータである。以下では、近傍データ・仮想データ・基準データについて説明する。
【００３４】
「近傍データ」は、判定対象の近傍の撮影間隔である。ここでは、「近傍データ」とは、判定対象より前方にある境界と判定対象と、の間に位置する間隔に関する情報である。言い換えると、「近傍データ」とは、判定対象より前方に存在し同一のグループに分類されている画像データ間の時間間隔である。近傍データであるか否かは、後述の近傍判定部３０４によって行われる。
【００３５】
「仮想データ」は、予め用意した撮影傾向を示すデータである。これは作成したいグループの粒度に応じて用意される。例えば、移動・昼食・観光などの行動単位でグループを作成したい場合と、２泊３日などの旅行などの大きなイベント単位でグループを作成したい場合とでは、グループ内で観測される標準的な撮影間隔は異なる。そこで、作成したいグループの粒度に合わせて仮想データは用意される。
【００３６】
特に、第１実施形態においては、仮想データは、撮影間隔のリストとして予め用意される。これは、グループ内で発生する標準的な撮影間隔を事例として与えることで撮影傾向を指定している。しかしながら、後述する第２実施形態のように、仮想データを、撮影間隔の平均などの統計量で与えてもよい。これによって、撮影間隔の分布を撮影傾向として指定することが出来る。仮想データとしての撮影傾向の形態は、これらに限定されるものではない。
【００３７】
「基準データ」は、近傍の撮影間隔を反映した、実際の撮影傾向を示すデータである。仮想データが示す撮影傾向を、近傍の撮影間隔で更新することで得る。第１実施形態においては、基準データは、撮影間隔のリストとして用意される。これは、仮想データに含まれる撮影間隔のリストに、近傍データの撮影間隔を加えたものである。なお、基準データを、後述する第２実施形態のように、撮影間隔の平均などの統計量としてもよい。
【００３８】
近傍判定部３０４は、判定対象にとって撮影間隔が近傍であるか否かを判定する。図１０に示す近傍データは、近傍判定部３０４によって、近傍と判定された撮影間隔である。近傍判定部３０４は、具体的には、判定対象より前方にある境界と判定対象との間に位置する間隔を近傍であると判定する。例えば、図４（ｃ）において、判定対象の間隔４０７（撮影間隔４０７ｃ）の近傍データは、前方の境界である間隔４０６（撮影間隔４０６ｃ）との間にある７個の間隔（撮影間隔４０８ｃ）となる。なお、判定対象の前方に境界がないときは、先頭の撮影間隔（時系列的に先頭から２つの画像データの間の間隔）から判定対象までを近傍データとするとよい。
【００３９】
仮想データ記憶部３０５は、予め仮想データを保持する。上述のように、第１実施形態では、仮想データは、予め用意した撮影間隔のリストである。仮想データ記憶部３０５は、外部記憶部１０４あるいはＲＯＭ１０２により実現される。基準データ作成部３０６は、判定対象と比較する基準データを作成する。上述のように、第１実施形態では、基準データは、近傍データと仮想データとに基づいて作成される撮影間隔のリストである。
【００４０】
境界判定部３０７は、判定対象が境界であるか否かを決定する。具体的には、基準データを用いて、当該基準データ（撮影間隔のリスト）を良く表すモデルを推定する。そして、推定されたモデルを用いて、判定対象のデータの異常性を判定することで、当該判定対象が境界であるか否かを判定する。
【００４１】
第１実施形態では、モデルとして撮影間隔の対数正規分布を用いて、グループ内で想定される撮影間隔をモデル化する。グループ内の撮影間隔に比べて、境界に相当する撮影間隔は非常に大きい。そのため、境界に相当する撮影間隔をこのモデルに当てはめた場合、その発生確率が非常に小さくなる。つまり、発生確率を導出することにより判定対象が境界であるか否かを判定する。なお、発生確率は非常に小さな値をとることから、ここでは負の対数尤度を用いる。
【００４２】
具体的には、対数正規分布のパラメータを基準データから求める。その後、判定対象に対する負の対数尤度を求め、負の対数尤度が所定以上の値をとるとき境界であると判定する。対数正規分布の確率分布は数式（１）の通りになる。ここで、ｘに判定対象の撮影間隔を与えると、その発生確率が分かる。
【００４３】
【数１】
2015099505.tif 000003
【００４４】
また、パラメータμとσ２は、数式（２）〜（４）によって求まる。ここで、基準データは｛ｘ１，ｘ２，．．．，ｘｎ｝である。例えば、μは基準データの撮影間隔の対数の平均によって求められている。
【００４５】
【数２】
2015099505.tif 000004
【００４６】
【数３】
2015099505.tif 000005
【００４７】
【数４】
2015099505.tif 000006
【００４８】
そして、負の対数尤度は、数式（１）に対数を適用し負をとることで導出され、例えば数式（５）になる。これも数式（１）と同様にｘに判定対象を当てはめることで、その負の対数尤度が求まる。
【００４９】
【数５】
2015099505.tif 000007
【００５０】
このようにして得られた負の対数尤度が、所定の閾値より大きいとき判定対象が境界であると判定を行う。なお、ここでは、モデルとして撮影間隔の対数正規分布を用いた。しかしながら、モデルとして他の確率分布である指数分布や正規分布を用いてもよい。あるいは、自己回帰モデルなどの他のモデルを用いてもよい。
【００５１】
更に、作成するグループの粒度にあわせて用いるモデルを適応的に変更するよう構成してもよい。グループの粒度が大きいとき、グループ内では小さな撮影間隔が大きなものに比べて非常に多い。そのため、撮影間隔の値が小さい側にピークが位置し、撮影間隔の値の大きい側ではなだらか減少する確率分布などが、グループ内をより良くモデル化することが出来る。対数正規分布や指数分布はこの傾向を有する分布である。そのため、これら分布を用いることで、グループ内をより適切にモデル化することができる。その結果、粒度の大きなグループを精度よく作ることが期待できる。
【００５２】
一方で、グループの粒度が小さいとき、グループ内の撮影間隔に偏りが少なくなる。そのため、撮影間隔の平均値にピークを有する確率分布が良くモデル化する。正規分布はこの傾向を有する分布である。そのため、これら分布を用いることで、粒度の小さなグループを精度よく作成できることが期待できる。
【００５３】
＜データ処理装置の動作＞
図５は、第１実施形態に係る画像クラスタリング処理のフローチャートである。本処理は、画像データが撮影されたとき実行される。ただし、初めて画像データが撮影されたときには、判定対象となる撮影間隔が存在しないため、本処理は実行されない。２つ目以降の画像データが撮影されたときに本処理は実行される。
【００５４】
画像クラスタリング処理の実行開始時には、画像クラスタリング部３０３に対し、判定対象となる撮影間隔が与えられる。加えて、画像クラスタリング部３０３に対し、以前処理した際に得られた基準データも与えられる。以前処理した際に得られた基準データとは、１つ前の画像が撮影されたときに実行された、以下で説明するＳ５０３あるいはＳ５０４で作られた基準データである。なお、画像クラスタリング処理が初めて実行されるときは、以前の基準データは存在しない。そこで、初めて実行されるときは、Ｓ５０３と同様に、仮想データを用いて生成した基準データが画像クラスタリング部３０３に対し与えられる。
【００５５】
ステップＳ５０１では、境界判定部３０７は、実行開始時に与えられた判定対象（撮影間隔）が、境界であるか否かを判定する。具体的には、以前の基準データをもちいて、数式（２）〜（４）を用いて、上述したパラメータμとσ２を求める。さらに、そのパラメータを用いて、数式（５）を用いて、判定対象の撮影間隔の負の対数尤度を求める。そして、負の対数尤度が所定の閾値より大きいとき、判定対象の撮影間隔が境界であると判定する。あるいは、モデルによる判定では極端に小さな値も境界と判定される可能性がある。そこで、負の対数尤度が大きいことに加えて、さらに所定の閾値以下であることを条件としてもよい。閾値としては、予め定めた値でも良いし、平均や四分位点などの値を用いてもよい。以下の、Ｓ５０２〜Ｓ５０４では、次の画像クラスタリング処理において用いる基準データを作成する。
【００５６】
ステップＳ５０２では、近傍判定部３０４は、判定対象が境界であるか否かを判定する。具体的には、Ｓ５０１の判定結果が境界である場合は、Ｓ５０３へ移る。境界ではない場合は、Ｓ５０４へ移る。
【００５７】
ステップＳ５０３では、基準データ作成部３０６は、仮想データを用いて、基準データを初期化する。具体的には、基準データを構成する撮影間隔を削除して、仮想データを構成する撮影間隔で置き換えることで、基準データを初期化する。つまり、Ｓ５０２において境界であると判定されたとき、「以前の基準データに含まれる近傍データ」と「現在の判定対象」は、「次の判定対象」にとっての近傍データではなくなる。そこで、近傍データを用いず仮想データのみで基準データを作成している。
【００５８】
ステップＳ５０４では、基準データ作成部３０６は、判定対象の撮影間隔を用いて、基準データを更新する。具体的には、撮影間隔のリストである基準データに、判定対象の撮影間隔を新たに加えることで、基準データを更新する。つまり、Ｓ５０２において境界ではないと判定されたとき、「以前の基準データに含まれる近傍データ」と「現在の判定対象」は、「次の判定対象」にとっても近傍データとなるからである。そこで、基準データに判定対象を加えることで、基準データを作成しているのである。
【００５９】
なお、画像クラスタリング処理の実行タイミングは、撮影直後でなくともよい。例えば、一定時間撮影が行われなくなってから、実行するようにしてもよい。あるいは、画像のグループ表示の指示をユーザから受け付けたときに実行するよう構成しても良い。
【００６０】
＜効果＞
「境界」である撮影間隔の多くは、グループ内の撮影間隔（つまり「境界」でない撮影間隔）に比べて非常に大きな撮影間隔をとる。そのため、近傍データに境界が含まれると、基準データに異常値が含まれることになり、境界判定のためのモデル推定が正しく行えなくなる。
【００６１】
例えば、対数正規分布・正規分布・指数分布は、モデルのパラメータ推定に、データの平均（対数正規分布ではデータの対数の平均）あるいはそれに類するものが用いられる。しかし、平均は異常値に影響されやすいため、パラメータ推定が正しく行えなくなるのである。そのため、第１実施形態では、境界である撮影間隔を近傍データから除外する。これによって、境界判定の性能が低下することを防ぐことができる。
【００６２】
また、予め用意した撮影間隔（仮想データ）と近傍データとをあわせて、判定対象が境界であるか否かの判定を行う。これによって、画像データ列の開始時点や、境界の直後のように、前方に画像データが存在しないときでも、仮想データを用いて判定を行うことができる。また、作成したいグループに合わせた撮影間隔で、仮想データを構成することで、作成するグループの粒度を調整できる。例えば、想定するグループ内の平均的な撮影間隔などに基づき仮想データを用意すれば、当該想定したグループの特徴に近いグループでクラスタリングを行うことが可能となる。
【００６３】
また、仮想データとする撮影間隔の数などを調整することで、仮想データの影響を調整することもできる。つまり、近傍データに比べて仮想データの撮影間隔数が多い場合、近傍データよりも仮想データを重視する。一方で、仮想データの数が少ないと近傍データを重視する。これによって、作成するグループの粒度を調整することができる。
【００６４】
また、判定対象の前方の撮影間隔のみを参照してクラスタリングを行うため、判定対象より後方の画像データの参照が不要である。そのため、判定対象より後方の画像データを蓄積する必要がないため、リアルタイムにクラスタリング結果を提供できる。加えて、後方の参照を行わないため、画像データが更に追加された場合にも判定結果が変化することがない。そのため、作成されたクラスタリング結果が変化しなくなり、ユーザに違和感を与えることを防ぐことができる。
【００６５】
以上説明したとおり第１実施形態によれば、判定対象の間隔の前方にある近傍データ（同一のグループに分類された画像データ間の時間間隔）を基準データとして用いて、当該判定対象が境界であるか否かの判定をおこなう。これにより、境界である撮影間隔の情報を基準データから除外することが出来、より好適なクラスタリングを行うことが可能となる。
【００６６】
（第２実施形態）
第２実施形態では、基準データとして、データの数や平均などのモデル推定に必要な統計量を用いた例について説明する。すなわち、第１実施形態においては、仮想データと基準データには、撮影間隔のリストを用いていたが、第２実施形態においては、撮影間隔のリストから導出される統計量を用いる。そして、新たに撮影間隔が加えられるたびに、統計量を更新するよう制御する。
【００６７】
＜画像管理プログラムの構成＞
第２実施形態の画像管理プログラムの構成は、第１実施形態（図３）と同じであるが、構成要素の機能が異なる。そこで、異なる構成要素について以下で説明する。
【００６８】
基準データ作成部３０６は、判定対象と比較する基準データを作成する。上述の第１実施形態では、基準データは撮影間隔のリストであった。しかしながら、第２実施形態では、対数正規分布を用いるとき、撮影間隔数ｎと、撮影間隔の対数の平均μと、撮影間隔の対数を二乗した平均ξを基準データとして使用する。
【００６９】
そして、基準データ作成部３０６では、「過去の基準データ」と「新たな撮影間隔」を用いて、新たな撮影間隔をふまえた「新たな基準データ」を作成する。
【００７０】
図６は、各確率分布モデルに対する、判定式、パラメータ、基準データ更新式、仮想データを説明する図である。例えば、対数正規分布の基準データの更新式は図６に示す通りである。ここで、ｎとμとξは基準データである。また、古い基準データにはｔの下付き文字が付され、新しい基準データにはｔ＋１の下付き文字が付されている。ここで、ｘｔ＋１は、新たな撮影間隔を示す変数である。
【００７１】
仮想データ記憶部３０５は、予め仮想データを保持する。第２実施形態における仮想データは、基準データの更新式の初期値である。そのため、境界判定部が用いるモデルによって、仮想データも変わる。
【００７２】
例えば、対数正規分布を用いたとき、仮想データは、ｎ０とμ０とξ０である。例えば、上述の第１実施形態では撮影間隔リストを仮想データとしていたが、このような撮影間隔リストをもとにこれらの値を生成することが考えられる。例えば、撮影間隔リストを構成する撮影間隔の数をｎ０とする。同様に、撮影間隔の対数の平均をμ０とし、撮影間隔の対数を二乗した平均ξ０とする。しかしながら、望む初期値を適当に設定しても構わない。仮想データの生成方法はこれらに限定されない。そして、仮想データ記憶部３０５は、この初期値を、予め外部記憶部１０４あるいはＲＯＭ１０２に記憶して保持する。
【００７３】
境界判定部３０７は、判定対象が境界であるか否かを決定する。例えば、対数正規分布をモデルとして用いるとき、対数正規分布のパラメータを基準データから求める。その後、判定対象の負の対数尤度を求め、所定以上の値をとるとき、境界と判定する。対数正規分布の確率分布はｆ（ｘ）で示されるものである。また、負の対数尤度を与える式はＬ（ｘ）で示されるものである。また、パラメータμは基準データと同様の値である。パラメータσ２は、基準データのμとξより図６に示す式より求めることができる。
【００７４】
なお、基準データ・仮想データは境界判定部３０７で用いる確率分布モデルによって決まる。ここでは、対数正規分布を確率分布モデルに用いた場合で説明を行う。しかしながら、その他の正規分布や指数分布を用いることも可能であり、図６に示すそれぞれの確率分布モデルに対応する式を用いることで、適用可能である。このように、利用する確率分布モデルはこれらに限定されるものではない。
【００７５】
＜画像クラスタリング処理＞
第２実施形態に係る画像クラスタリング処理について、第１実施形態と同様、図５のフローチャートを参照して説明する。本処理の実行タイミングと、実行時に与えられるデータは、第１実施形態と同じである。ただし、基準データは、前述の通り、対数正規分布のｎ、μ、ξである。
【００７６】
ステップＳ５０１では、境界判定部３０７は、本処理開始時に与えられた撮影間隔が、境界であるか否かを判定する。具体的には、以前処理した際に得られた基準データをもちいて、図６に示すパラメータの定義に従って、モデルのパラメータを求める。なお、上述の通り、μ、ξは既に与えられていることから、パラメータであるμ、σ２は直ちに算出可能である。そして、算出したパラメータを用いて、判定対象の撮影間隔の負の対数尤度を求める。そして、算出した負の対数尤度が所定の閾値より大きいとき、境界であると判定する。
【００７７】
ステップＳ５０２では、近傍判定部３０４は、Ｓ５０１で判定対象が境界であると判定されたか否かを判断する。具体的には、Ｓ５０１において境界であるという判定結果が得られた場合はＳ５０３へ遷移する。境界ではないという判定結果が得られた場合はＳ５０４へ遷移する。
【００７８】
ステップＳ５０３では、基準データ作成部３０６は、仮想データを用いて、基準データを初期化する。具体的には、仮想データ記憶部３０５にて保持している初期値を、新たな基準データとする。
【００７９】
ステップＳ５０４では、基準データ作成部３０６は、判定対象の撮影間隔を用いて、基準データを更新する。具体的には、「判定対象の撮影間隔」と「現在の基準データ」を用いて、図６に示す基準データの更新式に従って、「新たな基準データ」を作成する。ここで、現在の基準データは、ｎｔ，μｔ，ξｔである。そして、判定対象の撮影間隔はｘｔ＋１である。これらを更新式に代入し、ｎｔ＋１，μｔ＋１，ξｔ＋１を「新たな基準データ」として得る。
【００８０】
＜効果＞
以上説明したとおり第２実施形態によれば、基準データとして統計量を用いるよう構成した。これにより、保持するデータ量が少なくなりメモリ使用量を抑えることができる。加えて、予め基準データとして統計量が算出されているため、モデルのパラメータの演算コストが低減される。
【００８１】
また、作成したいグループに合わせた撮影間隔の分布を想定することで、より少ないデータ量で仮想データを与えることができる。例えば、撮影間隔のリストが、想定するグループ内の平均撮影間隔（すなわち、μ）等で表現できるようになる。また、撮影間隔の数（すなわち、ｎ）を直接指定できることから、仮想データの影響が調整しやすい。これによって、グループの粒度の指定が容易になる。
【００８２】
（第３実施形態）
第３実施形態では、誤判定の存在を考慮した形態について説明する。上述の実施形態においては、判定対象の直前の境界まで全てを近傍としていた。そのため、誤検出により境界が含まれていた場合、統計値（例えば平均値）と大きく異なる値が近傍データに含まれることになり、境界判定の性能を低下させる要因となる。そこで、第３実施形態では、誤検出により境界が含まれていた場合においても好適な境界判定を可能とする形態について説明する。
【００８３】
第３実施形態の画像管理プログラムの構成は、第１実施形態の図３とほぼ同じであるが、近傍判定部３０４の機能が異なる。具体的には、近傍判定部３０４は、判定対象にとって撮影間隔が近傍であるか否かを以下の３つの条件に基づいて判定する。
【００８４】
・判定対象より前方にある所定の第１の時間間隔以上の撮影間隔である境界と、判定対象との間に、撮影間隔が位置すること（第１の条件）。
【００８５】
・撮影間隔が所定の第２の時間間隔未満であること（第２の条件）。
【００８６】
・撮影間隔が境界でないこと（第３の条件）。
【００８７】
そして、第１〜第３の条件を全て満たす撮影間隔を、近傍であると判定する。これは、グループの粒度が小さいとき、小さな撮影間隔で区切られることが多く、結果として、撮影傾向はグループ間で似ていることを利用している。第１〜第３の条件を全て満たす撮影間隔を近傍として利用することにより、小さな撮影間隔の境界で区切られた、撮影傾向が似ているグループの間で基準データを共有することが可能となる。
【００８８】
なお、第１の条件において、所定の第１の時間間隔以上の撮影間隔である境界としているが、別の方法で大きな撮影間隔の境界を特定してもよい。例えば、境界判定部と異なるモデルを用いて、大きな撮影間隔を特定してもよい。同様に、第２の条件における、所定の第２の時間間隔未満の撮影間隔を近傍としているが、別の方法で小さな撮影間隔を特定してもよい。例えば、境界判定部と異なるモデルを用いて、小さな撮影間隔を特定してもよい。
【００８９】
＜効果＞
以上説明したとおり第３実施形態によれば、統計値（例えば平均値）と大きく異なる値を近傍データから除外すると共に、撮影傾向が似ている複数のグループの間で基準データを共有する。これにより、境界判定の精度を向上することができる。
【００９０】
（第４実施形態）
第４実施形態では、仮想データを動的に更新する形態について説明する。上述の実施形態においては、仮想データは、作成したいグループの粒度に合わせて、予め用意する必要があった。そして、予め用意した仮想データは固定的であった。しかしながら、必ずしもクラスタリング対象となる画像データ群に対して常に適切な仮想データを用意できるとは限らない。そこで、第４実施形態では、判定対象の後方の撮影間隔も参照して、再度境界判定を行う。そして、画像クラスタリング部により境界判定と一致しないとき、仮想データを更新する。
【００９１】
＜画像管理プログラムの構成＞
図７は、第４実施形態に係る画像管理プログラムの構成を示す図である。なお、仮想データ更新部７０１が加わった以外は、図３に示す構成と同じである。そのため、同じ構成要素の説明は省略する。
【００９２】
仮想データ更新部７０１は、仮想データを更新する機能部である。具体的には、再クラスタリング部７０２にて、判定対象の後方の撮影間隔も参照した境界判定（再クラスタリング）を行う。そして、画像クラスタリング部３０３による境界判定と再クラスタリング部７０２による境界判定とが一致しないとき、更新用仮想データ生成部７０３は、更新用の新たな仮想データを生成する。
【００９３】
再クラスタリング部７０２による境界判定の方法は、画像クラスタリング部３０３と類似している。しかしながら、再クラスタリング部７０２は、近傍データの取得方法が、画像クラスタリング部３０３と異なる。
【００９４】
具体的には、再クラスタリング部７０２では、近傍データは、判定対象の後方の撮影間隔も取得する。例えば、「判定対象の前方の境界から判定対象まで」と「判定対象から、判定対象の後方の境界まで」を近傍であると判定し、近傍データを取得する。あるいは、第３実施形態に示すような近傍の条件を加味してもよい。近傍データの取り方はこれらに限定されるものではない。
【００９５】
そして、図６に示す基準データ更新式を用いて、基準データを生成する。第４実施形態では、対数正規分布を用いて、境界判定を行うものとする。そのため、仮想データはｎ０とμ０とξ０である。そして、近傍データを｛ｘ１，ｘ２，．．．，ｘｍ｝として、基準データの更新式のｔを１からｍ−１まで順に適用することで、基準データを作成する。
【００９６】
そして、パラメータを求め、判定対象の撮影間隔をｘとしてＬ（ｘ）を求め、これが所定の閾値以上のとき境界であると判定する。
【００９７】
なお、再クラスタリング部７０２で用いる確率分布モデルは対数正規分布だけでなく、正規分布・指数分布等でも良い。あるいは、自己回帰モデルなどを用いてもよい。再クラスタリング方法は、これら境界判定に用いるモデルに限定されるものではない。
【００９８】
なお、仮想データは、仮想データ記憶部３０５から取得する。あるいは、仮想データ記憶部３０５と別に、予め用意した仮想データを用いても構わない。あるいは、仮想データを用いなくてもよい。仮想データを用いないとき、ｎ０，μ０，ξ０等の値は「０」とすればよい。
【００９９】
更新用仮想データ生成部７０３は、既存の仮想データを仮想データ記憶部３０５より取得し、新たな仮想データを生成する。ここでは上述の第２実施形態と同様に、仮想データは基準データの初期値であるとする。
【０１００】
このとき、再判定に用いた撮影間隔（近傍データ）を用いて、既存の仮想データを更新する。例えば、画像クラスタリング部３０３において、モデルとして対数正規分布を用いたとき、既存の仮想データはｎ０，μ０，ξ０である。そして、再判定に用いた撮影間隔が｛ｘ１，ｘ２，．．．，ｘｍ｝であったとする。このとき、基準データの更新式のｔを１からｍ−１まで順に適用することで、既存の仮想データから、新たな仮想データを生成できる。
【０１０１】
そして、仮想データのデータ数ｎを、既存の仮想データの値に戻す。これは、仮想データのデータ数ｎが大きくなりすぎると、近傍データと仮想データの影響のバランスを崩す。そこで、第４実施形態では、データ数ｎをもとの数値に戻している。
【０１０２】
もちろん、他の方法を用いて仮想データを生成してもよい。例えば、既存の仮想データを用いることなく、新たな仮想データを作成してもよい。例えば、ｎ０，μ０，ξ０を０として、同様に基準データの更新式を適用することで、新たな仮想データを生成できる。
【０１０３】
あるいは、再判定に用いた撮影間隔を使わずに、仮想データを生成してもよい。例えば、データ数ｎのみを小さくした仮想データを生成してもよい。これによって、仮想データの影響を小さくすることができる。
【０１０４】
あるいは、画像クラスタリング部の判定結果が、再評価によって「境界から非境界へ」と変化したとき、仮想データが表現する撮影間隔が小さすぎるために誤ったと考えられる。そこで、仮想データが表現する撮影間隔を大きくする。例えば、μやξに１より大きな倍率をかけて、大きくする。反対に、「非境界から境界へ」と変化したときは、仮想データが表現する撮影間隔が大きすぎるため、誤ったと考えられる。そこで、仮想データが表す撮影間隔を少し小さくする。例えば、μやξに１より小さな倍率をかけて、小さくする。このように、既存の仮想データを調整することによって、新たな仮想データを生成してもよい。
【０１０５】
また、第１実施形態のように仮想データが撮影間隔リストであったとき、再判定に用いた撮影間隔を追加したものを新たな仮想データとしてもよい。あるいは、既存のリストに含まれる各撮影間隔に対し登録順序の優先度を付与しておき、優先度の低いデータを消した後、再判定に用いた撮影間隔を追加してもよい。
【０１０６】
また、更新用の仮想データを生成する際に、再判定に用いた撮影間隔の全てを使わなくてもよい。例えば、判定対象の後方の撮影間隔のみを用いてもよい。また、一定以上の撮影間隔などを除くことを行ってもよい。このように、更新用仮想データの生成方法は様々な方法があり、また上述の方法に限定されるものではない。
【０１０７】
図８は、境界情報選択処理及び仮想データ更新処理のフローチャートである。特に、境界情報選択処理については図８（ａ）に示すフローチャートを参照して、仮想データ更新処理については図８（ｂ）に示すフローチャートを参照して説明する。
【０１０８】
境界情報選択処理は、画像データが撮影されたとき仮想データ更新部７０１により実行される。あるいは、一定の枚数の撮影が行われたときに実行されるよう構成してもよい。境界情報選択処理は、画像管理部３０１で管理された境界情報を順に選択し、仮想データ更新処理を適用する。
【０１０９】
ステップＳ８０１ａでは、画像管理部３０１で管理された境界情報を順に選択するループの開始位置であり、Ｓ８０６ａは、Ｓ８０１ａで始まったループの終端である。仮想データ更新部７０１は、画像管理部３０１で管理する境界情報で選択していない境界情報があるとき、それを選択して、Ｓ８０２ａへ移る。全ての境界情報を選択したとき、このループを抜けて本処理を終了する。
【０１１０】
ステップＳ８０２ａでは、仮想データ更新部７０１は、Ｓ８０１ａで選択した境界情報が仮想データ更新処理を、適用済みか否かを判定する。具体的には、画像管理部３０１で管理されている境界情報に処理済みフラグを設け、処理済みフラグがＯＦＦのデータがあるか否かによって判定する。なお、画像管理部３０１は、画像クラスタリング部３０３から境界情報を得たとき、その処理済みフラグをＯＦＦにして保持している。
【０１１１】
Ｓ８０２ａにおいて、仮想データ更新部７０１は、仮想データ更新処理を適用済みではないとき（境界情報の処理済みフラグがＯＦＦのとき）、Ｓ８０３ａへ遷移する。それ以外の場合は、Ｓ８０６ａへ遷移する。
【０１１２】
ステップＳ８０３ａでは、仮想データ更新部７０１は、境界情報の撮影間隔を判定対象としたとき、後方の撮影間隔が十分に有るか否かを判定する。具体的には、判定対象の後方に境界があるか否かを判定する。境界があるとき、Ｓ８０４ａへ遷移する。それ以外の場合は、Ｓ８０６ａへ遷移する。
【０１１３】
ステップＳ８０４ａでは、仮想データ更新部７０１は、境界情報に対して、仮想データ更新処理を適用する。そして、ステップＳ８０５ａでは、仮想データ更新部７０１は、処理した境界情報に対して処理済みフラグをＯＮにする。
【０１１４】
図８（ｂ）は、仮想データ更新処理の詳細フローチャートである。仮想データ更新処理は、仮想データ更新部７０１によって実行される。本処理が実行されるとき、既存の仮想データと、境界情報選択処理（図８（ａ））において選択された境界情報が、与えられる。
【０１１５】
ステップＳ８０１ｂでは、仮想データ更新部７０１は、再クラスタリング処理を行う。具体的には、境界情報が示す撮影間隔を判定対象として、境界であるか否かを判定する。特に、このとき判定対象である撮影間隔の後方も参照して、判定を行う。再クラスタリング処理の詳細については、図９（ａ）を参照して後述する。
【０１１６】
ステップＳ８０２ｂでは、仮想データ更新部７０１は、既存の境界判定とＳ８０１ｂによる境界判定とが一致するか否かを判定する。具体的には、境界情報の示す境界有無と、Ｓ８０１ｂの判定結果が一致するか否かを判定する。一致しないときＳ８０３ｂへ遷移する。一致するとき、本処理を終了する。
【０１１７】
ステップＳ８０３ｂでは、仮想データ更新部７０１は、更新用仮想データの生成処理を行う。具体的には、Ｓ８０１ｂで再クラスタリング処理に用いた撮影間隔を用いて、既存の仮想データをもとに、新たな仮想データを生成する。更新用仮想データの生成処理の詳細については、図９（ｂ）を参照して後述する。
【０１１８】
ステップＳ８０４ｂでは、仮想データ更新部７０１は、Ｓ８０３ｂで生成した更新用仮想データを、仮想データ記憶部３０５へ記憶する。
【０１１９】
なお、Ｓ８０２ｂにおいて境界判定の一致しないときのみ仮想データの更新を行っているが、境界判定の一致したときにも、仮想データの更新を行うよう構成してもよい。
【０１２０】
図９は、再クラスタリング処理及び更新用仮想データ生成処理の詳細フローチャートである。特に、再クラスタリング処理については図９（ａ）に示すフローチャートを参照して、更新用仮想データ生成処理については図９（ｂ）に示すフローチャートを参照して説明する。
【０１２１】
再クラスタリング処理は、再クラスタリング部７０２によって実行される。再クラスタリング処理が実行されるとき、判定対象と、既存の仮想データが与えられる。また、判定対象の前後の撮影間隔と、境界の有無については、画像管理部３０１より適宜取得するものとする。
【０１２２】
ステップＳ９０１ａでは、再クラスタリング部７０２は、判定対象の後方を含む撮影間隔を取得して、近傍データとする。具体的には、「判定対象の前方の境界から判定対象まで」と「判定対象から、判定対象の後方の境界まで」の間に位置する撮影間隔を取得し、これを近傍データとする。
【０１２３】
ステップＳ９０２ａでは、再クラスタリング部７０２は、近傍データを用いて基準データを生成する。具体的には、図６に示す基準データ更新式を用いて、基準データを生成する。つまり、近傍データを｛ｘ１，ｘ２，．．．，ｘｍ｝とする。さらに、ｎ０とμ０とξ０を、与えられた仮想データの値とする。そして、基準データの更新式のｔを１からｍ−１まで順に適用することで、基準データを作成する。
【０１２４】
ステップＳ９０３ａでは、再クラスタリング部７０２は、モデルのパラメータを求める。図６に示す式に従ってξとμからσ２を生成する。μは基準データで求めた値をそのまま用いる。
【０１２５】
ステップＳ９０４ａでは、再クラスタリング部７０２は、Ｌ（ｘ）によって負の対数尤度を求める。具体的には、ｘを判定対象の撮影間隔として、Ｌ（ｘ）の値を求める。
【０１２６】
ステップＳ９０５ａでは、再クラスタリング部７０２は、Ｓ９０４ａで求めた負の対数尤度が所定以上のとき、判定対象の撮影間隔は境界であると判定する。一方で、所定以下のとき、判定対象の撮影間隔は境界ではないと判定する。
【０１２７】
更新用仮想データの生成処理は、更新用仮想データ生成部７０３によって実行される。更新用仮想データの生成処理の実行時には、既存の仮想データが与えられるものとする。
【０１２８】
ステップＳ９０１ｂでは、更新用仮想データ生成部７０３は、再クラスタリング処理で得た、近傍データを得る。具体的には、Ｓ９０１ａで得た近傍データを得る。
【０１２９】
ステップＳ９０２ｂでは、更新用仮想データ生成部７０３は、与えられた既存の仮想データをもとに、Ｓ９０１ｂで得た近傍データを用いて、新たな仮想データを生成する。例えば、画像クラスタリング部３０３が、対数正規分布モデルを用いて、境界判定を行っていた場合は、既存の仮想データはｎ０，μ０，ξ０である。そして、近傍データを｛ｘ１，ｘ２，．．．，ｘｍ｝として、基準データの更新式のｔを、１からｍ−１まで順に適用することで、既存の仮想データから、新たな仮想データを生成する。
【０１３０】
ステップＳ９０３ｂでは、更新用仮想データ生成部７０３は、Ｓ９０２ｂで生成した仮想データのうち、データ数ｎを既存の仮想データの値に戻す。
【０１３１】
なお、ここでは、再クラスタリング部７０２の境界判定と、画像クラスタリング部３０３の境界判定の結果が異なっても、特に修正を行っていない。しかしながら、境界判定の結果が異なるとき、再クラスタリング部７０２の境界判定の結果に修正しても構わない。例えば、グループの表示がまだ行われていないことが分かるとき、グループの表示が行われていない間に生成された境界情報は、変更してしまってもユーザに違和感を与えることはない。
【０１３２】
＜効果＞
以上説明したとおり第４実施形態によれば、仮想データ更新部７０１では、画像クラスタリング部３０３による境界判定の結果と、再クラスタリング部７０２による境界判定の結果とを比較する。そして、境界判定の結果が一致しないとき、仮想データを更新する。これによって、境界判定を誤った箇所周辺の撮影間隔が仮想データに反映され、以後の境界判定における誤りの可能性を減らすことができる。
【０１３３】
（変形例）
上述の実施形態では、撮影順に画像データが追加されていた。しかしながら、撮影順に並べられた画像データ列の間に挿入されても構わない。例えば、他の撮像装置から通信部１０８を介して画像データを受信したときなどは、既存の画像データ列の間に新しい画像データが挿入されることがある。このとき、挿入位置の直前・直後の撮影間隔が新たに生じたものとみなし、それぞれの撮影間隔を判定対象として境界判定を行えばよい。
【０１３４】
また、上述の実施形態では、近傍データは、画像データ間の撮影間隔であった。しかしながら、近傍データとして画像データそのものを使用してもよい。このとき、近傍判定部は、各画像データの撮影時刻を参照して、近傍性を判定してもよい。具体的には、判定時刻として、判定対象を構成する２画像データ間の適当な時刻を設定する。例えば、判定対象を構成する前方の画像データの撮影時刻を判定時刻として設定する。また、境界時刻として、境界を構成する２画像データの撮影時刻の中間時刻を設定する。そして、境界時刻以降かつ判定時刻以前の撮影時刻を有する画像データを近傍と判定し、この処理により得られた画像データを近傍データとする。このとき、基準データ作成部では、撮影間隔へと変換して、上述の実施形態と同様に基準データを作成する。その後、上述の実施形態と同様に、境界判定部にて、基準データを用いて境界の有無を判定するとよい。
【０１３５】
また、境界判定事態に、画像データ自体を用いるようにしてもよい。例えば、新たに追加された画像データの撮影時刻と、近傍データを構成する画像データの撮影時刻を比較し、新たな画像データの撮影時刻が、予め定めた境界時刻を超えていたとき、境界であると判定する。例えば、会社の始業時刻などのイベントが切り替わることが自明な時刻を予め境界時刻として設定する。このように、境界判定に用いる近傍データは、間隔データだけでなく、画像データを用いて行ってもよい。
【０１３６】
また、上述の実施形態では、２つの画像データの撮影間隔（撮影時刻情報の差分）を用いた。しかしながら、他の間隔データを用いてもよい。例えば、２つの画像データの撮影位置の差分を間隔データとして用いてもよい。あるいは、２つの画像データにおける撮影パラメータ（ＥＶ値など）の差分を間隔データとして用いてもよい。あるいは、画像特徴量の差分（類似度合い）を間隔データとして用いてもよい。撮影位置の差分を用いることで、大きな移動があったところで、境界を設定できる。撮影パラメータの差分を用いることで、屋内から屋外などの環境光が大きく変化するところで、境界を設定できる。また、画像特徴量の類似度合いを用いることで外観（アピアランス）の大きく変化するところで、境界を設定できる。これらのように、間隔データを、時系列上で隣接する２つの画像データの属性値の差分として定義することもできる。
【０１３７】
また、上述の実施形態では、主に画像データを用いているが、時系列上に配列される任意のデータに対して適用可能である。例えば、ＰＣや機器の操作履歴のようなデータを対象としてもよい。このとき、各操作に対応する時刻の差分を間隔データとして用いることができる。これによって、時間的に連続する操作列などを得ることができる。
【０１３８】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015099505.tif 000008
【図２】
2015099505.tif 000009
【図３】
2015099505.tif 000010
【図４】
2015099505.tif 000011
【図５】
2015099505.tif 000012
【図６】
2015099505.tif 000013
【図７】
2015099505.tif 000014
【図８】
2015099505.tif 000015
【図９】
2015099505.tif 000016
【図１０】
2015099505.tif 000017