(58)【調査した分野】(Int.Cl.,DB名)
仮想現実機器であって、第1のアプリケーション、カメラフレームワークレイヤ、カメラハードウェア抽象化レイヤ、第2のアプリケーション、及び制御レイヤを含み、請求項1又は2に記載の方法を実行するように構成される、仮想現実機器。
【発明を実施するための形態】
【0012】
図1は、本開示の実施例による仮想現実機器(virtual reality equipment)100を示す。仮想現実機器100は、オペレーティングシステム(OS)103上で動作するアプリケーション101及びアプリケーション102を含む。仮想現実機器100は、物理カメラを含む。この実施例において、物理カメラは、現実シーン画像を捕捉するための少なくとも1つのフロントカメラ110と少なくとも1つのリアカメラ120とを含む。オペレーティングシステム103は、制御レイヤ104、カメラフレームワークレイヤ105、及びカメラハードウェア抽象化レイヤ106を含む。
【0013】
アプリケーション101は、Whatsapp(登録商標)、Facebook(登録商標)、Skype(登録商標)等などのマルチメディアアプリケーションであり得る。アプリケーション102は、仮想現実世界において仮想カメラにより捕捉された仮想現実データを提供する。オペレーティングシステム113は、コンピュータハードウェア及びソフトウェアリソースを管理し、コンピュータプログラムに共通サービスを提供するシステムソフトウェアである。制御レイヤ104、カメラフレームワークレイヤ105、及びカメラハードウェア抽象化レイヤ106は、オペレーティングシステム113に組み込まれたプログラムコードであり、必要とされたときに起動できる。
【0014】
詳細には、カメラフレームワークレイヤ105は、カメラ制御のために命令をカメラハードウェア抽象化レイヤ106に提供できる。カメラハードウェア抽象化レイヤ106はハードウェアを制御し、命令に応答して複数のカメラ110乃至120を動作させることができる。制御レイヤ104は、アプリケーション101及びアプリケーション102にインターフェースを提供できる。さらに、制御レイヤ104は、アプリケーション101及びアプリケーション102に対してデータを伝送又は収集するようにカメラハードウェア抽象化レイヤ106を制御できる。制御レイヤ104は、オペレーティングシステム103のカーネル内にあり得る。
【0015】
制御レイヤ104により、画像置換機能が実現できる。例えば、制御レイヤ104は、アプリケーション101から要求された画像関連データとして、物理カメラからの現実シーンデータの代わりにアプリケーション102から仮想現実データを収集するようにカメラハードウェア抽象化レイヤ106を制御できる。この場合、仮想現実データは、仮想世界においてユーザのアバターを捕捉した写真であり得る。
【0016】
さらに、制御レイヤ104により、画像重ね合わせ(superimposition)機能が実現できる。例えば、制御レイヤ104は、アプリケーション102から仮想現実データを、及び物理カメラから現実シーンデータを収集するようにカメラハードウェア抽象化レイヤ106を制御できる。次いで、アプリケーション101は、仮想現実データのオブジェクトを現実シーンデータの環境に重ね合わせて画像関連データを生成でき、あるいは、アプリケーション101は、現実シーンデータのオブジェクトを仮想現実データの環境に重ね合わせて画像関連データを生成できる。
【0017】
図2は、仮想現実機器100に係る方法200のフローチャートである。方法200は以下のステップを含む。
【0018】
S202:アプリケーション101が、画像関連データの要求を送信する。
【0019】
S204:カメラフレームワークレイヤ105が、アプリケーション101からの要求に応答してカメラ制御の命令を送信する。
【0020】
S206:カメラハードウェア抽象化レイヤ106が、カメラフレームワークレイヤ105からの命令に応答する。
【0021】
S208:制御レイヤ104が、画像関連データのために第1の制御コマンドをアプリケーション102に送信するようにカメラハードウェア抽象化レイヤ106を制御する。
【0022】
S210:アプリケーション102が、画像関連データとして仮想世界において仮想カメラにより捕捉された仮想現実データを提供する。
【0023】
S212:制御レイヤ104が、画像関連データのために第2の制御コマンドを仮想現実機器100の物理カメラに送信するようにカメラハードウェア抽象化レイヤ106を制御する。
【0024】
S214:仮想現実機器100の物理カメラが、画像関連データとして現実環境において物理カメラにより捕捉された現実シーンデータを提供する。
【0025】
S216:アプリケーション101が、カメラハードウェア抽象化レイヤ106から仮想現実データ及び/又は現実シーンデータを受信する。
【0026】
ステップS202において、アプリケーション101は、画像関連データの要求を送信する。一実施例において、要求の送信は、1つ以上のユーザ操作によりトリガされる。画像関連データは、画像データ、ビデオデータ、カメラポーズ(pose)データ、及びカメラ時間データのうち、少なくとも1つを含むことができ、カメラポーズデータ及びカメラ時間データは、写真撮影のポーズ及び時間を記録する。
【0027】
ステップS204において、カメラフレームワークレイヤ105は、アプリケーション101からの要求に応答してカメラ制御の命令を送信する。次いで、ステップS206において、カメラハードウェア抽象化レイヤ106は、カメラフレームワークレイヤ105からの命令に応答する。
【0028】
ステップS208及びS212において、方法200は、制御レイヤ104の機能を開示している。すなわち、制御レイヤ104は、カメラハードウェア抽象化レイヤ106の制御を行うことができ、それにより、カメラハードウェア抽象化レイヤ106は、画像関連データを獲得するために制御コマンドを少なくとも1つのターゲットデータリソースに送信するように制御される。
【0029】
この実施例において、ターゲットデータリソースの数は2であり、すなわち、制御レイヤ104は、2つの制御コマンドをアプリケーション102及び物理カメラに送信するようにカメラハードウェア抽象化レイヤ106を制御する。本開示はこのことに限定されない。例えば、制御レイヤ104は、1つのみの制御コマンドをアプリケーション102又は物理カメラに送信するようにカメラハードウェア抽象化レイヤ106を制御できる。この場合、ステップS208、S210、又はステップS212、S214が省略されることになり、ステップS21
6において、アプリケーション101は、カメラハードウェア抽象化レイヤ106から仮想現実データと現実シーンデータとのうち1つのみを受信する。制御レイヤ104が1つのみの制御コマンドをアプリケーション102に送信する場合、アプリケーション102が仮想現実データのみ受信及び表示するため置換機能が実現され、それにより、現実シーンデータは仮想現実データで置換される。
【0030】
ステップS210及びS214において、アプリケーション102及び物理カメラは、画像関連データとして仮想現実データ及び現実シーンデータを提供し、仮想現実データは仮想世界において仮想カメラにより捕捉され、現実シーンデータは現実環境において物理カメラにより捕捉される。同様に、仮想現実データ及び現実シーンデータの双方が、画像データ、ビデオデータ、カメラ位置データ、及びカメラ時間データのうち、少なくとも1つを含むことができ、仮想現実データのカメラポーズデータ及びカメラ時間データは、仮想世界における仮想カメラによる写真撮影のポーズ及び時間を記録する。
【0031】
ステップS216において、アプリケーション101は、カメラハードウェア抽象化レイヤ106から仮想現実データ及び/又は現実シーンデータを受信する。したがって、仮想現実データ及び現実シーンデータの双方を使用したとき、重ね合わせ機能が実行できる。
【0032】
図3は、本開示の実施例による2つの異なるモバイル装置の表示画面を示す。2つの異なるモバイル装置は同じアプリケーションを起動し、互いに通信する。
図3の上半分に示される表示画面は、第1のユーザの仮想現実データ及び/又は現実シーンデータにより生成された画像を表示する。
図3の下半分に示されるもう1つの表示画面は、第2のユーザの仮想現実データ及び/又は現実シーンデータにより生成された画像を表示する。
【0033】
図3において、表示画面の各々は、ピクチャ・イン・ピクチャ(picture-in-picture)モードで画像を示す。画像のメインピクチャ302、306は他の人を示し、画像のさらなるピクチャ304、308はユーザ自身を示す。メインピクチャ302、306、及びさらなるピクチャ304、308を含む画像は、仮想現実データ及び/又は現実シーンデータにより生成できる。
【0034】
この実施例において、2つのモバイル装置は同じブランドの又は異なるブランドの仮想現実機器であり、本開示はこのことに限定されない。例えば、モバイル装置のうち1つが仮想現実機器でよく、モバイル装置のうち別の1つが仮想現実機器でない。例えば、モバイル装置のうち別の1つはスマートフォン、ノートブック、タブレット、又はパーソナルコンピュータである。
【0035】
図4は、本開示の実施例による仮想現実機器100及びモバイル装置406である。仮想現実機器100及びモバイル装置406は同じマルチメディアアプリケーション408を起動し、互いに通信する。モバイル装置406は仮想現実機器でもそうでなくてもよい。
【0036】
仮想現実機器100及びモバイル装置406が同じマルチメディアアプリケーション408を起動し、互いに通信するため、モバイル装置406が仮想現実機器でないとき、制御レイヤ104を有する仮想現実機器100はモバイル装置406に対して仮想現実データを共有できる。したがって、モバイル装置406のユーザが仮想現実世界を体験できるということが可能である。例えば、仮想現実データはリアルタイムでモバイル装置406に伝送でき、仮想現実データにより生成された画像は、仮想現実世界を体験するモバイル装置406のユーザに対して360度視野を示す。
【0037】
図5は、画像500を表示するモバイル装置406の表示画面を示す。
図3の画像と異なり、
図5の画像500はピクチャ・イン・ピクチャモードで示されていない。
図5の画像500は2つのピクチャ504、506を別個に示し、ピクチャ504、506の双方が仮想現実データにより生成される。他の実施例において、複数ピクチャのうちのピクチャが仮想現実データにより生成され、複数ピクチャのうち別のピクチャが現実シーンデータにより生成される。
図3の画像及び
図5の画像500の双方が、仮想現実データ及び/又は現実シーンデータが提供されたとき、仮想現実機器100及びモバイル装置406により表示できる。
【0038】
図6は、本開示の実施例による第1のモバイル装置600及び第2のモバイル装置620を示す。第1のモバイル装置600は仮想現実機器である。第2のモバイル装置は仮想現実機器でない。
【0039】
図7A及び7Bは、本開示の実施例による
図6に係る方法700のフローチャートである。方法700は以下のステップを含む。
【0040】
S702:第1のモバイル装置600及び第2のモバイル装置620で起動された第1のアプリケーション602が、第1のモバイル装置600と第2のモバイル装置620との間の通信チャネルを構築し、画像関連データの要求を送信する。
【0041】
S704:第1のモバイル装置600のカメラフレームワークレイヤ606が、第1のアプリケーション602からの要求に応答してカメラ制御の命令を送信する。
【0042】
S706:第1のモバイル装置600のカメラハードウェア抽象化レイヤ608が、第1のモバイル装置600のカメラフレームワークレイヤ606からの命令に応答する。
【0043】
S708:第1のモバイル装置600の制御レイヤ610が、画像関連データのために制御コマンドを第2のアプリケーション604に送信するように第1のモバイル装置600のカメラハードウェア抽象化レイヤ608を制御する。
【0044】
S710:第2のアプリケーション604が、画像関連データとして仮想現実世界において仮想カメラにより捕捉された仮想現実データを提供する。
【0045】
S712:第2のモバイル装置620のカメラフレームワークレイヤ626が、第1のアプリケーション602からの要求に応答してカメラ制御の命令を送信する。
【0046】
S714:第2のモバイル装置620のカメラハードウェア抽象化レイヤ628が、第2のモバイル装置620のカメラフレームワークレイヤ626からの命令に応答し、制御コマンドを第2のモバイル装置620の物理カメラ632に送信する。
【0047】
S716:第2のモバイル装置620の物理カメラ632が、画像関連データとして物理カメラ632により捕捉された現実シーンデータを提供する。
【0048】
S718:第1のアプリケーション602が、第1のモバイル装置600のカメラハードウェア抽象化レイヤ608を介して第2のアプリケーション604から仮想現実データを、及び/又は第2のモバイル装置620のカメラハードウェア抽象化レイヤ628を介して第2のモバイル装置620の物理カメラ632から現実シーンデータを受信する。
【0049】
S720:第1のモバイル装置600及び第2のモバイル装置620のうち少なくとも1つが、仮想現実データ及び/又は現実シーンデータにより生成された画像をユーザに対して表示する。
【0050】
ステップS702において、アプリケーション602は画像関連データの要求を送信する。一実施例において、要求の送信は、第1のモバイル装置600及び/又は第2のモバイル装置620の1つ以上のユーザ操作によりトリガされる。例えば、ユーザ操作は、第1のモバイル装置600のユーザが電話を行うために第1のモバイル装置600の表示画面上で仮想ボタンを押し、次いで、第2のモバイル装置620の別のユーザが電話に応答するために第2のモバイル装置620の表示画面上で物理ボタンを押すことである。
【0051】
ステップS704及びS712において、カメラフレームワークレイヤ606及びカメラフレームワークレイヤ626は、それぞれ、アプリケーション602からの要求に応答してカメラ制御の命令を送信する。次いで、ステップS706及びS714において、カメラハードウェア抽象化レイヤ608及びカメラハードウェア抽象化レイヤ628が、それぞれ、カメラフレームワークレイヤ606からの命令に応答する。
【0052】
ステップS708において、方法200のステップS208と同様に、制御レイヤ610はカメラハードウェア抽象化レイヤ608の制御を行うことができ、それにより、カメラハードウェア抽象化レイヤ608は、画像関連データを獲得するために制御コマンドを少なくとも1つのターゲットデータリソースに送信するように制御される。この実施例において、カメラハードウェア抽象化レイヤ608は、画像関連データとして仮想現実データを獲得するために1つのみの制御コマンドをアプリケーション604に送信するように制御される。1つ以上のカメラ614、616を含む第1のモバイル装置600の物理カメラ612は、制御コマンドを受信されない。
【0053】
ステップS710及びS716において、第2のアプリケーション604と物理カメラ632とは、それぞれ、仮想現実世界において仮想カメラにより捕捉された仮想現実データと物理カメラ632により捕捉された現実シーンデータとを提供する。物理カメラ632は1つ以上のカメラ634、636を含む。
【0054】
ステップS718において、アプリケーション602は、カメラハードウェア抽象化レイヤ606及びカメラハードウェア抽象化レイヤ626から仮想現実データ及び/又は現実シーンデータを受信する。次いで、ステップS718において、第1のモバイル装置600及び第2のモバイル装置620のうち少なくとも1つが、仮想現実データ及び/又は現実シーンデータにより生成された画像をユーザに対して表示する。
【0055】
カメラハードウェア抽象化レイヤ608が1つのみの制御コマンドをアプリケーション604に送信するように制御されるため、置換機能が実現されることに留意する。
【0056】
さらに、他の実施例において、ステップS710、S712、S716は省略でき、第1のモバイル装置600及び/又は第2のモバイル装置620は、仮想現実データにより生成された画像のみ表示できる。
【0057】
要約すると、本開示は制御レイヤを有する仮想現実機器を開示し、それにより、仮想現実機器は置換機能及び/又は重ね合わせ機能を実現できる。
【0058】
当業者は、本発明の教示を保有する間、装置及び方法についての多数の修正及び変更がなされ得ることを容易に観察するであろう。したがって、上記開示は、別記の請求項の範囲及び境界によってのみ限定されるとみなされるべきである。