(57)【要約】【課題】  全周囲型三次元ディスプレイにおいて、全ての方向に対して、画像を表示するための処理を行う場合、観察者がいない方向に対しても観察者がいる方向と同様に、画像を表示するための処理を行うことになり、処理コストが大きい。【解決手段】  全周囲型三次元ディスプレイにおいて、観察者のいる方向を検出し、その検出された方向に基づいて、画像を表示するための処理を制御する。【選択図】  図５
2015104007.tif 000002
【特許請求の範囲】
【請求項１】
複数の方向それぞれに対して画像を表示する表示手段を有する表示システムであって、
前記複数の方向の中から、ユーザーのいる方向を検出する検出手段と、
前記検出された方向に対して画像を表示させるための処理を、前記検出された方向とは異なる方向に対して画像を表示させるための処理よりも優先的に実行する実行手段と、
を有することを特徴とする表示システム。
【請求項２】
前記表示手段は、前記複数の方向それぞれに対して互いに異なる別個の画像を表示することを特徴とする請求項１の表示システム。
【請求項３】
前記互いに異なる別個の画像は、視差画像であることを特徴とする請求項２の表示システム。
【請求項４】
前記画像を表示させるために行われる処理は、ＧＰＵによって実行されることを特徴とする請求項１乃至３の何れか１項の表示システム。
【請求項５】
前記表示手段の周囲を撮影する撮影手段を有し、
前記検出手段は、前記撮影手段によって撮影された周囲の画像から前記ユーザーの画像を検出することで、ユーザーのいる方向を検出することを特徴とする請求項１乃至４の何れか１項の表示システム。
【請求項６】
三次元オブジェクトのデータを記憶する記憶手段を有し、
前記実行手段は、前記検出された方向に対して画像を表示させるための前記処理として、前記検出された方向から観察される前記三次元オブジェクトの見え方を表す二次元画像を、前記データからレンダリングする処理を行い、前記異なる方向に対して画像を表示させるための処理として、前記異なる方向から観察される前記三次元オブジェクトの見え方を表す二次元画像を、前記データからレンダリングする処理を行い、
前記表示手段は、前記複数の方向それぞれに対して、各方向に対応する前記レンダリングされた二次元画像を表示することを特徴とする請求項１乃至５の何れか１項の表示システム。
【請求項７】
所定の方向に対応する二次元画像のデータを記憶する記憶手段を有し、
前記実行手段は、前記検出された方向に対して画像を表示させるための前記処理として、前記検出された方向および前記所定の方向に基づいて前記二次元画像のデータに対するモーフィングを行うことで二次元画像を生成する処理を行い、前記異なる方向に対して画像を表示させるための前記処理として、前記異なる方向および前記所定の方向に基づいて前記二次元画像のデータに対するモーフィングを行うことで二次元画像を生成する処理を行い、
前記表示手段は、前記複数の方向それぞれに対して、各方向に対応する前記生成された二次元画像を表示することを特徴とする請求項１乃至５の何れか１項の表示システム。
【請求項８】
前記実行手段は、前記検出された方向に対して画像を表示させるための処理を実行する頻度を、前記異なる方向に対して画像を表示させるための処理を実行する頻度よりも多くすることで、前記検出された方向に対して画像を表示させるための処理を、前記異なる方向に対して画像を表示させるための処理よりも優先的に実行することを特徴とする請求項１乃至７の何れか１項に記載の表示システム。
【請求項９】
前記実行手段は、前記検出された方向に対して画像を表示させるための処理を実行する確率を、前記異なる方向に対して画像を表示させるための処理を実行する確率よりも高くすることで、前記検出された方向に対して画像を表示させるための処理を、前記異なる方向に対して画像を表示させるための処理よりも優先的に実行することを特徴とする請求項１乃至７の何れか１項に記載の表示システム。
【請求項１０】
所定の被写体を互いに異なる方向から撮像することで、それぞれが二次元画像を得る複数の撮像手段を有し、
前記実行手段は、前記検出された方向に対して画像を表示させるための前記処理として、前記検出された方向に対応する前記撮像手段を用いて前記所定の被写体を撮像する処理を行い、前記異なる方向に対して画像を表示させるための前記処理として、前記異なる方向に対応する前記撮像手段を用いて前記所定の被写体を撮像する処理を行い、
前記表示手段は、前記複数の方向それぞれに対して、各方向に対応する前記撮像された二次元画像を表示することを特徴とする請求項１乃至５の何れか１項の表示システム。
【請求項１１】
前記実行手段は、前記検出された方向に対応する前記撮像手段によって行われる撮像のビットレートを、前記異なる方向に対応する前記撮像手段によって行われる撮像のビットレートよりも高くすることで、前記検出された方向に対して画像を表示させるための処理を、前記異なる方向に対して画像を表示させるための処理よりも優先的に実行することを特徴とする請求項１０に記載の表示システム。
【請求項１２】
前記実行手段は、前記検出された方向から所定の範囲に含まれる前記複数の方向のうちの各方向に対して画像を表示させるための処理を、前記所定の範囲に含まれない前記複数の方向のうちの各方向に対して画像を表示させるための処理よりも優先的に実行することを特徴とする請求項１乃至１１の何れか１項に記載の表示システム。
【請求項１３】
前記実行手段は、前記複数の方向のそれぞれに関して、各方向に対して画像を表示させるための処理を前記検出された方向に近付くにつれてより優先的に実行することを特徴とする請求項１乃至１２の何れか１項に記載の表示システム。
【請求項１４】
複数の方向それぞれに対して画像を表示する表示手段を有する表示装置であって、
前記複数の方向の中から、ユーザーのいる方向を検出する検出手段と、
前記検出された方向に対して画像を表示させるための処理を、前記検出された方向とは異なる方向に対して画像を表示させるための処理よりも優先的に実行する実行手段と、
を有することを特徴とする表示装置。
【請求項１５】
前記表示手段は、前記複数の方向それぞれに対して互いに異なる別個の画像を表示することを特徴とする請求項１４の表示装置。
【請求項１６】
前記互いに異なる別個の画像は、視差画像であることを特徴とする請求項１５の表示装置。
【請求項１７】
前記画像を表示させるために行われる処理は、ＧＰＵによって実行されることを特徴とする請求項１４乃至１６の何れか１項の表示装置。
【請求項１８】
前記表示手段の周囲を撮影する撮影手段を有し、
前記検出手段は、前記撮影手段によって撮影された周囲の画像から前記ユーザーの画像を検出することで、ユーザーのいる方向を検出することを特徴とする請求項１４乃至１７の何れか１項の表示装置。
【請求項１９】
複数の方向それぞれに対して画像を表示する表示手段を有する表示システムの制御方法であって、
前記複数の方向の中から、ユーザーのいる方向を検出する検出工程と、
前記検出された方向に対して画像を表示させるための処理を、前記検出された方向とは異なる方向に対して画像を表示させるための処理よりも優先的に実行する実行工程と、
を有することを特徴とする制御方法。
【請求項２０】
前記表示手段は、前記複数の方向それぞれに対して互いに異なる別個の画像を表示することを特徴とする請求項１９の制御方法。
【請求項２１】
前記互いに異なる別個の画像は、視差画像であることを特徴とする請求項２０の制御方法。
【請求項２２】
前記画像を表示させるために行われる処理は、ＧＰＵによって実行されることを特徴とする請求項１９乃至２１の何れか１項の制御方法。
【請求項２３】
前記表示システムは前記表示手段の周囲を撮影する撮影手段を有し、
前記検出工程は、前記撮影手段によって撮影された周囲の画像から前記ユーザーの画像を検出することで、ユーザーのいる方向を検出することを特徴とする請求項１９乃至２２の何れか１項の制御方法。
【請求項２４】
請求項１乃至１７の何れか１項に記載の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の方向それぞれに対して画像を表示する技術に関する。
【背景技術】
【０００２】
従来から立体視可能な映像を表示する三次元ディスプレイが広く知られている。三次元ディスプレイは、三次元ディスプレイを観察する人（以下、観察者）の左右の眼に異なる二次元画像（視差画像）を投影し、両眼視差による立体感を観察者に提供するものである。
【０００３】
更に近年は、水平方向３６０度の全周囲からでも立体視できる全周囲型三次元ディスプレイも登場している（特許文献１参照）。全周囲型三次元ディスプレイでは、全周囲の水平方向３６０度を所定の角度毎に複数の小領域に分割し、それぞれの小領域に対応した二次元画像データ（以下、表示画像データ）を用意しておく。そして、この全周囲型三次元ディスプレイは、小領域毎に、その小領域に対応する表示画像データを表示する。このようにすることで観察者のいる方向に従った異なる表示画像データが観察者の両眼に投影され、立体視が可能となる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２２２７８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１は、全周囲型三次元ディスプレイにおいて立体視可能な映像を表示する為には、全ての小領域に対応した表示画像データを投影している。
【０００６】
しかしながら特許文献１、観察者のいない方向に対しても表示画像データを投影しているため、表示画像データを投影するための処理コストが高いままであった。
【課題を解決するための手段】
【０００７】
本発明の表示システムは、複数の方向それぞれに対して画像を表示する表示手段を有する表示システムであって、前記複数の方向の中から、ユーザーのいる方向を検出する検出手段と、前記検出された方向に対して画像を表示させるための処理を、前記検出された方向とは異なる方向に対して画像を表示させるための処理よりも優先的に実行する実行手段と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明により、処理コストを抑えつつ、効率的に画像を周囲に投影することが可能になる。
【図面の簡単な説明】
【０００９】
【図１】三次元アニメーション表示装置１００と観察者１５０との位置関係を表した図である。
【図２】三次元アニメーション表示装置１００における表示画像データの更新タイミングの模式図である。
【図３】三次元アニメーション表示システムのハードウェア構成図である。
【図４】三次元アニメーション表示システムのソフトウェア構成図である。
【図５】三次元アニメーション表示システムのプログラム５００のフローチャートである。
【図６】観察角度情報決定手段４２１が、カメラ１１１〜１１６で撮影した映像に基づき、観察角度情報４２４を決定するフローチャートである。
【図７】観察角度情報決定手段４２１が、カメラ１１１〜１１６で撮影した映像に基づき、観察角度情報を決定する模式図である。
【図８】処理優先度決定手段４２２が、観察角度情報４２４に基づき、処理優先度情報４２５を決定する時の模式図である。
【図９】処理優先度決定手段４２２が、観察角度情報４２４に基づき、処理優先度情報４２５を決定するフローチャートである。
【図１０】処理順序決定手段４２３が、処理優先度情報４２５に基づき、処理順序情報４２６を決定するフローチャートである。
【図１１】プロジェクタ制御チップ３５１がＧＰＵ３３１からレンダリング画像データを受信した際の処理のフローチャートである。
【図１２】プロジェクタ制御チップ３５１がＧＰＵ３３１からレンダリング画像データを受信した際の処理の模式図である。
【図１３】三次元動画再生装置と三次元動画撮影装置の関係の模式図である。
【図１４】三次元動画再生システムのソフトウェア構成図である。
【図１５】三次元動画再生プログラム１４００のフローチャートである。
【図１６】三次元動画再生プログラム１４００の動作の模式図である。
【図１７】観察角度パケット送信処理のフローチャートである。
【図１８】三次元動画撮影システムのハードウェア構成図である。
【図１９】三次元動画撮影システムのソフトウェア構成図である。
【図２０】三次元動画撮影プログラム１９００のフローチャートである。
【図２１】三次元動画撮影プログラム１９００の動作の模式図である。
【図２２】観察パケット受信処理のフローチャートである。
【図２３】ビットレート決定処理のフローチャートと模式図である。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態について図面を用いて説明する。
【００１１】
（実施例１）
実施例１として三次元アニメーション表示システムを説明する。三次元アニメーション表示システムは、ＧＰＵ（Ｇｒａｐｈｉｃ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を用いて三次元モデルのデータをレンダリングすることで表示画像データを生成し、その表示画像データを表示するシステムである。
【００１２】
＜三次元アニメーション表示装置＞
図１では、三次元アニメーション表示システムとしての三次元アニメーション表示装置１００（以下、表示装置１００と呼ぶ）と、それを観察している観察者１５０との位置関係を表す。図１（Ａ）は表示装置１００の外観を、図１（Ｂ）は表示装置１００の内部構造を表している。
【００１３】
表示装置１００は、メインコントローラボード１０１、グラフィックボード１０２、プロジェクタ制御ボード１０３、モータ制御ボード１０４を備える。それぞれの詳細については、後述する。
【００１４】
また、表示装置１００は、モータ１０５〜１０７と、ホログラフィック指向性スクリーン１０９（以下、スクリーン１０９と呼ぶ）を備える。モータ１０５〜１０７が回転することにより、その回転駆動が伝達され、スクリーン１０９が図１（Ｂ）に示される矢印方向に回転する。
【００１５】
また、表示装置１００は、その側面にカメラ１１１〜１１６を備える。このカメラ１１１〜１１６としては、ＲＧＢカメラを用いることができる。その他、ステレオカメラなどの距離画像カメラで構成してもよいし、あるいは被写体のＲＧＢ画像、および、カメラから被写体までの距離を示す距離画像の両方の画像が撮影可能なＲＧＢ−Ｄカメラで構成をしてもよい。距離画像の情報は、実際に立体として存在している物体を検知する事が出来、観察者１５０を検出する際の精度向上に活用できる。
【００１６】
図１（Ｃ）は、表示装置１００と観察者１５０の位置関係を模式的に表したものである。表示装置１００の中心から観察半径Ｌ＝１０００［ｍｍ］の観察円周１７０上から観察者１５０は、スクリーン１０９を観察する。
【００１７】
カメラ１１１〜１１６の配置について補足する。表示装置１００の中心からカメラ１１１〜１１６までの距離を、カメラ半径Ｌｓとする。観察者１５０が観察円周１７０上に整列して観察することが理想的であるが、実際には多少ずれた位置に立つ。これを踏まえ、内側に余裕をもった半径Ｌｖ（補正観察半径）の、補正観察円周１８０を定義し、観察者１５０はこの補正観察円周１８０の外側から観察するものとする。
【００１８】
カメラ１１１は、水平画角θｓ１の範囲を撮影できる。このカメラ１１１の撮影できる補正観察円周１８０上の範囲は、表示装置１００を中心とした角度θｓ２の範囲に対応する。すなわちカメラ１１１は、表示装置１００を中心とした場合に補正観察円周１８０上の補正水平画角θｓ２の範囲が撮影できると言い換えることができる。次の数式１に基づけば、水平画角θｓ１と補正観察半径Ｌｖ、カメラ半径Ｌｓから、交点１８１の座標（ｘ、ｙ）を算出でき、また、交点１８１の座標（ｘ、ｙ）から補正水平画角θｓ２を算出できる。
【００１９】
【数１】
2015104007.tif 000003
【００２０】
例えば、Ｌｖ＝８００、Ｌｓ＝３００、水平画角θｓ１＝１００度のとき、交点１８１の座標は（６６８．６０３、４３９．２８４）、補正水平画角θｓ２は６６．６度となる。なお、計算上得られるもう１つの交点１８２は、カメラ１１１の撮影範囲内にないため採用しない。カメラ１台で６６．６度をカバーできるので、表示装置１００の全周囲を撮影する為には、カメラを６台設置すればよい。ここで例えばＮ台のカメラのうちのそれぞれのカメラが撮影すべき範囲の画角を撮影水平画角θｓ３とすると、Ｎ台のカメラが設置される場合には、θｓ３＝３６０／Ｎとなる。６台のカメラが設置される本実施例の場合には、θｓ３＝３６０／６＝６０度となる。
【００２１】
＜表示画像データの更新タイミング＞
図２は、表示装置１００における表示画像データの更新タイミングの模式図である。表示装置１００では、全周囲を５００の小領域に分割する。そして、小領域毎に、表示角度に対して表示画像データを関連付ける。つまり小領域ａにおいて、その小領域ａに対応する表示角度ａに別個の表示画像データａが関連付けられる。なお表示角度とは、表示装置１００の中心から見た、小領域の方向を表す角度のことである。本実施例では、表示角度は、０度から３５９．２８度までの０．７２度単位で増加する５００個の角度である。そして表示画像データとは、その小領域に対応する二次元画像データ（視差画像データ）のことである。全ての小領域に関連付けられた表示画像データを表示角度順に順次更新して表示する処理を１フレームの処理とすれば、表示装置１００は、１秒間にその処理を３０回行う。これにより、動画の三次元画像を観察者に提供できる。
【００２２】
＜ハードウェア構成＞
図３は表示装置１００のハードウェア構成図である。ハードウェアは、メインコントローラボード１０１、グラフィックボード１０２、プロジェクタ制御ボード１０３、および、モータ制御ボード１０４によって構成される。
【００２３】
メインコントローラボード１０１の構成を説明する。メインコントローラボード１０１では、ＣＰＵ３００にＲＡＭ３０１、チップセット３１０が接続されている。また、チップセット３１０にはＲＯＭ３１１、二次記憶装置３１２、ネットワークインタフェイス３１３、外部機器接続ハブ３２０が接続されている。外部機器接続ハブ３２０にはマウス３２２とシリアル通信チップ３２１、カメラ１１１〜１１６が接続されている。
【００２４】
ＣＰＵ３００は、後述する三次元アニメーション表示プログラム４００（以下、表示プログラム４００と呼ぶ）を実行するユニットである。
【００２５】
ＲＡＭ３０１は、ＣＰＵ３００が表示プログラム４００を実行する際に必要となる種々のデータに対する読み書き可能なメモリである。
【００２６】
チップセット３１０は、ＣＰＵ３００が比較的速度が要求されないハードウェアと接続する為のモジュールである。また、ＲＴＣ（Ｒｅａｌ  Ｔｉｍｅ  Ｃｌｏｃｋ）機能も包含しており、現在時刻の取得も行える。
【００２７】
ＲＯＭ３１１は、ＣＰＵ３００が表示プログラム４００を実行する際に必要となる種々のデータを読み出すための読み込み専用の記憶領域である。
【００２８】
二次記憶装置３１２は、表示プログラム４００や、その表示プログラム４００が実行される際に処理されるデータを記憶する二次記憶装置である。例えば、二次記憶装置３１２としてはハードディスクドライブやソリッドステートドライブを用いる事が出来る。
【００２９】
ネットワークインタフェイス３１３は、外部のネットワークハブや機器と接続して情報の相互交換をする為のインタフェイスである。
【００３０】
マウス３２２は、観察者１５０からの入力を受け付けるユーザインタフェイスデバイスである。
【００３１】
カメラ１１１〜１１６は、観察者１５０のいる方向を検出する為のカメラである。
【００３２】
シリアル通信チップ３２１は、プロジェクタ制御チップ３５１やモータ制御チップ３７１に対して電源制御コマンドを通知するための通信モジュールである。
【００３３】
グラフィックボード１０２の構成を説明する。
【００３４】
グラフィックボード１０２には、ＧＰＵ３３１とＧＰＵ  ＲＡＭ３３２、ＧＰＵ  ＲＯＭ３３３がある。ＧＰＵ３３１とＧＰＵ  ＲＡＭ３３２、ＧＰＵ  ＲＯＭ３３３は接続されている。ＧＰＵ３３１にはＧＰＵ  ＲＡＭ３３２とＧＰＵ  ＲＯＭ３３３が接続されている。
【００３５】
ＧＰＵ３３１は、ＣＰＵ３００と接続されており、ＣＰＵ３００からの制御命令を受け取り、制御命令に基づいてレンダリング処理を実行する演算処理ユニットである。このレンダリング処理によってレンダリング画像データ４６４が生成される。
【００３６】
ＧＰＵ  ＲＡＭ３３２は、ＧＰＵ３３１が処理を実行する際に利用する読み書き可能な記憶領域である。
【００３７】
ＧＰＵ  ＲＯＭ３３３は、ＧＰＵ３３１が処理を実行する際に利用する読み込み専用の記憶領域である。
【００３８】
プロジェクタ制御ボード１０３の構成を説明する。
【００３９】
プロジェクタ制御ボード１０３には、プロジェクタ制御チップ３５１、プロジェクタＲＡＭ３５２、プロジェクタＲＯＭ３５３、投影画像形成部３５４、光源部３５５、レンズ３５８がある。プロジェクタ制御チップ３５１には、プロジェクタＲＡＭ３５２、プロジェクタＲＯＭ３５３、投影画像形成部３５４、光源部３５５、が接続されている。
【００４０】
プロジェクタ制御チップ３５１は、プロジェクタ制御ボード１０３を制御するためのチップである。このプロジェクタ制御チップ３５１は、ＧＰＵ３３１からプロジェクタ制御ボード１０３で投影しようとするレンダリング画像データ４６４を受信する。そしてプロジェクタ制御チップ３５１は、受信したそのレンダリング画像データ４６４を表示画像データ４７１として、プロジェクタＲＡＭ３５２上へ保持する。またプロジェクタ制御チップ３５１は、シリアル通信チップ３２１から制御コマンドを受け取り、プロジェクタ制御ボード１０３の電源制御を行う。また、プロジェクタ制御チップ３５１は同期信号をモータ制御チップ３７１へ提供する。
【００４１】
プロジェクタＲＡＭ３５２は、表示画像データ４７１を保持する為の記憶領域である。
【００４２】
プロジェクタＲＯＭ３５３は、プロジェクタ制御チップ３５１が動作するプログラムが記載されている記憶領域である。
【００４３】
投影画像形成部３５４は、投影しようとする画像の信号値に応じた画像を形成するモジュールである。この投影画像形成部３５４には、例えば反射型液晶を用いることができる。
【００４４】
光源部３５５は、画像を投影する際に用いられる光源である。光源部３５５は例えばＬＥＤやランプを適用できる。
【００４５】
レンズ３５８は、光源部３５５が点灯し投影画像形成部３５４で反射させた光を拡大し、所望の大きさに拡大投射するためのレンズである。
【００４６】
モータ制御ボード１０４の構成を説明する。
【００４７】
モータ制御ボード１０４には、モータ制御チップ３７１、モータＲＯＭ３７２がある。モータ制御チップ３７１には、モータＲＯＭ３７２とモータ１０５〜１０７が接続されている。
【００４８】
モータ制御チップ３７１は、モータ１０５〜１０７への電力を供給する。このとき、モータ制御チップ３７１は、プロジェクタ制御チップ３５１から同期信号を受け取り、回転速度を同期する。また、モータ制御チップ３７１は、シリアル通信チップ３２１からの制御コマンドを受け取り、モータ制御ボード１０４に接続されているモータ１０５〜１０７の電源制御を行う。
【００４９】
モータＲＯＭ３７２には、モータ制御チップ３７１が動作する際に利用する読み込み専用の記憶領域であり、制御プログラムが保持されている。
【００５０】
モータ制御チップ３７１からの電力により、モータ１０５〜１０７が回転すると、その回転駆動が伝達されることで、スクリーン１０９が回転する。モータ１０５〜１０７とスクリーン１０９間における回転駆動の伝達手段としては、ベルトやギア等を用いる事が出来る。
【００５１】
スクリーン１０９は、偏光フィルムが貼付されているプロジェクションスクリーンであり、プロジェクタ制御ボード１０３から投影された映像を映すスクリーンとなる。このスクリーン１０９の偏光フィルムは、所定の方向から入射された光を所定の方向に偏光する。そして、この偏光フィルムはスクリーン１０９が回転すると同じように回転するため、スクリーン１０９が３６０度回転すれば、偏光フィルムによって光がその回転に同期して偏光される。
【００５２】
＜ソフトウェア構成＞
図４は表示装置１００、特にメインコントローラボード１０１のソフトウェア構成図である。メインコントローラボード１０１のＣＰＵ３００が表示プログラム４００を実行することによって、メイン制御モジュール４１０、処理順序決定モジュール４２０、表示画像生成モジュール４４０が実現される。
【００５３】
メイン制御モジュール４１０は、ＵＩ操作受付手段４１１を有する。このＵＩ操作受付手段４１１は、マウス３２２を経由して観察者１５０からの操作を受け付ける。またメイン制御モジュール４１０は、観察者１５０あるいは他のユーザーから電源切断指示を受け取った場合には、プロジェクタ制御チップ３５１やモータ制御チップ３７１に対して電源切断制御の指示を通知する。
【００５４】
処理順序決定モジュール４２０は、観察角度情報決定手段４２１、処理優先度決定手段４２２、処理順序決定手段４２３を有する。また、処理順序決定モジュール４２０は、観察角度情報４２４、処理優先度情報４２５、処理順序情報４２６を処理する。なおこれらの情報は図３の二次記憶装置３１２に記憶されて、処理順序決定モジュール４２０によって処理される。
【００５５】
観察角度情報決定手段４２１は、カメラ１１１〜１１６で撮影した画像を元に、観察角度情報４２４を決定する。
【００５６】
処理優先度決定手段４２２は、観察角度情報４２４に基づき、それぞれの表示角度に対する処理優先度である処理優先度情報４２５を決定する。
【００５７】
処理順序決定手段４２３は、処理優先度情報４２５に基づき、それぞれの表示角度に対応する表示画像データの処理順序を示す処理順序情報４２６を決定する。
【００５８】
表示画像生成モジュール４４０は、三次元モデル取得手段４４１と、表示画像レンダリング手段４４２、三次元モデルデータ４４３、三次元シーンデータ４４４、三次元カメラデータ４４５を処理する。なおこれらの情報は、図３の二次記憶装置３１２に記憶されて、表示画像生成モジュール４４０によって処理される。
【００５９】
三次元モデルデータ４４３は、三次元コンピュータグラフィック（３ＤＣＧ）で用いられる三次元オブジェクト（三次元モデル）を表現するデータである。例えば、三次元モデルの形状は、三次元空間上の三角形（ポリゴン）の集合によって表現する事ができる。あるいは、スプライン曲線などを用いて曲面を表現する事も出来る。三次元モデルの表面の属性を指定する事で、その表面部分の色や反射率などを表現したりすることもできる。三次元モデルのデータフォーマットに関しては、それぞれの三次元コンピュータグラフィックで用いる事のできるモデルデータを適用することができる。
【００６０】
三次元シーンデータ４４４は、表示画像レンダリング手段４４２がレンダリングする際の外的条件を表現するデータである。三次元モデルが存在する空間上における光源の位置やレンダリングによって出力される画像の大きさなどの情報を含む。
【００６１】
三次元カメラデータ４４５は、表示画像レンダリング手段４４２がレンダリングする際のカメラ条件を表現するデータである。三次元カメラデータとしては、カメラ位置（ｅｘ、ｅｙ、ｅｚ）、視点位置（ｃｘ、ｃｙ、ｃｚ）、カメラの天方向（ｕｘ、ｕｙ、ｕｚ）によって表現するものとする。カメラ位置は、三次元空間上におけるカメラの位置を意味する。視点位置は、三次元空間上におけるカメラが向いている方向を意味する。カメラの天方向は、三次元空間上におけるレンダリング画像データの上方向を意味する。この三次元カメラデータ４４５を表示角度に応じて変えることによって、三次元モデルを複数の異なる方向から観察した際に見える二次元の画像（表示画像）をレンダリングすることができる。
【００６２】
三次元モデル取得手段４４１は二次記憶装置３１２から三次元モデルデータを読み込み、三次元モデルデータ４４３として保持する。
【００６３】
表示画像レンダリング手段４４２は、出力画像サイズや光源位置などの表示条件を三次元シーンデータ４４４として決定する。また、表示画像レンダリング手段４４２は、それぞれの表示画像データと関連づいた表示角度に応じて三次元カメラデータ４４５を決定する。
【００６４】
表示画像レンダリング手段４４２は、三次元モデルデータ４４３、三次元シーンデータ４４４、三次元カメラデータ４４５に基づき、表示画像データを形成すべく、ＧＰＵ３３１へレンダリング命令を通知する。
【００６５】
＜表示プログラム４００のフローチャート＞
図５は表示プログラム４００に従って実行される処理のフローチャートである。本フローチャートは、二次記憶装置３１２に保持されている表示プログラム４００をＣＰＵ３００が実行することで実現される前述の各モジュールによって、実行される。
【００６６】
本フローチャートを実行することにより、観察者１５０が表示装置１００を観察する位置に基づいたレンダリング処理の優先付けを行い、観察者１５０がいない方向に画像を提示するための処理コストを低減することができる。
【００６７】
メイン制御モジュール４１０は、フレーム当たりの処理時間ＭｓｅｃＰｅｒＦｒａｍｅ（単位はミリ秒）を算出する（Ｓ５０１）。ＭｓｅｃＰｅｒＦｒａｍｅは表示フレームレートＦＰＳ（ＦｒａｍｅｓＰｅｒＳｅｃｏｎｄ）から数式２から算出できる。ここでは表示フレームレートＦＰＳは３０ＦＰＳとしている。するとフレーム当たりの処理時間はおよそ３３ミリ秒となる。
【００６８】
【数２】
2015104007.tif 000004
【００６９】
三次元モデル取得手段４４１は、三次元モデルデータ４４３を二次記憶装置３１２から読み込む（Ｓ５０２）。三次元モデルデータ４４３には、三次元モデルの形状情報やテクスチャ情報が含まれる。
【００７０】
表示画像レンダリング手段４４２は、出力画像サイズや光源位置などの表示条件を三次元シーンデータ４４４として決定する（Ｓ５０３）。
【００７１】
メイン制御モジュール４１０は、ＵＩ操作受付手段４１１から終了指示を受信するまで以下の処理を繰り返す（Ｓ５１０）。ＵＩ操作受付手段４１１は本処理とは別のスレッドで動作して、非同期に終了指示を受付けることが望ましい。
【００７２】
観察角度情報決定手段４２１は、カメラ１１１〜１１６で撮影した画像に基づき、観察角度情報４２４を決定する（Ｓ５１１）。観察角度情報４２４とは、ある基準観察方向に対して、観察者１５０が位置する水平方向の相対的角度を表した情報である。本実施例では表示装置１００の中心からカメラ１１１の位置に向かう方向を基準観察方向とする。この観察角度情報４２４の決定方法の詳細については、図６、７を用いて後述する。
【００７３】
処理優先度決定手段４２２は、Ｓ５１１で決定された観察角度情報４２４に基づき、処理優先度情報４２５を決定する（Ｓ５１２）。処理優先度情報４２５は、それぞれの表示角度に関連付けられたそれぞれの表示画像データに対する処理の優先度を示す情報である。この処理優先度情報４２５の決定方法の詳細については、図８、９を用いて後述する。
【００７４】
処理順序決定手段４２３は、Ｓ５１２で決定された処理優先度情報４２５に基づき、処理順序情報４２６を決定する（Ｓ５１３）。本実施例の処理順序情報４２６は、リスト状の配列Ｒであり、この配列Ｒ［・］の各要素には１つの表示角度が、処理優先度が高い順に対応付けられている。すなわちＲ［０］に対応付けられている表示角度は、Ｒ［１］に対応付けられている表示角度よりも、処理優先度が高い。この処理順序情報４２６の決定方法の詳細については、図１０を用いて後述する。
【００７５】
表示画像レンダリング手段４４２は、三次元モデルデータ４４３のポーズを決定する（Ｓ５１４）。例えば三次元モデルデータ４４３の姿勢が時系列に沿って変化するモデルデータであれば、モデルデータの一部の内容を時刻に応じて変化させることで、三次元モデルデータ４４３のポージングを行う。具体的にはモデルデータの関節部の角度をその時刻に応じた角度に変更させる、また、顔の表情のテクスチャなどを変化させる、などを行う。
【００７６】
メイン制御モジュール４１０は、カウンタ変数ｉを０、次表示画像処理予想時刻ｔを０に初期化する（Ｓ５１５）。
【００７７】
メイン制御モジュール４１０は、チップセット３１０のＲＴＣ機能によって現在時刻を取得し、フレーム開始時刻Ｆに代入する（Ｓ５１６）。
【００７８】
メイン制御モジュール４１０は、次表示画像処理予想時刻ｔがフレーム当たりの処理時間ＭｓｅｃＰｅｒＦｒａｍｅｓを超過するまでの間、以下の処理を実行する（Ｓ５２０）。
【００７９】
表示画像レンダリング手段４４２は、処理対象の表示角度ｔａｒｇｅｔＩｄを、処理順序情報４２６を参照して決定する（Ｓ５２１）。具体的には、表示画像レンダリング手段４２２は、現在のカウンタ変数ｉにおける処理順序情報４２６Ｒ［ｉ］に対応付けられている表示角度を取得し、その取得された表示角度をｔａｒｇｅｔＩｄに代入する。
【００８０】
表示画像レンダリング手段４４２は、決定されたｔａｒｇｅｔＩｄに基づいて、三次元カメラデータ４４５を決定する（Ｓ５２２）。ここでは、三次元カメラデータ４４５は、数式３に示すパラメータに基づくものとする。なお、このときのスクリーン１０９から観察者１５０の瞳孔までの高さＨＰを１０００［ｍｍ］とする。すなわち、この決定された三次元カメラデータ４４５は、観察者１５０の頭部の位置からのスクリーン１０９上の三次元モデルの見え方を規定する情報である。
【００８１】
【数３】
2015104007.tif 000005
【００８２】
表示画像レンダリング手段４４２は、三次元モデルデータ４４３、三次元シーンデータ４４４、三次元カメラデータ４４５と共に、レンダリング命令をＧＰＵ３３１に通知する。（Ｓ５２３）。このレンダリング命令の通知によるＧＰＵ３３１のレンダリング処理については、図１１、１２を用いて後述する。
【００８３】
メイン制御モジュール４１０は、カウンタ変数ｉを１増加させる（Ｓ５２４）。
【００８４】
メイン制御モジュール４１０は、次表示画像処理予想時刻ｔを、下記の数式４に基づいて更新する（Ｓ５２５）。この数式１３によって得られる時刻ｔは、フレーム開始時刻Ｆから処理出力枚数ｉ＋１枚分のレンダリング画像を得るためにかかる時間に相当する。なお、この処理出力枚数ｉの値は、カウンタ変数ｉと同じである。なお現在時刻は、Ｓ５１６と同様の方法で取得される。
【００８５】
【数４】
2015104007.tif 000006
【００８６】
次表示画像処理予想時刻ｔの計算例を表１に表す。なお、処理出力枚数ｉが０枚の場合は、次表示画像処理予想時刻ｔは０で初期化されており、それ以外の場合は、次表示画像処理予想時刻ｔは、フレーム開始時刻Ｆからの経過時間に基づいて計算される。例えば、処理出力画像数ｉが１９枚までは、次表示画像処理予想時刻ｔは、３１．９［ミリ秒］となり、フレーム当たりの処理時間ＭｓｅｃＰｅｒＦｒａｍｅ＝３３［ミリ秒］よりも小さいので、処理は、Ｓ５２１へ戻って継続される。一方で処理出力画像数ｉが２０枚となった場合、次表示画像処理予想時刻ｔは３３．４［ミリ秒］となる。よって、次の表示画像データのレンダリング処理を行おうとすると、ＭｓｅｃＰｅｒＦｒａｍｅ＝３３［ミリ秒］を超過するため、ここで１フレーム分の表示画像データのレンダリング処理を終了する。
【００８７】
【表１】
2015104007.tif 000007
【００８８】
なお上記では、次の表示画像データを処理するのにかかる処理時間が、その時点での平均的な表示画像処理時間と同じであるという前提に基づいた、単純な次表示画像処理時間の予測モデルを用いた。これに代えて、次表示画像処理がフレーム当たりの処理時間ＭｓｅｃＰｅｒＦｒａｍｅ内に収まるように安全係数αを導入してもよい。αはこれまでの表示画像データを処理する時間に対して、次の表示画像データがより時間がかかった場合の失敗を見据えた案件係数であり、１以上の実数を用いる。例えば、α＝２．０であれば、次の表示画像データはこれまでの平均の２倍時間がかかる予想モデルとなる。このときの次表示画像処理時間の予測式を数式５で表す。
【００８９】
【数５】
2015104007.tif 000008
【００９０】
以上の処理を繰り返すことで、表示画像レンダリング手段４４２は、処理順序情報４２６に基づいて、処理優先度の高い表示角度に対応した表示画像データを優先的にレンダリングするようにＧＰＵ３３１へ通知できる。
【００９１】
以上説明したように、本フローチャートを実行することにより、観察者１５０が表示装置１００を観察する位置に基づいたレンダリング処理の優先付けを行い、観察者１５０がいない方向に画像を提示するための処理コストを低減することができる。
【００９２】
＜観察角度情報の決定＞
上記のステップＳ５１１で行われる観察角度情報の決定方法の詳細について、図６、７を用いて説明する。図６は、カメラ１１１〜１１６で撮影した映像に基づいて、観察角度情報決定手段４２１が観察角度情報４２４を決定する処理のフローチャートである。図７は、カメラ１１１〜１１６の映像に基づいて、観察角度情報決定手段４２１が観察角度情報４２４を決定する方法を説明するための模式図である。
【００９３】
なお、ここでは観察者１５０の顔の領域を検出して観察角度情報４２４を算出する基本的な処理について説明するが、他の処理によって観察角度情報４２４を決定しても良い。例えば、観察者１５０の顔の領域を検出して、更に観察者１５０の両眼の領域を検出することで観察者１５０の顔の向きを推定し、観察者１５０が観察しているのかを判定してもよい。あるいは、観察者１５０の両眼の領域に基づいて視線情報を検出する事で、観察者１５０が観察しているのかを判定してもよい。
【００９４】
観察角度情報決定手段４２１は、カメラ１１１〜１１６からカメラ画像７０１〜７０６を取得する（Ｓ６０１、図７（Ａ））。
【００９５】
観察角度情報決定手段４２１は、有効水平画素数Ｌａを計算する（Ｓ６０２）。有効水平画素数Ｌａとは、それぞれのカメラ１１１〜１１６の撮影水平画角θｓ３に相当する範囲の画像の水平方向の画素数である。各カメラ１１１〜１１６によって撮影されたカメラ画像７０１〜７０６の水平方向の画素数Ｗを６４０［ピクセル］とした場合の、有効水平画素数Ｌａは、数式６にて求められる。
【００９６】
【数６】
2015104007.tif 000009
【００９７】
観察角度情報決定手段４２１は、カメラ画像７０１〜７０６をパノラマ結合したパノラマ結合画像７１０を形成する（Ｓ６０３、図７（Ｂ））。なお、観察者１５０がカメラ画像間の境界部分にいる場合にも検出するために、カメラ画像７０６の右にカメラ画像７０１を配置して結合する。例えば、カメラ画像の中心からＬａ／２の範囲の外側の画像を、隣接するカメラ画像の中心からＬａ／２の範囲内とオーバーラップするようにパノラマ結合する。このとき、αブレンドを用いて、それぞれのカメラ画像７０１〜７０６同士のオーバーラップ部分をスムーズに遷移するように結合してもよい。
【００９８】
観察角度情報決定手段４２１は、パノラマ結合画像７１０から顔領域７２１〜７２４を検出する（Ｓ６０４、図７（Ｃ））。顔領域の検出手段にはＨａａｒ−ｌｉｋｅ特徴を用いたＡｄａ  ｂｏｏｓｔなどの機械学習を適用する事ができる。このとき、検出する顔領域の幅・高さに制限を持たせ、その幅・高さ・あるいはその積で求められる面積が任意の閾値よりも小さい顔領域については、表示装置１００を観察していない人物の顔領域であるとみなして除外できる。更に、人体認識と姿勢推定を併用し、その顔領域の人間が観察しているのかを推定し、表示装置１００を観察していない人間の顔領域を除外できる。あるいは、眼領域検出や視線検出をおこない、表示装置１００を観察していない人物の顔領域を除外してもよい。あるいは、カメラ１１１〜１１６に対して撮影物との距離を画素単位で検出できる距離画像撮影機能を付与し、それによって表示装置１００から一定以上離れている人物の顔領域については、除外する事も出来る。
【００９９】
ここでは、下記の表２の結果が得られたものとする。ここで、各顔領域はパノラマ結合画像７１０の左上を原点座標（０、０）とし、各顔領域の左上の座標（ｌｅｆｔ、ｔｏｐ）と、領域の幅・高さ（ｗｉｄｔｈ、ｈｅｉｇｈｔ）で表現している。
【０１００】
【表２】
2015104007.tif 000010
【０１０１】
観察角度情報決定手段４２１は、観察角度情報Ｖ（すなわち、観察角度情報４２４）を空にする（Ｓ６０５）。
【０１０２】
観察角度情報決定手段４２１は、それぞれの顔領域に対して下記処理を繰り返す（Ｓ６１０）。
【０１０３】
観察角度情報決定手段４２１は、顔領域中心の水平方向座標を求め、顔領域中心距離Ｌｆとする（Ｓ６１１）。顔領域中心距離Ｌｆは顔領域の左端座標であるｌｅｆｔと、顔領域の幅であるｗｉｄｔｈから、数式７によって求める事ができる。顔領域中心距離Ｌｆの算出結果を表３にまとめる。
【０１０４】
【数７】
2015104007.tif 000011
【０１０５】
【表３】
2015104007.tif 000012
【０１０６】
観察角度情報決定手段４２１は、それぞれの顔領域の中心が位置する基準点からの角度を求めて観察角度Ｄｉとする（Ｓ６１２）。ここでは、カメラ画像７０１の中心を基準点とする。パノラマ結合画像７１０において左端から基準点（すなわち、カメラ画像７０１の中心）までの距離は、Ｗ／２で表現できる。観察角度Ｄｉは顔領域中心距離Ｌｆに基づき数式８によって求める事が出来る。観察角度Ｄｉの算出結果を表４にまとめる。なお係数Ｃは、カメラの台数であり、本実施例では６である。
【０１０７】
【数８】
2015104007.tif 000013
【０１０８】
【表４】
2015104007.tif 000014
【０１０９】
観察角度情報決定手段４２１は、観察角度Ｄｉ  が０度以上、３６０度未満であるかを判断する（Ｓ６２０）。
【０１１０】
観察角度情報決定手段４２１は、観察角度Ｄｉが０度以上、３６０度未満の範囲内であれば観察角度情報Ｖ（すなわち観察角度情報４２４）に観察角度Ｄｉを追加する。そうでなければ、観察角度Ｄｉを観察角度情報Ｖに追加しない（Ｓ６２１）。
【０１１１】
パノラマ結合画像７１０は水平方向に３６０度以上の角度に相当するだけの幅を持っており、顔領域が二度検出されることを除外する為にチェックを行う。例えば、検出された顔領域７２１と顔領域７２４は、カメラ画像７０１に含まれる同一の顔領域である。この場合には、範囲内に収まっている顔領域７２１の結果だけを観察角度情報Ｖに追加する。観察角度情報決定手段４２１が表４に基づいて観察角度情報Ｖ（すなわち観察角度情報４２４）を決定した結果を表５に示す。なおこの観察角度情報Ｖは、リスト状の配列であり、各要素には１つの観察角度が格納されている。
【０１１２】
【表５】
2015104007.tif 000015
【０１１３】
以上により、観察角度情報決定手段４２１はカメラ１１１〜１１６で撮影したカメラ画像７０１〜７０６に基づいて、観察角度情報４２４を決定できる。
【０１１４】
なお、本件では表示装置１００が能動的に観察角度情報４２４を検出する手段を説明した。その他、観察者１５０が自分の位置情報などをマウス３２２を介して表示装置１００に入力することで、表示装置１００が受動的に観察角度情報４２４を決定する手段を取る事もできる。あるいは能動的に検出した情報と、受動的に検出した情報に基づいて、観察角度情報４２４をより高精度に決定することも可能である。
【０１１５】
＜処理優先度情報の決定＞
上記のステップＳ５１２で行われる処理優先度情報の決定方法の詳細について、図８、９を用いて説明する。図８は、ステップＳ５１１で算出された観察角度情報４２４に基づいて、処理優先度決定手段４２２が処理優先度情報４２５を決定する方法を説明するための模式図である。図９は、ステップＳ５１１で算出された観察角度情報４２４に基づいて、処理優先度決定手段４２２が処理優先度情報４２５を決定する処理のフローチャートである。なお本実施例では、優先度０が処理の優先度が最も低い状態を示し、優先度１が処理の優先度が最も高い状態を示す。
【０１１６】
下記で行う処理の説明においては、処理優先度を決定する際に行う計算を単純化するために、相対的観察角度ｄｘを導入する。相対的観察角度ｄｘは、各表示角度と、その時点での観察者１５０の位置に対応する表示角度との差を示す角度である。例えば観察者１５０の位置に対応する表示角度が７２度であった場合に、表示角度７２．７２度の相対的観察角度ｄｘは、０．７２度（＝７２．７２度−７２度）となる。
【０１１７】
表示装置１００を用いて三次元動画を観察する際、観察者１５０が静止している場合と、歩行している場合とが考えられる。
【０１１８】
図８（Ａ）は、観察者１５０が水平歩行している場合における、表示装置１００との相対的な位置関係を表している。表示装置１００を観察する時に観察者１５０の歩行速度を１分あたり８０メートル、すなわち、１３３３［ｍｍ／秒］と仮定する。１フレーム後に観察者１５０が水平移動する距離Ｌｍは、１３３３／３０＝４４［ｍｍ／フレーム］となる。数式９は、観察者１５０が水平移動したときの回転角度θｍ［度］で表す。
【０１１９】
【数９】
2015104007.tif 000016
【０１２０】
ここで、観察者１５０の瞳孔間距離ＬＰは６５［ｍｍ］とする。観察者１５０の中心から片方の瞳孔間の角度θｐ［度］は、数式１０で表せる。
【０１２１】
【数１０】
2015104007.tif 000017
【０１２２】
処理優先度を割り振る１つの手段としては、１フレーム後に瞳孔が存在する可能性ある範囲の表示角度に対して、均等に処理優先度を高く割り当てる方法がある。この方法は、観察者１５０が歩行しながら、表示装置１００を観察する場合に有効である。観察者１５０が１フレーム内にＬｍだけ水平移動する時、観察者１５０の瞳孔もまたＬｍだけ水平移動する。よって、瞳孔の回転移動角θｐｍはθｍ＋θｐで表せる。この場合、θｐｍ＝４．３８［度］となる。相対的観察角度ｄｘ［度］により、優先度関数ｆ（ｄｘ）を表現した場合、数式１１で表現できる。すなわち、相対的観察角度ｄｘに対応する表示角度の処理優先度は、ｆ（ｄｘ）として得られる。この相対的観察角度ｄｘに対する処理優先度分布を図８（Ｂ）に示す。
【０１２３】
【数１１】
2015104007.tif 000018
【０１２４】
処理優先度を割り振る別の手段としては、現フレームで観察者１５０の瞳孔に近い範囲の表示角度に対してより高い処理優先度を割り当てる方法がある。この方法は、観察者１５０が静止しながら、表示装置１００を観察する場合に有効である。観察者中心からの相対的観察角度ｄｘ［度］によって処理優先度関数ｆ（ｄｘ）を表現した場合、数式１２を用いる事が出来る。パラメータσは処理優先度を割り当てる角度幅を決定するパラメータである。任意のパラメータを設定する事が出来るが、ここではσにはθｍ／２を割り当てる。すなわち、相対的観察角度ｄｘに対応する表示角度の処理優先度は、ｆ（ｄｘ）として得られる。このときの相対的観察角度ｄｘに対する処理優先度分布を図８（Ｃ）に示す。
【０１２５】
【数１２】
2015104007.tif 000019
【０１２６】
そのほか、相対的観察角度ｄｘの大きさに比例・反比例して処理優先度を割り当てる手段などを取ることも可能である。これらの相対的観察角度ｄｘから処理優先度を算出する手段については種々の方法を用いる事が出来る。
【０１２７】
図９は、処理優先度決定手段４２２が、Ｓ５１１で決定された観察角度情報４２４に基づき、処理優先度情報４２５を決定するフローチャートである。
【０１２８】
処理優先度決定手段４２２は、処理優先度情報Ｐ内の全てを０で初期化する（Ｓ９０１）。なお、処理優先度情報Ｐは、表示角度に対応するリスト状の配列であり、各要素には、表示角度それぞれに対応する処理優先度が格納される。本実施例では、後述するように表示角度が５００個であるので、処理優先度情報ＰはＰ［０］〜Ｐ［４９９］までの５００の要素を持つ。
【０１２９】
ここでは最も基本となる全ての表示角度を等しく扱うケースについて説明するが、その他、人の出入りが多い方向と一致する表示角度に対して、処理優先度Ｐの初期値を高くしておいてもよい。この指定については観察者１５０がマウス３２２を介してメイン制御モジュール４１０へ指示する事で実現することもできる。機械学習などを利用して、高頻出パターンの導出により、人の出入りの多い方向を求めるなどをしてもよい。
【０１３０】
処理優先度決定手段４２２は、観察角度情報４２４に対して繰り返し処理を行う（Ｓ９０２）。ここでは観察角度情報４２４の、それぞれの要素を変数ｖ（観察角度ｖ）に代入しながら繰り返し処理を行うものとする。
【０１３１】
処理優先度決定手段４２２は、全周囲３６０度をＮ分割し、Ｎ個それぞれの表示角度に対して繰り返し処理を行う（Ｓ９０３）。本実施例ではＮ＝５００とし、５００個それぞれの表示角度に対する０から４９９までの値域をとるインデックス変数ｉｄごとに処理を繰り返す。
【０１３２】
処理優先度決定手段４２２は、相対的観察角度ｄｘを算出する（Ｓ９０４）。相対的観察角度ｄｘは、表示角度のインデックス変数ｉｄと観察角度ｖから数式１３で求められる。
【０１３３】
【数１３】
2015104007.tif 000020
【０１３４】
数式１３で求めた相対的観察角度ｄｘは−３６０［度］〜＋３６０［度］の範囲内にあるので、−１８０［度］〜１８０［度］の範囲内へ正規化する。処理優先度決定手段４２２はｄｘが＋１８０を超えているかを判定し（Ｓ９１０）、超過している場合にはｄｘに−３６０を加える（Ｓ９１１）。また、処理優先度決定手段４２２はｄｘが−１８０未満かを判定し（Ｓ９２０）、−１８０未満である場合にはｄｘに３６０を加える（Ｓ９２１）。
【０１３５】
処理優先度決定手段４２２は、上述の処理優先度関数ｆ（ｄｘ）に基づいて、処理優先度情報Ｐを計算する（Ｓ９３０）。このとき、観察角度情報４２４に含まれる他の観察角度に基づいて算出された結果を上書きしないように、数式１４に基づいて処理優先度情報Ｐを求める。これにより処理優先度情報Ｐには複数のピークを持つ分布が保持される。
【０１３６】
【数１４】
2015104007.tif 000021
【０１３７】
以上により、処理優先度決定手段４２２は、観察角度情報４２４に基づいて、処理優先度情報Ｐを処理優先度情報４２５として決定する。
【０１３８】
この決定された処理優先度情報Ｐは、各表示角度に対する後述するレンダリング処理の優先度が格納されている。
【０１３９】
＜処理順序情報の決定＞
ここでは、Ｓ５１３の処理順序情報４２６の決定方法の詳細について、図１０を用いて説明する。ここで決定される処理順序情報４２６は、優先的にレンダリング処理される表示角度を決定するために用いられる情報である。
【０１４０】
Ｓ５１２で決定された処理優先度情報４２５に基づき、処理順序決定手段４２３が処理順序情報４２６を決定するための方式として例えばランキング方式がある。ランキング方式では、処理優先度の高い表示角度に関連付けられた表示画像データから順番にレンダリング処理されるように、表示角度を選択する方式である。言い換えれば、ランキング方式は、観察者１５０のいる方向（表示角度）に近いほど、各方向（各表示角度）に対応する表示画像データのレンダリング処理を実行する頻度を多くする方式である。ランキング方式は、処理優先度の高い表示角度と関連付けられた表示画像データが確実に処理対象になる半面、処理優先度の低い表示角度と関連付けられた表示画像データの一部は全く処理対象にならないという特徴がある。
【０１４１】
このようなランキング方式の他に、Ｓ５１２で決定された処理優先度情報４２５に基づき、処理順序決定手段４２３が処理順序情報４２６を決定するための方式としてはルーレット方式がある。ルーレット方式では、処理優先度が高い表示角度と関連付けられた表示画像データほど高確率でレンダリング処理されるような確率分布を求め、その確率分布に従って表示角度を選択する方式である。言い換えれば、ルーレット方式は、観察者１５０のいる方向（表示角度）に近いほど、各方向（各表示角度）に対応する表示画像データのレンダリング処理を実行する確率を高くする方式である。このようなルーレット方式は、いずれの表示角度も処理対象になりうるため、突発的に観察者１５０が出現した場合でも表示画像データが処理できている可能性があるという特徴を持つ。しかし、同時に観察者のいない表示方向も処理対象になるため、処理負荷が高くなることがある。
【０１４２】
図１０は、処理順序決定手段４２３が、処理優先度情報４２５に基づき、処理順序情報４２６を決定するフローチャートである。
【０１４３】
図１０（Ａ）は、ランキング方式によって処理順序が決定される処理順序決定処理のフローチャートである。
【０１４４】
処理順序決定手段４２３は、全周囲３６０度をＮ分割してそれぞれの表示角度に対して繰り返し処理を行う（Ｓ１００１）。本実施例ではＮ＝５００であり、分割されたそれぞれの表示角度に対する０から４９９までの値域をとるインデックス変数をｉｄとする。
【０１４５】
処理順序決定手段４２３は、それぞれの表示角度に対応した表示画像データの処理優先度をテンポラリ構造体Ｔ［ｉｄ］のメンバー変数ｐに代入する（Ｓ１００２）。すなわち処理順序決定手段４２３は、Ｔ［ｉｄ］．ｐに、Ｐ［ｉｄ］を代入する。
【０１４６】
処理順序決定手段４２３は、それぞれのインデックス変数ｉｄの値を、テンポラリ構造体Ｔ［ｉｄ］のメンバー変数ｉｄに代入する（Ｓ１００３）。すなわち処理順序決定手段４２３は、Ｔ［ｉｄ］．ｉｄに値ｉｄを代入する。
【０１４７】
処理順序決定手段４２３は、テンポラリ構造体Ｔ［・］を、メンバー変数ｐが大きいものから小さいものとなるようにソートし、ソートされた結果のテンポラリ構造体Ｔの内容を、処理順序情報を示す配列Ｒ［・］にコピーする（Ｓ１０１０）。このソートとコピーの結果の一例を表６に表す。
【０１４８】
【表６】
2015104007.tif 000022
【０１４９】
例えばＴ［２４３］のメンバー変数ｐ（すなわち２４３番目の表示角度に対応する処理優先度Ｐ［２４３］）が０．９９６８５６であり、処理優先度が最大の場合を考える。この場合、最大の処理優先度に対応するＲ［０］のメンバー変数ｐにＴ［２４３］のメンバー変数ｐが代入され、Ｒ［０］のメンバー変数ｉｄにＴ［２４３］のメンバー変数ｉｄが代入される。処理順序情報Ｒ［・］の配列添え字［・］、Ｒ［・］のメンバー変数ｉｄ、Ｒ［・］のメンバー変数ｐのそれぞれは、優先順位、その優先順位に対応する表示角度のインデックス、その表示角度に対応する処理優先度を意味する。
【０１５０】
図１０（Ｂ）は、ルーレット方式による処理順序決定処理のフローチャートである。
【０１５１】
処理順序決定手段４２３は、全周囲３６０度をＮ分割してそれぞれの表示角度に対して繰り返し処理を行う（Ｓ１０２０）。本実施例ではＮ＝５００であり、分割されたそれぞれの表示角度に対する０から４９９までの値域をとるインデックス変数をｉｄとする。
【０１５２】
処理順序決定手段４２３は、それぞれの表示角度に対応した表示画像データの処理優先度をテンポラリ構造体Ｔ［ｉｄ］のメンバー変数ｐに、処理優先度バイアスＢｉａｓを加算して代入する（Ｓ１０２１）。この処理優先度Ｂｉａｓは処理優先度が０である表示角度の表示画像データもある一定確率で選択されるように導入されるものである。処理優先度バイアスＢｉａｓ  は任意の値を適用する事が出来、例えば０．００５とすることができる。処理順序決定手段４２３は、それぞれのカウンタ変数ｉｄを、テンポラリ構造体Ｔ［ｉｄ］のメンバー変数ｉｄに代入する（Ｓ１０２２）。
【０１５３】
処理順序決定手段４２３は、全周囲３６０度をＮ分割してそれぞれの表示角度に対して繰り返し処理を行う（Ｓ１０３０）。本実施例ではＮ＝５００であり、分割されたそれぞれの表示角度に対する０から４９９までの値域をとるインデックス変数をｉｄとする。
【０１５４】
処理順序決定手段４２３は、テンポラリ構造体Ｔのメンバー変数ｐの合計値を求め、０〜合計値の間の実数の乱数値を求め、処理優先度ターゲット値ＴａｒｇｅｔＰとする（Ｓ１０３１）。
【０１５５】
処理順序決定手段４２３は、別のインデックス変数ｉｄ２、処理優先度累積値ＳｕｍＰのそれぞれを０、Ｔ［０］．ｐで初期化する（Ｓ１０３２）。
【０１５６】
処理順序決定手段４２３は、ＳｕｍＰがＴａｒｇｅｔＰ以下である間、以下の処理を繰り返す（Ｓ１０４０）。
【０１５７】
処理順序決定手段４２３は、ｉｄ２、ＳｕｍＰのそれぞれに１、Ｔ［ｉｄ２］．ｐを加算する（Ｓ１０４１）。
【０１５８】
処理順序決定手段４２３は、ＳｕｍＰがＴａｒｇｅｔＰよりも大きくなったら、Ｔ［ｉｄ２］の内容を、Ｒ［ｉｄ］にコピーする（Ｓ１０５１）。そして、処理順序決定手段４２３は、Ｔ［ｉｄ２］．ｐに０を代入し、このｉｄ２の要素が再度選択されないようにする。
【０１５９】
以上を繰り返すことにより、処理順序決定手段４２３はそれぞれの処理優先度に比例して、処理順序が優先的に決定する。その決定例を上位２０位に絞って表７に示す。この結果は、処理優先度ターゲット値ＴａｒｇｅｔＰを決定するのに利用した乱数を求めるための乱数のシードを変えて３回求めた結果を並べている。表７の結果では、処理優先度ｐの高い表示角度ｉｄ＝２２やｉｄ＝２８は高頻度に選出されている。同時に、処理優先度ｐがそこまで高くないｉｄ＝１３７、ｉｄ＝２３９、更に、処理優先度が０であるｉｄ＝４７１やｉｄ＝４２２なども選出されている。このように、いずれの観察角度も処理対象になりうる点が、ルーレット方式の特徴である。
【０１６０】
【表７】
2015104007.tif 000023
【０１６１】
以上により、処理優先度決定手段４２２は、処理優先度情報４２５から処理順序情報４２６を決定する。
【０１６２】
＜レンダリング処理＞
レンダリング命令が通知されたＧＰＵ３３１によるレンダリング処理、および、レンダリング処理によって得られたレンダリング画像データのプロジェクタ制御チップ３５１による投影処理について、図１１、１２を用いて説明する。
【０１６３】
ＧＰＵ３３１は、表示画像レンダリング手段４４２から通知された三次元モデルデータ４４３、三次元シーンデータ４４４、三次元カメラデータ４４５のそれぞれを、三次元モデルデータ４６１、三次元シーンデータ４６２、三次元カメラデータ４６３としてＧＰＵ  ＲＡＭ３３２上に記憶する。そして、ＧＰＵ３３１は、三次元モデルデータ４６１、三次元シーンデータ４６２、三次元カメラデータ４６３に基づいてレンダリング処理を行うことで、レンダリング画像データ４６４を生成する。このレンダリング処理によって、三次元カメラデータ４６３によって規定される方向から観察される、三次元モデルの二次元的な画像を、レンダリング画像データとして生成することができる。そしてＧＰＵ３３１は、レンダリング画像データ４６４を、表示角度に関連付けて、プロジェクタ制御チップ３５１へ送信する。なおＧＰＵ３３１による三次元モデルデータ４６１、三次元シーンデータ４６２、三次元カメラデータ４６３に基づくレンダリング処理は、ＧＰＵによる三次元モデルデータのレンダリング処理は公知の技術を用いることとする。
【０１６４】
図１１は、プロジェクタ制御チップ３５１がＧＰＵ３３１からレンダリング画像データ４６４を受信した際の処理のフローチャートである。また、図１２は、プロジェクタ制御チップ３５１がＧＰＵ３３１からレンダリング画像データ４６４を受信した際の処理の模式図である。そしてプロジェクタ制御チップ３５１は、この受信されたレンダリング画像データ４６４を、表示画像データ４７１としてプロジェクタＲＡＭに保持する。この表示画像データ４７１には、５００枚の表示画像データ１２１１〜１２１９を保持することができる（図１２（Ａ））。以下ではレンダリング画像データ４６４として、レンダリング画像データ１２０１〜１２０３をプロジェクタ制御チップ３５１が受信した場合をもとに、本処理の流れを説明する。
【０１６５】
プロジェクタ制御チップ３５１は、表示角度ＴａｒｇｅｔＩｄ＝１と関連付けられたレンダリング画像データ１２０１を受信する。プロジェクタ制御チップ３５１は、その表示角度ＴａｒｇｅｔＩｄに対応する、プロジェクタＲＡＭ３５２上での表示画像データのメモリアドレスを算出する（Ｓ１１０１）。例えば、表示画像データ４７１が記憶される領域の先頭アドレスＢａｓｅＡｄｄｒｅｓｓを０ｘ０８００００００、表示画像データ１枚あたりのオフセットＯｆｆｓｅｔを２９４、９１２［Ｂｙｔｅ］とする。このオフセット値は、表示画像データ１枚のメモリ上のサイズであり、本実施例の表示画像データのサイズ（１０２４ピクセル×７６８ピクセル）から求まる。例えば１０２４［ピクセル］×７６８［ピクセル］×３［ｂｉｔ／ピクセル］／８［ｂｉｔ／ｂｙｔｅ］によって算出できる。このときの、表示角度ＴａｒｇｅｔＩｄに対応する、表示画像データのメモリアドレスＩｍｇＡｄｄｒｅｓｓは、数式１５で表せる。
【０１６６】
【数１５】
2015104007.tif 000024
【０１６７】
プロジェクタ制御チップ３５１は、レンダリング画像データ１２０１に対してディザリング処理を行い、ディザリング処理済み画像１２０２を生成する（Ｓ１１０２）。ディザリング処理には、例えばハーフトーン処理など様々な公知技術を用いる事が出来る。その詳細については割愛する。
【０１６８】
プロジェクタ制御チップ３５１は、ディザリング処理済み画像１２０２を、Ｓ１１０１で求めたメモリアドレスＩｍｇＡｄｄｒｅｓｓで示されたメモリ領域１２１２に記憶する（Ｓ１１０３）。これによって、表示画像データ４７１の内容が更新されていく（図１２（Ｂ））。
【０１６９】
同様に、プロジェクタ制御チップ３５１は、表示角度ＴａｒｇｅｔＩｄが０であるレンダリング画像データ１２０３を受信した場合には、ディザリング処理済み画像１２０４を生成し、該当するメモリ領域１２１１に記憶する（図１２（Ｃ））。
【０１７０】
そしてプロジェクタ制御チップ３５１は、表示角度ＴａｒｇｅｔＩｄが４９９であるレンダリング画像データ１２０５を受信した場合には、ディザリング処理済み画像１２０６を生成し、該当するメモリ領域１２１９に記憶する（図１２（Ｄ））。
【０１７１】
以上を繰り返す事で、プロジェクタ制御チップ３５１は、入力されたレンダリング画像データ１２０１〜１２０３の内容に基づいて、プロジェクタＲＡＭ３５２内のメモリ上の表示画像データ４７１の内容を表示画像データ１２１１〜１２１９で更新する。
【０１７２】
そして、プロジェクタ制御チップ３５１は、上記の更新処理と同期して、もしくは非同期に、表示画像データ４７１内の表示画像データ１２１１〜１２１９の内容をスクリーン１０９に投影する。その時、プロジェクタ制御チップ３５１は、モータ制御チップ３７１に同期信号を通知する。
【０１７３】
モータ制御チップ３７１は、同期信号に基づいてモータ１０５〜１０７の回転スピードを制御し、スクリーン１０９の回転角度を一定速度に制御する。
【０１７４】
このようにプロジェクタ制御ボード１０３で投影する映像と、モータ制御ボード部１３７０で回転制御しているスクリーン１０９を同期することで、表示角度に対応した表示画像データが投影される。
【０１７５】
以上により、表示装置１００は、観察者１５０が存在する観察角度に対応した、表示角度と関連付けられた表示画像データを優先的にレンダリング処理することが可能となる。すなわち、表示装置１００は、レンダリング処理の実行頻度あるいは実行確率を制御することができる。よって、それ以外の表示角度に対応した表示画像データに対するレンダリング処理を省くことで、処理の効率化を図れる。
【０１７６】
更なる発展として、プロジェクタ制御チップ３５１は、ＧＰＵ３３１から通知された表示角度を元に、しばらく通知されていない表示角度を求めることができる。これにより、プロジェクタ制御チップ３５１が制御することで、しばらく通知されていない表示角度に対応した表示画像データに対しては投影画像形成部３５４で投影画像を形成せず、また光源３５５を消灯することで消費電力を節約する事も可能である。
【０１７７】
なお、ここでは全周囲型三次元ディスプレイとして、全周囲から観察可能なテーブルタイプの三次元ディスプレイを用いている。だが、１８０度方向から観察可能なテーブルタイプの三次元ディスプレイに本発明を適用することも可能である。また、筒状の三次元ディスプレイに本発明を適用することもできる。これらについては発明の本質を逸脱しない範囲で適用できることは明らかである。
【０１７８】
（実施例２）
実施例２として三次元動画再生システムを説明する。
【０１７９】
本発明は、三次元動画再生システムや三次元動画撮影システムにも適用できる。
【０１８０】
図１３は、三次元動画再生装置と三次元動画撮影装置とを有する三次元動画再生システムの模式図である。
【０１８１】
三次元動画撮影装置（以下、撮影装置と呼ぶ）１３１０では、動画データ撮影カメラ（以下、カメラと呼ぶ）１３１１〜１３１６によって、観察対象物１３２０を撮影する。そして、この撮影した動画データを三次元動画ストリーム（以下、動画ストリームと呼ぶ）として、三次元動画再生装置（以下、再生装置と呼ぶ）１３３０、１３４０、１３５０へネットワークを介して送信する。再生装置１３３０では、受信した動画ストリームを元に、三次元動画１３３１を再生する。その他の再生装置１３４０、１３５０でも、三次元動画１３４１、１３５１を再生する。これにより三次元動画撮影システムが設置された拠点にある撮影対象物１３２０の動画データを、三次元動画再生システムが設置された別の拠点側でも観察できる。このとき、１台の撮影装置と、複数の再生装置を接続する構成が取ることもできる。
【０１８２】
なお、ここでは全ての再生装置１３３０、１３４０、１３５０には同一の動画ストリームを送信する形で説明をしている。これに対して、例えば再生装置毎に別の動画ストリームを送信する形によって実現することも可能である。
【０１８３】
三次元動画再生システムのハードウェア構成は、図３に示した三次元アニメーション表示システムのハードウェア構成と同様である。なお、本実施例にて必要となるモーフィング処理は画素毎に独立した、かつ複雑な演算が必要となる。本実施例においては、モーフィング処理を行うためのハードウェアアクセラレーションにＧＰＵ３３１を活用する。
【０１８４】
図１４は、三次元動画再生システムのソフトウェア構成図である。三次元動画再生プログラム（以下、再生プログラムと呼ぶ）１４００は、メイン制御モジュール４１０、処理順序決定モジュール１４２０、映像モーフィングモジュール１４４０がある。
【０１８５】
メイン制御モジュール４１０は、実施例１と同様なので説明を省略する。
処理順序決定モジュール１４２０について、実施例１の処理順序決定モジュール４２０との差分を説明する。処理順序決定モジュール１４２０には更に、観察角度パケット送信手段１３２４と観察角度パケット１４２５がある。
【０１８６】
観察角度パケット１４２５は、三次元動画撮影システムに送信する為に観察角度情報４２４を変換したデータパケットである。表８は、観察角度パケット１４２５の例である。観察角度パケット１４２５の先頭１バイトには、観察角度パケットであることを意味する０ｘｆｆの値を含む。観察角度パケット１４２５の先頭２〜３３バイトには、任意の３２文字の文字列として再生デバイス識別子を含む。この文字列は機器固有の値として出荷時に設定してあるものとする。観察角度パケット１４２５の先頭３４〜３５バイトには、観察角度の数を含む。観察角度パケット１４２５の先頭３６バイト以降には観察角度をｆｌｏａｔ型で観察角度数の数だけ含む。
【０１８７】
【表８】
2015104007.tif 000025
【０１８８】
観察角度パケット送信手段１４２４は、観察角度パケット１４２５を、ネットワークインタフェイス３１３を介して三次元動画撮影システムへ送信する手段である。
【０１８９】
映像モーフィングモジュール１４４０には、三次元動画取得手段１４４１、動画データ展開手段１４４２、二次元画像モーフィング手段１４４３がある。また、映像モーフィングモジュール１４４０には動画ストリーム１４４４、受信動画データ１４４５、展開画像データ１４４６がある。
【０１９０】
動画ストリーム１４４４は、動画データ撮影カメラ１３１１〜１３１６で撮影された複数の動画データを含むデータストリームである。１つの動画ストリームには複数のフレームグループが含まれる。１つのフレームグループには、複数の視点から撮影された一定時間だけの長さをもつ動画データが複数含まれる。１つの動画データは、ある視点から撮影された一定時間だけの長さをもつエンコードされた動画のデータである。表９は、この動画ストリームに含まれるパケットの例である。
【０１９１】
【表９】
2015104007.tif 000026
【０１９２】
動画ストリーム１４４４は、フレームグループ開始パケット、複数の動画データパケット、１つのフレームグループ終了パケットで構成されるフレームグループを、複数個含む。フレームグループ開始パケットは、フレームグループの開始を意味するパケットである。フレームグループ終了パケットは、フレームグループの終了を意味するパケットである。動画データパケットは、動画データを意味するパケットである。
【０１９３】
それぞれのパケットの先頭１バイトハードのパケットタイプであるかを示す、パケット種別である。０ｘ００であれば、フレームグループ開始パケットタイプである。０ｘ０１であれば、フレームグループ終了パケットタイプである。０ｘ１０であれば、動画データパケットタイプである。
【０１９４】
フレームグループ開始パケットの先頭２〜３バイトは、１６ｂｉｔ整数で表現された、当該フレームグループに含まれる動画データのフレーム数である。フレーム数の有効な値域は、１〜６５５３５とする。例えば、動画データ撮影カメラ１３１１〜１３１６が３０ＦＰＳで撮影している時の０．５秒分の動画データが当該フレームグループに含まれるならば、１５（＝０ｘ０００Ｆ）を指定する。
【０１９５】
フレームグループ終了パケットには、パケット種別情報だけを持つ。
【０１９６】
動画データパケットの先頭２〜５バイトは、ｆｌｏａｔ型で表現された、動画データ撮影カメラ１３１１〜１３１６が動画を撮影している撮影角度である。この撮影角度の座標系は、図２に示した表示角度の座標系と同じものを用いる。例えば、動画データ撮影カメラ１３１１は撮影角度０度の位置するものとする。同様に、それぞれの動画データ撮影カメラ１３１２〜１３１６は、撮影角度６０度、１２０度、１８０度、２４０度、３００度に位置する。
【０１９７】
動画データパケットの先頭６〜９バイトは、３２ｂｉｔ整数で表現された、動画データのデータサイズである。動画データパケットの先頭１０バイト以後は、動画データである。
【０１９８】
受信動画データ１４４５は、動画ストリーム１４４４から抽出した動画データを管理する為のデータである。表１０は、受信動画データの一例である。１レコードが１つの動画データ撮影カメラで撮影した映像を意味する。メンバー変数ａｎｇｌｅは、動画データ撮影カメラ１３１１〜１３１６で撮影した時の観察角度である。メンバー変数ｓｉｚｅは、動画データの長さである。メンバー変数ｄａｔａは、圧縮された動画データであり、下の表では明記されてはいないが、動画データのパス名が記載される。
【０１９９】
【表１０】
2015104007.tif 000027
【０２００】
展開画像データ１４４６は、受信動画データ１４４５内の動画データを展開して得られる、ある時刻の静止画データである。表１１は展開画像データの一例である。１レコードが１つの展開画像を意味する。メンバー変数ａｎｇｌｅは、動画データ撮影カメラ１３１１〜１３１６で撮影した時の観察角度である。メンバー変数ｉｍａｇｅは、動画データ撮影カメラ１３１１〜１３１６で撮影した、ある時刻の静止画データであり、下の表では明記されてはいないが、静止画データのパス名が記載される。
【０２０１】
【表１１】
2015104007.tif 000028
【０２０２】
三次元動画取得手段１４４１は、三次元動画撮影システムから送られてきた動画ストリーム１４４４を、ネットワークインタフェイス３１３を介して受信し、受信受信動画データ１４４５として保持するための手段である。動画データ展開手段１４４２は、受信動画データ１４４５からある時刻の静止画データを展開し、展開画像データ１４４６として保存するための手段である。二次元画像モーフィング手段１４４３は、展開画像データ１４４６をＧＰＵ３３１へ送信し、ＧＰＵ３３１に対して画像モーフィング処理を命令するための手段である。
【０２０３】
図１５は、再生プログラム１４００に従って実行されるフローチャートである。再生プログラム１４００がメインコントローラボード１０１のＣＰＵによって実行されることで、本フローチャートの処理が実現される。また、図１６は、再生プログラム１４００の動作の模式図である。三次元アニメーション表示システム４００と同様の部分は実施例１も参照されたい。
【０２０４】
メイン制御モジュール４１０は、フレーム当たりの処理時間ＭｓｅｃＰｅｒＦｒａｍｅを算出する（Ｓ５０１）。
【０２０５】
メイン制御モジュール４１０は、ＵＩ操作受付手段５１１から終了指示を受信するまで以下の処理を繰り返す（Ｓ５１０）。
【０２０６】
観察角度情報決定手段４２１は、カメラ１１１〜１１６で撮影した映像に基づき、観察角度情報４２４を算出する（Ｓ５１１）。
【０２０７】
処理優先度決定手段４２２は、観察角度情報４２４に基づき、処理優先度情報４２５を決定する（Ｓ５１２）。
【０２０８】
処理順序決定手段４２３は、処理優先度情報４２５に基づき、処理順序情報４２６を決定する（Ｓ５１３）。
【０２０９】
観察角度パケット送信手段１４２４は、観察角度情報４２４に基づいて観察角度パケット１４２５を生成し、三次元動画撮影システムへ送信する（Ｓ１５１１）。この観察角度パケット送信処理について以下で図１７を用いて説明する。
【０２１０】
図１７は観察角度パケット送信処理のフローチャートである。
【０２１１】
観察角度パケット送信手段１４２４は、パケットデータを空にする（Ｓ１７０１）。
【０２１２】
観察角度パケット送信手段１４２４は、観察角度パケットタイプを意味する０ｘｆｆをパケットデータに追加する（Ｓ１７０２）。
【０２１３】
観察角度パケット送信手段１４２４は、当該三次元動画再生システムの再生デバイス識別子をパケットデータに追加する（Ｓ１７０３）。
【０２１４】
観察角度パケット送信手段１４２４は、観察角度情報４２４に含まれる全観察角度に対して（Ｓ１７１０）、パケットデータへ追加する（Ｓ１７１１）処理を繰り返す。
【０２１５】
観察角度パケット送信手段１４２４は、生成したパケットデータを観察角度パケット１４２５として三次元動画撮影システムへ送信する（Ｓ１７２０）。
【０２１６】
以上が観察角度パケット送信処理である。図１５のフローチャートの説明に戻る。
【０２１７】
映像モーフィングモジュール１４４０は、動画ストリーム１４４４が終端に来ていない間、以下を繰り返す（Ｓ１５２０）。
【０２１８】
三次元動画取得手段は、動画ストリーム１４４４からパケットタイプを読み込む（Ｓ１５２１）。
【０２１９】
映像モーフィングモジュール１４４０は、パケットタイプに応じて処理を分岐する（Ｓ１５３０）。
【０２２０】
パケットタイプが、フレームグループ開始パケットタイプである場合には、映像モーフィングモジュール１４４０は、フレームグループ開始パケット１６１０の受信処理を行う。
【０２２１】
三次元動画取得手段１４４１は、動画ストリーム１４４４からフレーム数情報ＦｒａｍｅＣｏｕｎｔを読み込む（Ｓ１５４１）。三次元動画取得手段１４４１は、、受信動画データＭｏｖｉｅＤａｔａ（受信動画データ１４４５）を空にする（Ｓ１５４２）。三次元動画取得手段１４４１は、フレームグループ内の動画データ数に関するカウンタ変数ｉｖを０で初期化する（Ｓ１５４４）。
【０２２２】
パケットタイプが、動画データパケットタイプである場合には、映像モーフィングモジュール１４４０は、動画データパケット１６１１〜１６１６の受信処理を行う。
【０２２３】
三次元動画取得手段１４４１は、受信動画データＭｏｖｉｅＤａｔａに新規要素を追加する（Ｓ１５５１）。三次元動画取得手段１４４１は、動画ストリーム１４４４からメンバー変数ａｎｇｌｅｓに撮影角度を読み込む（Ｓ１５５２）。三次元動画取得手段１４４１は、動画ストリーム１４４４からメンバー変数ｓｉｚｅに、動画データサイズを読み込む（Ｓ１５５３）。三次元動画取得手段１４４１は、動画ストリーム１４４４からｄａｔａメンバー変数に動画データを読み込む（Ｓ１５５４）。三次元動画取得手段１４４１は、ｉｖの値を１増加させる（Ｓ１５５５）。以上を繰り返す事で、動画ストリーム１４４４内の動画データパケット１６１１〜１６１６に含まれる動画データが、受信動画データＭｏｖｉｅＤａｔａ（すなわち、受信動画データ１４４５）内の動画データ１６２１〜１６２６としてコピーされる。
【０２２４】
パケットタイプが、フレームグループ終了パケットタイプである場合には、映像モーフィングモジュール１４４０は、フレームグループ終了パケット１６１７の受信処理を行う。
【０２２５】
映像モ−フィングモジュール１４４０は、カウンタ変数ｉを０からフレーム数情報ＦｒａｍｅＣｏｕｎｔまで増やしながら以下の処理を繰り返す（Ｓ１５６０）。映像モーフィングモジュール１４４０は、カウンタ変数ｉを０、次表示画像処理予想時刻ｔを０とする（Ｓ５１５）。そして映像モーフィングモジュール１４４０は、現在時刻を取得し、フレーム開始時刻Ｆに代入する（Ｓ５１６）。
【０２２６】
動画データ展開手段１４４２は、受信動画データＭｏｖｉｅＤａｔａからその時刻におけるそれぞれの静止画データを展開し、展開画像データＰｉｃｔｕｒｅ（すなわち展開画像データ１４４６）のそれぞれの要素のメンバー変数ｉｍａｇｅに代入する（Ｓ１５６１）。例えば、動画データ展開手段１４４２は、動画データ１６２１に基づき、展開画像データＰｉｃｔｕｒｅの０番目の要素のｉｍａｇｅとして展開画像１６３１が保持される。そして、展開画像データＰｉｃｔｕｒｅのそれぞれの要素のメンバー変数ａｎｇｌｅに、受信動画データＭｏｖｉｅＤａｔａのメンバー変数ａｎｇｌｅの値がコピーされる（Ｓ１５６２）。
【０２２７】
二次元モーフィング手段１４４３は、次表示画像処理予想時刻ｔがフレーム当たりの処理時間ＭｓｅｃＰｅｒＦｒａｍｅを超過するまでの間、以下の処理を実行する（Ｓ５２０）。二次元モーフィング手段１４４３は、処理順序情報４２６を参照して処理しようとする表示角度ｔａｒｇｅｔＩｄを決定する（Ｓ５２１）。そして、二次元モーフィング手段１４４３は、ＧＰＵ３３１に対して展開画像データＰｉｃｔｕｒｅと、処理対象の表示角度ｔａｒｇｅｔＩｄに対するモーフィング処理を命令する（Ｓ１５７１）。
【０２２８】
ＧＰＵ３３１は、二次元画像モーフィング手段１４４３からの命令を受け取り、展開画像データＰｉｃｔｕｒｅをＧＰＵ  ＲＡＭ３３２上の展開画像データ１４５１として保持する。そして、ＧＰＵ３３１は、展開画像データＰｉｃｔｕｒｅと、処理対象の表示角度ｔａｒｇｅｔＩｄに基づいて二次元画像データであるモーフィング画像データ１４５２を生成する。例えば、表示角度ｔａｒｇｅｔＩｄ＝１９［度］に対するモーフィング画像は、撮影角度が０度と６０度となっている展開画像１６３１と展開画像１６３２を元に生成できる。モーフィング技術としては、二次元画像上の特徴点を抽出しそれぞれの二次元画像上と関連付けて行う手段や、二次元画像上の物体を三次元モデルの集合とみなして推定する技術が広く知られている。これらのモーフィング技術は公知技術であるので、ここでは詳細を割愛する。更にＧＰＵ３３１は、モーフィング画像１４５２と表示角度ｔａｒｇｅｔＩｄをプロジェクタ制御チップ３５１へ通知する。以後、このプロジェクタ制御チップ３５１に通知された画像が表示される一連の流れについては、実施例１と同様であるため、詳細については割愛する。
【０２２９】
二次元画像モーフィング手段１４４３は、カウンタ変数ｉを１増加させる（Ｓ５２４）。そして、二次元画像モーフィング手段１４４３は、次表示画像処理予想時刻ｔを数式４に基づいて更新する（Ｓ５２５）。これらの処理を繰り返すことで、同一フレーム内で複数の表示角度に対するモーフィング画像が形成される。以上の同一フレーム内でのモーフィング処理はＭｓｅｃＰｅｒＦｒａｍｅの時間未満で行っている。よって、二次元画像モーフィング手段１４４３は再生時間の同期を取るために、次フレームまでの待ちを行う（Ｓ１５８１）。フレームグループ開始パケット１６３０以降についても、同様に処理を繰り返す。
【０２３０】
ＵＩ操作受付手段５１１から終了指示を受けた場合には、観察角度パケット送信手段１４２４は観察角度が存在しないことを通知する為に、観察角度数０の観察角度パケット１４２５を、三次元動画撮影システムに送信する（Ｓ１５９０）。これにより、本三次元動画再生システムには観察者がいなくなった事を通知する。
【０２３１】
以上により、三次元動画再生システムは、観察者１５０が存在する表示角度に対応するモーフィング画像を優先的に生成する。すなわち、三次元動画再生システムは、モーフィングによってモーフィング画像を生成する処理の実行頻度あるいは実行確率を制御することができる。これにより、観察者１５０が存在しない表示角度の表示画像データをモーフィングする処理を省け、三次元動画再生システムの負荷を軽減させる事が可能となる。
【０２３２】
（実施例３）
実施例３として三次元動画撮影システムを説明する。
【０２３３】
図１８は、三次元動画撮影システムのハードウェア構成図である。図３に示した三次元アニメーション表示システムのハードウェア構成図との差分に注目して、説明を行う。三次元動画撮影システムでは三次元にて映像を表示する必要はないため、グラフィックボード１０２に接続した液晶パネル１８１１を画面表示に用いる。メインコントローラボード１０１には６台の動画データ撮影カメラ（以下、カメラ、撮像手段と呼ぶ）１３１１〜１３１６が外部機器接続ハブ３２０と外部機器接続増設ハブ１８２０を介して接続されている。カメラ１３１１〜１３１６は観察対象物１３２０を取り囲むように配置してある。それぞれのカメラ１３１１〜１３１６は観察対象物（被写体）１３２０から一定距離離れた距離に、等間隔で配置されているものとする。
【０２３４】
図１９は三次元動画撮影システムのソフトウェア構成図である。メインコントローラボード１０１上で実行される三次元動画撮影プログラム（以下、撮影プログラム）１７００は、メイン制御モジュール４１０、ビットレート決定モジュール１９２０、動画ストリーム出力モジュール１９４０を含む。
【０２３５】
ビットレート決定モジュール１９２０は、観察角度パケット受信手段１９２１、処理優先度決定手段４２２、ビットレート決定手段１７２２を含む。また、ビットレート決定モジュール１９２０は、観察角度パケット１９２３、観察角度管理情報１９２４、観察角度情報４２４、処理優先度情報４２５、ビットレート情報１９２５を含む。
【０２３６】
観察角度パケット１９２３は、各三次元動画再生システムから送信されてきたものを、三次元動画撮影システムが受信し、保持しているデータである。この構造については、表８で説明している。
【０２３７】
観察角度管理情報１９２４は、観察角度パケット１９２３を元に、各三次元動画再生システムと関連付けて観察角度を管理するための情報である。表１２は、観察角度管理情報１９２４の一例である。再生デバイス識別子は、それぞれの三次元動画再生システムに割り当てられる識別子である。観察角度はそれぞれの三次元動画再生システムで観察している観察者１５０が存在している観察角度である。
【０２３８】
【表１２】
2015104007.tif 000029
【０２３９】
ビットレート情報１９２５は、処理優先度情報４２５を元に、それぞれのカメラ１３１１〜１３１６で撮影するときのビットレートに関する情報である。表１１はビットレート情報１９２５の一例である。表の１レコードが１台のカメラを意味する。メンバー変数Ｂｉｔｒａｔｅが、そのカメラで撮影する時のビットレートであり、１秒当たりのビット数を表している。
【０２４０】
【表１３】
2015104007.tif 000030
【０２４１】
観察角度情報受信手段１９２１は、三次元動画再生システムから送信された観察角度パケット１４２５を、観察角度パケット１９２３として受信する手段である。更に、観察角度情報受信手段は、観察角度パケット１９２３を元に観察角度管理情報１９２４を更新し、観察角度情報４２４を求める。
【０２４２】
ビットレート決定手段１９２２は、処理優先度決定手段４２２が決定した処理優先度情報４２５に従って、ビットレート情報１９２５を決定する為の手段である。ここで決定したビットレート情報１９２５は、動画ストリーム出力手段１９４２に通知される。
【０２４３】
動画ストリーム出力モジュール１９４０は、カメラ設定手段１９４１と動画ストリーム出力手段１９４２を含む。また、動画データバッファ１９４３と、動画ストリーム１９４４を含む。
【０２４４】
動画データバッファ１９４３は、動画データを保持する為のバッファである。表１４は動画データバッファ１９４３の構造である。１レコードが１台のカメラを意味する。１レコードには動画データを保持するバッファがｉｍａｇｅ［０］、ｉｍａｇｅ［１］の２プレーンある。このｉｍａｇｅ［０］、ｉｍａｇｅ［１］には、データへのパス名が記載される。三次元動画撮影システムではカメラで撮影をした動画データを１つのプレーンに保存する。同時に既に別のプレーンに保存された動画データを動画ストリーム１９４４に含めて送信する。これにより、動画ストリーム出力モジュール１９４０は、カメラ１３１１〜１３１６で撮影された動画データのタイミングについて同期を取る。動画ストリーム１９４４については、動画ストリーム１４４４と同様であるので、ここでは説明を割愛する。
【０２４５】
【表１４】
2015104007.tif 000031
【０２４６】
カメラ設定手段１９４１は、カメラ１３１１〜１３１６から送信された動画データを、動画データバッファ１９４３として保持する為に、カメラ１３１１〜１３１６を設定する手段である。
【０２４７】
動画ストリーム出力手段１９４２は、動画データバッファ１９４３に保持されている動画データを、動画ストリーム１９４４に変換し、ネットワークインタフェイス３１３を介して三次元映像再生システムへ送信するための手段である。
【０２４８】
図２０は、撮影プログラム１９００に従って実行される処理のフローチャートである。この撮影プログラム１９００がメインコントローラボード１０１のＣＰＵ３００によって実行されることで、本フローチャートの処理は実現される。また、図２１は撮影プログラム１９００の動作の模式図である。三次元アニメーション表示システム４００と同様の部分は実施例１も参照されたい。
【０２４９】
ビットレート決定モジュール１９２０は、ビットレート情報１９２５をデフォルトの撮影ビットレートで初期化する（Ｓ２００１）。ここでは予め定義した基本ビットレートＢａｓｅＢＰＳを、カメラ１３１１〜１３１６に割り当てることでデフォルトの撮影ビットレートとした。
【０２５０】
動画ストリーム出力モジュール１９４０は、撮影プレーンを０番、転送プレーンを１番、フレーム数に対するカウンタ変数ｉｆｃを０に設定する（Ｓ２００２）。
【０２５１】
カメラ設定手段１９４１は、それぞれのカメラの保存先バッファを撮影プレーン側に設定する。また、その時の撮影ビットレートを、ビットレート情報１９２５で設定する（Ｓ２００３）。例えば、撮影プレーンが０番である場合には、カメラ１３１１〜１３１６はそれぞれ動画データ２１１１〜２１１６に撮影した動画データを保存する。そして、転送プレーンが１番である場合には、動画ストリーム生成手段１９４２は動画データ２１１７〜２１２２の動画データを元に、動画ストリーム１９４４を構成する。そして以後の処理によって撮影プレーンと転送プレーンが入れ替われば、カメラ１３１１〜１３１６と動画ストリーム生成手段１９４２が参照する動画データも入れ替わる。
【０２５２】
メイン制御モジュール４１０は、ＵＩ操作受付手段５１１から終了指示を受信するまで以下の処理を繰り返す（Ｓ５１０）。
【０２５３】
観察角度パケット受信手段１９２１は、観察角度パケット１９２３を受信し、観察角度情報４２４の更新を試みる（Ｓ２０１０）。ここで観測角度パケット１９２３の受信の処理について図２２を用いて説明する。
【０２５４】
図２２は、観察パケット受信処理のフローチャートであって、観察角度パケット受信手段１９２１によって実行される。
【０２５５】
まず、観察角度パケット受信手段１９２１は、ネットワークインタフェイス３１３から観察角度パケットを受信する（Ｓ２２０１）。
【０２５６】
観察角度パケット受信手段１９２１は、受信が成功したかを判定する＿（Ｓ２２１０）。受信に失敗したら、この処理を終了する。
【０２５７】
観察角度パケット受信手段１９２１は、パケットに含まれる再生デバイス識別子を読み込む（Ｓ２２１１）。
【０２５８】
観察角度パケット受信手段１９２１は、観察角度管理情報１９２４内で同一の再生デバイス識別子を持つレコードを破棄する（Ｓ２２１２）。
【０２５９】
観察角度パケット受信手段１９２１は、観察角度数を受信する（Ｓ２２１３）。
【０２６０】
観察角度パケット受信手段１９２１は、観察角度数だけ以下の処理を繰り返す（Ｓ２２２０）。
【０２６１】
観察角度パケット受信手段１９２１は、観察角度を読み込む（Ｓ２２２１）。
【０２６２】
観察角度パケット受信手段１９２１は、観察角度管理情報１９２５に、再生デバイス識別子と観察角度を関連付けて登録する（Ｓ２２２２）。
【０２６３】
以上の処理を繰り返した後に、観察角度管理情報１９２５に含まれる全レコードの観察角度を集めて、観察角度４２４として出力する（Ｓ２２３０）。
【０２６４】
ビットレート決定モジュール１９２０は、観察角度パケットの更新に成功したかを判定する（Ｓ２０１１）。
【０２６５】
更新に成功したら、処理優先度決定手段４２２は、観察角度情報４２４に基づき、処理優先度情報４２５を決定する（Ｓ５１２）。
【０２６６】
ビットレート決定手段１９２２は、処理優先度情報４２５に従って、ビットレート情報１９２５を決定する（Ｓ２０１１）。
【０２６７】
図２３は、ビットレート決定処理のフローチャートと模式図である。ビットレート決定手段１９２２は、カメラ１３１１〜１３１６の数だけ、以下の処理を繰り返す（Ｓ２３１０）。ビットレート決定手段１９２２は、カメラ１３１１〜１３１６が撮影する映像の中心に対する撮影角度を算出する（Ｓ２３１１）。
【０２６８】
ビットレート決定手段１９２２は、カメラ１３１１〜１３１６毎に、その撮影角度を中心とした一定範囲の処理優先度総和ＣＰを算出する（Ｓ２３１３）。
【０２６９】
数式１６は、それぞれのカメラに、それぞれの表示角度の処理優先度を複数対応付けることで、処理優先度総和ＣＰを算出する計算式である。
【０２７０】
【数１６】
2015104007.tif 000032
【０２７１】
ここでＣＷはカメラ間にある表示角度の数である。全周囲が５００分割され、カメラが６台であれば、ＣＷは５００／６＝８４となる。ここでは説明を簡略にするためにＰの添え字は０〜Ｎの範囲内に正規化して参照するものとする。すなわち、０未満となった場合にはＮを加え、Ｎ以上となった場合にはＮを引くことで、０〜Ｎの範囲内に収める。
【０２７２】
中心から、−ＣＷ／２〜ＣＷ／２の範囲内２３５１にある表示角度の処理優先度の総和を求める（数式１７第２項）。また、ＣＷ／２〜ＣＷの範囲２３５２、２３５３にある表示角度の処理優先度の総和を求める（数式１７第１項および第３項）。これらに対して、任意の重みづけパラメータＴ１、Ｔ２を用いて重みづけ平均を取ることで、処理優先度総和ＣＰを算出する。Ｔ１、Ｔ２は任意の実数を設定する事が出来る。
【０２７３】
ビットレート決定手段１９２２は、全カメラの処理優先度総和の合計を求める（Ｓ２３２０）。ビットレート決定手段１９２２は、カメラ１３１１〜１３１６の数だけ、以下の処理を繰り返す（Ｓ２３３０）。ビットレート決定手段１９２２は、数式１７に従ってビットレートを決定する。
【０２７４】
【数１７】
2015104007.tif 000033
【０２７５】
ここで、ＢａｓｅＢＰＳは全てのカメラ１３１１〜１３１６に割り当てる、処理優先度に依存しない基本ビットレートである。ＥｘｔｅｎｄＢＰＳはそれぞれのカメラ１３１１〜１３１６に割り当てる、処理優先度で依存する拡張ビットレートの総和である。ＣＰはカメラ毎の処理優先度総和である。ＴｏｔａｌＣＰは処理優先度総和の合計である。表１３は、ＢａｓｅＢＰＳ＝２４  ［Ｍｂｐｓ］、ＥｘｔｅｎｄＢＰＳ＝２０［Ｍｂｐｓ］とした場合の、ビットレートの算出例である。このように、カメラ１３１１、１３１２および１３１４のように処理優先度の高いカメラには高いビットレートが割り当てられる。その一方で、カメラ１３１３、１３１５および１３１６のように処理優先度の低いカメラには低いビットレートが割り当てられる。
【０２７６】
【表１５】
2015104007.tif 000034
【０２７７】
カメラ設定手段１９４１は、ビットレート決定手段１９２２が決定したビットレートをカメラ１３１１〜１３１６に設定する（Ｓ２０１２）。
【０２７８】
動画ストリーム出力モジュール１９４０は、カウンタ変数ｉｆｃが任意のフレームカウント数ＦｒａｍｅＣｏｕｎｔに達したかを判断する（Ｓ２０２０）。
【０２７９】
ＦｒａｍｅＣｏｕｎｔに達していない場合には、動画ストリーム出力モジュール１９４０は、、次フレームまで待ち（Ｓ２０２１）、ｉｆｃを１だけ増やして（Ｓ２０２２）、処理を繰り返す。
【０２８０】
ビットレート決定モジュール１９２０は、撮影プレーンと転送プレーンを入れ替える（Ｓ２０３１）。
【０２８１】
そして、カメラ設定手段１９４１は、それぞれのカメラの保存先バッファを撮影プレーン側に設定する  （Ｓ２０３２）。
【０２８２】
動画ストリーム出力手段１９４２は、動画ストリーム１９４４に、フレームグループ開始パケットタイプを出力する（Ｓ２０４０）。動画ストリーム出力手段１９４２は、動画ストリーム１９４４に、フレーム数ｉｆｃを出力する（Ｓ２０４１）。この処理によって、フレームグループ開始パケット２１５０が構成される。
【０２８３】
動画ストリーム出力手段１９４２は、以下の処理をカメラ１３１１〜１３１６の数だけ繰り返す（Ｓ２０５０）。
【０２８４】
動画ストリーム出力手段１９４２は、動画ストリーム１９４４に、動画データパケットタイプを出力する（Ｓ２０５１）。
【０２８５】
動画ストリーム出力手段１９４２は、動画ストリーム１９４４に、カメラの撮影角度を出力する（Ｓ２０５２）。
【０２８６】
動画ストリーム出力手段１９４２は、動画ストリーム１９４４に、動画データの長さと、データ本体を出力する（Ｓ２０５３、２０５４）。
【０２８７】
この一連の流れによって、動画データパケット２１５１〜２１５６が構成される。
【０２８８】
動画ストリーム出力手段１９４２は、動画ストリーム１９４４に、フレームグループ終了パケットタイプを出力する（Ｓ２０６０）。これにより、フレームグループ終了パケット
２１５７が構成される。
【０２８９】
以上により、ビットレート決定モジュール１９２０は、動画データ２１１１〜２１２２のうち、三次元動画再生システムで観察している観察者がいる向きの動画データについてはビットレートを高く設定できる。これにより、動画ストリーム出力モジュールは、全体として同じビットレートであっても重要度の高い動画データについては、より高画質に送信する事が可能となる。
【０２９０】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。その処理は、上述した実施例の機能を実現させるソフトウェア（コンピュータプログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015104007.tif 000035
【図２】
2015104007.tif 000036
【図３】
2015104007.tif 000037
【図４】
2015104007.tif 000038
【図５】
2015104007.tif 000039
【図６】
2015104007.tif 000040
【図７】
2015104007.tif 000041
【図８】
2015104007.tif 000042
【図９】
2015104007.tif 000043
【図１０】
2015104007.tif 000044
【図１１】
2015104007.tif 000045
【図１２】
2015104007.tif 000046
【図１３】
2015104007.tif 000047
【図１４】
2015104007.tif 000048
【図１５】
2015104007.tif 000049
【図１６】
2015104007.tif 000050
【図１７】
2015104007.tif 000051
【図１８】
2015104007.tif 000052
【図１９】
2015104007.tif 000053
【図２０】
2015104007.tif 000054
【図２１】
2015104007.tif 000055
【図２２】
2015104007.tif 000056
【図２３】
2015104007.tif 000057