(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023070410
(43)【公開日】2023-05-19
(54)【発明の名称】映像提示装置、プログラム及び映像提示方法
(51)【国際特許分類】
G06T 19/00 20110101AFI20230512BHJP
G06F 3/0346 20130101ALI20230512BHJP
G06F 3/01 20060101ALI20230512BHJP
【FI】
G06T19/00 300A
G06F3/0346 422
G06F3/01 510
【審査請求】未請求
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2021182570
(22)【出願日】2021-11-09
(71)【出願人】
【識別番号】000004112
【氏名又は名称】株式会社ニコン
(74)【代理人】
【識別番号】100161207
【弁理士】
【氏名又は名称】西澤 和純
(74)【代理人】
【識別番号】100140774
【弁理士】
【氏名又は名称】大浪 一徳
(74)【代理人】
【識別番号】100175824
【弁理士】
【氏名又は名称】小林 淳一
(72)【発明者】
【氏名】坂牧 昌
(72)【発明者】
【氏名】上出 将
(72)【発明者】
【氏名】栗山 孝司
(72)【発明者】
【氏名】伊藤 直也
【テーマコード(参考)】
5B050
5B087
5E555
【Fターム(参考)】
5B050AA03
5B050BA09
5B050BA12
5B050CA08
5B050DA01
5B050EA07
5B050EA26
5B050FA02
5B087AA09
5B087BC32
5B087DD03
5E555AA27
5E555AA64
5E555AA71
5E555AA76
5E555BA38
5E555BB38
5E555BC04
5E555BE17
5E555CA42
5E555CB66
5E555CC26
5E555DA08
5E555DB32
5E555DC19
5E555DC84
5E555EA08
5E555EA27
5E555FA00
(57)【要約】
【課題】複数のユーザに同じ仮想現実空間内で同じ体験を共有させること。
【解決手段】映像提示装置は、仮想現実空間内で副ユーザを主導する主ユーザの動作を示す主動作データと、前記主ユーザの物理空間内における位置及び前記主ユーザに対応付けられている主アバターの前記仮想現実空間内における位置の少なくとも一方を示す主位置データと、前記主ユーザが前記物理空間内で移動する方向及び前記主アバターが前記仮想現実空間内で移動する方向の少なくとも一方を示す主方向データとの少なくとも一つを取得する取得部と、前記主アバター及び前記副ユーザに対応付けられている副アバターが前記仮想現実空間内で動作する映像を前記主動作データ、前記主位置データ及び前記主方向データの少なくとも一つに基づいて生成する生成部と、前記映像を出力する出力部と、を備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
仮想現実空間内で副ユーザを主導する主ユーザの動作を示す主動作データと、前記主ユーザの物理空間内における位置及び前記主ユーザに対応付けられている主アバターの前記仮想現実空間内における位置の少なくとも一方を示す主位置データと、前記主ユーザが前記物理空間内で移動する方向及び前記主アバターが前記仮想現実空間内で移動する方向の少なくとも一方を示す主方向データとの少なくとも一つを取得する取得部と、
前記主アバター及び前記副ユーザに対応付けられている副アバターが前記仮想現実空間内で動作する映像を前記主動作データ、前記主位置データ及び前記主方向データの少なくとも一つに基づいて生成する生成部と、
前記映像を出力する出力部と、
を備える映像提示装置。
【請求項2】
前記生成部は、前記副アバターの動作の少なくとも一部を前記主動作データ、前記主位置データ及び主方向データの少なくとも一つに基づいて定める、
請求項1に記載の映像提示装置。
【請求項3】
前記取得部は、前記副ユーザの動作を示す副動作データと、前記副ユーザの前記物理空間内における位置及び前記副ユーザに対応付けられている前記副アバターの前記仮想現実空間内における位置の少なくとも一方を示す副位置データと、前記副ユーザが前記物理空間内で移動する方向及び前記副アバターが前記仮想現実空間内で移動する方向の少なくとも一方を示す副方向データの少なくとも一つを取得し、
前記生成部は、前記副アバターの動作の一部を前記主動作データ、前記主位置データ及び前記主方向データの少なくとも一つに基づいて定め、前記副アバターの動作の他の一部を前記副動作データ、前記副位置データ及び前記副方向データの少なくとも一つに基づいて定める、
請求項2に記載の映像提示装置。
【請求項4】
前記生成部は、前記主アバターの位置を前記主動作データ及び前記主位置データの少なくとも一方に基づいて定める処理と、前記主アバターが移動する方向を前記主動作データ及び主方向データの少なくとも一方に基づいて定める処理と、前記副アバターの位置を前記主動作データ及び前記主位置データの少なくとも一方に基づいて定める処理と、前記副アバターが移動する方向を前記主動作データ及び前記主方向データの少なくとも一方に基づいて定める処理との少なくとも一つを実行する、
請求項1から請求項3の少なくとも一つに記載の映像提示装置。
【請求項5】
前記生成部は、前記副アバターの位置を一点に定める、
請求項4に記載の映像提示装置。
【請求項6】
前記取得部は、前記副ユーザの動作を示す副動作データを取得し、
前記生成部は、前記副アバターが移動可能な範囲を前記主動作データに基づいて定め、前記範囲内における前記副アバターの位置を前記副動作データに基づいて定める、
請求項4に記載の映像提示装置。
【請求項7】
前記出力部は、前記副ユーザが前記映像の視聴を中断した場合、前記副ユーザが視聴していない前記映像の少なくとも一部を再び出力する、
請求項1から請求項6のいずれか一つに記載の映像提示装置。
【請求項8】
前記副ユーザが前記映像の視聴を中断した場合、前記副ユーザが視聴していない前記映像の少なくとも一部を編集する編集部を更に備える、
請求項7に記載の映像提示装置。
【請求項9】
前記生成部は、前記副ユーザが前記映像の視聴を中断してから前記映像の視聴を再開するまでの間、前記副アバターを自動的に動作させる、
請求項1から請求項8のいずれか一つに記載の映像提示装置。
【請求項10】
前記取得部は、前記副ユーザと異なる予備ユーザの動作を示す予備動作データを取得し、
前記生成部は、前記副ユーザが前記映像の視聴を中断している間、前記副アバターを前記予備動作データに基づいて動作させる、
請求項1から請求項8のいずれか一つに記載の映像提示装置。
【請求項11】
前記生成部は、前記副ユーザが前記映像の視聴を中断してから前記映像の視聴を再開するまでの間、前記副アバターを前記主動作データに基づいて動作させる、
請求項1から請求項8のいずれか一つに記載の映像提示装置。
【請求項12】
前記出力部は、前記映像の少なくとも一部を少なくとも二回出力する、
請求項1から請求項11のいずれか一つに記載の映像提示装置。
【請求項13】
コンピュータに、
仮想現実空間内で副ユーザを主導する主ユーザの動作を示す主動作データと、前記主ユーザの物理空間内における位置及び前記主ユーザに対応付けられている主アバターの前記仮想現実空間内における位置の少なくとも一方を示す主位置データと、前記主ユーザが前記物理空間内で移動する方向及び前記主アバターが前記仮想現実空間内で移動する方向の少なくとも一方を示す主方向データとの少なくとも一つを取得することと、
前記主アバター及び前記副ユーザに対応付けられている副アバターが前記仮想現実空間内で動作する映像を前記主動作データ、前記主位置データ及び前記主方向データの少なくとも一つに基づいて生成することと、
前記映像を出力する出力部と、
を実現させるプログラム。
【請求項14】
仮想現実空間内で副ユーザを主導する主ユーザの動作を示す主動作データと、前記主ユーザの物理空間内における位置及び前記主ユーザに対応付けられている主アバターの前記仮想現実空間内における位置の少なくとも一方を示す主位置データと、前記主ユーザが前記物理空間内で移動する方向及び前記主アバターが前記仮想現実空間内で移動する方向の少なくとも一方を示す主方向データとの少なくとも一つを取得し、
前記主アバター及び前記副ユーザに対応付けられている副アバターが前記仮想現実空間内で動作する映像を前記主動作データ、前記主位置データ及び前記主方向データの少なくとも一つに基づいて生成し、
前記映像を出力する、
映像提示方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像提示装置、プログラム及び映像提示方法に関する。
【背景技術】
【0002】
これまでに仮想現実(VR:Virtual Reality)空間内における体験をユーザに提供する技術が開発されている。このような技術を開示している文献として、例えば、特許文献1が挙げられる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【0004】
本発明の一態様は、仮想現実空間内で副ユーザを主導する主ユーザの動作を示す主動作データと、前記主ユーザの物理空間内における位置及び前記主ユーザに対応付けられている主アバターの前記仮想現実空間内における位置の少なくとも一方を示す主位置データと、前記主ユーザが前記物理空間内で移動する方向及び前記主アバターが前記仮想現実空間内で移動する方向の少なくとも一方を示す主方向データとの少なくとも一つを取得する取得部と、前記主アバター及び前記副ユーザに対応付けられている副アバターが前記仮想現実空間内で動作する映像を前記主動作データ、前記主位置データ及び前記主方向データの少なくとも一つに基づいて生成する生成部と、前記映像を出力する出力部と、を備える映像提示装置である。
【0005】
本発明の一態様は、コンピュータに、仮想現実空間内で副ユーザを主導する主ユーザの動作を示す主動作データと、前記主ユーザの物理空間内における位置及び前記主ユーザに対応付けられている主アバターの前記仮想現実空間内における位置の少なくとも一方を示す主位置データと、前記主ユーザが前記物理空間内で移動する方向及び前記主アバターが前記仮想現実空間内で移動する方向の少なくとも一方を示す主方向データとの少なくとも一つを取得することと、前記主アバター及び前記副ユーザに対応付けられている副アバターが前記仮想現実空間内で動作する映像を前記主動作データ、前記主位置データ及び前記主方向データの少なくとも一つに基づいて生成することと、前記映像を出力する出力部と、を実現させるプログラムである。
【0006】
本発明の一態様は、仮想現実空間内で副ユーザを主導する主ユーザの動作を示す主動作データと、前記主ユーザの物理空間内における位置及び前記主ユーザに対応付けられている主アバターの前記仮想現実空間内における位置の少なくとも一方を示す主位置データと、前記主ユーザが前記物理空間内で移動する方向及び前記主アバターが前記仮想現実空間内で移動する方向の少なくとも一方を示す主方向データとの少なくとも一つを取得し、前記主アバター及び前記副ユーザに対応付けられている副アバターが前記仮想現実空間内で動作する映像を前記主動作データ、前記主位置データ及び前記主方向データの少なくとも一つに基づいて生成し、前記映像を出力する、映像提示方法である。
【図面の簡単な説明】
【0007】
【
図1】実施形態に係る映像提示装置のハードウェア構成の一例を示す図である。
【
図2】実施形態に係る映像提示装置のソフトウェア構成の一例を示す図である。
【
図3】実施形態に係る仮想現実空間内における主アバターの位置、方向及び動線と、副アバターの位置、方向及び動線との一例を示す図である。
【
図4】実施形態に係る映像提示装置により実行される主アバターの位置及び方向と、副アバターの位置及び方向とに関する処理の一例を示すフローチャートである。
【
図5】実施形態に係る映像提示装置により実行される主アバターの位置及び方向と、副アバターの位置及び方向とに関する処理の一例を示すフローチャートである。
【
図6】実施形態に係る映像提示装置により実行される主アバターに関する処理の一例を示すフローチャートである。
【
図7】実施形態に係る映像提示装置により実行される主アバターに関する処理の一例を示すフローチャートである。
【
図8】実施形態に係る映像提示装置により実行される副アバターの動作に関する処理の一例を示すフローチャートである。
【
図9】実施形態に係る映像提示装置により実行される副アバターの動作に関する処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0008】
上述した特許文献1に開示されている技術は、認知症等により実際の外出に危険が伴う利用者等にも没入感型高精細映像による疑似外出体験を提供することができる。一方、近年、モーションキャプチャを利用してユーザの動作を示すデータを取得し、当該データを利用してユーザに仮想現実空間内における体験を提供する技術が開発されている。ところが、特許文献1に開示されている技術は、複数のユーザの中に体が不自由なユーザが含まれている場合、当該ユーザの動作を示すデータを取得することが困難であるため、複数のユーザに同じ仮想現実空間内で同じ体験を共有させ得ないことがある。
【0009】
そこで、本発明に係る実施形態は、複数のユーザに同じ仮想現実空間内で同じ体験を共有させることができる映像提示装置、プログラム及び映像提示方法を提供する。
【0010】
図1から
図9を参照しながら実施形態に係る映像提示装置、プログラム及び映像提示方法について説明する。また、本実施形態の説明では、孫と、当該孫の祖父とがオンラインツアーを体験する場合を例に挙げて説明する。
【0011】
まず、
図1を参照しながら実施形態に係る映像提示装置のハードウェア構成について説明する。
図1は、実施形態に係る映像提示装置のハードウェア構成の一例を示す図である。
図1に示すように、映像提示装置10は、プロセッサ11と、主記憶装置12と、通信インターフェース13と、補助記憶装置14と、入出力装置15と、バス16とを備える。
【0012】
プロセッサ11は、例えば、CPU(Central Processing Unit)であり、プログラムを読み出して実行し、映像提示装置10が有する各機能及びこれらの機能を実現させる上で必要な機能を実現させる。
【0013】
主記憶装置12は、例えば、RAM(Random Access Memory)であり、プロセッサ11により読み出されて実行されるプログラムを予め記憶している。
【0014】
通信インターフェース13は、ネットワークを介して他の機器と通信を実行するためのインターフェース回路である。また、ネットワークは、例えば、WAN(Wide Area Network)、LAN(Local Area Network)、インターネット、イントラネットである。
【0015】
補助記憶装置14は、例えば、ハードディスクドライブ(HDD:Hard Disk Drive)、ソリッドステートドライブ(SSD:Solid State Drive)、フラッシュメモリ(Flash Memory)、ROM(Read Only Memory)である。
【0016】
入出力装置15は、例えば、入出力ポート(Input/Output Port)であり、カメラ20-1、…、カメラ20-k(k:1以上の整数)、ディスプレイ30、ゴーグル41及びゴーグル42が接続されている。
【0017】
カメラ20-1、…及びカメラ20-kは、モーションキャプチャに利用される。カメラ20-1、…及びカメラ20-kの少なくとも一つは、孫の身体の各部に取り付けられているマーカの動きを撮影する。孫は、仮想現実空間内で副ユーザを主導する主ユーザの一例である。また、カメラ20-1、…及びカメラ20-kの少なくとも一つは、当該孫の祖父の身体の各部に取り付けられているマーカの動きを撮影してもよい。祖父は、仮想現実空間内で主ユーザに主導される副ユーザの一例である。また、副ユーザは、体の少なくとも一部が不自由であることにより体の少なくとも一部を動かすことができない者であってもよい。
【0018】
カメラ20-1、…及びカメラ20-kの少なくとも一つにより主ユーザを撮影した動画像を示すデータは、映像提示装置10に送信され、主ユーザの物理空間内における動作を示す主動作データに変換される。また、カメラ20-1、…及びカメラ20-kの少なくとも一つにより副ユーザを撮影した動画像を示すデータは、映像提示装置10に送信され、副ユーザの物理空間内における動作を示す副動作データに変換される。ここで言う物理空間は、少なくとも主ユーザが実際に動作する空間であり、例えば、主ユーザ及び副ユーザの少なくとも一方の自宅である。
【0019】
主動作データは、例えば、主ユーザが歩行する際における両足の動作、主ユーザの腕の動作、主ユーザの顔が向いている方向、主ユーザの視線の方向等を示す。副動作データは、例えば、副ユーザの腕の動作、副ユーザの顔が向いている方向、副ユーザの視線の方向等を示しており、副ユーザが歩行する際における両足の動作等を示していてもよい。
【0020】
ディスプレイ30、ゴーグル41及びゴーグル42は、仮想現実空間内で動作する映像を表示する。ディスプレイ30は、主ユーザ及び副ユーザの少なくとも一方に視認される。また、ゴーグル41は、例えば、主ユーザに装着される。一方、ゴーグル42は、例えば、副ユーザに装着される。
【0021】
バス16は、プロセッサ11、主記憶装置12、通信インターフェース13、補助記憶装置14及び入出力装置15を互いにデータの送受信が可能なように接続している。
【0022】
次に、
図2及び
図3を参照しながら映像提示装置のソフトウェア構成について説明する。
図2は、実施形態に係る映像提示装置のソフトウェア構成の一例を示す図である。
図2に示すように、映像提示装置10は、取得部101と、生成部102と、出力部103と、編集部104と、制御部105とを備える。取得部101、生成部102、出力部103、編集部104及び制御部105は、いずれもプロセッサ11が主記憶装置12に格納されているプログラムを読み出して実行することにより実現される。
【0023】
取得部101は、主動作データを取得する。また、取得部101は、主ユーザの物理空間内における位置及び主ユーザに対応付けられている主アバターの仮想現実空間内における位置の少なくとも一方を示す主位置データを取得する。さらに、取得部101は、主ユーザが物理空間内で移動する方向及び主アバターが仮想現実空間内で移動する方向の少なくとも一方を示す主方向データを取得する。また、取得部101は、副動作データを取得する。さらに、取得部101は、副ユーザと異なる予備ユーザの動作を示す予備動作データを取得してもよい。予備ユーザは、主ユーザでもよいし、主ユーザ及び副ユーザとは別のユーザであってもよい。
【0024】
生成部102は、主アバター及び副ユーザに対応付けられている副アバターが仮想現実空間内で動作する映像を主動作データ、前記主位置データ及び前記主方向データの少なくとも一つに基づいて生成する。
【0025】
具体的には、生成部102は、副アバターの動作の少なくとも一部を主動作データ、主位置データ及び主方向データの少なくとも一つに基づいて定める。例えば、生成部102は、副アバターの腰から下の動作を主動作データ、主位置データ及び主方向データの少なくとも一つに基づいて定める。或いは、生成部102は、副アバターの全身の動作を主動作データ、主位置データ及び主方向データの少なくとも一つに基づいて定める。
【0026】
また、生成部102は、主アバターの位置を主動作データ及び主位置データの少なくとも一方に基づいて定める処理を実行してもよい。或いは、生成部102は、主アバターの方向を主動作データ及び主方向データの少なくとも一方に基づいて定める処理を実行してもよい。或いは、生成部102は、副アバターの位置を主動作データ及び主位置データの少なくとも一方に基づいて定める処理を実行してもよい。或いは、生成部102は、副アバターの方向を主動作データ及び主方向データの少なくとも一方に基づいて定める処理を実行してもよい。
【0027】
また、具体的には、生成部102は、副アバターが移動可能な範囲を主動作データに基づいて定め、当該範囲内における副アバターの位置を副動作データに基づいて定める。例えば、生成部102は、主動作データにより定められた主アバターの位置を含む所定の範囲を副アバターが移動可能な範囲と定める。また、例えば、生成部102は、副ユーザが歩行した動作を示す副動作データに基づいて当該範囲内における副アバターの位置を定める。
【0028】
図3は、実施形態に係る仮想現実空間内における主アバターの位置、方向及び動線と、副アバターの位置、方向及び動線との一例を示す図である。生成部102は、上述した処理により、
図3に示すように、点A1に配置された主アバターMを点B1まで実線で示した軌道で移動させる。また、主アバターMの点A1又は点B1における方向は、
図3に示した実線の三角形及び両矢印で示されている。また、生成部102は、上述した処理により、
図3に示すように、点A2に配置された副アバターSを点B2まで実線で示した軌道で移動させる。また、副アバターSの点A2又は点B2における方向は、
図3に示した点線の三角形及び両矢印で示されている。さらに、生成部102は、副アバターSが移動可能な所定の範囲として
図3に楕円Rで示されている領域を定める。なお、
図3に示した点A1及び点B1を結ぶ軌道と、点A2及び点B2を結ぶ軌道とを結ぶ三本の点線は、副アバターSの位置が常に主アバターMの位置に基づいて定められることを表している。
【0029】
また、生成部102は、取得部101により予備動作データが取得されている場合、副ユーザが映像の視聴を中断している間、副アバターSを予備動作データに基づいて動作させる。或いは、生成部102は、副ユーザが映像の視聴を中断してから映像の視聴を再開するまでの間、副アバターSを自動的に動作させてもよい。或いは、生成部102は、副ユーザが映像の視聴を中断してから映像の視聴を再開するまでの間、副アバターSを主動作データに基づいて動作させてもよい。
【0030】
出力部103は、生成部102により生成された映像を出力する。例えば、出力部103は、当該映像をディスプレイ30に表示させる。ディスプレイ30に表示される映像は、主アバターM及び副アバターS以外の第三者からの視点からの映像、主アバターMの視点からの映像及び副アバターSの視点からの映像の少なくとも一つである。また、ディスプレイ30に表示されるこれら三つの映像は、適宜、切り替えられてもよい。
【0031】
或いは、出力部103は、当該映像をゴーグル41及びゴーグル42に表示させる。ゴーグル41に表示される映像は、主アバターM及び副アバターS以外の第三者からの視点からの映像、主アバターMの視点からの映像及び副アバターSの視点からの映像の少なくとも一つである。また、ゴーグル41に表示されるこれら三つの映像は、適宜、切り替えられてもよい。同様に、ゴーグル42に表示される映像は、主アバターM及び副アバターS以外の第三者からの視点からの映像、主アバターMの視点からの映像及び副アバターSの視点からの映像の少なくとも一つである。また、ゴーグル42に表示されるこれら三つの映像は、適宜、切り替えられてもよい。
【0032】
なお、主アバターM及び副アバターS以外の第三者からの視点からの映像は、例えば、
図3に示すように、主アバターM及び副アバターSを俯瞰する視点からの映像である。
【0033】
また、出力部103は、映像の少なくとも一部を少なくとも二回出力してもよい。一回目に出力される映像は、仮想現実空間内におけるオンラインツアーを主ユーザ及び副ユーザに体験させる目的で出力される。一方、二回目以降に出力される映像は、仮想現実空間内におけるオンラインツアーを主ユーザ、副ユーザ、その他のユーザに追体験させる目的で出力される。
【0034】
また、出力部103は、副ユーザが映像の視聴を中断した場合、副ユーザが視聴していない映像の少なくとも一部を再び出力してもよい。この場合に出力される映像は、仮想現実空間内におけるオンラインツアーのうち副ユーザが視聴し得なかった部分を副ユーザに後から視聴させる目的で出力される。
【0035】
編集部104は、副ユーザが映像の視聴を中断した場合、副ユーザが視聴していない映像の少なくとも一部を編集する。例えば、編集部104は、副ユーザが視聴していない映像の少なくとも一部を主ユーザが視聴した時の二倍の速度まで上げる。編集部104により出力された映像は、出力部103により出力される。
【0036】
制御部105は、映像提示装置10又は映像提示装置10と連携する装置を適宜制御する処理を実行する。このような処理としては、例えば、映像提示装置10が停止しているか否かを判定する処理、モーションキャプチャを動作させる処理、副アバターの動作の条件が主アバターの動作に完全に追従する条件となっているか否かを判定して当該条件を設定する処理が挙げられる。
【0037】
次に、
図4及び
図5を参照しながら実施形態に係る映像提示装置により実行される主アバターの位置及び方向と、副アバターの位置及び方向とに関する処理の一例を説明する。
図4及び
図5は、実施形態に係る映像提示装置により実行される主アバターの位置及び方向と、副アバターの位置及び方向とに関する処理の一例を示すフローチャートである。
図4に示したフローチャートと、
図5に示したフローチャートとは、結合子Aにより接続されている。
【0038】
ステップS101において、生成部102は、仮想現実空間を読み込む。
【0039】
ステップS102において、生成部102は、主ユーザ及び副ユーザを定義する。
【0040】
ステップS103において、生成部102は、主アバターの位置に基づいて副アバターが移動可能な所定の範囲を設定する。
【0041】
ステップS104において、生成部102は、仮想現実空間内に主アバター及び副アバターを配置する。
【0042】
ステップS105において、生成部102は、主ユーザが動作を開始したか否かを判定する。生成部102は、主ユーザが動作を開始したと判定した場合(ステップS105:YES)、処理をステップS106に進める。一方、生成部102は、主ユーザが動作を開始していないと判定した場合(ステップS105:NO)、処理をステップS111に進める。
【0043】
ステップS106において、映像提示装置10は、モーションキャプチャにより生成され、主ユーザの動作を示す主動作データを取得し、主アバターを動作させる。
【0044】
ステップS107において、生成部102は、主アバターの位置及び方向に基づいて副アバターの位置及び方向を定め、副アバターを動作させる。
【0045】
ステップS108において、生成部102は、主ユーザが動作を停止させたか否かを判定する。生成部102は、主ユーザが動作を停止させたと判定した場合(ステップS108:YES)、処理をステップS109に進める。一方、生成部102は、主ユーザが動作を停止させていないと判定した場合(ステップS108:NO)、処理をステップS106に戻す。
【0046】
ステップS109において、生成部102は、副アバターの動作を停止させる。
【0047】
ステップS110において、生成部102は、主ユーザ及び副ユーザが目的地に着いたか否かを判定する。生成部102は、主ユーザ及び副ユーザが目的地に着いたと判定した場合(ステップS110:YES)、処理を終了させる。一方、生成部102は、主ユーザ及び副ユーザが目的地に着いていないと判定した場合(ステップS110:NO)、処理をステップS106に戻す。
【0048】
ステップS111において、制御部105は、映像提示装置10が停止されたか否かを判定する。制御部105は、映像提示装置10が停止されたと判定した場合(ステップS111:YES)、処理を終了させる。一方、制御部105は、映像提示装置10が停止されていないと判定した場合(ステップS111:NO)、処理をステップS105に戻す。
【0049】
次に、
図6及び
図7を参照しながら実施形態に係る映像提示装置により実行される主アバターに関する処理の一例を説明する。
図6及び
図7は、実施形態に係る映像提示装置により実行される主アバターに関する処理の一例を示すフローチャートである。
図6に示したフローチャートと、
図7に示したフローチャートとは、結合子Bにより接続されている。
【0050】
ステップS201において、取得部101は、副ユーザが映像提示装置の使用を開始したことを示すデータを取得する。
【0051】
ステップS202において、取得部101は、主ユーザの歩幅を示す主歩幅データを取得する。
【0052】
ステップS203において、生成部102は、副アバターの動作に関する条件を設定する。
【0053】
ステップS204において、制御部105は、モーションキャプチャを起動させる。
【0054】
ステップS205において、生成部102は、仮想現実空間内に主アバター及び副アバターを表示させる。
【0055】
ステップS206において、生成部102は、主アバターが歩行を開始する方向を校正する。
【0056】
ステップS207において、制御部105は、モーションキャプチャにより主ユーザの物理空間内における動作を示す主動作データを取得する処理を開始させる。
【0057】
ステップS208において、生成部102は、主ユーザが歩行したか否かを判定する。生成部102は、主ユーザが歩行したと判定した場合(ステップS208:YES)、処理をステップS209に進める。一方、生成部102は、主ユーザが歩行していないと判定した場合(ステップS208:NO)、処理をステップS207に戻す。
【0058】
ステップS209において、生成部102は、主歩幅データと、主ユーザが歩行したことを示す主動作データとに基づいて仮想現実空間内において主アバターが移動する距離及び方向を示す移動ベクトルを算出する。
【0059】
ステップS210において、生成部102は、移動ベクトルに基づいて主アバターを移動させる。
【0060】
ステップS211において、制御部105は、映像提示装置10が停止されたか否かを判定する。制御部105は、映像提示装置10が停止されたと判定した場合(ステップS211:YES)、処理を終了させる。一方、制御部105は、映像提示装置10が停止されていないと判定した場合(ステップS211:NO)、処理をステップS207に戻す。
【0061】
次に、
図8及び
図9を参照しながら実施形態に係る映像提示装置により実行される副アバターの動作に関する処理の一例を説明する。
図8及び
図9は、実施形態に係る映像提示装置により実行される副アバターの動作に関する処理の一例を示すフローチャートである。
図8に示したフローチャートと、
図9に示したフローチャートとは、結合子Cにより接続されている。
【0062】
ステップS301において、制御部105は、副アバターの動作の条件が主アバターの動作に完全に追従する条件となっているか否かを判定する。制御部105は、副アバターの動作の条件が主アバターの動作に完全に追従する条件となっていると判定した場合(ステップS301:YES)、処理をステップS306に進める。一方、制御部105は、副アバターの動作の条件が主アバターの動作に完全に追従する条件となっていないと判定した場合(ステップS301:NO)、処理をステップS302に進める。
【0063】
ステップS302において、制御部105は、副アバターの動作のうち主アバターの動作が反映される範囲を設定する。なお、制御部105は、映像提示装置10が主ユーザにより操作された場合に当該範囲を設定してもよいし、映像提示装置10が副ユーザにより操作された場合に当該範囲を設定してもよい。
【0064】
ステップS303において、制御部105は、モーションキャプチャにより副ユーザの物理空間内における動作を示す副動作データを取得する処理を開始させる。
【0065】
ステップS304において、生成部102は、副アバターの動作を校正する必要があるか否かを判定する。生成部102は、副アバターの動作を校正する必要があると判定した場合(ステップS304:YES)、処理をステップS305に進める。一方、生成部102は、副アバターの動作を校正する必要がないと判定した場合(ステップS304:NO)、処理をステップS306に進める。
【0066】
ステップS305において、生成部102は、副アバターの動作を校正する。
【0067】
ステップS306において、生成部102は、主アバターの動作を副アバターの動作に反映させる。
【0068】
ステップS307において、制御部105は、映像提示装置が停止されたか否かを判定する。制御部105は、映像提示装置が停止されたと判定した場合(ステップS307:YES)、処理を終了させる。一方、制御部105は、映像提示装置が停止されていないと判定した場合(ステップS307:NO)、処理をステップS308に進める。
【0069】
ステップS308において、生成部102は、副アバターの位置が所定の範囲を超えたか否かを判定する。生成部102は、副アバターの位置が所定の範囲を超えたと判定した場合(ステップS308:YES)、処理をステップS309に進める。一方、生成部102は、副アバターの位置が所定の範囲を超えていないと判定した場合(ステップS308:NO)、処理をステップS307に戻す。
【0070】
ステップS309において、生成部102は、副アバターの位置を所定の範囲内に戻す。
【0071】
以上、実施形態に係る映像提示装置、プログラム及び映像提示方法について説明した。映像提示装置10は、取得部101と、生成部102と、出力部103とを備える。取得部101は、仮想現実空間内で副ユーザを主導する主ユーザの物理空間内における動作を示す主動作データと、主ユーザの物理空間内における位置及び主アバターの仮想現実空間内における位置の少なくとも一方を示す主位置データと、主ユーザの物理空間内における方向及び主アバターの仮想現実空間内における方向の少なくとも一方を示す主方向データとの少なくとも一つを取得する。生成部102は、主ユーザに対応付けられている主アバターM及び副ユーザに対応付けられている副アバターSが仮想現実空間内で動作する映像を主動作データ、主位置データ及び主方向データの少なくとも一つに基づいて生成する。出力部103は、当該映像を出力する。これにより、映像提示装置10は、主ユーザ及び副ユーザに同じ仮想現実空間内で同じ体験を共有させることができる。
【0072】
また、映像提示装置10は、副アバターの動作の少なくとも一部を主動作データ、主位置データ及び主方向データの少なくとも一つに基づいて定める。これにより、映像提示装置10は、副ユーザの体の少なくとも一部が不自由であるために副ユーザの体の少なくとも一部に基づく副動作データが生成され得ない場合であっても、副ユーザに主ユーザと同じ仮想現実空間内で同じ体験を共有させることができる。
【0073】
また、映像提示装置10は、主アバターの位置を主動作データ及び主位置データの少なくとも一方に基づいて定める処理を実行する。或いは、映像提示装置10は、主アバターの方向を主動作データ及び主方向データの少なくとも一方に基づいて定める処理を実行する。或いは、映像提示装置10は、副アバターの位置を主動作データ及び主位置データの少なくとも一方に基づいて定める処理を実行する。或いは、映像提示装置10は、副アバターの方向を主動作データ及び主方向データの少なくとも一方に基づいて定める処理を実行する。これにより、映像提示装置10は、副ユーザが自由に歩行し得ない場合であっても、仮想現実空間内で主アバターと共に副アバターを移動させ、副ユーザに主ユーザと同じ仮想現実空間内で同じ体験を共有させることができる。また、これにより、映像提示装置10は、副ユーザの体のうち副ユーザが自由に動かすことが可能な部分については当該部分の動きを副アバターに反映させ、副ユーザに自由度の高い体験を提供することができる。
【0074】
また、映像提示装置10は、副アバターが移動可能な範囲を主動作データに基づいて定め、範囲内における副アバターの位置を副動作データに基づいて定める。これにより、映像提示装置10は、副アバターが当該範囲内で自由に移動することを可能にし、副ユーザに自由度の高い体験を提供することができる。
【0075】
また、映像提示装置10は、副ユーザが映像の視聴を中断した場合、副ユーザが視聴していない映像の少なくとも一部を再び出力する。これにより、映像提示装置10は、副ユーザが何らかの事情で仮想現実空間内におけるオンラインツアーへの参加を中断した場合であっても、副ユーザが視聴していない映像を副ユーザに視聴させることができる。
【0076】
また、映像提示装置10は、副ユーザが映像の視聴を中断した場合、副ユーザが視聴していない映像の少なくとも一部を編集する。これにより、映像提示装置10は、副ユーザが何らかの事情で仮想現実空間内におけるオンラインツアーへの参加を中断し、視聴していない映像を視聴する場合に、より好適な映像を副ユーザに視聴させることができる。
【0077】
また、映像提示装置10は、副ユーザが映像の視聴を中断してから映像の視聴を再開するまでの間、副アバターを自動的に動作させる。これにより、映像提示装置10は、副ユーザが何らかの事情で仮想現実空間内におけるオンラインツアーへの参加を中断している間も、副アバターを動作させ、主ユーザ及び副ユーザに更に自然な映像を視聴させることができる。
【0078】
また、映像提示装置10は、副ユーザと異なる予備ユーザの動作を示す予備動作データを取得する。そして、映像提示装置10は、副ユーザが映像の視聴を中断している間、副アバターを予備動作データに基づいて動作させる。これにより、映像提示装置10は、副ユーザが何らかの事情で仮想現実空間内におけるオンラインツアーへの参加を中断している間も、副アバターを動作させ、主ユーザ及び副ユーザに更に自然な映像を視聴させることができる。また、これにより、映像提示装置10は、予備ユーザの動作を示す予備動作データに基づいて副アバターを動作させるため、副アバターを更に自然に動作させ、主ユーザ及び副ユーザに更に自然な映像を視聴させることができる。
【0079】
また、映像提示装置10は、副ユーザが映像の視聴を中断してから映像の視聴を再開するまでの間、副アバターを主動作データに基づいて動作させる。これにより、映像提示装置10は、副ユーザが何らかの事情で仮想現実空間内におけるオンラインツアーへの参加を中断している間も、副アバターを動作させ、主ユーザ及び副ユーザに更に自然な映像を視聴させることができる。また、これにより、映像提示装置10は、予備ユーザがいない場合であっても、副アバターを主動作データに基づいて自然に動作させ、主ユーザ及び副ユーザに更に自然な映像を視聴させることができる。
【0080】
また、映像提示装置10は、映像の少なくとも一部を少なくとも二回出力する。これにより、映像提示装置10は、主ユーザ及び副ユーザに同じ仮想現実空間内で同じ体験を共有させつつ、主ユーザ、副ユーザ、その他のユーザに仮想現実空間内におけるオンラインツアーを追体験させることができる。
【0081】
なお、上述した実施形態では、孫と、当該孫の祖父とがオンラインツアーを体験する場合を例に挙げて説明したが、これに限定されない。映像提示装置10は、例えば、観光ガイドに主導されるオンラインツアーに適用されてもよい。この場合、観光ガイドが主ユーザとなり、観光ガイドに主導される観光客が副ユーザとなる。或いは、映像提示装置10は、仮想現実空間内でのドライブに適用されてもよい。この場合、ドライブに使用される車両を運転する者が主ユーザとなり、当該車両に乗り、当該車両を運転しない者が副ユーザとなる。
【0082】
上述した実施形態では、モーションキャプチャの一例として、カメラ20-1、…及びカメラ20-kと、マーカとが使用されるモーションキャプチャを例に挙げて説明したが、これに限定されない。
【0083】
例えば、実施形態に係るモーションキャプチャは、慣性センサが使用されるモーションキャプチャであってもよい。この場合、例えば、主ユーザ又は副ユーザの動きを示すデータは、慣性センサにより生成され、慣性センサから映像提示装置10に送信される。
【0084】
或いは、実施形態に係るモーションキャプチャは、カメラ20-1、…及びカメラ20-kの少なくとも一つと、人工知能(AI:Artificial Intelligence)とが使用されるモーションキャプチャであってもよい。この場合、カメラ20-1、…及びカメラ20-kの少なくとも一つは、例えば、学習済みの機械学習プログラムを実行可能な機械学習装置に、主ユーザの動きを撮影した動画像を示すデータを送信する。機械学習装置は、主ユーザの動きを撮影した動画像を示すデータを機械学習プログラムに入力し、主ユーザの動きを示すデータを生成し、当該データを映像提示装置10に送信する。また、これらの処理は、副ユーザについても同様である。
【0085】
上述した実施形態では、ディスプレイ30、ゴーグル41及びゴーグル42が仮想現実空間内で動作する映像を表示する場合を例に挙げて説明したが、これに限定されない。仮想現実空間内で動作する映像は、例えば、ゴーグル41及びゴーグル42のみにより提示されてもよい。或いは、仮想現実空間内で動作する映像は、主ユーザ又は副ユーザの頭部に装着されるヘッドマウントディスプレイ(HMD:Head Mounted Display)により提示されてもよい。
【0086】
また、上述した実施形態では、
図1に示すように、映像提示装置10が一つの装置により実現されている場合を例に挙げて説明したが、これに限定されない。実施形態に係る映像提示装置は、二つ以上の装置により実現されてもよい。例えば、実施形態に係る映像提示装置は、サーバと、主ユーザにより携帯されているスマートフォン等の携帯端末と、副ユーザにより携帯されているスマートフォン等の携帯端末とにより実現されてもよい。
【0087】
また、
図2に示した映像提示装置10が備える機能の少なくとも一部は、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、GPU(Graphics Processing Unit)等の回路部(circuitry)を含むハードウェアにより実現されてもよい。或いは、
図2に示した映像提示装置10が備える機能の少なくとも一部は、ソフトウェアとハードウェアの協働により実現されてもよい。
【0088】
また、上述した実施形態では、副アバターが移動可能な範囲を主動作データに基づいて定め、当該範囲内における副アバターの位置を副動作データに基づいて定める場合を例に挙げて説明したが、これに限定されない。映像提示装置10は、副アバターの位置を主アバターの位置に対して一点に定めてもよい。これにより、映像提示装置10は、主ユーザとの一体感が更に高い体験を副ユーザに提供することができる。
【0089】
また、取得部101は、副位置データ、副方向データ及び上述した副動作データの少なくとも一つを取得してもよい。副位置データは、副ユーザの物理空間内における位置及び副ユーザに対応付けられている副アバターの仮想現実空間内における位置の少なくとも一方を示す。副方向データは、副ユーザが物理空間内で移動する方向及び副アバターが仮想現実空間内で移動する方向の少なくとも一方を示す。副動作データは、副ユーザの動作を示す。
【0090】
この場合、生成部102は、副アバターの動作の一部を主動作データ、主位置データ及び主方向データの少なくとも一つに基づいて定め、副アバターの動作の他の一部を副動作データ、副位置データ及び副方向データの少なくとも一つに基づいて定める。例えば、生成部102は、主ユーザの顔が向いている方向及び主ユーザの視線の方向以外の主ユーザの動作を示す主動作データに従って副アバターの顔が向く方向及び副アバターの視線の方向以外の動作を定める。また、同時に、生成部102は、副ユーザの顔が向いている方向及び副ユーザの視線の方向の少なくとも一方を示す副動作データに従って副アバターの顔が向く方向及び副アバターの視線の方向を定める。
【0091】
以上、本発明の実施形態について図面を参照して詳述したが、具体的な構成は、この実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲内において種々の組み合わせ、変形、置換及び設計変更の少なくとも一つが加えられることがある。
【0092】
また、上述した本発明の実施形態により解決される課題は、一例として示した課題である。したがって、本発明の実施形態は、上述した課題以外にも上述した実施形態の記載から当業者が認識し得る他の課題も解決し得る。
【0093】
また、上述した本発明の実施形態の効果は、一例として示した効果である。したがって、本発明の実施形態は、上述した効果以外にも上述した実施形態の記載から当業者が認識し得る他の効果も奏し得る。
【符号の説明】
【0094】
10…映像提示装置、11…プロセッサ、12…主記憶装置、13…通信インターフェース、14…補助記憶装置、15…入出力装置、16…バス、20-1,…20-k…カメラ、30…ディスプレイ、40…ゴーグル、101…取得部、102…生成部、103…出力部、104…編集部、105…制御部、M…主アバター、S…副アバター、A1,A2,B1,B2…点、R…楕円