特開2018-109960(P2018-109960A)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

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

▶ イマージョン コーポレーションの特許一覧
特開2018-109960ビジュアルオドメトリに基づく自動触覚生成
<>
  • 特開2018109960-ビジュアルオドメトリに基づく自動触覚生成 図000003
  • 特開2018109960-ビジュアルオドメトリに基づく自動触覚生成 図000004
  • 特開2018109960-ビジュアルオドメトリに基づく自動触覚生成 図000005
  • 特開2018109960-ビジュアルオドメトリに基づく自動触覚生成 図000006
  • 特開2018109960-ビジュアルオドメトリに基づく自動触覚生成 図000007
  • 特開2018109960-ビジュアルオドメトリに基づく自動触覚生成 図000008
  • 特開2018109960-ビジュアルオドメトリに基づく自動触覚生成 図000009
  • 特開2018109960-ビジュアルオドメトリに基づく自動触覚生成 図000010
  • 特開2018109960-ビジュアルオドメトリに基づく自動触覚生成 図000011
  • 特開2018109960-ビジュアルオドメトリに基づく自動触覚生成 図000012
  • 特開2018109960-ビジュアルオドメトリに基づく自動触覚生成 図000013
  • 特開2018109960-ビジュアルオドメトリに基づく自動触覚生成 図000014
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2018-109960(P2018-109960A)
(43)【公開日】2018年7月12日
(54)【発明の名称】ビジュアルオドメトリに基づく自動触覚生成
(51)【国際特許分類】
   G06F 3/01 20060101AFI20180615BHJP
   H04N 5/232 20060101ALI20180615BHJP
【FI】
   G06F3/01 560
   H04N5/232 290
