(57)【特許請求の範囲】
【請求項１】
デバイスであって、
カメラと、
命令を記憶しているメモリと、
１つ以上のプロセッサと、
を有し、
前記命令が前記１つ以上のプロセッサによって実行されると、前記命令は、前記１つ以上のプロセッサに、
前記カメラによって捕捉された複数の画像から画像シーケンスを生成する動作と、
前記複数の画像から生成された前記画像シーケンスに対する参照を含むメタデータを、前記複数の画像から選択されたプライマリ画像と関連付ける動作と、
当該デバイスが特定の機能を有しているかどうかに少なくとも部分的に基づき、前記複数の画像に関連する静止画像又は前記複数の画像から生成された前記画像シーケンスを、ディスプレイ上の仮想要素において表示させる動作と、
を実行させ、
前記画像シーケンスは、当該デバイスが前記特定の機能を有していることに少なくとも部分的に基づき、前記画像シーケンスにアクセスするように前記プライマリ画像と関連付けられた前記メタデータにおける前記参照を使用することにより、前記仮想要素において表示され、
前記静止画像は、当該デバイスが前記特定の機能を有していないことに少なくとも部分的に基づき、前記仮想要素において表示される、
デバイス。
【請求項２】
前記命令が前記１つ以上のプロセッサによって実行されると、前記命令は、前記１つ以上のプロセッサに、当該デバイスのデフォルト設定に従って、特定の期間の経過に応答して夫々のメタデータを削除する動作を更に実行させる、
請求項１に記載のデバイス。
【請求項３】
前記命令が前記１つ以上のプロセッサによって実行されると、前記命令は、前記１つ以上のプロセッサに、指定されたメタデータによって参照される前記画像シーケンスが、対応する前記静止画像の代わりに表示されるよう選択されたことに少なくとも部分的に基づき、前記指定されたメタデータを削除しないことで前記デフォルト設定をオーバーライドする動作を更に実行させる、
請求項２に記載のデバイス。
【請求項４】
前記命令が前記１つ以上のプロセッサによって実行されると、前記命令は、前記１つ以上のプロセッサに、当該デバイスに対するジェスチャを検出する動作を更に実行させ、
表示されるよう選択される表現は、前記複数の画像の中の前記プライマリ画像であるよう設定され、
前記命令が前記１つ以上のプロセッサによって実行されると、前記命令は、前記１つ以上のプロセッサに、前記ジェスチャの検出に応答して、前記複数の画像の中の前記プライマリ画像から、前記複数の画像から生成された前記画像シーケンスへ変える動作を更に実行させる、
請求項１に記載のデバイス。
【請求項５】
メタデータに基づく写真アニメーション及びメタデータに基づく映像アニメーションのうちの少なくとも１つを提供する方法であって、
プロセッサベースのシステムのプロセッサが、カメラによって捕捉された複数の画像から画像シーケンスを生成するステップと、
前記プロセッサが、前記複数の画像から生成された前記画像シーケンスに対する参照を含むメタデータを、前記複数の画像から選択されたプライマリ画像と関連付けるステップと、
前記プロセッサが、前記プロセッサベースのシステムが特定の機能を有しているかどうかに少なくとも部分的に基づき、前記複数の画像に関連する静止画像又は前記複数の画像から生成された前記画像シーケンスを、ディスプレイ上の仮想要素において表示させるステップと
を有し、
前記画像シーケンスは、前記プロセッサベースのシステムが前記特定の機能を有していることに少なくとも部分的に基づき、前記画像シーケンスにアクセスするように前記プライマリ画像と関連付けられた前記メタデータにおける前記参照を使用することにより、前記仮想要素において表示され、
前記静止画像は、前記プロセッサベースのシステムが前記特定の機能を有していないことに少なくとも部分的に基づき、前記仮想要素において表示される、
方法。
【請求項６】
前記プロセッサが、１つ以上の特定の基準のうちの少なくとも１つが満足されない限りは、前記カメラを含むデバイスのデフォルト設定に従って、特定の期間の経過に応答して夫々のメタデータを削除するステップ
を更に有する請求項５に記載の方法。
【請求項７】
前記１つ以上の特定の基準は、各々のメタデータによって参照される前記画像シーケンスが、対応する前記静止画像に代えて表示されるよう選択される基準を含む、
請求項６に記載の方法。
【請求項８】
前記プロセッサが、前記特定の期間に関して前記カメラを含む前記デバイスのユーザからの応答を求める問い合わせ要素を含むユーザインターフェイスを提供するステップと、
前記プロセッサが、前記応答に基づき、前記特定の期間を定めるステップと
を更に有する請求項６に記載の方法。
【請求項９】
前記プロセッサが、前記カメラを含むデバイスのユーザが前記画像シーケンスにより表される指定されたプロファイルを選択することを可能にするユーザインターフェイスを提供するステップと、
前記プロセッサが、前記指定されたプロファイルの選択に応答して、前記指定されたプロファイルを表すために前記画像シーケンスを使用するステップと
を更に有する請求項５に記載の方法。
【請求項１０】
プロセッサベースのシステムがメタデータに基づく写真アニメーション及びメタデータに基づく映像アニメーションのうちの少なくとも１つを提供することを可能にするためのプログラムであって、当該プログラムは、前記プロセッサベースのシステムのプロセッサに、
カメラによって捕捉された複数の画像から画像シーケンスを生成する動作と、
前記複数の画像から生成された前記画像シーケンスに対する参照を含むメタデータを、前記複数の画像から選択されたプライマリ画像と関連付ける動作と、
前記プロセッサベースのシステムが特定の機能を有しているかどうかに少なくとも部分的に基づき、前記複数の画像に関連する静止画像又は前記複数の画像から生成された前記画像シーケンスを、ディスプレイ上の仮想要素において表示させる動作と
を実行させ、
前記画像シーケンスは、前記プロセッサベースのシステムが前記特定の機能を有していることに少なくとも部分的に基づき、前記画像シーケンスにアクセスするように前記プライマリ画像と関連付けられた前記メタデータにおける前記参照を使用することにより、前記仮想要素において表示され、
前記静止画像は、前記プロセッサベースのシステムが前記特定の機能を有していないことに少なくとも部分的に基づき、前記仮想要素において表示される、
プログラム。
【発明の詳細な説明】
【背景技術】
【０００１】
フォトグラフィの分野では、アニメーション化された写真及び映像に関して、新しいトレンドが出現している。写真は、ただ１つのシングルショットよりも多くなりつつあり、多くの場合で、複数のフレームから作られる。そのようなものとして、捕捉中にシングルインスタントよりも多くを捕捉する動きがある。これは、Ｃｉｎｅｍａｇｒａｐｈ及びＣｉｎｅｍａｇｒａｍ（登録商標）のようなアプリケーションの復興において見られ得る。それは、写真と映像の間のハイブリッドと時々呼ばれる、アニメーション化された画像交換フォーマット（ＧＩＦ；Graphics  Interchange  Format）ファイルをユーザが作るのを助ける。アニメーション化されたＧＩＦファイルは、ループ映像としてしばしば構成される。ループ映像は、映像が終了すると自動的に再生されるように、ループにおいて構成される複数の静止画像又は映像の複数のセクションから作られた映像である。Ｖｉｎｅ  Ｌａｂｓ，Ｉｎｃ．は、ユーザがそのようなループ映像を作成することを可能にするモバイルアプリケーションをリリースした企業である。Ｅｃｈｏｇｒａｐｈは、ユーザがスチル写真に動きを挿入することを可能にするためにアニメーション化ＧＩＦ技術を使用するアプリケーションである。マイクロソフト社によって開発されたＢｌｉｎｋも、ユーザがスチル写真に動きを挿入することを可能にする。
【発明の概要】
【０００２】
とりわけ、メタデータに基づく写真及び／又は映像アニメーションを提供するために、様々なアプローチが本願で記載される。例えば、シーンの複数の画像（例えば、静止画像）は画像シーケンスにまとめられてよい。画像は、シーンを表すよう複数の画像から選択されてよい。そのような画像はプライマリ画像と呼ばれてよい。メタデータはプライマリ画像と関連付けられてよい。メタデータは、画像シーケンスへの参照を含んでよい。デバイスが写真及び／又は映像アニメーションをサポートする場合には、そのデバイスは、画像シーケンスにアクセスするためにメタデータにおける参照を使用し、そして、シーンを表すために画像シーケンスを使用してよい。デバイスが写真及び／又は映像アニメーションをサポートしない場合には、そのデバイスは、シーンを表すためにプライマリ画像（又は他の画像）を使用してよい。
【０００３】
システム及びデバイスの例が記載される。第１の例となるデバイスは、カメラ、制御ロジック、画像シーケンスロジック、及びメタデータロジックを含む。カメラは、選択された場合に１つ以上の画像の捕捉を開始するユーザエレメントを含む。制御ロジックは、ユーザエレメントの夫々の選択に応答して複数の画像を捕捉するようにカメラを制御するよう構成される。画像シーケンスロジックは、夫々の複数の画像から画像シーケンスを生成するよう構成される。メタデータロジックは、夫々の複数の画像について、メタデータを、当該複数の画像から選択されたプライマリ画像と関連付けるよう構成される。夫々の複数の画像について、メタデータは、当該複数の画像から生成される画像シーケンスに対する参照を含む。
【０００４】
第２の例となるデバイスは、表示ロジック、インターフェイスロジック、及びジェスチャロジックを含む。表示ロジックは、プライマリ画像を受け取るよう構成される。各プライマリ画像は、当該プライマリ画像を含む各々の複数の画像に基づく各々の画像シーケンスへの参照を含むメタデータを有する。インターフェイスロジックは、仮想要素を含むユーザインターフェイスを提供するよう構成される。各仮想要素は、各々のプライマリ画像に対応するとともに、該各々のプライマリ画像のメタデータにおいて参照される各々の画像シーケンスに対応する。表示ロジックは、各仮想要素について、当該仮想要素において該仮想要素に対応するプライマリ画像を表示するよう構成される。ジェスチャロジックは、指定された仮想要素に対するジェスチャを検出するよう構成される。表示ロジックは、指定された仮想要素に対してジェスチャが検出されたことに応答して、指定された仮想要素において該指定された仮想要素に対応するプライマリ画像を表示するのではなく、指定された仮想要素において該指定された仮想要素に対応する画像シーケンスを表示するよう構成される。
【０００５】
例となるシステムは、ストア、識別ロジック、機能ロジック、及び供給ロジックを含む。ストアは、第１デバイスからネットワークを介してプライマリ画像を受け取るよう構成される。プライマリ画像は、プライマリ画像を含む複数の画像に基づく指定された画像シーケンスへの参照を含むメタデータを有する。プライマリ画像は、第１ユーザのプロファイルを表す。ストアは、第１デバイスとは異なる第２デバイスからネットワークを介してブートアップインジケータを受け取るよう更に構成される。ブートアップインジケータは、第２デバイスがブートアッププロセスを実行中であることを示す。識別ロジックは、第２デバイスに関連するコンタクトのリストにおいて第１ユーザが識別されることを決定するよう構成される。機能ロジックは、第２デバイスが画像シーケンスによりコンタクトを表すことが可能であるかどうかを判定するよう構成される。第２デバイスが画像シーケンスによりコンタクトを表すことが可能である場合には、供給ロジックは、指定された画像シーケンスを参照に基づき取り出し、第１ユーザのプロファイルを表すよう前記指定された画像シーケンスを第２デバイスへ与える。第２デバイスが画像シーケンスによりコンタクトを表すことが可能でない場合には、供給ロジックは、第１ユーザのプロファイルを表すよう、指定された画像シーケンスに代えてプライマリ画像を第２デバイスへ与える。
【０００６】
方法の例も記載される。第１の例となる方法において、ユーザエレメントを備えたカメラは、ユーザエレメントの夫々の選択に応答して複数の画像を捕捉するよう制御される。画像シーケンスは、夫々の複数の画像から生成される。夫々の複数の画像について、メタデータは、当該複数の画像から選択されたプライマリ画像と関連付けられる。各メタデータは、各々の複数の画像から生成される画像シーケンスへの参照を含む。
【０００７】
第２の例となる方法において、プライマリ画像が受け取られる。各プライマリ画像は、当該プライマリ画像を含む各々の複数の画像に基づく各々の画像シーケンスへの参照を含むメタデータを有する。仮想要素を含むユーザインターフェイスが提供される。各仮想要素は、各々のプライマリ画像に対応するとともに、該各々のプライマリ画像のメタデータにおいて参照される複数の画像シーケンスの中の各々の画像シーケンスに対応する。各仮想要素について、当該仮想要素に対応するプライマリ画像は、当該仮想要素において表示される。指定された仮想要素に対してジェスチャが検出される。指定された仮想要素に対するジェスチャの検出に応答して、指定された仮想要素に対応するプライマリ画像ではなく、指定された仮想要素に対応する画像シーケンスが、指定された仮想要素において表示される。
【０００８】
第３の例となる方法において、プライマリ画像は、第１デバイスからネットワークを介してストアで受け取られる。プライマリ画像は、プライマリ画像を含む複数の画像に基づく指定された画像シーケンスへの参照を含むメタデータを有する。プライマリ画像は第１ユーザのプロファイルを表す。ブートアップインジケータは、第１デバイスとは異なる第２デバイスからネットワークを介してストアで受け取られる。ブートアップインジケータは、第２デバイスがブートアッププロセスを実行中であることを示す。第２デバイスに関連するコンタクトのリストにおいて第１ユーザが識別されるとの決定がなされる。第２デバイスが画像シーケンスによりコンタクトを表すことが可能であるかどうかの判定がなされる。第２デバイスが画像シーケンスによりコンタクトを表すことが可能である場合には、指定された画像シーケンスが参照に基づき取り出され、指定された画像シーケンスは、第１ユーザのプロファイルを表すよう第２デバイスへ与えられる。第２デバイスが画像シーケンスによりコンタクトを表すことが可能でない場合には、プライマリ画像が、指定された画像シーケンスに代えて、第１ユーザのプロファイルを表すよう第２デバイスへ与えられる。
【０００９】
コンピュータプログラム製品の例も記載される。第１の例となるコンピュータプログラム製品は、プロセッサベースのシステムがメタデータに基づく写真及び／又は映像アニメーションを提供することを可能にするコンピュータプログラムロジックを記録しているコンピュータ可読媒体を含む。コンピュータプログラムロジックは、第１プログラムロジックモジュール、第２プログラムロジックモジュール、及び第３プログラムロジックモジュールを含む。第１プログラムロジックモジュールは、プロセッサベースのシステムが、ユーザエレメントを備えたカメラを制御して、該ユーザエレメントの夫々の選択に応答して複数の画像を捕捉することを可能にするものである。第２プログラムロジックモジュールは、プロセッサベースのシステムが夫々の複数の画像から画像シーケンスを生成することを可能にするものである。第３プログラムロジックモジュールは、プロセッサベースのシステムが、夫々の複数の画像について、当該複数の画像から選択されたプライマリ画像とメタデータとを関連付けることを可能にするものである。各メタデータは、各々の複数の画像から生成される画像シーケンスへの参照を含む。
【００１０】
第２の例となるコンピュータプログラム製品は、プロセッサベースのシステムがメタデータに基づく写真及び／又は映像アニメーションを提供することを可能にするコンピュータプログラムロジックを記録しているコンピュータ可読媒体を含む。コンピュータプログラムロジックは、第１プログラムロジックモジュール、第２プログラムロジックモジュール、第３プログラムロジックモジュール、第４プログラムロジックモジュール、及び第５プログラムロジックモジュールを含む。第１プログラムロジックモジュールは、プロセッサベースのシステムがプライマリ画像を受け取ることを可能にするものである。各プライマリ画像は、プライマリ画像を含む各々の複数の画像に基づく各々の画像シーケンスへの参照を含むメタデータを有する。第２プログラムロジックモジュールは、プロセッサベースのシステムが、仮想要素を含むユーザインターフェイスを提供することを可能にするものである。各仮想要素は、各々のプライマリ画像に対応するとともに、各々のプライマリ画像のメタデータにおいて参照される複数の画像シーケンス中の各々の画像シーケンスに対応する。第３プログラムロジックモジュールは、プロセッサベースのシステムが、各仮想要素について、当該仮想要素において該仮想要素に対応するプライマリ画像を表示することを可能にするものである。第４プログラムロジックモジュールは、プロセッサベースのシステムが、指定された仮想要素に対するジェスチャを検出することを可能にするものである。第５プログラムロジックモジュールは、プロセッサベースのシステムが、指定された仮想要素に対するジェスチャの検出に応答して、指定された仮想要素において、該指定された仮想要素に対応するプライマリ画像に代えて、前記指定された仮想要素に対応する画像シーケンスを表示することを可能にするものである。
【００１１】
第３の例となるコンピュータプログラム製品は、プロセッサベースのシステムがメタデータに基づく写真及び／又は映像アニメーションを選択的に提供することを可能にするコンピュータプログラムロジックを記録しているコンピュータ可読媒体を含む。コンピュータプログラムロジックは、第１プログラムロジックモジュール、第２プログラムロジックモジュール、第３プログラムロジックモジュール、第４プログラムロジックモジュール、及び第５プログラムロジックモジュールを含む。第１プログラムロジックモジュールは、プロセッサベースのシステムが、第１デバイスからネットワークを介してプライマリ画像を受け取ることを可能にするものである。プライマリ画像は、プライマリ画像を含む複数の画像に基づく指定された画像シーケンスへの参照を含むメタデータを有する。プライマリ画像は第１ユーザのプロファイルを表す。第２プログラムロジックモジュールは、プロセッサベースのシステムが、第１デバイスとは異なる第２デバイスからネットワークを介してブートアップインジケータを受け取ることを可能にするものである。ブートアップインジケータは、第２デバイスがブートアッププロセスを実行中であることを示す。第３プログラムロジックモジュールは、プロセッサベースのシステムが、第２デバイスに関連するコンタクトのリストにおいて第１ユーザが識別されることを決定することを可能にするものである。第４プログラムロジックモジュールは、プロセッサベースのシステムが、第２デバイスが画像シーケンスによりコンタクトを表すことが可能であるかどうかを判定することを可能にするものである。第５プログラムロジックモジュールは、プロセッサベースのシステムが、第２デバイスが画像シーケンスによりコンタクトを表すことが可能である場合には、指定された画像シーケンスを参照に基づき取り出し、該指定された画像シーケンスを、第１ユーザのプロファイルを表すよう第２デバイスへ与えることを可能にするものである。第５プログラムロジックモジュールは、更には、プロセッサベースのシステムが、第２デバイスが画像シーケンスによりコンタクトを表すことが可能でない場合には、指定された画像シーケンスに代えてプライマリ画像を、第１ユーザのプロファイルを表すよう第２デバイスへ与えることを可能にするものである。
【００１２】
この概要は、以下詳細な説明において更に記載される概念の一部を簡略して紹介するために設けられている。この概要は、請求される態様の重要な特徴又は必須の特徴を特定することを目的としたものでも、請求される対象の適用範囲を制限するために使用されることを目的としたものでもない。更には、本発明は、詳細な説明及び／又は本願の他の項目において記載される具体的な実施形態に制限されないことが知られる。そのような実施形態は、単に例示を目的として本願で与えられている。更なる実施形態は、本願に含まれる教示に基づき当業者に明らかであろう。
【図面の簡単な説明】
【００１３】
本願に組み込まれており且つ明細書の部分を構成する添付の図面は、本発明の実施形態を表しており、明細書とともに、関連する原理を説明し、当業者が開示されている技術を構成及び使用することを可能にする役割を更に果たす。
【００１４】
【図１】実施形態に従って、メタデータに基づくアニメーションシステムの例のブロック図である
【００１５】
【図２】実施形態に従って、図１に示されるデバイスの実施例のブロック図である。
【００１６】
【図３】実施形態に従って、図１に示されるデバイスの視点から、メタデータに基づく写真及び／又は映像アニメーションを提供する方法の例のフローチャートを表す。
【図４】実施形態に従って、図１に示されるデバイスの視点から、メタデータに基づく写真及び／又は映像アニメーションを提供する方法の例のフローチャートを表す。
【図５】実施形態に従って、図１に示されるデバイスの視点から、メタデータに基づく写真及び／又は映像アニメーションを提供する方法の例のフローチャートを表す。
【図６】実施形態に従って、図１に示されるデバイスの視点から、メタデータに基づく写真及び／又は映像アニメーションを提供する方法の例のフローチャートを表す。
【図７】実施形態に従って、図１に示されるデバイスの視点から、メタデータに基づく写真及び／又は映像アニメーションを提供する方法の例のフローチャートを表す。
【図８】実施形態に従って、図１に示されるデバイスの視点から、メタデータに基づく写真及び／又は映像アニメーションを提供する方法の例のフローチャートを表す。
【図９】実施形態に従って、図１に示されるデバイスの視点から、メタデータに基づく写真及び／又は映像アニメーションを提供する方法の例のフローチャートを表す。
【図１０】実施形態に従って、図１に示されるデバイスの視点から、メタデータに基づく写真及び／又は映像アニメーションを提供する方法の例のフローチャートを表す。
【００１７】
【図１１】実施形態に従って、図１に示されるサーバの視点から、メタデータに基づく写真及び／又は映像アニメーションを提供する方法の例のフローチャートを表す。
【図１２】実施形態に従って、図１に示されるサーバの視点から、メタデータに基づく写真及び／又は映像アニメーションを提供する方法の例のフローチャートを表す。
【図１３】実施形態に従って、図１に示されるサーバの視点から、メタデータに基づく写真及び／又は映像アニメーションを提供する方法の例のフローチャートを表す。
【００１８】
【図１４】実施形態に従って、図１に示されるサーバの実施例のブロック図である。
【００１９】
【図１５】実施形態に従って、タッチ・アンド・ホバーコマンドを検知するタッチスクリーンを備えたモバイルデバイスの例のシステム図である。
【００２０】
【図１６】実施形態が実施され得るコンピュータの例を表す。
【００２１】
開示されている技術の特徴及び利点は、示されている詳細な説明から、図面と関連して理解される場合に、より明らかになるであろう。図面において、同じ参照文字は全体を通して対応する要素を特定する。図面において、同じ参照番号は、同じ、機能的に類似した、及び／又は構造的に類似した要素を概して示す。要素が最初に現れる図は、対応する参照番号において最左の数字によって示される。
【発明を実施するための形態】
【００２２】
Ｉ．イントロダクション
以下の詳細な説明は、本発明の例となる実施形態を表す添付の図面を参照する。なお、本発明の適用範囲は、それらの実施形態に制限されず、代わりに、添付の特許請求の範囲によって定義される。よって、表されている実施形態の変形形態のような、添付の図面に示されているものを超える実施形態は、それでもなお本発明によって包含され得る。
【００２３】
「一実施形態」、「実施形態」、「例となる実施形態」、又は同様のものへの明細書中の言及は、記載される実施形態が特定の機能、構造、又は特性を含んでよいが、あらゆる実施形態が必ずしもその特定の機能、構造、又は構成を含まなくてよいことを示す。更に、そのようなフレーズは、必ずしも同じ実施形態に言及しているわけではない。更には、特定の機能、構造、又は特性が実施形態に関連して記載される場合に、明示的に記載されていようとなかろうと他の実施形態に関連してそのような機能、構造、又は特性を実装することは、当業者の通常の知識内にあると考えられる。
【００２４】
ＩＩ．例となる実施形態
本願で記載される例となる実施形態は、メタデータに基づく写真及び／又は映像アニメーションを提供することができる。例えば、シーンの複数の画像（例えば、静止画像）は画像シーケンスにまとめられてよい。画像は、シーンを表すよう複数の画像から選択されてよい。そのような画像はプライマリ画像と呼ばれてよい。メタデータはプライマリ画像と関連付けられてよい。メタデータは画像シーケンスへの参照を含んでよい。デバイスが写真及び／又は映像アニメーションをサポートする場合には、そのデバイスは、画像シーケンスにアクセスするようメタデータにおける参照を使用し、シーンを表すよう画像シーケンスを使用してよい。デバイスが写真及び／又は映像アニメーションをサポートしない場合には、そのデバイスは、シーンを表すようプライマリ画像（又は他の画像）を使用してよい。
【００２５】
本願で記載される例となる技術は、写真及び映像を表示するための従来技術と比較して、様々な利点を有する。例えば、例となる技術は、アニメーションをサポートする機能を備えるデバイスについて写真及び／又は映像アニメーションを提供し、一方、アニメーションをサポートする機能を備えていないデバイスについてはアニメーションに代えて静止画像を提供することが可能であってよい。例となる技術は、従来技術を比較して、より個人的な及び／又は主観的なユーザ体験を提供し得る。例となる技術は、（例えば、デフォルトで）カメラによって実施される夫々の捕捉により複数のショットが撮影されるようにすることが可能であってよい。複数のショットを含む、結果として得られる情報は、特定の期間の間存続してよい。これは、捕捉された瞬間を表すために複数のショットの中からどの画像が選択されるべきかをユーザが後に決定することを可能にすることができる。例となる技術は、指定された期間の経過に応答して（例えば、消費される記憶容量を制限又は削減するため。）、アニメーションを（例えば、特定の条件下で）削除してよい。例となる技術は、複数の静止画像、映像（例えば、映像のキーフレーム）、などにアクセス可能であってよい。例となる技術は、ロック画面、スタートメニュー、呼び出し画面、コンタクトタイル、フォトハブ、フォトギャラリービューアー、シングルフォトビューアー、などのような、デバイスの様々なコンテキストのいずれかにおいて写真及び／又は映像アニメーションが提供されるようにすることが可能であってよい。そのようなアニメーションは自動的に（例えば、アニメーションが現れるようにするための操作をユーザが実施することなしに）及び／又は実時間で提供されてよい。例となる技術又はその態様は、ユーザによって手動で、バックエンドサービスによって自動的に、又はサードパーティアプリケーションによって、実施されてよい。
【００２６】
図１は、実施形態に従う、メタデータに基づくアニメーションシステム１００（以降、「システム１００」）の例のブロック図である。一般的に言えば、システム１００は、ユーザから受け取られるリクエスト（例えば、ハイパーテキスト伝送プロトコル（ＨＴＴＰ；hypertext  transfer  protocol）リクエスト）に応答してユーザに情報を提供するよう動作する。情報は、ドキュメント（例えば、ウェブページ、画像、映像ファイル、など）、実行ファイルの出力、及び／又はあらゆる他の適切なタイプの情報を含んでよい。本願で記載される例となる実施形態に従って、システム１００は、メタデータに基づく写真及び／又は映像アニメーションを提供する。例えば、そのようなアニメーションは、デバイスの様々なコンテキストのいずれかにおいて静止画像に代えて使用されてよい。メタデータに基づく写真及び／又は映像アニメーションを提供する技術に関する詳細は、以下の議論において与えられる。
【００２７】
図１に示されるように、システム１００は、サーバ１０２、ネットワーク１０４、及び複数のデバイス１０６Ａ〜１０６Ｎを含む。サーバ１０２及びデバイス１０６Ａ〜１０６Ｎの間の通信は、よく知られているネットワーク通信プロトコルを用いてネットワーク１０４上で実施される。ネットワーク１０４は、ワイドエリアネットワーク（例えば、インターネット）、ローカルエリアネットワーク（ＬＡＮ；local  area  network）、他のタイプのネットワーク、又はそれらの組み合わせであってよい。
【００２８】
デバイス１０６Ａ〜１０６Ｎは、サーバ１０２と通信することができるプロセッシングシステムである。プロセッシングシステムの例は、命令の組に従ってデータを処理することができる少なくとも１つのプロセッサを含むシステムである。例えば、プロセッシングシステムは、コンピュータ、パーソナルデジタルアシスタント、などであってよい。デバイス１０６Ａ〜１０６Ｎは、サーバ１０２に記憶されている（あるいは、それを介して別なふうにアクセス可能である）情報を要求するためにサーバにリクエストを供給するよう構成される。例えば、ユーザは、ユーザによって所有されるか又は別なふうにユーザがアクセスすることができるデバイス１０６に配置されたクライアント（例えば、ウェブブラウザ、ウェブクローラ、又は他のタイプのクライアント）を用いてコンピュータプログラム（例えば、アプリケーション）を実行するためのリクエストを起動してよい。いくつかの例となる実施形態に従って、デバイス１０６Ａ〜１０６Ｎは、サーバ１０２によってホスティングされているドメイン（例えば、ウェブサイト）にアクセスすることができ、それにより、デバイス１０６Ａ〜１０６Ｎは、ドメインを介して利用可能である情報にアクセスしてよい。そのようなドメインはウェブページを含んでよく、例えば、その中でリンクされているハイパーテキストマークアップ言語（ＨＴＭＬ；hypertext  markup  language）ドキュメント及びオブジェクト（例えば、ファイル）として提供されてよい。
【００２９】
デバイス１０６Ａ〜１０６Ｎの夫々は、制限なしに、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、スマートウォッチ又は頭部装着型コンピュータのようなウェアラブルコンピュータ、パーソナルデジタルアシスタント、携帯電話機、などを含む、如何なるクライアント対応システム又はデバイスも含んでよい。
【００３０】
デバイス１０６Ａ〜１０６Ｎは、各々のクライアント側のメタデータに基づくアニメーションロジック１１２Ａ〜１１２Ｎを含むものとして示されている。デバイス１０６Ａ〜１０６Ｎの夫々及びアニメーションロジック１１２Ａ〜１１２Ｎの夫々は、議論の簡単のために、これより、一様にデバイス１０６及びアニメーションロジック１１２と夫々呼ばれる。夫々のアニメーションロジック１１２は、各々のアニメーションロジック１１２を含むデバイス１０６に対して写真及び／又は映像アニメーションを提供するよう構成される。例えば、アニメーションロジック１１２は、複数の画像から画像シーケンスを生成するか、あるいは、サーバ１０２からネットワーク１０４を介して画像シーケンスを受け取ってよい。アニメーションロジック１１２は、デバイス１０６の様々なコンテキストのいずれかにおいて静止画像に代えて画像シーケンスを表示（自動的に表示、デフォルトで表示、など）してよい。例えば、静止画像は、画像シーケンスを参照する（例えば、それにリンクする）メタデータ（例えば、ＸＦメタデータ）を有してよい。アニメーションロジック１１２は、参照に基づき画像シーケンスを取り出し、静止画像が別なふうに表示される１つ以上のコンテキストにおいて、画像シーケンスを表示してよい。例えば、画像シーケンスは、静止画像が記憶されているフォルダとは異なるフォルダに記憶されてよい。
【００３１】
コンテキストの例は、制限なしに、ロック画面コンテキスト、スタートメニューコンテキスト、呼び出し画面コンテキスト、コンタクトコンテキスト、フォトハブコンテキスト、フォトギャラリービューアーコンテキスト、シングルフォトビューアーコンテキスト、ピン留めフォトアルバムコンテキスト、カメラロールコンテキスト、オンラインアルバムコンテキスト、お気に入り写真コンテキスト、などを含む。デバイスのロック画面コンテキストにおいて画像シーケンスを表示することは、デバイスのロック画面上で画像シーケンスを表示することを含む。ロック画面は、デバイスの少なくとも何らかの機能へのアクセスが許可されるためにアクションが必要とされることを示すよう表示されるインターフェイス要素である。
【００３２】
デバイスのスタートメニューコンテキストにおいて画像シーケンスを表示することは、デバイスのスタートメニュー（別名、スタート画面）において画像シーケンスを表示することを含む。スタートメニューは、アプリケーション及び／又はタスクを起動すべき中央仮想位置を提供するよう表示されるインターフェイス要素である。例えば、スタートメニューは、ユーザがデバイスにログインするときにユーザに表示される最初のインターフェイス要素であってよい。
【００３３】
デバイスの呼び出し画面コンテキストにおいて画像シーケンスを表示することは、呼び出し（例えば、電話呼び出し、ボイス・オーバー・インターネット・プロトコル（ＶＯＩＰ；voice  over  internet  protocol）呼び出し、など）がデバイスで受け取られるときにデバイスによって表示されるインターフェイス要素において画像シーケンスを表示することを含む。
【００３４】
デバイスのコンタクトコンテキストにおいて画像シーケンスを表示することは、ユーザの連絡先リスト（contact  list）に含まれている連絡先（contact）を表すインターフェイス要素において画像シーケンスを表示することを含む。
【００３５】
デバイスのフォトハブコンテキストにおいて画像シーケンスを表示することは、デバイスに記憶されている写真にアクセスするためのフォルダを表すインターフェイス要素において画像シーケンスを表示することを含む。
【００３６】
デバイスのフォトギャラリービューアーコンテキストにおいて画像シーケンスを表示することは、複数の各々の視覚コンテンツの複数の表現を含むインターフェイス要素において画像シーケンスを表示することを含む。各視覚コンテンツは静止画像又は動態画像であってよい。例えば、各視覚コンテンツは、写真、映像、あるいは、画像を生成するのに有用であるデータを含む他のタイプのファイルであってよい。
【００３７】
デバイスのシングルフォトビューアーコンテキストにおいて画像シーケンスを表示することは、単一の視覚コンテンツの単一の表現を含むインターフェイス要素において画像シーケンスを表示することを含む。
【００３８】
デバイスのピン留めフォトアルバムコンテキストにおいて画像シーケンスを表示することは、仮想位置に付属している仮想フォトアルバムにおいて（例えば、デバイスのユーザインターフェイスにおいて、ソーシャルアップデートにおいて、など）画像シーケンスを表示することを含む。
【００３９】
デバイスのカメラロールコンテキストにおいて画像シーケンスを表示することは、デバイスによって撮影される写真のリストにおいて画像シーケンスを表示することを含む。
【００４０】
デバイスのオンラインアルバムコンテキストにおいて画像シーケンスを表示することは、デバイスがインターネットを介してアクセスする仮想フォトアルバムにおいて画像シーケンスを表示することを含む。
【００４１】
デバイスのお気に入り写真コンテキストにおいて画像シーケンスを表示することは、他の写真よりも高い優先度を有することが示されている写真の表現を含むインターフェイス要素において画像シーケンスを表示することを含む。
【００４２】
サーバ１０２は、デバイス１０６Ａ〜１０６Ｎと通信することができる１つ以上のプロセッシングシステムである。サーバ１０２は、ユーザからリクエストを受けることに応答して情報をユーザに提供するコンピュータプログラムを実行するよう構成される。例えば、情報は、ドキュメント（例えば、ウェブページ、画像、映像ファイル、など）、実行ファイルの出力、及び／又はあらゆる他の適切なタイプの情報を含んでよい。いくつかの例となる実施形態に従って、サーバ１０２は、１つ以上のウェブサイトをホスティングするよう構成されるので、ウェブサイトは、システム１００のユーザがアクセス可能である。
【００４３】
サーバ１０２は、ストア１０８と、サーバ側のメタデータに基づくアニメーションロジック１１０（以降「アニメーションロジック１１０」）とを含むものとして示されている。アニメーションロジック１１０は、静止画像に関連する画像シーケンス及び／又は画像シーケンスに対する参照をデバイスにダウンロードするよう構成される。例えば、アニメーションロジック１１０は、デバイス１０６がオンされるときに各デバイス１０６から通知を受けてよい。そのような通知は、コンタクト（連絡先）、電子メール、カレンダー項目、などのような情報がデバイス１０６にダウンロードされるべきことを示してよい。アニメーションロジック１１０は、静止画像に対応する画像シーケンスへの参照を含むメタデータとともに、そのような情報に含まれる静止画像をダウンロードしてよい。
【００４４】
アニメーションロジック１１０は、画像シーケンスがデバイス１０６にダウンロードされるべきかどうかを判定するよう、デバイス１０６が静止画像に代えて画像シーケンスを表示することができるかどうかを判定してよい。デバイス１０６が静止画像に代えて画像シーケンスを表示することができる場合には、アニメーションロジック１１０は、静止画像に関連する画像シーケンスをデバイス１０６にダウンロードしてよい。デバイス１０６が静止画像に代えて画像シーケンスを表示することができない場合には、アニメーションロジック１１０は、静止画像に関連する画像シーケンスではなく静止画像をデバイス１０６にダウンロードしてよい。
【００４５】
アニメーションロジック１１０は、第１ユーザから画像シーケンスを受け、１人以上の第２のユーザの夫々にダウンロードされるべき情報が画像シーケンスに関連する少なくとも１つの静止画像を含むことに基づき画像シーケンスを１人以上の第２のユーザへ供給してよい。例えば、第１ユーザは、第１ユーザのプロファイルを表すよう画像シーケンスを提供してよい。この例に従って、アニメーションロジック１１０は、各々の第２ユーザのコンタクトとして第１ユーザがリストアップされていることに基づき、１人以上の第２ユーザの夫々へ画像シーケンスを供給してよい。この例に更に従って、アニメーションロジック１１０は、各第２ユーザのデバイス１０６が静止画像に代えて画像シーケンスを表示可能であることに更に基づき、１人以上の第２ユーザの夫々へ画像シーケンスを供給してよい。
【００４６】
ストア１０８は、デバイス１０６Ａ〜１０６の間でダウンロードされるべき情報を記憶する。そのような情報は、コンタクト、制限なしに、デバイス１０６Ａ〜１０６Ｎのユーザと関連する電子メール、カレンダー項目、などを含んでよい。情報は視覚コンテンツを含んでよい。例えば、視覚コンテンツは静止画像又は動態画像であってよい。視覚コンテンツは、写真、映像、あるいは、画像を生成するのに有用であるデータを含む他のタイプのファイルであってよい。ストア１０８は、如何なる適切なタイプのストアであってもよく、制限なしにデータベース（例えば、関係データベース、エンティティ関係データベース、オブジェクトデータベース、オブジェクト関係データベース、ＸＭＬデータベース、など）を含む。
【００４７】
アニメーションロジック１１０及びアニメーションロジック１１２Ａ〜１１２Ｎの夫々は、ハードウェア、ソフトウェア、ファームウェア、又はそれらのあらゆる組み合わせにおいて実装されることを含め、メタデータに基づく写真及び／又は映像アニメーションを提供するよう様々な方法で実装されてよい。例えば、アニメーションロジック１１０及びアニメーションロジック１１２Ａ〜１１２Ｎの夫々は、１つ以上のプロセッサにおいて実行されるよう構成されるコンピュータプログラムコードとして実装されてよい。他の例では、アニメーションロジック１１０及びアニメーションロジック１１２Ａ〜１１２Ｎの夫々は、ハードウェアロジック／電気回路構成として実装されてよい。実施形態において、アニメーションロジック１１０及びアニメーションロジック１１２Ａ〜１１２Ｎの夫々は、システム・オン・チップ（ＳｏＣ；system-on-chip）において実装されてよい。各ＳｏＣは、その機能を実行するよう、プロセッサ（例えば、マイクロコントローラ、マイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ；digital  signal  processor）、など）、メモリ、１つ以上の通信インターフェイス、かつ／あるいは、更なる回路及び／又は埋め込みファームウェアの１つ以上を含む集積回路を含んでよい。
【００４８】
メタデータに基づく写真及び／又は映像アニメーションを提供する技術の例は、図２乃至１４を参照して以下で更に詳細に論じられる。
【００４９】
図２は、実施形態に従って、図１に示されるデバイス１０６の実施例であるデバイス２００のブロック図である。例えば、デバイス２００は、モバイルデバイス（例えば、パーソナルデジタルアシスタント、携帯電話機、タブレットコンピュータ、ラップトップコンピュータ、あるいは、スマートウォッチ又は頭部装着型コンピュータのようなウェアラブルコンピュータ）であってよい。なお、例となる実施形態の適用範囲はこれに関して制限されない。
【００５０】
図２に示されるように、デバイス２００は、カメラ２０２、ディスプレイ２０４、及びクライアント側のメタデータに基づくアニメーションロジック２７０（以降「アニメーションロジック２７０」）を含む。カメラ２０２はユーザエレメント２３０を含み、ユーザエレメント２３０は、選択される場合に、カメラ２０２に画像２５８の１つ以上を捕捉させる。ユーザエレメント２３０は、ユーザエレメント２３０が選択されていることを示すよう、ユーザエレメント２３０の夫々の選択に応答して選択インジケータ２５６を生成する。
【００５１】
ディスプレイ２０４は、デバイス２００のユーザがディスプレイ２０４を介して表示される画像を見ることを可能にする。ディスプレイ２０４は、ディスプレイ２０４のユーザに情報を伝え及び／又はユーザからの入力を受けるよう構成されるユーザインターフェイス２３２を含む。ユーザインターフェイス２３２は、例示を目的として問い合わせ要素２３４を含むものとして示されており、制限されるよう意図されない。問い合わせ要素２３４は、デバイス２００のユーザからの応答を求めるよう構成される。
【００５２】
例となる実施形態では、デバイス２００はタッチ操作対応デバイスである。例えば、ディスプレイ２０４はタッチスクリーンであってよい。この実施形態に従って、ディスプレイ２０４は、ホバージェスチャを検出することが可能であってよい。ジェスチャは、デバイス（例えば、デバイス２００）のユーザによって実施されるコミュニケーションであり、ユーザの身体の少なくとも一部分の配置及び／又は動作、且つ／あるいは、デバイスの環境内のデバイスの動きが、情報をデバイスへ伝える。ホバージェスチャは、ユーザの少なくとも片手又はその部分（例えば、１本以上の指）がタッチスクリーン上の空間に位置付けられるジェスチャである。タッチスクリーンは、例えば、容量性検知を通じて、ユーザの手（又はその部分）がタッチスクリーンに近いことを検出することができる。加えて、手の動き及び／又は指の動きは、手及び／又は指が空中停止（ホバリング）している間に検出され得る。ホバージェスチャは、ユーザがタッチ操作対応デバイスのタッチスクリーンに物理的にタッチすることなしに起こることが可能である。
【００５３】
アニメーションロジック２７０は、デバイス２００に対してメタデータに基づく写真及び／又は映像アニメーションを提供するよう構成される。アニメーションロジック２７０は、例示を目的として図２ではカメラ２０２の外にあるものとして示されており、制限されるよう意図されない。アニメーションロジック２７０（又はそのいずれかの部分）はカメラ２０２に含まれてよいことが認識される。アニメーションロジック２７０は、制御ロジック２０６、画像シーケンスロジック２０８、メタデータロジック２１０、削除ロジック２１２、インターフェイスロジック２１４、関連付けロジック２１６、表示ロジック２１８、ジェスチャロジック２２０、アクションロジック２２２、入力決定ロジック２２４、起動ロジック２２６、及びインジケーションロジック２２８を含む。制御ロジック２０６は、カメラ２０２を制御するよう構成される。制御ロジック２０６は、カメラ２０２が動作する様態を制御する制御信号２３６を生成する。例えば、制御ロジック２０６は、選択インジケータ２５６の受信に応答して制御信号２３６を供給してよい。例えば、制御ロジック２０６は、ユーザエレメント２３０の選択に応答して、カメラ２０２に単一の画像を捕捉させるよう制御信号２３６を設定してよい。他の例では、制御ロジック２０６は、ユーザエレメント２３０の選択に応答して、カメラ２０２に複数の画像を捕捉させるよう制御信号２３６を設定してよい。例えば、制御ロジック２０６は、ユーザエレメント２３０の夫々の選択に応答して、（例えば、デフォルトで）複数の画像を捕捉するようにカメラ２０２を制御してよい。
【００５４】
例となる実施形態において、制御ロジック２０６は、デバイス２００のバースト写真撮影モードに従って、複数の画像を捕捉するようにカメラ２０２を制御する。バースト写真撮影モードは、ユーザエレメント２３０の選択に応答して複数の写真が立て続けに捕捉されることを可能にする。他の例となる実施形態では、制御ロジック２０６は、デバイス２００の映像モードに従って、複数の画像を捕捉するようにカメラ２０２を制御する。
【００５５】
更なる他の例となる実施形態では、制御ロジック２０６は、ユーザインターフェイス２３２に含まれている表現に対して、どの画像、画像シーケンス、映像、などが表示されるべきかを制御するよう構成される。ある態様において、表示されるよう選択される表現は、捕捉された複数の画像からプライマリ画像であるよう設定されてよい。この態様に従って、制御ロジック２０６は、トリガ事象に応答して、プライマリ画像を、捕捉された複数の画像から生成される画像シーケンスに変えるよう構成されてよい。トリガ事象は、例えば、デバイス２００のユーザからの入力の受信であってよい。例えば、入力は、デバイス２００に対するホバージェスチャ、デバイス２００を振ること、などのようなジェスチャであってよい。
【００５６】
他の態様では、制御ロジック２０６は、様々な基準のいずれかに基づき、ユーザインターフェイス２３２に含まれている表現に対して、画像シーケンスが表示されるかどうかを制御してよい。例えば、制御ロジック２０６は、閾数の他の画像シーケンスがユーザインターフェイス２３２において表示されていることに基づき、画像シーケンスが表示されるべきでない（例えば、対応するプライマリ画像が画像シーケンスに代えて表示されるべきである）と決定してよい。閾数は、１、２、３、などのような如何なる適切な数であってもよい。
【００５７】
他の例では、制御ロジック２０６は、指定された数の画像シーケンスが、ユーザインターフェイス２３２におけるそれらの対応する表現に対して、ある時点で表示されるようにしてよい。この例に従って、制御ロジック２０６は、第１のサブセットの画像シーケンスが、第１の期間の間に、それらの対応する表現に対して表示されるようにしてよく、制御ロジック２０６は、第２のサブセットの画像シーケンスが、第１の期間に続く第２の期間の間に、それらの対応する表現に対して表示されるようにしてよく、制御ロジック２０６は、第３のサブセットの画像シーケンスが、第２の期間に続く第３の期間の間に、それらの対応する表現に対して表示されるようにしてよい、など。指定された数の画像シーケンスは、１、２、３などのような如何なる適切な数であってもよい。制御ロジック２０６は、ランダムに、準ランダムに（例えば、１つ以上の指定された基準に基づく画像シーケンスのサブセット内でランダムに）、あるいは、非ランダムに（例えば、系統的に又は順序正しく）表示されるように画像シーケンスを選択してよい。
【００５８】
画像シーケンスロジック２０８は、画像２５８の各々のサブセットから画像シーケンス２３８を生成するよう構成される。各サブセットは、画像２５８に含まれている各々の複数の画像を含む。画像シーケンス２３８の夫々は、シーンを表すよう各々のサブセットから単一の画像に代えて使用されてよい。シーンは、如何なる１つ以上のオブジェクトも含んでよい。各オブジェクトはアニメーション又は非アニメーションであってよい。
【００５９】
画像シーケンスロジック２０８は、各々の画像シーケンスが開始されるべき夫々の複数の画像内の画像を特定するよう構成されてよい。例えば、画像シーケンスロジック２０８は、画像が動き、１つ以上の顔（例えば、人間の顔）などを含むことに基づき、画像を識別してよい。画像シーケンスロジック２０８は、各々の画像シーケンスが開始すべき夫々の複数の画像内の画像を特定するためにベクトル解析（又は他の種類の解析）を使用してよい。ベクトル解析により画像を特定するための技術のいくつかの例は、アクションロジック２２２に関して以下で論じられる。
【００６０】
各画像シーケンスは如何なる適切なフォーマットも有してよい。例えば、画像シーケンスロジック２０８は、複数の画像を、指定されたビットマップ画像フォーマットを有する画像シーケンスへと変換してよい。この例に従って、画像シーケンスは、アニメーション化された画像交換フォーマット（ＧＩＦ）ファイル、ＭＰ４ファイル、カスタム（例えば、独自仕様）フォーマットを有するファイル、などとして構成されてよい。他の例では、画像シーケンスロジック２０８は、複数の画像から画像シーケンスを生成する制御を構成してよい。更なる他の例では、画像シーケンスは映像であってよい。
【００６１】
画像シーケンスは、サードパーティアプリケーションのために、例えばソフトウェア開発キット（ＳＤＫ；software  development  kit）を用いて、フォーマット化されてよいことが認識される。例えば、サードパーティアプリケーションは、画像シーケンスをデバイス２００にプッシュするよう構成されてよい。画像シーケンスロジック２０８は、画像シーケンス２３８の夫々を必ずしも生成する必要がないことも認識される。例えば、画像シーケンス２３８の１つ以上は、図１のストア１０８のような、デバイス２００から遠隔にあるストアから、あるいは、デバイス２００の内部にあるストアから、受信されてよい。
【００６２】
デバイス２００のユーザは、画像シーケンスのアニメーション挙動を設定又は変更することが可能であってよいことが留意されるべきである。例えば、ユーザインターフェイス２３２は、ワンタイム・ループや不定回数ループとして構成される、開始から終了までから開始から終了までへループする、開始から終了まで、そして終了から開始までループする、画像シーケンスにおける各フレームの部分（すなわち、全部ではない。）をアニメーション化する、などの、画像シーケンスのためのオプションを提示してよい。画像シーケンスロジック２０８は、ユーザによって選択されるオプションに関するユーザ入力に従って画像シーケンスを生成するよう構成されてよい。
【００６３】
メタデータロジック２１０は、各サブセットにおけるプライマリ画像と呼ばれる各々の画像と各々のメタデータとを関連付けるよう構成される。各プライマリ画像に関連するメタデータは、プライマリ画像を含むサブセットから生成される画像シーケンスへの参照を含む。夫々の参照は、各々の画像シーケンスへのリンク（例えば、ハイパーリンク）であってよい。なお、例となる実施形態の適用範囲はこれに関して制限されない。プライマリ画像は、プライマリ画像２４０と集合的に呼ばれる。プライマリ画像に関連するメタデータは、メタデータ２６０と集合的に呼ばれる。
【００６４】
削除ロジック２１２は、特定の条件下で、各々のプライマリ画像と関連するメタデータを削除するよう構成される。例えば、削除ロジック２１２は、（例えば、デバイス２００のデフォルト設定に従って）特定の期間の経過に応答して各メタデータを削除するよう構成されてよい。この例に従って、各メタデータのための特定の期間は、そのメタデータが各々のプライマリ画像と関連付けられる時間インスタンスに開始してよい。特定の期間は、４時間、８時間、１日、５日、７日、２週間、３０日、１月、などのような、如何なる適切な期間であってもよい。
【００６５】
削除ロジック２１２は、特定の条件下で各画像シーケンスを削除するよう更に構成されてよい。削除ロジック２１２は、特定の条件下で夫々の複数の画像内のプライマリ画像以外の、夫々の複数の画像の各画像を削除するよう更に構成されてよい。削除ロジック２１２は、何が削除されるべきかを示す削除命令２６２の受信に応答して、メタデータ、画像シーケンス、及び／又は複数の画像内のプライマリ画像以外の複数の画像内の各画像を削除してよい。
【００６６】
例となる実施形態において、削除ロジック２１２は、指定されたメタデータによって参照される画像シーケンスが静止画像に代えて（例えば、指定されたメタデータを有するプライマリ画像に代えて）表示されるよう選択されることに応答して、指定されたメタデータを削除しないことによってデバイス２００のデフォルト設定をオーバーライドするよう構成される。表示インジケータ２４２は、指定されたメタデータによって参照される画像シーケンスが表示されるよう選択されることを示してよい。然るに、削除ロジック２１２は、表示インジケータ２４２の受信に応答してデフォルト設定をオーバーライドしてよい。
【００６７】
他の例となる実施形態では、削除ロジック２１２は、指定されたメタデータに対応する複数の画像の中の単一の画像が特定の期間の経過の前に表示されるよう選択されることに応答して、指定されたメタデータを特定の期間の経過の前に削除することによってデバイス２００のデフォルト設定をオーバーライドするよう構成される。表示インジケータ２４２は、指定されたメタデータに対応する複数の画像の中の単一の画像が表示されるよう選択されることを示してよい。然るに、削除ロジック２１２は、表示インジケータ２４２の受信に応答してデフォルト設定をオーバーライドしてよい。
【００６８】
インターフェイスロジック２１４は、ユーザインターフェイス２３２を提供（例えば、生成）するよう構成される。例となる実施形態において、インターフェイスロジック２１４は、特定の期間に関してデバイス２００のユーザからの応答を求める問い合わせ要素２３４を含むユーザインターフェイス２３２を提供するよう構成される。特定の期間後にメタデータは削除されるべきである。この実施形態に従って、インターフェイスロジック２１４は、ユーザから受け取られる応答に基づき特定の期間を定めるよう更に構成される。例えば、応答は、ボイスコマンド、ユーザインターフェイス２３２を介して表示される複数の期間の中からの特定の期間の選択、テキスト入力、などであってよい。
【００６９】
他の例となる実施形態では、インターフェイスロジック２１４は、デバイス２００のユーザが、画像シーケンスを関連付けるべき指定プロファイルを選択することを可能にするユーザインターフェイス２３２を提供するよう構成される。例えば、指定プロファイルはユーザのプロファイルであってよい。他の例では、指定プロファイルは、ユーザのコンタクトのプロファイルであってよい。この例に従って、コンタクトは、デバイス２００に記憶されている及び／又は図１のストア１０８のようなストアでデバイス２００から離れて記憶されているコンタクト（連絡先）のリストにおいて識別されてよい。
【００７０】
関連付けロジック２１６は、画像シーケンスをプロファイル２４４と関連付けるよう構成される。例えば、各プロファイルは、デバイス２００のユーザのコンタクトを表してよい。なお、例となる実施形態の適用範囲はこれに関して制限されない。この例に従って、各プロファイルは、ユーザインターフェイス２３２を介してユーザの複数のコンタクトから選択可能であってよい。この例に更に従って、関連付けロジック２１６は、複数のコンタクトの中からのプロファイルの選択に応答して、特定の画像シーケンスをプロファイルと関連付けるよう構成されてよい。
【００７１】
表示ロジック２１８は、ディスプレイ２０４を介してコンタクト２４６を表示するよう構成される。コンタクト２４６は、静止画像、画像シーケンス、などであってよい。例えば、表示ロジック２１８は、画像シーケンスに関連するプロファイルの表現が表示されるべきデバイス２００の複数のコンテキストの夫々において、画像シーケンスを表示するよう構成されてよい。この例に従って、複数のコンテキストは、呼び出し画面コンテキスト及び／又はコンタクトコンテキストを含んでよい。
【００７２】
ジェスチャロジック２２０は、デバイス２００に対するジェスチャを検出するよう構成される。ジェスチャは、デバイス（例えば、デバイス２００）のユーザによって実施されるコミュニケーションであり、ユーザの身体の少なくとも一部分の配置及び／又は動作、且つ／あるいは、デバイスの環境内のデバイスの動きが、情報をデバイスへ伝える。ジェスチャの例には、制限なしに、ホバージェスチャ（例えば、タッチスクリーンにタッチすることなしに、手を振ること、指さし、少なくとも閾期間の間の空中静止、指をならすこと、手のひら又は指を振ること、指でつまむ動作、つまんだ指を離す動作、など）、凝視ジェスチャ（例えば、少なくとも閾期間の間の凝視）、ルック・アンド・ブリンク（まばたき）ジェスチャ（例えば、見ながらまばたきすること）、ボイスジェスチャ（例えば、コマンドの発話）、タッチジェスチャ（例えば、タッチスクリーンに対して、指でタップすること、指をすべらすこと、指でつまむ動作、つまんだ指を離す動作、など）、など、又はそれらのあらゆる組み合わせが含まれる。
【００７３】
ジェスチャロジック２２０は、ユーザの身体の部分の配置及び／又は動作、且つ／あるいは、デバイス２００の環境におけるデバイス２００の動き、を検知してよい。ジェスチャロジック２２０は、配置、動作、及び／又は動きの検出に応答して取るべきアクションを決定してよい。ジェスチャロジック２２０は、ディスプレイ２０４に対するホバージェスチャを検出するよう、ディスプレイへ結合されるか、あるいは、ディスプレイ２０４に組み込まれてよい。この例に従って、ジェスチャロジック２２０は、ディスプレイ２０４の上で及び／又はそれに隣接して（例えば、その横で）実施されるホバージェスチャを検出することが可能であってよい。
【００７４】
アクションロジック２２２は、画像シーケンスのフレームにおいてオブジェクトが動いているかどうかを判定するよう構成される。例えば、アクションロジック２２２は、アクションの開始を表す画像シーケンス内のフレームを特定してよい。例えば、アクションロジック２２２は、第１フレームから第２フレームへのオブジェクトの位置の変化を判定するようベクトル解析（又は他の種類の解析）を使用してよい。例えば、アクションロジック２２２は、オブジェクトが第１フレームにおける第１の位置から第２フレームにおける第２の位置へ変化することを特定してよい。アクションロジック２２２は、第１の位置と第２の位置との間の距離、及び第１フレームに関連する第１の時間インスタンスと第２フレームに関連する第２の時間インスタンスとの間の差に基づき、オブジェクトが動く割合を特定してよい。例えば、第１の時間インスタンスと第２の時間インスタンスとの間の差は、画像シーケンスのフレームレートに基づいてよい。関連技術において知られている他の技術は、オブジェクトが画像シーケンスのフレームにおいて動いているかどうかを判定するよう、ここで記載されている技術に加えて、あるいは、それに代えて、使用されてよい。
【００７５】
入力決定ロジック２２４は、ユーザからの入力が受け取られているかどうかを判定するよう構成される。例えば、入力決定ロジック２２４は、ユーザから受け取られる入力のタイプを決定することが可能であってよい。入力のタイプの例には、制限なしに、発話入力、タッチ入力、ホバー入力、スタイラス入力（すなわち、スタイラスによる入力）、キーボード入力（すなわち、キーボードによる入力）、ジェスチャ入力、などが含まれる。入力決定ロジック２２４は、１つ以上の仮想要素がそのような入力によって選択されることを決定してよい。
【００７６】
起動ロジック２２６は、画像２５８のサブセットに基づく画像シーケンスに対応する仮想要素の選択に応答して、そのサブセットへのリンクをアクティブにするよう構成される。例えば、リンクをアクティブにすることは、画像シーケンス、画像シーケンスが表示され得るデバイス２００のコンテキスト、画像２５８のサブセット、サブセット内のプライマリ画像、などに関する追加情報を提供してよい。
【００７７】
画像シーケンス２３８は、指定された期間の経過に応答して削除されてよい。インジケーションロジック２２８は、画像シーケンス２３８の１つ以上の削除されるべき時間インスタンスを示すインジケータを提供するよう構成される。
【００７８】
アニメーションロジック２７０における様々な要素を含むデバイス２００の様々な要素は、これより、図３乃至９を参照して更に詳細に記載される。
【００７９】
図３乃至１０は、実施形態に従ってメタデータに基づく写真及び／又は映像アニメーションを提供するための例となる方法のフローチャート３００、４００、５００、６００、７００、８００、９００、及び１０００を表す。例示のために、フローチャート３００、４００、５００、６００、７００、８００、９００、及び１０００は、図２に示されるデバイス２００に関して記載される。更なる構造上及び動作上の実施形態は、フローチャート３００、４００、５００、６００、７００、８００、９００、及び１０００に関する議論に基づき当業者に明らかである。
【００８０】
図３に示されるように、フローチャート３００の方法はステップ３０２から開始する。ステップ３０２で、カメラは、ユーザエレメントの夫々の選択に応答して、複数の画像を捕捉するよう制御される。例となる実施において、制御ロジック２０６は、ユーザエレメント２３０の夫々の選択に応答して、複数の画像を捕捉するようにカメラ２０２を制御する。
【００８１】
例えば、制御ロジック２０６は、デバイス２００のバースト写真撮影モードに従って、ユーザエレメント２３０の夫々の選択に応答して、複数の画像を捕捉するようにカメラ２０２を制御してよい。他の例では、制御ロジック２０６は、デバイス２００の映像モードに従って、ユーザエレメント２３０の夫々の選択に応答して、複数の画像を捕捉するようにカメラ２０２を制御してよい。
【００８２】
夫々の複数の画像は、必ずしもカメラ２０２によって捕捉される必要はないと認識される。例えば、いずれかの複数の画像は、デバイス２００上の又はデバイス２００から遠隔にあるサーバ上のストアから取り出されてよい。いずれかの複数の画像は、デバイス２００において又はデバイス２００から遠隔にあるサーバにおいて記憶されている１つ以上の画像から取得されてよい。いずれかの複数の画像は、例えば、映像として構成されてよい。
【００８３】
ステップ３０４で、画像シーケンスは、夫々の複数の画像から生成される。例となる実施では、画像シーケンスロジック２０８は、夫々の複数の画像から画像シーケンスを生成する。例えば、画像シーケンスロジック２０８は、夫々の複数の画像を、画像交換フォーマット（ＧＩＦ）のような指定されたビットマップ画像フォーマットを有する各々の画像シーケンスへと変換してよい。他の例では、画像シーケンスロジック２０８は、夫々の複数の画像から各々の画像シーケンスを生成する制御を構成してよい。
【００８４】
ステップ３０６で、夫々の複数の画像について、メタデータは、複数の画像から選択されたプライマリ画像と関連付けられる。プライマリ画像に関連するメタデータは、プライマリ画像が選択される複数の画像から生成される画像シーケンスに対する参照を含む。プライマリ画像は、ＪＰＥＧフォーマットのような、指定されたフォーマットを有するよう構成されてよい。なお、実施形態の適用範囲はこれに関して制限されない。例となる実施において、夫々の複数の画像について、メタデータロジック２１０は、複数の画像から選択されたプライマリ画像とメタデータとを関連付ける。
【００８５】
いくつかの例となる実施形態では、フローチャート３００の１つ以上のステップ３０２、３０４及び／又は３０６は実施されなくてよい。更に、ステップ３０２、３０４及び／又は３０６に加えて、あるいは、それに代えて、ステップが実施されてよい。例えば、例となる実施形態において、フローチャート３００の方法は、１つ以上の特定の基準のうちの少なくとも１つが満足されない限りは、カメラを含むデバイスのデフォルト設定に従って、特定の期間の経過に応答して夫々のメタデータを削除することを含む。例えば、削除ロジック２１２は、１つ以上の特定の基準のうちの少なくとも１つが満足されない限りは、特定の期間の経過に応答して夫々のメタデータを削除してよい。
【００８６】
ある態様において、１つ以上の特定の基準は、各々のメタデータによって参照される画像シーケンスが静止画像に代えて表示されるよう選択される基準を含む。例えば、静止画像は、各々のメタデータを有するプライマリ画像であってよい。この態様に従って、表示インジケータ２４２は、各々のメタデータによって参照される画像シーケンスが静止画像に代えて表示されるよう選択されることを示してよい。然るに、削除ロジック２１２は、表示インジケータ２４２の受信に基づき、各々のメタデータを削除しなくてよい。
【００８７】
他の態様では、各々のメタデータは、特定の期間の経過が起きたかどうかにかかわらず、各々のメタデータに対応する複数の画像の中の単一の画像が表示されるよう選択されることに応答して削除されてよい。この態様に従って、表示インジケータ２４２は、各々のメタデータに対応する複数の画像の中の単一の画像が表示されるよう選択されることを示してよい。然るに、削除ロジック２１２は、表示インジケータ２４２の受信に基づき、各々のメタデータを削除してよい。
【００８８】
他の例となる実施形態では、フローチャート３００の方法は、図４のフローチャート４００に示されるステップの１つ以上を含んでよい。図４に示されるように、フローチャート４００の方法はステップ４０２から開始する。ステップ４０２で、ユーザインターフェイスは、特定の期間に関してカメラを含むデバイスのユーザからの応答を求める問い合わせ要素を含むものとして提供される。例となる実施では、インターフェイスロジック２１４は、問い合わせ要素２３４を含むユーザインターフェイス２３２を提供する。
【００８９】
ステップ４０４で、特定の期間は、応答に基づき定められる。例となる実施では、インターフェイスロジック２１４が特定の期間を定める。
【００９０】
更なる他の例となる実施形態では、フローチャート３００の方法は、図５のフローチャート５００に示されるステップの１つ以上を含んでよい。図５に示されるように、フローチャート５００の方法はステップ５０２から開始する。ステップ５０２で、ユーザインターフェイスは、カメラを含むデバイスのユーザが、画像シーケンスを関連付けるべき指定されたプロファイルを選択することを可能にするものとして、提供される。例となる実施では、インターフェイスロジック２１４は、デバイス２００のユーザが指定されたプロファイルを選択することを可能にするユーザインターフェイス２３２を提供する。
【００９１】
ステップ５０４で、画像シーケンスは、指定されたプロファイルの選択に応答して、指定されたプロファイルと関連付けられる。例となる実施では、関連付けロジック２１６は、画像シーケンスを指定されたプロファイルと関連付ける。例えば、関連付けロジック２１６は、プロファイル２４４において指定されたプロファイルを見つけてよい。関連付けロジック２１６は、画像シーケンスが指定されたプロファイルと関連することを示すよう、関連付けインジケータ２６４を生成してよい。
【００９２】
ステップ５０６で、画像シーケンスは、画像シーケンスを指定されたプロファイルと関連付けることに応答して、指定されたプロファイルの表現がカメラを含むデバイスによって表示されるべき複数のコンテキストの夫々において表示される。例となる実施では、表示ロジック２１８は、デバイス２００の複数のコンテキストの夫々において画像シーケンスを表示する。例えば、表示ロジック２１８は、関連付けインジケータ２６４の受信に基づき、複数のコンテキストの夫々において画像シーケンスを表示してよい。
【００９３】
更なる他の例となる実施形態では、フローチャート３００の方法は、図６のフローチャート６００に示されるステップの１つ以上を含んでよい。図６に示されるように、フローチャート６００の方法はステップ６０２から開始する。ステップ６０２で、表示されるよう選択される表現は、捕捉された複数の画像の中からプライマリ画像に設定される。例となる実施では、制御ロジック２０６が、プライマリ画像であるべき表現を設定する。
【００９４】
ステップ６０４で、ジェスチャが、カメラを含むデバイスに対して検出される。例となる実施では、ジェスチャロジック２２０がデバイス２００に対するジェスチャ２４８を検出する。例えば、ジェスチャロジック２２０は、ジェスチャ２４８が検出されていることを示すジェスチャインジケータ２６６を生成してよい。
【００９５】
ステップ６０６で、表現は、ジェスチャを検出することに応答して、捕捉された複数の画像の中のプライマリ画像から、捕捉された複数の画像から生成される画像シーケンスへと変更される。例となる実施では、制御ロジック２０６が表現をプライマリ画像から画像シーケンスへ変える。例えば、制御ロジック２０６は、ジェスチャインジケータ２６６の受信に基づき表現を変更してよい。
【００９６】
図７に示されるように、フローチャート７００の方法はステップ７０２から開始する。ステップ７０２で、プライマリ画像が受け取られる。各プライマリ画像は、そのプライマリ画像を含む各々の複数の画像に基づく各々の画像シーケンスへの参照を含むメタデータを有する。例となる実施では、表示ロジック２１８がプライマリ画像２４０を受け取る。
【００９７】
ステップ７０４で、仮想要素を含むユーザインターフェイスが提供される。各仮想要素は各々のプライマリ画像に対応する。各仮想要素は、各々のプライマリ画像のメタデータにおいて参照される複数の画像シーケンスの各々の画像シーケンスに更に対応する。例となる実施では、インターフェイスロジック２１４はユーザインターフェイス２３２を提供する。
【００９８】
ステップ７０６で、各仮想要素について、その仮想要素に対応するプライマリ画像は、その仮想要素において表示される。例となる実施では、各仮想要素について、表示ロジック２１８は、その仮想要素に対応するプライマリ画像をその仮想要素において表示する。
【００９９】
ステップ７０８で、ジェスチャが、指定された仮想要素に対して検出される。例となる実施では、ジェスチャロジック２２０がジェスチャ２４８を検出する。
【０１００】
ステップ７１０で、指定された仮想要素に対応する画像シーケンスは、指定された仮想要素に対応するプライマリ画像の代わりに、指定された仮想要素に対するジェスチャを検出することに応答して、指定された仮想要素において表示される。例となる実施では、表示ロジック２１８は、指定された仮想要素において、指定された仮想要素に対応する画像シーケンスを表示する。
【０１０１】
いくつかの例となる実施形態では、フローチャート７００の１つ以上のステップ７０２、７０４、７０６、７０８及び／又は７１０は実施されなくてよい。更に、ステップ７０２、７０４、７０６、７０８及び／又は７１０に加えて、あるいは、それに代えて、ステップが実施されてよい。例えば、例となる実施形態において、フローチャート７００の方法は、アクションの開始を表す、指定された仮想要素に対応する画像シーケンス内のフレームを特定することを含む。例えば、アクションロジック２２２は、アクションの開始を表す、指定された仮想要素に対応する画像シーケンス内のフレームを特定する。アクションロジック２２２は、フレームを示すフレームインジケータ２６８を生成してよい。この実施形態に従って、ステップ７１０は、指定された仮想要素に対応する画像シーケンスの表示をそのフレームで開始することを含む。例えば、表示ロジック２１８は、そのフレームで表示を開始してよい。この例に従って、表示ロジック２１８は、フレームインジケータ２６８に基づき、そのフレームで表示を開始してよい。
【０１０２】
他の例となる実施形態では、フローチャート７００の方法は、図８のフローチャート８００に示されるステップの１つ以上を含んでよい。図８に示されるように、フローチャート８００の方法はステップ８０２から開始する。ステップ８０２で、第２のジェスチャは、指定された仮想要素に対応する画像シーケンスをその指定された仮想要素において表示することに続いて、指定された仮想要素に対して検出される。例となる実施では、ジェスチャロジック２２０が第２のジェスチャを検出する。
【０１０３】
ステップ８０４で、指定された仮想要素に対応するプライマリ画像は、指定された仮想要素に対応する画像シーケンスの代わりに、指定された仮想要素に対して第２のジェスチャを検出することに応答して、指定された仮想要素において表示される。例となる実施では、表示ロジック２１８は、指定された仮想要素に対応するプライマリ画像をその指定された仮想要素において表示する。
【０１０４】
ステップ８０６で、指定された仮想要素に対応する画像シーケンスは、指定された仮想要素に対応するプライマリ画像の代わりに、指定された仮想要素に対して第２のジェスチャを検出することに応答して、指定された仮想要素において表示される。例となる実施では、表示ロジック２１８は、指定された仮想要素に対応する画像シーケンスをその指定された仮想要素において表示する。
【０１０５】
更なる他の例となる実施形態では、フローチャート７００の方法は、図９のフローチャート９００に示されるステップの１つ以上を含んでよい。図９に示されるように、フローチャート９００の方法はステップ９０２から開始する。ステップ９０２で、指定された仮想要素はジェスチャ以外の入力によって選択されているとの決定がなされる。例となる実施では、入力決定ロジック２２４は、指定された仮想要素が入力２５０によって選択されていることを決定する。入力決定ロジック２２４は、指定された仮想要素が入力２５０によって選択されていると決定することに応答して、起動命令２５２を生成してよい。起動命令２５２は、指定された仮想要素に対応する画像シーケンスが基づく複数の画像へのリンクをアクティブにするよう起動ロジック２２６に命令する。
【０１０６】
ステップ９０４で、指定された仮想要素に対応する画像シーケンスが基づく複数の画像へのリンクは、指定された仮想要素が入力によって選択されているとの決定に応答してアクティブにされる。例となる実施では、起動ロジック２２６がリンクをアクティブにする。例えば、起動ロジック２２６は、起動命令２５２の受信に基づきリンクをアクティブにしてよい。起動ロジック２２６は、リンクをアクティブにすることに応答して、リンクがアクティブにされていることを示す起動通知２５４を生成してよい。
【０１０７】
この実施形態の態様において、フローチャート７００の方法は、指定された仮想要素に対応する画像シーケンスが基づく複数の画像へのリンクをアクティブにすることに応答して、指定された仮想要素に対応する画像シーケンスが削除されるべき時間インスタンスを示すインジケータを提供することを含んでよい。例となる実施では、インジケーションロジック２２８は、指定された仮想要素に対応する画像シーケンスが削除されるべき時間インスタンスを示す時間インジケータ２７２を提供する。例えば、インジケーションロジック２２８は、起動通知２５４の受信に基づき時間インジケータ２７２を提供してよい。
【０１０８】
この実施形態の他の態様では、フローチャート７００の方法は、指定された仮想要素に対応する画像シーケンスが表示されるべきデバイスの複数のコンテキストからの１つ以上のコンテキストの選択を可能にするユーザインターフェイスを提供することを含んでよい。例えば、複数のコンテキストは、ロック画面コンテキスト、スタートメニューコンテキスト、呼び出し画面コンテキスト、コンタクトコンテキスト、フォトハブコンテキスト、フォトギャラリービューアーコンテキスト、シングルフォトビューアーコンテキスト、ピン留めフォトアルバムコンテキスト、カメラロールコンテキスト、オンラインアルバムコンテキスト、お気に入り写真コンテキスト、などを含んでよい。例となる実施では、インターフェイスロジック２１４は、１つ以上のコンテキストの選択を可能にするユーザインターフェイス２３２を提供してよい。
【０１０９】
更なる他の例となる実施形態では、フローチャート７００の方法は、図１０のフローチャート１０００に示されるステップの１つ以上を含んでよい。図１０に示されるように、フローチャート１０００の方法はステップ１００２から開始する。ステップ１００２で、１つ以上のプライマリ画像は、動いている少なくとも１つのオブジェクトも表していないとの決定がなされる。例となる実施では、アクションロジック２２２は、動いている少なくとも１つのオブジェクトも１つ以上のプライマリ画像が表していないことを決定する。
【０１１０】
ステップ１００４で、１つ以上のプライマリ画像の夫々についてのメタデータは、動いている少なくとも１つのオブジェクトも１つ以上のプライマリ画像が表していないと決定することに応答して、削除される。例となる実施では、削除ロジック２１２は、１つ以上のプライマリ画像の夫々についてのメタデータを削除する。例えば、アクションロジック２２２は、１つ以上のプライマリ画像の夫々についてのメタデータを削除するように削除ロジック２１２に命令する削除命令２６２を生成してよい。削除ロジック２１２は、削除命令２６２の受信に基づき、１つ以上のプライマリ画像の夫々についてのメタデータを削除してよい。
【０１１１】
デバイス２００は、図２に示されるコンポーネントの全てを含んでいなくともよいことが認識されるであろう。例えば、デバイス２００は、カメラ２０２、ディスプレイ２０４、アニメーションロジック２７０、ユーザエレメント２３０、ユーザインターフェイス２３２、問い合わせ要素２３４、制御ロジック２０６、画像シーケンスロジック２０８、メタデータロジック２１０、削除ロジック２１２、インターフェイスロジック２１４、関連付けロジック２１６、表示ロジック２１８、ジェスチャロジック２２０、アクションロジック２２２、入力決定ロジック２２４、起動ロジック２２６、及び／又はインジケーションロジック２２８のうちの１つ以上を含まなくてよい。更に、デバイス２００は、カメラ２０２、ディスプレイ２０４、アニメーションロジック２７０、ユーザエレメント２３０、ユーザインターフェイス２３２、問い合わせ要素２３４、制御ロジック２０６、画像シーケンスロジック２０８、メタデータロジック２１０、削除ロジック２１２、インターフェイスロジック２１４、関連付けロジック２１６、表示ロジック２１８、ジェスチャロジック２２０、アクションロジック２２２、入力決定ロジック２２４、起動ロジック２２６、及び／又はインジケーションロジック２２８に加えて、又はそれらに代えて、コンポーネントを含んでよい。
【０１１２】
図１１乃至１３は、実施形態に従って、メタデータに基づく写真及び／又は映像アニメーションを提供するための例となる方法のフローチャート１１００、１２００及び１３００を表す。例示を目的として、フローチャート１１００、１２００及び１３００は、実施形態に従って、図１のサーバ１０２の例である、図１４に示されるサーバ１４００に関して記載される。図１４に示されるように、サーバ１４００は、ストア１４０２と、サーバ側のメタデータに基づくアニメーションロジック１４３０（以降、「アニメーションロジック１４３０」）とを含む。アニメーションロジック１４３０は、識別ロジック１４０４、機能ロジック１４０６、提供ロジック１４０８、画像決定ロジック１４１０、及びバージョンロジック１４１２を含む。更なる構造上及び動作上の実施形態は、フローチャート１１００、１２００及び１３００に関する議論に基づき、当業者に明らかであろう。
【０１１３】
図１１に示されるように、フローチャート１１００の方法はステップ１１０２から開始する。ステップ１１０２で、プライマリ画像は、第１デバイスからネットワークを介してストアで受信される。プライマリ画像は、そのプライマリ画像を含む複数の画像に基づく指定された画像シーケンスへの参照（例えば、指定された画像シーケンスの場所を示す参照）を含むメタデータを有する。プライマリ画像は、第１ユーザのプロファイルを表す。例となる実施では、ストア１４０２が第１デバイスからプライマリ画像１４１４を受け取る。指定された画像シーケンスは、様々な方法のいずれかにおいて生成されてよい。例えば、複数の画像は第１のデバイスで捕捉されてよく、指定された画像シーケンスは第１デバイスで又はサーバ１４００で生成されてよい。他の例では、指定された画像シーケンスは、第１ユーザからの命令に従ってサーバ１４００で生成されてよい。更なる他の例では、指定された画像シーケンスはサードパーティアプリケーションによって生成されてよい。この例に従って、サードパーティアプリケーションは、指定された画像シーケンスをサーバ１４００へ提供してよい。
【０１１４】
ステップ１１０４で、ブートアップインジケータは、第１デバイスとは異なる第２デバイスからネットワークを介してストアで受信される。ブートアップインジケータは、第２デバイスがブートアッププロセスを実行していることを示す。例となる実施では、ストア１４０２が第２デバイスからブートアップインジケータを受け取る。
【０１１５】
ステップ１１０６で、第２デバイスに関連するコンタクト（連絡先）のリストにおいて第１ユーザが識別されるとの決定がなされる。例となる実施では、識別ロジック１４０４は、第２デバイスに関連するコンタクト１４３０において第１ユーザが識別されることを決定する。
【０１１６】
ステップ１１０８で、第２デバイスが画像シーケンスによりコンタクトを表すことが可能であるかどうかの判定がなされる。第２デバイスが画像シーケンスによりコンタクトを表すことが可能である場合には、フローはステップ１１１０へ続く。そうでない場合には、フローはステップ１１１４へ続く。例となる実施では、機能ロジック１４０６は、第２デバイスが画像シーケンスによりコンタクトを表すことが可能であるかどうかを判定する。例えば、機能ロジック１４０６は通知１４３２を受け取ってよい。通知１４３２は、第２デバイスが画像シーケンスによりコンタクトを表すことが可能であるかどうかを示してよい。この例に従って、機能ロジック１４０６は第２デバイスから通知１４３２を受け取ってよい。機能ロジック１４０６は、通知１４３２の受信に基づき、第２デバイスが画像シーケンスによりコンタクトを表すことが可能であるかどうかを判定してよい。機能ロジック１４０６は、第２デバイスが画像シーケンスによりコンタクトを表すことが可能であるかどうかを示す機能インジケータ１４２８を提供してよい。
【０１１７】
ステップ１１１０で、指定された画像シーケンスは参照に基づき取り出される。例となる実施では、提供ロジック１４０８が指定された画像シーケンス１４３４を取り出す。例えば、提供ロジック１４０８は、指定された画像シーケンス１４３４を提供するようにストア１４０２に命令する取り出し命令１４２６をストア１４０２へ与えてよい。提供ロジック１４０８は、取り出し命令１４２６を与えることに応答して、指定された画像シーケンス１４３４を受け取ってよい。例えば、指定された画像シーケンス１４３４はコンテンツ１４２０に含まれてよい。
【０１１８】
ステップ１１１２で、指定された画像シーケンスは、第１ユーザのプロファイルを表すよう第２デバイスへ提供される。例となる実施では、提供ロジック１４０８が、指定された画像シーケンス１４３４を第２デバイスへ提供する。
【０１１９】
ステップ１１１４で、プライマリ画像は、第１ユーザのプロファイルを表すよう、指定された画像シーケンスに代えて、第２デバイスへ提供される。例となる実施では、提供ロジック１４０８は、指定された画像シーケンス１４３４に代えてプライマリ画像１４１４を第２デバイスへ提供する。
【０１２０】
例となる実施形態において、第２デバイスは、画像シーケンスによりコンタクトを表す能力を有する。この実施形態に従って、第２デバイスに対してローカルで記憶されており且つストアと同期していない静止画像又は他の画像シーケンスは、第１ユーザのプロファイルを表すよう第２デバイスで、指定された画像シーケンスに代えて使用される。
【０１２１】
ステップ１１０４、１１０６、１１０８、１１１０、１１１２及び／又は１１１４は、複数のデバイスの夫々について、当該デバイスがブートアッププロセスを実行していることに応答して実施されてよいことが認識されるであろう。なお、例となる実施形態の適用範囲はこれに関して制限されない。
【０１２２】
ステップ１１０４、１１０６、１１０８、１１１０、１１１２及び／又は１１１４のうちの１つ以上は、第２デバイス（例えば、デバイス１０６Ａ〜１０６Ｎのいずれか）又はそこにあるクライアント側のメタデータに基づくアニメーションロジック（例えば、サーバ１０２のようなサーバ又はそこにあるサーバ側のメタデータに基づくアニメーションロジックよりむしろ）によって実施されてよいことが更に認識されるであろう。例えば、第２デバイスにあるストアは、ステップ１１０２でプライマリ画像シーケンスを受け取ってよい。第２デバイスにあるクライアント側のメタデータに基づくアニメーションロジックは、ステップ１１０６でコンタクトのリストにおいて第１のユーザが識別されることを決定し、ステップ１１０８で第２デバイスが画像シーケンスによりコンタクトを表すことが可能であるかどうかを判定し、且つ／あるいは、ステップ１１１０で（例えば、第２デバイスが画像シーケンスによりコンタクトを表すことが可能であるとの決定に基づき）指定された画像シーケンスを取り出してよい。第２デバイスは、後の使用のために、画像シーケンスをキャッシュしてよい。なお、例となる実施形態の適用範囲はこれに関して制限されない。第２デバイスは、プライマリ画像を提供することよりむしろ、ステップ１１１４でプライマリ画像を受け取ってよい。
【０１２３】
第２デバイスはコンタクトのリストを記憶してよい。然るに、サーバは、必ずしもコンタクトについて知っている必要はない。デバイスは、Ｇｏｏｇｌｅ（登録商標）又はＦａｃｅｂｏｏｋ（登録商標）のようなサードパーティアプリケーション（例えば、レガシーサービス）からステップ１１１０で画像シーケンスを取り出すことができる。
【０１２４】
いくつかの例となる実施形態では、フローチャート１１００の１つ以上のステップ１１０４、１１０６、１１０８、１１１０、１１１２及び／又は１１１４は実施されなくてもよい。更に、ステップ１１０４、１１０６、１１０８、１１１０、１１１２及び／又は１１１４に加えて、あるいは、それに代えて、ステップが実施されてよい。例えば、例となる実施形態において、フローチャート１１００の方法は、第１ユーザの各々のプロファイルを表す静止画像を記憶することを含む。プロファイルは各々のサービスに対応する。サービスの例には、制限なしに、マイクロソフトのＥｘｃｈａｎｇｅ  Ｓｅｒｖｅｒ、Ｆａｃｅｂｏｏｋ（登録商標）、などがある。例となる実施では、ストア１４０２が静止画像１４１８を記憶する。静止画像１４１８はプライマリ画像を含んでよいことが認識されるであろう。
【０１２５】
この実施形態に従って、ステップ１１１２は、プロファイルに対して使用されるよう第２デバイスへ指定された画像シーケンスを提供することによって、静止画像を指定された画像シーケンスによりオーバーライドすることを含む。例えば、提供ロジック１４０８は、（例えば、サーバ１４００のデフォルト設定に従って）静止画像１４１８を指定された画像シーケンス１４３４によりオーバーライドしてよい。
【０１２６】
他の例となる実施形態では、フローチャート１１００の方法は、図１２のフローチャート１２００に示されるステップの１つ以上を含んでよい。図１２に示されるように、フローチャート１２００の方法はステップ１２０２から開始する。ステップ１２０２で、プライマリ画像は静止画像であるとの決定がなされる。例えば、画像決定ロジック１４１０は、プライマリ画像が静止画像であることを決定してよい。
【０１２７】
ステップ１２０４で、プライマリ画像が静止画像であると決定することに応答して、プライマリ画像は、そのプライマリ画像がメタデータを含むかどうかを判定するようレビューされる。例えば、画像決定ロジック１４１０は、プライマリ画像１４１４がメタデータを含むかどうかを判定するようプライマリ画像１４１４をレビューしてよい。
【０１２８】
ステップ１２０２及び／又は１２０４は、第２デバイス又はそこにあるクライアント側のメタデータに基づくアニメーションロジック（例えば、サーバ１０２のようなサーバ又はそこにあるサーバ側のメタデータに基づくアニメーションロジックよりむしろ）によって実施されてよいことが認識されるであろう。例えば、第２デバイスにあるクライアント側のメタデータに基づくアニメーションロジックは、ステップ１２０２で、プライマリ画像が静止画像であることを決定してよい。第２デバイスにあるクライアント側のメタデータに基づくアニメーションロジックは、ステップ１２０４でプライマリ画像をレビューしてよい。
【０１２９】
他の例となる実施形態では、フローチャート１１００の方法は、図１３のフローチャート１３００に示されるステップの１つ以上を含んでよい。図１３に示されるように、フローチャート１３００の方法はステップ１３０２から開始してよい。ステップ１３０２で、指定された画像シーケンスのバージョンを示すバージョンインジケータは、指定された画像シーケンスの更新されたバージョンが存在することを示すよう変化しているとの決定がなされる。例えば、バージョンインジケータ１４２４は、指定された画像シーケンス１４３４のバージョンを示してよい。この例に従って、バージョンロジック１４１２は、指定された画像シーケンスの更新されたバージョンが存在することを示すようバージョンインジケータ１４２４が変化していることを決定してよい。
【０１３０】
ステップ１３０４で、指定された画像シーケンスの更新されたバージョンは第２デバイスへ提供される。例えば、提供ロジック１４０８が、指定された画像シーケンス１４３４の更新されたバージョンを第２デバイスへ提供してよい。この例に従って、バージョンロジック１４１２は、指定された画像シーケンス１４３４の更新されたバージョンを提供するようにストア１４０２に命令する取り出し命令１４２６をストア１４０２へ与えてよい。例えば、バージョンロジック１４１２は、バージョンインジケータ１４２４の受信に基づき、取り出し命令１４２６を与えてよい。提供ロジック１４０８は、取り出し命令１４２６を与えることに応答して、指定された画像シーケンス１４３４の更新されたバージョンをストア１４０２から受け取ってよい。指定された画像シーケンスの更新されたバージョンは、例えば、コンテンツ１４２０に含まれてよい。提供ロジック１４０８は、ストア１４０２から受け取ると、指定された画像シーケンスの更新されたバージョンを提供してよい。
【０１３１】
ステップ３０２は、第２デバイス又はそこにあるクライアント側のメタデータに基づくアニメーションロジック（例えば、サーバ１０２のようなサーバ又はそこにあるサーバ側のメタデータに基づくアニメーションロジックよりむしろ）によって実施されてよいことが認識されるであろう。例えば、第２デバイスにあるクライアント側のメタデータに基づくアニメーションロジックは、ステップ１３０２で、バージョンインジケータが変化していることを決定してよい。第２デバイスにあるクライアント側のメタデータに基づくアニメーションロジックは、更新されたバージョンを提供することよりむしろ、ステップ１３０４で、指定された画像シーケンスの更新されたバージョンを受け取って（例えば、取り出して）よい。
【０１３２】
サーバ１４００は、図１４に示されるコンポーネントの全てを含んでいなくともよいことが認識されるであろう。例えば、サーバ１４００は、ストア１４０２、アニメーションロジック１４０３、識別ロジック１４０４、機能ロジック１４０６、提供ロジック１４０８、画像決定ロジック１４１０、及び／又はバージョンロジック１４１２のうちの１つ以上を含まなくてよい。更に、サーバ１４００は、ストア１４０２、アニメーションロジック１４０３、識別ロジック１４０４、機能ロジック１４０６、提供ロジック１４０８、画像決定ロジック１４１０、及び／又はバージョンロジック１４１２に加えて、又はそれらに代えて、コンポーネントを含んでよい。
【０１３３】
図１５は、概して１５０２として示されている、様々な任意のハードウェア及びソフトウェアコンポーネントを含むモバイルデバイス１５００を例示するシステム図である。モバイルデバイスにおける如何なるコンポーネント１５０２も、如何なる他のコンポーネントとも通信することができる。なお、説明の簡単のために、全ての接続が示されているわけではない。モバイルデバイス１５００は、様々なコンピュータデバイス（例えば、携帯電話機、スマートフォン、携帯型コンピュータ、パーソナルデジタルアシスタント（ＰＤＡ；Personal  Digital  Assistant）、など）のいずれであることもでき、セルラー又は衛星ネットワークのような１つ以上のモバイル通信ネットワーク１５０４との、あるいは、ローカルエリア又はワイドエリアネットワークとの無線による双方向通信を可能にすることができる。
【０１３４】
表されているモバイルデバイス１５００は、信号符号化、データ処理、入力／出力処理、電力制御、及び／又は他の機能のようなタスクを実施するためのコントローラ又はプロセッサ１５１０（例えば、信号プロセッサ、マイクロプロセッサ、ＡＳＩＣ、又は他の制御及び処理ロジック回路）を含むことができる。オペレーティングシステム１５１２は、コンポーネント１５０２の割り当て及び利用並びに１つ以上のアプリケーションプログラム１５１４（別名、アプリケーション）のためのサポートを制御することができる。アプリケーションプログラム１５１４は、共通のモバイルコンピューティングアプリケーション（例えば、電子メールアプリケーション、カレンダー、コンタクトマネージャ、ウェブブラウザ、メッセージングアプリケーション）及びあらゆる他のコンピューティングアプリケーション（例えば、ワードプロセッシングアプリケーション、マッピングアプリケーション、メディアプレイヤーアプリケーション）を含むことができる。
【０１３５】
表されているモバイルデバイス１５００はメモリ１５２０を含むことができる。メモリ１５２０は非リムーバブルメモリ１５２２及び／又はリムーバブルメモリ１５２４を含むことができる。非リムーバブルメモリ１５２２はＲＡＭ、ＲＯＭ、フラッシュメモリ、ハードディスク、又は他のよく知られているメモリ記憶技術を含むことができる。リムーバブルメモリ１５２４はフラッシュメモリ、若しくはＧＳＭ（登録商標）通信システムでよく知られている加入者識別モジュール（ＳＩＭ；Subscriber  Identity  Module）、又は他のよく知られているメモリ記憶技術（例えば、“スマートカード”）を含むことができる。メモリ１５２０は、オペレーティングシステム１５１２及びアプリケーション１５１４を実行するためのデータ及び／又はコードを記憶するために使用され得る。データの例には、１つ以上の有線又は無線ネットワークを介して１つ以上のネットワークサーバ又は他のデバイスへ送信される及び／又はそれらから受信されるウェブページ、テキスト、画像、音響ファイル、映像データ、又は他のデータが含まれ得る。メモリ１５２０は、国際移動電話加入者識別番号（ＩＭＳＩ；International  Mobile  Subscriber  Identity）のような加入者識別子、及び国際移動電話機体識別番号（ＩＭＥＩ；International  Mobile  Equipment  Identifier）のような機器識別子を記憶するために使用され得る。そのような識別子は、ユーザ及び機器を識別するようネットワークサーバへ送信され得る。
【０１３６】
モバイルデバイス１５００は、タッチスクリーン１５３２、マイクロホン１５４３、カメラ１５３６、物理キーボード１５３８及び／又はトラックボール１５４０のような１つ以上の入力デバイス１５３０と、スピーカ１５５２及びディスプレイ１５５４のような１つ以上の出力デバイス１５５０とをサポートすることができる。タッチスクリーン１５３２のようなタッチスクリーンは種々の方法において入力を検出することができる。例えば、容量性タッチスクリーンは、表面にわたって流れている電流をオブジェクト（例えば、指先）が歪曲又は中断する場合に、タッチ入力を検出する。他の例として、タッチスクリーンは、光学センサを使用して、光学センサからのビームが中断される場合にタッチ入力を検出することができる。スクリーンの表面との物理接触は、入力が何らかのタッチスクリーンによって検出されるためには不要である。例えば、タッチスクリーン１５３２は、当該技術でよく理解されているように、容量性検知により指の空中静止の検出をサポートすることができる。カメラに基づく検出及び超音波に基づく検出を含む他の検出技術が使用され得る。指の空中静止を実施するよう、ユーザの指は、０．１から０．２５インチの間、又は０．２５インチから０．５インチの間、又は０．５インチから０．７５インチの間、又は０．７５インチから１インチの間、１インチから１．５インチの間などといった、タッチスクリーンの上から所定の間隔距離内に通常はある。
【０１３７】
モバイルデバイス１５００は、クライアント側のメタデータに基づくアニメーションロジック１５９２（以降、「アニメーションロジック１５９２」）を含むことができる。アニメーションロジック１５９２は、本願で記載される技術のいずれか１つ以上に従ってモバイルデバイス１５００において写真及び／又は映像アニメーションを提供するよう構成される。
【０１３８】
他の可能な出力デバイス（図示せず。）は、圧電又は他の触覚出力デバイスを含むことができる。いくつかのデバイスは、１よりも多い入力／出力機能を果たすことができる。例えば、タッチスクリーン１５３２及びディスプレイ１５５４は、単一の入力／出力デバイスにまとめられ得る。入力デバイス１５３０はナチュラルユーザインターフェイス（ＮＵＩ；Natural  User  Interface）を含むことができる。ＮＵＩは、ユーザがマウス、キーボード、リモートコントロール、及び同様のもののような入力デバイスによって課される人為的な制約に縛られずに“自然”な様式においてデバイスと対話することを可能にするあらゆるインターフェイス技術である。ＮＵＩメソッドの例には、発話認識、タッチ及びスタイラス認識、スクリーン上の及びスクリーンの隣接したジェスチャ認識、空中ジェスチャ、頭部及び眼球の追跡、ボイス及びスピーチ、ビジョン、タッチ、ジェスチャ、並びにマシンインテリジェンスに依存するものが含まれる。ＮＵＩの他の例には、加速度計／ジャイロスコープによるモーションジェスチャ検出、顔認識、３Ｄ表示、頭部、眼球及び凝視（gaze）の追跡、没入型拡張リアリティ及び仮想リアリティシステムが含まれ、それらの全てが、より自然なインターフェイスとともに、電界検知電極（ＥＥＧ及び関連する方法）により脳の活動を検知する技術を提供する。よって、１つの具体的な例において、オペレーティングシステム１５１２又はアプリケーション１５１４は、ユーザが音声コマンドを介してデバイス１５００を操作することを可能にする音声制御インターフェイスの部分として発話認識ソフトウェアを有することができる。更に、デバイス１５００は、ゲームアプリケーションに入力を与えるようジェスチャを検出し解釈することといった、ユーザの空間ジェスチャを介したユーザインタラクションを可能にする入力デバイス及びソフトウェアを有することができる。
【０１３９】
無線モデム１５６０はアンテナ（図示せず。）へ結合され得、当該技術でよく理解されているように、プロセッサ１５１０と外部デバイスとの間の双方向の通信をサポートすることができる。モデム１５６０は一般的に示されており、モバイル通信ネットワーク１５０４及び／又は他の無線に基づくモデム（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）１５６４及び／又はＷｉ−Ｆｉ（登録商標）１５６２）と通信するセルラーモデム１５６６を含むことができる。無線モデム１５６０の少なくとも１つは、単一のセルラーネットワーク、セルラーネットワーク間、又はモバイルデバイスと公衆交換電話網（ＰＳＴＮ；public  switched  telephone  network）との間のデータ及び音声通信のためのＧＳＭ（登録商標）ネットワークのような１つ以上のセルラーネットワークとの通信のために通常は構成される。
【０１４０】
モバイルデバイス１５００は、少なくとも１つの入力／出力ポート１５８０、電源１５８２、グローバルポジショニングシステム（ＧＰＳ；Global  Positioning  System）受信機のような衛星ナビゲーションシステム受信機１５８４、加速度計１５８６、及び／又はＵＳＢポート、ＩＥＥＥ１３９４（ＦｉｒｅＷｉｒｅ（登録商標））ポート及び／又はＲＳ−２３２ポートであることができる物理コネクタ１５９０を更に含むことができる。当業者によって認識されるように、如何なるコンポーネントも削除されてよく、他のコンポーネントが加えられ得るので、表されているコンポーネント１５０２は必要とされないことがあり、あるいは、全てを含むわけではない。
【０１４１】
開示されている方法のいくつかの動作が提示の便宜上特定の順序で記載されているが、このような記載は、特定の順序が本願で示されている具体的な言葉によって必要とされない限りは、並べ替えを包含するものと理解されるべきである。例えば、順次に記載される動作は、いくつかの場合に、並べ替えられるか、又は同時に実施されてよい。更に、簡単のために、添付の図は、開示されている方法が他の方法に関連して使用され得る様々な方法を示さないことがある。
【０１４２】
アニメーションロジック１１２Ａ〜１１２Ｎ、アニメーションロジック１１０、アニメーションロジック２７０、制御ロジック２０６、画像シーケンスロジック２０８、メタデータロジック２１０、削除ロジック２１２、インターフェイスロジック２１４、関連付けロジック２１６、表示ロジック２１８、ジェスチャロジック２２０、アクションロジック２２２、入力決定ロジック２２４、起動ロジック２２６、インジケーションロジック２２８、アニメーションロジック１４３０、識別ロジック１４０４、機能ロジック１４０６、提供ロジック１４０８、画像決定ロジック１４１０、及び／又はバージョンロジック１４１２、フローチャート３００、フローチャート４００、フローチャート５００、フローチャート６００、フローチャート７００、フローチャート８００、フローチャート９００、フローチャート１０００、フローチャート１１００、フローチャート１２００、及び／又はフローチャート１３００のいずれか１つ以上は、ハードウェア、ソフトウェア、又はそれらのあらゆる組み合わせにおいて実装されてよい。
【０１４３】
例えば、アニメーションロジック１１２Ａ〜１１２Ｎ、アニメーションロジック１１０、アニメーションロジック２７０、制御ロジック２０６、画像シーケンスロジック２０８、メタデータロジック２１０、削除ロジック２１２、インターフェイスロジック２１４、関連付けロジック２１６、表示ロジック２１８、ジェスチャロジック２２０、アクションロジック２２２、入力決定ロジック２２４、起動ロジック２２６、インジケーションロジック２２８、アニメーションロジック１４３０、識別ロジック１４０４、機能ロジック１４０６、提供ロジック１４０８、画像決定ロジック１４１０、及び／又はバージョンロジック１４１２、フローチャート３００、フローチャート４００、フローチャート５００、フローチャート６００、フローチャート７００、フローチャート８００、フローチャート９００、フローチャート１０００、フローチャート１１００、フローチャート１２００、及び／又はフローチャート１３００のいずれか１つ以上は、１つ以上のプロセッサにおいて実行されるよう構成されたコンピュータプログラムコードとして実装されてよい。
【０１４４】
他の例では、アニメーションロジック１１２Ａ〜１１２Ｎ、アニメーションロジック１１０、アニメーションロジック２７０、制御ロジック２０６、画像シーケンスロジック２０８、メタデータロジック２１０、削除ロジック２１２、インターフェイスロジック２１４、関連付けロジック２１６、表示ロジック２１８、ジェスチャロジック２２０、アクションロジック２２２、入力決定ロジック２２４、起動ロジック２２６、インジケーションロジック２２８、アニメーションロジック１４３０、識別ロジック１４０４、機能ロジック１４０６、提供ロジック１４０８、画像決定ロジック１４１０、及び／又はバージョンロジック１４１２、フローチャート３００、フローチャート４００、フローチャート５００、フローチャート６００、フローチャート７００、フローチャート８００、フローチャート９００、フローチャート１０００、フローチャート１１００、フローチャート１２００、及び／又はフローチャート１３００のいずれか１つ以上は、ハードウェアロジック／電気回路として実装されてよい。
【０１４５】
例えば、実施形態において、アニメーションロジック１１２Ａ〜１１２Ｎ、アニメーションロジック１１０、アニメーションロジック２７０、制御ロジック２０６、画像シーケンスロジック２０８、メタデータロジック２１０、削除ロジック２１２、インターフェイスロジック２１４、関連付けロジック２１６、表示ロジック２１８、ジェスチャロジック２２０、アクションロジック２２２、入力決定ロジック２２４、起動ロジック２２６、インジケーションロジック２２８、アニメーションロジック１４３０、識別ロジック１４０４、機能ロジック１４０６、提供ロジック１４０８、画像決定ロジック１４１０、及び／又はバージョンロジック１４１２、フローチャート３００、フローチャート４００、フローチャート５００、フローチャート６００、フローチャート７００、フローチャート８００、フローチャート９００、フローチャート１０００、フローチャート１１００、フローチャート１２００、及び／又はフローチャート１３００のいずれか１つ以上は、システムオンチップ（ＳｏＣ；system-on-chip）において実装されてよい。ＳｏＣは、その機能を実施するよう、プロセッサ（例えば、マイクロコントローラ、マイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ；digital  signal  processor）、など）、メモリ、１つ以上の通信インターフェイス、及び／又は更なる回路及び／又は埋め込みファームウェアを含む集積回路チップを含んでよい。
【０１４６】
ＩＩＩ．例となるコンピュータシステム
図１６は、実施形態が実施され得るコンピュータ１６００を例示する。例えば、図１に示されるデバイス１０６Ａ〜１０６Ｎ及び／又はサーバ１０２のいずれもが、コンピュータ１６００の１つ以上の機能及び／又は代替の機能を含め、コンピュータ１６００により実装されてよい。コンピュータ１６００は、例えば、従来のパーソナルコンピュータ、モバイルコンピュータ、又はワークステーションの形をした汎用コンピュータデバイスであってよく、あるいは、コンピュータ１６００は、特別目的のコンピュータデバイスであってよい。ここで与えられるコンピュータ１６００の記載は、例示を目的として与えられており、制限であるよう意図されない。実施形態は、当業者に知られるような更なるタイプのコンピュータシステムにおいて実装されてよい。
【０１４７】
図１６に示されるように、コンピュータ１６００は、プロセッシングユニット１６０２と、システムメモリ１６０４と、システムメモリ１６０４を含む様々なシステムコンポーネントをプロセッシングユニット１６０２へ結合するバス１６０６とを含む。バス１６０６は、メモリバス若しくはメモリコントローラ、ペリフェラルバス、アセラレイティッド・グラフィクス・ポート、及び様々なバスアーキテクチャのいずれかによるプロセッサ若しくはローカルバスを含む、いくつかのタイプのバス構造のいずれかの１つ以上を表す。システムメモリ１６０４は、リードオンリーメモリ（ＲＯＭ；read  only  memory）１６０８及びランダムアクセスメモリ（ＲＡＭ；random  access  memory）１６１０を含む。基本入力／出力システム（ＢＩＯＳ；basic  input/output  system）１６１２はＲＯＭ１６０８に記憶されている。
【０１４８】
コンピュータ１６００は、次のドライブ：ハードディスクから読み出し且つハードディスクへ書き込むハードディスクドライブ１６１４、リムーバブル磁気ディスク１６１８から読み出し且つ該ディスク１６１８へ書き込む磁気ディスクドライブ１６１６、及びＣＤ  ＲＯＭ、ＤＶＤ  ＲＯＭ又は他の光学媒体のようなリムーバブル光ディスク１６２２から読み出し且つ該ディスク１６２２へ書き込む光ディスクドライブ１６２０の１つ以上を更に備える。ハードディスクドライブ１６１４、磁気ディスクドライブ１６１６及び光ディスクドライブ１６２０は、ハードディスクドライブインターフェイス１６２４、磁気ディスクドライブインターフェイス１６２６、及び光学ドライブインターフェイス１６２８によって夫々バス１６０６へ接続されている。ドライブ及びそれらの関連するコンピュータ可読記憶媒体は、コンピュータ読み出し可能な命令、データ構造、プログラムモジュール、及びコンピュータのための他のデータの不揮発記憶を提供する。ハードディスク、リムーバブル磁気ディスク及びリムーバブル光ディスクが記載されているが、フラッシュメモリカード、デジタルビデオディスク、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、及び同様のもののような他のタイプのコンピュータ可読記憶媒体がデータを記憶するために使用されてよい。
【０１４９】
多数のプログラムモジュールが、ハードディスク、磁気ディスク、光ディスク、ＲＯＭ又はＲＡＭに記憶されてよい。それらのプログラムは、オペレーティングシステム１６３０、１つ以上のアプリケーションプログラム１６３２、他のプログラムモジュール１６３４、及びプログラムデータ１６３６を含む。アプリケーションプログラム１６３２又はプログラムモジュール１６３４は、例えば、本願で記載されるアニメーションロジック１１２Ａ〜１１２Ｎ、アニメーションロジック１１０、アニメーションロジック２７０、制御ロジック２０６、画像シーケンスロジック２０８、メタデータロジック２１０、削除ロジック２１２、インターフェイスロジック２１４、関連付けロジック２１６、表示ロジック２１８、ジェスチャロジック２２０、アクションロジック２２２、入力決定ロジック２２４、起動ロジック２２６、インジケーションロジック２２８、アニメーションロジック１４３０、識別ロジック１４０４、機能ロジック１４０６、提供ロジック１４０８、画像決定ロジック１４１０及び／又はバージョンロジック１４１２、フローチャート３００（フローチャート３００のいずれかのステップを含む。）、フローチャート４００（フローチャート４００のいずれかのステップを含む。）、フローチャート５００（フローチャート５００のいずれかのステップを含む。）、フローチャート６００（フローチャート６００のいずれかのステップを含む。）、フローチャート７００（フローチャート７００のいずれかのステップを含む。）、フローチャート８００（フローチャート８００のいずれかのステップを含む。）、フローチャート９００（フローチャート９００のいずれかのステップを含む。）、フローチャート１０００（フローチャート１０００のいずれかのステップを含む。）、フローチャート１１００（フローチャート１１００のいずれかのステップを含む。）、フローチャート１２００（フローチャート１２００のいずれかのステップを含む。）、及び／又はフローチャート１３００（フローチャート１３００のいずれかのステップを含む。）のいずれか１つ以上を実装するコンピュータプログラムロジックを含んでよい。
【０１５０】
ユーザは、キーボード１６３８及びポインティングデバイス１６４０のような入力デバイスを通じてコンピュータ１６００にコマンド及び情報を入力してよい。他の入力デバイス（図示せず。）は、マイクロホン、ジョイスティック、ゲームパッド、サテライトディッシュ、スキャナ、タッチスクリーン、カメラ、加速度計、ジャイロスコープ、又は同様のものを含んでよい。それら及び他の入力デバイスは、バス１６０６へ結合されているシリアルポートインターフェイス１６４２を通じてプロセッシングユニット１６０２へしばしば接続されるが、パラレルポート、ゲームポート、又はユニバーサルシリアルポート（ＵＳＢ）のような他のインターフェイスによって接続されてよい。
【０１５１】
表示デバイス１６４４（例えば、モニタ）も、ビデオアダプタ１６４６のようなインターフェイスを介してバス１６０６へ接続されている。表示デバイス１６４４に加えて、コンピュータ１６００は、スピーカ及びプリンタのような他の周辺出力機器（図示せず。）を含んでよい。
【０１５２】
コンピュータ１６００は、ネットワーク上で通信を確立するために、ネットワークインターフェイス若しくはアダプタ１６５０、モデム１６５２、又は他の手段を通じてネットワーク１６４８（例えば、インターネット）へ接続されている。モデム１６５２は内部又は外部にあってよく、シリアルポートインターフェイス１６４２を介してバス１６０６へ接続されている。
【０１５３】
本願で使用されるように、語「コンピュータプログラム媒体」及び「コンピュータ可読記憶媒体」は、ハードディスクドライブ１６１４も付随するハードディスク、リムーバブル磁気ディスク１６１８、リムーバブル光ディスク１６２２のような媒体、並びにフラッシュメモリカード、デジタルビデオディスク、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、及び同様のもののような他の媒体を一般に指すために使用される。そのようなコンピュータ可読記憶媒体は、通信媒体と区別され、それと重なり合わない（通信媒体を含まない。）。通信媒体は、コンピュータ読出可能な命令、データ構造、プログラムモジュール又は他のデータを、搬送波のような変調データ信号において具現する。語「変調データ信号」は、信号において情報を符号化するようにその特性の１つ以上が設定又は変更されている信号を意味する。一例として、制限なしに、通信媒体は、音響、ＲＦ、赤外線及び他の無線媒体のような無線媒体並びに有線媒体を含む。例となる実施形態は、そのような通信媒体にも向けられている。
【０１５４】
上述されたように、コンピュータプログラム及びモジュール（アプリケーションプログラム１６３２及び他のプログラムモジュール１６３４を含む。）は、ハードディスク、磁気ディスク、光ディスク、ＲＯＭ又はＲＡＭに記憶されてよい。そのようなコンピュータプログラムは、ネットワークインターフェイス１６５０又はシリアルポートインターフェイス１６４２を介して受信されてもよい。そのようなコンピュータプログラムは、アプリケーションによって実行又はロードされる場合に、コンピュータ１６００が、本願で論じられている実施形態の特徴を実装することを可能にする。然るに、そのようなコンピュータプログラムは、コンピュータ１６００のコントローラに相当する。
【０１５５】
例となる実施形態は、コンピュータが使えるあらゆる媒体でも記憶されるソフトウェア（例えば、コンピュータ読出可能な命令）を有するコンピュータプログラム製品にも向けられている。そのようなソフトウェアは、１つ以上のデータ処理デバイスで実行される場合に、本願で記載されるようにデータ処理デバイスを動作させる。実施形態は、現在又は将来知られている、コンピュータが使える又はコンピュータ読出可能な如何なる媒体も用いてよい。コンピュータ読出可能な媒体の例は、制限なしに、ＲＡＭ、ハードドライブ、フロッピー（登録商標）ディスク、ＣＤ  ＲＯＭ、ＤＶＤ  ＲＯＭ、ｚｉｐディスク、テープ、磁気記憶デバイス、光学記憶デバイス、ＭＥＭＳに基づく記憶デバイス、ナノテクノロジに基づく記憶デバイス、及び同様のもののような記憶デバイスを含む。
【０１５６】
開示されている技術は、如何なる特定のコンピュータ又はハードウェアのタイプにも制限されないことが認識されるであろう。適切なコンピュータ及びハードウェアの特定の詳細は、よく知られており、本開示で詳細に示される必要はない。
【０１５７】
ＩＶ．結論
様々な実施形態が上述されてきたが、それらは限定ではなく単に一例として提示されていることが理解されるべきである。当業者に明らかなように、形態及び詳細の様々な変更は、本発明の主旨及び適用範囲から外れることなしにそれらにおいて行われてよい。よって、本発明の広さ及び適用範囲は、上記の例となる実施形態のいずれによっても制限されるべきではなく、特許請求の範囲及びそれらの均等に従ってのみ定義されるべきである。
【図１】
0006576940.tif 000002
【図２】
0006576940.tif 000003
【図３】
0006576940.tif 000004
【図４】
0006576940.tif 000005
【図５】
0006576940.tif 000006
【図６】
0006576940.tif 000007
【図７】
0006576940.tif 000008
【図８】
0006576940.tif 000009
【図９】
0006576940.tif 000010
【図１０】
0006576940.tif 000011
【図１１】
0006576940.tif 000012
【図１２】
0006576940.tif 000013
【図１３】
0006576940.tif 000014
【図１４】
0006576940.tif 000015
【図１５】
0006576940.tif 000016
【図１６】
0006576940.tif 000017