IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ヒューメイン・エルエルシーの特許一覧

特許7379326アプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォーム
<>
  • 特許-アプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォーム 図1
  • 特許-アプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォーム 図2
  • 特許-アプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォーム 図3
  • 特許-アプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォーム 図4
  • 特許-アプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォーム 図5
  • 特許-アプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォーム 図6
  • 特許-アプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォーム 図7
  • 特許-アプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォーム 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-06
(45)【発行日】2023-11-14
(54)【発明の名称】アプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォーム
(51)【国際特許分類】
   H04N 21/234 20110101AFI20231107BHJP
   H04N 21/233 20110101ALI20231107BHJP
   H04N 21/258 20110101ALI20231107BHJP
   H04N 23/60 20230101ALI20231107BHJP
【FI】
H04N21/234
H04N21/233
H04N21/258
H04N23/60 300
【請求項の数】 20
(21)【出願番号】P 2020512774
(86)(22)【出願日】2018-05-10
(65)【公表番号】
(43)【公表日】2020-07-02
(86)【国際出願番号】 US2018032089
(87)【国際公開番号】W WO2018209105
(87)【国際公開日】2018-11-15
【審査請求日】2021-05-10
(31)【優先権主張番号】62/504,488
(32)【優先日】2017-05-10
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】519402074
【氏名又は名称】ヒューメイン・エルエルシー
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】イムラン・エー・チャウドリ
(72)【発明者】
【氏名】ベサニー・ボンジョルノ
(72)【発明者】
【氏名】シャザド・チャウドリ
【審査官】鈴木 順三
(56)【参考文献】
【文献】特開2011-239141(JP,A)
【文献】米国特許出願公開第2016/0335506(US,A1)
【文献】米国特許出願公開第2012/0245944(US,A1)
【文献】特開2009-239466(JP,A)
【文献】特開2002-133588(JP,A)
【文献】特開2017-016056(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00 - 21/858
H04N 23/00 - 23/959
(57)【特許請求の範囲】
【請求項1】
方法であって、
クラウドコンピューティングプラットフォームの1つ以上のプロセッサによって、ウェアラブルマルチメディアデバイスからのコンテキストデータを受信することであって、前記ウェアラブルマルチメディアデバイスが、前記コンテキストデータを捕捉するための少なくとも1つのデータ捕捉デバイスを含む、受信することと、
前記1つ以上のプロセッサによって、前記コンテキストデータ及びユーザの要求した処理の1つ以上の特性に基づいて、1つ以上のアプリケーションを含むデータ処理パイプラインを作成することであって、前記データ処理パイプラインは複数のデータストリームからストリームを前記1つ以上のアプリケーションのそれぞれのアプリケーションに送信する、作成することと、
前記1つ以上のプロセッサによって、前記データ処理パイプラインを通して前記コンテキストデータを処理することと、
前記1つ以上のプロセッサによって、前記データ処理パイプラインの出力を、前記ウェアラブルマルチメディアデバイス又は前記出力を提示するための他のデバイスに送信することと、を含む、方法。
【請求項2】
前記コンテキストデータが、ビデオ及びオーディオを含み、前記処理が、
前記オーディオが発話の形態でユーザ要求を含むと判定することと、
前記発話をテキストに変換することと、
前記テキストをビデオプロセッサに送信することと、
前記テキストに少なくとも部分的に基づいて、前記ビデオ内のオブジェクトを識別することと、
コンテキストデータが補足された位置情報を含む場面説明、及び前記ビデオの場面内のオブジェクトの説明を生成することと、
前記場面説明を前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項1に記載の方法。
【請求項3】
前記コンテキストデータが、ビデオ及びオーディオを含み、前記処理が、
前記オーディオが発話の形態でユーザ要求を含むと判定することと、
前記発話をテキストに変換することと、
前記テキストを輸送サービスプロセッサに送信することと、
前記テキストに従って、データ構造を受信することと、
輸送ステータスを確認するようにコールバックをセットアップすることと、
前記輸送ステータス及び車両の説明を前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項1に記載の方法。
【請求項4】
前記コンテキストデータが、ビデオ及びポイントクラウドデータを含み、前記1つ以上のアプリケーションが、仮想現実(virtual reality、VR)又は拡張現実(augmented reality、AR)アプリケーションを含み、前記処理が、
前記VR又はARアプリケーションによって、前記ビデオに基づいて、VR又はARコンテンツを生成することと、
前記VR又はARコンテンツを前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項1に記載の方法。
【請求項5】
前記1つ以上のアプリケーションが、人工知能アプリケーションを含み、前記処理が、
前記人工知能アプリケーションによって、ユーザ要求の過去の履歴からユーザの好みを判定することと、
前記1つ以上のアプリケーションによって、前記ユーザの好みに従って、前記コンテキストデータを処理することと、を更に含む、請求項1に記載の方法。
【請求項6】
前記コンテキストデータが、1つ以上の画像を含み、前記1つ以上のアプリケーションが、位置特定アプリケーションを含み、前記処理が、
前記位置特定アプリケーションによって、前記1つ以上の画像に基づいて、前記ウェアラブルマルチメディアデバイスの位置を判定することと、
前記位置を前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項1に記載の方法。
【請求項7】
前記コンテキストデータが、金融取引の金融取引データ、生物測定データ、及び前記金融取引の位置を指標する位置データを含み、前記1つ以上のアプリケーションが、金融アプリケーションを含み、前記処理が、
前記金融アプリケーションによって、前記金融取引データ、生物測定データ、及び位置データに基づいて、前記金融取引の金融記録を作成することと、
前記金融記録を前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項1に記載の方法。
【請求項8】
前記コンテキストデータが、環境センサデータを含み、前記1つ以上のアプリケーションが、環境アプリケーションを含み、前記処理が、
前記環境アプリケーションによって、環境センサデータに基づいて、前記ウェアラブルマルチメディアデバイスの動作環境に関連付けられたコンテンツを生成することと、
前記コンテンツを前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項1に記載の方法。
【請求項9】
前記コンテキストデータが、ビデオ及びオーディオを含み、前記1つ以上のアプリケーションが、ビデオ編集アプリケーションを含み、前記処理が、
特定の映画様式に対するユーザ要求又はユーザの好みに従って、前記ビデオ及びオーディオを編集することと、
前記編集されたビデオ及びオーディオを前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項1に記載の方法。
【請求項10】
システムであって、
1つ以上のプロセッサと、
命令を記憶するメモリであって、前記命令が、前記1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサに、
クラウドコンピューティングプラットフォームの1つ以上のプロセッサによって、ウェアラブルマルチメディアデバイスからのコンテキストデータを受信することであって、前記ウェアラブルマルチメディアデバイスが、前記コンテキストデータを捕捉するための少なくとも1つのデータ捕捉デバイスを含む、受信することと、
前記1つ以上のプロセッサによって、前記コンテキストデータ及びユーザの要求した処理の1つ以上の特性に基づいて、1つ以上のアプリケーションを含むデータ処理パイプラインを作成することであって、前記データ処理パイプラインは複数のデータストリームからストリームを前記1つ以上のアプリケーションのそれぞれのアプリケーションに送信する、作成することと、
前記1つ以上のプロセッサによって、前記データ処理パイプラインを通して前記コンテキストデータを処理することと、
前記1つ以上のプロセッサによって、前記データ処理パイプラインの出力を、前記ウェアラブルマルチメディアデバイス又は前記出力を提示するための他のデバイスに送信することと、を含む動作を実施させる、システム。
【請求項11】
前記コンテキストデータが、ビデオ及びオーディオを含み、前記処理が、
前記オーディオが発話の形態でユーザ要求を含むと判定することと、
前記発話をテキストに変換することと、
前記テキストをビデオプロセッサに送信することと、
前記テキストに少なくとも部分的に基づいて、前記ビデオ内のオブジェクトを識別することと、
コンテキストデータが補足された位置情報を含む場面説明、及び前記ビデオの場面内のオブジェクトの説明を生成することと、
前記場面説明を前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項10に記載のシステム。
【請求項12】
前記コンテキストデータが、ビデオ及びオーディオを含み、前記処理が、
前記オーディオが発話の形態でユーザ要求を含むと判定することと、
前記発話をテキストに変換することと、
前記テキストを輸送サービスプロセッサに送信することと、
前記テキストに従って、データ構造を受信することと、
輸送ステータスを確認するようにコールバックをセットアップすることと、
前記輸送ステータス及び車両の説明を前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項10に記載のシステム。
【請求項13】
前記コンテキストデータが、ビデオ及びポイントクラウドデータを含み、前記1つ以上のアプリケーションが、仮想現実(VR)又は拡張現実(AR)アプリケーションを含み、前記処理が、
前記VR又はARアプリケーションによって、前記ビデオに基づいて、VR又はARコンテンツを生成することと、
前記VR又はARコンテンツを前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項10に記載のシステム。
【請求項14】
前記1つ以上のアプリケーションが、人工知能アプリケーションを含み、前記処理が、
前記人工知能アプリケーションによって、ユーザ要求の過去の履歴からユーザの好みを判定することと、
前記1つ以上のアプリケーションによって、前記ユーザの好みに従って、前記コンテキストデータを処理することと、を更に含む、請求項10に記載のシステム。
【請求項15】
前記コンテキストデータが、1つ以上の画像を含み、前記1つ以上のアプリケーションが、位置特定アプリケーションを含み、前記処理が、
前記位置特定アプリケーションによって、前記1つ以上の画像に基づいて、前記ウェアラブルマルチメディアデバイスの位置を判定することと、
前記位置を前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項10に記載のシステム。
【請求項16】
前記コンテキストデータが、金融取引の金融取引データ、生物測定データ、及び前記金融取引の位置を指標する位置データを含み、前記1つ以上のアプリケーションが、金融アプリケーションを含み、前記処理が、
前記金融アプリケーションによって、前記金融取引データ、生物測定データ、及び位置データに基づいて、前記金融取引の金融記録を作成することと、
前記金融記録を前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項10に記載のシステム。
【請求項17】
前記コンテキストデータが、環境センサデータを含み、前記1つ以上のアプリケーションが、環境アプリケーションを含み、前記処理が、
前記環境アプリケーションによって、環境センサデータに基づいて、前記ウェアラブルマルチメディアデバイスの動作環境に関連付けられたコンテンツを生成することと、
前記コンテンツを前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項10に記載のシステム。
【請求項18】
前記クラウドコンピューティングプラットフォームが、分散ストリーミングプラットフォームである、請求項10に記載のシステム。
【請求項19】
前記コンテキストデータが、ビデオ及びオーディオを含み、前記1つ以上のアプリケーションが、ビデオ編集アプリケーションを含み、前記処理が、
特定の映画様式に対するユーザ要求又はユーザの好みに従って、前記ビデオ及びオーディオを編集することと、
前記編集されたビデオ及びオーディオを前記ウェアラブルマルチメディアデバイス又は他のデバイスに送信することと、を更に含む、請求項10に記載のシステム。
【請求項20】
非一時的なコンピュータ可読記憶媒体であって、そこに記憶された命令を有し、前記命令が、1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサに、
クラウドコンピューティングプラットフォームの1つ以上のプロセッサによって、ウェアラブルマルチメディアデバイスからのコンテキストデータを受信することであって、前記ウェアラブルマルチメディアデバイスが、前記コンテキストデータを捕捉するための少なくとも1つのデータ捕捉デバイスを含む、受信することと、
前記1つ以上のプロセッサによって、前記コンテキストデータ及びユーザの要求した処理の1つ以上の特性に基づいて、1つ以上のアプリケーションを含むデータ処理パイプラインを作成することであって、前記データ処理パイプラインは複数のデータストリームからストリームを前記1つ以上のアプリケーションのそれぞれのアプリケーションに送信する、作成することと、
前記1つ以上のプロセッサによって、前記データ処理パイプラインを通して前記コンテキストデータを処理することと、
前記1つ以上のプロセッサによって、前記データ処理パイプラインの出力を、前記ウェアラブルマルチメディアデバイス又は前記出力を提示するための他のデバイスに送信することと、を含む動作を実施させる、非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、概して、クラウドコンピューティング及びマルチメディア編集に関する。
【背景技術】
【0002】
最新のモバイルデバイス(例えば、スマートフォン、タブレットコンピュータ)は、多くの場合、ユーザが自発的出来事のデジタル画像又はビデオを撮ることを可能にする、埋め込み型カメラを含む。これらのデジタル画像及びビデオは、モバイルデバイスのメモリを解放するために、ユーザアカウントに関連付けられたオンラインデータベースに記憶され得る。ユーザは、それらの画像及びビデオを友人及び家族と共有し、彼らの様々なプレイバックデバイスを使用して、要求に応じて画像及びビデオをダウンロード又はストリームすることができる。これらの埋め込み型カメラは、より大きくて扱いにくく、多くの場合、ショットをセットアップするためにより多くの時間を必要とする従来のデジタルカメラと比べて、著しい利点を提供する。
【0003】
カメラが埋め込まれたモバイルデバイスの利便性にもかかわらず、瞬間が発生するのが急すぎるため、これらのデバイスによって捕捉されないか、又はユーザがその瞬間に感情的に巻き込まれてしまうため、ユーザが単に画像やビデオを撮るのを忘れてしまう、多くの重要な瞬間がある。
【発明の概要】
【0004】
ウェアラブルマルチメディアデバイスによって捕捉されたマルチメディアデータを処理するためのアプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォームのためのシステム、方法、デバイス、及び非一時的なコンピュータ可読記憶媒体を開示する。
【0005】
一実施形態では、方法は、クラウドコンピューティングプラットフォームの1つ以上のプロセッサによって、ウェアラブルマルチメディアデバイスからのコンテキストデータを受信することであって、ウェアラブルマルチメディアデバイスが、コンテキストデータを捕捉するための少なくとも1つのデータ捕捉デバイスを含む、受信することと、1つ以上のプロセッサによって、コンテキストデータ及びユーザ要求の1つ以上の特性に基づいて、1つ以上のアプリケーションを含むデータ処理パイプラインを作成することと、1つ以上のプロセッサによって、データ処理パイプラインを通してコンテキストデータを処理することと、1つ以上のプロセッサによって、データ処理パイプラインの出力を、ウェアラブルマルチメディアデバイス又は出力を提示するための他のデバイスに送信することと、を含む。
【0006】
一実施形態では、システムは、1つ以上のプロセッサと、命令を記憶するメモリと、を備え、命令は、1つ以上のプロセッサによって実行されると、1つ以上のプロセッサに、クラウドコンピューティングプラットフォームの1つ以上のプロセッサによって、ウェアラブルマルチメディアデバイスからのコンテキストデータを受信することであって、ウェアラブルマルチメディアデバイスが、コンテキストデータを捕捉するための少なくとも1つのデータ捕捉デバイスを含む、受信することと、1つ以上のプロセッサによって、コンテキストデータ及びユーザ要求の1つ以上の特性に基づいて、1つ以上のアプリケーションを含むデータ処理パイプラインを作成することと、1つ以上のプロセッサによって、データ処理パイプラインを通してコンテキストデータを処理することと、1つ以上のプロセッサによって、データ処理パイプラインの出力を、ウェアラブルマルチメディアデバイス又は出力を提示するための他のデバイスに送信することと、を含む動作を実施させる。
【0007】
一実施形態では、非一時的なコンピュータ可読記憶媒体は、クラウドコンピューティングプラットフォームの1つ以上のプロセッサによって、ウェアラブルマルチメディアデバイスからのコンテキストデータを受信することであって、ウェアラブルマルチメディアデバイスが、コンテキストデータを捕捉するための少なくとも1つのデータ捕捉デバイスを含む、受信することと、1つ以上のプロセッサによって、コンテキストデータ及びユーザ要求の1つ以上の特性に基づいて、1つ以上のアプリケーションを含むデータ処理パイプラインを作成することと、1つ以上のプロセッサによって、データ処理パイプラインを通してコンテキストデータを処理することと、1つ以上のプロセッサによって、データ処理パイプラインの出力を、ウェアラブルマルチメディアデバイス又は出力を提示するための他のデバイスに送信することと、を行うための命令を含む。
【0008】
本明細書に開示される特定の実施形態は、以下の利点のうちの1つ以上を提供する。ウェアラブルマルチメディアデバイスは、ユーザによる最小限のインタラクションを伴う自発的瞬間及び取引のマルチメディアデータを捕捉する。マルチメディアデータは、ユーザの好みに基づいて、クラウドコンピューティングプラットフォーム上で自動的に編集及びフォーマットされ、次いで、様々なユーザプレイバックデバイスで再生するためにユーザに対して利用可能にされる。一実施形態では、データ編集及び/又は処理は、プロプライエタリであり、かつ/又は第三者開発者から提供/許諾されているアプリケーションのエコシステムによって実施される。アプリケーションエコシステムは、第三者開発者が当該開発者のアプリケーションをアップロード、検証、及び更新することを可能にする様々なアクセスポイント(例えば、ウェブサイト、ポータル、API)を提供する。クラウドコンピューティングプラットフォームは、エコシステムアプリケーション、ユーザの好み、並びに他の情報(例えば、データのタイプ若しくはフォーマット、データの量及び品質)のうちの1つ以上を使用して、各マルチメディアデータストリームのためのカスタム処理パイプラインを自動的に構築する。
【0009】
開示される実施形態の詳細を、添付の図面及び以下の説明に記載する。他の特徴、目的、及び利点は、説明、図面、及び特許請求の範囲から明らかである。
【図面の簡単な説明】
【0010】
図1】一実施形態に係る、ウェアラブルマルチメディアデバイスによって捕捉されたマルチメディアデータを処理するためのアプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォームのための動作環境のブロック図である。
図2】一実施形態に係る、図1のクラウドコンピューティングプラットフォームによって実装されるデータ処理システムのブロック図である。
図3】一実施形態に係る、コンテキストデータストリームを処理するためのデータ処理パイプラインのブロック図である。
図4】一実施形態に係る、輸送アプリケーションのコンテキストデータストリームを処理するための別のデータ処理のブロック図である。
図5】一実施形態に係る、図2のデータ処理システムによって使用されるデータオブジェクトを例示する。
図6】一実施形態に係る、データパイプライン処理のフロー図である。
図7】一実施形態に係る、クラウドコンピューティングプラットフォームのアーキテクチャである。
図8】一実施形態に係る、ウェアラブルマルチメディアデバイスのアーキテクチャである。
【0011】
様々な図面において使用される同じ参照記号は、同様の要素を指標する。
【発明を実施するための形態】
【0012】
概要
ウェアラブルマルチメディアデバイスは、張力留め金、インターロックピンバック、磁石、又は任意の他の取り付け機構を使用して、ユーザの衣類又はオブジェクトに取り付けることができる、軽量で小さなフォームファクタのバッテリ式電動デバイスである。ウェアラブルマルチメディアデバイスは、ユーザが、最小限のユーザインタラクション又はデバイスセットアップで、生活の出来事(「瞬間」)のマルチメディアデータ(例えば、ビデオ、オーディオ、深度データ)及び文書取引(例えば、金融取引)を自発的に捕捉することを可能にする、デジタル画像捕捉デバイス(例えば、光学画像安定装置(optical image stabilizer、OIS)を備える180°FOV)を含む。無線マルチメディアデバイスによって捕捉されたマルチメディアデータ(「コンテキストデータ」)は、コンテキストデータを、1つ以上のアプリケーション(例えば、人工知能(Artificial Intelligence、AI)アプリケーション)によって、ウェアラブルマルチメディアデバイス及び/又は任意の他のプレイバックデバイスでダウンロード及び再生することができる任意の所望の提示フォーマット(例えば、単一画像、画像ストリーム、ビデオクリップ、オーディオクリップ、マルチメディア提示、画像ギャラリ)に処理、編集、及びフォーマットすることができるアプリケーションエコシステムを備えるクラウドコンピューティングプラットフォームにアップロードされる。例えば、クラウドコンピューティングプラットフォームは、ビデオデータ及びオーディオデータを、ユーザによって指定された任意の所望の映画製作様式(例えば、ドキュメンタリー、ライフスタイル、キャンディッド、フォトジャーナリズム、スポーツ、ストリート)に変形させ得る。
【0013】
一実施形態では、コンテキストデータは、ユーザの好みに基づいて、クラウドコンピューティングプラットフォームのサーバコンピュータ(複数可)によって処理される。例えば、ユーザの好みに基づいて、ユーザが追体験することを望む瞬間に対して、画像を完全に色等級付けし、安定化させ、及びトリミングすることができる。ユーザの好みを、ウェブサイト又はポータルを通じてアクセス可能なオンラインアカウントを介してユーザによって作成されたユーザプロファイルに記憶することができるか、又はユーザの好みを、(例えば、機械学習を使用して)経時的にプラットフォームによって学習することができる。一実施形態では、クラウドコンピューティングプラットフォームは、拡張可能な分散コンピューティング環境である。例えば、クラウドコンピューティングプラットフォームは、データストリームに変形させるか、又はそれに反応する、リアルタイムストリーミングデータパイプライン及びストリーミングアプリケーションを備える、分散ストリーミングプラットフォーム(例えば、Apache Kafka(商標))であり得る。
【0014】
一実施形態では、ユーザは、コマンド又は任意の他の入力機構を発語することによって、ウェアラブルマルチメディアデバイスでのコンテキストデータ捕捉セッションを、単純なタッチジェスチャ(例えば、タップ又はスワイプ)で、開始及び停止することができる。ウェアラブルマルチメディアデバイスの全て又は一部は、1つ以上のセンサ(例えば、近接センサ、光センサ、加速度計、ジャイロスコープ)を使用して、当該デバイスがユーザによって着用されていないことを検出すると、自動的に電力を落とすことができる。一実施形態では、デバイスは、バッテリ寿命及び誘導充電回路構成(例えば、Qi)を持続させて、充電マット及び無線オーバージエア(over-the-air、OTA)充電に対する誘導充電を可能にするための光起電表面技術を含み得る。
【0015】
コンテキストデータは、暗号化及び圧縮され、任意の所望の暗号化又は圧縮技術を使用して、ユーザアカウントに関連付けられたオンラインデータベースに記憶され得る。コンテキストデータは、ユーザによって設定することができる、指定された期間にわたって記憶され得る。ユーザは、ウェブサイト、ポータル、又はモバイルアプリケーションを介して、オプトイン機構と、それらのデータ及びデータプライバシーを管理するための他のツールとを備えることができる。
【0016】
一実施形態では、コンテキストデータは、例えば、アプリケーションエコシステム内の拡張現実(augmented reality、AR)及び仮想現実(virtual reality、VR)アプリケーションを使用して処理することができる、三次元(three-dimensional、3D)表面のマップされたオブジェクトを提供するためのポイントクラウドデータを含む。ポイントクラウドデータは、ウェアラブルマルチメディアデバイスに埋め込まれた深度センサ(例えば、LiDAR又は飛行時間(Time of Flight、TOF))によって生成され得る。
【0017】
一実施形態では、ウェアラブルマルチメディアデバイスは、コンテキストデータが捕捉されたときに、デバイスを着用しているユーザの位置及び向きを判定するための、全地球航法衛星システム(Global Navigation Satellite System、GNSS)受信機(例えば、全地球測位システム(Global Positioning System、GPS))、及び1つ以上の慣性センサ(例えば、加速度計、ジャイロスコープ)を含む。一実施形態では、コンテキストデータ内の1つ以上の画像を、アプリケーションエコシステム内の、視覚オドメトリアプリケーションなどの位置特定アプリケーションによって使用して、ユーザの位置及び向きを判定することができる。
【0018】
一実施形態では、ウェアラブルマルチメディアデバイスはまた、周囲光センサ、磁力計、圧力センサ、音声活動検出器などを含むが、これらに限定されない、1つ以上の環境センサを含み得る。このセンサデータをコンテキストデータに含めて、瞬間を捕捉するために使用することができる追加情報を含むコンテンツ提示を強化することができる。
【0019】
一実施形態では、ウェアラブルマルチメディアデバイスは、心拍センサ、指紋スキャナなどの1つ以上の生物測定センサを含み得る。このセンサデータをコンテキストデータに含めて、取引を文書化するか、又は瞬間の間のユーザの感情的状態を指標することができる(例えば、心拍数の上昇は、興奮又は恐怖を指標し得る)。
【0020】
一実施形態では、ウェアラブルマルチメディアデバイスは、音声コマンドを受信し、周囲オーディオを捕捉するための、ヘッドセット又はイヤフォン、及び1つ以上のマイクロフォンを接続するヘッドフォンジャックを含む。代替的な実施形態では、ウェアラブルマルチメディアデバイスは、Bluetooth(登録商標)、IEEE802.15.4(ZigBee(商標))、及び近距離無線通信(near field communication、NFC)を含むが、これらに限定されない、狭域通信技術を含む。狭域通信技術は、ヘッドフォンジャックに加えて、又はその代わりに、無線ヘッドセット若しくはイヤフォンに無線接続するために使用されてもよく、かつ/又は任意の他の外部デバイス(例えば、コンピュータ、プリンタ、レーザプロジェクタ、テレビ、及び他のウェアラブルデバイス)に無線接続することができる。
【0021】
一実施形態では、ウェアラブルマルチメディアデバイスは、無線送受信機と、WiFi、3G、4G、及び5G通信技術を含む様々な通信技術のための通信プロトコルスタックと、を含む。一実施形態では、ヘッドセット又はイヤフォンはまた、ヘッドジェスチャを用いてコマンドを提供するために、ユーザが向いている方向に関する情報を提供するセンサ(例えば、生物測定センサ、慣性センサ)を含む。一実施形態では、カメラ視野がユーザの視野方向を追従するように、カメラ方向をヘッドジェスチャによって制御することができる。一実施形態では、ウェアラブルマルチメディアデバイスは、ユーザの眼鏡に埋め込まれ得るか、又はそれに取り付けられ得る。
【0022】
一実施形態では、ウェアラブルマルチメディアデバイスは、ユーザが壁又はテーブル面などの表面上で瞬間を再生することを可能にするレーザプロジェクタを含む(又は、外部レーザプロジェクタに有線若しくは無線で結合され得る)。別の実施形態では、ウェアラブルマルチメディアデバイスは、レーザプロジェクタ又は他の出力デバイスに接続し得る出力ポートを含む。
【0023】
一実施形態では、ウェアラブルマルチメディア捕捉デバイスは、タッチジェスチャ(例えば、タップ、マルチタップ、又はスワイプジェスチャ)に応答するタッチ面を含む。ウェアラブルマルチメディアデバイスは、情報を提示するための小さいディスプレイと、オン/オフのステータス、電力状態、又は任意の他の所望のステータスを指標するための1つ以上の光インジケータと、を含み得る。
【0024】
一実施形態では、クラウドコンピューティングプラットフォームは、ユーザが自身の環境内のオブジェクトを指し、「その建物は何ですか?」と言うなどの発話クエリと組み合わせて、コンテキストベースのジェスチャ(例えば、エアジェスチャ)によって駆動され得る。クラウドコンピューティングプラットフォームは、エアジェスチャを使用して、カメラの視野ポートの範囲を狭め、建物を隔離する。建物の1つ以上の画像が捕捉され、クラウドコンピューティングプラットフォームに送信され、ここで、画像認識アプリケーションは、画像クエリを作動し、その結果を記憶するか、又はそれをユーザに返却することができる。エアジェスチャ及びタッチジェスチャを、例えば、ユーザインターフェース要素に応答する、投影された一過性のディスプレイ上で実施することもできる。
【0025】
一実施形態では、コンテキストデータをデバイス及びクラウドコンピューティングプラットフォーム上で暗号化することができ、その結果、ユーザ又は任意の認可された視認者のみが、接続されたスクリーン(例えば、スマートフォン、コンピュータ、テレビなど)上で、又は表面上へのレーザ投影として、瞬間を追体験することができる。図8を参照して、ウェアラブルマルチメディアデバイスのための例示的なアーキテクチャを説明する。
【0026】
個人的な生活の出来事に加えて、ウェアラブルマルチメディアデバイスは、スマートフォンによって現在扱われている金融取引の捕捉を単純化する。日々の取引(例えば、ビジネス取引、マイクロ取引)の捕捉は、ウェアラブルマルチメディアデバイスによって提供される視力支援型コンテキストアウェアネスを使用することによって、より単純で、より速く、より流動的に行われる。例えば、ユーザが金融取引(例えば、購入を行うこと)に従事しているとき、ウェアラブルマルチメディアデバイスは、日付、時間、量、当事者のデジタル画像若しくはビデオ、オーディオ(例えば、取引を説明するユーザ解説)、及び環境データ(例えば、位置データ)を含む、金融取引をメモリアライズするデータを生成するであろう。データは、クラウドコンピューティングプラットフォームに送信されたマルチメディアデータストリームに含まれてもよく、ここで、そのデータをオンラインで記憶し、かつ/又は1つ以上の金融アプリケーション(例えば、金融管理、会計、予算、納税、在庫など)によって処理することができる。
【0027】
一実施形態では、クラウドコンピューティングプラットフォームは、グラフィカルユーザインターフェースをウェブサイト又はポータル上に提供し、これにより、様々な第三者アプリケーション開発者が、アプリケーションエコシステム内で開発者自身のアプリケーションをアップロード、更新、及び管理することを可能にする。いくつかの例示的なアプリケーションとしては、個人的な生放送(例えば、Instagram(商標)Life、Snapchat(商標))、高齢者監視(例えば、最愛の人が薬剤をとったことを確実にするため)、メモリ呼び出し(例えば、先週の子供のサッカーの試合を見せること)、及び個人的なガイド(例えば、ユーザの位置を認知し、措置を実施するようにユーザをガイドする、AI対応型の個人的なガイド)を挙げることができるが、これらに限定されない。
【0028】
一実施形態では、ウェアラブルマルチメディアデバイスは、1つ以上のマイクロフォン及びヘッドセットを含む。いくつかの実施形態では、ヘッドセットワイヤは、マイクロフォンを含む。一実施形態では、デジタルアシスタントがウェアラブルマルチメディアデバイスに実装され、これは、ユーザのクエリ、要求、及びコマンドに応答する。例えば、親が着用したウェアラブルマルチメディアデバイスは、子供のサッカーの試合の瞬間のコンテキストデータ、特に、子供がゴールを決めた「瞬間」を捕捉する。ユーザは、プラットフォームがゴールのビデオクリップを作成し、それをユーザ自身のユーザアカウントに記憶することを(例えば、発話コマンドを使用して)要求することができる。ユーザによる任意の更なる措置なしに、クラウドコンピューティングプラットフォームは、ゴールが決められたときに、瞬間のコンテキストデータの正しい部分を(例えば、顔認識、視覚的合図、又は可聴合図を使用して)識別し、瞬間のコンテキストデータをビデオクリップに編集し、そのビデオクリップをユーザアカウントに関連付けられたデータベースに記憶する。
例示的な動作環境
【0029】
図1は、一実施形態に係る、ウェアラブルマルチメディアデバイスによって捕捉されたマルチメディアデータを処理するためのアプリケーションエコシステムを備える、ウェアラブルマルチメディアデバイス及びクラウドコンピューティングプラットフォームのための動作環境のブロック図である。動作環境100は、ウェアラブルマルチメディアデバイス101、クラウドコンピューティングプラットフォーム102、ネットワーク103、アプリケーション(「アプリ」)開発者104、及び第三者プラットフォーム105を含む。クラウドコンピューティングプラットフォーム102は、ウェアラブルマルチメディアデバイス101によってアップロードされたコンテキストデータを記憶するための1つ以上のデータベース106に結合される。
【0030】
前述のように、ウェアラブルマルチメディアデバイス101は、張力留め金、インターロックピンバック、磁石、又は任意の他の取り付け機構を使用して、ユーザの衣類又はオブジェクトに取り付けることができる、軽量で小さなフォームファクタのバッテリ式電動デバイスである。ウェアラブルマルチメディアデバイス101は、ユーザが、最小限のユーザインタラクション又はデバイスセットアップで、「瞬間」のマルチメディアデータ(例えば、ビデオ、オーディオ、深度データ)を自発的に捕捉し、日々の取引(例えば、金融取引)を文書化することを可能にする、デジタル画像捕捉デバイス(例えば、OISを備える180°FOV)を含む。無線マルチメディアデバイス101によって捕捉されたコンテキストデータは、クラウドコンピューティングプラットフォーム102にアップロードされる。クラウドコンピューティングプラットフォーム101は、コンテキストデータを、1つ以上のサーバ側のアプリケーションによって、ウェアラブルマルチメディアデバイス及び/又は他のプレイバックデバイスでダウンロード及び再生することができる任意の所望の提示フォーマット(例えば、単一画像、画像ストリーム、ビデオクリップ、オーディオクリップ、マルチメディア提示、画像ギャラリ)に処理、編集、及びフォーマットすることができるアプリケーションエコシステムを含む。
【0031】
一例として、子供の誕生日会において、親は、カメラレンズが親自身の視認方向に向くように、ウェアラブルマルチメディアデバイスを親自身の衣類にクリップ留めする(又は、デバイスをネックレス又はチェーンに取り付け、親自身の首の周りに着用する)ことができる。カメラは、ユーザが現在見ているほぼ全てをカメラが捕捉することを可能にする、180°FOVを含む。ユーザは、デバイスの表面を単にタップするか、又はボタンを押すことによって、記録を開始することができる。追加のセットアップは必要ない。誕生日の特別な瞬間(例えば、ロウソクを吹き消す瞬間)を捕捉するマルチメディアデータストリーム(例えば、オーディオを含むビデオ)が記録される。この「コンテキストデータ」は、無線ネットワーク(例えば、WiFi、セルラー)を介してリアルタイムでクラウドコンピューティングプラットフォーム102に送信される。一実施形態では、コンテキストデータは、それを後でアップロードすることができるように、ウェアラブルマルチメディアデバイスに記憶される。別の実施形態では、ユーザは、コンテキストデータを別のデバイス(例えば、パーソナルコンピュータハードドライブ、スマートフォン、タブレットコンピュータ、サムドライブ)に伝達し、後でアプリケーションを使用して、コンテキストデータをクラウドコンピューティングプラットフォーム102にアップロードすることができる。
【0032】
一実施形態では、コンテキストデータは、クラウドコンピューティングプラットフォーム102によってホスト及び管理されるアプリケーションエコシステムの1つ以上のアプリケーションによって処理される。アプリケーションは、それらの個々のアプリケーションプログラミングインターフェース(application programming interface、API)を通じてアクセスされ得る。カスタム分散ストリーミングパイプラインは、データのタイプ、データの量、データの品質、ユーザの好み、テンプレート、及び/又は任意の他の情報のうちの1つ以上に基づいて、コンテキストデータを処理して、ユーザの好みに基づいて所望の提示を生成するように、クラウドコンピューティングプラットフォーム102によって作成される。一実施形態では、機械学習技術を使用して、ユーザの好みの有無にかかわらず、データ処理パイプライン内に含めるための好適なアプリケーションを自動的に選択することができる。例えば、データベース(例えば、NoSQLデータベース)に記憶された履歴ユーザコンテキストデータを使用して、任意の好適な機械学習技術(例えば、深層学習又は畳み込みニューラルネットワーク)を使用するデータ処理のためのユーザの好みを判定することができる。
【0033】
一実施形態では、アプリケーションエコシステムは、コンテキストデータを処理する第三者プラットフォーム105を含み得る。セキュアなセッションは、コンテキストデータを送信/受信するように、クラウドコンピューティングプラットフォーム102と第三者プラットフォーム105との間にセットアップされる。この設計は、第三者アプリプロバイダが、プロバイダ自身のアプリケーションへのアクセスを制御し、更新を提供することを可能にする。他の実施形態では、アプリケーションはクラウドコンピューティングプラットフォーム102のサーバ上で作動され、更新はクラウドコンピューティングプラットフォーム102に送信される。後者の実施形態では、アプリ開発者104は、クラウドコンピューティングプラットフォーム102によって提供されるAPIを使用して、アプリケーションエコシステム内に含まれるアプリケーションをアップロード及び更新することができる。
例示的なデータ処理システム
【0034】
図2は、一実施形態に係る、図1のクラウドコンピューティングプラットフォームによって実装されるデータ処理システムのブロック図である。データ処理システム200は、レコーダ201、ビデオバッファ202、オーディオバッファ203、写真バッファ204、吸収サーバ205、データストア206、ビデオプロセッサ207、オーディオプロセッサ208、写真プロセッサ209、及び第三者プロセッサ210を含む。
【0035】
ウェアラブルマルチメディアデバイスで作動中のレコーダ201(例えば、ソフトウェアアプリケーション)は、カメラ及びオーディオサブシステムによって捕捉されたビデオ、オーディオ、及び写真データ(「コンテキストデータ」)を記録し、データをバッファ202、203、204にそれぞれ記憶する。次いで、このコンテキストデータは、クラウドコンピューティングプラットフォーム102の吸収サーバ205に(例えば、無線OTA技術を使用して)送信される。一実施形態では、データは、各々が一意のストリーム識別子(ストリームID)を有する別々のデータストリームで送信され得る。ストリームは、次の例示的な属性、位置(例えば、緯度、経度)、ユーザ、オーディオデータ、様々な持続時間のビデオストリーム、及びN個の写真、を包含し得る別個のデータ片である。ストリームは、1~MAXSTREAM_LEN秒の持続時間を有することができ、この例では、MAXSTREAM_LEN=20秒である。
【0036】
吸収サーバ205は、ストリームを吸収し、ストリームレコードをデータストア206に作成して、プロセッサ207~209の結果を記憶する。一実施形態では、オーディオストリームを最初に処理し、それを使用して、必要とされる他のストリームを判定する。吸収サーバ205は、ストリームIDに基づいて、ストリームを適切なプロセッサ207~209に送信する。例えば、ビデオストリームはビデオプロセッサ207に送信され、オーディオストリームはオーディオプロセッサ208に送信され、写真ストリームは写真プロセッサ209に送信される。一実施形態では、ウェアラブルマルチメディアデバイス(例えば、画像データ)から収集されたデータの少なくとも一部は、所与のアプリケーションによって更に処理され、ウェアラブルマルチメディアデバイス又は他のデバイスに送信し戻され得るように、メタデータに処理されて暗号化される。
【0037】
プロセッサ207~209は、前述のように、プロプライエタリなアプリケーション又は第三者アプリケーションを作動し得る。例えば、ビデオプロセッサ207は、ビデオバッファ202に記憶された生ビデオデータを、ユーザの好み又は他の情報に基づいて、1つ以上の画像処理/編集アプリケーション211、212のセットに送信する、ビデオ処理サーバであり得る。プロセッサ207は、要求をアプリケーション211、212に送信し、その結果を吸収サーバ205に返却する。一実施形態では、第三者プロセッサ210は、それ自体のプロセッサ及びアプリケーションを使用して、ストリームのうちの1つ以上を処理し得る。別の例では、オーディオプロセッサ208は、オーディオバッファ203に記憶された発話データを発話ツーテキスト変換器アプリケーション213に送信する、オーディオ処理サーバであり得る。
例示的な場面識別アプリケーション
【0038】
図3は、一実施形態に係る、コンテキストデータストリームを処理するためのデータ処理パイプラインのブロック図である。この実施形態では、データ処理パイプライン300は、ユーザによって着用されたウェアラブルマルチメディアデバイスによって捕捉されたコンテキストデータに基づいて、ユーザが見ているものを判定するように作成及び構成される。吸収サーバ301は、ウェアラブルマルチメディアデバイスのオーディオバッファ203からオーディオストリーム(例えば、ユーザ解説を含む)を受信し、オーディオストリームをオーディオプロセッサ305に送信する。オーディオプロセッサ305は、オーディオストリームをアプリ306に送信し、アプリ306は、発話ツーテキスト変換を実施し、解析されたテキストをオーディオプロセッサ305に返却する。オーディオプロセッサ305は、解析されたテキストを吸収サーバ301に返却する。
【0039】
ビデオプロセッサ302は、解析されたテキストを吸収サーバ301から受信し、要求をビデオ処理アプリ307に送信する。ビデオ処理アプリ307は、ビデオ場面内のオブジェクトを識別し、解析されたテキストを使用して、オブジェクトをラベル付けする。ビデオ処理アプリ307は、場面(例えば、ラベル付けされたオブジェクト)を説明する応答をビデオプロセッサ302に送信する。次いで、ビデオプロセッサは、応答を吸収サーバ301に転送する。吸収サーバ301は、応答をデータマージ処理308に送信し、データマージ処理308は、応答をユーザの位置、向き、及びマップデータとマージする。データマージ処理308は、場面説明を有する応答を、ウェアラブルマルチメディアデバイス上のレコーダ304に返却する。例えば、応答は、マップの位置及び場面内のオブジェクトの説明(例えば、場面内の人々を識別する)を含む、子供の誕生日会のような場面を説明するテキストを含み得る。レコーダ304は、場面説明を、ウェアラブルマルチメディアデバイスに記憶されたマルチメディアデータに(例えば、ストリームIDを使用して)関連付ける。ユーザがデータを呼び出すと、データは場面説明で強化される。
【0040】
一実施形態では、データマージ処理308は、位置及びマップデータ以上のものを使用し得る。オントロジの概念も存在し得る。例えば、画像内に捕捉されたユーザの父の顔の特徴を、クラウドコンピューティングプラットフォームによって認識し、ユーザの名前ではなく「父」として返却することができ、「555 Main Street,San Francisco,CA」などの住所を「自宅」として返却することができる。オントロジは、ユーザに固有であり得、ユーザの入力から成長及び学習することができる。
例示的な輸送アプリケーション
【0041】
図4は、一実施形態に係る、輸送アプリケーションのコンテキストデータストリームを処理するための別のデータ処理のブロック図である。本実施形態では、データ処理パイプライン400は、自宅への交通手段を得るために、輸送会社(例えば、Uber(登録商標)、Lyft(登録商標))を呼ぶように作成される。ウェアラブルマルチメディアデバイスからのコンテキストデータは、吸収サーバ401によって受信され、オーディオバッファ203からのオーディオストリームは、オーディオプロセッサ405に送信される。オーディオプロセッサ405は、オーディオストリームを、発話をテキストに変換するアプリ406に送信する。解析されたテキストは、解析されたテキストを吸収サーバ401に返却するオーディオプロセッサ405に返却される(例えば、輸送のためのユーザ発話要求)。処理されたテキストは、第三者プロセッサ402に送信される。第三者プロセッサ402は、ユーザ位置及びトークンを第三者アプリケーション407(例えば、Uber(登録商標)又はLyft(商標)(登録商標)アプリケーション)に送信する。一実施形態では、トークンは、ユーザの代わりに要求を仲介するために使用されるAPI及び認可トークンである。アプリケーション407は、応答データ構造を第三者プロセッサ402に返却し、これは、吸収サーバ401に転送される。吸収サーバ401は、応答データ構造内の交通手段到着ステータス(例えば、ETA)を確認し、ユーザコールバック待ち行列408内のユーザへのコールバックをセットアップする。吸収サーバ401は、車両説明を有する応答を、ウェアラブルマルチメディアデバイス上のラウドスピーカを通じて、又は有線若しくは無線接続を介してユーザのヘッドフォン若しくはイヤフォンを通じて、デジタルアシスタントによってユーザに対して発話することができるレコーダ404に返却する。
【0042】
図5は、一実施形態に係る、図2のデータ処理システムによって使用されるデータオブジェクトを例示する。データオブジェクトは、クラウドコンピューティングプラットフォームでインスタンス化されたソフトウェア構成要素インフラストラクチャの一部である。「ストリーム」オブジェクトは、データのストリームID、デバイスID、開始、終了、緯度、経度、属性、及びエンティティを含む。「ストリームID」は、ストリーム(例えば、ビデオ、オーディオ、写真)を識別し、「デバイスID」は、ウェアラブルマルチメディアデバイス(例えば、モバイルデバイスID)を識別し、「開始」は、コンテキストデータストリームの開始時間であり、「終了」は、コンテキストデータストリームの終了時間であり、「緯度」は、ウェアラブルマルチメディアデバイスの緯度であり、「経度」は、ウェアラブルマルチメディアデバイスの経度であり、「属性」は、例えば、誕生日、顔の点、肌の色調、オーディオ特性、住所、電話番号などを含み、「エンティティ」は、オントロジを構成する。例えば、「John Do」という名前は、ユーザに応じて、「父」又は「兄弟」にマッピングされることになる。
【0043】
「ユーザ」オブジェクトは、データのユーザID、デバイスID、電子メール、f名、及びl名を含む。ユーザIDは、一意の識別子を有するユーザを識別し、デバイスIDは、一意の識別子を有するウェアラブルデバイスを識別し、電子メールは、ユーザの登録された電子メールアドレスであり、f名は、ユーザの第1の名前であり、l名は、ユーザの姓である。「ユーザデバイス」オブジェクトは、データのユーザID及びデバイスIDを含む。「デバイス」オブジェクトは、データのデバイスID、開始、状態、修正、及び作成を含む。一実施形態では、デバイスIDは、デバイスの一意の識別子である(例えば、MACアドレスとは別個である)。開始は、デバイスが最初に開始されたときである。状態は、オン/オフ/スリープである。修正は、最後の状態の変化、又はオペレーティングシステム(operating system、OS)の変化を反映する最後の修正日である。作成は、デバイスをオンにした最初の時間である。
【0044】
「処理結果」オブジェクトは、データのストリームID、ai、結果、コールバック、持続時間の精度を含む。一実施形態では、ストリームIDは、汎用一意識別子(Universally Unique Identifier、UUID)としての各ユーザストリームである。例えば、8:00AM~10:00AMに開始されたストリームは、id:15h158dhb4を有し、10:15AM~10:18AMに開始するストリームは、このストリームに接触したUUIDを有するであろう。AIは、このストリームに接触したプラットフォームアプリケーションの識別子である。結果は、プラットフォームアプリケーションから送信されたデータである。コールバックは、使用されたコールバックである(バージョンは変更することができ、したがって、プラットフォームが要求を再生する必要がある場合にはコールバックが追跡される)。精度は、結果セットがどのくらい正確であるかについてのスコアである。一実施形態では、処理結果は、1)マージサーバに結果の全セットを通知するため、2)ユーザ体験を強化することができるように最速のaiを判定するため、及び3)最も正確なaiを判定するためなど、多くの事項のために使用され得る。使用事例に応じて、精度よりも速度を優先するか、又はその逆の場合もある。
【0045】
「エンティティ」オブジェクトは、データのエンティティID、ユーザID、エンティティ名、エンティティタイプ、及びエンティティ属性を含む。エンティティIDは、エンティティのUUIDであり、エンティティIDが1つのエンティティを参照する複数の入力を有するエンティティである。例えば、「Barack Obama」は、144のエンティティIDを有し得、これは、関連表においてPOTUS44又は「Barack Hussein Obama」若しくは「President Obama」にリンクされ得る。ユーザIDは、エンティティレコードが作成されたユーザを識別する。エンティティ名は、ユーザIDがエンティティを呼ぶ名前である。例えば、エンティティID144のMalia Obamaのエンティティ名は、「父」又は「お父さん」であり得る。エンティティタイプは、人、場所、又はものである。エンティティ属性は、そのエンティティのユーザIDの理解に特有のエンティティに関する属性の配列である。このマップは、例えば、Maliaが「父が見えますか?」という発話クエリを行うと、クラウドコンピューティングプラットフォームが、クエリをBarack Hussein Obamaに翻訳し、それを、第三者に要求を仲介する際、及びシステム内で情報を検索する際に使用することができるように、エンティティを一緒にマッピングする。
例示的な処理
【0046】
図6は、一実施形態に係る、データパイプライン処理のフロー図である。処理600は、図1図5を参照して説明される、ウェアラブルマルチメディアデバイス101及びクラウドコンピューティングプラットフォーム102を使用して実装され得る。
【0047】
処理600は、ウェアラブルマルチメディアデバイス(601)からコンテキストデータを受信することによって開始し得る。例えば、コンテキストデータは、ウェアラブルマルチメディアデバイスのカメラ及びオーディオサブシステムによって捕捉されたビデオ、オーディオ、並びに静止画像を含み得る。
【0048】
処理600は、コンテキストデータ及びユーザの要求/好みに基づいて、アプリケーションを含むデータ処理パイプラインを作成する(例えば、インスタンス化する)ことによって継続し得る(602)。例えば、ユーザの要求又は好みに基づいて、並びにまたデータのタイプ(例えば、オーディオ、ビデオ、写真)に基づいて、1つ以上のアプリケーションを論理的に接続して、データ処理パイプラインを形成し、コンテキストデータを、ウェアラブルマルチメディアデバイス又は別のデバイスでプレイバックされる提示に処理することができる。
【0049】
処理600は、データ処理パイプライン内のコンテキストデータを処理することによって継続し得る(603)。例えば、瞬間又は取引中のユーザ解説からの発語をテキストに変換することができ、次いで、それを使用して、ビデオクリップ内のオブジェクトをラベル付けする。
【0050】
処理600は、データ処理パイプラインの出力をウェアラブルマルチメディアデバイス及び/又は他のプレイバックデバイスに送信することによって継続し得る(604)。
例示的なクラウドコンピューティングプラットフォームアーキテクチャ
【0051】
図7は、一実施形態に係る、図1図6を参照して説明されるクラウドコンピューティングプラットフォーム102の例示的なアーキテクチャ700である。より多いか又はより少ない構成要素を有するアーキテクチャを含む、他のアーキテクチャが可能である。いくつかの実施態様では、アーキテクチャ700は、1つ以上のプロセッサ(複数可)702(例えば、デュアルコアIntel(登録商標)Xeon(登録商標)プロセッサ)、1つ以上のネットワークインターフェース(複数可)706、1つ以上の記憶デバイス(複数可)704(例えば、ハードディスク、光ディスク、フラッシュメモリ)、及び1つ以上のコンピュータ可読媒体(複数可)708(例えば、ハードディスク、光ディスク、フラッシュメモリなど)を含む。これらの構成要素は、1つ以上の通信チャネル(複数可)710(例えば、バス)を介して通信及びデータを交換することができ、当該通信チャネルは、構成要素間のデータ及び制御信号の伝達を容易にするための様々なハードウェア及びソフトウェアを利用することができる。
【0052】
「コンピュータ可読媒体」という用語は、不揮発性媒体(例えば、光学ディスク又は磁気ディスク)、揮発性媒体(例えば、メモリ)、及び伝送媒体を含むが、これらに限定されない、実行用にプロセッサ(複数可)702に命令を提供することに関与する任意の媒体を指す。伝送媒体としては、同軸ケーブル、銅ワイヤ、及び光ファイバが挙げられるが、これらに限定されない。
【0053】
コンピュータ可読媒体(複数可)708は、オペレーティングシステム712(例えば、Mac OS(登録商標)サーバ、Windows(登録商標)NTサーバ、Linux(登録商標)サーバ)、ネットワーク通信モジュール714、インターフェース命令716、及びデータ処理命令718を更に含み得る。
【0054】
オペレーティングシステム712は、マルチユーザ、マルチ処理、マルチタスキング、マルチスレッド、リアルタイムなどであり得る。オペレーティングシステム712は、デバイス702、704、706、及び708からの入力を認識し、これらのデバイスに出力を提供することと、コンピュータ可読媒体(複数可)708(例えば、メモリ又は記憶デバイス)のファイル及びディレクトリを追跡及び管理することと、周辺機器デバイスを制御することと、1つ以上の通信チャネル(複数可)710のトラフィックを管理することと、を含むが、これらに限定されない、基本タスクを実施する。ネットワーク通信モジュール714は、ネットワーク接続(例えば、TCP/IP、HTTPなどのような通信プロトコルを実装するためのソフトウェア)を確立及び維持するため、並びに、例えば、Apache Kafka(商標)を使用して、分散ストリーミングプラットフォームを作成するための、様々な構成要素を含む。データ処理命令716は、図1図6を参照して説明されるように、サーバ側動作を実装するためのサーバ側又はバックエンドソフトウェアを含む。インターフェース命令718は、図1を参照して説明されるように、ウェアラブルマルチメディアデバイス101、第三者アプリケーション開発者104、及び第三者プラットフォーム105とデータの送信及び受信を行うためのウェブサーバ及び/又はポータルを実装するためのソフトウェアを含む。
【0055】
アーキテクチャ700は、各々が1つ以上の処理コアを有するローカルネットワーク又は分散ネットワーク内の1つ以上のサーバコンピュータを含む、任意のコンピュータデバイス内に含まれ得る。アーキテクチャ700は、並列処理若しくはピアツーピアインフラストラクチャ、又は1つ以上のプロセッサを備える単一のデバイスで実装され得る。ソフトウェアは、複数のソフトウェア構成要素を含み得るか、又は単一のコード本体であり得る。
例示的なウェアラブルマルチメディアデバイスアーキテクチャ
【0056】
図8は、図1図6を参照して説明される、特徴及び処理を実装するウェアラブルマルチメディアデバイスのための例示的なアーキテクチャ800のブロック図である。アーキテクチャ800は、図1図6を参照して説明される、特徴及びプロセッサを実装するための任意のウェアラブルマルチメディアデバイス101内に実装され得る。アーキテクチャ800は、メモリインターフェース802、データプロセッサ(複数可)、画像プロセッサ(複数可)又は中央処理ユニット(複数可)804、及び周辺機器インターフェース806を含み得る。メモリインターフェース802、プロセッサ(複数可)804、又は周辺機器インターフェース806は、別々の構成要素であり得るか、又は1つ以上の集積回路内に統合され得る。1つ以上の通信バス又は信号線は、様々な構成要素を結合し得る。
【0057】
センサ、デバイス、及びサブシステムを周辺機器インターフェース806に結合して、複数の機能を容易にすることができる。例えば、運動センサ(複数可)810、生物測定センサ(複数可)812、深度センサ814を周辺機器インターフェース806に結合して、運動、向き、生物測定、及び深度の検出機能を容易にすることができる。いくつかの実装例では、運動センサ(複数可)810(例えば、加速度計、レートジャイロスコープ)を利用して、ウェアラブルマルチメディアデバイスの動き及び向きを検出することができる。
【0058】
環境センサ(複数可)(例えば、温度センサ、気圧計、周囲光)などの他のセンサを周辺機器インターフェース806に接続して、環境検知機能を容易にすることもできる。例えば、生物測定センサは、指紋、顔認識、心拍数、及び他のフィットネスパラメータを検出することができる。一実施形態では、触覚モータ(図示せず)を周辺機器インターフェースに結合することができ、これにより、触覚フィードバックとして振動パターンをユーザに提供することができる。
【0059】
位置プロセッサ815(例えば、GNSS受信機チップ)を周辺機器インターフェース806に接続して、ジオ参照を提供することができる。電子磁力計816(例えば、集積回路チップ)を周辺機器インターフェース806に接続して、磁北方向を判定するために使用され得るデータを提供することもできる。したがって、電子磁力計816を、電子コンパスアプリケーションによって使用することができる。
【0060】
カメラサブシステム820及び光学センサ822、例えば、電荷結合デバイス(charged coupled device、CCD)又は相補型金属酸化膜半導体(complementary metal-oxide semiconductor、CMOS)光学センサを利用して、写真及びビデオクリップを記録するなどのカメラ機能を容易にすることができる。一実施形態では、カメラは、180°FOV及びOISを有する。深度センサは、ドットを既知のパターンでオブジェクト/サブジェクトに投影する赤外線エミッタを含み得る。次いで、ドットを専用赤外線カメラによって撮影し、分析して、深度データを判定する。一実施形態では、飛行時間(TOF)カメラを使用して、既知の光の速度に基づいて距離を決定し、カメラと、画像の各点についてのオブジェクト/サブジェクトとの間の光信号の飛行時間を測定することができる。
【0061】
通信機能を、1つ以上の通信サブシステム824を介して容易にすることができる。通信サブシステム(複数可)824は、1つ以上の無線通信サブシステムを含み得る。無線通信サブシステム824は、ラジオ周波数受信機及び伝送機、並びに/又は光(例えば、赤外線)受信機及び伝送機を含み得る。有線通信システムは、ポートデバイス、例えば、ユニバーサルシリアルバス(Universal Serial Bus、USB)ポート、又はいくつかの他の有線接続ポートの接続を含むことができ、これらを使用して、他の通信デバイス、ネットワークアクセスデバイス、パーソナルコンピュータ、プリンタ、ディスプレイスクリーン、又はデータを受信若しくは伝送することができる他の処理デバイス(例えば、レーザプロジェクタ)などの他のコンピューティングデバイスへの有線接続を確立することができる。
【0062】
通信サブシステム824の具体的な設計及び実装例は、デバイスが動作することが意図されている、通信ネットワーク(複数可)又は媒体(複数可)に依存し得る。例えば、デバイスは、グローバルシステムフォーモバイルコミュニケーションズ(global system for mobile communications、GSM(登録商標、以下同じ))ネットワーク、GPRSネットワーク、拡張データGSM環境(enhanced data GSM environment、EDGE)ネットワーク、IEEE802.xx通信ネットワーク(例えば、WiFi、WiMax、ZigBee(商標))、3G、4G、4G LTE、符号分割多元接続(code division multiple access、CDMA)ネットワーク、近距離無線通(NFC)、Wi-Fiダイレクト、及びBluetooth(登録商標)ネットワークを介して動作するように設計された無線通信サブシステムを含み得る。無線通信サブシステム824は、デバイスが他の無線デバイスのための基地局として構成され得るように、ホスティングプロトコルを含み得る。別の例として、通信サブシステムは、デバイスが、例えば、TCP/IPプロトコル、HTTPプロトコル、UDPプロトコル、ICMPプロトコル、POPプロトコル、FTPプロトコル、IMAPプロトコル、DCOMプロトコル、DDEプロトコル、SOAPプロトコル、HTTPライブストリーミング、MPEG Dash、及び任意の他の既知の通信プロトコル又は技術など、1つ以上のプロトコル又は通信技術を使用して、ホストデバイスと同期することを可能にし得る。
【0063】
オーディオサブシステム826をスピーカ828及び1つ以上のマイクロフォン830に結合して、音声認識、音声複製、デジタル記録、電話機能、及びビーム形成などの音声対応機能を容易にすることができる。
【0064】
I/Oサブシステム840は、タッチコントローラ842及び/又は別の入力コントローラ(複数可)844を含み得る。タッチコントローラ842をタッチ面846に結合することができる。タッチ面846及びタッチコントローラ842は、例えば、容量性技術、抵抗性技術、赤外線技術、及び表面弾性波技術、並びにタッチ面846との1つ以上の接触点を判定するための他の近接センサ配列又は他の要素を含むが、これらに限定されない、いくつかのタッチ感度技術のいずれかを使用して、タッチ面846及びタッチコントローラ842の接触及び動き、又は故障を検出し得る。一実装例では、タッチ面846は、ユーザによる入力/出力デバイスとして使用され得る、仮想ボタン又はソフトボタンを表示し得る。
【0065】
他の入力コントローラ(複数可)844は、1つ以上のボタン、ロッカスイッチ、サムホイール、赤外線ポート、USBポート、及び/又はスタイラスなどのポインタデバイスなどの他の入力/制御デバイス848に結合され得る。1つ以上のボタン(図示せず)は、スピーカ828及び/又はマイクロフォン830の音量制御のためのアップ/ダウンボタンを含み得る。
【0066】
いくつかの実装例では、デバイス800は、MP3、AAC、及びMPEGビデオファイルなどの、ユーザが記録したオーディオファイル及び/又はビデオファイルをプレイバックする。いくつかの実装例では、デバイス800は、MP3プレイヤの機能性を含み得、他のデバイスにテザリングするためのピンコネクタ又は他のポートを含み得る。他の入力/出力及び制御デバイスを使用することができる。一実施形態では、デバイス800は、直接通信リンク又は間接通信リンクを介してアクセサリデバイスにオーディオをストリーミングするためのオーディオ処理ユニットを含み得る。
【0067】
メモリインターフェース802をメモリ850に結合することができる。メモリ850は、1つ以上の磁気ディスク記憶デバイス、1つ以上の光学記憶デバイス、又はフラッシュメモリ(例えば、NAND、NOR)などの、高速ランダムアクセスメモリ又は不揮発性メモリを含み得る。メモリ850は、Darwin、RTXC、LINUX(登録商標)、UNIX(登録商標)、OS X、iOS、WINDOWS(登録商標)、又はVxWorksのような埋め込み型オペレーティングシステムなどのオペレーティングシステム852を記憶し得る。オペレーティングシステム852は、基本システムサービスを扱うため、及びハードウェア依存タスクを実施するための命令を含み得る。いくつかの実装例では、オペレーティングシステム852は、カーネル(例えば、UNIX(登録商標)カーネル)を含み得る。
【0068】
メモリ850はまた、図1図6を参照して説明されるように、無線アクセサリデバイスとのピアツーピア通信を含む、1つ以上の追加のデバイス、1つ以上のコンピュータ又はサーバとの通信を容易にするための通信命令854を記憶し得る。通信命令854はまた、デバイスの地理的位置に基づいて、デバイスによって使用するための動作モード又は通信媒体を選択するために使用され得る。
【0069】
メモリ850は、図1図6を参照して説明されるように、センサ関連の処理及び機能を容易にするためのセンサ処理命令858と、記録機能を容易にするためのレコーダ命令860と、を含み得る。他の命令としては、GNSS及びナビゲーション関連処理を容易にするためのGNSS/ナビゲーション命令、カメラ関連処理を促進するためのカメラ命令、及びタッチ入力を解釈するためのタッチモデルを含むユーザインターフェース処理を容易にするためのユーザインターフェース命令を挙げることができる。
【0070】
上で識別される命令及びアプリケーションの各々は、上に記載される1つ以上の機能を実施するための命令のセットに対応し得る。これらの命令は、別々のソフトウェアプログラム、手順、又はモジュールとして実装される必要はない。メモリ850は、追加の命令又はより少ない命令を含み得る。更に、デバイスの様々な機能は、1つ以上の信号処理及び/又は特定用途向け集積回路(application specific integrated circuit、ASIC)を含む、ハードウェア及び/又はソフトウェアに実装され得る。
【0071】
記載される特徴は、デジタル電子回路構成、又はコンピュータハードウェア、ファームウェア、ソフトウェア、若しくはそれらの組み合わせで実装され得る。特徴は、プログラム可能なプロセッサによる実行のために、情報搬送機内、例えば、機械可読記憶デバイス内に有形的に具現化されたコンピュータプログラム製品で実装され得る。方法ステップは、入力データ上で動作し、出力を生成することによって、記載される実装例の機能を実施するための命令のプログラムを実行するプログラム可能なプロセッサによって実施され得る。
【0072】
記載される特徴は、データ記憶システム、少なくとも1つの入力デバイス、及び少なくとも1つの出力デバイスからデータ及び命令を受信し、データ記憶システム、少なくとも1つの入力デバイス、及び少なくとも1つの出力デバイスにデータ及び命令を伝送するように結合された少なくとも1つのプログラム可能なプロセッサを含むプログラム可能なシステムで実行可能な1つ以上のコンピュータプログラムにおいて有利に実装され得る。コンピュータプログラムは、ある特定の活動を実施するため、又はある特定の結果をもたらすために、コンピュータにおいて直接的又は間接的に使用され得る命令のセットである。コンピュータプログラムは、コンパイル又は解釈された言語を含む任意の形態のプログラミング言語(例えば、Objective-C、Java(登録商標))に書き込まれてもよいし、スタンドアロンプログラムとして、又はモジュール、構成要素、サブルーチン、若しくはコンピューティング環境での使用に好適な他のユニットとしてのものを含む、任意の形態で展開されてもよい。
【0073】
命令のプログラムの実行に好適なプロセッサとしては、例えば、汎用マイクロプロセッサ及び専用マイクロプロセッサの両方、並びに任意の種類のコンピュータの単独のプロセッサ、又は複数のプロセッサ若しくはコアのうちの1つが挙げられる。概して、プロセッサは、リードオンリーメモリ若しくはランダムアクセスメモリ又はその両方から命令及びデータを受信するであろう。コンピュータの必須要素は、命令を実行するためのプロセッサ、並びに命令及びデータを記憶するための1つ以上のメモリである。概して、コンピュータは、データファイルを記憶するための大容量記憶デバイスと通信し得る。これらの大容量記憶デバイスは、内部ハードディスク及び取り外し可能なディスク、光磁気ディスク、並びに光学ディスクなどの、磁気ディスクを含み得る。コンピュータプログラム命令及びデータを有形的に具現化するのに好適な記憶デバイスとしては、例えば、EPROM、EEPROM、及びフラッシュメモリデバイスなどの半導体メモリデバイス、内部ハードディスク及び取り外し可能なディスクなどの磁気ディスク、光磁気ディスク、並びにCD-ROM及びDVD-ROMディスクを含む、全ての形態の不揮発性メモリが挙げられる。プロセッサ及びメモリは、ASIC(特定用途向け集積回路)によって補完され得るか、又はASIC内に組み込まれ得る。ユーザとのインタラクションを提供するために、特徴は、情報を作成者に表示するための、CRT(ブラウン管:cathode ray tube)、LED(発光ダイオード:light emitting diode)、又はLCD(液晶ディスプレイ:liquid crystal display)ディスプレイ又はモニタなどの表示デバイス、キーボード、並びに作成者が入力をコンピュータに提供し得るマウス又はトラックボールなどのポインティングデバイス、を有するコンピュータ上に実装され得る。
【0074】
開示される実施形態の1つ以上の特徴又はステップは、アプリケーションプログラミングインターフェース(API)を使用して実装され得る。APIは、呼び出しアプリケーションと、データを提供するサービス又は動作若しくは計算を実施するサービスを提供する他のソフトウェアコード(例えば、オペレーティングシステム、ライブラリルーチン、機能)との間で渡される、1つ以上のパラメータを定義し得る。APIは、API仕様書で定義される呼び出し規約に基づいて、パラメータリスト又は他の構造を介して1つ以上のパラメータを送信又は受信する、プログラムコード内の1つ以上の呼び出しとして実装され得る。パラメータは、定数、キー、データ構造、オブジェクト、オブジェクトクラス、変数、データタイプ、ポインタ、配列、リスト、又は別の呼び出しであり得る。API呼び出し及びパラメータは、任意のプログラミング言語で実施され得る。プログラミング言語は、プログラマがAPIをサポートする機能にアクセスするために用いるであろう、語彙及び呼び出し規約を定義し得る。いくつかの実装例では、API呼び出しは、入力能力、出力能力、処理能力、電力能力、通信能力などのような、アプリケーションを作動するデバイスの能力をアプリケーションに報告し得る。
【0075】
いくつかの実装例を記載してきた。それにもかかわらず、様々な修正が行われ得ることが理解されよう。1つ以上の実装例の要素は、更なる実装例を形成するために組み合わされても、削除されても、修正されても、補完されてもよい。更に別の実施例では、図に描写される論理フローは、所望の結果を達成するために、示される特定の順序、又は連続的な順序を必要としない。加えて、他のステップが提供されても、ステップが、記載されるフローから排除されてもよいし、他の構成要素が、記載されるシステムに追加されても、又はそこから除去されてもよい。したがって、他の実装例は、以下の特許請求の範囲の範囲内である。
【符号の説明】
【0076】
100 動作環境
101 ウェアラブルマルチメディアデバイス
102 クラウドコンピューティングプラットフォーム
103 ネットワーク
104 アプリ開発者
105 第三者プラットフォーム
106 データベース
200 データ処理システム
201 レコーダ
202 ビデオバッファ
203 オーディオバッファ
204 写真バッファ
205 吸収サーバ
206 データストア
207 ビデオプロセッサ
208 オーディオプロセッサ
209 写真プロセッサ
210 第三者プロセッサ
211、212、213 アプリケーション
300 データ処理パイプライン
301 吸収サーバ
302 ビデオプロセッサ
304 レコーダ
305 オーディオプロセッサ
306 アプリ
307 ビデオ処理アプリ
308 データマージ処理
400 データ処理パイプライン
401 吸収サーバ
402 第三者プロセッサ
404 レコーダ
405 オーディオプロセッサ
406、407 アプリケーション
408 ユーザコールバック待ち行列
700 アーキテクチャ
702 プロセッサ(複数可)
704 記憶デバイス(複数可)
706 ネットワークインターフェース(複数可)
708 コンピュータ可読媒体(複数可)
710 通信チャネル(複数可)
712 オペレーティングシステム
714 ネットワーク通信モジュール
716 データ処理命令
718 インターフェース命令
800 デバイス
802 メモリインターフェース
804 プロセッサ(複数可)
806 周辺機器インターフェース
810 運動センサ(複数可)
812 生物測定センサ(複数可)
814 深度センサ
815 位置プロセッサ
816 電子磁力計
820 カメラサブシステム
822 光学センサ
824 無線通信サブシステム
826 オーディオサブシステム
828 スピーカ
830 マイクロフォン
840 サブシステム
842 タッチコントローラ
844 他の入力コントローラ(複数可)
846 タッチ面
846 タッチ面
848 制御デバイス
850 メモリ
852 オペレーティングシステム命令
854 通信命令
858 センサ処理命令
860 レコーダ命令
図1
図2
図3
図4
図5
図6
図7
図8