説明

画像メタデータおよび空間情報に基づく判断基準を使用した自動デジタル画像グルーピング

【課題】画像メタデータおよび空間情報を含む判断基準に基づいて関連する画像のグルーピングを自動的に生成する自動デジタル画像グルーピングシステムおよび方法を提供すること。
【解決手段】無秩序で組織化されていないデジタル画像セットを取得し、関連する画像を画像サブセットの形に組織化しグループ化する。画像内部に既に組み込まれているメタデータは画像サブセットを抽出するために使用される。このメタデータには画像の時間的近接性、焦点距離、カラーオーバラップ、地理的位置などを含めることができる。本発明による第1のコンポーネントのサブセット画像ステージではメタデータが解析され関連する画像を含む可能な画像サブセットが生成される。第2のコンポーネントのオーバラップ検出ステージでは関連する画像の画素を検査することによって可能な画像サブセットが解析され検証される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は一般にデジタル画像処理に関し、より詳細には、画像メタデータおよび空間情報を含む判断基準を用いて画像セット中の関連する画像を自動的に決定する自動デジタル画像グルーピングシステムおよび方法に関する。
【背景技術】
【0002】
デジタルカメラは、消費者に人気のある画像取り込み装置である。消費者向けのデジタルカメラは非常に使い易いものなので、ユーザは一般に、時間の経過とともに大量のデジタル画像を蓄積することになる。このようなデジタル画像は、一般にハードドライブまたは取り外し可能記憶媒体に蓄積されるが、無秩序で組織化されていない大量の画像を含むフォルダに格納されることも多い。この無秩序な画像セットは、一般に扱いにくいものであり、このセットを組織化したいと望むユーザは困難な作業に直面することになる。
【0003】
「関係がある」または関連する画像を自動的に見つけ出すソフトウェアが存在する。例えばユーザは、同一の露光量を有するため、ある被写体を追跡するため、グループショットを形成するため、パノラマを形成するためなどの理由で関連する画像を見つけたいと望む場合がある。ある種の既存のソフトウェアは、オーバラップする画像の集りを取得し、自動的にパノラマにステッチング(stitch)する。さらに、同一の場面を異なる露光で取り込んだ画像の集りを取得し、ハイダイナミックレンジ画像(high−dynamic range image)を作成する現在入手可能なソフトウェアも存在する。例えば、このような技術の1つは、M.Uyttendaele、R.Szeliski、およびA.Edenによって2005年2月1日に出願された「Method and System for Combining Multiple Exposure Images having Scene and Camera Motion」と題する同時係属出願の米国特許出願第11/049597号明細書、ならびにS.B.Kang、M.Uyttendaele、S.Winder、およびR.Szeliskiによって2003年7月18日に出願された「System and Process for Generating High Dynamic Range Images from Multiple Exposures of a Moving Scene」と題する米国特許出願第10/623033号明細書に記載されている。さらに、類似した画像の集りを取得し単一の合成画像を生成するソフトウェアも存在する。この種の技術は、非特許文献1に記載されている。
【0004】
理論的には、無秩序な画像セットに含まれるどの画像も上述の技術に入力することは可能である。しかし、このことに関する1つの問題は、処理が非常に遅くなり、非効率になることである。言い換えると、無秩序な画像セットの各画像をこのような画像オーバラップ検出技術の1つに投入することは、これら汎用技術を使用する非効率的な方法である。
【0005】
無秩序な画像セットのクラスタリングを実施する他の技術も存在する。例えば、2種類のクラスタリング技術が非特許文献2および非特許文献3に記載されている。
【0006】
しかし、Schaffalitzkyらの技術に関する1つの問題は、それが純粋に画像ベースの技術だということである。詳細には、彼らの技術は、例えば人物、建物など画像中に取り込まれた特徴を見つけることによって画像の類似性を探すものである。十分に類似した特徴が見つかると、画像は関連していると定義される。画像のクラスタリングにおいては、画像データだけが使用される。Plattの技術は、(タイムスタンプなどの)時間的解析とカラーオーバラップに基づいて画像を分類する。しかし、Plattの技術に関する1つの問題は、それが空間的解析および画素解析をまったく実施しないことである。
【0007】
【非特許文献1】A. Agarwala, M. Agarwala, S. Drucker, A. Colburn, B. Curless, D. Salesin, and M. Cohen, "Interactive Digital Photomontage", ACM Trans.Graph., 23 (3): 294-302, 2004
【非特許文献2】F. Schaffalitzky and A. Zisserman, "Multi-View Matching for Unordered Image Sets, or How Do I Organize My Holiday Snaps?", Proceedings of the European Conference on Computer Vision, pp. 414-431, 2002
【非特許文献3】J. Platt, "AutoAlbum: Clustering Digital Photographs using Probabilistic Model Merging", Proc. IEEE Workshop on Content-Based Access of Image and Video Libraries 2000, pp. 96-100, (2000)
【非特許文献4】M. Brown and D. G.Lowe, "Recognizing Panoramas", Proceedings of the Ninth IEEE International Conference on Computer Vision, pp. 1218-1225, IEEE Computer Society, 2003
【非特許文献5】M. Cohen, A. Colburn, and S. Drucker, "Image Stacks" in Microsoft Research Technical Report No. MSR-TR-2003-40
【発明の開示】
【発明が解決しようとする課題】
【0008】
したがって、無秩序な画像セットを組織化する迅速かつ効率的な方法を提供する自動デジタル画像グルーピングシステムおよび方法が必要とされている。また、様々な判断基準を検査し解析して、無秩序な画像セット内の関連する画像についてのカスタマイズされたグルーピングおよび集りを生成するシステムおよび方法も必要とされている。
【課題を解決するための手段】
【0009】
本明細書で開示された発明には、関連する画像および画像グループを自動的に決定するための自動デジタル画像グルーピングシステムおよび方法が含まれる。この自動画像グルーピングシステムおよび方法は、無秩序で組織化されていないデジタル画像セットを取得し、関連する画像を組織化しグルーピングする。汎用画像処理ソフトウェア(例えば、画像ステッチングアプリケーションやハイダイナミックレンジアプリケーションなど)によって処理される前に、関連する画像をグルーピングすることによって、大幅に効率が向上し処理時間が削減される。
【0010】
自動画像グルーピングシステムおよび方法は、各画像に関連付けられたメタデータを使用して関連する画像を見つける。メタデータとは、画像ファイルをオープンすることなく迅速にアクセスすることが可能な、各画像に関連するデータである。さらに、メタデータの解析により、画像ベース技術単体よりも、より良いグルーピング機能が提供される。可能な(potential)グループが識別された後で、画像間の関係をさらに確認し、関係の種類を分類するために詳細な画素解析が実施される。
【0011】
この自動画像グルーピング方法は、組織化されていない無秩序な画像の集りを含む無秩序な画像セットを入力するステップと、そのセット中の各画像に関連付けられたメタデータを解析して関連する画像を決定するステップを含む。この方法はさらに、関連する画像を含む可能な(potential)画像サブセットを生成するステップを含む。このステップは、メタデータ解析の結果に基づいて行われる。コレクションレコグナイザ(collection recognizer)はどのメタデータを検査すべきかを決定する判断基準であり、メタデータ解析で使用される。コレクションレコグナイザには、時間的近接性、焦点距離、地理的位置、およびサムネイル画像を使用したカラーオーバラップが含まれる。
【0012】
次に、関連する画像の画素を検査することによって、可能な画像サブセットが解析され検証される。好ましい実施形態では、解析し検証するためにペアワイズ(pairwise)技術が使用される。この方法はまた、可能な画像サブセットがパノラマを形成する画像を含むのか、それとも真の画像スタック(true image stack)を形成する画像を含むのかを判定するステップを含む。真の画像スタックとは、同じ場面を取り込むが、画像間で実質的にカメラ移動を伴わない画像のことである。一方、パノラマは、空間的にオーバラップしているが、その場面の異なる部分をカバーしてパノラマを提供するいくつかの画像を含む。画像処理技術は、画像がパノラマか、それとも真の画像スタックかに基づいて、検証された画像サブセットを処理するように選択される。
【0013】
自動画像グルーピングシステムは、上述の自動画像グルーピング方法を組み込むための各モジュールを含む。詳細には、自動画像グルーピングシステムは、各画像に関連付けられたメタデータを解析するメタデータ解析モジュールと、メタデータ解析モジュール内に存在し、複数のデジタル画像のどれが関連しているかをコレクションレコグナイザに基づいて決定するメタデータリレーションモジュールと、関係する画像のグループを含む可能な画像サブセットとを含む。このシステムはまた、メタデータリレーションモジュールがどのコレクションレコグナイザを使用すべきかを決定するコレクションレコグナイザ選択モジュールを含む。さらに、このシステムは、ペアワイズ技術を使用して可能な画像サブセットを解析し検証する検証モジュールを含む。このシステムはまた、可能な画像サブセットを形成するためにどの画像グループが使用され、どの画像が使用されなかったかをユーザに示すユーザインターフェースを含む。さらに、このシステムのもう1つのユーザインターフェースは、可能な画像サブセットがパノラマを形成する画像を含むのか、それとも真の画像スタックを形成する画像を含むのかの情報をユーザに提供する。
【0014】
本発明は、以下の説明および本発明の諸態様を示す添付の図面を参照することによってより良く理解することができる。他の特徴および利点は、本発明についての以下の詳細な説明と、本発明の原理を一例として例示する添付の図面を併せて読むことによって明らかになるであろう。
【0015】
次に図面を参照すると、同一の参照番号は全図面を通して同一の部分を表す。
【発明を実施するための最良の形態】
【0016】
本発明に関する以下の説明においては、添付の図面を参照する。これらの図面は本発明の一部を形成するものであり、本発明を実施することができる特定の例を例示するものである。本発明の範囲を逸脱することなく、他の実施形態を使用できることおよび構造的な変更をなし得ることを理解されたい。
【0017】
I.序論
デジタルカメラのユーザは、一般に無秩序かつ組織化されていない形で保存された大量のデジタル画像を蓄積する。これらの画像を組織化すること、またはどの画像が関連しているかを決定することは、複雑で時間のかかる作業になり得る。ユーザは、多くの理由、例えば同一の露光量を有しているため、被写体を追跡するため、グループショットを形成するため、あるいはパノラマを形成するためなどの理由によって、どの画像が関連しているのかを決定したいと考えることがある。画像を取得し、それらを自動的にステッチングしてパノラマを形成することができるソフトウェアが存在する。あるいは、同一の場面を異なる露光で取り込んだ画像の集りを取得し、ハイダイナミックレンジ画像を作成することができるソフトウェアも存在する。しかし、無秩序で組織化されていない画像の集りを取得し、これらのソフトウェアアプリケーションの1つに入力することは、非常に時間がかかり非効率な処理になり得る。
【0018】
本明細書で開示する自動画像グルーピングシステムおよび方法は、無秩序な画像の集りを解析し、画像サブセットを形成するためにどの画像が関連し、関係があるのかを決定する。これらの画像サブセットは、例えばパノラマ、多重露光、同一場面の繰り返しショットなどに基づくことがある。画像サブセットを定義するための判断基準は、ユーザニーズに応じて変更し、カスタマイズすることができる。
【0019】
パノラマは、様々な写真画像を互いにステッチングすることによって作成されたビューである。パノラマを作成するために使用できる画像は、大量の写真の中に埋もれていることが多い。自動画像グルーピングシステムおよび方法は、無秩序な画像セット内の画像を検査し、自動的にパノラマを合成するパノラマ発見(panorama discovery)を提供する。画像内部に既に組み込まれている(EXIFタグなどの)メタデータは、画像ステッチングアルゴリズムによってさらに処理するための適当なパノラマセットを抽出するために使用される。このメタデータには、可能なパノラマグループの指標として、写真が撮影された日時や写真の焦点距離などを含めることができる。
【0020】
自動画像グルーピングシステムおよび方法の第1のコンポーネントは無秩序な画像セットの画像を画像サブセットにアレンジするサブセット画像ステージである。次に、これらの画像サブセットは第2のコンポーネントであるオーバラップ検出ステージに入力される。このステージは、オーバラップを検出する既存の技術である。しかし、上述のように、これらの技術は非常に処理が遅いため、入力画像セット内の各画像をこの技術に単に入力することは非効率である。したがって、この新規の自動画像グルーピングシステムおよび方法は、効率を向上するために、画像セットから画像を知的に(intelligently)選択し、画像のサブセットだけをオーバラップ検出コンポーネントに入力する。
【0021】
II.総括
図1は、本明細書で開示される自動画像グルーピングシステムおよび方法の一実装例を示す構成図である。図1を参照すると、自動画像グルーピングシステム100はコンピュータ装置105上に配置されている。一般に、自動画像グルーピングシステム100は、無秩序な画像のセット110を処理して関連する画像のグループを生成する。
【0022】
より詳細には、図1に示したように、無秩序な画像セット110は無秩序で多様な複数の画像を含む。例えば、無秩序な画像のセット110は、デジタル画像と、多くのデジタル画像を含むディレクトリツリーとを含むフォルダであってもよい。この画像セット110は、コンピュータ装置105上に存在する自動画像グルーピングシステム100に入力される。
【0023】
以下で詳細に説明するように、自動画像グルーピングシステム100は、無秩序な画像セット110を処理して、各画像に関連するまたは組み込まれた、メタデータまたは情報を解析して適当なグループを抽出する。これらのグループは無秩序な画像セット110の関連づけられたサブセットであり、関連するキュー(cue)またはコレクションレコグナイザを有している。図1に示したように、画像サブセットには、画像サブセット(1)、画像サブセット(2)、から画像サブセット(N)までが含まれており、N個の画像サブセットが存在する。これらの画像サブセットは各々、関連する画像のグループを表す。
【0024】
無秩序な画像セット110が処理され画像サブセットが抽出された後で、画像サブセットを画像処理アプリケーション115によって処理することができる。例えば、画像処理アプリケーション115は、空間的にオーバラップする画像を含む画像サブセットを取得し、自動的にパノラマにステッチングすることができる。あるいは、画像処理アプリケーション115は、同一の場面を異なる露光で取り込んだ画像からなる画像サブセットを入力し、ハイダイナミックレンジ画像を生成することもできる。あるいは、画像処理アプリケーション115は、様々な他の種類の画像処理技術を使用することもできる。
【0025】
自動画像グルーピングシステム100の利点の1つは、このシステムが、画像処理アプリケーション115の処理をより迅速でより効率的なものにするように、画像処理アプリケーション115への入力を削減し絞り込むことである。例えば、無秩序な画像セット110の全体を入力する代わりに、自動画像グルーピングシステム100によって処理した後のより小さな、より絞り込まれた画像サブセットを入力し、それによって処理時間が削減され、効率が高められる。
【0026】
III.例示的動作環境
本明細書で開示する自動画像グルーピングシステムおよび方法は、コンピュータ環境およびコンピュータ装置、例えば図1に示されたコンピュータ装置105などの上で動作するように設計される。次に、本明細書で開示する自動画像グルーピングシステムおよび方法が動作するコンピュータ環境について論じる。以下の議論は、この自動画像グルーピングシステムおよび方法を実装することができる適切なコンピュータ環境についての簡潔で一般的な説明を提供することを意図したものである。
【0027】
図2は、図1に示された自動画像グルーピングシステムおよび方法を実装することができる適切なコンピュータシステム環境の一例を示したものである。コンピュータシステム環境200は適切なコンピュータ環境の一例に過ぎず、本発明の用途または機能の範囲に関するいかなる制限を示唆することを意図したものではない。また、コンピュータ環境200は、例示的動作環境200に示されたコンポーネントのいずれか1つまたはそれらの組合せに関して、何らかの依存性または要件を有するものと解釈すべきものでもない。
【0028】
自動画像グルーピングシステムおよび方法は、他の多くの汎用または専用のコンピュータシステム環境またはコンピュータシステム構成で動作可能である。この自動画像グルーピングシステムおよび方法とともに使用するのに適した周知のコンピュータシステム、環境、および/または構成の例には、これらに限られるものではないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルド、ラップトップもしくはモバイルコンピュータ、または携帯電話、PDAなどの通信装置、マルチプロセッサシステム、マイクロプロセッサベースシステム、セットトップボックス、プログラム可能な家庭用電化製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記システムまたは装置のいずれかを含む分散コンピュータ環境などが含まれる。
【0029】
自動画像グルーピングシステムおよび方法は、コンピュータによって実行される、プログラムモジュールなどのコンピュータ実行可能な命令の一般的なコンテキストで説明することができる。一般に、プログラムモジュールは、特定のタスクを実行するかまたは特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造体などを含む。この自動画像グルーピングシステムおよび方法はまた、分散コンピュータ環境においても実行することができ、その場合、各タスクは通信ネットワークを介してリンクされたリモート処理装置によって実行される。分散コンピュータ環境では、各プログラムモジュールは、ローカルおよびリモートの、メモリ記憶装置などのコンピュータ記憶媒体に配置することができる。図2を参照すると、自動画像グルーピングシステムおよび方法を実装するための例示的システムは、コンピュータ210の形で汎用コンピュータ装置を含む。コンピュータ210は、図1に示されたコンピュータ装置105の一例である。
【0030】
コンピュータ210のコンポーネントは、これらに限られるものではないが、処理装置220、システムメモリ230、および、システムメモリなど様々なシステムコンポーネントを処理装置220に結合するシステムバス221を含むことができる。システムバス221は、メモリバスもしくはメモリコントローラ、周辺バス、および様々なバスアーキテクチャのいずれかを使用するローカルバスなど、いくつかの種類のバス構造のうちの任意のものを使用することができる。限定の意味ではなく例として、このようなアーキテクチャには、ISA(Industry Standard Architecture)バス、MCA(Micro Channel Architecture)バス、EISA(Enhanced ISA)バス、VESA(Video Electronics Standards Association)ローカルバス、メザニンバスとも呼ばれるPCI(Peripheral Component Interconnect)バスなどが含まれる。
【0031】
コンピュータ210は通常、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ210によってアクセス可能な任意の使用可能媒体であってよく、揮発性および不揮発性媒体、取り外し可能および取り外し不能媒体の両方を含む。限定の意味ではなく例として、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を含むことができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータなどの情報を記憶するための任意の方法または技術で実装された、揮発性および不揮発性、取り外し可能および取り外し不能の媒体を含む。
【0032】
コンピュータ記憶媒体には、これらに限られるものではないが、RAM、ROM、EEPROM、フラッシュメモリ、または他のメモリ技術、CD−ROM、DVD(digital versatile disks)、または他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置、または他の磁気記憶装置、あるいは所望の情報を格納するために使用でき、かつコンピュータ210によってアクセス可能な他の任意の媒体が含まれる。通信媒体は通常に、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータを、搬送波や他の伝送機構などの変調されたデータ信号中に具現化するものであり、任意の情報伝達媒体を含む。
【0033】
「変調されたデータ信号」という用語は、信号中に情報を符号化するような方式で、1つまたは複数の特性が設定または変更された信号を意味することに留意されたい。限定の意味ではなく例として、通信媒体は、有線ネットワークまたは直接有線接続などの有線媒体、ならびに音響、RF、赤外線、および他の無線媒体などの無線媒体を含む。上記の任意の組合せもまたコンピュータ可読媒体の範囲に含まれるものとする。
【0034】
システムメモリ230は、ROM(読出し専用メモリ)231やRAM(ランダムアクセスメモリ)232など揮発性および/または不揮発性メモリの形のコンピュータ記憶媒体を含む。基本入出力システム(BIOS)233は、例えば起動中に、コンピュータ210内の各要素間の情報転送を支援する基本ルーチンを含み、通常はROM231に格納されている。RAM232は通常、処理装置220によって即時にアクセス可能かつ/または現在操作中である、データおよび/またはプログラムモジュールを含む。限定の意味ではなく例として、図2にはオペレーティングシステム234、アプリケーションプログラム235、他のプログラムモジュール236、およびプログラムデータ237が示されている。
【0035】
コンピュータ210はまた、他の取り外し可能/取り外し不能、揮発性/不揮発性のコンピュータ記憶媒体を含むこともできる。単に例示として、図2には取り外し不能な不揮発性磁気媒体に読み書きするハードディスクドライブ241、取り外し可能な不揮発性磁気ディスク252に読み書きする磁気ディスクドライブ251、およびCD−ROMや他の光媒体など取り外し可能な不揮発性光ディスク256に読み書きする光ディスクドライブ255が示されている。
【0036】
例示の動作環境で使用できる他の取り外し可能/取り外し不能、揮発性/不揮発性のコンピュータ記憶媒体には、これらに限られるものではないが、磁気テープカセット、フラッシュメモリカード、DVD、デジタルビデオテープ、半導体RAM、半導体ROMなどが含まれる。ハードディスクドライブ241は通常、インターフェース240などの取り外し不能メモリインターフェースを介してシステムバス221に接続され、磁気ディスクドライブ251および光ディスクドライブ255は通常、インターフェース250などの取り外し可能メモリインターフェースによってシステムバス221に接続される。
【0037】
上で論じ図2に示した各ドライブおよびそれに関連するコンピュータ記憶媒体は、コンピュータ210のためのコンピュータ可読命令、データ構造、プログラムモジュール、その他のデータの記憶を提供する。例えば図2では、ハードディスクドライブ241は、オペレーティングシステム244、アプリケーションプログラム245、他のプログラムモジュール246、およびプログラムデータ247を格納するように図示されている。これらのコンポーネントは、オペレーティングシステム234、アプリケーションプログラム235、他のプログラムモジュール236、およびプログラムデータ237と同一であっても、異なっていてもよいことに留意されたい。オペレーティングシステム244、アプリケーションプログラム245、他のプログラムモジュール246、およびプログラムデータ247は、少なくともそれらが異なるコピーであることを示すために、この図では異なる番号が付与されている。ユーザは、キーボード262、および一般にマウス、トラックボール、またはタッチパッドと呼ばれるポインティング装置261などの入力装置を介してコンピュータ210にコマンドまたは情報を入力することができる。
【0038】
他の入力装置(図示せず)として、マイクロホン、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナ、無線受信機、またはTVもしくは放送ビデオ受信機などを含むことができる。これらおよび他の入力装置は、システムバス221に結合されたユーザ入力インターフェース260を介して処理装置220に接続されることが多いが、例えばパラレルポート、ゲームポート、またはUSB(universal serial bus)など、他のインターフェースやバス構造によって接続することもできる。モニタ291または他の種類の表示装置もまた、ビデオインターフェース290などのインターフェースを介してシステムバス221に接続される。モニタ291に加え、コンピュータは、スピーカ297やプリンタ296など、他の周辺出力装置を含むこともできるが、これらの装置は出力周辺装置インターフェース295を介して接続することができる。
【0039】
コンピュータ210は、リモートコンピュータ280など1つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク環境で動作させることができる。リモートコンピュータ280は、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピア装置、または他の共通ネットワークノードなどであってもよい。また、図2にはメモリ記憶装置281だけが示されているが、リモートコンピュータ280は通常、コンピュータ210に関連して上で説明した諸要素の多くまたはすべてを含む。図2に示された論理接続は、ローカルエリアネットワーク(LAN)271およびワイドエリアネットワーク(WAN)273を含むが、他のネットワークを含むこともできる。このようなネットワーク環境は、オフィス、企業規模のコンピュータネットワーク、イントラネット、インターネットなどにおいて一般的なものである。
【0040】
LANネットワーク環境で使用されるときには、コンピュータ210はネットワークインターフェースまたはアダプタ270を介してLAN271に接続される。WANネットワーク環境で使用される場合は、コンピュータ210は通常、インターネットなどのWAN273を介して通信を確立するためのモデム272または他の手段を含む。モデム272は内蔵でも外付けでもよいが、ユーザ入力インターフェース260または他の適切な機構を介してシステムバス221に接続することができる。ネットワーク環境では、コンピュータ210に関連して示されたプログラムモジュールまたはその一部をリモートのメモリ記憶装置に格納することができる。限定の意味ではなく例として、図2では、リモートのアプリケーションプログラム285はメモリ装置281上に存在するように図示されている。図示のネットワーク接続は例示的なものであり、コンピュータ間の通信リンクを確立する他の手段を使用できることが理解されよう。
【0041】
IV.システムコンポーネント
図3は、図1に示された自動画像グルーピングシステム100の各コンポーネントを示す概略構成図である。自動画像グルーピングシステム100は無秩序な画像セット110を入力し、そのセット110の各画像を処理し、検証された画像サブセット120を出力する。検証された画像サブセット120には、無秩序な画像セット110からの関連づけられた画像のグループが含まれる。以下で詳細に説明するように、これらの関係は特定の判断基準またはコレクションレコグナイザに基づくものである。
【0042】
自動画像グルーピングシステム100は、無秩序な画像セット110に関する処理を行ういくつかのモジュールを含む。詳細には、自動画像グルーピングシステム100は、無秩序な画像セット110内の各画像に対応するメタデータを解析するメタデータ解析モジュール300、メタデータ解析によって生成された可能な画像サブセット310、および可能な画像サブセットのグルーピングを検証し検証された画像サブセット120を出力する検証モジュール320を含む。
【0043】
メタデータ解析モジュール300は、コレクションレコグナイザ選択モジュール330、およびメタデータリレーションモジュール340を含む。コレクションレコグナイザ選択モジュール330は、メタデータ解析で使用されるキューまたはコレクションレコグナイザを決定する。これらのコレクションレコグナイザは、無秩序な画像セット110をグルーピングするために使用される判断基準である。メタデータリレーションモジュール340はコレクションレコグナイザを入力し、それらを使用して各画像を解析する。この解析に基づいて、メタデータリレーションモジュール340は関連する画像のグループを見つけ出す。
【0044】
メタデータ解析モジュール300の出力は、可能な画像サブセット310である。これらは検証モジュール320への入力であり、検証モジュール320は全画素解析を実行して画像間のオーバラップの種類および量を決定する。検証モジュール320からの出力は検証された画像サブセット120である。
【0045】
V.動作概要
次に、図1および図3に示された自動画像グルーピングシステム100およびそのシステムで使用される方法の動作について論じる。図4は、図1および図3に示された自動画像グルーピングシステム100および方法の概略の動作を示す概略流れ図である。この方法は、無秩序な画像セットを入力することによって始まる(ボックス400)。無秩序な画像セットは、組織化されておらず特定の順序またはグルーピングを有していない複数の画像を含む。次に、この方法は、無秩序な画像セット内の各画像に関連付けられたメタデータを検査する(ボックス410)。通常このメタデータは各画像に組み込まれており、画像ファイルをオープンすることなしに読み出すことができる。
【0046】
次に、この方法は、関連する画像のグループを作成し、可能な画像サブセットを出力する(ボックス420)。これらの可能な画像サブセットは、無秩序な画像セット内の画像の少なくとも一部を含む。可能な画像サブセットは、類似したメタデータを有するグループの画像に基づいて作成される。次に、可能な画像サブセットが解析され検証されて、さらに各グループに分類される(ボックス430)。最後に、関連する画像を含む検証された画像サブセットが出力される(ボックス440)。
【0047】
VI.動作詳細
次に、図1、3、および4の自動画像グルーピングシステム100および方法の動作詳細について論じる。図5は、図4に示された自動画像グルーピング方法をさらに詳細に示す流れ図である。具体的には、1つまたは複数のキューまたはコレクションレコグナイザが、画像グループまたはサブセットを決定する際に使用するために選択される(ボックス500)。コレクションレコグナイザは、画像が関連しているかどうかを判定するために使用される判断基準である。
【0048】
1つの可能なコレクションレコグナイザには、各画像が時間的に比較的接近して撮影されたことを意味する時間的近接性が含まれる。このレコグナイザは、大幅に異なる時間、例えば数時間または数日離れて撮影された同一場面の画像を無視する。他の可能なコレクションレコグナイザには、焦点距離が含まれる。したがって、類似した焦点距離を有する画像は関連していると見なされる。人物の広角ショットが撮影され、次いで顔をクローズアップするためにズームインされる場合もあり得るが、これはどちらかと言えばあまり一般的なケースではない。最も典型的なケースは、カメラの焦点距離(またはズーム)が変更されないケースである。他の可能なコレクションレコグナイザは、地理的位置である。したがって、類似の地理的位置で撮影された画像は関連していると見なされる。ある種のカメラは、地理的位置メタデータを備える。この地理的位置メタデータは撮影者が地球上のどの位置に居るのかを教えるGPSと、どの方角に向けて写真が撮影されたかを指示する磁針方位角とを使用して位置を指示する。サムネイル画像は他の可能なキュー(potential cue)である。サムネイル画像を使用して色に基づく類似性を検査することができる。サムネイル画像は画像ファイルに内蔵することもできるし、(例えば、本件特許出願人のWindows(登録商標)の)外部アプリケーションによって計算することもできる。
【0049】
これらのコレクションレコグナイザは、画像サブセットを生成するために使用することができる。コレクションレコグナイザとは、選択的に使用できる判断基準のセットである。これらの判断基準は組み合わせること、適合させることが可能であり、それらを使用して様々なカスタマイズされたコレクションレコグナイザを作成し、関連する画像からなる様々なサブセットを生成することができる。コレクションレコグナイザは関連する画像の集りの存在を認識する。どのコレクションレコグナイザ(またはキュー)が使用されるかに応じて、関連する画像の集りは異なるものになり、それらをカスタマイズすることができる。
【0050】
次に無秩序な画像セット内の各画像に関連付けられたメタデータがコレクションレコグナイザを使用して解析される(ボックス510)。画像はユーザによって指定されたディレクトリによって入力することができる。あるいは、無秩序な画像セットをダウンロードすることもできる。画像をオープンして画素を読み出す前に、自動画像グルーピング方法は各画像のメタデータを検査する。一般に、現在のデジタルカメラは、交換可能な画像ファイル(EXIF)として各画像とともに画像処理値を格納する。EXIFは、時間情報、シャッタ速度、絞りサイズ、ISOなど、画像に関する情報またはメタデータを符号化するために最も広く使用されている標準規格である。これらの情報を含むEXIFタグが各画像に添付される。ある画像に関連するEXIFに含まれるメタデータは、その画像を実際にオープンすることなく読み出すことができる。
【0051】
次に、可能な画像サブセットが作成される(ボックス520)。これらの可能な画像サブセットは、類似したコレクションレコグナイザを有する画像のグループを含む。この方法の次の部分はオーバラップ検出ステージである。可能な画像サブセットが生成された後で、ペアワイズ技術を使用して可能な画像サブセットを解析し検証する(ボックス530)。ペアワイズ技術は画像間のオーバラップ関係をロバストな方法で探す。例えば、(人物が動き回るなど)画像間の任意の動きは、ペアワイズ技術を使用することによって補正される。
【0052】
可能な画像サブセットを解析し検証するために、いくつかの異なる種類のペアワイズ技術を使用することができる。例えば、使用可能な1つの技術がM.BrownおよびD.G.Loweの論文(非特許文献4)に記載されている。BrownおよびLoweは、可能な画像サブセット中の各画像が実際にオーバラップしているかどうかを検証するために使用することができる技術に関して記載している。この技術は画像を検査し、特徴に基づくペアワイズの比較を実施して、どのくらい画像がオーバラップしているかを判断する。このペアワイズのオーバラップからパノラマが生成される。
【0053】
BrownおよびLoweの技術の代替手段には、R.SzeliskiおよびM.Brownによる技術がある。この技術は、MOPS(Multi−Scale Oriented Patches)技術とも呼ばれている。他の代替手段が、F.SchaffalitzkyおよびA.Zissermanによる上記の非特許文献2に記載されている。SchaffalitzkyおよびZissermanの技術は、特徴を使用して画像間のオーバラップを判断する。SchaffalitzkyおよびZissermanの技術を使用すると、オーバラップしているが全く同じ位置から撮影されたものではない(すなわち、異なる視点から撮影された)画像の集りを見つけることができる。
【0054】
可能な画像サブセットはまた、「画像スタック」として知られている。この用語は、M.Cohen、A.Colburn、およびS.Druckerによる非特許文献5で使用されている。画像スタックとは、画像をひとまとめにした場合にそれらが何らかの意味を持つように関連づけられた(または空間的にオーバラップする)画像の集りである。検証プロセスは1つの可能な画像サブセット(または画像スタック)をいくつかのスタックに分割することができる。あるいは、検証プロセスは画像スタックの全体を拒絶することもできる。検証プロセスは実際に画像ファイルをオープンし、画素の外観(appearance)を詳細に解析して真のオーバラップが存在するかどうかを判定する。オーバラップが存在する場合にはその種類を判別する。
【0055】
次に、可能な画像サブセットがパノラマか、それとも「真の」画像スタックかについての判定が行われる(ボックス540)。「真の画像スタック」という用語は、カメラの動きがほとんどない場合の画像スタックを定義するために使用される。このことは画像スタックが多重露光を使用して取り込まれたか、または繰り返しのグループショットであったことを意味する。一方、パノラマは大きな動きが存在するときに生ずる。なぜならば、撮影者がより大きな空間領域を取り込もうとするからである。
【0056】
ペアワイズ技術は1つまたは複数の検証された画像サブセットを出力する(ボックス550)。好ましい実施形態では、この方法は検証された画像サブセットのうちの最大のものを出力するとともに、どの可能な画像サブセットが使用されなかったかをユーザに通知する。代替実施形態では、様々なコレクションレコグナイザ(例えば、時間的近接性や焦点距離)によって提案された初期グループを分離することができ、次いでどのグループが使用されなかったかをユーザに通知することができる。
【0057】
自動画像グルーピング方法はパノラマと真のスタックを区別する。なぜならば、ユーザは一般にそれらを別々に処理しようとするからである。したがって、自動画像グルーピング方法は、検証された画像サブセットがパノラマであるのか、それとも真の画像スタックであるのかに基づいて、それらに対する画像処理技術を選択するステップを含む(ボックス560)。検証された画像サブセットがパノラマである場合は、いくつかの使用可能な画像ステッチング技術の任意の1つを使用して画像をステッチングし、パノラマを生成することができる。検証された画像サブセットが真のスタックである場合は、スタックの種類に応じて、最適画像選択技術または画像マージ技術を使用してそのサブセットを処理することができる。検証された画像サブセットが多重露光スタックである場合は、上述の同時係属特許出願である米国特許出願第10/623033号明細書に記載されたハイダイナミックレンジ技術を使用して処理することができる。検証された画像サブセットが類似した露光を有している場合は、上述のAgarwalaらによる非特許文献1に記載された技術を使用してそれを処理することができる。
【0058】
図6は、図3に示されたメタデータ解析モジュール300の動作を示す詳細な流れ図である。詳細には、無秩序な画像のセット110がメタデータ解析モジュール300に入力される。通常、モジュール300が画像ファイルをオープンすることはなく、その代わりにその画像ファイルに関連付けられたメタデータを検査する。ただし、最初に、検査すべきメタデータを表すコレクションレコグナイザを選択する(ボックス600)。このメタデータは自動画像グルーピング方法によって自動的に選択することもできるし、ユーザによって選択することもできる。次に、選択されたコレクションレコグナイザに対応するメタデータが、無秩序な画像セット内の各画像に対して検査される(ボックス610)。各画像は、それらが類似したコレクションレコグナイザを有しているかどうかに基づいてソートされる(ボックス620)。次に、これらの画像グループを含む画像サブセットが生成される。この可能な画像サブセット140が出力され、先に概説したようにさらに処理される。
【0059】
本明細書で開示した自動画像グルーピングシステム100および方法をより完全に理解するために、例示的実施例の動作詳細を提示する。この実施例が、自動画像グルーピングシステムおよび方法を実装することができる単なる一方法に過ぎないことに留意されたい。
【0060】
この実施例における目標は、フォルダまたはフォルダツリーを指定し、自動画像グルーピングシステムおよび方法にすべての画像を検査させ、関連する写真を自動的にパノラマに合成することができるようにすることである。すべてのデジタル写真を画像ステッチングアルゴリズムに一度に投入することは、遅く非効率な解決策になるはずである。この自動画像グルーピングシステムおよび方法は、画像の内部に既に組み込まれているメタデータを検査して適当なパノラマセットを抽出し、それをより高価な画像ステッチングアルゴリズムによってさらに処理することによって速度および効率を向上する。このことにより、デジタル写真の任意のセットから迅速かつ自動的にパノラマを認識し作成することが可能になる。
【0061】
この自動画像グルーピングシステムおよび方法は、Windows(登録商標)シェルまたはDigital Image Suiteライブラリで使用してフォルダビューレベルでのパノラマ発見を容易にすることができる。このシステムおよび方法はまた、画像取り込みストーリ(story)の一部とすることもでき、ユーザが装置からデスクトップにユーザのデジタル画像をダウンロードする際にパノラマを自動的に検出することもできる。
【0062】
この実施例での処理は、ディレクトリまたはフォルダの指定により開始される。このフォルダはデジタル画像と、より多くのデジタル画像を含むディレクトリツリーの両方を含む。この自動画像グルーピングシステムおよび方法は、最初のレベルユニットとして各フォルダを取得する。ある単一のフォルダ内のデジタル画像は、(EXIFタグとして)抽出されたそれらのメタデータ値を有しており、各画像はそれらがもともと撮影された日付および時間(ExifDtOrig要素)によってソートされる。隣接する写真に対するペアワイズの時間比較が実施され、互いに時間的に比較的接近して撮影された画像を含む「ファイルセット」が生成される。実際のパノラマ画像の様々な存在するセットが検査され、実際に使用されるカットオフ値が決定される。この実施例では、カットオフ値は30秒として実装されている。
【0063】
グルーピングのために他のキューを使用することもできる。例えば、焦点距離(ExifFocalLength)比較をさらに実装して、(現在は5%変化として実装されているが)隣接画像間の焦点距離が大幅に変化した場合にはさらに、時間的に接近した写真グループを破棄する。メタデータ比較によって作成された、結果として得られたファイルセットは「可能なパノラマ(possible panoramas)」と見なされ、続いて画像ステッチングアルゴリズムに渡される。ステッチングアルゴリズムは所与のファイルセット内で発見された最長の単一パノラマを返す。所与のファイルセット内に複数のパノラマが存在することが可能であり、したがって画像ステッチングアルゴリズムがパノラマを返した場合は、発見されたパノラマ画像の前後に存在する未使用の写真に対して画像セットが再検査される。どちらかの端部に複数の画像が実際に存在する場合は、それらの画像はそれ自体の個別のファイルセット内に置かれ、さらにパノラマを発見するために画像ステッチングアルゴリズムを再実行する。図7は、例示的実施例において、自動画像グルーピングシステムおよび方法が画像ステッチングを実行中であることをユーザに通知するために使用されるユーザインターフェースを示すものである。
【0064】
ステッチ画像アルゴリズムは真のパノラマだけでなく、同一対象の複数の画像である画像スタックも検出する。例えば、画像は露光に関してまとめられることもある。これらの結果は、ハイダイナミックレンジ画像や他のデジタル効果、例えば連続動作の「ムービークリップ」などを作成するためにも有用である。この自動画像グルーピングシステムおよび方法は、このような写真セットならびに真のパノラマを検出する。このシステムおよび方法は、結果として得られるパノラマのどのくらいが各合成する画像でカバーされるかを調べることによって両者の違いを見分けることができる。すべての画像が結果の画像の大きな部分を占める場合は、それらは共に画像スタックを作る。各画像が全体の小さな部分しか占めない場合は、結果の画像は真のパノラマになる。
【0065】
この実施例においては、自動画像グルーピングシステムおよび方法は、パノラマを発見するためのサムネイルを作成し、それらを一覧画面に表示して、どの画像がユーザが自分のハードドライブに取り込み保存することを望む画像かを選択できるようにする。この自動画像グルーピングシステムおよび方法はまた、パノラマ発見結果をデータベース様のファイルに維持して、そのファイルをユーザが後で照会できるようにし、自動画像グルーピングシステムおよび方法を再実行する必要なしに、最終画像にアクセスし処理することができるようにする。
【0066】
本発明に関する前述の説明は、例示および説明のために提示されたものである。前述の説明は、網羅的であることまたは本発明を開示した形そのものに限定することを意図したものではない。上記の教示に照らして、多くの修正形態および変形形態が実施可能である。本発明の範囲は、本発明に関するこの詳細な説明によって限定されるのではなく、添付の特許請求の範囲によって限定されることが意図されている。
【図面の簡単な説明】
【0067】
【図1】本明細書で開示される自動画像グルーピングシステムおよび方法の一実装例を示す構成図である。
【図2】図1に示された自動画像グルーピングシステムおよび方法を実装することができる適切なコンピュータシステム環境の一例を示す図である。
【図3】図1に示された自動画像グルーピングシステムの各コンポーネントを示す概略構成図である。
【図4】図1および3に示された自動画像グルーピングシステムおよび方法の概略の動作を示す概略流れ図である。
【図5】図4に示された自動画像グルーピング方法をさらに詳細に示す流れ図である。
【図6】図3に示されたメタデータ解析モジュールの動作を示す詳細な流れ図である。
【図7】自動画像グルーピングシステムおよび方法が画像ステッチングを実施していることをユーザに通知するための一実施例で使用されるユーザインターフェースを示す図である。
【符号の説明】
【0068】
100 自動画像グルーピングシステム
105 コンピュータ装置
110 無秩序な画像セット
115 画像処理アプリケーション
100 自動画像グルーピングシステム
110 無秩序な画像セット
120 検証された画像サブセット
300 メタデータ解析モジュール
310 可能な画像サブセット
320 検証モジュール
330 コレクションレコグナイザ選択モジュール
340 メタデータリレーションモジュール