【審査請求】未請求
【請求項の数】20
【出願形態】OL
【外国語出願】
【全頁数】28
(21)【出願番号】特願2017-237342(P2017-237342)
(22)【出願日】2017年12月12日
(31)【優先権主張番号】15/378,686
(32)【優先日】2016年12月14日
(33)【優先権主張国】US
(71)【出願人】
【識別番号】500390995
【氏名又は名称】イマージョン コーポレーション
【氏名又は名称原語表記】IMMERSION CORPORATION
【住所又は居所】アメリカ合衆国 カリフォルニア州 95134 サンノゼ リオ ロブレス 50
(74)【代理人】
【識別番号】100083806
【弁理士】
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100095500
【弁理士】
【氏名又は名称】伊藤 正和
(74)【代理人】
【識別番号】100111235
【弁理士】
【氏名又は名称】原 裕子
(72)【発明者】
【氏名】ウー、 リーウェン
【住所又は居所】カナダ国 エイチ2ダブリュー 2アール2 ケベック州 モントリオール サンローラン ブルバール 4200 スイート1105
(72)【発明者】
【氏名】サボーネ、 ジャマール
【住所又は居所】カナダ国 エイチ2ダブリュー 2アール2 ケベック州 モントリオール サンローラン ブルバール 4200 スイート1105
(72)【発明者】
【氏名】レインズ、 ペイジ
【住所又は居所】アメリカ合衆国 カリフォルニア州 95134 サンノゼ リオ ロブレス 50
【テーマコード(参考)】
5C122
5E555
【Fターム(参考)】
5C122DA03
5C122DA09
5C122DA13
5C122EA59
5C122FA06
5C122FH10
5C122FH11
5C122FH12
5C122FH14
5C122FK12
5C122FK24
5C122FK36
5C122GA01
5C122GA31
5C122HA13
5C122HA35
5C122HA82
5C122HB01
5C122HB05
5C122HB06
5E555AA08
5E555BA02
5E555BA04
5E555BA18
5E555BA20
5E555BA87
5E555BB02
5E555BB04
5E555BB18
5E555BB20
5E555BC30
5E555CA12
5E555CB12
5E555DA24
5E555DB57
5E555EA22
5E555FA00
(57)【要約】      (修正有)
【課題】ビジュアルオドメトリに基づいて自動的に触覚を生成するためのデバイス、システム及び方法の例が開示される。
【解決手段】コンピュータデバイス100において、複数のフレームを有する映像を受信し、複数のフレームからの第1のフレームと複数のフレームからの第2のフレームとの間のオプティカルフロー推定124を生成する。第2のフレームは、第1のフレームの後である。第1のフレームと第2のフレームとの間の静止オブジェクトの見掛けの動きは、オプティカルフロー推定124に少なくとも部分的に基づいて検出される。静止オブジェクトの見掛けの動きに対応する少なくとも1つの触覚効果がオプティカルフロー推定124に少なくとも部分的に基づいて生成される。(複数の)生成された触覚効果は、触覚ファイル及び又は触覚出力デバイス118に出力される。
【選択図】図1C
【特許請求の範囲】
【請求項1】
触覚効果を生成する方法であって、
複数のフレームを有する映像を受信するステップと、
第1のフレームと第2のフレームとの間のオプティカルフロー推定を決定するステップであって、前記第2のフレームは前記第1のフレームの後であるステップと、
前記オプティカルフロー推定に少なくとも部分的に基づいて前記第1のフレームと前記第2のフレームとの間の静止オブジェクトの見掛けの動きを検出するステップと、
前記オプティカルフロー推定に少なくとも部分的に基づいて前記静止オブジェクトの前記見掛けの動きに対応する触覚効果を生成するステップと、
触覚出力デバイスを介して前記触覚効果を発生させるステップと
を含む、方法。
【請求項2】
前記映像は、映像ファイル、リアルタイム映像、又は主観映像の少なくとも1つを含む、請求項1に記載の方法。
【請求項3】
前記第1のフレーム及び前記第2のフレームは、前記複数のフレームにおける連続フレームである、請求項1に記載の方法。
【請求項4】
前記第2のフレームは前記複数のフレームにおける少なくとも1つのフレームによって前記第1のフレームから分離され、前記第2のフレームは前記第1のフレームに近接している、請求項1に記載の方法。
【請求項5】
前記第2のフレームは、前記映像のフレームレートに少なくとも部分的に基づいて前記複数のフレームから選択される、請求項1に記載の方法。
【請求項6】
前記オプティカルフロー推定を決定するステップは、
前記第1のフレームの部分エリア内の複数の特徴ピクセルを決定すること、及び
前記第1のフレームと前記第2のフレームとの間の前記静止オブジェクトの前記見掛けの動きを示す、前記第1のフレームの前記部分エリア内の前記複数の特徴ピクセル及び前記第2のフレームの部分エリア内の対応する複数の特徴ピクセルに対応する運動ベクトルを生成すること
を含む、請求項1に記載の方法。
【請求項7】
前記静止オブジェクトの前記見掛けの動きを検出するステップは、前記運動ベクトルの同じ方向又は実質的に同じ方向を検出することを含む、請求項6に記載の方法。
【請求項8】
前記部分エリア内の前記複数の特徴ピクセルは、前記静止オブジェクトの検出に少なくとも部分的に基づいて決定され、決定された部分エリアは前記静止オブジェクトを取り囲む、請求項6に記載の方法。
【請求項9】
前記部分エリア内の前記複数の特徴ピクセルは、前記複数のフレームにおける前記第1のフレーム以外のフレームに対応する以前のオプティカルフロー推定を生成する際に決定された以前の部分エリア内の複数の特徴ピクセルと対応する、請求項6に記載の方法。
【請求項10】
前記オプティカルフロー推定は、前記部分エリア内の特徴ピクセルのみに対応する運動ベクトルを含む、請求項6に記載の方法。
【請求項11】
前記部分エリアは、前記第1のフレーム及び前記第2のフレームに対応する上端中央ビューを含む、請求項6に記載の方法。
【請求項12】
前記部分エリアのサイズは、検出された静止オブジェクトの数に少なくとも部分的に基づく、請求項6に記載の方法。
【請求項13】
前記静止オブジェクトの前記見掛けの動きは、同じ方向又は実質的に同じ方向を有する前記オプティカルフロー推定内の運動ベクトルのクラスタを決定することにより検出される、請求項1に記載の方法。
【請求項14】
生成された触覚効果は、前記運動ベクトルのクラスタ内の少なくとも1つの運動ベクトルの大きさと対応する強度パラメータを含む、請求項13に記載の方法。
【請求項15】
前記触覚効果は、触覚トラックに出力される、請求項1に記載の方法。
【請求項16】
プロセッサによって実行されるように構成される1つ以上のソフトウェアアプリケーションを含む非一時的なコンピュータ可読媒体であって、前記1つ以上のソフトウェアアプリケーションは、
複数のフレームを有する映像を受信すること、
第1のフレームと第2のフレームとの間のオプティカルフロー推定を決定することであって、前記第2のフレームは前記第1のフレームの後であること、
前記オプティカルフロー推定に少なくとも部分的に基づいて前記第1のフレームと前記第2のフレームとの間の静止オブジェクトの見掛けの動きを検出すること、
前記オプティカルフロー推定に少なくとも部分的に基づいて前記静止オブジェクトの前記見掛けの動きに対応する触覚効果を生成すること、及び
触覚出力デバイスを介して前記触覚効果を発生させること
を行うように構成される、非一時的なコンピュータ可読媒体。
【請求項17】
前記オプティカルフロー推定は複数の運動ベクトルを含み、前記静止オブジェクトの見掛けの動きは、同じ又は実質的に同じ方向を指す前記運動ベクトルのクラスタに基づいて検出される、請求項16に記載の非一時的なコンピュータ可読媒体。
【請求項18】
前記触覚効果は、前記映像を記録したカメラの近似した動きに対応する運動ベクトルのクラスタからの運動ベクトルの大きさに少なくとも部分的に基づく強度パラメータを含む、請求項16に記載の非一時的なコンピュータ可読媒体。
【請求項19】
触覚効果を発生させるように構成されるデバイスであって、
カメラと、
ディスプレイと、
触覚出力デバイスと、
前記カメラ、前記ディスプレイ、及び前記触覚出力デバイスと通信するプロセッサであって、
前記カメラから複数のフレームを有する映像を受信すること、
第1のフレームと第2のフレームとの間のオプティカルフロー推定を決定することであって、前記第2のフレームは前記第1のフレームの後であること、
前記オプティカルフロー推定に少なくとも部分的に基づいて前記第1のフレームと前記第2のフレームとの間の静止オブジェクトの見掛けの動きを検出すること、
前記オプティカルフロー推定に少なくとも部分的に基づいて前記静止オブジェクトの前記見掛けの動きに対応する触覚効果を前記触覚出力デバイスに出力させるように構成される触覚信号を生成すること、
前記ディスプレイに前記第1のフレーム及び前記第2のフレームを出力すること、及び
前記第2のフレームが前記ディスプレイに表示されるときに前記触覚出力デバイスが前記触覚効果を発生させるように前記触覚出力デバイスに前記触覚信号を出力すること
を行うように構成されるプロセッサと
を備える、デバイス。
【請求項20】
前記第1のフレーム及び前記第2のフレームは、前記複数のフレームにおける連続フレームである、請求項19に記載のデバイス。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、一般には触覚デバイスに関し、より一般にはビジュアルオドメトリに基づく自動触覚生成に関する。
【背景技術】
【0002】
従来、機械式ボタンが電子デバイスのユーザに物理的な触感を提供してきた。しかしながら、電子デバイスのサイズが減少し、電子デバイスの携帯性が増加してくると、電子デバイスの機械式ボタンの数が減少し、一部の電子デバイスは機械式ボタンを全く持っていない。触覚出力デバイスは、ユーザに触覚効果を出力するためにこのようなデバイスに含まれる場合がある。
【発明の概要】
【0003】
ビジュアルオドメトリに基づいて自動的に触覚を生成するためのデバイス、システム及び方法に関する様々な例が記載されている。
【0004】
開示された方法の一例は、複数のフレームを有する映像を受信するステップと、第1のフレームと第2のフレームとの間のオプティカルフロー推定を決定するステップであって、第2のフレームは第1のフレームの後であるステップと、オプティカルフロー推定に少なくとも部分的に基づいて第1のフレームと第2のフレームとの間の静止オブジェクトの見掛けの動きを決定するステップと、オプティカルフロー推定に少なくとも部分的に基づいて静止オブジェクトの見掛けの動きに対応する触覚効果を生成するステップと、触覚出力デバイスを介して触覚効果を発生させるステップとを含む。
【0005】
本開示の非一時的なコンピュータ可読媒体の一例は、プロセッサによって実行されるように構成される1つ以上のソフトウェアアプリケーションを含む。この例示では、1つ以上のソフトウェアアプリケーションは、複数のフレームを有する映像を受信すること、第1のフレームと第2のフレームとの間のオプティカルフロー推定を決定することであって、第2のフレームは第1のフレームの後であること、オプティカルフロー推定に少なくとも部分的に基づいて第1のフレームと第2のフレームとの間の静止オブジェクトの見掛けの動きを決定すること、オプティカルフロー推定に少なくとも部分的に基づいて静止オブジェクトの見掛けの動きに対応する触覚効果を生成すること、及び触覚出力デバイスを介して触覚効果を発生させることを行うように構成される。
【0006】
触覚効果をもたらすように構成される開示されたデバイスの一例は、カメラ、ディスプレイ、触覚出力デバイス及びプロセッサを含む。この例示では、プロセッサは、カメラ、ディスプレイ及び触覚出力デバイスと通信する。この例示では、プロセッサは、カメラから複数のフレームを有する映像を受信すること、第1のフレームと第2のフレームとの間のオプティカルフロー推定を決定することであって、第2のフレームは第1のフレームの後であること、オプティカルフロー推定に少なくとも部分的に基づいて第1のフレームと第2のフレームとの間の静止オブジェクトの見掛けの動きを決定すること、オプティカルフロー推定に少なくとも部分的に基づいて静止オブジェクトの見掛けの動きに対応する触覚効果を触覚出力デバイスに出力させるように構成される触覚信号を生成すること、ディスプレイに第1のフレーム及び第2のフレームを出力すること、及び第2のフレームがディスプレイに表示されるときに触覚出力デバイスが触覚効果をもたらすように触覚出力デバイスに触覚信号を出力することを行うように構成される。
【0007】
こうした例示は、本開示の範囲を限定又は定義するために言及されるのではなく、その理解を支援するための例示を提供するものである。詳細な説明において例示が検討されており、そこには更なる説明が提供されている。様々な例によってもたらされる利点は、本明細書を吟味することにより更に理解され得る。
【図面の簡単な説明】
【0008】
本特許又は出願ファイルは、カラーで作成された少なくとも1つの図面を含む。カラー図面を有する本特許又は特許出願のコピーは、要求及び必要な手数料の支払いに応じて庁により提供されるであろう。
【0009】
本明細書に組み込まれてその一部を構成する添付の図面は、1つ以上の所定の例示を示しており、例示の説明と共に、所定の例示の原理及び実装を説明する役割を果たす。
図1A】一実施形態によるビジュアルオドメトリに基づく触覚の自動生成に関する例示的なコンピュータデバイスを示す。
図1B】一実施形態によるビジュアルオドメトリに基づく触覚の自動生成に関する例示的なコンピュータデバイスを示す。
図1C】一実施形態によるビジュアルオドメトリに基づく触覚の自動生成に関する例示的なコンピュータデバイスを示す。
図2】一実施形態によるビジュアルオドメトリに基づく触覚の自動生成に関する例示的なコンピュータデバイスを示す。
図3】一実施形態によるビジュアルオドメトリに基づいて触覚を自動的に生成する例示的な方法を示す。
図4】一実施形態による映像フレームに関する例示的なオプティカルフロー推定を示す。
図5A】一実施形態による森を描く映像において検出された部分エリア内の特徴ピクセルに関する例示的なオプティカルフロー推定を示す。
図5B】一実施形態による山を描く映像において検出された部分エリア内の特徴ピクセルに関する例示的なオプティカルフロー推定を示す。
図6図6A及び6Bは一実施形態による1つのフレーム(図6A)から別のフレーム(図6B)への例示的な垂直カメラシフトを示す。
図7A】一実施形態による砂利道を走行しているマウンテンバイクの映像に対して生成された例示的な触覚効果を示す。
図7B】一実施形態による石の上を走行しているマウンテンバイクの映像に対して生成された例示的な触覚効果を示す。
図8】一実施形態によるビジュアルオドメトリに基づいて触覚を自動的に生成する例示的な方法を示す。
【発明を実施するための形態】
【0010】
本明細書には、ビジュアルオドメトリに基づいて自動的に触覚を生成するためのデバイス、システム及び方法の文脈で例が記載されている。複数の実施形態では、本明細書で用いられるビジュアルオドメトリは、カメラの動きを示す映像内のフレーム間の静止オブジェクトの見掛けの動きを決定するために、映像内の映像フレームを解析することによって検出される映像を記録するときのカメラの動きに言及する。当業者であれば、以下の記載は例示目的であり、如何なる限定も意図していないことを理解するであろう。次に、添付の図面に示された例示的な実装を詳細に参照する。同じ参照記号が同じ又は同様の項目を参照するために図面及び以下の記載を通じて使用される。
【0011】
明確のため、本明細書に記載の例示の定型的な特徴の全てが示され且つ記載されているわけではない。勿論、このような実際の実装の開発において、アプリケーション及びビジネス関連の制約の遵守等の多くの実装固有の決定が開発者の特定の目的を達成するために行われなければならず、こうした特定の目的は実装ごとに又は開発者ごとに変化することが理解されるであろう。
【0012】
(ビジュアルオドメトリに基づく自動的触覚生成の例示)
例示では、アクションカメラは、ユーザが主観映像を記録することを可能にする。ユーザがアクションカメラを使用して主観映像を記録した後で、この例示では、ビジュアルオドメトリに基づいて主観映像に関する触覚効果が自動的に生成され且つそれに追加され得る。主観映像は一人称視点から記録されているので、主観映像を記録した人物のモーションが、アクションカメラの動きに基づいて推定され得る。更に、主観映像が再生されるときに主観映像における動きに対応する触覚効果が出力されるように、動きに対応する触覚効果が生成されて触覚ファイルに記録され得る。
【0013】
この例示では、主観映像におけるさもなければ静止しているオブジェクトの垂直方向への見掛けの突然の動きに対応する触覚効果が生成される。オブジェクトは静止しているはずなので、この例示では、記録された主観映像における静止オブジェクトの動きの見掛けの突然の動きは、映像の記録中のアクションカメラの動きによって引き起こされている。この例示では、触覚効果は、主観映像が記録されたカメラの移動速度に基づいて生成される。例えば、触覚効果は、主観映像の連続フレーム間のさもなければ静止しているオブジェクトの垂直方向における見掛けの動きの大きさに基づいて生成され得る。連続フレーム間のさもなければ静止しているオブジェクトの垂直方向における見掛けの動きの大きさは、主観映像が記録されたときのカメラの移動速度に近似し得る。
【0014】
この例示では、触覚効果は、主観映像に対応する触覚ファイルに記憶される。触覚効果に関するタイミング及び大きさパラメータは、主観映像が再生されるときに、主観映像における静止オブジェクトの見掛けの突然の垂直の動きに対応する触覚効果が出力されるように、触覚ファイルに記憶され得る。一例として、触覚ファイルは、主観映像内の静止オブジェクトにおいて見掛けの突然の大きな垂直の動きが有るときに大きな触覚効果が出力されるように、触覚効果に関するタイミング及び大きさパラメータを記憶し得る。別の例示として、静止オブジェクトにおける見掛けの突然の垂直の動きが閾値量を超える場合、触覚ファイルは、垂直の動きの大きさに対応する大きさを有する触覚効果が、突然の動きが主観映像で再生されるときに出力されるように、タイミング及び大きさパラメータを有し得る。この例示では、静止オブジェクトにおける見掛けの突然の垂直の動きが閾値量より低い場合、触覚ファイルは、突然の動きに対応するタイミング又は大きさパラメータを有していなくてもよく、従って、触覚効果は、突然の動きが主観映像で再生されるときに出力されない。
【0015】
この例示の実施形態は本明細書で検討される一般的な主題を読者に紹介するために与えられており、本開示はこの例示に限定されない。以下の段落では、ビジュアルオドメトリに基づいて自動的に触覚を生成するためのシステム及び方法の様々な追加の非限定的な例示が記載されている。
【0016】
図1A、1B及び1Cは、一実施形態によるビジュアルオドメトリに基づく触覚の自動生成に関する例示的なコンピュータデバイス100を示す。図1Aはコンピュータデバイス100の前面を示し、図1Bはコンピュータデバイス100の背後を示し、図1Cはコンピュータデバイス100のコンポーネントを示す。
【0017】
コンピュータデバイス100は、例えば、デジタルカメラ、アクションカメラ、360度カメラ、スマートフォン、タブレット、Eリーダ、ラップトップコンピュータ、デスクトップコンピュータ、携帯型ゲームデバイス、医療デバイス、セットトップボックス(例えば、DVDプレーヤ、DVR、ケーブルテレビボックス)、又はゲームコントローラを含んでもよい。他の例では、コンピュータデバイス100は、多機能コントローラ、例えば、キオスク、自動車、アラームシステム、サーモスタット、又は他の種類の電子デバイスで使用されるコントローラを含んでもよい。一部の例では、コンピュータデバイス100は、腕時計、ブレスレット、ネックレス、ベルト、仮想現実(VR)ヘッドセット、ヘッドホン、手袋又はブーツ等のウェアラブルコンピュータデバイスを含んでもよい。コンピュータデバイス100は図1A−1Cにおいて単一のデバイスとして示されているが、他の例では、コンピュータデバイス100は、例えば、図2に示されるように複数のデバイスを含んでもよい。
【0018】
例示のコンピュータデバイス100は、バス106を介して他のハードウェアとインターフェース接続されるプロセッサ102を含む。RAM、ROM又はEEPROM等の任意の適切な有形の(及び非一時的な)コンピュータ可読媒体を含み得るメモリ104が、コンピュータデバイス100の動作を構成するプログラムコンポーネントを具現化してもよい。一部の例では、コンピュータデバイス100は、1つ以上のネットワークインターフェースデバイス110、入力/出力(I/O)インターフェースコンポーネント112、及び追加の記憶装置114を更に備えてもよい。
【0019】
ネットワークインターフェースデバイス110は、ネットワーク接続を容易にする1つ以上の任意のネットワークコンポーネントを表し得る。限定されないが、例示には、イーサネット(登録商標)、USB、IEEE1394等の有線インターフェース、及び/又はIEEE802.11、ブルートゥース(登録商標)等の無線インターフェース、又は携帯電話ネットワークにアクセスするための無線インターフェース(例えば、CDMA、GSM(登録商標)、UMTS又は他の移動通信ネットワーク)が含まれる。
【0020】
I/Oコンポーネント112は、1つ以上のディスプレイ、キーボード、カメラ、マウス、スピーカ、マイクロホン、ボタン、ジョイスティック、及び/又はデータの入力又は出力に使用される他のハードウェア等のデバイスへの接続を容易にするために使用されてもよい。追加の記憶装置114は、読み取り専用メモリ、フラッシュメモリ、ランダム・アクセス・メモリ(RAM)、強誘電性RAM(F−RAM)、磁気、光学、又はコンピュータデバイス100に含まれ若しくはプロセッサ102に結合される他の記憶媒体等の不揮発性記憶装置を表す。
【0021】
コンピュータデバイス100は、タッチセンサ面116を有する。図1Cに示される例では、タッチセンサ面116は、コンピュータデバイス100に統合される。他の例では、コンピュータデバイス100は、タッチセンサ面116を含まなくてもよい。タッチセンサ面116は、ユーザの触覚入力を感知するように構成される任意の表面を表す。一部の例では、タッチセンサ面116は、丸め可能、折り曲げ可能、折り畳み可能、伸縮可能、捻り可能、絞り可能、又はそれ以外の変形が可能であってもよい。例えば、タッチセンサ面116は、折り曲げ可能電子ペーパー又はタッチセンサ式ディスプレイデバイスを含んでもよい。
【0022】
1つ以上のタッチセンサ108は、一部の例では、物体がタッチセンサ面116に接触する場合に接触領域における接触を検出して、プロセッサ102によって使用される適切なデータを提供するように構成される。任意の適切な数、タイプ、又は配置のセンサが使用され得る。例えば、抵抗性及び/又は容量性のセンサが、タッチセンサ面116に組み込まれて、タッチの場所及び圧力、速さ、及び/又は方向等の他の情報を検出するために使用されてもよい。別の例示として、タッチ位置を決定するために、タッチセンサ面116のビューを備える光学センサが使用されてもよい。
【0023】
他の例では、タッチセンサ108は、LED(Light Emitting Diode)検出器を含んでもよい。例えば、一部の例では、タッチセンサ面116は、ディスプレイの側部に取り付けられるLED指検出器を含んでもよい。一部の例では、プロセッサ102は、単一のタッチセンサ108と通信する。他の例では、プロセッサ102は複数のタッチセンサ108、例えば、第1のタッチスクリーン及び第2のタッチスクリーンに関係付けられるタッチセンサと通信する。タッチセンサ108は、ユーザ相互作用を検出し、ユーザ相互作用に基づいて、プロセッサ102に信号を送信するように構成される。一部の例では、タッチセンサ108は、ユーザ相互作用の複数の態様を検出するように構成されてもよい。例えば、タッチセンサ108は、ユーザ相互作用の速度及び圧力を検出して、この情報を信号に組み込んでもよい。
【0024】
一部の例では、コンピュータデバイス100は、タッチセンサ面116及びディスプレイを組み合わせたタッチ可能ディスプレイを含んでもよい。タッチセンサ面116は、ディスプレイ外部又はディスプレイのコンポーネント上の1つ以上の材料層に対応してもよい。他の例では、コンピュータデバイス100の特定の構成によっては、タッチセンサ面116はディスプレイを含まなくてもよい(そうでない場合、ディスプレイに対応する)。
【0025】
コンピュータデバイス100は、1つ以上の追加のセンサ130も備える。(複数の)センサ130は、プロセッサ102にセンサ信号を送信するように構成される。一部の例では、(複数の)センサ130は、例えば、カメラ、湿度センサ、周辺光センサ、ジャイロスコープ、GPS装置、加速度計、距離センサ又は深度センサ、バイオリズムセンサ、又は温度センサを含んでもよい。図1Cに示された例ではセンサ130がコンピュータデバイス100の内部に有るように描かれているが、一部の例では、センサ130はコンピュータデバイス100の外部に有ってもよい。例えば、一部の例では、1つ以上のセンサ130が、ゲームシステムを含むコンピュータデバイス100で使用されるゲームコントローラに関係付けられてもよい。一部の例では、プロセッサ102は単一のセンサ130と通信し、他の例では、プロセッサ102は複数のセンサ130、例えば、温度センサ及び湿度センサと通信してもよい。一部の例では、センサ130は、コンピュータデバイス100から遠隔に有るが、例えば、図2に示されるように、プロセッサ102に通信可能に結合されてもよい。
【0026】
コンピュータデバイス100は、プロセッサ102と通信する触覚出力デバイス118を更に含む。触覚出力デバイス118は、触覚信号に応答して触覚効果を出力するように構成される。一部の例では、触覚出力デバイス118は、例えば、振動、知覚される摩擦係数の変化、シミュレートされるテクスチャ、温度の変化、ストロークの感覚、電気触覚効果、又は表面変形(例えば、コンピュータデバイス100に関係付けられる表面の変形)を含む触覚効果を出力するように構成される。本明細書には単一の触覚出力デバイス118が示されているが、一部の例では、触覚効果を生ずるために連続して又は同時に作動され得る同じ又は異なるタイプの複数の触覚出力デバイス118を含んでもよい。
【0027】
図1Cに示される例では、触覚出力デバイス118は、コンピュータデバイス100の内部に有る。他の例では、触覚出力デバイス118は、コンピュータデバイス100から遠隔に有るが、例えば、図2に示されるように、プロセッサ102に通信可能に結合されてもよい。例えば、触覚出力デバイス118は、コンピュータデバイス100の外部に有り、イーサネット、USB、IEEE1394等の有線インターフェース、及び/又はIEEE802.11、ブルートゥース、又はラジオインターフェース等の無線インターフェースを介してコンピュータデバイス100と通信してもよい。
【0028】
一部の例では、触覚出力デバイス118は、振動を含む触覚効果を出力するように構成されてもよい。一部のこのような例では、触覚出力デバイス118は、圧電アクチュエータ、電気モータ、電磁アクチュエータ、音声コイル、形状記憶合金、電気活性ポリマー、ソレノイド、偏心回転質量モータ(ERM)又は線形共振アクチュエータ(LRA)の1つ以上を含んでもよい。
【0029】
一部の例では、触覚出力デバイス118は、例えば、触覚信号に応じてコンピュータデバイス100の表面に沿って知覚される摩擦係数を調節する触覚効果を出力するように構成されてもよい。一部のこのような例では、触覚出力デバイス118は、超音波アクチュエータを含んでもよい。超音波アクチュエータは、圧電材料を含んでもよい。超音波アクチュエータは、所定の超音波周波数、例えば、20kHzで振動して、タッチセンサ面116の表面において知覚される係数を増加又は減少してもよい。
【0030】
一部の例では、触覚出力デバイス118は、静電気引力を使用して、例えば、静電アクチュエータを使用することによって、触覚効果を出力してもよい。触覚効果は、シミュレートされるテクスチャ、シミュレートされる振動、ストロークの感覚、又はコンピュータデバイス100に関係付けられる表面(タッチセンサ面116)における知覚される摩擦係数の変化を含んでもよい。一部の例では、静電アクチュエータは、導電レイヤ及び絶縁レイヤを含んでもよい。導電レイヤは、任意の半導体又は銅、アルミニウム、金又は銀等の他の導電性材料であってもよい。絶縁レイヤは、ガラス、プラスチック、ポリマー、又は任意の他の絶縁性材料であってもよい。更に、プロセッサ102は、導電レイヤに電気信号、例えば、AC信号を加えることによって静電アクチュエータを動作させてもよい。一部の例では、高電圧増幅器がAC信号を生成してもよい。電気信号は、導電層と触覚出力デバイス118に近接する又はタッチするオブジェクト(例えば、ユーザの指又はスタイラス)との間に容量結合を生成してもよい。一部の例では、オブジェクトと導電層との間の引力レベルの変化は、ユーザによって知覚される触覚効果を変化させることができる。
【0031】
また、コンピュータデバイス100は前面カメラ134も含む。例えば、図1Aに示された前面カメラ134は、ユーザによってコンピュータデバイス100が使用されるときに、コンピュータデバイス100のユーザの方に向く又は面する。前面カメラ134は、映像信号をプロセッサ102に伝達するように構成される。例えば、前面カメラ134は、毎秒24フレームを有する映像信号をプロセッサ102に送ってもよい。他の実施形態では、前面カメラ134は、毎秒25,30,48,50,60,72,90,100,120,144,240,又は300フレームのフレームレートを有する映像信号をプロセッサ102に送る。一実施形態では、前面カメラ134は、毎秒24から300の間のフレームを有する映像信号をプロセッサ102に送ってもよい。一部の例では、プロセッサ102は、バス106を介して前面カメラ134と通信する。一例では、前面カメラ134は、主観映像等の映像を記録するために使用可能であり、映像は、メモリ104又は記憶装置114に記憶され得る。一部の例では、前面カメラ134は、ネットワーク110を介して別のコンピュータデバイスにストリーミングされる、主観映像等の映像をキャプチャするために使用され得る。
【0032】
また、コンピュータデバイス100は後面カメラ140も含む。例えば、図1Bに示された後面カメラ140は、ユーザによってコンピュータデバイス100が使用されるときに、コンピュータデバイス100のユーザから離れた方に向く又は面する。後面カメラ140は、映像信号をプロセッサ102に伝達するように構成される。例えば、後面カメラ140は、毎秒24フレームを有する映像信号をプロセッサ102に送ってもよい。他の実施形態では、後面カメラ140は、毎秒25,30,48,50,60,72,90,100,120,144,240,又は300フレームを有する映像信号をプロセッサ102に送る。一実施形態では、後面カメラ140は、毎秒24から300の間のフレームを有する映像信号をプロセッサ102に送る。一部の例では、プロセッサ102は、バス106を介して後面カメラ140と通信する。一例では、後面カメラ140は、主観映像等の映像を記録するために使用可能であり、映像は、メモリ104又は記憶装置114に記憶され得る。一部の例では、後面カメラ140は、ネットワーク110を介して別のコンピュータデバイスにストリーミングされる、主観映像等の映像をキャプチャするために使用され得る。
【0033】
また、コンピュータデバイス100はメモリ104も含む。メモリ104は、プログラムコンポーネント124、126及び12を含み、これらはビジュアルオドメトリに基づいて自動的に触覚を生成するために一部の例では、デバイスがどのように構成され得るかを示すように描かれている。
【0034】
オプティカルフロー推定モジュール124は、映像内のフレーム間のオプティカルフローを推定するようにプロセッサ102を構成する。例えば、オプティカルフロー推定モジュール124は、映像内の2つの連続した映像フレーム間のオプティカルフロー推定を生成することができる。オプティカルフロー推定モジュール124は、オプティカルフローを推定するときに焦点を合わせるべき映像のフレーム内の所定の領域内の所定の特徴ピクセルを検出するようにプロセッサ102を構成してもよい。例えば、オプティカルフロー推定モジュール124は、映像をキャプチャしたカメラの動きが無ければ近接する映像フレームに対して静止したままであるはずの映像の映像フレームにおける1つ以上のエリア内の1つ以上の特徴ピクセルを決定することができる。一例として、オプティカルフロー推定モジュール124は、(映像における次の映像フレーム等の)後続の映像フレームにおいて、映像をキャプチャするときのカメラの動きがなければ静止したままであるはずの映像フレームにおいて示された1つ以上のオブジェクトを取り囲む1つ以上のエリア内の1つ以上のピクセルを決定することができる。この例は、オプティカルフロー推定モジュール124の効率を高め、映像フレームのエリア全体の中のピクセルに対してオプティカルフロー推定が生成されることを必要としないことによって、プロセッサ102の必要な処理能力を減らすことができる。複数の実施形態では、映像における2つ以上の映像フレームの少なくとも一部内のピクセル間のオプティカルフローを推定するために、オプティカルフロー推定モジュール124は、例えば、位相相関法、ブロックベースの方法、Lucas−Kanade法、Horn−Schunck法、Buxton−Buxton法、Black−Jepson法、別の適切な微分法、最大フロー・最小カットに基づくアルゴリズム、離散最適化法等のアルゴリズムを実装する。
【0035】
オプティカルフロー推定モジュール124は、様々なソースから多くのフレームを有する映像を受信することができる。例えば、オプティカルフロー推定モジュール124は、前面カメラ134、後面カメラ140、又はI/O112からリアルタイム映像を受信することができる。一例では、オプティカルフロー推定モジュールは、メモリ104、記憶装置114、又はI/O112に記憶された映像を受信することができる。一部の例では、オプティカルフロー推定モジュール124は、ネットワーク110を介してストリーミング映像を受信することができる。
【0036】
複数の例において、オプティカルフロー推定モジュール124は、図3のブロック320及び/又は図8のブロック820等に関して、本明細書に記載の映像におけるフレーム間のオプティカルフロー推定を生成するようにプロセッサ102を構成する。オプティカルフロー推定モジュール124はメモリ104内のプログラムコンポーネントとして図1Cに描かれているが、一部の例では、オプティカルフロー推定モジュール124は、オプティカルフローを推定するように構成されるハードウェアを含んでもよい。一部の例では、このようなハードウェアは、アナログからデジタルへの変換器、プロセッサ、マイクロコントローラ、比較器、増幅器、トランジスタ、及び他のアナログ又はデジタル回路を含んでもよい。
【0037】
イベント検出モジュール126は、映像内のフレーム間の動きを検出するようにプロセッサ102を構成する。例えば、イベント検出モジュール126は、映像における連続フレーム間の突然の動きを検出することができる。この例示では、イベント検出モジュール126は、突然の動きが有るかどうかを決定するために連続フレームに対してオプティカルフロー推定モジュール124によって生成されるオプティカルフロー推定を分析することができる。一実施形態では、イベント検出モジュール126は、生成されたオプティカルフロー推定における運動ベクトルの大きさを解析する。例えば、生成されたオプティカルフロー推定における運動ベクトルの平均の大きさが大きさ閾値を超える場合、イベント検出モジュール126は、映像がキャプチャされたときにカメラのモーションに突然の動きが発生したことを決定することができる。一部の実施形態では、イベント検出モジュール126は、生成されたオプティカルフロー推定における運動ベクトルの方向を解析する。例えば、イベント検出モジュール126は、突然の動きが有るかどうかを決定する際に、垂直又は実質的に垂直であり且つ北又は実質的に北を向いている運動ベクトルのみを解析してもよい。
【0038】
複数の例において、イベント検出モジュール126は、図3のブロック330及び/又は図8のブロック820及び/又は830等に関して、本明細書に記載の映像におけるフレーム間の動きを検出するようにプロセッサ102を構成する。イベント検出モジュール126はメモリ104内のプログラムコンポーネントとして図1Cに描かれているが、一部の例では、イベント検出モジュール126は、動きを検出するように構成されるハードウェアを含んでもよい。一部の例では、このようなハードウェアは、アナログ・デジタル変換器、プロセッサ、マイクロコントローラ、比較器、増幅器、トランジスタ、及び他のアナログ又はデジタル回路を含んでもよい。
【0039】
効果生成モジュール128は、映像に対する触覚効果を生成するようにプロセッサ102を構成する。例えば、効果生成モジュール128は、映像における連続フレーム間の突然の動きに基づいて触覚効果を生成することができる。この例示では、効果生成モジュール128は、イベント検出モジュール126によって検出された連続フレーム間の突然の動きに基づいて触覚効果に関する1つ以上のパラメータを決定することができる。例えば、イベント検出モジュール126が映像の2つの連続フレーム間に突然の動きを検出する場合、効果生成モジュール128は、オプティカルフロー推定モジュール124によって生成されるオプティカルフロー推定における運動ベクトルの平均の大きさと一致する触覚効果に関するパラメータを決定することができる。この例示では、効果生成モジュール128は、より大きな平均の大きさによってより大きな強度触覚パラメータがもたらされるように、運動ベクトルの平均の大きさに対応する強度触覚パラメータを決定することができる。一実施形態によれば、より大きな触覚強度パラメータが、より小さな触覚強度パラメータよりも大きな力で触覚効果を触覚出力デバイスに出力させるように構成される。
【0040】
効果生成モジュール128は、様々なやり方で生成された触覚効果を出力することができる。例えば、効果生成モジュール128は、映像が再生されるときに生成された触覚効果を触覚出力デバイス118に出力することができる。この例示では、生成された触覚効果は、触覚効果が映像と同期されるように触覚出力デバイス118に出力される。例えば、イベント検出モジュール126が突然の動きを検出する場合、効果生成モジュール128は、映像内で突然の動きが発生するのと同時又は実質的に同時に触覚効果が出力されるように、触覚出力デバイス118に触覚効果信号を送信することができる。
【0041】
別の例示として、効果生成モジュール128は、映像内に埋め込まれる触覚トラックを生成することができる。
【0042】
この例示では、効果生成モジュール128は、オプティカルフロー推定モジュール124によって受信された映像に触覚トラックを埋め込むことができる。触覚トラックを含む映像は、メモリ104、記憶装置114及び/又はI/O112に記憶され得る。触覚トラックを含む映像は、ネットワーク110を介して別のコンピュータデバイスに送られ得る。こうした例では、映像が再生されると、オプティカルフロー推定モジュール124によって検出される推定オプティカルフロー、イベント検出モジュール126によって検出される突然の動き、及び効果生成モジュール128によって生成される触覚効果に基づいて、映像における突然の動きに対応する触覚効果が出力される。
【0043】
一部の例では、効果生成モジュール128は、別のファイルに生成された触覚効果を記憶することができるか、さもなければ映像を再エンコードせずに映像に追加され得る。例えば、効果生成モジュール128は、生成された触覚効果を有する触覚トラックを生成して、HAPTファイルフォーマットを有するファイル等の触覚ファイルに触覚トラックを記憶することができる。この例示では、効果生成モジュール128は、メモリ104、記憶装置114、及び/又はI/O112に触覚トラックを記憶することができる。触覚ファイルは、ネットワーク110を介して別のコンピュータデバイスに送られ得る。こうした例では、映像が再生されると、メモリ104、記憶装置114、I/O112から、及び/又はネットワーク110を介してビデオに対応する触覚ファイルが取得され、効果生成モジュール128によって生成された触覚ファイル内で指定された触覚効果であって映像内の突然の動きに対応するものが出力される。この例示では、触覚ファイルにおいて指定された触覚効果は、オプティカルフロー推定モジュール124によって検出された推定オプティカルフロー、イベント検出モジュール126によって検出された突然の動き、及び効果生成モジュール128によって生成された触覚ファイルに対応する。
【0044】
複数の例において、効果生成モジュール128は、図3のブロック340及び/又は図8のブロック820等に関して、本明細書に記載の映像に対応する触覚効果を生成するようにプロセッサ102を構成する。効果生成モジュール128はメモリ104内のプログラムコンポーネントとして図1Cに描かれているが、一部の例では、効果生成モジュール128は、触覚効果を生成するように構成されるハードウェアを含んでもよい。一部の例では、このようなハードウェアは、アナログ・デジタル変換器、プロセッサ、マイクロコントローラ、比較器、増幅器、トランジスタ、触覚出力デバイス及び他のアナログ又はデジタル回路を含んでもよい。
【0045】
次に図2を参照すると、この図は、一実施形態によるビジュアルオドメトリに基づく触覚の自動生成に関する例示的なシステムを示すブロック図である。システム200は、コンピュータシステム236を含む。一部の実施形態では、コンピュータシステム236は、例えば、デジタルカメラ、アクションカメラ、360度カメラ、スマートフォン、タブレット、Eリーダ、ラップトップコンピュータ、デスクトップコンピュータ、携帯型ゲームデバイス、医療デバイス、セットトップボックス(例えば、DVDプレーヤ、DVR、ケーブルテレビボックス)、又はゲームコントローラを含んでもよい。
【0046】
コンピュータシステム236は、バス206を介して他のハードウェアと通信するプロセッサ202を含む。また、コンピュータシステム236は、オプティカルフロー推定モジュール224、イベント検出モジュール226、及び効果生成モジュール228を含むメモリ204も備える。こうしたコンポーネントは、それぞれ図1に描かれたメモリ104、オプティカルフロー推定モジュール124、イベント検出モジュール126、及び効果生成モジュール128と同様に機能するように構成されてもよい。
【0047】
また、コンピュータシステム236は、ネットワークインターフェースデバイス210、I/Oコンポーネント212、記憶装置214、センサ231、及び触覚出力デバイス222も備える。こうしたコンポーネントは、それぞれ図1Cに描かれたネットワークインターフェースデバイス110、I/Oコンポーネント112、記憶装置114、センサ130、及び触覚出力デバイス118と同様に機能するように構成されてもよい。
【0048】
更に、コンピュータシステム236はディスプレイ234も備える。一部の実施形態では、ディスプレイ234は、別個のコンポーネント、例えば、有線又は無線接続を介してプロセッサ202に結合されるリモートモニタ、テレビ、又はプロジェクタを含んでもよい。
【0049】
コンピュータシステム236は、コンピュータデバイス200に通信可能に結合される。一部の実施形態では、コンピュータシステム200は、例えば、デジタルカメラ、アクションカメラ、360度カメラ、スマートフォン、タブレット、Eリーダ、ラップトップコンピュータ、デスクトップコンピュータ、携帯型ゲームデバイス、医療デバイス、セットトップボックス(例えば、DVDプレーヤ、DVR、ケーブルテレビボックス)、又はゲームコントローラを含んでもよい。
【0050】
コンピュータデバイス200は、プロセッサ203、メモリ205、オプティカルフロー推定モジュール224(図示せず)、イベント検出モジュール226(図示せず)、及び効果生成モジュール228(図示せず)を含んでもよい。また、コンピュータデバイス200は、ネットワークインターフェースデバイス245を含んでもよい。プロセッサ203、メモリ205、オプティカルフロー推定モジュール224、イベント検出モジュール226、効果生成モジュール228、及びネットワークインターフェース245は、それぞれ図1Cに描かれているプロセッサ102、メモリ204、オプティカルフロー推定モジュール124、イベント検出モジュール126、効果生成モジュール128、及びネットワークインターフェース110と同様に機能するように構成されてもよい。図2に示された例では、コンピュータデバイス200はネットワークインターフェースデバイス245を備え、且つIEEE802.11、ブルートゥース、又は無線インターフェース(例えば、CDMA、GSM、UMTS、又は他の移動通信ネットワークにアクセスするためのトランシーバ/アンテナ)等の無線インターフェースを介してコンピュータシステム236と通信する。
【0051】
コンピュータデバイス200はI/Oコンポーネント213を含み、これは図1Cに描かれたI/Oコンポーネント112と同様に機能するように構成されてもよい。また、コンピュータデバイス200は、I/Oコンポーネント213と通信するユーザ入力デバイス238も含む。ユーザ入力デバイス238は、コンピュータデバイス200とのユーザ相互作用を可能にするためのデバイスを含む。例えば、ユーザ入力デバイス238は、ジョイスティック、方向パッド、ボタン、スイッチ、スピーカ、マイクロホン、タッチセンサ面、及び/又はデータの入力に使用される他のハードウェアを含んでもよい。
【0052】
コンピュータデバイス200は、1つ以上のセンサ230、前面カメラ234、後面カメラ240、及び触覚出力デバイス218を更に含む。こうしたコンポーネントは、それぞれ図1Cに描かれたセンサ130、前面カメラ134、後面カメラ140及び触覚出力デバイス118と同様に機能するように構成されてもよい。
【0053】
次に図3を参照すると、この図面は一実施形態によるビジュアルオドメトリに基づいて触覚を自動的に生成する例示的な方法300を示す。この例示では、方法300は、映像をキャプチャするために使用されるカメラのモーションを決定して、モーションに基づいて自動的に触覚を生成することができる。一例として、方法300は、カメラの動きに基づいて一人称のモーションが近似され得る主観映像におけるモーションを検出するのに特に有益であり得る。図1A、1B、1C及び/又は図2が参照されるが、本開示による任意の適切なデバイスが様々な実施形態によるビジュアルオドメトリに基づいて触覚効果を自動的に生成するために利用されてもよい。
【0054】
方法300は、映像が受信されるブロック310で開始する。一例では、映像は、後面カメラ140からプロセッサ102によって受信される。映像は、主観映像であってもよい。一部の例では、映像はリアルタイム映像であり、他の例では、映像は、メモリ104、記憶装置114、又はI/Oコンポーネント112に記憶される事前記録映像ファイルであり、プロセッサ102によって受信される。一実施形態では、映像は、コンピュータデバイス200からコンピュータシステム236にストリーミングされる。別の実施形態では、事前記録映像ファイルがコンピュータデバイス200からコンピュータシステム236にダウンロードされる。こうした例では、コンピュータシステム236におけるプロセッサ202は、ネットワーク245及び210を介してコンピュータデバイス200から映像を受信し得る。映像は複数のフレームを有し得る。例えば、映像は、毎秒25,30,48,50,60,72,90,100,120,144,240,又は300フレームのフレームレートを有してもよい。複数の実施形態では、映像は、毎秒24から300の間のフレームを有する。
【0055】
ブロック320において、映像に対応するオプティカルフロー推定が決定される。複数の例において、映像を受信するプロセッサは、オプティカルフロー推定モジュールによってオプティカルフロー推定を生成するように構成される。例えば、図1Cにおけるプロセッサ102は、オプティカルフロー推定モジュール124によってオプティカルフローを推定するように構成され得る。別の例示として、プロセッサ202及び/又はプロセッサ203は、オプティカルフロー推定モジュール224によってオプティカルフローを推定するように構成され得る。
【0056】
本明細書で用いられるオプティカルフロー推定は、映像をキャプチャするカメラと映像内のオブジェクトとの間の相対モーションによって引き起こされる映像のフレーム間の映像におけるオブジェクトの見掛けのモーションのパターンである。例えば、映像は、人物が廊下を歩いて開いたドアに向かっていることを示す主観映像であってもよい。この例示では、開いたドアのドアフレームは、現実には動かない静止オブジェクトである。しかしながら、主観映像では、映像をキャプチャしているカメラが廊下を歩いて開いたドアに向かっている人物と共に動いているので、主観映像の様々なフレーム内で動く。
【0057】
この例示では、映像内のフレーム間のドアフレームの相対モーションは、人物が廊下を歩いて開いたドアに向かうときに映像をキャプチャする場合のカメラの動きに対応する。例えば、オプティカルフロー推定は、映像をキャプチャしたカメラと映像内のドアフレームとの間の相対モーションによって引き起こされる映像のフレーム間の映像におけるドアフレームの見掛けのモーションのパターンを示すように生成され得る。
【0058】
オプティカルフロー推定は、映像内の少なくとも2つのフレームに関して生成され得る。例えば、オプティカルフロー推定は、一実施形態では、受信映像における2つの連続フレームに関して生成される。一部の例では、オプティカルフロー推定は、受信映像における2つの不連続フレームに関して生成される。例えば、推定オプティカルフローを生成する際に使用される1つのフレームは、同様に推定オプティカルフローを生成する際に使用される別のフレームから少なくとも1つのフレームだけ分離されてもよい。一例では、オプティカルフロー推定を生成する際に使用されるフレームは、映像のフレームレートに少なくとも部分的に基づいて受信映像から選択される。例えば、オプティカルフロー推定を生成するために使用される映像内の2つのフレーム間のフレームの数は、映像のフレームレートの約10パーセントであり得る。複数の例において、オプティカルフロー推定は、映像における2つの連続フレームに対して生成される。他の例では、1つ以上のフレームがスキップされてもよく、オプティカルフロー推定は、時間tにおける映像フレームと時間(t+x)における別の映像フレームとを使用して生成され得る。
【0059】
一部の例では、推定オプティカルフローは、映像のフレーム内で検出された特徴に関して生成される。例えば、次に図4を参照すると、この図面は、映像内の2つの連続フレームにおいて検出された特徴の間の推定オプティカルフロー400を示している。この例示では、推定オプティカルフロー400は、オプティカルフロー推定を生成するために使用される映像のフレームにおけるオブジェクトに関して、図4に示された運動ベクトル410、420、430、440等の運動ベクトルを含む。この例示では、推定オプティカルフロー400が生成された後で、運動ベクトルは、映像に関する後続の運動ベクトルを生成するときに焦点を合わせるべき映像のフレーム内の部分エリアを決定するように解析され得る。例えば、図4に示された運動ベクトルは、近似的に同じ方向を指しており且つ近似的に同じ大きさを有する運動ベクトルのクラスタ(例えば、部分エリア450内の運動ベクトル440及び周囲の運動ベクトル)が有る部分エリア450内の特徴ピクセルを見つけるために解析されてもよい。
【0060】
複数の実施形態では、映像フレーム内のノイズを減らすためにオプティカルフローを推定する前に映像フレームにフィルタが適用される。複数の実施形態では、オプティカルフロー推定内のノイズを減らすために生成されたオプティカルフロー推定にフィルタが適用される。
【0061】
一実施形態では、映像のフレーム内の部分エリア内の特徴ピクセルは、類似の方向及び/又は類似の大きさを有する運動ベクトルのクラスタを決定するためにオプティカルフロー推定内の運動ベクトルを解析することにより決定され得る。この例示では、決定された部分エリアは、運動ベクトルのクラスタを取り囲んでいる。例えば、図4では、部分エリア450は、類似の方向及び類似の大きさを有する運動ベクトルのクラスタを取り囲んでいる。この例示では、後続のオプティカルフロー推定は、映像フレームの残りのエリアにおけるピクセルに関して運動ベクトルを生成せずに、部分エリア440内の特徴ピクセルのみに関して運動ベクトルを生成することができる。特徴ピクセルを見つけて、将来のオプティカルフロー推定における映像内の他の映像フレームに関して推定オプティカルフローを生成するための映像内の映像フレームにおける部分エリアを決定することは、映像の部分エリア内の関連の特徴ピクセルに焦点を合わせて、映像の他のエリアにおける他のピクセルを無視することにより、映像をキャプチャしたカメラのモーションを近似する際の処理時間を減らすこと及び/又は精度を改善することができる。
【0062】
他の例では、映像のフレームの部分エリア内の特徴ピクセルは、オプティカルフロー推定を生成する前に決定され得る。例えば、映像内のフレームは、一実施形態によればオプティカルフロー推定を生成する前に映像内の静止オブジェクトの特徴ピクセルを決定するように解析される。この例示では、1つ以上のオブジェクトが、映像を記録するカメラの動きが無ければ映像内で静止したままであると期待される映像の映像フレーム内で検出される。映像の映像フレーム内で検出され得る静止オブジェクトの例は、限定されないが、建物又はその一部(例えば、壁、ドア、窓、調理台、階段等)、景色(例えば、木、森、山、岩、街路等)、使用されていない家具(例えば、テーブル、椅子、ラグマット、写真)、使用されていない車両(例えば、停車中の車、停車中のオートバイ等)、又は別の静止オブジェクトを含む。複数の例では、検出された(複数の)静止オブジェクトを取り囲む1つ以上の部分エリアが決定されて、こうした(複数の)部分エリアに対してのみ推定オプティカルフローが生成される。
【0063】
一部の例では、映像内の静止オブジェクトに対応する特徴ピクセルが決定され得る。一実施形態では、特徴ピクセルは、映像内の静止オブジェクトの角に対応するピクセルである。他の例では、特徴ピクセルは、映像をキャプチャしたカメラの動きが無ければ映像内の(複数の)連続した及び/又は後続のフレーム間で動かないはずである静止オブジェクトに対応する映像フレームにおけるピクセルであり得る。
【0064】
運動ベクトルは、映像フレームの全体エリアに対するピクセルではなく映像の1つ以上のフレーム内の(複数の)部分エリア内で検出される特徴ピクセルに対してのみ生成されてもよい。オプティカルフロー推定を生成する前に映像内の映像フレームにおける部分エリア内で1つ以上の特徴ピクセルを決定することは、映像の部分エリア内の関連する(複数の)特徴ピクセルに焦点を合わせて、映像の他のエリアを無視することにより、映像をキャプチャしたカメラのモーションを近似する際に処理時間を減らすこと及び/又は精度を改善することができる。
【0065】
例えば、再び図4を参照すると、部分エリア450内の特徴ピクセルは、オプティカルフロー400を推定する前に(例えば、運動ベクトル410、420、430、440等の前に)決定される。この例示では、部分エリア450は、静止オブジェクト460を検出するために写真を解析して、次に検出された静止オブジェクト460を取り囲んでいるエリア内の特徴ピクセルを選択することにより決定される。この例示では、運動ベクトルは、部分エリア450内のみの所定のピクセルのみに対して生成される。この例示では、部分エリア450の外の領域のピクセルに対して運動ベクトルは生成されないであろう(例えば、運動ベクトル410、420、430等は生成されないであろう)。
【0066】
次に図5A及び5Bを参照すると、こうした図面のそれぞれは、複数の実施形態による映像における部分エリア内で検出される特徴ピクセルに対するオプティカルフロー推定の各例示を示している。例えば、図5Aは、より大きな映像フレームの部分エリア510を示している。この例示では、部分エリア510は、森を描く映像フレームの部分を取り囲んでいる映像フレーム内のエリアを検出することにより決定される。この例示では、より大きな映像フレーム内で検出された部分エリア内の特徴ピクセルにのみ対応する運動ベクトル520等の運動ベクトルを有するオプティカルフロー推定が生成されてもよい。別の例示として、図5Bは、より大きな映像フレームの部分エリア530を示している。この例示では、部分エリア540は、開いた山の景色を描く映像フレームのエリアを検出して取り囲むことにより決定される。この例示では、より大きな映像フレーム内で検出された部分エリア内の特徴ピクセルにのみ対応する運動ベクトル540等の運動ベクトルを有するオプティカルフロー推定が生成されてもよい。
【0067】
複数の例において、推定オプティカルフローにおける運動ベクトルの数は、映像の映像フレームにおいて検出されたピクセル特徴の数に対応する。例えば、推定オプティカルフローは、映像フレームにおいて検出されたピクセル特徴ごとに1つの運動ベクトルを有してもよい。一部の例では、検出されたピクセル特徴は、映像フレームに示されたオブジェクトの角に対応する。他の例では、検出されたピクセル特徴は、映像フレームに示されたオブジェクトの任意のタイプの視覚特性に対応し得る。一実施形態では、映像をキャプチャしたカメラがオブジェクトに接近している場合、映像はオブジェクトの詳細ビューを有し、このオブジェクトに対応する多くのピクセル特徴が検出される。この実施形態では、推定オプティカルフローは多くの運動ベクトルを有する。他の実施形態では、映像をキャプチャしたカメラがオブジェクトから遠く離れている場合、映像内のオブジェクトは詳細化されず、オブジェクトに対応するより少数のピクセル特徴が検出される。この実施形態では、推定オプティカルフローは、1つの運動ベクトル又はごく少数の運動ベクトルを有し得る。このようにして、一部の実施形態では、推定オプティカルフローにおける運動ベクトルの数及び運動ベクトルの集中が、映像内のオブジェクトの数及び映像をキャプチャしたカメラがこうしたオブジェクトにどれくらい接近していたかに対応する。
【0068】
更に、一部の例では、映像をキャプチャするときにカメラがオブジェクトに接近しており且つオブジェクトが互いに接近している場合、オブジェクトの互いに対する近接性は特徴ピクセルの検出に影響を及ぼさず、映像内のオブジェクトは映像内のオブジェクトの詳細のために互いから区別することができる。他の例では、しかしながら、映像をキャプチャするときにカメラがオブジェクトに接近しておらず(例えば、カメラがオブジェクトから遠く離れており)且つオブジェクトが互いに接近している場合、オブジェクトの近接性はピクセル特徴の検出に影響を及ぼし、映像内のオブジェクトは映像内のオブジェクトの詳細の欠如のために互いから区別することができなくてもよい。この例示では、映像内の2つ以上のオブジェクトが、映像内のオブジェクトの詳細の欠如のために単一のオブジェクトとして検出されてもよく、検出された特徴の数は、オブジェクトに接近していたときにカメラによってオブジェクトがキャプチャされていた場合よりも少なくてもよい。
【0069】
例えば、図5Aに示されたオプティカルフロー推定に対応する映像は、互いに接近している多くの静止オブジェクトが有る森の中で記録されたものであり、映像を記録したカメラはそれが記録された森に接近していた。しかしながら、図5Bに示されたオプティカルフロー推定に対応する映像は山の上で記録されたものであり、バックグラウンドには木等の多くの静止オブジェクトが互いに接近しているが、映像を記録したカメラは映像が記録されたときに森から遠く離れていた。この例示では、図5Bに示された部分エリア530に関するオプティカルフロー推定に対応する映像をキャプチャしたカメラよりも、図5Aに示された部分エリア510に関するオプティカルフロー推定に対応する映像をキャプチャしたときにカメラがオブジェクトに接近していたので、図5Bにおけるオプティカルフロー推定内の運動ベクトル540よりも図5Aにおけるオプティカルフロー推定内の運動ベクトル520はより高度に集中している。
【0070】
一部の実施形態では、特徴ピクセルを検出するように解析される部分エリアのサイズ及び/又は場所はユーザによって決定される。複数の実施形態では、ユーザは、映像内の特定の形状(例えば、矩形、円形、三角形、ユーザが描いた自由な形状、又は他の形状)に特徴検出を制限し、特定の形状が覆う映像内の場所を特定してもよい。例えば、ユーザは、映像フレームのピクセル(i,j)において開始し且つXピクセルの幅及びYピクセルの高さを有する矩形内で特徴が検出されるべきであることを指定してもよい。
【0071】
他の実施形態では、部分エリアのサイズ及び/又は場所が動的に決定される。一部の実施形態では、部分エリアのサイズ及び場所は、運動ベクトルの集中に基づいて動的に指定されるか又は更新され得る。例えば、1つの映像フレームにおいて、特徴がフレーム全体の中で検出されてもよく、次にその映像フレーム内の部分エリアが決定されて後続の映像フレームに対して使用されてもよい。次に、映像フレーム1内のピクセル特徴を決定するために映像フレーム1の全体が解析されると、映像フレーム1に関して決定されたピクセル特徴の一部又は全てを取り囲んでいる部分エリアが、後続の映像フレームにおいてピクセル特徴を決定するために使用されてもよい。一部の例では、部分エリアを決定するために映像フレーム全体を解析し且つ後続の映像フレームにおいてこの部分エリアを使用する処理が多くの要求の後で繰り返される。例えば、部分エリアを決定するために映像フレーム1の全体が解析され且つこの部分エリアが映像フレーム2から50に対してピクセル特徴を識別するために使用される場合、映像フレーム51の全体は、映像フレーム52から100に対するピクセル特徴を識別するために使用される別の部分エリアを決定するため等に解析されてもよい。
【0072】
一部の例では、ユーザがピクセル特徴を決定するために初期部分エリアを指定する場合、1つの映像フレームにおいて、初期の部分エリア内に特徴が検出されてもよく、検出された特徴を取り囲んでいる初期の部分エリア内の別の部分エリアが決定されてもよい。この例示では、動的に決定される他の部分エリアが、後続の映像フレーム内でピクセル特徴を検出するために使用される。
【0073】
一実施形態では、決定された部分エリアは、映像内の上端中央エリアに対応する。例えば、図4に示された部分エリア450は、映像内の上端中央エリアに対応する。様々な例では、決定された部分エリアは、映像内の上端、中央又は下端エリアに対応する。一部の例では、決定された部分エリアは、映像内の左、中央、又は右エリアに対応する。一部の実施形態では、部分エリアは、映像内の上端、中央又は下端の水平エリア及び左、中央又は右の垂直エリアに対応する。
【0074】
ブロック320でオプティカルフローを推定した後で、ブロック330において、映像内の突然の動きが決定される。複数の例において、プロセッサは、イベント検出モジュールによって、オプティカルフロー推定モジュールによって生成されるオプティカルフロー推定に少なくとも部分的に基づいて、映像内の1つ以上の突然の動きを決定するように構成される。例えば、図1Cにおけるプロセッサ102は、イベント検出モジュール126によって、映像内の突然の動きを決定するように構成され得る。別の例示として、プロセッサ202及び/又はプロセッサ203は、イベント検出モジュール226によって、映像内の突然の動きを決定するように構成され得る。
【0075】
複数の例において、映像内の突然の動きは、生成されたオプティカルフロー推定における運動ベクトルに基づいて決定される。一部の実施形態では、部分エリアの外のピクセルに対応する運動ベクトルが有ったとしても、映像内の突然の動きは、映像の部分エリア内の特徴ピクセルに対応する運動ベクトルのみ(これはブロック320で既に決定されていてもよく又はブロック320に関して先に記載されたようにブロック330で決定され得る)を解析することにより決定される。複数の実施形態では、オプティカルフロー推定において最大の大きさを有する1つ以上の運動ベクトル及び/又は最小の大きさを有する1つ以上の運動ベクトルが、運動ベクトルの平均の大きさを決定する際に除去されるか又は無視される。オプティカルフロー推定において最大及び最小の大きさを有する運動ベクトルはノイズに由来することが多いので、運動ベクトルの平均の大きさを決定するときにこのような運動ベクトルを除去又は無視することは、突然の動きを検出する際のより高い精度及び/又は突然の動きを適切な触覚効果と適合させる際のより高い精度を提供することができる。
【0076】
一例では、映像内の突然の動きは、運動ベクトルのクラスタが同じ又は実質的に同じ方向を指すかどうかを決定するために、推定オプティカルフローにおける運動ベクトルを解析することで決定される。例えば、図4に示されたオプティカルフロー推定400は、北の方向に面し且つ映像内の動きの中で突然の動きとして検出される部分エリア450内に運動ベクトルのクラスタを有する。一部の例では、部分エリア450内の運動ベクトルのクラスタは、部分エリア450内のこうした運動ベクトルのみを解析することにより決定され得る。この例示では、部分エリア450は、ブロック320の一部として決定されてもよく、又はブロック330の一部として決定されてもよい。別の例示として、運動ベクトル410、420、430、440等の運動ベクトルは、ベクトルが同じ方向を向く運動ベクトルのクラスタの一部であるかどうかを決定するために使用され得る。例えば、図4に示されている運動ベクトルは、運動ベクトル440が同じ又は実質的に同じ北の方向を向いており、そのため映像内の突然の動きとして検出される(図4の部分エリア450に示された)運動ベクトルのクラスタの一部であることを決定するために解析され得る。
【0077】
複数の実施形態では、突然の動きは、推定オプティカルフローにおける運動ベクトルによって描かれた映像内の連続した又は近接するフレーム間における同じ方向の動き(例えば、垂直方向の動き、水平方向の動き、又は別の特定方向の動き)である。一部の実施形態では、オプティカルフロー推定における少なくとも所定の運動ベクトルの平均の大きさは、突然の動きを有するためには大きさ閾値を超えていなければならない。
【0078】
一部の例では、オプティカルフロー推定における垂直又は実質的に垂直の運動ベクトルのクラスタは、映像を記録するときのカメラの垂直の動きに対応する映像内の突然の垂直の動きに対応する。例えば、図6A及び6Bは、実質的に垂直であって、映像を記録するときのカメラの動きと対応する映像内の突然の垂直の動きを示す運動ベクトル(例えば、610,620,630,660,670,680等)を有する各オプティカルフロー推定(600、650)をそれぞれ示している。
【0079】
他の例では、オプティカルフロー推定における水平又は実質的に水平の運動ベクトルのクラスタは、映像を記録するときのカメラの水平の動きに対応する映像内の突然の水平の動きに対応する。一部の例では、オプティカルフロー推定における同じ方向又は実質的に同じ方向を向く運動ベクトルのクラスタは、映像を記録するときの同じ方向又は実質的に同じ方向のカメラの動きに対応する同じ方向又は実質的に同じ方向の映像内の突然の動きに対応する。一部の例では、同じ方向を指す映像に対応するオプティカルフロー推定における運動ベクトルは、映像を記録したカメラの移動速度及び/又は移動の方向に対応する。
【0080】
ブロック330で突然の動きが決定された後で、方法300はブロック340に進む。ブロック340では、1つ以上の触覚効果が生成される。複数の例において、プロセッサは、効果生成モジュールによって、イベント検出モジュールによって決定された映像内の1つ以上の突然の動きに対応する1つ以上の触覚効果を生成するように構成される。例えば、図1Cにおけるプロセッサ102は、効果生成モジュール128によって、映像内で決定された突然の動きに対応する触覚効果を生成するように構成され得る。別の例示として、プロセッサ202及び/又はプロセッサ203は、効果生成モジュール228によって、映像内の突然の動きに対応する触覚効果を生成するように構成され得る。
【0081】
複数の例において、生成された触覚効果は、推定オプティカルフローにおける運動ベクトルに対応する強度パラメータを有する。例えば、生成された触覚効果は、ブロック330で決定された突然の動きと対応するオプティカルフロー推定のエリアにおける運動ベクトルの平均の大きさに対応する強度パラメータを有し得る。別の例示として、生成された触覚効果は、ブロック320及び/又はブロック330に関して先に検討されたように)決定された部分エリア内の運動ベクトルの平均の大きさに対応する強度パラメータを有し得る。こうした例において、より大きな決定された平均の大きさは、より大きな強度パラメータに対応してもよく、より大きな強度パラメータは、より強い触覚効果に対応し得る。一部の例では、決定された部分エリアにおける運動ベクトルの方向及び大きさは、映像を記録したカメラの方向及び速さに対応し且つ実質的に類似しているか又は等しい。
【0082】
次に図7A及び7Bを参照すると、こうした図面は、映像内の突然の動きに対応して生成された触覚効果の例を示す。図7Aに示された生成された触覚効果と対応する映像において、アクションカメラは、砂利道をマウンテンバイクで走っている人物のヘルメットに取り付けられている。その人物が砂利道をマウンテンバイクで走ると、人物の体、従ってアクションカメラが垂直に動く。本明細書で検討されたように、オプティカルフロー推定モジュール(例えば、124、224)は、アクションカメラによって記録された映像に関する運動ベクトルを有するオプティカルフロー推定を生成してもよく、イベント検出モジュール(例えば、126、226)は、生成されたオプティカルフロー推定における垂直な又は実質的に垂直な運動ベクトルに基づいて映像内の突然の動きを決定することができる。例えば、イベント検出モジュール(例えば、126、226)は、人物が砂利道の粗い部分を走っていること、ジャンプした後に地面にぶつかること等と対応して生成されたオプティカルフロー推定における垂直な又は実質的に垂直な運動ベクトルに基づいて突然の動きを決定することができる。こうした例において、映像を記録するカメラは、こうした活動が起こると垂直方向に動き、生成されたオプティカルフロー推定における運動ベクトルの少なくとも一部がこうした動きに対応する。
【0083】
また、こうした動きに対応する触覚効果は、検出された突然の動きに基づいて生成された触覚効果を示す図7A及び7Bに示されるように生成され得る。上記のように、図7Aは、人物が砂利道でマウンテンバイクに乗っている映像に関して生成された触覚効果を示す。図7Bは、人物が石段でマウンテンバイクに乗っている映像に関して生成された触覚効果を示す。複数の実施形態では、生成された触覚効果は、映像が記録されたときのカメラの動きに対応する。こうした例において、カメラの動きは、推定オプティカルフローにおける運動ベクトルに基づいて近似され得る。例えば、オプティカルフロー推定における1つ以上の運動ベクトルの大きさは、映像がキャプチャされたときのカメラの決定された突然の動きと対応し得る。別の例示として、(上記のように)決定された部分エリアにおける1つ以上の運動ベクトルの大きさは、映像が記録されたときのカメラの動きと対応してもよい。
【0084】
一部の実施形態では、1つ以上の生成された触覚効果は、生成された触覚効果を映像に統合するように映像を再エンコードすることにより映像内に記憶され得る。他の実施形態では、1つ以上の生成された触覚効果は、別のファイルに保存されてもよく、さもなければ映像を再エンコードせずに映像に追加され得る。例えば、生成された触覚効果を有する触覚トラックが生成されて、受信された映像とは別の触覚ファイルとして記憶され得る。この例示では、触覚ファイルは映像が再生されるときに取得されてもよく、映像内で検出された突然の動きと対応する触覚効果における複数の触覚効果が出力され得る。映像が再生されるときに出力される触覚効果の強度は、映像内の突然の動きに対応して生成されたオプティカルフロー推定における運動ベクトルに基づいて近似された、映像を記録したカメラの方向及び/又は速度における動きと対応し得る。
【0085】
一部の実施形態では、1つ以上の生成された触覚効果が、リアルタイムで1つ以上の触覚出力デバイスに出力され得る。例えば、図2を再び参照すると、プロセッサ202及び/又はプロセッサ203によって生成される触覚効果を触覚出力デバイスに出力させるように構成される触覚出力信号が触覚出力デバイス222に送られ得る。この例示では、生成された触覚効果にも対応し、ディスプレイ234に表示される、決定された突然の動きと対応する映像フレームと対応する時間に生成された触覚効果が、触覚出力デバイス222によって出力されるように触覚出力デバイス222に送られる。従って、複数の実施形態では、オプティカルフロー推定が生成され、突然の動きが検出され、触覚効果がリアルタイムで生成され且つ出力され、それによってカメラの動きにおける突然の動きに対応する触覚効果を有さない映像が、映像が再生されるときにカメラの動きにおける突然の動きに対応する時間に触覚効果が出力されるように触覚的に強化され得る。
【0086】
図3に示された方法300は単一の映像フィードに関して先に記載されているが、複数の映像フィードと共に方法300を使用することも本開示の範囲内である。例えば、複数の実施形態では、(並列に撮影するとき等)複数のカメラからの映像フィードが使用され得る。一部の実施形態では、映像フィードに対応する推定オプティカルフローに関する異なる運動ベクトルが、データ融合技術(例えば、カルマンフィルタ)等を使用することにより結合され得る。例えば、第1の映像フィードにおける第1のフレーム及び第2のフレームに対応する推定オプティカルフローに関する運動ベクトルが、第2の映像フィードにおける第1のフレーム及び第2のフレームに対応する推定オプティカルフローに関する運動ベクトルと結合され得る。一部の例では、複数の映像フィードからの推定オプティカルフローに関する運動ベクトルを結合することは、より正確な動きの推定をもたらす。
【0087】
一部の実施形態では、(複数の)推定オプティカルフローに関する運動ベクトルが、より正確な動きの推定を得るために映像を記録したカメラに組み込まれているセンサからの測定値と結合される。例えば、映像を記録するカメラに組み込まれている1つ以上のセンサ(例えば、(複数の)加速度計、(複数の)ジャイロスコープ、(複数の)慣性測定装置)からの測定値が、映像に関する動きの推定をより正確に提供するために映像に関する(複数の)推定オプティカルフローに関する運動ベクトルと組み合わされ得る。一部の例では、より正確な動きの推定が、映像フィードを記録するカメラにおけるセンサからの測定値と共に複数の映像フィードを使用することにより行われ得る。
【0088】
次に図8を参照すると、図8は一実施形態によるビジュアルオドメトリに基づいて触覚を自動的に生成する例示的な方法800を示す。図1A、1B、1C及び/又は図2が参照されるが、本開示による任意の適切なデバイスが様々な実施形態によるビジュアルオドメトリに基づいて触覚効果を自動的に生成するために利用されてもよい。
【0089】
方法800はブロック810で開始し、映像が受信される。例えば、映像は、図3のブロック310等に関して本明細書に記載の1つ以上のやり方で受信され得る。
【0090】
ブロック820において、連続フレーム間の突然の動きが検出される。例えば、突然の動きは、図3のブロック320及び/又は330に関して先に記載されたように、突然の動きを検出するために受信した映像に対するオプティカルフロー推定を生成することにより検出され得る。複数の実施形態では、突然の動きは、映像内の連続フレーム間の拡大、縮小、回転、衝突、揺動等のモーションである。
【0091】
一部の例では、推定オプティカルフローは、受信した圧縮映像内の基準フレームに基づいて生成される。例えば、オプティカルフロー推定は、圧縮映像における基準フレーム(例えば、イントラコード化ピクチャフレーム、「Iフレーム」とも呼ばれる)と圧縮映像における後続の隣接フレーム(例えば、予測ピクチャフレーム、「Pフレーム」とも呼ばれる)との間で生成され得る。一部の例では、オプティカルフロー推定は、圧縮映像における基準フレームと後続の非隣接フレーム(例えば、双方向予測ピクチャフレーム、「Bフレーム」とも呼ばれる)との間で生成され得る。一例では、オプティカルフロー推定は、PフレームとBフレームとの間で生成される。一部の例では、オプティカルフロー推定は、複数のフレームに関して生成され得る。例えば、オプティカルフロー推定は、IフレームとPフレームとBフレームとの間で生成され得る。オプティカルフロー推定は、複数の基準フレーム、予測ピクチャフレーム、及び/又は双方向ピクチャフレームに対して生成されてもよい。上記のように、映像内の映像フレーム間の(複数の)推定オプティカルフローは、映像内の突然の動きの発生を決定するように解析される1つ以上の運動ベクトルを有し得る。
【0092】
フレーム間の突然の動きの検出は、Pフレーム及び/又はBフレーム等の1つ以上の予測フレームに基づいて決定され得る。一部の例では、画像データ又は運動ベクトル変位、又は両方を含む。多くの場合、予測フレームは、Iフレーム等の非予測フレームよりもエンコードのために少ないビットを必要とする。こうした例において、圧縮映像における突然の動きは、予測フレームにおいて、画像データ、運動ベクトル変位、又は両方に基づいて検出され得る。一部の例では、対応するIフレームからの画像データは、映像内で突然の動きが発生したかどうかを決定するために解析される必要がない。例えば、(複数の)予測フレームにおける全ての又は突然の大多数のピクセルに関する動きが有ることを画像データ及び/又は運動ベクトル変位が示す場合、突然の動きはこうした(複数の)フレームに対して検出され得る。この例示では、突然の動きは、映像を記録したカメラの動きに対応する。別の例示として、動いているオブジェクトが有ること及びオブジェクトを取り囲んでいる(複数の)フレームにおけるピクセルも動いていることを画像データ及び/又は運動ベクトル変位が示す場合、空間内を動いているオブジェクトに対応するこうした(複数の)フレームに対して突然の動きが検出され得る。動いているオブジェクトが有ること及びオブジェクトを取り囲んでいる(複数の)フレームにおけるピクセルが動いていないことを画像データ及び/又は運動ベクトル変位が示す場合、さもなければ静止しているシーン内を動いているオブジェクトに対応するこうした(複数の)フレームに対して突然の動きが検出され得る。例えば、それは、さもなければ何も無い道路に沿って走っている車である突然の動きを示してもよい。
【0093】
ブロック830において、受信した映像において検出された突然の動きに対応するパラメータが決定される。例えば、検出された突然の動きに対応するパラメータは、図3のブロック340に関して先に記載されたように、受信映像に対して生成されたオプティカルフロー推定に基づいて決定され得る。
【0094】
図8のブロック820に関して先に検討されたように、オプティカルフロー推定は、受信映像における予測フレームに少なくとも部分的に基づいて生成され得る。こうした例において、検出された突然の動きに対応するパラメータは、予測フレームにおける画像データ又は運動ベクトル変位、又は両方等の予測フレームにおける情報に基づき得る。例えば、触覚効果に関する強度パラメータは、Pフレーム及び/又はBフレーム等の1つ以上の予測フレームにおける運動ベクトル変位と相関していてもよい。この例示では、より大きな運動ベクトル変位によって、より強い触覚効果を出力させるより大きな強度パラメータが決定される。より強い触覚効果は、(複数の)予測フレームにおける運動ベクトル変位によって決定される映像のモーションにおける突然の動きと相関する。
【0095】
ブロック840において、突然の動きに対応する触覚効果が生成される。一部の例では、触覚効果は、突然の動きの決定されたパラメータに少なくとも部分的に基づいている。例えば、触覚効果の強度は、突然の動きのパラメータに基づいていてもよい。この例示では、突然の動きのより大きなパラメータが、対応するより大きな強度を有する生成された触覚効果をもたらす。例えば、触覚効果は、映像内の対応する突然の動きが表示されるときに生成された触覚効果を触覚出力デバイスに出力させるように生成されて触覚出力デバイスに出力され得る。この例示では、生成された触覚効果は、検出された突然の動きに対応する推定オプティカルフローにおける1つ以上の運動ベクトルに対応する強度パラメータを有し得る。一部の例では、触覚効果が生成されて触覚トラックに記憶される。触覚効果は、図3のブロック340等に関して本明細書に記載の1つ以上のやり方で生成されて出力され得る。
【0096】
本明細書に記載のデバイス、システム及び方法の一部の例は様々な機械で実行するソフトウェアに関して記載されているが、方法及びシステムは、例えば、様々な方法を特別に実行するためのフィールド・プログラマブル・ゲート・アレイ(field−programmable gate array;FPGA)等の特別に構成されたハードウェアとして実装されてもよい。例えば、例示は、デジタル電子回路で、又はコンピュータハードウェア、ファームウェア、ソフトウェア若しくはこれらの組み合わせで実装され得る。一例では、デバイスは、1つ又は複数のプロセッサを含んでもよい。プロセッサは、プロセッサに結合されるランダム・アクセス・メモリ(random access memory;RAM)等のコンピュータ可読媒体を備える。プロセッサは、メモリに記憶されたコンピュータ実行可能プログラム命令を実行する。例えば、画像を編集するための1つ以上のコンピュータプログラムを実行する。このようなプロセッサは、マイクロプロセッサ、デジタル・シグナル・プロセッサ(digital signal processor;DSP)、特定用途向け集積回路(application−specific integrated circuit;ASIC)、フィールド・プログラマブル・ゲート・アレイ(field programmable gate array;FPGA)、及び状態機械を含む。このようなプロセッサは、PLC、プログラマブル割り込みコントローラ(programmable interrupt controller;PIC)、プログラマブル論理デバイス(programmable logic device;PLD)、プログラマブルROM(programmable read−only memory;PROM)、電気的プログラマブルROM(electronically programmable read−only memory;EPROM又はEEPROM)、又は他の類似のデバイス等のプログラマブル電子デバイスを更に備えてもよい。
【0097】
このようなプロセッサは、媒体、例えば、プロセッサによって実行されると、プロセッサによって遂行又は支援される本明細書に記載のステップをプロセッサに実行させることができる命令を記憶し得るコンピュータ可読記憶媒体を備え又はこれと通信してもよい。コンピュータ可読媒体の例は、限定されないが、プロセッサ、例えばウェブサーバのプロセッサにコンピュータ可読命令を提供することができる電子、光学、磁気又は他の記憶デバイスを含んでもよい。媒体の他の例は、限定されないが、フロッピーディスク、CD−ROM、磁気ディスク、メモリチップ、ROM、RAM、ASIC、構成プロセッサ、全ての光学媒体、全ての磁気テープ若しくは他の磁気媒体、又はコンピュータプロセッサが読み取り可能な任意の他の媒体を含む。記載されたプロセッサ及び処理は、1つ以上の構造内に有ってもよく、1つ以上の構造を通じて分散されてもよい。プロセッサは、本明細書に記載の1つ以上の方法(又は方法の一部)を実行するためのコードを備えてもよい。
【0098】
一部の例の上記の説明は、例示及び説明のためにのみ示されているのであって、網羅的であること又は開示された厳密な形態に本開示を限定することは意図されていない。その多くの修正及び適合が、本開示の精神及び範囲から逸脱することなく当業者には明らかであろう。
【0099】
本明細書における一例又は実装への言及は、特定の機能、構造、操作、又は例と関連して記載される他の特徴が本開示の少なくとも1つの実装に含まれ得ることを意味する。本開示は、このように記載された特定の例又は実装に制限されない。明細書の様々な場所における「一例では」又は「ある例において」、「一実装では」又は「ある実装において」という句又はこれらの変形の出現は、必ずしも同じ例又は実装への言及ではない。任意の特定の機能、構造、操作、又は一例若しくは実装に関連する本明細書に記載の他の特徴は、他の機能、構造、操作、又は任意の他の例若しくは実装に関して記載された他の特徴と組み合わされてもよい。
図1A
図1B
図1C
図2
図3
図4
図5A
図5B
図6
図7A
図7B
図8
【外国語明細書】
2018109960000001.pdf