以下の発明を実施するための形態は、本開示の図及び例示的な実施形態のさらなる詳細を提供する。図の間の冗長な要素の参照番号及び説明は、明確にするために省略されている。説明全体にわたって使用される用語は例として提供され、限定するものではない。
本開示では、「画像」、「コンテンツメディア」、「コンテンツメディア表現」、又は「メディア表現」という用語は、写真、ビデオ、3次元又は360°の画像記録、描画、絵画、スケッチ、コンピュータ生成画像、或いは生成され、取り込まれる場合があり、又はそうでない場合、現実世界におけるイベント若しくは出来事を表す場合がある任意の他の視覚的表現のうちの1又は複数を記述するように互換的に使用されてもよい。これらの用語はまた、記録、或いは生成され、取り込まれる場合があり、又はそうでない場合、現実世界におけるイベント若しくは出来事を表す場合がある任意の他の音声表現を含んでもよい。「画像」、「コンテンツメディア」、「コンテンツメディア表現」、又は「メディア表現」は、限定はしないが、カメラ、デジタルレコーダ、アナログレコーダ、移動体通信装置、又は当業者に明らかであり得る任意の他のメディア取込み装置を含む、任意のメディア取込み装置によって取り込まれてもよい。「コンテンツメディア」、「コンテンツメディア表現」、又は「メディア表現」は、限定はしないが、磁気記憶装置、光記憶装置、半導体記憶装置、有機記憶装置、又は当業者には明らかであり得る任意の他の記憶装置を含む、コンピュータ可読媒体上にデータファイル又は他のデータ構造として記憶されてもよい。さらに、コンピュータ可読媒体は、ローカルの記憶装置、クラウドベースの記憶装置、遠隔配置されたサーバ、又は当業者には明らかであり得る任意の他の記憶装置を含んでもよい。
さらに、本開示では、「キャプション」、「テキスチュアル要約」、「テキスト要約」という用語はすべて、記述された「画像」、「コンテンツメディア」、「コンテンツメディア表現」、又は「メディア表現」のうちの1又は複数の内容を表すことができる記述的テキストベースの要約を表すために、互換的に使用されてもよい。
例示的な実施形態の態様は、メディアオブジェクト、限定ではないが、たとえば、写真のグループの分類に関する。より具体的には、グループは、個々の分類の加算又は連結ではなく、入力として提供される。それに応じて、最上位ドメインが分類に対して決定される。最上位ドメインに基づいて、一組の写真が選択され、シーケンスクラスタ(sequence cluster)にグループ化される。
最上位ドメインは、決定論的な方式又はルールベースの手法においてプログラムで提供されてもよい。あるいは、最上位ドメインは、機械学習、ニューラルネットワークなどの既存の人工知能技術などを使用して、データから学習されてもよい。それに応じて、個々の写真は、限定はしないが、スタンプ、絵文字、又はテキスト(たとえば、「私にハッピーバースデー」などのバルーンコールアウト)を含む場合がある注釈の提案に基づいて、ユーザによって注釈付けされてもよい。同様に、写真フィルタ効果が適用されてもよい。
たとえば、限定ではないが、例として、誕生日パーティのようなイベントでは、写真のコレクションは、会場に到着し、互いに会う画像、キャンドル及びケーキ、並びに完全又は部分的なラッピングに関連付けられた贈り物を含んでもよい。
例示的な実施形態はフォトブックに関する場合がある。しかしながら、本発明の範囲から逸脱することなく、他の用途がそれに置き換えられてもよい。同様に、写真のシーケンスは、クラウドなどの遠隔の記憶装置及び処理場所で処理されてもよく、スタンドアロンカメラ、又はカメラなどの画像取り込み装置を含むスマートフォンなどのモバイルコンピュータ装置などの、ユーザ装置又はクライアント側で処理されてもよい。そのようなシナリオでは、限定はしないが、写真に関連付けられたメタデータ、交換可能画像ファイルフォーマット(EXIF)データを含む、適切なメタデータが使用されてもよい。それに応じて、写真は、写真印刷などのさらなる用途、又は編成ソフトウェア、オンラインバッチ、若しくはソーシャルネットワーク共有などのために「前処理」される。
図3は、例示的な実施形態によるフロー300を示す。初期段階において、写真などのメディアオブジェクトが取り込まれる。これらの写真は、図3では写真1...写真nとして示されている。
写真301−1...301−nは、303においてバッチとして分類される(たとえば、領域抽出)。より具体的には、選択された写真に基づいて、親レベルのトピック又はテーマにより分類するといった方法が提供される。たとえば、限定ではないが、結婚式の会場又はホール、ウェディングドレス、及びスーツを着た人々のための複数の写真が「結婚式」を構成する場合がある。それに応じて、そのグループのための単一の分類が開発され、3つの写真のうちの1つのみが「結婚式」として示される。
たとえば、限定ではないが、グループ化は、イベント用のスクリプトを識別することによって実行されてもよい。イベントは、ある程度の分散がある標準的なタイムラインをもつように定義されてもよい。スクリプト内のイベントは、システムによって決定されるようにグループ化されて表示される。たとえば、限定ではないが、誕生日のスクリプトでは、イベントは、贈り物の写真、ろうそくを吹き消すこと、及び誕生日パーティイベントのスクリプトに関連付けられた他のイベントを含んでもよい。あるいは、結婚式がスクリプトであってもよく、結婚しようとする2人、司会者、立会人などはスクリプト内の関係者であってもよい。出席者、ゲストと結婚しようとする人との関係などの、特定のタイプの関係者が一緒にプールされてもよい。
システムは、それに応じて、イベントが誕生日パーティであると特定されると、タイムラインのイベントに関連付けられた写真を検索してグループを生成する。スクリプトを使用してグループを決定すると、スクリプトの様々なイベントにわたる多様な写真が提供される。本システムは、グループ内のスクリプトのイベントを適切且つ比例して表すように、イベントから写真を選択する。所望により、グループ化を実行する際にシステムを支援するために、ユーザは、スクリプトを含むイベントから選ぶようにイベントのリストを提供される場合がある。したがって、最も代表的であるか、又は最も高く表現される顔に基づいて写真をグループ化する代わりに、写真は、スクリプトのイベント及びスクリプト内の関係者の役割に基づいてグループ化される。よって、たとえば、結婚式の状況では、結婚式フォトブックは、写真の中で最も代表的に表示される出席者とは対照的に、結婚しようとする人がより多くのショットに表示されるように、それらの人の役割に基づいて様々な関係者の比例的表現を有するはずである。同様に、誕生日パーティの状況では、写真のグループ化は、贈り物の開封、ろうそくの吹き消し、風船の共有、ケーキを食べることなどの様々なイベントを含む。
さらに、グループ内の関係者は、グループの選択のための写真を決定するために識別され、使用されてもよい。関係者は、スクリプトに関連することが知られている人であってもよい。たとえば、限定ではないが、結婚式のスクリプトの状況では、写真グループは、結婚しようとするカップル、家族、親しい友人などの写真を含むべきである。
識別されたスクリプト及び関係者に対して、関連性スコアが決定されてもよい。たとえば、限定ではないが、コンピュータビジョン又は他の技術によって写真を分析し、グループに分類するために使用されてもよい。スクリプティング(scripting)及び関係者の前述の識別は、コンピュータビジョンを介する視覚的識別によって実行されてもよい。それに応じて、データ(たとえば、履歴データ)及び訓練によって、スクリプトと関係者とを関連付けてもよい。別の手法は、ユーザが手動でラベルを生成することを可能にすることであってもよい。さらに、1人又は複数のユーザの認可により、ユーザにわたるデータ及び行動分析が集約又は混合されるように、集約が実行されてもよい。さらに、データのサブセットは、コンテキストに基づいて開発又は決定されてもよく、その結果、以下でより詳細に説明されるように、ドメインモデルが調整される。なお、「コンテキスト」とは、人の行動やできごとの背景にある、人の意識や考え方、取り巻く状況や環境などの事情又は背後関係を意味する。
さらに、各画像のレイアウトは、たとえば、繰り返しを介して、スクリプト/関係者の関係の抽象化によって識別される。レイアウトは、フォトブックを作成するテーマコンテキストを提供することができる。さらに、ユーザは、時間の経過とともに、又は異なる場所で、同様のレイアウトを有する写真をグループ化するオプションを提供されてもよい。たとえば、限定ではないが、規定された立ち位置又は座席の配置内の子供及び親の写真は、異なる地理的位置又は異なる期間にわたってグループ化されたそれらの人の写真を有してもよい。たとえば、年間にわたる写真撮影で家族のグループ化が提供され、生成されたグループは、年代順のスクリプト内のイベントの候補、たとえば、年次休暇の挨拶カードコラージュ用であってもよい。あるいは、誕生日パーティなどで同様に一緒に座っていることなどの、毎年の任意の定期的なイベントで取り込まれた家族の写真もグループ化されてよい。
上記に基づいて、知識ベースが生成され、スクリプト及び関係者を識別するために使用される。あるいは、スクリプト及び関係者は、提供されたデータセットから掘り出されてもよい。このようにして、写真はグループ化される。
前述の例示的な実施形態は、ユーザがスクリプトを完了した後のグループ決定を記載しているが、例示的な実施形態はそれに限定されず、他のシナリオが本発明の概念によって想定されてもよい。たとえば、限定ではないが、グループ化はリアルタイムに決定されてもよい。結婚式の状況では、ユーザは、自分のモバイルコンピュータ装置を使用して、カメラ機能で写真の撮影を開始することができる。カメラは、コンピュータビジョンを使用して、個々の写真の内容並びに撮影されている写真のパターン及び順番に基づいて、特定のイベント段階でユーザがスクリプト内にあることを特定することができる。システムは、次いで、コンピュータビジョンによって特定されたように、現在の写真、並びにスクリプトに関連付けられていると判断した以前の写真にメタデータを追加することを開始し、スクリプトの最初の写真にずっと遡ることができる。
それに応じて、例示的な実施形態は、リアルタイムの写真のタグ付け、並びにスクリプト、関係者、及びレイアウトのリアルタイム作成を実現する。複数のユーザにわたって集約されたグループを生成するために、個々のユーザの写真のコレクションが、ユーザーの許可によって、他のユーザのコレクション及び活動とマージされてもよい。このシナリオでは、ユーザは、スクリプトが特定のタイプであることの信頼度を提供されてもよい。たとえば、コンピュータビジョンによって追加写真及び写真間の関係を調べるとき、たとえば、歌う子供達、ケーキなどの存在に基づいて、スクリプトが誕生日パーティのタイプであると判断することができる。
オンラインアプリケーションが総じて多数のユーザによって使用されている場合、グループ化は複数のユーザにわたって実行され、個々のユーザにどの領域、関係者、又は写真の側面を撮るべきかに関する提案を提供することができる。たとえば、オンラインアプリケーションが、特定の関係者の写真が多すぎたり少なすぎたりすると判断した場合、オンラインアプリケーションが、他の関係者の写真を撮るように1人又は複数のユーザに提案することができる。誕生日パーティの例の状況では、写真に多く撮影されている人物およびあまり撮影されていない人物を特定し、誕生日パーティでの主役である人物の写真が多く、兄弟又は他の親戚の写真が少なすぎる場合、所望によりそれらの人の役割又は主役との関係に基づいて、撮影された写真画像が少ない兄弟又は他の親戚の写真を撮ることを提案するように、特定の参加者に送られてもよい。
所望により、ユーザは、スクリプトに関連付けられたイベントを定義する機会を提供されてもよい。さらに、ユーザは、1人又は複数の関係者を1又は複数のスクリプトと関連付ける機会を提供されてもよい。さらに、ユーザは、システムがパターンマッチングを実行するように要求する機会を提供されてもよく、その結果、ユーザがスクリプトを提案し、システムが以前の履歴情報に基づいて関係者のいくつかの提案パターンを提供する。さらに、スクリプトに関連付けられたイベント及びスクリプトに関連付けられた関係者の一般的なテンプレート、並びにレイアウトもユーザに提供されてもよい。
305において、バッチがさらに分割される。より具体的には、写真のグループがサブセットに分割されてもよい。サブセットは、1又は複数のカメラから撮られた写真のストリーム内の写真を、時間分類に基づいてクラスタリングすることで、生成されてもよい。たとえば、限定ではないが、時間クラスタが識別され生成されてもよい。写真のサブセットは、グループ分類303で決定された知識ベースを適用して、グループ写真分類によって構築されてもよい。
305で分割された写真の結果として、たとえば、複数のセグメント307−1、307−2、307−3が生成される。これらのセグメントの各々は1又は複数の写真を含んでもよい。たとえば、限定ではないが、307−1にあるセグメント1は、それぞれ、写真2(301−2)及び写真3(301−3)を含んでもよく、同様に、307−2にあるセグメント2は、写真4(301−4)を含んでもよく、307−3にあるセグメント3は、それぞれ、写真5(301−5)、写真6(301−6)、及び写真7(301−7)を含んでもよい。それに応じて、グループ分類303によって生成された知識ベースは、写真セットセグメンテーション305によって分割される。
311において、次いで、各セグメントにタイトルが付けられ、所望により写真のグループにタイトルが付けられてもよい。たとえば、各クラスタは、生成されたタイトル、並びにクラスタに関連するオプションの小さいキャプションを有してもよい。図1は、生成されたタイトル及びキャプションを有する例示的な出力100を示す。より具体的には、103などの複数の写真を含むフォトアルバム101が提供される。タイトルが105に示され、キャプションが107に示される。たとえば、図1に示されたように、左側に「ピクニック」というタイトルが表示され、右上に「家族とピクニックに行こう」というキャプションが表示される。
313において、個々の写真が内容及び構成について分析され、フィルタ効果提案が提供される。より具体的には、履歴データ及び/又はコンテキストに基づいて、以前の写真に対してどのように効果を与えられたかに基づいて、システムが訓練される。たとえば、履歴データを分析することによって、以前に実行した効果の選択又は効果の挙動に基づいて、ユーザにフィルタ効果の提案が提供されてもよい。提案される標準的な調整に加えて、システムは、写真コレクションの均一性及び一貫性を保証するために、フォトアルバム全体にわたって調整が適用される。たとえば、限定ではないが、最も人気がある効果や、写真などのソーシャルネットワーク情報、又は当業者によって理解されるはずの他のフィードバックに基づいて、以前の写真に適用された効果に対して、システムが訓練されてもよい。フィルタ予測313によれば、ユーザは、フォトコレクションが魅力的な方式で定型化されたと知覚することができる。
315において、システムは、個々の写真ごとに、ステッカー(たとえば、画像を含む注釈、又はカスタマイズされ得る画像及びテキスト)、絵文字(たとえば、小さいデジタル画像又は考え若しくは感情を表すために使用されるアイコン)などの注釈の提案を提供する。例示的な実施形態によれば、いくつかのコンテキストが特徴として使用されてもよい。たとえば、自動又は手動で識別されたフォトブックのスタイルや、現在のページ上及び/又はフォトブックの一部若しくは全体に含まれる関係者や、各関係者の顔及び体のサイズ、或いは当業者によって理解されるはずの他の特徴をコンテキストとしてもよい。さらに、ステッカーが歴史的に使用されたときのコンテキストなどの、ステッカーごとにグローバルな特徴が提供され、したがって、将来のユーザによって使用されることが期待されてもよい。したがって、提案を行うために知識の関連付けが使用される。
提案は、決定論的又はルールベースであってもよい(たとえば、写真が猫の画像を含む場合、ネズミのステッカーを追加することを提案したり、又は写真が有名な観光目的地などの目的地の画像を含む場合、目的地に基づいてフォトフィルタを提案したりするようなルールによる提案を行うなど)。広告ベースのシナリオでは、写真内の情報に基づいて、ブランドに関連付けられたステッカーを提案してもよい(たとえば、航空会社又は旅行会社は、航空会社や旅行会社をイメージするマーク、たとえば空港などをステッカーとして提案してもよい)。提案は、画像内のオブジェクトとフィルタ又は注釈との間のよく知られた関連付けのためのデータマイニング(data−mining)によって決定されてもよい(たとえば、ハンプティ・ダンプティを含む情報の場合、利用可能なオンラインデータのデータマイニングは卵、壁、又は両方の注釈を提案することを提案するはずである)。あるいは、提案は、写真に関連付けられた履歴情報、又は写真に関連付けられたステッカー提案の挙動履歴に基づいてもよい。
前述の特徴は、明示的は方式で決定論的に計算されてもよい。あるいは、特徴は、たとえば機械学習などを採用して、モデルによって暗黙的に学習されてもよい。さらに、提案されるステッカーのグループ化は、特定のコンテキスト内で発生する可能性もある。図2は、提案ステッカーの結果を有する例示的な出力200を示す。たとえば、画像201において、養蜂家203が写真の中にいる。システムは、写真内の養蜂家203と用語「蜂」との間の関連付けを検出する。それに応じて、蜂のステッカーが提案される。知識ベースの検索からシステムによって決定されるように、蜂は、通常、グループ又は群で移動するので、蜂のような形を有する複数のステッカー205a...205eが写真への追加として提案される。
所望に応じて、ステッカーの提案は、写真内の人の口に関連付けられた吹き出し、衣類、眼鏡などの具体的な場所に対して、関連付けられたテキストなどを関連付けてもよい。前述のための知識ベースは、手動で、又は外部情報の入力によって投入されてもよい。
たとえば、限定ではないが、ユーザは、複数のステッカーが提案されるべきコンテキストを特定するために、「<動物の名前>グループ」及び「<動物の名前>のみ」に対して検索を実行することができる。写真内のオブジェクトを単語にマッピングすることができ、関連付けが実行されてもよい。図2の例では、「高」又は「養蜂家」などの近くの単語は、コンテキスト又はグループ化を提供することができる。
例示的な出力が、コラージュとして317に示されている。たとえば、合成出力は物理的な書籍であるか、又は装置上で処理が行われる埋め込みメタデータであってもよい。この例示的な実施形態では、ユーザはフォトブックを提供される。第1のタイトルでは、写真の広がりのための手がかりとして「ピクニック」が表示され、次に、右上に「家族とピクニックに行こう」が表示される。
本明細書に記載された例示的な実施形態は、様々な利益及び利点を有することができる。たとえば、限定ではないが、従来技術のフォトブック生成アプリケーションは、ピンぼけなどの低品質な画像の削除、又は露光、並びに赤目軽減などの写真効果の適用、及び注釈の手動による適用、又は写真に対する自動補正を提供することができるが、これらの従来技術の手法は、個々の写真レベルで実行されるにすぎない。例示的な実施形態は、追加の分類、セグメンテーション、タイトル付け、及びキャプション付けを提供し、グループ化及びセグメンテーションに基づいて適用するフィルタリングや注釈を予測して、予測結果によって適用されるフィルタや注釈をユーザに提案する。さらに、例示的な実施形態は、写真パラメータに基づく自動補正だけでなく、写真セットに対するスタイルフィルタ効果も提供する。
前述の例示的な実施形態では、提案された設定に対して、ある程度の制御ができるようにユーザに提供されてもよい。たとえば、ステッカーの付加が提案された場合で説明すると、より多くのステッカーを適用したり、より少ないステッカーを適用したり、又はステッカーなしなど、ユーザーが所望の量の注釈提案を設定するような入力画面やスライダによる設定を有することができる。これらの設定は、アカウントレベル、写真アルバムレベルで提供されてもよく、又はさらにスクリプトのタイプ、関係者のタイプ、レイアウト、又は当業者に知られているはずの他の情報に基づいて、過去のユーザ履歴に基づいて決定されてもよい。
例示的な使用シナリオでは、ユーザは、ある期間にわたって複数の写真を撮っている場合がある。たとえば、ユーザは、10,000枚の写真などの、年間にわたって非常に多くの写真を撮っている場合がある。休暇の挨拶としてコラージュカードを準備するケースを考えると、ユーザは、コラージュに含ませたいある数の画像を選択しなければならない。例示的な実施形態によれば、過去数年間に手動で作成されたコラージュに基づいて、グループ化が提供されてもよい。たとえば、スクリプトは、旅行に基づくコラージュを作成するために、家族を含んでいる写真に表された年間にわたる旅行イベントを含んでもよい。同様に、ユーザに、テンプレートスクリプトを提供してもよく、又は写真のグループを作成するために、自分のスクリプトを手動で設定してもよい。ユーザは、写真のグループのサイズを決定することもできる。たとえば、ユーザは、旅行に関連するスクリプトを選択し、50枚の写真のサイズを有するグループを作成することを設定することができ、ユーザが手動により写真を混合及び照合する。それを受けて、たとえば、混合・照合された写真から、コラージュ上で必要な最終的な数の写真枚数になるように、コラージュに含まれる写真の枚数を調整して写真のグループを作成することができる。所望により、ユーザは、1つ及び2つに関して上記で説明されたように、コラージュ上の写真に対してフィルタ及び/又は注釈のオプションを提供されてもよい。あるいは、ユーザは代表的な写真を選択することができ、システムは、写真及びスクリプトのコンテキスト、並びに関係者に基づいてスクリプトを生成することができる。同様に、以前のコラージュ内の写真のレイアウトがグループ内で維持され得るように、前述のレイアウト要素も含まれてよい。注釈はキャプションを含んでもよい。
さらに、システムは、作成されたフォトアルバムを見ることが想定される人に基づいてグループ化を生成することができる。前述の例では、異なるクラスの人がフォトアルバムを見ることが想定される場合には、それぞれのクラスの人に対して異なるグループ化を提供してもよい。したがって、フォトアルバムを見るグループが家族の場合、グループ化は家族である関係者を含み、上記で説明されたように、知識ベースに基づいて家族に送られるべきコラージュに含めるためのグループや、関連するフィルタリング及び注釈の提案を生成することができる。同様に、友人、同僚などがフォトアルバムを見ることが想定される場合には、友人や同僚に適したグループ化や、フィルタリング・注釈などが提案されるように実行されてもよい。
スクリプトの関係者及びレイアウトのグループ化に関連付けられた前述の例示的な実施形態に加えて、さらなる例示的な実施形態は、前述の例示的な実施形態とともに印刷出力又はハードコピーを提供することができる。たとえば、ユーザは、格納された複数の写真をキオスクに提供することができ、キオスクは、提案されたスクリプト、関係者、及び/又はレイアウトを提供し、フォトブック、休暇挨拶カード、コラージュ、カレンダー、又はグループに関連付けられた他の印刷情報などのプリントアウトを生成することができる。さらに、カメラは、カメラで撮影されたより大きいセットの写真から、そのグループに関連付けられた写真のサブセットの即時印刷を可能にする印刷機能も含んでよい。そのような例示的な実施形態は、テーブルメンバが写真を撮るためにテーブルにカメラが設けられるイベントにおけるゲストのテーブルなどの、スクリプトのイベントのコンテキストにおいて有用であってもよい。
図4は、例示的な実施形態によるインタフェース400を示す。この例示的なインタフェースは、ユーザがグループ化及び提案に関連付けられた設定をどのように制御できるかを示すために提供される。当業者によって理解されるように、他のインタフェースが例示的なインタフェースと置き換えられてもよく、設定に対する制御、並びにシステムによって生成されたグループの編成及び操作のために、追加のインタフェースがユーザに提供されてもよい。
インタフェース400では、ユーザは、グループ化を実行するボタン401、及び提案を生成するボタン403などを使用することができる。写真は、コンテンツメディア表現405a、405b、405cとして要約されたフォーマットで示されてもよい。1又は複数のコンテンツメディアを選択することにより、ユーザは、生成されたグループ内の各写真のより詳細なビューを示すインタフェースに誘導されてもよく、ユーザは、手動のフィルタリング及び/又は注釈を実行したり、システムによって提供される提案を実行することができたりしてもよい。右から左へ、追加のグループが表示されてもよく、その結果、ユーザは、共通インタフェース上で1又は複数のグループを操作又は制御することができる。
ユーザが制御できる提案設定が、407に示されている。たとえば、限定ではないが、409において推奨されるフィルタ処理の提案を選択するボタンが提供されてもよい。結果として、ユーザは、上記で説明されたように、グループ内の写真に対するフィルタ処理に対する提案を提供されることになる。あるいは、ユーザはフィルタ提案を受けないことを選び、ボックスをチェックしないままにしてもよい。同様に、411において、ユーザは、ステッカー、テキストボックス、又は絵文字などの注釈の付加に対する提案のための1又は複数のオプションを提供されてもよい。
1又は複数のボックスを選択することにより、システムは、ユーザがグループ内の1又は複数の写真に注釈を追加するために、上記で説明されたように提案を生成する。413において、ユーザがより細かく注釈提案を制御することを可能にするスライダが提供される。この例示的なインタフェースでは、ユーザは、規定された写真上で提案されるべきステッカーの密度を制御することができる。たとえば、多くのステッカーを好むユーザもいれば、ステッカーをほとんど又は全く好まないユーザもいる。このスライダを使用することにより、ステッカーの密度はシステムによって提案される。
グループ化の設定を制御するために415に示す設定画面がユーザに提供される。たとえば、ユーザは、417において、フリーフォームのテキスト、キーワード、又は所望のスクリプトを記述する他の情報を入力することで、スクリプトを設定することができる。あるいは、選択された写真405a、405b、405cのためのスクリプトをシステムが提案することができ、ユーザが知識ベース及び使用履歴に基づいてシステムによって決定されたスクリプトを受け入れない場合、ユーザは修正を加えることができる。
さらに、419において、スクリプトに関連付けられたイベントが列挙されてもよい。所望により、ユーザは追加のイベントを入力するか、イベントを削除するか、イベントの記述を変更するか、又はイベントを並べ直すことができる。結果として、システムによって生成されたスクリプト及びイベントの組合せは、選択されたメディアに対してユーザによってカスタマイズ又は修正されてもよい。同様に、421において、スクリプトに関連付けられた関係者が記述されてもよく、ユーザは、関係者の追加、削除、優先順位の変更、又は記述の変更を行うことができる。423において、ユーザは、上記で説明されたように、レイアウトを選択するオプションを提供されてもよい。
グループ内の写真の数に関して、425において、ユーザはグループ内の写真の数を設定することができる。前述の例示的な実施形態において述べられたように、ここで設定する写真の数に対して制御することにより、スクリプト、イベント、関係者、及び所望のレイアウトを反映した写真のグループを生成するために、実質的に多数の候補から比較的少数の写真を取得することが可能になってもよい。さらに、グループに含まれる写真に対して、統一された方式におけるフィルタや注釈の処理を提案することができる。
図5は、例示的な実施形態による、方法500の例示的な実施形態を示す。方法500の動作は、クライアント側、サーバ側、又はそれらの組合せで実行されてもよい。
501において、複数のメディアオブジェクトが取得される。たとえば、これらのオブジェクトは、カメラ又は他の画像取込み装置を介して画像を取り込むことによってリアルタイムに取得されてもよい。あるいは、メディアオブジェクトは、リモートで又はユーザによりあらかじめ格納されていてもよく、さらなる処理のためにプロセッサに利用可能であってもよい。
503において、図3の前述の開示と一致するグループ化動作が実行される。より具体的には、グループ化は、スクリプト及び関係者、並びに所望によりレイアウトに基づく分類によって実行される。スクリプトは、以前に取得された履歴情報、取得されている処理内の現在の情報、又はクラスタ分析などの他の手段に基づいて、システムによって自動的に決定されてもよい。それに応じて、スクリプトに関する情報並びにスクリプトに関連付けられたイベントの順番を含む知識ベースが生成される。さらに、イベントスクリプトに関連付けられた関係者もシステムによって選択されてもよい。スクリプト、その中のイベント、及び関係者も、1人又は複数のユーザによって手動で選択又は修正されてもよい。さらに、スクリプト及び関係者情報は、スクリプト及び関係者/関係者達に関連付けられたオブジェクトのグループを生成するために、501から取得されたメディアオブジェクトに適用される。さらに、グループ化は、所望によりレイアウトを含んでもよく、その結果、スクリプトの所与のイベントにおける関係者間の関係、以前のレイアウトと現在のレイアウトとの間の時間関係、及びスクリプトの1又は複数のイベントにおける関係者のための現在のレイアウト内の以前のレイアウト間の関係などの視覚的構成は、たとえばコンピュータビジョンを使用して、システムによって自動的に実行されるように、グループ化のための基礎として使用されてもよい。
505において、セグメントを生成するために知識ベースが時間及びグループ分類に基づいて分割されるにつれてセグメントが生成され、セグメントの各々は1又は複数の写真を含む。
507において、各クラスタは、上記で説明され図1に示されたように、クラスタに関連するタイトル及びキャプションを提供される。
509において、写真効果に関するフィルタ予測を提供し、ユーザに提案を提供するために、上述された予測手法が使用される。
511において、ステッカーなどのための注釈提案をユーザに予測的に提供するために、上述された手法を使用して注釈提案が実行される。
図6は、いくつかの例示的な実施形態における使用に適した例示的なコンピュータ装置605を有する例示的なコンピューティング環境600を示す。コンピューティング環境600内のコンピュータ装置605は、1若しくは複数の処理ユニット、コア、若しくはプロセッサ610、メモリ615(たとえば、RAM、ROMなど)、内部記憶装置620(たとえば、磁気記憶装置、光記憶装置、半導体記憶装置、及び/若しくは有機記憶装置)、並びに/又はI/Oインタフェース625を含むことができ、それらのうちのいずれも、情報を通信するための、又はコンピュータ装置605内に組み込まれた、通信機構又はバス630上で結合することができる。
コンピュータ装置605は、入力/インタフェース635及び出力装置/インタフェース640に通信結合することができる。入力/インタフェース635及び出力装置/インタフェース640のうちのいずれか1つ又は両方は、有線又はワイヤレスのインタフェースであり得るし、取外し可能であり得る。入力/インタフェース635は、入力(たとえば、ボタン、タッチスクリーンインタフェース、キーボード、ポインティング/カーソールコントロール、マイクロフォン、カメラ、点字、モーションセンサ、光学レーダーなど)を提供するように使用され得る、物理的又は仮想の、任意の装置、構成要素、センサ、又はインタフェースを含んでもよい。
出力装置/インタフェース640は、ディスプレイ、テレビ、モニタ、プリンタ、スピーカ、点字などを含んでもよい。いくつかの例示的な実施形態では、入力/インタフェース635(たとえば、ユーザインタフェース)及び出力装置/インタフェース640は、コンピュータ装置605に組み込むことができるか、又は物理的に結合することができる。他の例示的な実施形態では、他のコンピュータ装置は、コンピュータ装置605用の入力/インタフェース635及び出力装置/インタフェース640として機能するか、又はその機能を提供することができる。これらの要素は、限定はしないが、ユーザがAR環境と対話することを可能にするために、よく知られたARハードウェア入力を含んでもよい。
コンピュータ装置605の例には、限定はしないが、高性能モバイル機器(たとえば、スマートフォン、車両及び他の機械内の装置、人間及び動物が持ち運ぶ装置など)、モバイル機器(たとえば、タブレット、ノートブック、ラップトップ、パーソナルコンピュータ、ポータブルテレビ、ラジオなど)、並びにモバイル用に設計されていない装置(たとえば、デスクトップコンピュータ、サーバ装置、他のコンピュータ、情報キオスク、1又は複数のプロセッサが組み込まれ、且つ/又は結合されたテレビ、ラジオなど)が含まれてもよい。
コンピュータ装置605は、外部記憶装置645、並びに、同じ又は異なる構成の1又は複数のコンピュータ装置を含む、任意の数のネットワーク化された構成要素、装置、及びシステムと通信するためのネットワーク650に、(たとえば、I/Oインタフェース625を介して)通信結合することができる。コンピュータ装置605又は任意の接続されたコンピュータ装置は、サーバ、クライアント、シンサーバ、汎用マシン、専用マシン、又は別のラベルとして機能しているか、そのサービスを提供しているか、又はそう呼ばれ得る。
I/Oインタフェース625は、限定はしないが、コンピューティング環境600内の少なくともすべての接続された構成要素、装置、及びネットワークとの間で情報を通信するための、任意の通信又はI/Oプロトコル又は規格(たとえば、イーサネット(登録商標)、802.11xs、ユニバーサルシステムバス、WiMAX、モデム、セルラーネットワークプロトコルなど)を使用する、有線及び/又はワイヤレスのインタフェースを含むことができる。ネットワーク650は、任意のネットワーク又はネットワークの組合せ(たとえば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、電話ネットワーク、セルラーネットワーク、衛星ネットワークなど)であり得る。
コンピュータ装置605は、一過性媒体及び非一過性媒体を含む、コンピュータ使用可能媒体又はコンピュータ可読媒体を使用すること、及び/又は使用して通信することができる。一過性媒体には、伝送媒体(たとえば、金属ケーブル、光ファイバ)、信号、搬送波などが含まれる。非一過性媒体には、磁気媒体(たとえば、ディスク及びテープ)、光媒体(たとえば、CD ROM、デジタルビデオディスク、ブルーレイディスク)、半導体媒体(たとえば、RAM、ROM、フラッシュメモリ、半導体記憶装置)、並びに他の非一過性記憶装置又はメモリが含まれる。
コンピュータ装置605は、いくつかの例示的なコンピューティング環境内で技術、方法、アプリケーション、処理、又はコンピュータ実行可能命令を実装するために使用することができる。コンピュータ実行可能命令は、一過性媒体から取り出され、非一過性媒体に記憶され、非一過性媒体から取り出され得る。実行可能命令は、任意のプログラミング言語、スクリプト言語、及び機械語(たとえば、C、C++、C#、Java(登録商標)、Visual Basic、Python、Perl、JavaScript(登録商標)など)のうちの1又は複数から生じることができる。
プロセッサ610は、ネイティブ環境又はバーチャル環境において、任意のオペレーティングシステム(OS)(図示せず)の下で実行することができる。異なるユニットが互いに、OSと、且つ他のアプリケーション(図示せず)と通信するための、論理ユニット655、アプリケーションプログラミングインタフェース(API)ユニット660、入力ユニット665、出力ユニット670、グループ化識別器ユニット675、セグメンテーションユニット680、予測ユニット685、及びユニット間通信機構695を含む1又は複数のアプリケーションを配置することができる。
たとえば、グループ化識別器ユニット675、セグメンテーションユニット680、及び予測ユニット685は、図3及び図5に示された1又は複数の処理を実装することができる。記載されたユニット及び要素は、設計、機能、構成、又は実装において異なり得るし、提供された説明に限定されない。
いくつかの例示的な実施形態では、情報又は実行命令がAPIユニット660によって受信されると、それは1又は複数の他のユニット(たとえば、論理ユニット655、入力ユニット665、グループ化識別器ユニット675、セグメンテーションユニット680、及び予測ユニット685)に通信されてもよい。たとえば、グループ化識別器ユニット675は、カメラなどの入力を識別し、グループ化を決定することができる。セグメンテーションユニット680は、セグメントへのグループの分割を実行することができる。さらに、予測ユニット685は、フィルタ予測及び注釈予測を提供し、1又は複数の提案をユーザに提供することができる。
いくつかの例では、論理ユニット655は、ユニット間の情報フローを制御し、上述されたいくつかの例示的な実施形態においてAPIユニット660、入力ユニット665、グループ化識別器ユニット675、セグメンテーションユニット680、及び予測ユニット685によって提供されるサービスを指示するように構成されてもよい。たとえば、1又は複数の処理又は実装の流れは、論理ユニット655単独により、又はAPIユニット660と連携して制御されてもよい。
図7は、いくつかの例示的な実施形態に適した例示的な環境を示す図である。環境700は、装置705〜745を含み、各々は、たとえばネットワーク760を介して(たとえば、有線及び/又はワイヤレスの接続によって)、少なくとも1つの他の装置に通信可能に接続される。いくつかの装置は、1又は複数の記憶装置730及び745に通信可能に接続されてもよい。
1又は複数の装置705〜745の一例は、それぞれ、図6に記載されたコンピュータ装置605であってもよい。装置705〜745は、限定はしないが、上記で説明されたようなモニタ及び関連するウェブカムを有するコンピュータ705(たとえば、ラップトップコンピュータ装置)、モバイル機器710(たとえば、スマートフォン又はタブレット)、テレビジョン715、車両720に関連付けられた装置、サーバコンピュータ725、コンピュータ装置735〜740、記憶装置730及び745を含んでもよい。装置は、ユーザがAR、VR、複合現実、又は他の環境内で対話することを可能にするために、当技術分野でよく知られたAR周辺機器に通信可能に接続されてもよい。さらに、装置は、当業者によって理解されるように、メディアオブジェクト取込みハードウェアを含んでもよい。
いくつかの実施形態では、装置705〜720は、企業のユーザに関連付けられたユーザ装置と見なされてもよい。装置725〜745は、(たとえば、上述されたような、様々な図面に関するサービスを提供するために外部ホストによって使用され、且つ/又はウェブページ、テキスト、テキスト部分、画像、画像部分、オーディオ、オーディオセグメント、ビデオ、ビデオセグメント、及び/若しくはそれらに関する情報などのデータを記憶する)サービスプロバイダに関連付けられた装置であってもよい。
いくつかの例示的な実施形態が示され記載されたが、これらの例示的な実施形態は、本明細書に記載された主題をこの分野に精通する人々に伝えるために提供される。本明細書に記載された主題は、記載された例示的な実施形態に限定されることなく、様々な形態で実装されてもよいことを理解されたい。本明細書に記載された主題は、具体的に定義若しくは記載された事項、又は記載されていない他の若しくは異なる要素若しくは事項なしに実践することができる。添付の特許請求の範囲及びそれらの均等物で定義された本明細書に記載された主題から逸脱することなく、これらの例示的な実施形態において変更が行われてもよいことは、この分野に精通する人々によって諒解されよう。