(57)【要約】【課題】座標空間上に配置された経路内を移動する視点位置における視線方向の映像を全方位画像から切り出して出力する技術おいて、分岐点を曲がる際に、視線方向の映像を滑らかに変化させる技術を提供する。【解決手段】座標空間上に配置された経路内を移動する視点位置における視線方向の映像を出力する映像出力装置であって、全方位画像のフレームからなるシーケンスを、前記経路に対応付けて記憶する記憶手段と、前記視点位置及び前記視線方向を、連続的に移動させる入力手段と、前記経路内の分岐点において、第１の経路から第２の経路へ移動する際の角度を算出する角度算出手段と、前記第1の経路の前記視点位置における前記視線方向を、算出した前記角度と当該視点位置とに基づいて算出する視線方向算出手段と、前記視点位置における前記視線方向の映像を、前記全方位画像から切り出して出力する出力手段と、を具備する映像出力装置として構成した。【選択図】図８
2014120044.tif 000002
【特許請求の範囲】
【請求項１】
座標空間上に配置された経路内を移動する視点位置における視線方向の映像を出力する映像出力装置であって、
全方位画像のフレームからなるシーケンスを、前記経路に対応付けて記憶する記憶手段と、
前記視点位置及び前記視線方向を、連続的に移動させる入力手段と、
前記経路内の分岐点において、第１の経路から第２の経路へ移動する際の角度を算出する角度算出手段と、
前記第1の経路の前記視点位置における前記視線方向を、算出した前記角度と当該視点位置とに基づいて算出する視線方向算出手段と、
前記視点位置における前記視線方向の映像を、前記全方位画像から切り出して出力する出力手段と、
を具備することを特徴とする映像出力装置。
【請求項２】
前記経路は、ノードと有向ブランチとから構成され、
前記全方位画像のフレームからなるシーケンスは、前記有向ブランチごとに対応付けられる
ことを特徴とする請求項１に記載の映像出力装置。
【請求項３】
前記角度算出手段は、
前記経路内の分岐点において、第１のブランチから第２のブランチへ移動する際の角度を、前記第１のブランチに対する前記第２のブランチのなす角として算出する
ことを特徴とする請求項２に記載の映像出力装置。
【請求項４】
前記視線方向算出手段は、
前記角度算出手段が算出した角度を前記視点位置が前記分岐点にある場合の前記視線方向として、前記第1のブランチの前記視点位置における前記視線方向を、前記視点位置が前記分岐点に到達するまで滑らかにに変化させる
ことを特徴とする請求項２又は請求項３に記載の映像出力装置。
【請求項５】
前記視線方向算出手段は、
前記第１のブランチの前記視点位置における前記視線方向を、前記角度算出手段が算出した角度と、前記第１のブランチにおける前記分岐点までの進行率との積とする
ことを特徴とする請求項２乃至請求項４のいずれかに記載の映像出力装置。
【請求項６】
前記映像出力装置は、さらに、
前記第１のブランチにおける前記視点位置の第１の進行率を算出し、当該第１の進行率が閾値を最初に超える位置を基準位置とする判定手段を具備し、
前記視線方向算出手段は、
前記第１のブランチの前記基準位置から前記分岐点までの前記視点位置における前記視線方向を、前記角度算出手段が算出した角度と、前記基準位置から前記分岐点までの第２の進行率との積とする
ことを特徴とする請求項２乃至請求項４のいずれかに記載の映像出力装置。
【請求項７】
座標空間上に配置された経路内を移動する視点位置における視線方向の映像を出力するコンピュータであって、全方位画像のフレームからなるシーケンスを、前記経路に対応付けて記憶する記憶手段、を備える前記コンピュータが、
前記視点位置及び前記視線方向を、連続的に移動させる入力ステップと、
前記経路内の分岐点において、第１の経路から第２の経路へ移動する際の角度を算出する角度算出ステップと、
前記第1の経路の前記視点位置における前記視線方向を、算出した前記角度と当該視点位置とに基づいて算出する視線方向算出ステップと、
前記視点位置における前記視線方向の映像を、前記全方位画像から切り出して出力する出力ステップと、
を実行することを特徴とする映像出力方法。
【請求項８】
コンピュータを、座標空間上に配置された経路内を移動する視点位置における視線方向の映像を出力する映像出力装置として機能させるためのプログラムであって、
コンピュータを、
全方位画像のフレームからなるシーケンスを、前記経路に対応付けて記憶する記憶手段、
前記視点位置及び前記視線方向を、連続的に移動させる入力手段、
前記経路内の分岐点において、第１の経路から第２の経路へ移動する際の角度を算出する角度算出手段、
前記第1の経路の前記視点位置における前記視線方向を、算出した前記角度と当該視点位置とに基づいて算出する視線方向算出手段、
前記視点位置における前記視線方向の映像を、前記全方位画像から切り出して出力する出力手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、経路内を移動する視点位置における視線方向の映像を、経路に配置された全方位画像から切り出して出力する技術に関し、特に、分岐点を曲がる際に、視線方向の映像を滑らかに変化させる技術に関する。
【背景技術】
【０００２】
近年、周囲３６０°の視界をもつ全方位画像（パノラマ画像）をシーケンスにして経路に配置し、このシーケンスが配置された経路内を、任意の視線方向を向きながら自由に移動して、ユーザの視野に応じたパノラマ画像を提供するパノラマ画像提供サービスが開発されている。
【０００３】
パノラマ画像提供サービスを利用したものとして、例えば、オンライン地図検索サービスがあり、非特許文献１はその一例である。非特許文献１は、ユーザがマップ上のある地点をクリックすると、その地点で撮影されたパノラマ画像を閲覧することができるというサービスを提供するサイトである。また、画面に表示される矢印をクリックすることで、ユーザはパノラマ写真内の先や手前などに視点を動かすことができる。
また、非特許文献２や非特許文献３では、撮影されたパノラマ画像を再生時に繋ぎ合せることによって、ユーザが視線方向を自由に変えながら移動しているような映像を閲覧することができる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】“GoogleStreet View”、［online］、Google,Inc、［平成２４年１０月１７日検索］、インターネット <http://maps.google.co.jp/intl/ja/help/maps/streetview/ >
【非特許文献２】“QuickTime VRを利用した動画パノラマＶＲ（MotionVR of the Month 2006calendar）”、［online］、AppleComputer,Inc、［平成２４年１０月１７日検索］、インターネット <http://www.worldinmotionvr.com/motionvr_month/calendar.html>
【非特許文献３】“３６０ＶＲ（ＷＥＢコンテンツ集）”、［online］、３６０、［平成２４年１０月１７日検索］、インターネット <http://unimoto.sakura.ne.jp/360vr/>
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このようなシステムにおいて、空間内の経路が分岐点を含む場合、撮影される全方位画像のシーケンスは複数になり、分岐点において複数の全方位画像のシーケンスが接続することとなる。
【０００６】
非特許文献１では、経路上に分岐点が存在する場合は、分岐点となるポイントで次の移動先をユーザが選択することとなり、分岐前後で表示される画像間で連続性が無い。
非特許文献３では、経路上の分岐点では、次に移動可能な分岐先の動画像がリンク付けされているだけで、分岐前後で表示される映像間に連続性が無い。
なお、非特許文献２では、ユーザが移動できる範囲は予め設定されたルート上のみであり、経路上に分岐が存在しない。
【０００７】
一般に、空間内の経路の分岐点において、撮影時のカメラの向きが異なる２つの映像を連続して表示する場合、視線方向をカメラの向きとを合わせたり、分岐後の進路の角度変化に応じて視線方向を回転させることが考えられる。
しかし、この手法では、分岐点において視線方向の変化が生じ、人間が実空間で曲がる際の視線方向の変化ように、連続的に視線方向を曲げることができない。
【０００８】
本発明は、前述した問題点に鑑みてなされたものであり、その目的とすることは、座標空間上に配置された経路内を移動する視点位置における視線方向の映像を全方位画像から切り出して出力する映像出力装置おいて、分岐点を曲がる際に、視線方向の映像を滑らかに変化させる技術を提供することである。
【課題を解決するための手段】
【０００９】
前述した課題を解決するために第１の発明は、座標空間上に配置された経路内を移動する視点位置における視線方向の映像を出力する映像出力装置であって、全方位画像のフレームからなるシーケンスを、前記経路に対応付けて記憶する記憶手段と、前記視点位置及び前記視線方向を、連続的に移動させる入力手段と、前記経路内の分岐点において、第１の経路から第２の経路へ移動する際の角度を算出する角度算出手段と、前記第1の経路の前記視点位置における前記視線方向を、算出した前記角度と当該視点位置とに基づいて算出する視線方向算出手段と、前記視点位置における前記視線方向の映像を、前記全方位画像から切り出して出力する出力手段と、を具備することを特徴とする映像出力装置である。
第１の発明によって、経路内の分岐点において、第１の経路から第２の経路へ移動する際、第１の経路の視点位置における視線方向を、移動する際の角度と視点位置とに基づいて算出するので、全方位画像から切出す映像を滑らかに変化させることができ、高臨場感を演出することができる。
【００１０】
第１の発明の経路は、ノードと有向ブランチとから構成され、前記全方位画像のフレームからなるシーケンスは、前記有向ブランチごとに対応付けられることが望ましい。
これによって、経路をノードと有向ブランチ（有向エッジ）とから構成される有向グラフとして表現でき、また、全方位画像のフレームからなるシーケンスを有向ブランチの方向に対応させることができる。
【００１１】
第１の発明の角度算出手段は、前記経路内の分岐点において、第１のブランチから第２のブランチへ移動する際の角度を、前記第１のブランチに対する前記第２のブランチのなす角として算出することが望ましい。
これによって、第１のブランチに対する第２のブランチのなす角に基づいて、視線方向を算出することができる。
【００１２】
第１の発明の視線方向算出手段は、前記角度算出手段が算出した角度を前記視点位置が前記分岐点にある場合の前記視線方向として、前記第1のブランチの前記視点位置における前記視線方向を、前記視点位置が前記分岐点に到達するまで滑らかに変化させることが望ましい。
これによって、視点位置が分岐点へ向かって進む際に、視線方向を、分岐点において移動先のブランチの方向となるように、視点位置に応じて滑らかに変化させることができるので、視点位置における全方位画像から切出した視線方向の視野画像も滑らかに変化させることができ、高臨場感を演出することができる。
【００１３】
第１の発明の視線方向算出手段は、前記第１のブランチの前記視点位置における前記視線方向を、前記角度算出手段が算出した角度と、前記第１のブランチにおける前記分岐点までの進行率との積とすることが望ましい。
これによって、視点位置が分岐点へ向かって進む際に、視線方向を、分岐点において移動先のブランチの方向となるように、視点位置に応じて線形に変化させることができるので、視点位置における全方位画像から切出した視線方向の視野画像も滑らかに変化させることができ、高臨場感を演出することができる。
【００１４】
第１の発明の映像出力装置は、さらに、前記第１のブランチにおける前記視点位置の第１の進行率を算出し、当該第１の進行率が閾値を最初に超える位置を基準位置とする判定手段を具備し、前記視線方向算出手段は、前記第１のブランチの前記基準位置から前記分岐点までの前記視点位置における前記視線方向を、前記角度算出手段が算出した角度と、前記基準位置から前記分岐点までの第２の進行率との積とすることが望ましい。
これによって、視点位置が分岐点へ向かって進む際に、視線方向を、分岐点において移動先のブランチの方向となるように、基準位置から分岐点までの視点位置に応じて線形に変化させることができるので、視点位置における全方位画像から切出した視線方向の視野画像も、分岐点の手前から、滑らかに変化させることができ、高臨場感を演出することができる。
【００１５】
第２の発明は、座標空間上に配置された経路内を移動する視点位置における視線方向の映像を出力するコンピュータであって、全方位画像のフレームからなるシーケンスを、前記経路に対応付けて記憶する記憶手段、を備える前記コンピュータが、前記視点位置及び前記視線方向を、連続的に移動させる入力ステップと、前記経路内の分岐点において、第１の経路から第２の経路へ移動する際の角度を算出する角度算出ステップと、前記第1の経路の前記視点位置における前記視線方向を、算出した前記角度と当該視点位置とに基づいて算出する視線方向算出ステップと、前記視点位置における前記視線方向の映像を、前記全方位画像から切り出して出力する出力ステップと、を実行することを特徴とする映像出力方法である。
第２の発明によって、経路内の分岐点において、第１の経路から第２の経路へ移動する際、第１の経路の視点位置における視線方向を、移動する際の角度と視点位置とに基づいて算出するので、全方位画像から切出す映像を滑らかに変化させることができ、高臨場感を演出することができる。
【００１６】
第３の発明は、コンピュータを、座標空間上に配置された経路内を移動する視点位置における視線方向の映像を出力する映像出力装置として機能させるためのプログラムであって、コンピュータを、全方位画像のフレームからなるシーケンスを、前記経路に対応付けて記憶する記憶手段、前記視点位置及び前記視線方向を、連続的に移動させる入力手段、前記経路内の分岐点において、第１の経路から第２の経路へ移動する際の角度を算出する角度算出手段、前記第1の経路の前記視点位置における前記視線方向を、算出した前記角度と当該視点位置とに基づいて算出する視線方向算出手段、前記視点位置における前記視線方向の映像を、前記全方位画像から切り出して出力する出力手段、として機能させるためのプログラムである。
第３の発明によって、第１の発明の映像出力装置を得て、第２の発明の映像出力方法を実行することができる。
第３の発明を汎用のコンピュータにインストールすることによって、第１の発明の映像出力装置を得て、第２の発明の映像出力方法を実行することができる。
【発明の効果】
【００１７】
本発明の映像出力装置によって、視点位置が分岐点へ向かって進む際に、視線方向を、分岐点において移動先のブランチの方向となるように、視点位置に応じて滑らかに変化させることができるので、視点位置における全方位画像から切出した視線方向の視野画像も滑らかに変化させることができ、高臨場感を演出することができる。
【図面の簡単な説明】
【００１８】
【図１】本実施形態に係る映像出力装置のハードウエア構成例を示すブロック図
【図２】本実施形態に係る視点位置が移動する施設内の例を示す平面図
【図３】映像出力装置が保持するデータ構造の例を示す図
【図４】全方位画像の例を示す図
【図５】ブランチと全方位画像のフレームからなるシーケンスとの対応関係を示す図
【図６】ＸＹ二次元座標上に表した経路の例を示す図
【図７】図６に示す経路をノード情報とブランチ情報に変換した例を示す図
【図８】第１実施形態に係る映像出力装置の視線方向転換処理のフローチャート
【図９】第１実施形態に係る映像出力装置の保持する保持データの例を示す図
【図１０】視点位置が位置する対象ブランチにおける進行率等の模式図
【図１１】ユーザ入力画面の例を示す図
【図１２】入力用コントローラの例を示す図
【図１３】対象ブランチに対する移動先ブランチの角度を説明する図
【図１４】第１及び第２の進行率と視線方向との関係の例を示す図
【図１５】第１実施形態に係る分岐点までの視線方向の変化の例を示す図
【図１６】視点位置に応じた全方位画像から、視線方向の視野画像を切出す例を説明する図
【図１７】第２実施形態に係る映像出力装置の視線方向転換処理のフローチャート（１）
【図１８】第２実施形態に係る映像出力装置の視線方向転換処理のフローチャート（２）
【図１９】第２実施形態に係る映像出力装置の保持する保持データの例を示す図
【図２０】第２実施形態に係る分岐点までの視線方向の変化の例を示す図
【発明を実施するための形態】
【００１９】
以下図面に基づいて、本発明の実施形態を詳細に説明する。
【００２０】
図１は、本発明の実施形態に係る映像出力装置１を実現するコンピュータのハードウエア構成図である。コンピュータは、図１に示すように、例えば、制御部１１、記憶部１２、メディア入出力部１３、通信制御部１４、入力部１５、表示部１６、周辺機器Ｉ／Ｆ部１７等が、バス１８を介して接続されて構成される。
【００２１】
制御部１１は、ＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）、ＲＯＭ（Ｒｅａｄ
Ｏｎｌｙ Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ）等により構成される。
ＣＰＵは、記憶部１２、ＲＯＭ、記憶媒体等に格納されるプログラムをＲＡＭ上のワークメモリ領域に呼び出して実行し、バス１８を介して接続された各装置を駆動制御し、映像出力装置１が行う後述する処理を実現する。ＲＯＭは、不揮発性メモリであり、コンピュータのブートプログラムやＢＩＯＳ等のプログラム、データ等を恒久的に保持する。ＲＡＭは、揮発性メモリであり、ロードしたプログラムや、データ等を一時的に保持すると共に、制御部１１が各処理を行うために使用するワークエリアを備える。
【００２２】
記憶部１２は、ＨＤＤ（Ｈａｒｄ Ｄｉｓｋ Ｄｒｉｖｅ）等であり、制御部１１が実行するプログラムや、プログラム実行に必要なデータ、ＯＳ（Ｏｐｅｒａｔｉｎｇ
Ｓｙｓｔｅｍ）等が格納されている。これらのプログラムコードは、制御部１１により必要に応じて読み出されてＲＡＭに移され、ＣＰＵに読み出されて実行される。
【００２３】
メディア入出力部１３は、例えば、ＣＤドライブ、ＤＶＤドライブ、ＭＯドライブ、フロッピー（登録商標）ディスクドライブ、等のメディア入出力装置であり、動画像等のデータの入出力を行う。
通信制御部１４は、通信制御装置、通信ポート等を有し、コンピュータとネットワーク間の通信を媒介する通信インターフェースであり、ネットワークを介して、他の装置間との通信制御を行う。
【００２４】
入力部１５は、データ入力を行い、例えば、上下左右に動くレバーやボタンを備えたコントローラ（図９参照）、キーボード、マウスなどのポインティングデバイス、テンキーなどの入力装置を有する。入力されたデータを制御部１１へ出力する。
表示部１６は、例えば、ＣＲＴモニタ、液晶パネル等のディスプレイ装置と、ディスプレイ装置と連携して表示処理を実行するための論理回路（ビデオアダプタ等）で構成され、制御部１１の制御により入力された表示情報をディスプレイ装置上に表示させる。
【００２５】
尚、入力部１５と表示部１６は、それらの機能が一体化した、例えば、タッチパネル付ディスプレイであっても良い。
周辺機器Ｉ／Ｆ部（インターフェース）１７は、コンピュータに周辺機器を接続させるためのポートであり、周辺機器Ｉ／Ｆ部１７を介してコンピュータは周辺機器とのデータの送受信を行う。周辺機器Ｉ／Ｆ部１７は、ＵＳＢやＩＥＥＥ１３９４やＲＳ−２３２Ｃ等で構成されており、通常複数の周辺機器Ｉ／Ｆを有する。周辺機器との接続形態は、有線、無線を問わない。
バス１８は、各装置間の制御信号、データ信号等の授受を媒介する経路である。
【００２６】
図２は、本実施形態に係る視点位置が移動する施設内の例を示す平面図である。
本実施形態に係る映像出力装置１は、このような施設内を有向グラフにモデル化した経路内を連続的に移動する視点位置から見た任意の視線方向の視野画像を、全方位画像から切り出して表示するものである。
【００２７】
例えば、図２に示される間取り２０を有した施設内を、ユーザに提示する例について説明する。映像出力装置１は、予め撮影された施設内の映像を構成するフレーム画像を、ユーザにより入力された視点位置と視線方向に基づいて、動画として出力する。映像出力装置１は、ユーザに対して、視点位置と視線方向を自由に移動させながら施設内の映像を提示することで、実際に施設内を歩き回って見学しているような体験をさせることが可能となる。
【００２８】
図２に示されるように、間取り２０内の経路は、ノード２１とブランチ２２によって構成される。ノード２１は、経路の繋ぎ目であり、ブランチ２２（一般には、エッジともいう。）は、ノード２２とノード２２とを接続する単位経路である。図２に示す例では、７個のノードＮ１〜Ｎ７と、６本のブランチＢ１〜Ｂ６とが定義されている。
【００２９】
各ブランチ２２は、有向線分で表現され、各ブランチの矢印の向きは、矢印の起点が起点を表すのノード２２（以下、起点ノードという。）であり、矢印の終点が終点を表すノード２２（以下、終点ノードという。）であることを示す。即ち、ブランチは有向ブランチであり、起点ノードと終点ノードが特定されると、当該ブランチが特定されることとなる。ブランチの向きは、記憶部１２に記憶される全方位画像を生成する際に、施設内を経路に沿って撮影した時の進行方向の向きである。
【００３０】
経路上のどの位置にノードを定義するかは、この装置のデータの設計者の判断に委ねられるが、一般的には、経路上の端点（行き止まり）、曲がり点（曲がり角を表す点）、分岐点にノードを定義する。図２に示す例では、Ｎ３、Ｎ４、Ｎ５、Ｎ７は経路上の端点を示すノードであり、Ｎ６は経路上の曲がり点を示すノードであり（以下、曲がり点ノード又は曲がり点という。）、Ｎ１、Ｎ２は経路上の分岐点を示すノード（以下、分岐点ノード又は分岐点という。）である。
【００３１】
図３は、映像出力装置１の記憶部１２に記憶されるデータ構造の例について説明する図である。映像出力装置１の記憶部１２には、（ａ）ノード情報２５と、（ｂ）ブランチ情報２６と、（ｃ）映像情報２７とが記憶される。
【００３２】
（ａ）に示すノード情報２５とは、視点位置が移動可能な経路上に存在する各ノードに関する情報であり、「ノードＩＤ」、「位置情報Ｘ」、「位置情報Ｙ」、「属性」で構成される。
「位置情報Ｘ」及び「位置情報Ｙ」とは、ノードの位置情報であり、ノードをＸＹ二次元座標上に表した際の「Ｘ座標値」と「Ｙ座標値」をそれぞれ格納する。ノード間の実際の距離は、ノード間の座標距離に実際の距離単位をかけることにより、算出することができる。
【００３３】
「属性」とは、ノードの経路上の次数であり、各ノードから派生するブランチの本数を示す値である。例えば、ノードが経路上の端点（行き止まり）にあれば「１」を格納し、ノードが経路上の曲がり点にあれば「２」を格納し、ノードが経路上の三叉路にあれば「３」を格納し、ノードが経路上の十字路にあれば「４」を格納する。即ち、「属性」に格納される値が「３」以上であるノードは、分岐点ノードであることを示す。
【００３４】
（ｂ）に示すブランチ情報２６とは、起点ノードと終点ノードとを繋ぐ各ブランチに関する情報であり、「ブランチＩＤ」、「起点ノード」、「終点ノード」、「映像ＩＤ」で構成される。
「起点ノード」には、ブランチの端点のうち撮影開始側のノードＩＤを格納し、「終点ノード」には、ブランチの端点のうち撮影終了側のノードＩＤを格納する。起点ノードから終点ノードに向かう方向を、ブランチの向きと定義する。「映像ＩＤ」には、ブランチに対応する全方位画像のシーケンスの映像ＩＤを格納する。
【００３５】
（ｃ）に示す映像情報２７とは、各ブランチに対応する実際の施設内を撮影した全方位画像のシーケンスに関する情報であり、「映像ＩＤ」と、「画像データ」と、「フレーム数」で構成される。
【００３６】
「画像データ」には、全方位映像のシーケンスが格納される。図４に示すように、全方位画像５０とは、ブランチ上の所定間隔の点に対応する実際の施設内の地点で、全方位カメラを用いて周囲を撮影した画像である。全方位画像のシーケンスとは、全方位画像をフレームとして、連続したフレームからなる画像データの列である。
【００３７】
この構造を図５に示す。図５に示すように、起点ノードＮ１と終点ノードＮ２とに対応する地点の間を一定速度で移動しながら全方位画像を撮影した場合、起点ノードＮ１と終点ノードＮ２との間の一定間隔の点Ｎ１、Ｍ１、Ｍ２、・・・、Ｎ２にそれぞれ対応する地点で、全方位画像５０ａ、５０ｂ、５０ｃ、・・・、５０ｉが撮影される。この各全方位画像をフレーム５１として、これらのフレーム５１をシーケンスにしたものが、ブランチ２２（の映像ＩＤ）に対応する全方位画像のシーケンス５２である。
【００３８】
図３に戻って、「フレーム数」には、全方位画像のシーケンスを構成するフレーム数が格納される。
【００３９】
図６は、本実施形態に係る経路をＸＹ二次元座標上に表した例を示す図である。各ノードＮ１〜Ｎ４の符号に括弧書きで示した一対の座標は、当該ノードのＸ座標値とＹ座標値である。図示されるように、Ｘ軸に対してブランチＢ１のなす角度は０°であり、Ｘ軸に対してブランチＢ２がなす角度は反時計回りに６０°であり、Ｘ軸に対してブランチＢ３がなす角度は反時計回りに−６０°である。
【００４０】
図７は、図６に示す経路を記憶するノード情報２５ａとブランチ情報２６ａとを示す図である。
図７（ａ）に示すように、ノードＮ１の位置座標Ｘにはｘ１格納され、位置座標Ｙにはｙ１が格納され、属性にはノードＮ１から派生するブランチの本数である３が格納される。ノードＮ２の位置座標Ｘにはｘ２格納され、位置座標Ｙにはｙ１が格納され、属性にはノードＮ２から派生するブランチの本数である３が格納される。ノードＮ３の位置座標Ｘにはｘ３格納され、位置座標Ｙにはｙ３が格納され、属性にはノードＮ３から派生するブランチの本数である１が格納される。ノードＮ４の位置座標Ｘにはｘ４格納され、位置座標Ｙにはｙ４が格納され、属性にはノードＮ４から派生するブランチの本数である１が格納される。
【００４１】
図７（ｂ）に示すように、ブランチＢ１の映像ＩＤにはブランチＢ１に対応する映像ＩＤであるＡ１が格納され、起点ノードにはＮ１が格納され、終点ノードにはＮ２が格納される。ブランチＢ２の映像ＩＤにはブランチＢ２に対応する映像ＩＤであるＡ２が格納され、起点ノードにはＮ２が格納され、終点ノードにはＮ３が格納される。ブランチＢ３の映像ＩＤにはブランチＢ３に対応する映像ＩＤであるＡ３が格納され、起点ノードにはＮ２が格納され、終点ノードにはＮ４が格納される。
【００４２】
［第１実施形態に係る映像出力装置の視線方向転換処理］
続いて、第１実施形態に係る視線方向転換処理について、図８〜図１６を参照して説明する。図８は、第１実施形態に係る映像出力装置１の視線方向転換処理を示すフローチャートである。
【００４３】
映像出力装置１の行う視線方向転換処理とは、視点位置が経路上の分岐点（曲がり点でもよい。）の手前にいる場合に、視点位置のあるブランチ（以下、対象ブランチという。）に対する分岐点の移動先のブランチ（以下、移動先ブランチという。）の相対角度を算出して、分岐点における視線方向が算出した相対角度となるように、視点位置が分岐点まで進行するにつれて視線方向を滑らかに変化させる処理である。これによって、映像出力装置１は、視点位置における全方位画像から切り出す視線方向の視野画像も滑らかに変化させることができる。
【００４４】
第１実施形態における視線方向転換処理は、視点位置のある対象ブランチの端点となるノードから視線方向の転換を行う。一方、後述する第２実施形態における視線方向転換処理は、視点位置のある対象ブランチにおいて、視点位置が所定の基準位置まで進んだのちに視線方向の転換を行う。
【００４５】
映像出力装置１の記憶部１２には、図３に示す（ａ）ノード情報２５と、（ｂ）ブランチ情報２６と、（ｃ）映像情報２７とが予め記憶されるものとする。
【００４６】
図９は、第1実施形態に係る視線方向転換処理において、映像出力装置１が保持する保持データ３１の一例を示す図である。図９に示すデータは、視線方向転換処理が実行される毎に値が更新されるため、映像出力装置１の記憶部１２に記憶せず、制御部１１のＲＡＭに記憶させるのが好ましい。
なお、図１０は、視点位置が位置する対象ブランチにおける進行率Ｐ等の模式図であり、あわせて説明する。
【００４７】
対象ブランチのブランチＩＤとは、視点位置が位置するブランチのブランチＩＤである。対象ブランチのブランチＩＤは、視点位置が次のブランチに移動する場合のみ更新される。初期状態として、経路を構成するいずれかのブランチのブランチＩＤが、対象ブランチのブランチＩＤとして、予め記憶されている。
【００４８】
進行率Ｐとは、対象ブランチにおける視点位置の位置を特定する値である。各ブランチは有向ブランチであるので、有向ブランチの起点ノードを「０」とし、終点ノードを「１」とすると、ブランチ内の位置は、１次元の正規化座標［０〜１］で表される。進行率Ｐは、対象ブランチにおける視点位置のこの正規化座標である（図１０を参照）。初期状態として、進行率Ｐは、例えば「０」などの値が、予め記憶されている。
なお、視点位置は、対象ブランチのブランチＩＤと、進行率Ｐとによって、確定する。
【００４９】
進行方向Ｄは、視点位置が対象ブランチにおいて、起点ノードに向かって進んでいるのか、終点ノードに向かって進んでいるのかを表す値で、それぞれ０か１である。初期状態として、進行方向Ｄは、例えば「１」などの値が、予め記憶されている。図１０に示す例では、進行方向Ｄは、終点ノードに向かっているとして、Ｄ＝１とする。
進行方向Ｄとは、後述するユーザ入力画面４１（図１１参照）の前進ボタン４５ａが押された場合に視点位置が移動する方向である。
【００５０】
視線方向θとは、図１０に示すように、視点位置６０のある対象ブランチ２２において、視点位置６０を起点として進行方向Ｄにあるノード２１を終点とするベクトル（以下、進行ベクトルという。）に対する視線のずれを示すベクトル６１のなす角度である。視線方向θは、この進行ベクトルに対して反時計まわりに計測するものとし、範囲は［−９０°〜９０］とする。
なお、この視線方向θは、図１０に示した視線のずれを示すベクトル６１と同一視できるものであるので、以下では、このベクトルも視線方向６１という。
初期状態として、視線方向θは、例えば「０」などの値が、予め記憶されている。
【００５１】
進行方向にあるノードＩＤとは、視点位置がある対象ブランチにおける進行方向Ｄに対応するノード（起点ノードまたは終点ノード）のノードＩＤである。
【００５２】
対象ブランチのブランチ角度θ１とは、対象ブランチの進行方向Ｄと反対にある端点（起点ノードまたは終点ノード）を起点とし、進行方向Ｄにある端点（起点ノードまたは終点ノード）を終点としたベクトルが、Ｘ軸となす角度であり、反時計回りを正とする。
図１０においては、対象ブランチ２２において進行方向Ｄ＝１であるので、進行方向Ｄと反対にある端点は起点ノードであり、進行方向Ｄにある端点は終点ノードであって、この起点ノードから終点ノードへ向かうベクトルとＸ軸とのなす角度が、対象ブランチ２２のブランチ角度θ１となる。
【００５３】
移動先ブランチのブランチＩＤとは、対象ブランチにおいて進行方向Ｄにあるノードが分岐点ノードまたは曲がり点ノードである場合に、当該ノードを端点（起点ノードまたは終点ノード）とした視点位置が次に移動するブランチ（以下、移動先ブランチという。）のブランチＩＤである。
【００５４】
移動先ブランチの移動先ノードＩＤとは、移動先ブランチの端点のうち、対象ブランチの進行方向Ｄにあるノードとは異なる端点（以下、移動先ノードという。）のノードＩＤである。
【００５５】
移動先ブランチのブランチ角度θ２とは、対象ブランチの進行方向Ｄにあるノード（これは移動先ブランチの端点となる）を起点とし、移動先ブランチの移動先ノードを終点とするベクトルが、Ｘ軸となす角度であり、反時計回りを正とする。
【００５６】
対象ブランチに対する移動先ブランチの角度θ０とは、移動先ブランチのブランチ角度θ２から、対象ブランチのブランチ角度θ１を引いた角度である。なお、Ｘ軸に対するブランチの角度を絶対角度とすると、このθ０は、対象ブランチに対するブランチの角度であるため相対角度といえる。
【００５７】
第１の進行率Ｐ１とは、視点位置が対象ブランチにおいて、進行方向Ｄへむかってどの程度進んだかを表す値であり、１次元の正規化座標［０〜１］で表される。即ち、第１の進行率Ｐ１は、進行率Ｐを用いて、進行方向Ｄ＝１のときは、Ｐ１＝Ｐであり、進行方向Ｄ＝０のときは、Ｐ１＝１−Ｐである。
【００５８】
図８の説明に戻る。映像出力装置１の制御部１１は、ユーザ入力画面４１を表示部１６に出力する（ステップＳ１１）。
【００５９】
図１１は、ユーザ入力画面４１の一例を示す図である。ユーザ入力画面４１には、経路表示領域４２と、視野画像領域４３と、入力受付領域４４とが表示される。視野画像領域４３には、ユーザの視点位置６０と視線方向６１に対応する視野画像５３が表示される。
【００６０】
経路表示領域４２には、施設内の間取りと、ユーザの視点位置６０が移動可能な経路６２と、現在の視点位置６０における視線方向６１を表現する視線方向指標６１ａが表示される。図示される例では、視点位置６０として二重円が描かれ、視線方向指標６１ａとして扇形が描かれている。
ユーザの視点位置６０が移動可能な経路６２とは、ノード情報２５に格納されるノード２１と、ブランチ情報２６に格納されるブランチ２２とによって構成される経路６２である。
【００６１】
ユーザは、視野画像領域４３に表示される視野画像５３と、経路表示領域４２に表示される経路６２上の視点位置６０と視線方向指標６１ａに基づいて、入力受付領域４４から視点位置６０の移動に関する指示と、視線方向６１の移動に関する指示とを入力する。
【００６２】
入力受付領域４４には、視点位置６０を移動させる場合や、視線方向６１を移動させる場合や、各種変更操作（例えば、移動速度の変更、視野画像領域４３に表示される視野画像５３の視野角の変更など）等を行う場合に、ユーザによって押下されるキーボード（図示せず）のキートップに印字される記号が表示される。入力受付領域４４に表示される各種ボタンの機能は、キーボードのいずれかのキーに割り付けられる。
【００６３】
ここで、前進ボタン４５ａと後退ボタン４５ｂとは、視点位置６０の移動の入力に利用される。前進ボタン４５ａが押されている間、視点位置６０が経路上の進行方向に所定速度で移動するように進行率を増加または減少させる。また、後退ボタン４５ｂが押されている間、視点位置６０が経路上の進行方向とは逆方向に所定速度で移動するように進行率を増加または減少させる。ここで、所定速度とは、例えば、ユーザが歩く速度にふさわしい速度などである。所定速度は、予め記憶部１２に記憶されているものであり、ユーザの指示により変更することも可能である。本実施形態では、前進ボタン４５ａ及び後退ボタン４５ｂが、この動作を行う場合について説明する。
【００６４】
別の方法として、前進ボタン４５ａが押されている間、視点位置６０が経路上の進行方向に所定速度で移動するように進行率を増加または減少させ、後退ボタン４５ｂが押された場合、進行方向を反転するようにしても良い。
【００６５】
また、別の方法として、前進ボタン４５ａと後退ボタン４５ｂは、視点位置６０が移動する経路上の進行方向を反転させるためにのみ用いられ、視点位置６０は進行方向に所定速度で常に移動するように設定しても良い。この場合、停止ボタン４５ｃが押されることで、視点位置６０の移動は停止する。
【００６６】
一方、右向きボタン４６ｂと左向きボタン４６ｄは、視線方向６１の移動を入力させる操作に利用され、右向きボタン４６ｂが押されている間、視線方向６１が所定の速度で進行方向に対して右向きに移動するように視線方向θを減少させる。また、左向きボタン４６ｄが押されている間、視線方向６１が所定の速度で進行方向に対して左向きに移動するように視線方向θを増加させる。
【００６７】
また、上向きボタン４６ａと下向きボタン４６ｃは、視野画像領域４３に表示される視野画像５３のＺ軸方向の角度を変化させる場合に利用されるが、本実施形態では、詳細は省略する。
【００６８】
変更操作ボタン４７には、例えば、移動速度の変更、視野画像領域４３に表示される視野画像５３の視野角の変更などの機能が割り当てられる。上記変更を行う際に、変更操作ボタン４７に対応するキーボード(図示せず)のキーがユーザによって押下される。
その他、図示しない終了ボタン等があってもよい。
【００６９】
図１２は、図１１に示すユーザ入力画面４１の入力受付領域４４に表示する各種ボタンの機能を有するコントローラ４８の例である。
コントローラ４８は、ユーザが希望する方向に進むことができ、またユーザの視点位置６０での視線方向６１を自由に変えることができる。
【００７０】
コントローラ４８から視点位置６０及び視線方向６１の移動を入力する場合は、入力受付領域４４を配置しないユーザ入力画面４１を表示し、ユーザはキーボード（図示せず）に代えて、コントローラ４８に配置される各種ボタンから入力操作を行う。実用上は、この他にもさまざまな形態の機器をコントローラとして利用することが可能である。コントローラ４８には、図１１にて説明した前進ボタン４５ａ、後退ボタン４５ｂ、停止ボタン４５ｃ、上向きボタン４６ａ、右向きボタン４６ｂ、下向きボタン４６ｃ、左向きボタン４６ｄ、変更操作ボタン４７が配置される。
【００７１】
図８の説明に戻る。映像出力装置１の制御部１１は、視点位置の移動と視線方向の移動の入力を受付ける（ステップＳ１２）。
【００７２】
具体的には、映像出力装置１の制御部１１は、ユーザにより、前進ボタン４５ａ、後退ボタン４５ｂが押されることによって、視点位置の移動の入力を受付け、また、右向きボタン４６ｂ、左向きボタン４６ｄが押されることによって、視線方向の移動の入力を受付ける。
【００７３】
次に、映像出力装置１の制御部１１は、視点位置にあるブランチ（対象ブランチ）における進行率Ｐを算出することにより、視点位置を更新する（ステップＳ１３）。
【００７４】
具体的には、映像出力装置１の制御部１１は、ステップＳ１２において、前進ボタン４５ａが押されていた場合、進行方向Ｄが１ならば、進行率Ｐを所定量増加させ、進行方向Ｄが０ならば、進行率Ｐを所定量減少させる。また、映像出力装置１の制御部１１は、ステップＳ１２において、後退ボタン４５ｂがおされていた場合、進行方向Ｄが１ならば、進行率Ｐを所定量減少させ、進行方向Ｄが０ならば、進行率Ｐを所定量増加させる。
こうすることにより、映像出力装置１の制御部１１は、対象ブランチのブランチＩＤと進行率Ｐとによって確定される視点位置を更新する。
なお、映像出力装置１の制御部１１は、進行率Ｐを保持データ３１として保持する。
【００７５】
次に、映像出力装置１の制御部１１は、進行方向Ｄを算出する（ステップＳ１４）。
【００７６】
具体的には、映像出力装置１の制御部１１は、ステップＳ１２において、前進ボタン４５ａまたは後退ボタン４５ｂのみが押されていた場合、進行方向Ｄを反転させない。
【００７７】
一方、映像出力装置１の制御部１１は、ステップＳ１２において、左向きボタン４６ｄが押されたことによって、視線方向θが９０°より大きくなった場合、進行方向Ｄを反転させる。同様に、映像出力装置１の制御部１１は、ステップＳ１２において、右向きボタン４６ｂが押されたことによって、視線方向θが−９０°より小さくなった場合、進行方向Ｄを反転させる。
なお、映像出力装置１の制御部１１は、進行方向Ｄを保持データ３１として保持する。
【００７８】
次に、映像出力装置１の制御部１１は、視線方向θを算出する（ステップＳ１５）。
【００７９】
具体的には、映像出力装置１の制御部１１は、ステップＳ１２において、左向きボタン４６ｄが押されていた場合、視線方向θを所定量増加させる。このとき、映像出力装置１の制御部１１は、視線方向θが９０°より大きくなった場合には、視線方向Ｄが反転するので、−１８０°を引いて（θ＝θ−１８０）、視線方向θの補正を行う。
【００８０】
また、映像出力装置１の制御部１１は、ステップＳ１２において、右向きボタン４６ｂが押されていた場合、視線方向θを所定量減少させる。このとき、映像出力装置１の制御部１１は、視線方向θが９０°より小さくなった場合には、視線方向Ｄが反転するので、１８０°を加えて（θ＝θ＋１８０）、視線方向θの補正を行う。
なお、映像出力装置１の制御部１１は、視線方向θを保持データ３１として保持する。
【００８１】
次に、映像出力装置１の制御部１１は、進行方向Ｄにあるノードが分岐点（又は曲がり点）か否か判定する（ステップＳ１６）。
【００８２】
具体的には、映像出力装置１の制御部１１は、進行方向Ｄが起点ノード（Ｄ＝０）になっているか、終点ノード（Ｄ＝１）になっているかに応じて、ブランチ情報２６（図３（ｂ））から、対象ブランチのブランチＩＤに対応する起点ノードのノードＩＤ又は終点ノードのノードＩＤを、進行方向ＤにあるノードＩＤとして取得する。そして、映像出力装置１の制御部１１は、ノード情報２５（図３（ａ））から、当該ノードＩＤをもつノードの属性を取得する。そして、映像出力装置１の制御部１１は、この属性が２以上か否か判定する。
なお、進行方向ＤにあるノードＩＤは、保持データ３１として保持する。
【００８３】
映像出力装置１の制御部１１は、進行方向Ｄにあるノードが分岐点（又は曲がり点）であった場合（ステップＳ１６でＹｅｓ）は、ステップＳ１７へ進み、そうでない場合（ステップＳ１６でＮｏ）は、ステップＳ２１へ進む。
【００８４】
次に、映像出力装置１の制御部１１は、分岐点（又は曲がり点）における移動先のブランチ（移動先ブランチ）を決定する（ステップＳ１７）。
【００８５】
具体的には、映像出力装置１の制御部１１は、ステップＳ１６において取得した進行方向ＤにあるノードＩＤを起点ノード又は終点ノードにもつブランチであって、対象ブランチでないものを、ブランチ情報２６（図３（ｂ））から探索する。
【００８６】
そして、映像出力装置１の制御部１１は、進行方向Ｄにあるノードが曲がり点（ステップＳ１６において取得した属性が２）のときは、移動先のブランチを一意に定められるので、探索された１つのブランチを移動先ブランチとする。
【００８７】
一方、映像出力装置１の制御部１１は、進行方向Ｄにあるノードが分岐点（ステップＳ１６において取得した属性が３以上）のときは、移動先のブランチを一意に定められない。そのため、映像出力装置１の制御部１１は、例えば、ユーザ入力画面４１に、探索された各ブランチに対応する矢印等を表示して（図示しない）、ユーザにより左向きボタン４６ｄまたは右向きボタン４６ｂによって選択させ、選択されたブランチを、移動先ブランチとする。
なお、映像出力装置１の制御部１１は、ユーザの選択によらず、例えば、視線方向θによって、移動先ブランチを選択してもよい。
なお、映像出力装置１の制御部１１は、移動先ブランチのブランチＩＤを保持データ３１として保持する。
【００８８】
次に、映像出力装置１の制御部１１は、対象ブランチに対する移動先ブランチの角度（相対角度）を算出する（ステップＳ１８）。
【００８９】
具体的には、図１３に示すように、映像出力装置１の制御部１１は、対象ブランチの進行方向ＤにあるノードＩＤの座標Ｎ２（ｘ２、ｙ２）と、対象ブランチの進行方向Ｄと反対にあるノードのノードＩＤの座標Ｎ１（ｘ１、ｙ１）とを、ノード情報２５及びブランチ情報２６（図３）から取得する。そして、映像出力装置１の制御部１１は、対象ブランチのブランチ角度θ１を、Ｎ１を起点としＮ２を終点とするベクトルとＸ軸となす角として、（１）式により算出する。
【数１】
2014120044.tif 000003
【００９０】
そして、映像出力装置１の制御部１１は、移動先ブランチのブランチＩＤを用いて、対象ブランチの進行方向ＤにあるノードＩＤとは異なるノードＩＤを、ブランチ情報２６から取得し、当該ノードＩＤの座標Ｎ３（ｘ３、ｙ３）を、ノード情報２５から取得する。そして、映像出力装置１の制御部１１は、移動先ブランチのブランチ角度θ２を、Ｎ２を起点としてＮ３を終点とするベクトルとＸ軸とのなす角として、（２）式により算出する。
【数２】
2014120044.tif 000004
【００９１】
そして、映像出力装置１の制御部１１は、対象ブランチに対する移動先ブランチの角度（相対角度）θ０を、（３）式により算出する。
なお、映像出力装置１の制御部１１は、対象ブランチに対する移動先ブランチの角度θ０を保持データ３１として保持する。
【数３】
2014120044.tif 000005
【００９２】
図８に戻る。
次に、映像出力装置１の制御部１１は、視点位置Ｄの進行方向の進行率である第１の進行率Ｐ１を算出する（ステップＳ１９）。
具体的には、映像出力装置１の制御部１１は、進行率Ｐを用いて、進行方向Ｄが１のときは、Ｐ１＝Ｐとし、進行方向Ｄが０のときは、Ｐ１＝１−Ｐとする。
なお、映像出力装置１の制御部１１は、第１の進行率Ｐ１を保持データ３１として保持する。
【００９３】
次に、映像出力装置１の制御部１１は、第１の進行率Ｐ１と相対角度θ０との積を視線方向θとする（ステップＳ２０）。
【００９４】
図１４に示すように、第１の進行率Ｐ１は、進行方向Ｄに向かって０から１へと変化するので、視線方向をθ＝Ｐ１×θ０とすることにより、第１の進行率（すなわち視点位置）に応じて、視線方向θは０から相対角度θ０まで変化する。したがって、図１５に示すように、映像出力装置１の制御部１１は、視線方向θを、対象ブランチの進行を開始した端点から分岐点（又は曲がり点）まで滑らかに変化させることができ、分岐点（又は曲がり点）に到達したときに、視線方向θが移動先ブランチの方向θ０を向くようにすることができる。
【００９５】
次に、映像出力装置１の制御部１１は、対象ブランチの視点位置に応じた全方位画像から、視線方向θの視野画像を切出す（ステップＳ２１）。
【００９６】
具体的には、映像出力装置１の制御部１１は、ブランチ情報２６（図３（ｂ））から、対象ブランチのブランチＩＤに対応する映像ＩＤを取得する。そして、映像出力装置１の制御部１１は、映像情報２７（図３（ｃ））から、当該映像ＩＤのフレーム数Ｎを取得し、進行率Ｐとフレーム数Ｎとの積Ｐ×Ｎに最も近い整数ｋを、対象フレームのフレーム番号ｋとする。そして、映像出力装置１の制御部１１は、映像情報２７から、映像ＩＤに対応する全方位画像のシーケンスのｋ番目にある全方位画像を取得する。
【００９７】
そして、図１６に示すように、映像出力装置１の制御部１１は、取得した全方位画像５０から、視線方向θを中心として、切出角度Δに対応する領域を、視野画像５３として切出す。切出角度Δは、予め定められた値又はユーザによって設定された値であり、例えば１２０°である。
【００９８】
次に、映像出力装置１の制御部１１は、視点位置が対象ブランチの端点に到達したか否か、判定する（ステップＳ２２）。
具体的には、映像出力装置１の制御部１１は、進行率Ｐが０又は１になったか否か判定する。
【００９９】
映像出力装置１の制御部１１は、視点位置が対象ブランチの端点に到達した場合（ステップＳ２２でＹｅｓ）は、ステップＳ２３へ進み、そうでない場合（ステップＳ２２でＮｏ）は、ステップＳ１１へ戻る。
【０１００】
次に、映像出力装置１の制御部１１は、対象ブランチのブランチＩＤを移動先ブランチのブランチＩＤで更新するとともに、進行率Ｐ、進行方向Ｄ、視線方向θを初期化する（ステップＳ２３）。
【０１０１】
具体的には、映像出力装置１の制御部１１は、視点位置が到達した移動先ブランチの端点が、起点ノードのときは、進行率Ｐ＝０、進行方向Ｄ＝１、視線方向θ＝０とし、終点ノードのときは、進行率Ｐ＝１、進行方向Ｄ＝０、視線方向θ＝０とする。
【０１０２】
映像出力装置１の制御部１１は、ステップＳ２３の後、ステップＳ１１に戻る。
なお、映像出力装置１の制御部１１は、ユーザ入力画面４１において、ユーザによって終了の指示が出された場合には、適宜処理を終了する。
以上で、第１実施形態に係る視線方向転換処理の説明は終了である。
【０１０３】
なお、第１実施形態に係る視線方向転換処理は、これに限られるものではない。
例えば、ステップＳ２０において、視線方向θを、第１の進行率Ｐ１と対象ブランチに対する移動先ブランチの相対角度θ０を用いて、θ＝Ｐ１×θ０としたが、視線方向θは、分岐点（又は曲がり点）においてθ０で、第１の進行率Ｐ１に応じて滑らか（連続的）に変化させられればよく、一般にθ＝ｆ（Ｐ１，θ０）と表される。
【０１０４】
また、例えば、ステップＳ１３、ステップＳ１４、ステップＳ１５の順番は、いずれを先に行ってもよい。
また、例えば、ステップＳ１７の移動先ブランチの決定と、ステップＳ１８の相対角度の算出は、（進行方向Ｄが同一である間は）対象ブランチにおいて、一度行えばよいので、フラグ等を設けて、一度だけ移動先ブランチの決定及び相対角度の算出するようにしてもよい。
また、ステップＳ１８において、ブランチの角度はＸ軸とのなす角としたが、例えば、Ｙ軸とのなす角でもよい。
【０１０５】
［第１実施形態の効果］
第１実施形態の映像出力装置１は、視点位置が分岐点（又は曲がり点）へ向かって進む際に、視線方向を、分岐点（又は曲がり点）において移動先ブランチの方向となるように、視点位置に応じて滑らかに変化させるので、視点位置における全方位画像から切出した視線方向の視野画像も滑らか変化させることができ、高臨場感を演出することができる。
【０１０６】
［第２実施形態に係る映像出力装置の視線方向転換処理］
続いて、第２実施形態に係る視線方向転換処理について、図１７〜図２０を用いて説明する。図１７及び図１８は、第２実施形態に係る映像出力装置１の視線方向転換処理を示すフローチャートである。なお、図１７及び図１８において、丸Ａ及び丸Ｂの記号は、処理が継続することを表す。
【０１０７】
なお、図１７及び図１８のフローチャートにおいて、ステップＳ３１、Ｓ３２、Ｓ３３、Ｓ３４、Ｓ３５、Ｓ３６、Ｓ３７、Ｓ４１、Ｓ４２，Ｓ４５、Ｓ４６、Ｓ４７は、それぞれ、第１実施形態に係る図８のフローチャートのステップＳ１１、Ｓ１２、Ｓ１３、Ｓ１４、Ｓ１５、Ｓ１６、Ｓ１９、Ｓ１７、Ｓ１８、Ｓ２１、Ｓ２２、Ｓ２３と同じ処理であるので、その詳細の説明を省略する。
【０１０８】
第２実施形態における視線方向転換処理は、視点位置のある対象ブランチにおいて、視点位置が所定の基準位置まで進んだのち視線方向の転換を行う。
【０１０９】
映像出力装置１の記憶部１２には、図３に示す（ａ）ノード情報２５と、（ｂ）ブランチ情報２６と、（ｃ）映像情報２７とが予め記憶されるものとする。
【０１１０】
図１９は、第２実施形態に係る視線方向転換処理において、映像出力装置１が保持する保持データ３２の一例を示す図である。図１９に示すデータは、視線方向転換処理が実行される毎に値が更新されるため、映像出力装置１の記憶部１２に記憶せず、制御部１１のＲＡＭに記憶させるのが好ましい。
【０１１１】
図１９において、第１実施形態に係る図９の保持データ３１と同じ意味のデータ（対象ブランチＩＤ、進行率Ｐ、進行方向Ｄ、視線方向θ、進行方向にあるノードＩＤ、第１の進行率Ｐ１、対象ブランチのブランチ角度θ１、移動先ブランチのブランチＩＤ、移動先ブランチの移動先ノードＩＤ、移動先ブランチのブランチ角度θ２、対象ブランチに対する移動先ブランチの角度θ０＝θ２−θ１）は、その説明を省略する。
【０１１２】
基準位置Ｐ０とは、対象ブランチにおける第１の進行率（進行方向Ｄに補正した進行率）が所定の閾値をはじめて超える位置である。基準位置Ｐ０は、第１の進行率と同じく、１次元の正規化座標［０〜１］で表される。
【０１１３】
第２の進行率Ｐ２とは、視点位置が対象ブランチにおいて、進行方向Ｄにむかって、基準位置Ｐ０から分岐点（又は曲がり点）までどの程度進んだかを表す値であり、１次元正規化座標［０〜１］で表される。即ち、第２の進行率Ｐ２は、第１の進行率Ｐ１と、基準位置Ｐ０とを用いて、Ｐ２＝（Ｐ１−Ｐ０）／（１−Ｐ０）である。
【０１１４】
図１７の説明に戻る。
映像出力装置１の制御部１１は、ユーザ入力画面４１を表示部１６に出力する（ステップＳ３１）。ユーザ入力画面４１は、第１実施形態に係る図１１と同一である。
次に、映像出力装置１の制御部１１は、視点位置の移動と視線方向の移動の入力を受付ける（ステップＳ３２）。
【０１１５】
次に、映像出力装置１の制御部１１は、視点位置にあるブランチ（対象ブランチ）における進行率Ｐを算出することにより、視点位置を更新する（ステップＳ３３）。
次に、映像出力装置１の制御部１１は、進行方向Ｄを算出する（ステップＳ３４）。
次に、映像出力装置１の制御部１１は、視線方向θを算出する（ステップＳ３５）。
【０１１６】
次に、映像出力装置１の制御部１１は、進行方向Ｄにあるノードが分岐点（又は曲がり点）か否か判定する（ステップＳ３６）。
映像出力装置１の制御部１１は、進行方向Ｄにあるノードが分岐点（又は曲がり点）であった場合（ステップＳ３６でＹｅｓ）は、ステップＳ３７へ進み、そうでない場合（ステップＳ３６でＮｏ）は、ステップＳ４５（図１８）へ進む。
【０１１７】
次に、映像出力装置１の制御部１１は、視点位置の進行方向Ｄの進行率である第１の進行率Ｐ１を算出する（ステップＳ３７）。
【０１１８】
次に、映像出力装置１の制御部１１は、第１の進行率Ｐ１が所定の閾値を超えたか否か、判定する（ステップＳ３８）。
具体的には、映像出力装置１の制御部１１は、例えば、第１の進行率Ｐ１が０．７を超えたか否かを判定する。
映像出力装置１の制御部１１は、第１の進行率Ｐ１が所定の閾値を超えた場合（ステップＳ３８でＹｅｓ）は、ステップＳ３９へ進み、そうでない場合（ステップＳ３８でＮｏ）は、ステップＳ４５（図１８）へ進む。
【０１１９】
次に、映像出力装置１の制御部１１は、第１の進行率Ｐ１が所定の閾値をはじめて超えたか否か、判定する（ステップＳ３９）。
映像出力装置１の制御部１１は、第１の進行率Ｐ１が所定の閾値をはじめて超えた場合（ステップＳ３９でＹｅｓ）は、ステップＳ４０へ進み、そうでない場合（ステップＳ３９でＮｏ）は、ステップＳ４３へ進む。
【０１２０】
次に、映像出力装置１の制御部１１は、対象ブランチにおける視点位置を基準位置Ｐ０とする（ステップＳ４０）。
具体的には、映像出力装置１の制御部１１は、この時（第１の進行率Ｐ１が閾値をはじめて超えた時）の第１の進行率Ｐ１を基準位置Ｐ０とする。
なお、映像出力装置１の制御部１１は、基準位置Ｐ０を保持データ３２として保持する。
【０１２１】
次に、映像出力装置１の制御部１１は、分岐点（又は曲がり点）における移動先のブランチ（移動先ブランチ）を決定する（ステップＳ４１）。
次に、映像出力装置１の制御部１１は、対象ブランチに対する移動先ブランチの角度（相対角度）を算出する（ステップＳ４２）。
具体的には、映像出力装置１の制御部１１は、第１実施形態と同様、対象ブランチに対する移動先ブランチの角度（相対角度）θ０を、（４）式により算出する。
【数４】
2014120044.tif 000006
【０１２２】
次に、映像出力装置１の制御部１１は、基準位置Ｐ０から分岐点（又は曲がり点）までにおける視点位置の進行方向Ｄの進行率である第２の進行率Ｐ２を算出する（ステップＳ４３）。
【０１２３】
具体的には、映像出力装置１の制御部１１は、基準位置Ｐ０の第２の進行率Ｐ２が０であり、分岐点（又は曲がり点）の第２の進行率Ｐ２が１となるように、（５）式により、第２の進行率Ｐ２を算出する。
【数５】
2014120044.tif 000007
【０１２４】
次に、映像出力装置１の制御部１１は、第２の進行率Ｐ２と相対角度θ０との積を視線方向θとする（ステップＳ４４）。
【０１２５】
図１４に示したように、第２の進行率Ｐ２も、進行方向Ｄに向かって０から１へと変化するので、視線方向をθ＝Ｐ２×θ０とすることにより、第２の進行率（すなわち視点位置）に応じて、視線方向θは０から相対角度θ０まで変化する。したがって、図２０に示すように、映像出力装置１の制御部１１は、視線方向θを、対象ブランチの基準位置Ｐ０（６３）から分岐点（又は曲がり点）まで滑らかに変化させることができ、分岐点（又は曲がり点）に到達したときに、視線方向θが移動先ブランチの方向θ０を向くようにすることができる。
【０１２６】
図１８へ移る。
次に、映像出力装置１の制御部１１は、対象ブランチの視点位置に応じた全方位画像から、視線方向θの視野画像を切出す（ステップＳ４５）。
【０１２７】
次に、映像出力装置１の制御部１１は、視点位置が対象ブランチの端点に到達したか否か、判定する（ステップＳ４６）。
映像出力装置１の制御部１１は、視点位置が対象ブランチの端点に到達した場合（ステップＳ４６でＹｅｓ）は、ステップＳ４７へ進み、そうでない場合（ステップＳ４６でＮｏ）は、ステップＳ３１（図１７）へ戻る。
【０１２８】
次に、映像出力装置１の制御部１１は、対象ブランチのブランチＩＤを移動先ブランチのブランチＩＤで更新するとともに、進行率Ｐ、進行方向Ｄ、視線方向θを初期化する（ステップＳ４７）。
【０１２９】
映像出力装置１の制御部１１は、ステップＳ４７の後、ステップＳ３１（図１７）に戻る。
なお、映像出力装置１の制御部１１は、ユーザ入力画面４１において、ユーザによって終了の指示が出された場合には、適宜処理を終了する。
以上で、第２実施形態に係る視線方向転換処理の説明は終了である。
【０１３０】
なお、第２実施形態に係る視線方向転換処理は、これに限られるものではない。
例えば、ステップＳ４４においては、第１実施形態での指摘と同様に、視線方向θは、分岐点（又は曲がり点）においてθ０で、第２の進行率Ｐ２に応じて滑らか（連続的）に変化させられればよく、一般にθ＝ｆ（Ｐ２，θ０）と表される。
【０１３１】
また、例えば、ステップＳ３３、ステップＳ３４、ステップＳ３５の順番は、いずれを先に行ってもよい。
【０１３２】
また、例えば、ステップＳ３８において、第１の進行率Ｐ１が所定の閾値を超えたか否か判定したが、この処理は、記憶部１２に記憶されている、ブランチ情報２６（図３）には図示しないブランチの距離単位をもちいて、第１の進行率Ｐ１から、対象ブランチの分岐点（又は曲がり点）までの残りの実際の距離を算出し、当該距離が例えば３ｍ以下であるか否かを判定してもよい。
【０１３３】
また、例えば、ステップＳ３９において、第１の進行率Ｐ１が所定の閾値をはじめて超えたか否か判定したが、この処理は、開始時又は視点位置が別のブランチへ移った時（ステップＳ４７）に、基準位置Ｐ０を未設定とすることとして、基準位置Ｐ０が未設定か否か、判定することとしてもよい。
また、ステップＳ４２において、ブランチの角度はＸ軸とのなす角としたが、例えば、Ｙ軸とのなす角でもよい。
【０１３４】
［第２実施形態の効果］
第２実施形態の映像出力装置１は、視点位置が分岐点（又は曲がり点）へ向かって進む際に、視線方向を、分岐点（又は曲がり点）において移動先ブランチの方向となるように、分岐点（又は曲がり点）に近づいた基準位置から、視点位置に応じて滑らかに変化させるので、視点位置における全方位画像から切出した視線方向の視野画像も滑らか変化させることができ、高臨場感を演出することができる。
【０１３５】
以上、添付図面を参照しながら、本発明に係る映像出力装置１の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【０１３６】
１・・・・・・・映像出力装置
１１・・・・・・制御部
１２・・・・・・記憶部
１５・・・・・・入力部
１６・・・・・・表示部
２１・・・・・・ノード
２２・・・・・・ブランチ
２５・・・・・・ノード情報
２６・・・・・・ブランチ情報
２７・・・・・・映像情報
３１、３２・・・保持データ
４１・・・・・・ユーザ入力画面
４２・・・・・・経路表示領域
４３・・・・・・視野画像領域
４４・・・・・・入力受付領域
４８・・・・・・コントローラ
５０・・・・・・全方位画像
５１・・・・・・フレーム
５２・・・・・・シーケンス
５３・・・・・・視野画像
６０・・・・・・視点位置
６１・・・・・・視線方向
６２・・・・・・経路
【図１】
2014120044.tif 000008
【図２】
2014120044.tif 000009
【図３】
2014120044.tif 000010
【図４】
2014120044.tif 000011
【図５】
2014120044.tif 000012
【図６】
2014120044.tif 000013
【図７】
2014120044.tif 000014
【図８】
2014120044.tif 000015
【図９】
2014120044.tif 000016
【図１０】
2014120044.tif 000017
【図１１】
2014120044.tif 000018
【図１２】
2014120044.tif 000019
【図１３】
2014120044.tif 000020
【図１４】
2014120044.tif 000021
【図１５】
2014120044.tif 000022
【図１６】
2014120044.tif 000023
【図１７】
2014120044.tif 000024
【図１８】
2014120044.tif 000025
【図１９】
2014120044.tif 000026
【図２０】
2014120044.tif 000027