(58)【調査した分野】(Int.Cl.,DB名)
3次元空間上の立体形状を表す点群データを記憶する点群データ記憶部を備えた送信装置から通信ネットワークを介して受信装置に上記点群データを送信する方法であって、
上記送信装置の表示要求受信部が、視点および当該視点からの視線の方向の少なくとも一方が可変とされた上記3次元空間の中の上記立体形状の表示状態に関する指定を含む表示要求であって、ユーザにより指定された視点および視線の方向の少なくとも一方を上記立体形状の表示状態に関する指定として含む表示要求を上記受信装置から受信するステップと、
上記送信装置の点群データ抽出部が、上記点群データ記憶部に記憶される点群データの中から、上記要求受信部により受信された上記表示要求に含まれる上記視点および上記視線の方向の少なくとも一方に応じて、上記3次元空間の中で上記立体形状を表示する際に優先されるべき部分の点群データを抽出するステップと、
上記送信装置の点群データ送信部が、上記点群データ抽出部により抽出された点群データを上記受信装置に送信するステップとを有し、
上記点群データ記憶部に記憶される点群データは、撮影対象領域を複数の角度から撮影するように設置された複数のカメラ間の相対的な角度関係に合わせて複数の投影面を設定し、上記複数のカメラによりそれぞれ撮影された複数の撮影画像に含まれる上記立体形状の上記カメラからの距離を表す奥行情報を画素毎に算出し、上記複数の撮影画像に含まれる上記立体形状の各画素の値を、各撮影画像に対応する投影面の方向に上記奥行情報に従って投影させることによって生成された、上記複数の撮影画像に含まれている上記立体形状が1つに合成された立体画像を表す点群データであり、
上記点群データ抽出部は、上記視点と上記複数のカメラの位置との関係に基づいて、上記視点に応じて優先されるべき方向のカメラを決定し、当該決定したカメラによる撮影画像に含まれる各画素の値から生成された点群データを、上記3次元空間の中で上記立体形状を表示する際に優先されるべき部分の点群データとして、上記点群データ記憶部に記憶される点群データの中から抽出する
ことを特徴とする点群データ送信方法。
【発明を実施するための形態】
【0010】
以下、本発明の一実施形態を図面に基づいて説明する。
図1は、本実施形態による点群データ通信システムの機能構成例を示すブロック図である。本実施形態の点群データ通信システムは、送信装置(点群データ送信装置)100および受信装置200を備え、送信装置100から通信ネットワーク300を介して受信装置200に点群データを送信するものである。
【0011】
図1に示すように、送信装置100は、その機能構成として、表示要求受信部11、点群データ抽出部12、間引き部13および点群データ送信部14を備えている。また、送信装置100は、記憶媒体として、点群データ記憶部10を備えている。上記各機能ブロック11〜14は、ハードウェア、DSP(Digital Signal Processor)、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック11〜14は、実際にはコンピュータのCPU、RAM、ROMなどを備えて構成され、RAMやROM、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたプログラムが動作することによって実現される。
【0012】
また、受信装置200は、その機能構成として、表示状態指定部21、表示要求送信部22、点群データ受信部23および表示制御部24を備えている。受信装置200には、センサ201、操作部202およびディスプレイ203が接続されている。上記各機能ブロック21〜24は、ハードウェア、DSP、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック21〜24は、実際にはコンピュータのCPU、RAM、ROMなどを備えて構成され、RAMやROM、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたプログラムが動作することによって実現される。
【0013】
点群データ記憶部10は、3次元空間上の立体形状を表す点群データを記憶する。点群データ記憶部10に記憶される点群データは、例えば特許文献1に記載の方法により生成されるものである。すなわち、点群データは、任意の撮影対象領域を複数の角度から撮影するように設置された複数のカメラによる複数の撮影画像に含まれている立体形状が、当該立体形状の各画素の値を奥行情報に基づく位置に投影することにより1つに合成された立体画像を表す点群データである。
【0014】
撮影対象領域とは、屋内または屋外の任意の場所に設定された領域であり、例えば、建物にある部屋の内部や廊下、階段など、あるいは任意の風景を背景とする屋外の任意の場所である。立体形状とは、撮影対象領域を撮影した撮影画像に含まれている全ての立体物に関する形状をいう。例えば、部屋の内部を撮影した場合、部屋の壁や柱、天井、床などの各種構造物、部屋の中に設置されている家具や装飾品、家電などの各種設置物、部屋の中にいる人やペットなどの各種移動体などの何れもが立体形状に相当する。撮影対象領域を複数の角度から撮影するために複数の位置に設置される複数のカメラは何れも、撮影対象領域内の所定の位置(例えば、撮影対象領域が部屋の内部の場合は部屋の中心位置)に光軸が向くように設置される。
【0015】
図2は、図示しない点群データ生成装置が複数の撮影画像から立体形状の点群データを生成する処理を説明するための図である。
図2に示すように、点群データ生成装置は、撮影対象領域を複数の角度から撮影するように設置された複数のカメラ301A〜301D間の相対的な角度関係に合わせて複数の投影面31〜34を設定する。
図2の例では説明の簡便のため、互いに90度を成す角度で4方向に投影面31〜34を設定している。
【0016】
つまり、●印で示す位置(例えば、部屋内の4方向の壁面)に4台のカメラ301A〜301Dが設置されていて、その位置から矢印A〜Dで示す方向(部屋の中心位置を向く方向)を撮影するように各カメラ301A〜301Dの姿勢が設定されている。点群データ生成装置は、この各カメラ301A〜301Dの取付位置および取付姿勢に応じた撮影方向に投影面31〜34を設定する。なお、各カメラ301A〜301Dの取付位置および取付姿勢に関する情報は、事前のキャリブレーションによって点群データ生成装置に登録しておく。
【0017】
カメラ301A〜301Dは何れもステレオカメラであり、撮影対象領域内の立体形状を2つの異なる方向から同時に撮影することにより、視差画像を得る。点群データ生成装置は、その視差画像を公知の手法により解析することにより、複数のカメラ301A〜301Dによりそれぞれ撮影された複数の撮影画像に含まれる立体形状のカメラ301A〜301Dからの距離を表す奥行情報を画素毎に算出する。
【0018】
そして、点群データ生成装置は、複数の撮影画像に含まれる立体形状の各画素の値を、各撮影画像に対応する投影面31〜34の方向に奥行情報に従って投影させることにより、複数の撮影画像に含まれている立体形状が1つに合成された立体画像を生成する。すなわち、点群データ生成装置は、第1のカメラ301Aから入力された撮影画像に含まれる立体形状の各画素の値を、第1のカメラ101Aの位置から投影面31がある矢印Aの方向に、奥行情報で示される距離だけ離れた位置に投影させる。ここで投影させる各画素の値は、撮影画像が元々持っているRGBの値であってもよいし、これを2値化あるいはグレースケール化した値などであってもよい。点群データ生成装置は、第2〜第4のカメラ301B〜301Dから入力された撮影画像についても同様の処理を行う。
【0019】
このように、同じ撮影対象領域を複数のカメラ301A〜301Dで撮影し、各撮影画像に含まれる立体形状の各画素の値を1つの画像上に合成しているので、同じ画素位置に対して複数の方向から複数の画素値が重ねて投影されることになる。点群データ記憶部10は、このようにして生成される点群データを記憶する。点群データを構成する個々の点データは、仮想的な3次元空間上における点の位置を示す位置情報、撮影画像が元々持っているRGBの値(2値化あるいはグレースケール化した値でもよい)から成る色情報、どのカメラの撮影画像から投影されたものかを示す識別情報(カメラIDなど)などを有している。
【0020】
点群データ記憶部10に記憶される点群データは、撮影対象領域の中の各立体形状が静止状態である静止画としての立体画像を表示させるための点群データであってもよいし、撮影対象領域の中の立体形状の一部または全部が可動状態である動画としての立体画像を表示させるための点群データであってもよい。動画としての立体画像を表示させるための点群データの場合、点群データ記憶部10は、所定の時間間隔(フレームごと)ごとに立体画像を表示させるための点群データを記憶する。
【0021】
後述するように、本実施形態では、受信装置200において、コンピュータ上に構築される仮想的な3次元空間上でユーザの視点および視線の方向を任意に指定することにより、以上のようにして合成される点群データから成る立体画像(撮影対象領域内に含まれる立体形状を仮想的な3次元空間上に描画してディスプレイ203に表示させるための画像)を、ユーザが所望する視点から所望する方向を見た状態にしてディスプレイ203に表示させることができるようにしている。
【0022】
この場合、点群データにより合成される立体画像を、ユーザにより指定された視点から見て立体の前面に来るものを優先して描画する。
図2の例において、ユーザにより指定された視点が紙面の手前にあって、その視点から紙面の方向に視線が向いているとした場合、第1のカメラ301Aおよび第2のカメラ301Bによる撮影画像に含まれる画素の値を、第3のカメラ301Cおよび第4のカメラ401Dによる撮影画像に含まれる画素の値よりも優先して描画する。第1のカメラ301Aによる撮影画像から生成される点群データの一部と第2のカメラ301Bによる撮影画像から生成される点群データの一部とのどちらを優先するかは任意に決めることが可能である。例えば、視点から立体形状までの距離が短い方を優先するといった処理が可能である。
【0023】
本実施形態の点群データ通信システムでは、受信装置200のユーザにより指定された視点および視線の方向を受信装置200から送信装置100に通知する。送信装置100では、受信装置200から通知された視点および視線の方向に応じて描画上優先されるべき点群データを点群データ記憶部10から抽出し、受信装置200に送信する。受信装置200では、送信装置100から送られてきた点群データを用いて、立体形状の合成画像を3次元空間上に描画してディスプレイ203に表示させる。以下、この動作に関わる各機能ブロック11〜14,21〜24の構成について説明する。
【0024】
受信装置200の表示状態指定部21は、ディスプレイ203に表示させる立体形状の表示状態を指定するものである。立体形状の表示状態とは、3次元空間の中で可変とされた視点および当該視点からの視線の方向であって、ユーザにより指定された視点および視線の方向をいう。ユーザが視点および視線の方向を指定する方法として、種々の方法を用いることが可能である。
【0025】
例えば、ディスプレイ203に点群データに基づく立体画像が表示されている状態において、ユーザが操作部202を操作することにより、ユーザが所望する視点および視線の方向を任意に指定することが可能である。この場合、ユーザは、現在表示中の立体画像の表示状態を基準として、所望の位置に視点を移動させたり、所望の方向に視線を移動させたりするような指定を操作部202の操作によって行うことが可能である。操作部202は、例えばマウス、キーボード、タッチパネル、コントローラ、切替スイッチ等である。表示状態指定部21は、操作部202から入力される操作情報に基づいて、視点および視線の方向を立体形状の表示状態に関する指定として特定する。
【0026】
別の例として、表示状態指定部21は、センサ201から入力される加速度情報および角速度情報の少なくとも一方に基づいて、視点および視線の方向に関する立体形状の表示状態を指定することも可能である。例えば、受信装置200、センサ201およびディスプレイ203を、これらを一体の筐体に備えたモバイル端末により構成する。モバイル端末の一例は、スマートフォンまたはタブレット端末である。また、センサ201を、加速度センサおよび角速度センサの少なくとも一方により構成する。
【0027】
そして、ユーザがモバイル端末を手に持って実空間上で任意に動かすことにより、そのときの動きの内容をセンサ201により加速度情報や角速度情報として検出する。この場合、ユーザは、モバイル端末を上下方向、左右方向、前後方向に任意に移動させたり、モバイル端末を任意に回転させたりすることが可能である。表示状態指定部21は、このようなモバイル端末の動きに応じてセンサ201により検出される加速度情報や角速度情報に基づいて、視点および視線の方向に関する現在の指定内容からの相対的な変化を検出し、変化後の視点および視線の方向を立体形状の表示状態に関する指定として特定する。
【0028】
さらに別の例として、センサ201およびディスプレイ203を、これらを一体の筐体に備えたヘッドマウントディスプレイ(HMD)により構成するようにしてもよい。そして、HMDを頭部に装着したユーザが実空間上で任意に動くことにより、そのときのHMDの動きの内容をセンサ201により加速度情報や角速度情報として検出する。表示状態指定部21は、このようなHMDの動きに応じてセンサ201により検出される加速度情報や角速度情報に基づいて、視点および視線の方向に関する現在の指定内容からの相対的な変化を検出し、変化後の視点および視線の方向を立体形状の表示状態に関する指定として特定する。
【0029】
なお、
図1では、センサ201および操作部202の両方を備える構成を示しているが、何れか一方のみを備える構成としてもよい。
【0030】
受信装置200の表示要求送信部22は、3次元空間の中の立体形状の表示状態に関する指定を含む表示要求を送信装置100に送信する。すなわち、表示要求送信部22は、表示状態指定部21により指定された視点および視線の方向を立体形状の表示状態に関する指定として含む表示要求を送信装置100に送信する。3次元空間における視点および視線の方向は、当該3次元空間における絶対的な値として指定するようにしてもよいし、前回の表示要求送信時からの相対的な変化量を示す値として指定するようにしてもよい。
【0031】
表示要求送信部22は、表示要求を所定の時間間隔で繰り返し送信する。表示要求を送信する時間間隔は、ディスプレイ203に立体画像を表示させる用途に応じて適宜定めればよい。なお、表示要求を所定の時間間隔で繰り返し送信するのは、点群データ記憶部10に記憶される点群データが動画用の場合のみとし、点群データ記憶部10に記憶される点群データが静止画用の場合は、指定される視点および視線の方向の少なくとも一方について変化が生じたときのみ表示要求を送信するようにしてもよい。
【0032】
送信装置100の表示要求受信部11は、受信装置200から送られてくる表示要求を受信する。点群データ抽出部12は、点群データ記憶部10に記憶されている点群データの中から、表示要求受信部11により受信された表示要求に応じた部分の点群データを抽出する。すなわち、点群データ抽出部12は、点群データ記憶部10に記憶されている点群データの中から、表示要求に含まれる視点および視線の方向に応じて、3次元空間の中で立体形状を表示する際に優先されるべき部分の点群データを抽出する。
【0033】
点群データ記憶部10に記憶される点群データが動画用の場合、点群データ抽出部12は、所定の時間間隔ごとに立体画像を表示させるための点群データを点群データ記憶部10から抽出し、各タイミングの抽出の際に、表示要求に含まれる視点および視線の方向に応じて、3次元空間の中で立体形状を表示する際に優先されるべき部分の点群データだけを抽出する。
【0034】
立体形状を表示する際に優先されるべき部分の点群データとは、
図2を用いて説明した通り、指定された視点から見て立体形状の背面に隠れる側に対応する点群データではなく、前面に来る側に対応する点群データである。また、指定された視点から見て立体形状の前面に来る複数の立体形状が、指定された視線の方向において重なる場合は、指定された視点から立体形状までの距離が遠い方ではなく短い方に対応する点群データである。
【0035】
具体的には、点群データ抽出部12は、表示要求に含まれる視点と複数のカメラの位置(各カメラの実空間上での取付位置に対応する仮想的な3次元空間上での位置)との関係に基づいて、視点に応じて優先されるべき方向のカメラを決定する。そして、当該決定したカメラによる撮影画像に含まれる各画素の値から生成された点群データを、3次元空間の中で立体形状を表示する際に優先されるべき部分の点群データとして、点群データ記憶部10に記憶されている点群データの中から抽出する。なお、3次元空間上におけるカメラの位置情報は、事前のキャリブレーションによって送信装置100に登録しておく。
【0036】
さらに、点群データ抽出部12は、上記のように決定したカメラによる撮影画像に含まれる各画素の値から生成された点群データの中から、視点からの距離に応じて優先されるべき立体形状に対応する点群データを抽出する。視点から立体形状までの距離は、立体形状を構成する点群データが有する位置情報と、視点の位置情報とから計算することが可能である。
【0037】
すなわち、点群データ抽出部12は、表示要求に含まれる視点と視線の方向と立体形状の位置との関係に基づいて、視線の方向において重なりが生じる複数の立体形状のうち、視点からの距離が短い方の立体形状に対応する点群データを、3次元空間の中で立体形状を表示する際に優先されるべき部分の点群データとして、上記のように決定したカメラによる撮影画像に含まれる各画素の値から生成された点群データの中から更に抽出する。
【0038】
なお、視点からの距離に応じて優先されるべき立体形状に対応する点群データの抽出処理を省略し、後述する間引き部13による間引き処理によって対応するのみとしてもよい。
【0039】
点群データ抽出部12は、点群データ記憶部10に記憶されている点群データの中から、表示要求に含まれる視点から視線の方向を見た場合における前方の全範囲を対象として、3次元空間の中で立体形状を表示する際に優先されるべき部分の点群データを抽出するようにしてもよいし、表示要求に含まれる視点および視線の方向に基づき特定される所定範囲の視界を対象として、3次元空間の中で立体形状を表示する際に優先されるべき部分の点群データを抽出するようにしてもよい。前者の場合は、指定された視点から視線の方向を見て画角が180度の範囲を対象として、点群データを抽出する。後者の場合は、指定された視点から視線の方向を見て画角が180度より小さい所定範囲を対象として、点群データを抽出する。
【0040】
後者のように所定範囲の点群データを切り出す方法としては、大きく分けて2つの方法が考えられ、その何れも適用することが可能である。1つ目の方法は、3次元空間上において点群データをあらかじめ複数の領域に分割しておいて、指定された視点から視線の方向を見た場合の所定範囲の視界に含まれる分割領域の点群データを抽出するという方法である。領域の分割は、グリッド単位で分割する方法、構造体単位で分割する方法、立体形状のエッジに合わせた形状単位で分割する方法、メタボール単位で分割する方法など、種々の分割方法を用いることが可能である。
【0041】
2つ目の方法は、3次元空間上において点群データをあらかじめ複数の領域に分割することなく、指定された表示状態に応じて、所定範囲の視界に含まれる点群データを動的に切り出す方法である。点群データ記憶部10に記憶されている点群データは、それぞれの点(カメラの撮影画像に含まれる立体形状の各画素の値が奥行情報に従って投影された点)が3次元空間上における位置を示す位置情報を有している。これに対し、視点の位置および視線の方向が指定されると、その視点から視線の方向を見た場合の所定範囲の視界が、3次元空間上のどの範囲に相当するのかを計算することができる。点群データ抽出部12は、このようにして計算される視界の範囲内に位置情報が含まれる点群データを抽出する。
【0042】
間引き部13は、表示要求受信部11により受信された表示要求に含まれる指定に基づいて特定される立体形状の表示状態に応じて、優先度の低い部分を決定し、点群データ抽出部12により抽出された点群データの中から、優先度の低い部分の点群データを間引く処理を実行する。間引き部13は、点群データ抽出部12により抽出された点群データの中から一部を間引く際に、視点との距離に基づいて定まる立体形状の遠近に関する表示状態に応じて、視点からの距離が長くなる立体形状に関する部分ほど優先度を低くして、点群データの間引き量を多くする。
【0043】
すなわち、点群データ記憶部10に記憶されている点群データは、それぞれの点ごとに、3次元空間上における位置を示す位置情報を有している。従って、視点の位置から立体形状までの距離を算出することが可能である。間引き部13は、視点の位置情報と各点の位置情報とに基づいて、視点から立体形状までの距離を算出し、当該視点からの距離が長くなる立体形状に関する部分ほど点群データの間引き量を多くする。
【0044】
視点からの距離が長くなる立体形状は、視点から遠い位置にある立体形状であり、ディスプレイ203に表示されるときには小さく表示されるものである。このように小さく表示される立体形状に多くの点群データを用いることは不要であるため、点群データの間引きを行う。これに対し、視点からの距離が短くなる立体形状は、視点から近い位置にある立体形状であり、ディスプレイ203に表示されるときには大きく表示されるものである。このように大きく表示される立体形状は、比較的高い解像度で表示するために、比較的多くの点群データを用いることが好ましい。よって、視点から近い位置にある立体形状に関する部分の点群データは間引かないか、間引く量を少なくする。
【0045】
視点からの距離がどの程度のときにどの程度の点群データを間引くかについては、あらかじめ任意にルールを設定しておくことが可能である。また、間引きを行う場合に、どのような方法で間引くかについては、任意の方法を用いることが可能である。例えば、間引きを行う所定の単位領域を決定し、単位領域の中から間引く点データをランダムに選択するようにしてよい。または、単位領域の中から同じまたは類似の色情報を持った点データを選択して間引くようにしてもよい。または、単位領域内に含まれる各点データが持つ色情報を平均化し、平均化した情報を代表の点データに持たせた上で、他の点データを間引くようにしてもよい。
【0046】
点群データ送信部14は、点群データ抽出部12により抽出された点群データのうち間引き部13による間引き後の点群データを受信装置200に送信する。点群データ記憶部10に記憶されている点群データは、ある撮影対象領域を複数のカメラにより撮影した複数の撮影画像の各画素値から生成されるものであり、多くのデータ量を有している。これに対し、点群データ抽出部12により抽出される点群データは、点群データ記憶部10に記憶されている点群データの中から、指定された視点および視線の方向に応じて描画上優先されるべきものだけを抽出したものであるから、データ量が削減されている。よって、点群データ送信部14は、点群データ抽出部12により抽出された点群データを受信装置200に送信することとしてもよい。ただし、間引き部13によって間引きを行うことにより、ディスプレイ203に表示される立体画像の表示精度を殆ど落とすことなく、データ量を更に削減することができる。よって、点群データ送信部14は、間引き部13による間引き後の点群データを受信装置200に送信するのがより好ましい。
【0047】
点群データ受信部23は、表示要求送信部22により送信された表示要求に応じて送信装置100から送られてくる点群データを受信する。表示制御部24は、点群データ受信部23により受信された点群データに基づいて、3次元空間上に立体画像を描画してディスプレイ203に表示させる。ディスプレイ203に表示される立体画像は、ユーザが指定した視点および視線の方向に応じて生成されたものであり、様々な視点から様々な方向に立体形状を見た状態の立体画像を表示させることができる。また、3次元空間の広い範囲を俯瞰して見た状態の立体画像や、特定の立体形状に近づいて拡大して見た状態の立体画像などを表示させることもできる。
【0048】
図3は、上記のように構成した本実施形態による点群データ通信システムの動作例を示すフローチャートである。
図3に示すフローチャートの動作は、受信装置200のユーザが立体形状の表示を指示したときに開始する。
【0049】
まず、受信装置200の表示状態指定部21は、センサ201からの出力情報または操作部202からの出力情報に基づいて、3次元空間の中で可変とされた視点および当該視点からの視線の方向を、ディスプレイ203に表示させる立体形状の表示状態に関する指定として特定する(ステップS1)。そして、表示要求送信部22は、表示状態指定部21により指定された視点および視線の方向を立体形状の表示状態に関する指定として含む表示要求を送信装置100に送信する(ステップS2)。
【0050】
送信装置100の表示要求受信部11が受信装置200から送られてくる表示要求を受信すると(ステップS3)、点群データ抽出部12は、点群データ記憶部10に記憶されている点群データの中から、表示要求に含まれる視点および視線の方向に応じて、3次元空間の中で立体形状を表示する際に優先されるべき部分の点群データを抽出する(ステップS4)。
【0051】
次いで、間引き部13は、表示要求受信部11により受信された表示要求に含まれる指定に基づいて特定される立体形状の表示状態に応じて、優先度の低い部分を決定し、点群データ抽出部12により抽出された点群データの中から、優先度の低い部分の点群データを間引く処理を実行する(ステップS5)。そして、点群データ送信部14は、点群データ抽出部12により抽出された点群データのうち間引き部13による間引き後の点群データを受信装置200に送信する(ステップS6)。
【0052】
受信装置200の点群データ受信部23は、ステップS2で表示要求送信部22により送信された表示要求に応じて送信装置100から送られてくる点群データを受信する(ステップS7)。そして、表示制御部24は、点群データ受信部23により受信された点群データに基づいて、3次元空間上に立体画像を描画してディスプレイ203に表示させる(ステップS8)。
【0053】
その後、表示状態指定部21は、立体形状の表示を終了させるための指示がユーザから行われたか否かを判定し(ステップS9)、表示終了の指示が行われていない場合は、ステップS1に戻って処理を継続する。これにより、ステップS1〜S9の処理を所定の時間間隔で繰り返し実行する。一方、表示終了の指示が行われた場合は、
図3に示すフローチャートの処理を終了する。
【0054】
以上詳しく説明したように、本実施形態では、3次元空間の中の立体形状の表示状態に関する指定を含む表示要求を受信装置200から送信装置100に送信し、送信装置100がこの表示要求に応じて、点群データ記憶部10に記憶されている点群データの中から、表示要求に応じた部分の点群データを抽出して受信装置200に送信するようにしている。
【0055】
上記のように構成した本実施形態によれば、点群データ記憶部10に記憶されている点群データのうち、受信装置200が3次元空間の中で実際に表示する立体形状の表示状態に関して必要となる部分の点群データだけが抽出されて送信装置100から受信装置200に送信されることとなる。そのため、送信装置100の点群データ記憶部10に記憶されている点群データが全体としてはデータ量が膨大なものであったとしても、受信装置200での表示に必要な点群データだけを通信ネットワーク300上で実用上耐え得る程度の短い時間以内に送信することが可能となる。
【0056】
また、本実施形態では、表示要求に含まれる指定に基づいて特定される立体形状の表示状態に応じて、優先度の低い部分を決定し、点群データ記憶部10から抽出された点群データの中から更に一部を間引く処理を実行している。この間引き処理は、視点から立体形状までの距離が長くなる立体形状(視点から遠い位置にあって小さく表示される立体形状)に関する部分ほど間引き量を多くするものである。このような間引きを行うことにより、受信装置200にて表示される立体画像の表示精度を殆ど落とすことなく、送信装置100から受信装置200に送信する点群データのデータ量を更に削減することができ、より短い時間で点群データの送信を行うことが可能となる。
【0057】
なお、上記実施形態において、点群データ抽出部12はさらに、点群データ記憶部10に記憶されている点群データの中から、表示要求に含まれる指定に応じた表示状態で表示される立体形状のうち、前回の抽出時から差分が生じている部分の点群データを抽出するようにしてもよい。この場合、受信装置200では、差分が生じていない部分の点群データ(前回までに既に送信装置100から受信済みのもの)と、差分が生じている部分の点群データ(今回の表示要求に応じて送信装置100から受信するもの)とを合成して立体画像をディスプレイ203に表示させる。
【0058】
例えば、点群データ記憶部10に記憶される点群データが動画用の場合であって、所定の時間間隔で送信される表示要求に含まれる視点および視線の方向の指定が前回と変わらない場合、撮影対象領域の中で静止状態にある構造物や設置物の部分の点群データは抽出せず、移動体が移動している部分の点群データだけを抽出するようにする。また、点群データ記憶部10に記憶される点群データが静止画用の場合であって、所定の時間間隔で送信される表示要求に含まれる視点および視線の方向の指定が前回と変わらない場合、このタイミングでは点群データ記憶部10から点群データを何も抽出しないようにする。このようにすれば、送信装置100から受信装置200に送信する点群データのデータ量を更に削減することができ、より短い時間で点群データの送信を行うことが可能となる。
【0059】
同様に、上記実施形態において、間引き部13はさらに、点群データ記憶部10に記憶されている点群データの中から、表示要求に含まれる指定に応じた表示状態で表示される立体形状のうち、前回の抽出時から差分が生じていない部分の点群データを間引くようにしてもよい。このように構成した場合も、送信装置100から受信装置200に送信する点群データのデータ量を更に削減することができ、より短い時間で点群データの送信を行うことが可能となる。また、この構成の場合、受信装置200では、差分が生じていない部分の前回までの点群データと、差分が生じている部分の今回の点群データとを合成するといった処理を行う必要がなく、所定の時間間隔ごとに送られてくる点群データを用いて所定の時間間隔ごとに立体画像をディスプレイ203に表示させればよいので、受信装置200での処理負荷を軽減することができる。
【0060】
また、上記実施形態では、立体形状の表示状態に関する指定の内容として、3次元空間上におけるユーザの視点および視線の方向の両方を用いる構成について説明したが、何れか一方のみを用いる構成としてよい。すなわち、3次元空間上において視点を固定として視線の方向のみを可変とし、立体形状の表示状態に関する指定の内容としてユーザの視線の方向を用いる構成としてもよい。または、3次元空間上において視線の方向を固定として視点のみを可変とし、立体形状の表示状態に関する指定の内容としてユーザの視点を用いる構成としてもよい。
【0061】
また、上記実施形態では、立体形状の表示状態に関する指定の内容として、3次元空間上におけるユーザの視点および視線の方向を用いる構成について説明したが、本発明はこれに限定されない。例えば、視点および視線の方向は固定で、立体画像の拡大/縮小によって表示範囲を変えることを、立体形状の表示状態に関する指定として用いるようにしてもよい。また、複数の撮影対象領域についての撮影画像から生成した複数箇所の点群データを点群データ記憶部10に記憶しておいて、表示対象とする撮影対象領域の点群データを切り替えることを、立体形状の表示状態に関する指定として用いるようにしてもよい。以上の例は、例えば特許文献1に記載されたように複数エリアの監視を行う場合に適用して好適なものである。
【0062】
また、上記実施形態では、図示しない点群データ生成装置により生成された点群データを点群データ記憶部10にあらかじめ記憶しておく例について説明したが、本発明はこれに限定されない。例えば、点群データ生成装置により生成される動画用の点群データをリアルタイムに点群データ記憶部10に逐次記憶していき、表示要求に応じた点群データを点群データ記憶部10からリアルタイムに抽出して受信装置200に送信するようにしてもよい。
【0063】
また、上記実施形態では、受信装置200が点群データの受信機能と立体画像の表示機能との両方を備える構成を示したが、本発明はこれに限定されない。例えば、表示状態指定部21および表示制御部24を受信装置200とは異なる別の装置が備える構成としてもよい。
【0064】
また、上記実施形態では、点群データは特許文献1に記載された方法で生成するものとして説明したが、本発明はこれに限定されない。例えば、3次元レーザスキャナを用いる方法で点群データを生成するようにしてもよいし、ポリゴンや三角形メッシュ等の面形式のデータを公知の方法により点群データに変換するようにしてもよい。
【0065】
また、上記実施形態において、送信装置100から受信装置200に送信する点群データを圧縮するようにしてもよい。この場合、次のようにデータ圧縮を行うようにしてもよい。すなわち、点群データを奥行情報に基づいて所定の複数の2次元平面(例えば、元の撮影画像上の2次元平面)に投影することにより、点群データ抽出部12および間引き部13(上述のように、間引き部13は省略してもよい)によりデータ数が削減された状態での画素値を有する複数の2次元画像データを生成する。そして、このように生成した複数の2次元画像データに対してMPEG等の公知の画像圧縮を行い、圧縮した複数の2次元画像データと奥行情報とを送信装置100から受信装置200に送信する。また、奥行き情報を別途圧縮して送信するようにしてもよい。このようにすれば、送信するデータ量を更に削減することができる。なお、この場合、点群データ記憶部10に記憶される点群データは、各点とそれに対応する奥行情報とを関連付ける情報を含んでいる。
【0066】
図4は、このように圧縮処理を行う場合における点群データ通信システムの機能構成例を示すブロック図である。なお、この
図4において、
図1に示した符号と同一の符号を付したものは同一の機能を有するものであるので、ここでは重複する説明を省略する。
【0067】
図4に示すように、送信装置100’は、点群データ送信部14に代えて、画像データ生成部15、圧縮部16および送信部17を備える。また、受信装置200’は、点群データ受信部23に代えて、受信部25および点群データ生成部26を備える。
【0068】
画像データ生成部15は、間引き部13による間引き後の点群データを、当該点群データに関連付けられている奥行情報に基づいて所定の複数の2次元平面(例えば、元の撮影画像上の2次元平面)に投影することにより、複数の2次元画像データを生成する。圧縮部16は、画像データ生成部15により生成された複数の2次元画像データに対してそれぞれ画像圧縮を行う。送信部17は、圧縮部16により圧縮された複数の2次元画像データおよび奥行情報を受信装置200’に送信する。
【0069】
受信部25は、表示要求送信部22により送信された表示要求に応じて送信装置100’から送られてくる複数の2次元画像データおよび奥行情報を受信する。点群データ生成部26は、受信部25により受信された複数の2次元画像データに含まれる立体形状の各画素の値を、受信部25により受信された奥行情報に従って複数の投影面の方向に投影させることにより、複数の2次元画像データに含まれている立体形状が1つに合成された立体画像を表す点群データを生成し、これを表示制御部24に供給する。複数の投影面は、点群データ記憶部10に記憶される点群データを生成する際に用いた投影面と同様のものである。
【0070】
なお、
図4では、間引き部13による間引き後の点群データから2次元画像データを生成する構成について説明したが、間引き部13を省き、点群データ抽出部12により抽出された点群データから2次元画像データを生成するようにしてもよい。
【0071】
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【解決手段】3次元空間の中の立体形状の表示状態に関する指定を含む表示要求を受信装置200から送信装置100に送信し、送信装置100がこの表示要求に応じて、点群データ記憶部10に記憶されている点群データの中から、表示要求に応じた部分の点群データを抽出して受信装置200に送信することにより、受信装置200が3次元空間の中で実際に表示する立体形状の表示状態に関して必要となる部分の点群データだけが送信されるようにすることで、点群データ記憶部10に記憶されている点群データが全体としてはデータ量が膨大なものであったとしても、表示に必要な点群データだけを通信ネットワーク300上で実用上耐え得る程度の短い時間以内に送信することができるようにする。