【特許請求の範囲】
【請求項1】
関連する画像を自動的にグルーピングする方法であって、
無秩序で組織化されていない画像の集りを含む無秩序な画像セットを入力するステップと、
前記無秩序な画像セット内の各画像に関連付けられたメタデータを解析して前記関連する画像を決定するステップと、
前記メタデータ解析の結果に基づいて、前記関連する画像を含む可能な画像サブセットを生成するステップと
を備えることを特徴とする方法。
【請求項2】
前記可能な画像サブセットに含まれる諸画像の画素を検査することによって前記可能な画像サブセットを解析し検証するステップをさらに備えることを特徴とする請求項1に記載の方法。
【請求項3】
ペアワイズ技術を使用して前記可能な画像サブセットを解析し検証するステップをさらに備えることを特徴とする請求項2に記載の方法。
【請求項4】
前記可能な画像サブセットがパノラマか、それとも真の画像スタックかを判定するステップをさらに備えることを特徴とする請求項2に記載の方法。
【請求項5】
前記可能な画像サブセットを処理するための画像処理技術を、前記可能な画像サブセットがパノラマか、それとも真の画像スタックかに基づいて選択するステップをさらに備えることを特徴とする請求項4に記載の方法。
【請求項6】
前記可能な画像サブセットを生成するための判断基準として、少なくとも1つのコレクションレコグナイザを選択するステップをさらに備えることを特徴とする請求項1に記載の方法。
【請求項7】
前記コレクションレコグナイザは、(a)類似の時間的近接性、(b)類似の焦点距離、(c)類似の地理的位置、(d)サムネイル画像、の少なくとも1つであることを特徴とする請求項6に記載の方法。
【請求項8】
各画像に関連付けられたメタデータを解析するステップは、各画像に関連付けられた交換可能な画像ファイル(EXIF)中の前記メタデータを、前記画像をオープンすることなく取得するステップをさらに備えることを特徴とする請求項1に記載の方法。
【請求項9】
請求項1に記載された前記方法を実施するためのコンピュータ実行可能な命令を有することを特徴とするコンピュータ可読媒体。
【請求項10】
無秩序な画像セット内の各画像に関連付けられたメタデータを自動的に検査して、どの画像が関連しているのかを決定するコンピュータ実装されたプロセスであって、
どのメタデータを検査すべきかの判断基準であるコレクションレコグナイザを選択する選択ステップであって、前記コレクションレコグナイザが時間的近接性および焦点距離を含む選択ステップと、
前記コレクションレコグナイザに基づいて前記無秩序な画像セット内の各画像の前記メタデータを解析するメタデータ解析ステップと、
類似したコレクションレコグナイザに基づいて各画像をグルーピングして、関連する画像のグループを含む可能な画像サブセットを生成する画像グルーピングステップと、
画像処理技術を使用して前記可能な画像サブセットを処理する画像処理ステップと
を備えることを特徴とするコンピュータ実装されたプロセス。
【請求項11】
前記コレクションレコグナイザは、(a)サムネイル画像を用いたカラーオーバラップと、(b)画像が取り込まれた地球上の位置および前記画像が向く方角を含む地理的位置との内の少なくとも一方を含むことを特徴とする請求項10に記載のコンピュータ実装されたプロセス。
【請求項12】
各画像の前記メタデータを、前記画像をオープンしてその画素を検査することなしに解析するステップをさらに備えることを特徴とする請求項10に記載のコンピュータ実装されたプロセス。
【請求項13】
前記可能な画像サブセットの各画像をオープンし、各画像内の画素の画素解析を実施するペアワイズ技術を使用して前記可能な画像サブセットを解析し検証するステップをさらに備えることを特徴とする請求項12に記載のコンピュータ実装されたプロセス。
【請求項14】
前記可能な画像サブセットの前記画像がパノラマか、それとも真の画像スタックかを判定するステップをさらに備えることを特徴とする請求項13に記載のコンピュータ実装されたプロセス。
【請求項15】
前記可能な画像サブセットの前記画像がパノラマか、それとも真の画像スタックかに基づいて、前記可能な画像サブセットを処理するための前記画像処理技術を選択するステップをさらに備えることを特徴とする請求項14に記載のコンピュータ実装されたプロセス。
【請求項16】
関連する画像のグループを発見する自動画像グルーピングシステムであって、
複数の組織化されていないデジタル画像を含む無秩序な画像セットと、
前記複数の各デジタル画像に関連付けられたメタデータを解析するメタデータ解析モジュールと、
前記複数のデジタル画像のどれが関連しているのかをコレクションレコグナイザに基づいて決定する、前記メタデータ解析モジュール上に配置されたメタデータリレーションモジュールであって、前記コレクションレコグナイザはどのメタデータを解析すべきかを指示する判断基準となっているメタデータリレーションモジュールと、
前記関連する画像のグループを含む可能な画像サブセットと
を備えることを特徴とする自動画像グルーピングシステム。
【請求項17】
前記メタデータリレーションモジュールがどのコレクションレコグナイザを使用すべきかを決定するコレクションレコグナイザ選択モジュールをさらに備えることを特徴とする請求項16に記載の自動画像グルーピングシステム。
【請求項18】
ペアワイズ技術を使用して前記可能な画像サブセットを解析し検証する検証モジュールをさらに備えることを特徴とする請求項17に記載の自動画像グルーピングシステム。
【請求項19】
前記可能な画像サブセットを形成するためにどの画像グループが使用され、どの画像が使用されなかったかを前記システムのユーザに提示するための、表示装置上に表示されるユーザインターフェースをさらに備えることを特徴とする請求項18に記載の自動画像グルーピングシステム。
【請求項20】
前記可能な画像サブセットがパノラマもしくは真の画像スタックを形成する画像を含むかどうかを前記ユーザに通知するための、前記表示装置上に表示されるユーザインターフェースをさらに備えることを特徴とする請求項19に記載の自動画像グルーピングシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2006−293996(P2006−293996A)
【公開日】平成18年10月26日(2006.10.26)
【国際特許分類】
【外国語出願】
【出願番号】特願2006−47378(P2006−47378)
【出願日】平成18年2月23日(2006.2.23)
【出願人】(500046438)マイクロソフト コーポレーション (3,165)
【Fターム(参考)】