(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-31
(45)【発行日】2022-11-09
(54)【発明の名称】画像処理装置、画像処理方法、および画像提供システム
(51)【国際特許分類】
G06T 19/00 20110101AFI20221101BHJP
H04N 21/431 20110101ALI20221101BHJP
G09G 5/00 20060101ALI20221101BHJP
G09G 5/377 20060101ALI20221101BHJP
G09G 5/14 20060101ALI20221101BHJP
G09G 5/38 20060101ALI20221101BHJP
G09G 5/36 20060101ALI20221101BHJP
G06F 3/04842 20220101ALI20221101BHJP
G06F 3/04845 20220101ALI20221101BHJP
G06F 3/01 20060101ALI20221101BHJP
G06Q 50/16 20120101ALI20221101BHJP
【FI】
G06T19/00 300B
H04N21/431
G09G5/00 555D
G09G5/36 520M
G09G5/14 E
G09G5/38 Z
G09G5/36 520E
G09G5/00 550C
G09G5/38 A
G09G5/36 520F
G09G5/36 520B
G09G5/00 550B
G06F3/04842
G06F3/04845
G06F3/01 510
G06Q50/16
(21)【出願番号】P 2019570660
(86)(22)【出願日】2019-01-23
(86)【国際出願番号】 JP2019001940
(87)【国際公開番号】W WO2019155876
(87)【国際公開日】2019-08-15
【審査請求日】2021-12-09
(31)【優先権主張番号】P 2018019062
(32)【優先日】2018-02-06
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】100121131
【氏名又は名称】西川 孝
(74)【代理人】
【識別番号】100082131
【氏名又は名称】稲本 義雄
(74)【代理人】
【識別番号】100168686
【氏名又は名称】三浦 勇介
(72)【発明者】
【氏名】神田 悟
【審査官】千葉 久博
(56)【参考文献】
【文献】特開2015-73746(JP,A)
【文献】特開2009-230344(JP,A)
【文献】特開2005-211132(JP,A)
【文献】国際公開第2018/012628(WO,A1)
【文献】“ナーブ「VR内見」 VR技術を応用した内見ツール 入居者探しのあり方を変革”,月刊プロパティマネジメント,綜合ユニコム,2017年10月01日,第18巻, 第10号,p.32-33
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00
H04N 21/431
G09G 5/00
G09G 5/377
G09G 5/14
G09G 5/38
G09G 5/36
G06F 3/04842
G06F 3/04845
G06F 3/01
G06Q 50/16
(57)【特許請求の範囲】
【請求項1】
仮想空間におけるユーザの視点から見た画像である前記ユーザの視点画像と、他のユーザの視点から見た前記他のユーザの視点画像と、前記他のユーザの位置を示す視点位置情報および視線方向を示す視線情報とを受信する受信部と、
前記他のユーザの前記視点位置情報および前記視線情報を用いて求められる前記仮想空間内の前記ユーザおよび前記他のユーザの位置関係に基づいて、前記ユーザの視点画像上に重畳する前記他のユーザの視点画像の表示を制御する表示制御部と
を備える画像処理装置。
【請求項2】
前記表示制御部は、前記他のユーザの視点画像の位置、サイズ、および透過率の少なくとも1つを制御する
請求項1に記載の画像処理装置。
【請求項3】
前記表示制御部は、前記ユーザの視線方向を示す視線情報と前記他のユーザの前記視線情報から得られる情報に基づいて、前記他のユーザの視点画像の表示を制御する
請求項1に記載の画像処理装置。
【請求項4】
前記情報は、視差であり、前記表示制御部は、前記視差が小さくなるにつれて、前記他のユーザの視点画像を前記ユーザの視点画像の中央に移動させる
請求項3に記載の画像処理装置。
【請求項5】
前記表示制御部は、前記視差が第1の閾値以下になった場合、前記他のユーザの視点画像を大きく表示させる
請求項4に記載の画像処理装置。
【請求項6】
前記表示制御部は、前記視差が大きくなるにつれて、前記他のユーザの視点画像を前記ユーザの前記視線情報から得られる視野から外れる方向に移動させる
請求項5に記載の画像処理装置。
【請求項7】
前記表示制御部は、前記視差が前記第1の閾値よりも大きい第2の閾値以上になった場合、前記他のユーザの視点画像の表示を終了する
請求項6に記載の画像処理装置。
【請求項8】
前記情報は、視野が重なり合う割合であり、前記表示制御部は、前記割合が大きくなるにつれて、前記他のユーザの視点画像のサイズおよび透過率の少なくとも1つを大きくし、前記割合が小さくなるにつれて、前記他のユーザの視点画像のサイズおよび透過率の少なくとも1つを小さくする
請求項3に記載の画像処理装置。
【請求項9】
前記表示制御部は、前記割合が所定の閾値以上になった場合、前記他のユーザの視点画像の表示を終了する
請求項8に記載の画像処理装置。
【請求項10】
前記表示制御部は、前記他のユーザの視点画像の表示を終了した後、前記割合が前記所定の閾値以下になった場合、前記他のユーザの視点画像の表示を再開する
請求項9に記載の画像処理装置。
【請求項11】
前記表示制御部は、前記ユーザが前記他のユーザの視点画像に顔を向けた場合、前記他のユーザの視点画像を前記ユーザの視野の中心方向に移動させる
請求項3に記載の画像処理装置。
【請求項12】
前記表示制御部は、前記他のユーザの視点画像が前記ユーザの前記視野の中心に位置した状態で静止した場合、前記他のユーザの視点画像上にタイマを表示させる
請求項11に記載の画像処理装置。
【請求項13】
前記表示制御部は、前記タイマを終了させた場合、前記他のユーザの視点画像の表示を終了させ、前記他のユーザの視点画像と同一の前記ユーザの視点画像を表示させる
請求項12に記載の画像処理装置。
【請求項14】
前記表示制御部は、前記タイマを終了させる前に、前記ユーザが視線をずらした場合、前記他のユーザの視点画像の表示を終了させ、前記ユーザの視点画像を表示させる
請求項12に記載の画像処理装置。
【請求項15】
前記表示制御部は、前記ユーザの視点または前記他のユーザの視点が移動して、前記ユーザから見た前記他のユーザの視点の方向ベクトルの変化が所定の閾値以上になった場合、前記他のユーザの視点画像の表示を再開させる
請求項14に記載の画像処理装置。
【請求項16】
前記ユーザの前記視線情報は、前記ユーザの動きを検出するセンサから得られる
請求項3に記載の画像処理装置。
【請求項17】
前記センサは、ヘッドマウントディスプレイに設けられる
請求項16に記載の画像処理装置。
【請求項18】
前記他のユーザの視点画像のビットレート配分は、前記他のユーザの視点画像のサイズまたは透過率に基づいて変更される
請求項1に記載の画像処理装置。
【請求項19】
画像処理装置が、
仮想空間におけるユーザの視点から見た画像である前記ユーザの視点画像と、他のユーザの視点から見た前記他のユーザの視点画像と、前記他のユーザの位置を示す視点位置情報および視線方向を示す視線情報とを受信し、
前記他のユーザの前記視点位置情報および前記視線情報を用いて求められる前記仮想空間内の前記ユーザおよび前記他のユーザの位置関係に基づいて、前記ユーザの視点画像上に重畳する前記他のユーザの視点画像の表示を制御する
画像処理方法。
【請求項20】
仮想空間におけるユーザの視点から見た画像である前記ユーザの視点画像と、他のユーザの視点から見た前記他のユーザの視点画像と、前記他のユーザの位置を示す視点位置情報および視線方向を示す視線情報とを受信する受信部と、
前記他のユーザの前記視点位置情報および前記視線情報を用いて求められる前記仮想空間内の前記ユーザおよび前記他のユーザの位置関係に基づいて、前記ユーザの視点画像上に重畳する前記他のユーザの視点画像の表示を制御する表示制御部と
を備える画像処理装置と、
前記ユーザの視点画像と前記他のユーザの視点画像を、前記他のユーザの視点画像のサイズまたは透過率に応じたビットレート配分で前記画像処理装置に送信する送信部を
備える画像提供装置と
からなる画像提供システム。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、画像処理装置、画像処理方法、および画像提供システムに関し、特に、仮想空間において相手が見ている画像と相手のいる位置を同時に把握することができるようにした画像処理装置、画像処理方法、および画像提供システムに関する。
【背景技術】
【0002】
特許文献1においては、ヘッドマウントディスプレイ(HMD)で見える他のユーザの視線方向の画像を、ユーザが使用しているHMDに表示するようにした技術が提案されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1の提案では、表示されている他のユーザの視線方向の画像から、ユーザがどこにいるのかを把握することが難しい。
【0005】
本技術はこのような状況に鑑みてなされたものであり、仮想空間において相手が見ている画像と相手のいる位置を同時に把握することができるようにするものである。
【課題を解決するための手段】
【0006】
本技術の一側面の画像処理装置は、仮想空間におけるユーザの視点から見た画像である前記ユーザの視点画像と、他のユーザの視点から見た前記他のユーザの視点画像と、前記他のユーザの位置を示す視点位置情報および視線方向を示す視線情報とを受信する受信部と、前記他のユーザの前記視点位置情報および前記視線情報を用いて求められる前記仮想空間内の前記ユーザおよび前記他のユーザの位置関係に基づいて、前記ユーザの視点画像上に重畳する前記他のユーザの視点画像の表示を制御する表示制御部とを備える。
【0007】
本技術の他の側面の画像提供システムは、仮想空間におけるユーザの視点から見た画像である前記ユーザの視点画像と、他のユーザの視点から見た前記他のユーザの視点画像と、前記他のユーザの位置を示す視点位置情報および視線方向を示す視線情報とを受信する受信部と、前記他のユーザの前記視点位置情報および前記視線情報を用いて求められる前記仮想空間内の前記ユーザおよび前記他のユーザの位置関係に基づいて、前記ユーザの視点画像上に重畳する前記他のユーザの視点画像の表示を制御する表示制御部とを備える画像処理装置と、前記ユーザの視点画像と前記他のユーザの視点画像を、前記他のユーザの視点画像のサイズまたは透過率に応じたビットレート配分で前記画像処理装置に送信する送信部を備える画像提供装置とからなる。
【0008】
本技術の一側面においては、仮想空間におけるユーザの視点から見た画像である前記ユーザの視点画像と、他のユーザの視点から見た前記他のユーザの視点画像と、前記他のユーザの位置を示す視点位置情報および視線方向を示す視線情報とが受信される。そして、前記他のユーザの前記視点位置情報および前記視線情報を用いて求められる前記仮想空間内の前記ユーザおよび前記他のユーザの位置関係に基づいて、前記ユーザの視点画像上に重畳する前記他のユーザの視点画像の表示が制御される。
【0009】
本技術の他の側面においては、仮想空間におけるユーザの視点から見た画像である前記ユーザの視点画像と、他のユーザの視点から見た前記他のユーザの視点画像と、前記他のユーザの位置を示す視点位置情報および視線方向を示す視線情報とが受信される。そして、前記他のユーザの前記視点位置情報および前記視線情報を用いて求められる前記仮想空間内の前記ユーザおよび前記他のユーザの位置関係に基づいて、前記ユーザの視点画像上に重畳する前記他のユーザの視点画像の表示が制御される。また、前記ユーザの視点画像と前記他のユーザの視点画像が、前記他のユーザの視点画像の大きさまたは透過率に応じたビットレート配分で前記画像処理装置に送信される。
【発明の効果】
【0010】
本技術によれば、仮想空間において相手が見ている画像と相手のいる位置を同時に把握することができる。
【0011】
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
【図面の簡単な説明】
【0012】
【
図1】本技術を適用したモデルルーム内覧システムを説明する図である。
【
図3】視点非共有モードと視点共有モードの表示画面例を示す図である。
【
図7】ユーザ1の視点とユーザ2の視点が同一である合の子画面の水平方向の初期表示位置の例を示す図である。
【
図8】ユーザ1の視点とユーザ2の視点が異なる場合の子画面の水平方向の初期表示位置の例を示す図である。
【
図9】子画面のサイズが初期表示状態の場合の表示画面の例を示す図である。
【
図10】子画面のサイズが拡大表示された状態の表示画面の例を示す図である。
【
図11】子画面のサイズが最大表示された状態の表示画面の例を示す図である。
【
図12】子画面が表示画面の視野から外れた状態の表示画面の例を示す図である。
【
図13】子画面が表示画面の視野から消えた状態の表示画面の例を示す図である。
【
図14】子画面の表示割合とビットレート割り当て配分の例を示す図である。
【
図15】モデルルーム内覧システムのサービスのコンテンツの表示制御処理を説明するフローチャートである。
【
図16】
図15のステップS14における視点共有モードの表示制御処理を説明するフローチャートである。
【
図17】サーバの画像提供処理を説明するフローチャートである。
【
図18】
図17のステップS52の視点非共有モードの画像提供処理を説明するフローチャートである。
【
図19】
図17のステップS54の視点共有モードの画像提供処理を説明するフローチャートである。
【
図20】ユーザ1の視点とユーザ2の視点が同一である場合の子画面の表示画面の遷移の例を示す図である。
【
図21】
図20に続く、ユーザ1の視点とユーザ2の視点が同一である場合の表示画面の遷移の例を示す図である。
【
図22】ユーザ1の視点とユーザ2の視点が異なる場合の子画面の表示画面の遷移の例を示す図である。
【
図23】
図22に続く、ユーザ1の視点とユーザ2の視点が異なる場合の表示画面の遷移の例を示す図である。
【
図24】
図23に続く、ユーザ1の視点とユーザ2の視点が異なる場合の表示画面の遷移の例を示す図である。
【
図25】
図24に続く、ユーザ1の視点とユーザ2の視点が異なる場合の表示画面の遷移の例を示す図である。
【
図26】
図25に続く、ユーザ1の視点とユーザ2の視点が異なる場合の表示画面の遷移の例を示す図である。
【
図27】
図26に続く、ユーザ1の視点とユーザ2の視点が異なる場合の表示画面の遷移の例を示す図である。
【
図28】
図21乃至
図27を参照して上述した視点共有モードの表示制御処理を説明するフローチャートである。
【
図29】
図28に続く、視点共有モードの表示制御処理を説明するフローチャートである。
【
図30】
図29に続く、視点共有モードの表示制御処理を説明するフローチャートである。
【
図31】HMDのハードウェア構成例を示すブロック図である。
【
図32】サーバのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【0013】
以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
1.第1の実施の形態(モデルルーム内覧システム)
2.第2の実施の形態(モデルルーム内覧システムの他の例)
3.第3の実施の形態(観光システム)
【0014】
<第1の実施の形態>
<システムの構成例>
図1は、本技術を適用した画像提供システムとしての、モデルルーム内覧システムを説明する図である。
【0015】
モデルルーム内覧システムは、
図1に示すように、ユーザが、自宅のリビングや不動産屋にて、ヘッドマウントディスプレイ(HMD)を着用し、サーバにアクセスすることで、モデルルーム内覧サービスのコンテンツを視聴することに用いるものである。モデルルーム内覧システムは、不動産ビジネスなどに用いられる。自由視点画像空間であるモデルルームは、リビング、キッチン、寝室、トイレ、バスルームなどで構成される。
【0016】
図1の例においては、夫であるユーザ1がHMD11-1を着用して、サーバ12にアクセスし、モデルルーム中のリビングのコンテンツを見ている。妻であるユーザ2は、HMD11-2を着用して、サーバ12にアクセスし、モデルルーム中のキッチンのコンテンツを見ている。
【0017】
HMD11-1は、自由視点画像空間におけるユーザ1の位置を示す視点位置情報および視線方向を示す視線情報をサーバ12に送信し、サーバ12から送信されてくる画像を用いて、ユーザ1の視野(Field Of View)の範囲の画像である視野画像(View Port)を生成する。後述するように、HMD11-1において表示する視野画像は、サーバ12から送信されてきた視点画像に基づいて、HMD11-1において生成され、表示される。また、HMD11-1は、生成したユーザ1の視野画像の表示を制御する。
【0018】
ここで、視点位置情報とは、ユーザの自由視点画像空間内における立ち位置(頭の位置)を表す位置情報である。ユーザは、図示せぬコントローラなどを操作することで、立ち位置を変更することができる。また、視線情報とは、ユーザの視野を形成するためのPitch、Yawなどで表される視点を起点とするベクトル情報のことである。HMDの場合、ユーザは、首振り動作によって、視線を変えることができる。
【0019】
HMD11-2は、自由視点画像空間におけるユーザ2の視点位置情報および視線情報をサーバ12に送信し、サーバ12から送信されてくる画像を用いて、ユーザ2の視野の範囲の画像である視野画像を生成する。HMD11-2は、生成したユーザ2の視野画像の表示を制御する。
【0020】
サーバ12は、モデルルーム内覧システムを用いて視聴可能なコンテンツとして、例えば、モデルルームを複数の視点から撮像して得られた動画像を含む、いわゆる自由視点画像空間のコンテンツを有している。
【0021】
サーバ12は、自由視点画像空間におけるユーザ1の視点位置情報および視線情報に基づいて生成された画像を、HMD11-1に送信する。サーバ12は、自由視点画像空間におけるユーザ2の視点位置情報および視線情報に基づいて生成された画像を、HMD11-2に送信する。
【0022】
モデルルーム内覧システムを用いることにより、ユーザは、あたかもモデルルームで内覧しているかのような臨場感で、モデルルームを体験することができる。
【0023】
なお、ユーザは、操作端末として、HMDに限らず、スマートフォンやタブレット端末を用いて専用アプリケーションを立ち上げることで、モデルルーム内覧システムを利用することもできる。
【0024】
<自由視点画像空間の構成例について>
図2は、自由視点画像空間の構成例を示す図である。
【0025】
図2には、自由視点画像空間であるモデルルームを上から見た状態が模式的に示されている。
【0026】
モデルルームは、リビングとキッチンから構成される。リビングの上には、右側に設けられているドアを介してキッチンが繋がっている。
【0027】
1の数字を付して示す丸は、ユーザ1を表し、2の数字を付して示す丸は、ユーザ2を表す。丸と2つの直線が接する部が視点位置であり、視点から延びる2つの直線の間の範囲がユーザの視野を表す。
【0028】
ユーザ1は、リビングにいて、上方向を向いている。ユーザ2は、キッチンにいて左上方向を向いている。ユーザ2は、ユーザ1に対して、左上方向に位置する。
【0029】
ユーザ1とユーザ2は、ドアを介して、リビングとキッチンを行き来することができる。
【0030】
<視点非共有モードと視点共有モード>
図3は、HMD11-1における視点非共有モードと視点共有モードの表示画面例を示す図である。
【0031】
モデルルーム内覧システムは、表示モードとして、視点非共有モードと視点共有モードを有している。視点非共有モードは、各ユーザが自分の視野画像を表示する表示モードである。視点共有モードは、自分の視野画像の上に、他のユーザの視野画像を重畳して表示することで、他のユーザの視野画像を共有する表示モードである。
【0032】
HMD11-1およびHMD11-2がモデルルーム内覧サービスにログインすると、ユーザ1の視点位置情報および視線情報と、ユーザ2の視点位置情報および視線情報がそれぞれサーバ12に送信される。
【0033】
サーバ12は、自由視点画像空間におけるユーザ1の視点位置情報に基づいて生成されたユーザ1の視点から見たユーザ1の視点画像をHMD11-1に送信する。サーバ12は、自由視点画像空間におけるユーザ2の視点位置情報に基づいて生成されたユーザ2の視点から見たユーザ2の視点画像をHMD11-2に送信する。
【0034】
HMD11-1およびHMD11-2には、視点非共有モードの表示画面が表示される。
【0035】
表示画面V1は、視点非共有モードの画面である。HMD11-1は、表示画面V1に示されるように、サーバ12から供給された視点画像を用いてHMD11-1の視野に合わせて生成したユーザ1の視野画像(リビング)の表示を制御する。図示されないが、HMD11-2は、サーバ12から供給された視点画像を用いてHMD11-2の視野に合わせて生成したユーザ2の視野画像(キッチン)の表示を制御する。
【0036】
HMD11-2は、ユーザ2の操作に基づいて、ユーザ2が見ているキッチンの設備をユーザ1に見てほしいという視点共有を要求する信号である視点共有リクエスト信号をサーバ12に送信する。サーバ12は、自由視点画像空間におけるユーザ2の視点位置情報および視線情報と、ユーザ2の視点位置情報および視線情報に基づいて生成されたユーザ2の視点画像を、HMD11-1に送信する。
【0037】
表示画面V2は、視点共有モードの画面である。HMD11-1は、ユーザ1の視野画像の上に、ユーザ2の視野画像を子画面W1として重畳した表示画面V2を生成し、表示させる。HMD11-1に表示されるユーザ2の視野画像は、サーバ12から供給された視点画像を用いて子画面の視野に合わせて生成された画像である。
【0038】
表示画面V2において、ユーザ1が、子画面W1に視線を向ける。これに対応して、HMD11-1は、ユーザ1の視野画像の中央に移動させ、拡大した子画面W2を重畳した表示画面V3を生成し、表示させる。
【0039】
さらに、表示画面V3において、ユーザ1の視線が、子画面の中心と一致した場合、HMD11-1は、ユーザ1の視野画像の上に、略最大にした子画面W3を重畳させた表示画面V4を生成し、表示させる。
【0040】
以上のように、HMD11-1においては、ユーザ1が見ているリビングの視野画像に、ユーザ2が見ているキッチンの視野画像が重畳される。すなわち、モデルルーム内覧システムにおいては、自分が見ている視野画像を、他のユーザと共有することができる。
【0041】
また、以上のようにして、ユーザ1が見ている、表示画面における子画面(注視領域)のサイズに応じて、サーバ12においてはビットレートの割合が制御される。
【0042】
視点非共有モードの表示画面V1の場合、サーバ12は、ユーザ1の視点画像にすべてのビットレートを割り当てて伝送してくる。
【0043】
視点共有モードの表示画面V2の場合、サーバ12は、ユーザ1の視点画像とユーザ2の視点画像を同時に伝送するが、ユーザ2の視点画像へのビットレート割り当てはまだ低い。
【0044】
視点共有モードの表示画面V3の場合、サーバ12は、ユーザ1の視点画像とユーザ2の視点画像を同時に伝送する。このとき、ユーザ2の視点画像を優先的に送るために、サーバ12は、ユーザ2の視点画像へのビットレート割り当てを増大する。
【0045】
視点共有モードの表示画面V4の場合、サーバ12は、ユーザ1の視点画像とユーザ2の視点画像を同時に伝送する。このとき、サーバ12は、ユーザ2の視点画像へのビットレート割り当てを最優先で最大にする。
【0046】
<サーバの構成例>
図4は、サーバの構成例を示すブロック図である。
【0047】
サーバ12は、自由視点画像空間モデルDB31、視点画像生成部32-1、視点画像生成部32-2、視点画像圧縮部33-1、視点画像圧縮部33-2、視点画像圧縮部33-3、多重化部34、およびレート配分制御部35から構成される。
【0048】
図中、上り伝送とは、HMD11-1または11-2からサーバ12への伝送を表し、下り伝送とは、サーバ12からHMD11-1または11-2への伝送を表す。
【0049】
HMD11-1から送信されたユーザ1の視点位置情報および視線情報は、視点画像生成部32-1に供給される。HMD11-1から送信されたユーザ1が注視している子画面のサイズを示すユーザ1の注視領域情報は、レート配分制御部35に供給される。HMD11-2からユーザ2の視点位置情報および視線情報、並びに、視点共有リクエスト信号は、視点画像生成部32-2に供給される。ユーザ1の注視領域情報は、ユーザ1が注視している子画面の透過率を示す情報であってもよい。
【0050】
自由視点画像空間モデルDB31は、モデルルームを複数の視点から撮像して得られた動画像を含む自由視点の全天球画像を記憶する。全天球画像の自由度は、自由視点画像の自由度である6DoF(Degree of Freedom)である。なお、360°視点固定見回し型VR(Virtual Reality)の場合の自由度である3DoFに、複数視点(1つ以上の視点)が追加されたものが全天球画像の自由度であってもよい。
【0051】
視点画像生成部32-1は、HMD11-1から供給されたユーザ1の視点位置情報および視線情報に基づいて、自由視点画像空間モデルDB31の全天球画像を用いて、ユーザ1の視点画像であるユーザ1の視点の全天球画像を生成する。視点画像生成部32-1は、生成したユーザ1の視点の全天球画像を、視点画像圧縮部33-1に出力する。
【0052】
視点画像生成部32-2は、HMD11-2から供給されたユーザ2の視点位置情報および視線情報に基づいて、自由視点画像空間モデルDB31の全天球画像を用いて、ユーザ2の視点画像であるユーザ2の視点の全天球画像を生成する。視点画像生成部32-2は、生成したユーザ2の視点の全天球画像を、視点画像圧縮部33-3に出力する。また、視点画像生成部32-2は、HMD11-2から視点共有リクエスト信号が供給された場合、生成したユーザ2の視点の全天球画像を、視点画像圧縮部33-2にも出力する。
【0053】
視点画像圧縮部33-1は、視点非共有モードの場合、ユーザ1の視点の全天球画像をERP(EquiRectangular Projection:正距円筒図法)投影変換し、ユーザ1の圧縮ERP画像を生成する。視点共有モードの場合、ユーザ1の圧縮ERP画像は、レート配分制御部35から供給されたビットレートを制御するビットレート制御信号に基づいて生成される。視点画像圧縮部33-1は、生成したユーザ1の圧縮ERP画像を多重化部34に出力する。なお、変換の方式はERPに限定されない。
【0054】
視点画像圧縮部33-2は、視点共有モードの場合、レート配分制御部35から供給されたビットレートを制御するビットレート制御信号に基づいて、ユーザ2の視点の全天球画像をERP投影変換して、ユーザ2の圧縮ERP画像を生成する。視点画像圧縮部33-2は、生成したユーザ2の圧縮ERP画像を多重化部34に出力する。
【0055】
視点画像圧縮部33-3は、ユーザ2の視点の全天球画像をERP投影変換して、ユーザ2の圧縮ERP画像を生成する。視点画像圧縮部33-3は、生成したユーザ2の圧縮ERP画像を、HMD11-2に送信する。
【0056】
多重化部34は、視点非共有モードの場合、視点画像圧縮部33-1から供給されたユーザ1の圧縮ERP画像を用いて、圧縮画像ストリームを生成する。多重化部34は、視点共有モードの場合、視点画像圧縮部33-1から供給されたユーザ1の圧縮ERP画像、視点画像圧縮部33-2から供給されたユーザ2の圧縮ERP画像を多重化し、圧縮画像ストリームを生成する。多重化部34は、圧縮画像ストリームをHMD11-1に送信する。このとき、ユーザ2の視点位置情報および視線情報もメタデータとして送信される。
【0057】
レート配分制御部35は、視点共有モードの場合、HMD11-1から供給されたユーザ1の注視領域情報に基づいて、ユーザ1の視点の全天球画像とユーザ2の視点の全天球画像のビットレート配分を制御する。レート配分制御部35は、ユーザ1の視点画像とユーザ2の視点画像のビットレート配分を制御するレート制御信号を、視点画像圧縮部33-1および視点画像圧縮部33-2に出力する。
【0058】
<HMDの構成例>
図5は、HMDの構成例を示すブロック図である。
【0059】
HMD11-1は、画像処理部51-1、画像処理部51-2、合成処理部52、および表示制御部53から構成される。
【0060】
視点非共有モードの場合、サーバ12は、ユーザ1向けのユーザ1の圧縮ERP画像からなる圧縮画像ストリームを送信してくる。
【0061】
これに対して、HMD11-2から視点共有リクエスト信号があった場合、サーバ12は、ユーザ1向けのユーザ1の圧縮ERP画像とユーザ1向けのユーザ2の圧縮ERP画像とからなる、多重化された圧縮画像ストリームを送信してくる。また、サーバ12は、メタデータとして、ユーザ2の視点共有リクエスト信号とユーザ2の視点位置情報および視線情報を送ってくる。
【0062】
ユーザ1向けのユーザ1の圧縮ERP画像は、画像処理部51-1に供給される。ユーザ1向けのユーザ2の圧縮ERP画像とメタデータは、画像処理部51-2に供給される。
【0063】
HMD11-1において、ユーザ1の視点位置情報および視線情報は、操作入力部71から入力され、画像処理部51-1に供給され、サーバ12に送信される。操作入力部71は、コントローラまたはHMD11-1に設置されている加速度センサなどから構成される。加速度センサは、ジャイロスコープおよびMEMSセンサなどからなり、HMDや携帯端末に搭載される。加速度センサは、例えば、ユーザの動きを検出して視線ベクトルを動かす機能を有する。
【0064】
また、ユーザ1の視点位置情報および視線情報は、サーバ12にも送信される。なお、ユーザ1の他のユーザとの視点共有の要求を示すユーザ1の視点共有リクエスト信号も、ユーザ1の要求に応じて、サーバ12に送信される。
【0065】
画像処理部51-1は、ユーザ1の圧縮ERP画像に対して、所定の画像処理を行う。画像処理部51-1は、圧縮ERP画像デコード処理部61-1および視野画像生成処理部62-1から構成される。
【0066】
圧縮ERP画像デコード処理部61-1は、ユーザ1の圧縮ERP画像をデコード処理して、ユーザ1のERP画像を生成する。圧縮ERP画像デコード処理部61-1は、生成したERP画像を、視野画像生成処理部62-1に出力する。
【0067】
視野画像生成処理部62-1は、ユーザ1のERP画像を用い、ユーザ1の視点位置情報および視線情報に基づき、HMD11-1の視野に合わせて、ユーザ1の視野画像を生成する。視野画像生成処理部62-1は、生成したユーザ1の視野画像を、合成処理部52に出力する。ユーザ1の視点位置情報および視線情報も合成処理部52に出力される。なお、視野画像の視野の広さは、表示装置の性能によって制約されることがある。
【0068】
画像処理部51-2は、ユーザ2の視点共有リクエスト信号を受け取った場合、ユーザ2の圧縮ERP画像に対して、所定の画像処理を行う。画像処理部51-2は、圧縮ERP画像デコード処理部61-2および視野画像生成処理部62-2から構成される。
【0069】
圧縮ERP画像デコード処理部61-2は、ユーザ2の圧縮ERP画像をデコード処理して、ユーザ2のERP画像を生成する。圧縮ERP画像デコード処理部61-2は、生成したERP画像を、視野画像生成処理部62-2に出力する。
【0070】
視野画像生成処理部62-2は、ユーザ2のERP画像を用い、ユーザ2の視点位置情報および視線情報に基づき、子画面Wの視野に合わせて、ユーザ2の視野画像を生成し、生成したユーザ2の視野画像を、合成処理部52に出力する。ユーザ2の視点位置情報および視線情報も合成処理部52に出力される。
【0071】
合成処理部52は、ユーザ1の視野画像上に、ユーザ2の視野画像からなる子画面Wを重畳して、表示画面Vを生成する。合成処理部52は、視点非共有モードで、ユーザ2の視野画像がない場合、ユーザ1の視野画像を用いて、表示画面Vを生成する。合成処理部52は、生成した表示画面Vを表示制御部53に出力する。
【0072】
表示制御部53は、合成処理部52から供給された表示画面Vを、出力部72から出力させる。出力部72は、LCDまたは有機ELなどで構成される。
【0073】
<子画面の初期表示位置の例>
図6は、子画面の初期表示位置の例を示す図である。
【0074】
表示画面Vは、ユーザ1の視野を表している。子画面Wの水平方向のサイズは、表示画面Vの視野の水平方向のおおよそ4分の1となるように設定されている。
【0075】
子画面Wの垂直方向の初期位置は、太い破線で示された表示画面Vの視野の垂直方向の中央部と子画面Wの視野の垂直方向の中央部を一致させるように決められる。
【0076】
子画面Wの水平方向の初期位置は、表示画面Vの視野の左4分の1または右4分の1の表示エリアとなる。
図6において、子画面Wは、表示画面Vの視野の左4分の1に配置されている。
【0077】
<子画面の初期表示位置の例>
図7は、ユーザ1の視点とユーザ2の視点が同一である場合の子画面の水平方向の初期表示位置の例を示す図である。
【0078】
図7において、破線で示す視線ベクトルPは、ユーザ1の視線ベクトルを表しており、破線で示す視線ベクトルQは、ユーザ2の視線ベクトルを表している。
【0079】
ユーザ1の視点とユーザ2の視点が同一である場合、子画面の水平方向の初期表示位置は、ユーザ1の視線ベクトルPに対して、ユーザ2の視線ベクトルQが左右どちら側にあるかに応じて決められる。
【0080】
図7の場合、ユーザ2の視線ベクトルQは、ユーザ1の視線ベクトルPよりも左側にあるので、子画面Wは、表示画面Vの左側に配置される。
【0081】
図8は、ユーザ1の視点とユーザ2の視点が異なる場合の子画面の水平方向の初期表示位置の例を示す図である。
【0082】
図8において、破線で示す視線ベクトルPは、ユーザ1の視線ベクトルを表しており、2の数字が示される丸と三角形の接点は、ユーザ2の視点位置Rを表している。
【0083】
ユーザ1とユーザ2が異なる視点にある場合、子画面の水平方向の初期表示位置は、ユーザ1の視線ベクトルPに対して、ユーザ2の視点位置Rが左右どちら側にあるかに応じて決められる。
【0084】
図8の場合、ユーザ2の視点位置Rは、ユーザ1の視線ベクトルPよりも左側にあるので、子画面Wは、表示画面Vの左側に配置される。
【0085】
なお、
図7および
図8において、表示位置例を示したが、子画面の水平方向の初期表示位置は、特に意味を持たせずに配置するようにしてもよい。
【0086】
<子画面の表示位置の変化例>
図9は、子画面のサイズが初期表示状態の場合の表示画面の例を示す図である。
【0087】
図9においては、子画面Wのサイズが表示画面Vの視野の水平サイズのおおよそ4分の1である初期表示状態の表示画面Vが示されている。
【0088】
ユーザ1が表示画面Vの視野の水平サイズF1の中央部分を見た場合の視線ベクトルP1と、ユーザ1が子画面Wの視野の水平サイズF2の中央部分を見た場合の視線ベクトルP2は、表示画面Vの視野の水平サイズF1と子画面Wの視野の水平サイズF2によって定義される。
【0089】
すなわち、視線ベクトルP1は、表示画面Vの視野の水平サイズF1に応じて求まり、視線ベクトルP2は、子画面Wの初期表示位置の決定に応じて求まる。求まった視線ベクトルP1と視線ベクトルP2のズレである視差が角度として求められたものが、視差角dである。子画面Wは、視差角dに応じて拡大表示されたり、視野から外に外れたり、最終的に視野から消えた状態となったりする。
【0090】
図10は、子画面のサイズが拡大表示された状態の表示画面の例を示す図である。
【0091】
図10においては、子画面Wのサイズが表示画面Vの視野の水平サイズのおおよそ2分の1である表示画面Vが示されている。破線の矩形は、
図9の初期表示状態の子画面の位置を表している。
【0092】
初期表示状態の表示画面Vから、2つの視線ベクトルP1およびP2のズレ、すなわち、視差角dが小さくなる方向に、ユーザ1がHMD11-1で首振り動作を行うと、子画面Wは、破線の矩形の位置から、表示画面Vの中央に移動されるとともに、拡大表示される。
【0093】
図11は、子画面のサイズが最大表示された状態の表示画面の例を示す図である。
【0094】
図11においては、子画面Wのサイズが表示画面Vの視野の水平サイズのおおよそ95%である表示画面Vが示されている。2つの破線の矩形は、左側から
図9の初期表示状態の子画面の位置、
図10の表示状態の子画面の位置を表している。
【0095】
2つの視線ベクトルP1およびP2が略一致、または視差角dが所定の閾値以下になった場合、子画面Wのサイズは、略最大とされる。このとき、子画面Wの中心位置は、破線の矩形の位置から、表示画面Vの中心位置に移動されて表示される。
【0096】
図12は、子画面が表示画面の視野から外れた状態の表示画面の例を示す図である。
【0097】
図12においては、子画面Wのサイズが表示画面Vの視野の水平サイズのおおよそ4分の1のままで、表示画面Vの視野から外れていく状態の表示画面Vが示されている。破線の矩形は、
図9の初期表示状態の子画面を表している。
【0098】
初期表示状態の表示画面Vから、2つの視線ベクトルP1およびP2の視差角dが大きくなる方向に、ユーザ1がHMD11-1で首振り動作を行う。子画面Wは、サイズが初期状態のままで、破線の矩形の位置から、ユーザ1の視野から外れる方向に移動して表示される。
【0099】
図13は、子画面が表示画面の視野から消えた状態の表示画面の例を示す図である。
【0100】
図13においては、子画面Wのサイズが表示画面Vの視野の水平サイズのおおよそ4分の1のままで、表示画面Vの視野から消えた状態の表示画面Vが示されている。破線の矩形は、右側から、
図9の初期表示状態の子画面、
図12の表示状態の子画面を表している。
【0101】
ユーザ1のHMD11-1の首振り動作により、2つの視線ベクトルP1およびP2の視差角dがさらに大きくなると、子画面Wは、表示画面Vの視野から消える。
【0102】
以上のように、子画面Wは、視差角dに応じて拡大表示されたり、視野から外れて表示されたり、視野から消えた状態となったりする。
【0103】
<子画面の表示割合とビットレート割り当て配分の例>
図14は、子画面の表示割合とビットレート割り当て配分の例を示す図である。
【0104】
図14において、左から順に、子画面Wが消えた状態、子画面Wが外れていく状態、子画面の初期表示状態、子画面Wの拡大状態、子画面の最大拡大状態の各表示画面が示されている。各表示画面の下には、それぞれの状態における表示画面と子画面のビットレート割り当て配分が示されている。
【0105】
子画面が消えた状態では、表示画面と子画面の表示割合は、100%対0%である。子画面が外れていく状態では、表示画面と子画面の表示割合は、90%対10%である。子画面の初期表示状態では、表示画面と子画面の表示割合は、75%対25%である。子画面の拡大状態では、表示画面と子画面の表示割合は、5%対95%である。
【0106】
ユーザ1の視差角は、左右それぞれ90度とされる。子画面のサイズがおおよそ4分の1になるときの視差角は、90/4=22.5°である。左半分の視差角が45°なので、22.5°の子画面を画面の左端に配置した時の視線ベクトルの視差角を計算すると、45-22.5/2=33.75°となる。
【0107】
さらに、ユーザ1の視線方向とユーザ2の視線方向の一致率である視線一致率は、視差角の値に応じて定義される。
【0108】
(1)視差角初期値33.75°で、画面サイズ4分の1の場合、視線一致率は、25%とする。
【0109】
(2)視差角が最小値の0度で、画面サイズ100%の(実際には、95%上限として親画面は周辺に少しだけ残す)場合、視線一致率は、100%とする。
【0110】
差角33.75°以上の場合、上記(1)および(2)の2点から求まる変化割合および視差角の増大に応じて、視差一致率は減少され、0%乃至25%となる。
【0111】
以上のように、HMDの首振り動作に対応した視差一致率または表示割合に応じてビットレート配分を可変にすることができる。なお、ビットレート配分は、第2の実施の形態において後述する透過率に応じて可変にするようにしてもよい。
【0112】
<HMDの動作>
図15は、HMD11-1が行う、モデルルーム内覧システムのサービスのコンテンツの表示制御処理を説明するフローチャートである。
【0113】
ステップS11において、操作入力部71から供給されたログインを要求するログイン信号をサーバ12に送信することにより、HMD11-1は、モデルルーム内覧システムのサービスにログインをする。視野画像生成処理部62-1に、操作入力部71からユーザ1の視点位置情報および視線情報が供給される。
【0114】
ステップS12において、視点非共有モードの表示制御処理が行われる。
【0115】
視点非共有モードの場合、サーバ12は、圧縮画像ストリームとして、ユーザ1向けのユーザ1の圧縮ERP画像を送信してくる。
【0116】
すなわち、視点非共有モードの表示制御処理として、圧縮ERP画像デコード処理部61-1は、ユーザ1の圧縮ERP画像をデコード処理して、ERP画像を生成する。視野画像生成処理部62-1は、ユーザ1の視点位置情報および視線情報に基づいて、ユーザ1の視野画像を生成する。合成処理部52は、視点非共有モードの場合、ユーザ1の視野画像を用いて、表示画面Vを生成する。表示制御部53は、合成処理部52から供給された表示画面Vを、出力部72から出力させる。
【0117】
ユーザ2の視点共有リクエストがあった場合、サーバ12から送信されてくるユーザ2の視点共有リクエスト信号が、画像処理部51-2に供給される。
【0118】
ステップS13において、画像処理部51-2は、サーバ12から、視点共有リクエストを受け取ったか否かを判定する。ステップS13において、視点共有リクエストを受け取ったと判定された場合、処理は、ステップS14に進む。
【0119】
ステップS14において、視点共有モードの表示制御処理が行われる。視点共有モードの表示制御処理の詳細は、
図16を参照して後述する。ステップS14の処理により、ユーザ1の視野画像上に、ユーザ2の視野画像からなる子画面Wが重畳されて、表示画面Vが生成され、生成された表示画面Vが、出力部72から出力される。
【0120】
一方、ステップS13において、視点共有リクエストを受け取っていないと判定された場合、処理は、ステップS15に進む。
【0121】
ステップS15において、画像処理部51-1は、コンテンツ表示制御処理を終了するか否かを判定する。ステップS15において、コンテンツ表示制御処理を終了しないと判定された場合、ステップS12に戻り、それ以降の処理が繰り返される。
【0122】
ステップS15において、コンテンツ表示制御処理を終了すると判定された場合、
図15のコンテンツ表示制御処理は終了される。
【0123】
図16は、
図15のステップS14における視点共有モードの表示制御処理を説明するフローチャートである。
【0124】
ステップS31において、ユーザ2の視野画像が、ユーザ1の視野画像内に子画面表示される。
【0125】
HMD11-2から視点共有リクエスト信号があった場合、サーバ12は、ユーザ1向けのユーザ1の圧縮ERP画像とユーザ1向けのユーザ2の圧縮ERP画像からなる、多重化された圧縮画像ストリームを送信する。また、サーバ12は、ユーザ2の視点共有リクエスト信号とユーザ2の視点位置情報および視線情報が含まれるメタデータを送信する。
【0126】
すなわち、視点共有モードの表示制御処理においては、視点非共有モードの表示制御処理に加えて、圧縮ERP画像デコード処理部61-2は、ユーザ2の圧縮ERP画像をデコード処理して、ERP画像を生成する。視野画像生成処理部62-2は、ユーザ2の視点位置情報および視線情報に基づいて、ユーザ2の視野画像を生成する。
【0127】
合成処理部52は、ユーザ1の視点位置情報および視線情報並びにユーザ2の視点位置情報および視線情報に基づいて、ユーザ1の視野画像上に、ユーザ2の視野画像からなる子画面Wを重畳して、表示画面Vを生成する。表示制御部53は、合成処理部52から供給された表示画面Vを、出力部72から出力させる。このとき、ユーザ1の注視領域情報がサーバ12に送信される。
【0128】
ステップS32において、合成処理部52は、ユーザ1の視線情報に基づいて、ユーザ1が子画面の方向に視線を移動させたか否かを判定する。ステップS32において、ユーザ1が子画面の方向に視線を移動させたと判定された場合、処理は、ステップS33に進む。
【0129】
ステップS33において、合成処理部52は、子画面を表示画面の視野の中央に向かって、移動させるとともに、拡大表示させる。このとき、ユーザ1の注視領域情報がサーバ12に送信される。
【0130】
ステップS34において、合成処理部52は、子画面が表示画面の視野の中央に移動したときに、子画面を最大表示させる。このとき、ユーザ1の注視領域情報がサーバ12に送信される。
【0131】
ステップS34の後、ステップS32に戻り、それ以降の処理が繰り返される。
【0132】
一方、ステップS32において、ユーザ1が子画面の方向に視線を移動させていないと判定された場合、処理は、ステップS35に進む。
【0133】
ステップS35において、ユーザ1の視線情報に基づいて、ユーザ1が子画面の反対方向に視線を移動させたか否かを判定する。ステップS35において、ユーザ1が子画面の反対方向に視線を移動させていないと判定された場合、ステップS31に戻り、それ以降の処理が繰り返される。
【0134】
ステップS35において、ユーザ1が子画面の反対方向に視線を移動させたと判定された場合、処理は、ステップS36に進む。
【0135】
ステップS36において、合成処理部52は、子画面を、表示画面の視野の外に向かって移動させるとともに、縮小表示させる。このとき、ユーザ1の注視領域情報がサーバ12に送信される。
【0136】
ステップS37において、合成処理部52は、子画面が、表示画面の視野の外に完全に出たか否かを判定する。ステップS37において、子画面が、表示画面の視野の外に完全に出たと判定された場合、視点共有モードの表示制御処理は終了される。
【0137】
ステップS37において、表示画面の視野の外に完全に出ていないと判定された場合、ユーザ1の注視領域情報がサーバ12に送信され、ステップS31に戻り、それ以降の処理が繰り返される。
【0138】
なお、HMD11-1を例に説明したが、HMD11-2の場合も同様の処理が行われる。
【0139】
<サーバの動作>
図17は、サーバ12の画像提供処理を説明するフローチャートである。
【0140】
図17の例においては、ユーザ2のHMD11-2から送信されてきた視点共有リクエストの例が示されているが、ユーザ1のHMD11-1の場合にもサーバ12においては同様の処理が行われる。
【0141】
ステップS51において、視点画像生成部32-1および視点画像生成部32-2は、ユーザの視点位置情報および視線情報を受け取ったと判定されるまで待機している。ステップS51において、ユーザの視点位置情報および視線情報を受け取ったと判定された場合、処理は、ステップS52に進む。
【0142】
ステップS52において、視点非共有モードの画像生成処理が行われる。視点非共有モードの画像生成処理の詳細は、
図18を参照して後述する。ステップS52の処理により、ユーザ1の圧縮ERP画像が生成され、生成されたユーザ1の圧縮ERP画像が、ユーザ1のHMD11-1に送信される。ユーザ2の圧縮ERP画像が生成され、生成されたユーザ2の圧縮ERP画像が、ユーザ2のHMD11-2に送信される。
【0143】
ステップS53において、視点画像生成部32-2は、ユーザ2から送信された視点共有リクエスト信号を受け取ったか否かを判定する。ステップS53において、ユーザ2から送信された視点共有リクエスト信号を受け取ったと判定された場合、処理は、ステップS54に進む。
【0144】
ステップS54において、視点共有モードの画像提供処理が行われる。視点共有モードの画像提供処理の詳細は、
図19を参照して後述する。ステップS54の処理により、ユーザ1の圧縮ERP画像が生成される。ユーザ2の圧縮ERP画像が生成され、生成されたユーザ2の圧縮ERP画像が、ユーザ2のHMD11-2に送信される。また、ユーザ2の圧縮ERP画像は、ユーザ1の圧縮ERP画像と多重化されて、ユーザ2の視点位置情報および視線情報などのメタデータとともに、ユーザ1のHMD11-1に送信される。
【0145】
一方、ステップS53において、ユーザ2から送信された視点共有リクエスト信号を受け取っていないと判定された場合、ステップS52に戻り、それ以降の処理が繰り返される。
【0146】
ステップS55において、視点画像生成部32-1は、画像生成処理を終了するか否かを判定する。ステップS55において、画像生成処理を終了しないと判定された場合、ステップS52に戻り、それ以降の処理が繰り返される。
【0147】
ステップS55において、画像提供処理を終了すると判定された場合、
図17の画像提供処理は終了される。
【0148】
図18は、
図17のステップS52の視点非共有モードの画像提供処理を説明するフローチャートである。
【0149】
HMD11-1から送信されてくるユーザ1の視点位置情報および視線情報が視点画像生成部32-1に供給される。
【0150】
ステップS71において、視点画像生成部32-1は、HMD11-1から供給されたユーザ1の視点位置情報および視線情報に基づいて、自由視点画像空間モデルDB31の全天球画像を用いて、ユーザ1の視点の全天球画像を生成する。
【0151】
ステップS72において、視点画像圧縮部33-1は、ユーザ1の視点の全天球画像を ERP投影変換して、ユーザ1の圧縮ERP画像を生成する。
【0152】
ステップS73において、多重化部34は、視点画像圧縮部33-1から供給されたユーザ1の圧縮ERP画像を、ユーザ1のHMD11-1に送信する。
【0153】
HMD11-2から送信されてくるユーザ2の視点位置情報および視線情報が視点画像生成部32-2に供給される。
【0154】
ステップS74において、視点画像生成部32-2は、HMD11-2から供給されたユーザ2の視点位置情報および視線情報に基づいて、自由視点画像空間モデルDB31の全天球画像を用いて、ユーザ2の視点の全天球画像を生成する。
【0155】
ステップS75において、視点画像圧縮部33-3は、ユーザ2の視点の全天球画像を ERP投影変換して、ユーザ2の圧縮ERP画像を生成する。
【0156】
ステップS76において、視点画像圧縮部33-3は、ユーザ2の圧縮ERP画像を、ユーザ2のHMD11-2に送信する。
【0157】
図19は、
図17のステップS54の視点共有モードの画像提供処理を説明するフローチャートである。
【0158】
HMD11-1から送信されたユーザ1の注視領域情報は、レート配分制御部35に供給される。
【0159】
ステップS91において、レート配分制御部35は、HMD11-1から供給されたユーザ1の注視領域情報に基づいて、ユーザ1の視点の全天球画像とユーザ2の視点の全天球画像のビットレート配分を制御する。
【0160】
ステップS92において、視点画像生成部32-1は、HMD11-1から供給されたユーザ1の視点位置情報および視線情報に基づいて、自由視点画像空間モデルDB31の全天球画像を用いて、ユーザ1の視点の全天球画像を生成する。
【0161】
ステップS93において、視点画像圧縮部33-1は、レート配分制御部35から供給されたレート制御信号に応じて、ユーザ1の視点の全天球画像を ERP投影変換して、ユーザ1の圧縮ERP画像を生成する。
【0162】
ステップS94において、視点画像生成部32-2は、HMD11-2から供給されたユーザ2の視点位置情報および視線情報に基づいて、自由視点画像空間モデルDB31の全天球画像を用いて、ユーザ2の視点の全天球画像を生成する。
【0163】
ステップS95において、視点画像圧縮部33-2は、レート配分制御部35から供給されたレート制御信号に応じて、ユーザ2の視点の全天球画像を ERP投影変換して、ユーザ1向けのユーザ2の圧縮ERP画像を生成する。
【0164】
ステップS96において、多重化部34は、視点画像圧縮部33-1から供給されたユーザ1の圧縮ERP画像と、視点画像圧縮部33-2から供給されたユーザ2の圧縮ERP画像とを多重化して、ユーザ1に送信する。
【0165】
ステップS97において、視点画像圧縮部33-3は、ユーザ2の視点の全天球画像を ERP投影変換して、ユーザ2向けのユーザ2の圧縮ERP画像を生成する。
【0166】
ステップS98において、視点画像圧縮部33-3は、ユーザ2の圧縮ERP画像を、ユーザ2のHMD11-2に送信する。
【0167】
以上のように、本技術においては、仮想空間内の位置関係に基づいて、ユーザの視野画像の上に重畳する他のユーザの視野画像の表示が制御される。
【0168】
これにより、他のユーザのいる位置と他のユーザの視野画像の内容が同時にわかるため、他のユーザの画像に興味があれば、リモートコントローラなどを操作することで簡単に移動することができる。
【0169】
また、他のユーザの視野画像への視線情報に応じて、ユーザの画像と他のユーザの画像へのビットレートが配分されるので、伝送効率が向上される。
【0170】
さらに、他のユーザの視野画像への視線情報に応じて、相手の視野画像を選択(あるいはキャンセル)し、子画面の大きさが変更される。
【0171】
これにより、興味の有無に応じて、他のユーザの画像を表示させることができる。
【0172】
<第2の実施の形態>
<子画面の表示方法の他の例>
次に、モデルルーム内覧システムにおける視点共有モード中の子画面の表示方法の他の例について説明する。
【0173】
図20は、ユーザ1の視点とユーザ2の視点が同一である場合の表示画面の遷移の例を示す図である。
【0174】
図20においては、ユーザ1の視点とユーザ2の視点が同一である場合の表示画面Vにおける表示状態の遷移が示されている。表示画面Vに表示される子画面Wの濃度は、薄いほど透過率が高いことを示している。表示画面Vに示される矢印は、ユーザ1の視線方向を示している。表示状態の遷移の下側には、ユーザ1とユーザ2が存在する自由視点画像空間を真上から見た状態が示されている。
【0175】
図20のAは、自由視点画像空間において、ユーザ1の視野とユーザ2の視野が重なっていないときの、ユーザ1が閲覧中の視野画像内に、ユーザ2の視野画像が子画面Wとして表示された表示画面Vを示す図である。
【0176】
ユーザ1の視野画像内における子画面Wの位置は、自由視点画像空間におけるユーザ2の視線方向と一致する。
【0177】
図20のBは、HMDを装着したユーザ1が子画面Wに顔を向けることで、自由視点画像空間において、ユーザ1とユーザ2の視野が重なり合ったときの表示画面Vを示す図である。
【0178】
表示画面Vにおいては、視野の重なり合う割合に応じて、大きさが拡大され、半透過状態となった状態の子画面が表示されている。なお、動きの検出がスマートフォンの場合は、スマートフォンを手に持った状態で向きを変える動作が、HMDの場合に子画面Wに顔を向ける動作に相当する。
【0179】
視野の重なり合う割合は、マイナス方向も考慮される。マイナスとは、ユーザ同士の視野の重なりがなく、視線方向の隔たりが大きい場合を表す。
【0180】
図20のCは、自由視点画像空間におけるユーザ1とユーザ2の視野の重なり合う割合が大きくなったときの表示画面Vを示す図である。
【0181】
表示画面Vにおいては、
図20のBの場合よりもさらに拡大率と透過率を上げて表示された子画面Wが表示されている。
【0182】
図21は、
図20に続く、ユーザ1とユーザ2が同一視点にいる場合の表示画面の遷移の例を示す図である。
【0183】
図21のAは、自由視点画像空間におけるユーザ1とユーザ2の視野の重なり合う割合がある閾値を超えたときの表示画面Vを示す図である。
【0184】
表示画面Vにおいては、視野の重なり合う割合がある閾値を超えた時点で子画面Wの表示が消去された後に、ユーザ1の視野画像のみが表示されている。
【0185】
図21のBは、ユーザ1とユーザ2の視野の重なり合う割合がある閾値を一旦超えた場合に、ある閾値以下に再度なるまでの表示画面Vを示す図である。
【0186】
表示画面Vにおいては、子画面Wの表示が消去されて、ユーザ1の視野画像のみが表示される状態が継続されている。
【0187】
その後、自由視点画像空間におけるユーザ1とユーザ2の視野の重なり合う割合がある閾値以下になると、
図20のAに示された表示画面Vのように、子画面表示が再び開始される。
【0188】
図22は、ユーザ1の視点とユーザ2の視点が異なる場合の表示画面の遷移の例を示す図である。
【0189】
図22においては、自由視点画像空間においてユーザ1の視点とユーザ2の視点が異なる場合の表示画面Vにおける表示状態の遷移が示されている。表示画面V上の矢印は、ユーザ1の視線方向を示している。表示状態の遷移の下側には、ユーザ1とユーザ2が存在する自由視点画像空間を真上から見た状態が示されている。
【0190】
図22のAは、ユーザ1が閲覧中の視野画像内に、ユーザ2の視野画像が子画面Wとして表示された状態の表示画面Vを示す図である。
【0191】
ユーザ1の視野画像内における子画面Wの位置は、自由視点画像空間におけるユーザ1から見たユーザ2の視点の方向と一致している。
【0192】
図22のBは、自由視点画像空間においてHMDを装着したユーザ1が、ユーザ2の視点の方向を向いたとき、すなわち、子画面Wにユーザ1の顔を向けたときの表示画面Vを示す図である。
【0193】
表示画面Vにおいては、ユーザ1の視野のより中心に移動された子画面Wが表示されている。
【0194】
図23は、
図22に続く、ユーザ1の視点とユーザ2の視点が異なる場合の表示画面の遷移の例を示す図である。
【0195】
図23のAは、自由視点画像空間において、ユーザ1の視線方向上にユーザ2の視点が位置する状態になったときの表示画面Vを示す図である。
【0196】
表示画面Vにおいては、ユーザ1の視野の中心に子画面Wが表示されている。
【0197】
図23のBは、自由視点画像空間において、ユーザ1の視線方向上にユーザ2の視点が位置する状態で、すなわち、子画面Wがユーザ1の視野の中心に位置した状態で、N秒間静止状態を保ったときの表示画面Vを示す図である。
【0198】
表示画面においては、子画面W上にカウントダウンタイマ(数字の「5」)が表示されている。
【0199】
図24は、
図23に続く、ユーザ1の視点とユーザ2の視点が異なる場合の表示画面の遷移の例を示す図である。
【0200】
図24のAは、カウントダウンタイマが「0」になり、矢印に示されるようにユーザ1の視点がユーザ2の視点に移動する直前の表示画面Vを示す図である。
【0201】
表示画面Vにおいては、子画面W上にカウントダウンタイマ(数字の「0」)が表示されている。
【0202】
図24のBは、ユーザ1の視点がユーザ2の視点に移動した直後の状態の表示画面Vを示す図である。
【0203】
表示画面Vにおいては、点線に示されるように子画面Wの表示が終了されて、移動した後のユーザ1の視点画像が表示されている。表示画面Vに表示されるユーザ1の視点画像は、ユーザ2の視点画像と同じ視点画像である。
【0204】
なお、視点の移動は、瞬間移動(ジャンプ)であってもよいし、例えば、リモートコントローラの操作による連続的な移動であってもよい。
【0205】
図25は、
図24に続く、ユーザ1の視点とユーザ2の視点が異なる場合の表示画面の遷移の例を示す図である。
【0206】
図25のAは、ユーザ1の視点がユーザ2の視点と同じ位置になった後、さらに、ユーザ1の視線を、ユーザ2の視線と一致する方向に移動させたときの表示画面Vを示す図である。
【0207】
図25のBは、ユーザ1とユーザ2の視点および視線が一致したときの表示画面Vを示す図である。
【0208】
表示画面Vは、
図21を参照して上述したユーザ1とユーザ2とが同じ視点位置にある状態(
図21のAの状態)と同じ状態に遷移したものである。
【0209】
図26は、
図25に続く、ユーザ1の視点とユーザ2の視点が異なる場合の表示画面の遷移の例を示す図である。
【0210】
図26のAは、自由視点画像空間において、ユーザ1の視線方向上にユーザ2の視点が位置する状態で、カウントダウンタイマがカウントされているときの表示画面Vを示す図である。
【0211】
表示画面においては、子画面Wがユーザ1の視野の中心に位置した状態で、カウントダウンタイマが「1」であることが示されている。
【0212】
図26のBは、カウントダウンタイマが0になる前に、ユーザ1が視線を、ユーザ2の視点が位置するところから外れる方向にずらした状態の表示画面Vを示す図である。
【0213】
表示画面Vにおいては、ユーザ1の視野の中心から外れる方向に移動した状態の子画面Wが表示されている。
【0214】
図26のCは、
図26のBの状態の後、視線のズレがある閾値を超えたときの表示画面Vが示されている。
【0215】
表示画面Vにおいては、子画面Wの表示が終了された状態であり、ユーザ1の視野画像のみが表示されている。
【0216】
図27は、
図26に続く、ユーザ1の視点とユーザ2の視点が異なる場合の表示画面の遷移の例を示す図である。
図27において、自由視点画像空間における矢印は、ユーザ1から見たユーザ2の視点の方向ベクトルを表す。
【0217】
図27のAは、自由視点画像空間において、ユーザ1の視点がユーザ2の視点に移動して、ユーザ1から見たユーザ2の視点の方向ベクトルが変化したときの表示画面Vが示されている。
【0218】
表示画面Vにおいては、ユーザ1から見たユーザ2の視点の方向ベクトルがある閾値以上になるまで子画面Wが表示されない。
【0219】
図27のBは、ユーザ1またはユーザ2の視点が移動して、ユーザ1から見たユーザ2の視点の方向ベクトルが変化して、ある閾値以上になったときの表示画面Vを示す図である。
【0220】
表示画面Vにおいては、子画面Wが再び表示されている。
【0221】
以上のようにして、視点共有モード中に視線や視点の移動を行うこともできる。
【0222】
<HMDの動作>
図28は、
図20乃至
図27を参照して上述した視点共有モードの表示制御処理を説明するフローチャートである。
【0223】
なお、適宜、
図20乃至
図27の遷移図を参照して、視点共有モードの表示制御処理を説明する。
【0224】
また、視点共有モードの表示制御処理は、ユーザ1の視点とユーザ2の視点が同一である場合、
図28のステップS111から開始されるが、ユーザ1の視点とユーザ2の視点が異なる場合、
図29のステップS119から開始される。
【0225】
ステップS111において、ユーザ1の視点とユーザ2の視点が同一である場合のユーザ2の視野画像が、ユーザ1の視野画像内に子画面表示される(
図20のA参照)。
【0226】
ステップS112において、合成処理部52は、ユーザ1の視点位置情報および視線情報並びにユーザ2の視点位置情報および視線情報に基づいて、ユーザ1とユーザ2の視野が重なりあったと判定するまで待機している。
【0227】
ステップS112において、ユーザ1とユーザ2の視野が重なり合ったと判定された場合、処理は、ステップS113に進む。
【0228】
ステップS113において、合成処理部52は、子画面を拡大させるとともに、半透過状態にさせて、表示画面を表示させる(
図20のB参照)。
【0229】
ステップS114において、合成処理部52は、視野の重なり合う割合が所定の閾値を超えたか否かを判定する。
【0230】
ステップS114において、視野の重なり合う割合が所定の閾値を超えたと判定された場合、処理は、ステップS115に進む。
【0231】
ステップS115において、合成処理部52は、子画面表示を消失させる(
図21のA参照)。
【0232】
ステップS116において、合成処理部52は、視野の重なり合う割合が所定の閾値以下になったと判定するまで待機している。
【0233】
ステップS116において、視野の重なり合う割合が所定の閾値以下になったと判定した場合、処理は、ステップS117に進む。
【0234】
一方、ステップS114において、視野の重なり合う割合が所定の閾値を超えていないと判定された場合、処理は、ステップS117に進む。
【0235】
ステップS117において、合成処理部52は、視野の重なり合う割合に応じた拡大率と透過率で、子画面を表示させる(
図20のB参照)。
【0236】
ステップS118において、合成処理部52は、ユーザ1が視点移動したか否かを判定する。
【0237】
ステップS118において、視点移動していないと判定された場合、ステップS114に戻り、それ以降の処理が繰り返される。
【0238】
ステップS118において、視点移動したと判定された場合、処理は、
図29のステップS119に進む。
【0239】
ステップS119において、ユーザ1の視点とユーザ2の視点が異なる場合のユーザ2の視野画像が、ユーザ1の視野画像内に子画面表示される(
図22のA参照)。
【0240】
ステップS120において、合成処理部52は、ユーザ1の視点位置情報および視線情報並びにユーザ2の視点位置情報および視線情報に基づいて、ユーザ1が、子画面に顔を向けたと判定するまで待機している。
【0241】
ステップS121において、合成処理部52は、子画面をユーザ1の視野の中心方向に移動させて表示させる(
図22のB参照)。
【0242】
ステップS122において、合成処理部52は、ユーザ1の視線方向上に、ユーザ2の視点が位置する状態となったと判定するまで待機している。
【0243】
ステップS122において、自由視点画像空間において、ユーザ1の視線方向(表示画面Vの中央部分)上に、ユーザ2の視点が位置する状態となったと判定された場合、処理は、ステップS123に進む。
【0244】
ステップS123において、合成処理部52は、ユーザ1の視野の中心に子画面を移動させて表示させる(
図23のA参照)。
【0245】
ステップS124において、合成処理部52は、ユーザ1の視野の中心に子画面が移動されてから、N秒間静止状態を保ったと判定するまで待機している。
【0246】
ステップS124において、ユーザ1の視野の中心に子画面が移動されてから、N秒間静止状態を保ったと判定された場合、処理は、ステップS125に進む。
【0247】
ステップS125において、合成処理部52は、子画面上にカウントダウンタイマを表示させる(
図23のB参照)。
【0248】
図30のステップS126において、合成処理部52は、図示せぬ内蔵カウンタを用いて、カウントダウンタイマをカウントする。
【0249】
ステップS127において、合成処理部52は、ユーザ1の視線のズレが所定の閾値を超えたか否かを判定する。
【0250】
ステップS127において、ユーザ1の視線のズレが所定の閾値を超えたと判定された場合、視点共有モードの表示制御処理は終了される。すなわち、視点非共有モードの表示制御処理が行われる。
【0251】
ステップS127において、ユーザ1の視線のズレが所定の閾値を超えていないと判定された場合、処理は、ステップS128に進む。
【0252】
ステップS128において、合成処理部52は、カウントダウンタイマが0になったか否かを判定する。
【0253】
ステップS128において、カウントダウンタイマが0になっていないと判定された場合、ステップS126に戻り、それ以降の処理が繰り返される。
【0254】
ステップS128において、カウントダウンタイマが0になったと判定された場合、処理は、ステップS129に進む。
【0255】
ステップS129において、合成処理部52は、ユーザ1の視点をユーザ2の視点に移動させる(
図24のB参照)。他のユーザへの視点の移動は、視点のジャンプによって行われてもよい。このとき、移動されたユーザ1の視点位置情報および視線情報は、サーバ12に送信される。
【0256】
ステップS130において、合成処理部52は、子画面の表示を消失させる。すなわち、ユーザ1の視野画像とユーザ2の視野画像は同一になる。
【0257】
ステップS131において、合成処理部52は、ユーザ1から見たユーザ2の視点の方向ベクトルが変化して、ある閾値を超えたと判定するまで待機している。
【0258】
ステップS131において、ユーザ1から見たユーザ2の視点の方向ベクトルが変化して、ある閾値を超えたと判定された場合、処理は、
図28のステップS111に戻り、ユーザ1の視点とユーザ2の視点が同一である場合の表示制御処理を繰り返し行う。
【0259】
以上のように、本技術によれば、重畳時に子画面のサイズに加えて、透過率が変化されるようにした。これにより、両者の視野が一致するにしたがって、子画面が大きくなり、かつ、透過率が高くなり、最終的に両者の視野が解け合わさって一致するという視覚効果が実現される。なお、サイズを変更することなく、透過度のみを変化させるようにすることもできる。
【0260】
子画面表示された他のユーザの視点に、自分の視線を一定時間固定することで、視点移動するようにしたので、ボタン操作など必要なく、簡単に動作を実行することができる。
【0261】
視点移動時に、カウントダウンタイマを表示することで、動作の実行までに猶予期間を持たせるようにした。それに加えて、猶予期間中のHMDの首振り動作などによる視線移動により、視点移動をキャンセルするようにしたので、ボタン操作など必要なく、簡単に動作をキャンセルすることができる。なお、タイマは、カウントアップタイマであってもよい。
【0262】
視線方向の一致率または視点の方向ベクトル(相対位置関係)をトリガーとして子画面の表示のオン、オフを制御するようにしたので、ボタン操作など必要なく、簡単に表示を制御することができる。
【0263】
上記説明においては、不動産ビジネスにおいて用いられるモデルルーム内覧システムの例を説明したが、本技術は、仮想空間内でアバターを用いてコミュニケーションを取るようなソーシャルバーチャルリアリティ(VR)にも適用することができる。
【0264】
<第3の実施の形態>
<VR観光旅行の概要>
ソーシャルVRの例としては、ツアーガイドと複数のツアー客で構成されるグループにおいて、アバターとして相手をお互いに視認できる状態で、VR空間内を観光旅行するVR観光旅行があげられる。
【0265】
ツアー客以外にもアバターは存在し、あるアバターは他の個人旅行者であったり、他のアバターはAIであったりする。ツアーガイドもAIの場合がある。
【0266】
VR空間のため、瞬間移動も自由に可能であるが、ツアー客は、アバターとして現実空間のように歩きまわったり、乗り物に乗ったりすることも可能である。
【0267】
最初、複数のツアー客は、ツアーガイドのアバターの指示に従って、VR空間を観光旅行する。
【0268】
自由行動時間になり、ツアー客Xは、自分が見ている光景を他のツアー客にも見てほしいと思い、視点共有リクエストにより視点共有モードに移行する。ツアー客Xの視野画像は、他のツアー客の視野内に子画面表示される。このとき、ツアー客Xは、音声メッセージやテキストメッセージを使って、自分が見ている光景の説明を行うことができる。
【0269】
他のツアー客は、子画面の表示位置とその表示内容から、VR空間内を歩いて景色を見ながらツアー客Xの提示する地点へ移動することができる。また、他のツアー客は、視点のジャンプを利用して、ツアー客Xの提示する地点へ瞬時に移動することもできる。
【0270】
他のツアー客は、子画面の内容を見ることで、過去に見たことがある内容である場合、今回は移動しない代わりに、ツアー客Xに「すばらしいですね」または「そこからさらに進むと○○が見えますよ」などと、メッセージを送ることもできる。
【0271】
また、次の目的地への移動のための集合時間になったので、ツアーガイドは、集合地点である中央広場においてすべてのツアー客に対して集合の案内を行う。
【0272】
すべてのツアー客の視野内に、ガイドの視野画像である中央広場の画像が子画面表示される。子画面表示と同時に、ツアーガイドは、音声メッセージやテキストメッセージで、集合時間になったことを伝える。
【0273】
子画面の位置は、VR空間におけるツアー客とツアーガイドの相対的な位置関係において決定される。
【0274】
ツアー客は、子画面の表示位置とその表示内容から、自分の近くが集合地点であることを知り、VR空間内を歩いて景色を楽しみながら、集合地点へ移動することができる。
【0275】
ツアー客は、自分が集合地点からかなり遠くにいる場合、または、これ以上観光する必要がない場合、視点のジャンプを利用して、ツアーガイドのいる中央広場へ瞬時に移動することもできる。
【0276】
なお、移動場所への距離も知りたい場合、文字情報として表示するようにしてもよい。方向と距離だけではなく、俯瞰状態の地図を表示してもよい。
【0277】
以上のように、本技術は、ソーシャルVRにも適用することができる。
【0278】
なお、上述したHMD11-1および11-2をまとめてHMD11と称する。HMD11は、次のようなハードウェアで実現される。
【0279】
<HMDのハードウェア構成例>
図31は、HMDのハードウェア構成例を示すブロック図である。
【0280】
図31のHMD11は、CPU(Central Processor Unit)201、メモリ202、センサ部203、入力部204、出力部205、および通信部206を備えている。これらは、バス207を介して相互に接続されている。
【0281】
CPU201は、メモリ202に記憶されているプログラムやデータなどに従って、HMD11が備える各種の機能を実現するための処理を実行する。
【0282】
メモリ202は、半導体メモリまたはハードディスクなどの記憶媒体によって構成され、CPU201による処理のためのプログラムやデータを格納する。
【0283】
センサ部203は、カメラ、マイクロフォン、ジャイロセンサ、加速度センサなどの各種のセンサ類から構成される。センサ部203により取得された各種のセンサ情報もまた、CPU201による処理に用いられる。
【0284】
入力部204は、ボタンやキー、タッチパネルなどから構成される。
【0285】
センサ部203および入力部204からの操作情報は、
図5の操作入力部71に供給され、視野画像生成処理部62-1などに供給される。
【0286】
出力部205は、
図5の出力部72やスピーカなどから構成される。通信部206は、サーバ12などと、各種の通信を仲介する通信インタフェースとして構成される。
【0287】
<サーバのハードウェア構成例>
上述したサーバの一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【0288】
図32は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【0289】
CPU(Central Processing Unit)301、ROM(Read Only Memory)302、RAM(Random Access Memory)303は、バス304により相互に接続されている。
【0290】
バス304には、さらに、入出力インタフェース305が接続されている。入出力インタフェース305には、キーボード、マウスなどよりなる入力部306、ディスプレイ、スピーカなどよりなる出力部307が接続される。また、入出力インタフェース305には、ハードディスクや不揮発性のメモリなどよりなる記憶部308、ネットワークインタフェースなどよりなる通信部309、リムーバブルメディア311を駆動するドライブ310が接続される。
【0291】
以上のように構成されるコンピュータでは、CPU301が、例えば、記憶部308に記憶されているプログラムを入出力インタフェース305およびバス304を介してRAM303にロードして実行することにより、上述した一連の処理が行われる。
【0292】
CPU301が実行するプログラムは、例えばリムーバブルメディア311に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供され、記憶部308にインストールされる。
【0293】
インストールされるプログラムは、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等)や半導体メモリなどよりなるリムーバブルメディア311に記録して提供される。また、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供されるようにしてもよい。プログラムは、ROM302や記憶部308に、あらかじめインストールしておくことができる。
【0294】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【0295】
また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、および、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
【0296】
なお、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。
【0297】
本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【0298】
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【0299】
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
【0300】
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
【0301】
<構成の組み合わせ例>
本技術は、以下のような構成をとることもできる。
(1)
仮想空間におけるユーザの視点から見た画像である前記ユーザの視点画像と、他のユーザの視点から見た前記他のユーザの視点画像と、前記他のユーザの位置を示す視点位置情報および視線方向を示す視線情報とを受信する受信部と、
前記他のユーザの前記視点位置情報および前記視線情報を用いて求められる前記仮想空間内の前記ユーザおよび前記他のユーザの位置関係に基づいて、前記ユーザの視点画像上に重畳する前記他のユーザの視点画像の表示を制御する表示制御部と
を備える画像処理装置。
(2)
前記表示制御部は、前記他のユーザの視点画像の位置、サイズ、および透過度の少なくとも1つを制御する
前記(1)に記載の画像処理装置。
(3)
前記表示制御部は、前記ユーザの視線方向を示す視線情報と前記他のユーザの前記視線情報から得られる情報に基づいて、前記他のユーザの視点画像の表示を制御する
前記(1)または(2)に記載の画像処理装置。
(4)
前記情報は、視差であり、前記表示制御部は、前記情報は、視差であり、前記視差が小さくなるにつれて、前記他のユーザの視点画像を前記ユーザの視点画像の中央に移動させる
前記(3)に記載の画像処理装置。
(5)
前記表示制御部は、前記視差が第1の閾値以下になった場合、前記他のユーザの視点画像を大きく表示させる
前記(4)に記載の画像処理装置。
(6)
前記表示制御部は、前記視差が大きくなるにつれて、前記他のユーザの視点画像を前記ユーザの前記視線情報から得られる視野から外れる方向に移動させる
前記(5)に記載の画像処理装置。
(7)
前記表示制御部は、前記視差が前記第1の閾値よりも大きい第2の閾値以上になった場合、前記他のユーザの視点画像の表示を終了する
前記(6)に記載の画像処理装置。
(8)
前記情報は、視野が重なり合う割合であり、前記表示制御部は、前記割合が大きくなるにつれて、前記他のユーザの視点画像のサイズおよび透過率の少なくとも1つを大きくし、前記割合が小さくなるにつれて、前記他のユーザの視点画像のサイズおよび透過率の少なくとも1つを小さくする
前記(3)に記載の画像処理装置。
(9)
前記表示制御部は、前記割合が所定の閾値以上になった場合、前記他のユーザの視点画像の表示を終了する
前記(8)に記載の画像処理装置。
(10)
前記表示制御部は、前記他のユーザの視点画像の表示を終了した後、前記割合が前記所定の閾値以下になった場合、前記他のユーザの視点画像の表示を再開する
前記(9)に記載の画像処理装置。
(11)
前記表示制御部は、前記ユーザが前記他のユーザの視点画像に顔を向けた場合、前記他のユーザの視点画像を前記ユーザの視野の中心方向に移動させる
前記(3)に記載の画像処理装置。
(12)
前記表示制御部は、前記他のユーザの視点画像が前記ユーザの前記視野の中心に位置した状態で静止した場合、前記他のユーザの視点画像上にタイマを表示させる
前記(11)に記載の画像処理装置。
(13)
前記表示制御部は、前記タイマを終了させた場合、前記ユーザの視点を、前記他のユーザの視点に移動させる
前記(12)に記載の画像処理装置。
(14)
前記表示制御部は、前記タイマを終了させる前に、前記ユーザが視線をずらした場合、前記他のユーザの視点画像の表示を終了する
前記(13)に記載の画像処理装置。
(15)
前記表示制御部は、前記ユーザの視点または前記他のユーザの視点が移動して、前記ユーザから見た前記他のユーザの視点の方向ベクトルの変化が所定の閾値以上になった場合、前記他のユーザの視点画像の表示を再開させる
前記(14)に記載の画像処理装置。
(16)
前記ユーザの前記視線情報は、前記ユーザの動きを検出するセンサから得られる
前記(3)乃至(15)のいずれかに記載の画像処理装置。
(17)
前記センサは、ヘッドマウントディスプレイに設けられる
前記(16)に記載の画像処理装置。
(18)
前記他のユーザの視点画像のビットレート配分は、前記他のユーザの視点画像の大きさまたは透過率に基づいて変更される
前記(1)乃至(17)のいずれかに記載の画像処理装置。
(19)
画像処理装置が、
仮想空間におけるユーザの視点から見た画像である前記ユーザの視点画像と、他のユーザの視点から見た前記他のユーザの視点画像と、前記他のユーザの位置を示す視点位置情報および視線方向を示す視線情報とを受信し、
前記他のユーザの前記視点位置情報および前記視線情報を用いて求められる前記仮想空間内の前記ユーザおよび前記他のユーザの位置関係に基づいて、前記ユーザの視点画像上に重畳する前記他のユーザの視点画像の表示を制御する
画像処理方法。
(20)
仮想空間におけるユーザの視点から見た画像である前記ユーザの視点画像と、他のユーザの視点から見た前記他のユーザの視点画像と、前記他のユーザの位置を示す視点位置情報および視線方向を示す視線情報とを受信する受信部と、
前記他のユーザの前記視点位置情報および前記視線情報を用いて求められる前記仮想空間内の前記ユーザおよび前記他のユーザの位置関係に基づいて、前記ユーザの視点画像上に重畳する前記他のユーザの視点画像の表示を制御する表示制御部と
を備える画像処理装置と、
前記ユーザの視点画像と前記他のユーザの視点画像を、前記他のユーザの視点画像のサイズまたは透過率に応じたビットレート配分で前記画像処理装置に送信する送信部を
備える画像提供装置と
からなる画像提供システム。
【符号の説明】
【0302】
1,2 ユーザ, 11-1,11-2 HMD, 12 サーバ, 31 自由視点画像空間モデルDB, 32-1,32-2 視点画像生成部, 33-1乃至33-3 視点画像圧縮部, 34 多重化部, 35 レート配分制御部, 51-1,51-2 画像処理部, 52 合成処理部, 53 表示制御部, 61-1,61-2 圧縮ERP画像デコード処理部, 62-1,62-2 視野画像生成処理部, 71 操作入力部, 72 出力部, 201 CPU, 202 メモリ, 203 センサ部, 204 入力部, 205 出力部, 206 通信部, 301 CPU, 303 RAM, 309 通信部