(57)【特許請求の範囲】
【請求項１】
異なる視点から重複する対象を撮影した第１の静止画像および第２の静止画像の画像データを受け付ける画像データ受付部と、
前記第１の静止画像を撮影したカメラおよび前記第２の静止画像を撮影したカメラと外部標定要素の関係が既知のレーザースキャナを用いた前記対象に対するレーザースキャンを行うことで得た点群位置データを取得する点群位置データ取得部と、
前記重複する対象の特定の位置の指定を受け付ける指定受付部と、
前記指定受付部で受け付けた指定位置の三次元位置を取得する三次元位置取得部と、
前記指定位置の三次元位置に基づいて半径Ｒの値を決定した投影球を設定する投影球設定部と、
前記第１の静止画像と前記第２の静止画像とを前記投影球に投影した第１の合成画像を形成する合成画像形成部と
前記第１の合成画像と前記点群位置データの各点を前記投影球に投影した点群画像とを合成した第２の合成画像を得る合成部と
を備え、
前記指定位置の前記三次元位置は、前記第２の合成画像における前記指定位置に対応する前記点群画像を構成する点の位置から求められることを特徴とする画像処理装置。
【請求項２】
前記投影球の中心位置と前記指定位置との距離ｒを算出する距離算出部を備え、
前記投影球設定部は、前記距離算出部が算出した前記距離ｒに基づき前記半径Ｒの値を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記Ｒの値を前記ｒに一致させることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記指定受付部は、前記合成画像を表示した表示画面上に表示されるカーソルの当該画面上における位置に基づき、前記特定の位置の指定を受け付け、
前記投影球設定部は、前記カーソルの動きに合わせて前記半径Ｒの値を可変することを特徴とする請求項１〜３のいずれか一項に記載の画像処理装置。
【請求項５】
異なる視点から重複する対象を撮影した第１の静止画像の画像データおよび第２の静止画像の画像データを受け付ける画像データ受付ステップと、
前記第１の静止画像を撮影したカメラおよび前記第２の静止画像を撮影したカメラと外部標定要素の関係が既知のレーザースキャナを用いた前記対象に対するレーザースキャンを行うことで得た点群位置データを取得する点群位置データ取得ステップと、
前記重複する対象の特定の位置の指定を受け付ける指定受付ステップと、
前記指定受付ステップで受け付けた指定位置の三次元位置を取得する三次元位置取得ステップと、
前記指定位置の三次元位置に基づいて半径Ｒの値を決定した投影球を設定する投影球設定ステップと、
前記第１の静止画像と前記第２の静止画像とを前記投影球に投影した第１の合成画像を形成する合成画像形成ステップと、
前記合成画像形成ステップで形成された前記第１の合成画像の画像データを表示装置に送信するステップと、
前記第１の合成画像と前記点群位置データの各点を前記投影球に投影した点群画像とを合成した第２の合成画像を得るステップと
を備え、
前記指定位置の前記三次元位置は、前記第２の合成画像における前記指定位置に対応する前記点群画像を構成する点の位置から求められることを特徴とする画像処理方法。
【請求項６】
コンピュータに読み取らせて実行させるプログラムであって、
コンピュータに
異なる視点から重複する対象を撮影した第１の静止画像の画像データおよび第２の静止画像の画像データを受け付ける画像データ受付ステップと、
前記第１の静止画像を撮影したカメラおよび前記第２の静止画像を撮影したカメラと外部標定要素の関係が既知のレーザースキャナを用いた前記対象に対するレーザースキャンを行うことで得た点群位置データを取得する点群位置データ取得ステップと、
前記重複する対象の特定の位置の指定を受け付ける指定受付ステップと、
前記指定受付部で受け付けた指定位置の三次元位置を取得する三次元位置取得ステップと、
前記指定位置の三次元位置に基づいて半径Ｒの値を決定した投影球を設定する投影球設定ステップと、
前記第１の静止画像と前記第２の静止画像とを前記投影球に投影した第１の合成画像を形成する合成画像形成ステップと、
前記合成画像形成ステップで形成された前記第１の合成画像の画像データを表示装置に送信するステップと、
前記第１の合成画像と前記点群位置データの各点を前記投影球に投影した点群画像とを合成した第２の合成画像を得るステップと
を実行させ、
前記指定位置の前記三次元位置は、前記第２の合成画像における前記指定位置に対応する前記点群画像を構成する点の位置から求められることを特徴とする画像処理用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の画像を組み合わせてより広角な画像を得る技術に関する。
【背景技術】
【０００２】
視線の方向が異なる複数の静止画像を組み合わせてパノラマ画像と称されるより広角な画像を得る技術が知られている（特許文献１を参照）。また、この技術を利用したカメラとして全周カメラや全天球カメラが知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−１５５１６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
パノラマ画像は、特定の視点を中心とした投影球面を設定し、その内周面に複数の画像を投影することで作成される。この際、隣接する画像同士が一部重複するようにすることで、複数の画像が合成され、パノラマ画像が得られる。パノラマ画像を構成する各画像の視点が一致していれば、原理的に画像間のつながりの不連続性や画像の歪みは生じない。しかしながら、合成の対象となる複数の画像の視点が一致しているとは限らない。例えば、複数のカメラを備えた全周カメラの場合、物理的に各カメラの視点の位置を一致させることができないので、厳密に見ると画像同士のつなぎ目の部分でのズレ、および画像全体で見た場合の歪みが存在する。
【０００５】
このような背景において、本発明は、複数の画像を合成することで得たパノラマ画像における画像のズレの問題を解決することを課題とする。
【課題を解決するための手段】
【０００６】
請求項１に記載の発明は、異なる視点から重複する対象を撮影した第１の静止画像および第２の静止画像の画像データを受け付ける画像データ受付部と、前記第１の静止画像を撮影したカメラおよび前記第２の静止画像を撮影したカメラと外部標定要素の関係が既知のレーザースキャナを用いた前記対象に対するレーザースキャンを行うことで得た点群位置データを取得する点群位置データ取得部と、前記重複する対象の特定の位置の指定を受け付ける指定受付部と、前記指定受付部で受け付けた指定位置の三次元位置を取得する三次元位置取得部と、前記指定位置の三次元位置に基づいて半径Ｒの値を決定した投影球を設定する投影球設定部と、前記第１の静止画像と前記第２の静止画像とを前記投影球に投影した第１の合成画像を形成する合成画像形成部と前記第１の合成画像と前記点群位置データの各点を前記投影球に投影した点群画像とを合成した第２の合成画像を得る合成部とを備え、前記指定位置の前記三次元位置は、前記第２の合成画像における前記指定位置に対応する前記点群画像を構成する点の位置から求められることを特徴とする画像処理装置である。
【０００７】
請求項２に記載の発明は、請求項１に記載の発明において、前記投影球の中心位置と前記指定位置との距離ｒを算出する距離算出部を備え、前記投影球設定部は、前記距離算出部が算出した前記距離ｒに基づき前記半径Ｒの値を決定することを特徴とする。
【０００８】
請求項３に記載の発明は、請求項２に記載の発明において、前記Ｒの値を前記ｒに一致させることを特徴とする。
【０００９】
請求項４に記載の発明は、請求項１〜３のいずれか一項に記載の発明において、前記指定受付部は、前記合成画像を表示した表示画面上に表示されるカーソルの当該画面上における位置に基づき、前記特定の位置の指定を受け付け、前記投影球設定部は、前記カーソルの動きに合わせて前記半径Ｒの値を可変することを特徴とする。
【００１０】
請求項５に記載の発明は、異なる視点から重複する対象を撮影した第１の静止画像の画像データおよび第２の静止画像の画像データを受け付ける画像データ受付ステップと、前記第１の静止画像を撮影したカメラおよび前記第２の静止画像を撮影したカメラと外部標定要素の関係が既知のレーザースキャナを用いた前記対象に対するレーザースキャンを行うことで得た点群位置データを取得する点群位置データ取得ステップと、前記重複する対象の特定の位置の指定を受け付ける指定受付ステップと、前記指定受付ステップで受け付けた指定位置の三次元位置を取得する三次元位置取得ステップと、前記指定位置の三次元位置に基づいて半径Ｒの値を決定した投影球を設定する投影球設定ステップと、前記第１の静止画像と前記第２の静止画像とを前記投影球に投影した第１の合成画像を形成する合成画像形成ステップと、前記合成画像形成ステップで形成された前記第１の合成画像の画像データを表示装置に送信するステップと、前記第１の合成画像と前記点群位置データの各点を前記投影球に投影した点群画像とを合成した第２の合成画像を得るステップとを備え、前記指定位置の前記三次元位置は、前記第２の合成画像における前記指定位置に対応する前記点群画像を構成する点の位置から求められることを特徴とする画像処理方法である。
【００１１】
請求項６に記載の発明は、コンピュータに読み取らせて実行させるプログラムであって、コンピュータに異なる視点から重複する対象を撮影した第１の静止画像の画像データおよび第２の静止画像の画像データを受け付ける画像データ受付ステップと、前記第１の静止画像を撮影したカメラおよび前記第２の静止画像を撮影したカメラと外部標定要素の関係が既知のレーザースキャナを用いた前記対象に対するレーザースキャンを行うことで得た点群位置データを取得する点群位置データ取得ステップと、前記重複する対象の特定の位置の指定を受け付ける指定受付ステップと、前記指定受付部で受け付けた指定位置の三次元位置を取得する三次元位置取得ステップと、前記指定位置の三次元位置に基づいて半径Ｒの値を決定した投影球を設定する投影球設定ステップと、前記第１の静止画像と前記第２の静止画像とを前記投影球に投影した第１の合成画像を形成する合成画像形成ステップと、前記合成画像形成ステップで形成された前記第１の合成画像の画像データを表示装置に送信するステップと、前記第１の合成画像と前記点群位置データの各点を前記投影球に投影した点群画像とを合成した第２の合成画像を得るステップとを実行させ、前記指定位置の前記三次元位置は、前記第２の合成画像における前記指定位置に対応する前記点群画像を構成する点の位置から求められることを特徴とする画像処理用プログラムである。
【発明の効果】
【００１２】
本発明によれば、複数の画像を合成することで得たパノラマ画像における画像のズレの問題が解決される。
【図面の簡単な説明】
【００１３】
【図１】画像を合成してパノラマ画像を形成する原理を示す図である。
【図２】画像のずれが生じる原理を示す図である。
【図３】画像のずれが生じない条件を示す図である。
【図４】実施形態のブロック図である。
【図５】処理の手順の一例を示すフローチャートである。
【図６】パノラマ画像の一例を示す図面代用写真である。
【図７】パノラマ画像の一例を示す図面代用写真である。
【図８】パノラマ画像の一例を示す図面代用写真である。
【図９】パノラマ画像と点群画像とを合成した画像の一例を示す図面代用写真である。
【図１０】パノラマ画像の一例を示す図面代用写真である。
【図１１】パノラマ画像の一例を示す図面代用写真である。
【発明を実施するための形態】
【００１４】
１．第１の実施形態
（概要）
まず、視点が異なる複数の画像同士を合成した際に生じる問題について説明する。図１には、位置（視点）が異なる３つのカメラを用いて一部が重複する静止画像を３枚撮影し、それを投影球の内周面に投影してパノラマ画像を作成した場合が示されている。
【００１５】
図２には、視点Ｃ１の第１のカメラおよび視点Ｃ２の第２のカメラが点Ｐの位置を撮影した場合が示されている。ここで、視点Ｃ１とＣ２は、一致しておらず、パノラマ画像を作成する際の投影球の中心Ｃ０も視点Ｃ１およびＣ２と一致していない。この場合、第１のカメラの撮像画像中の点Ｐの画面位置がｐ１であり、第２のカメラの撮像画像中の点Ｐの画面位置がｐ２となる。
【００１６】
まず、２つのカメラの撮影画像を合成する場合を考える。この場合、投影球の面上にｐ１とｐ２を投影する。具体的には、Ｃ１とｐ１を結ぶ方向線を設定し、この方向線と投影球とが交わる点が投影球へのｐ１の投影位置Ｐ１となる。同様に、Ｃ２とｐ２を結ぶ方向線を設定し、この方向線と投影球とが交わる点が投影球へのｐ２の投影位置Ｐ２となる。
【００１７】
この場合、理想的には、得られるパノラマ画像上において、視点Ｃ０から見た点Ｐの画像が投影球面上の点Ｐ０の位置に見えなくてはならない。しかしながら、第１のカメラが写した画像に基づくパノラマ画像上では、点ＰがＰ１の位置に写り、第２のカメラが写した画像に基づくパノラマ画像上では、点ＰがＰ２の位置に写る。つまり、パノラマ画像上において、点Ｐは、正確な位置ではなく、更に２点にぶれて見える。
【００１８】
上記の現象に起因して、パノラマ画像上での画像のズレが発生する。また、視点の違いに起因する画面全体における歪みが発生する。図６は、この現象が生じたパノラマ画像の一例を示す図面代用写真である。図６の画像では、矢印で示された中央やや左上の蛍光灯の画像部分にズレが生じている。このズレは、図２を用いて説明した本来点Ｐ０の位置に見える像がＰ１とＰ２の位置に見える現象に起因する。この現象は、視点Ｃ１，Ｃ２の位置が投影球中心Ｃ０と一致しないことに原因がある。
【００１９】
図３は、本発明の原理を示す概念図である。図３は、図２に示す状況において、投影球の半径Ｒを可変させた場合が示されている。ここで、Ｄ１,Ｄ２は、第１のカメラから撮影した画像に基づく投影点Ｐ１と第２のカメラから撮影した画像に基づく投影点Ｐ２との投影位置の差である。図３から判るように、投影球の半径Ｒを可変すると、投影位置の差Ｄの値は変化する。
【００２０】
Ｒの変化に起因するＤの違いは、実際の画像上で確認できる。図７と図８には、同じ範囲のパノラマ画像の図面代用写真が示されている。ここで、図７は、Ｒ＝２０ｍの場合であり、図８は、Ｒ＝２ｍの場合である。ここで、２枚の図面代用写真における中央上部の蛍光灯の部分および右奥方向に延在する配管の画像に着目すると、画像のズレがなく鮮明になっている部分と像が二重になっている部分が、図７と図８では異なることが判る。これは、画面上の位置の違いにより、写っている部分（図３の点Ｐに相当）のｒが異なり、Ｒとの関係で決まるＤの値が変化するからである。
【００２１】
ここで、図３から、投影球の半径Ｒを投影球中心Ｃ０とＰとの間の距離ｒに一致させると、すなわちＲ＝ｒとすると、Ｄ＝０となることが判る。この場合、Ｐ１，Ｐ２，Ｐ０の位置が一致し、パノラマ画像における画像のズレは解消される。ここで、Ｒ＝ｒとするには、rを知る必要がある。
【００２２】
本実施形態では、ｒをレーザ測距装置（レーザスキャナ）から得た三次元点群位置データから取得する。手順としては、まず点Ｐの指定が行なわれる。次に、点Ｐに対応する三次元点群データから対応する三次元座標のデータが取得される。そして、投影球中心Ｃ０の位置データと点Ｐの三次元位置データとに基づき、ｒの距離が計算される。次いで、Ｒ＝ｒとなるようにＲを設定し、点Ｐに係る複数の画像の投影球面上での画像の合成を行う。以上の処理により、点Ｐの位置に限定されるが画像のズレが解消される。
【００２３】
（ハードウェアの構成）
図４には、実施形態のブロック図が示されている。図４には、画像処理装置１００、全周カメラ２００、レーザスキャナ３００および表示装置４００が示されている。画像処理装置１００は、コンピュータとして機能し、後述する機能部を有する。全周カメラ２００は、全方位撮影用多眼カメラであり、上方と周囲３６０°の撮影を行う。この例において、全周カメラ２００は、６台のカメラを備えている。６台のカメラの内、５台のカメラは、水平方向に向けられ鉛直上方から見て等角な角度位置（７２°毎）に配置されている。また、残りの１台のカメラは、鉛直上方（仰角９０°）に向けられている。これら６台のカメラは、画角（撮影範囲）が一部重複するように設定されている。この６台のカメラから得られる静止画像を合成することでパノラマ画像が得られる。
【００２４】
全周カメラ２００において、各カメラの向きと位置の相対位置関係は予め調べられ、既知となっている。また、物理的な問題から、各カメラの視点（投影中心）の位置は一致していない。全周カメラについては、例えば、特開２０１２−２０４９８２号公報や特開２０１４−７１８６０号公報に記載されている。全周カメラ２００として市販品を用いることもできる。市販されている全周カメラとしては、Point Grey社製の商品名Ladybug3等がある。なお、全周カメラの代わりに回転機構を有するカメラを用いて撮影方向の違う複数の静止画像を得、この複数の静止画像を合成してパノラマ画像を得る形態も利用可能である。勿論、パノラマ画像は、全周画像に限定されず、特定の角度範囲におけるものであってもよい。全周カメラ２００から異なる方向を撮影した複数の静止画像の画像データは、画像処理装置１００に送られる。
【００２５】
６台のカメラは、特定のタイミングで同時に静止画像を撮影する。撮影は、特定の時間間隔でもって行なうことも可能である。例えば、時差をもって６台のカメラを順次動作させ、得られた画像を合成することで全周画像を得ることも可能である。また、動画を撮影する形態も可能である。動画を撮影する場合、動画を構成するフレーム画像（例えば、１秒間に３０枚撮影されるフレーム画像）が静止画像として取り扱われる。
【００２６】
レーザスキャナ３００は、対象物にレーザ光を照射し、その反射光を検出することで、対象物までの方向と距離を検出する。ここで、レーザスキャナ３００の外部標定要素（位置と向き）が既知であれば、レーザ光の反射点の三次元座標が判る。また、レーザスキャナ３００の絶対位置が不明であっても、相対座標系における三次元点群位置データを得ることができる。レーザスキャナ３００は、レーザ照射部と反射光受光部を上下左右に首を振るように動かしながら、全周カメラ２００の撮影範囲と同じ範囲のレーザスキャンを行う。レーザスキャナについては、特開２００８―２６８００４号公報や２０１０−１５１６８２号公報に記載されている。
【００２７】
レーザスキャナ３００と全周カメラ２００の位置関係と向きの関係は予め取得されており、既知である。レーザスキャナ３００が取得する点群位置データの座標系は、絶対座標系であってもよし、相対座標系におけるものであってもよい。絶対座標系というのは、ＧＮＳＳ等を用いて測定した位置を記述する座標系である。相対座標系というのは、全周カメラ２００の機械中心やその他適当な位置を原点として記述される座標系である。
【００２８】
絶対座標系を用いるのであれば、ＧＮＳＳ等の手段により、全周カメラ２００とレーザスキャナ３００の位置情報を取得する。全周カメラ２００とレーザスキャナ３００の位置情報が取得できない環境では、全周カメラ２００の構造的な重心の位置等を原点とする相対座標を設定し、この相対座標を用いてレーザスキャナ３００と全周カメラ２００における位置と向きの関係、およびレーザスキャナ３００が取得する三次元点群位置データの記述を行なう。
【００２９】
表示装置４００は、液晶ディスプレイ等の画像表示装置である。表示装置４００として、タブレットやパーソナルコンピュータのディスプレイを利用することができる。表示装置４００には、画像処理装置１００で処理された画像のデータが送られ、その画像が表示される。
【００３０】
図４には、画像処理装置１００が備える各機能部が示されている。画像処理装置１００は、ＣＰＵ、電子メモリやハードディスク装置等の各種の記憶装置、各種の演算回路、インターフェース回路を備え、後述する機能を実行するコンピュータとしての機能を有している。
【００３１】
画像処理装置１００は、画像データ受付部１０１、指定受付部１０２、点群位置データ取得部１０３、三次元位置取得部１０４、距離算出部１０５、投影球設定部１０６、合成画像形成部１０７、画像と点群画像の合成部１０８を備えている。これらの機能部は、ソフトウェア的な構成（プログラムがＣＰＵによって実行されることで実現される構成）であってもよいし、専用の回路によって構成されていてもよい。また、ソフトウェア的に構成された機能部と、専用の回路によって構成された機能部が混在していてもよい。例えば、図示する各機能部は、ＣＰＵ（Central Processing Unit）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）などのＰＬＤ（Programmable Logic Device）などの電子回路の１または複数の組み合わせにより構成されている。
【００３２】
画像処理装置１００を構成する各機能部を専用のハードウェアで構成するのか、ＣＰＵにおけるプログラムの実行によりソフトウェア的に構成するのかは、要求される演算速度、コスト、消費電力等を勘案して決定される。例えば、特定の機能部をＦＰＧＡで構成すれば、処理速度の上では優位であるが高コストとなる。他方で、ＣＰＵでプログラムを実行することで特定の機能部を実現する構成は、ハードウェア資源を節約できるので、コスト的に優位となる。しかしながら、ＣＰＵで機能部を実現する場合、処理速度は、専用のハードウェアに比較して見劣りする。また、ＣＰＵで機能部を実現する場合、複雑な演算に対応できない場合もあり得る。なお、機能部を専用のハードウェアで構成することとソフトウェア的に構成することとは、上述した違いはあるが、特定の機能を実現するという観点からは、等価である。
【００３３】
以下、画像処理装置１００が備える各機能部について説明する。画像データ受付部１０１は、全周カメラ２００が撮影した静止画像の画像データを受け付ける。具体的には、全周カメラ２００が備える６台のカメラが撮影した静止画像の画像データが画像データ受付部１０１で受け付けられる。
【００３４】
指定受付部１０２は、合成画像形成部１０７で形成した合成画像（パノラマ画像）における着目点の指定を受け付ける。例えば、重複する対象を撮影した２枚の静止画像を合成したパノラマ画像があり、そのパノラマ画像がＰＣ（パーソナルコンピュータ）の画面上に表示されている場合を考える。この場合、ユーザは、当該ＰＣのＧＵＩ（グラフィカル・ユーザ・インターフェース）を操作して、本発明を利用した処理（画像のズレを低減する処理）を行う点を着目点として指定する。例えば、カーソルを着目点に移動させ、そこで左クリックを行うことで、着目点を指定する。カーソルで指定された着目点の画面上における位置は、ＧＵＩの機能から取得できる。
【００３５】
点群位置データ取得部１０３は、レーザスキャナ３００が取得した点群位置データを取得し、画像処理装置１００内に取り込む。この例では、レーザスキャナ３００を用いて点群位置データを計測するが、ステレオ画像から点群位置データを得ることもできる。ステレオ画像を用いて点群位置データを得る技術に関しては、例えば特開２０１３−１８６８１６号公報に記載されている。
【００３６】
三次元位置取得部１０４は、指定受付部１０２で指定された点（着目点）の三次元位置を点群位置データに基づいて取得する。以下、この処理について説明する。着目点の三次元点群位置を取得するには、後述する画像と点群の合成部１０８で得られたパノラマ画像と三次元点群位置データとを合成した画像（画像と点群の合成画像）を利用する。まず、パノラマ画像と三次元点群位置データとを合成した画像（画像と点群の合成画像）について説明する。
【００３７】
点群位置データでは、レーザスキャナ３００から見た点群を構成する各点の方向が判るので、レーザスキャナ３００から見た各点を後述する投影球設定部１０６が設定する投影球の内周面に投影し、その投影点を画素とした点群画像（点群により構成された２次元画像）が作成できる。この点群画像は、点で構成された画像であり、通常の静止画像と同様に扱うことができる。
【００３８】
ここで、全周カメラ２００とレーザスキャナ３００における相対位置関係と相対的な向きの関係は予め取得され既知である。よって、全周カメラを構成する６台のカメラの画像を合成する方法と同じ方法で、全周カメラ２００のカメラが撮影した静止画像と上記の点群画像とは重ね合わせることができる。この原理により、全周カメラ２００が撮影した複数の静止画像を組み合わせることで得られるパノラマ画像と上記の点群画像とを重ね合わせることができる。この画像が点群と画像の合成画像となる。図９にパノラマ画像と上記の点群画像とを重ね合わせた画像（画像と点群の合成画像）の一例を示す。図９に例示される画像を作成する処理が、画像と点群の合成部１０８において行われる。
【００３９】
図９に例示される重ね合わせ画像を利用することで、指定受付部１０２で指定された点（着目点）の三次元位置を点群位置データに基づいて取得できる。具体的には、指定受付部１０２で指定された点（着目点）の画面上の位置に対応する点群位置データの点が図９に例示される画像と点群の合成画像から取得される。そしてこの取得した点の三次元座標位置を点群位置データ取得部１０３が取得した点群位置データから取得する。なお、着目点に対応する点がない場合は、（１）近傍の点を選択し、その点の三次元位置を取得、（２）近傍の点の複数を選択し、その三次元位置の平均値を取得、（３）近傍の点の複数を選択し、更にそこから三次元位置が近い複数の点を選択し、その平均値を取得、といった方法で着目点の三次元座標の値を取得する。以上の画像と点群の合成画像を用いて着目点の三次元位置を取得する処理が三次元位置取得部１０４において行われる。
【００４０】
距離算出部１０５は、三次元位置取得部１０４が取得した着目点と合成画像形成部１０７が合成画像（パノラマ画像）を形成する際に利用する投影球（投影球設定部１０６が設定する投影球）の中心との間の距離を計算する。例えば、図３のｒの値の算出が距離算出部１０５において行われる。
【００４１】
投影球の中心は、例えば全周カメラ２００の構造的な重心の位置に設定される（勿論、他の位置でもよい）。レーザスキャナ３００および全周カメラ２００における各カメラの相対的な外部標定要素（位置と向き）が予め取得され、既知であるので、上記の投影球の中心の位置と三次元位置取得部１０４が取得した着目点の三次元位置とは、同じ座標系を用いて記述される。したがって、三次元位置取得部１０４が取得した着目点と投影球設定部１０６が設定する投影球の中心との間の距離（図３のｒ）を計算することができる。
【００４２】
投影球設定部１０６は、パノラマ画像の作成に必要な投影球の設定を行う。以下、図３を参照して、投影球設定部１０６の機能について説明する。図３に例示するように、投影球は、全周カメラ２００の構造重心の位置を中心とした半径Ｒの球面状の仮想的な投影面である。この投影面に全周カメラ２００の６台のカメラが写した静止画像を投影することで６枚の画像が合成され、投影球の内側に映し出されたパノラマ画像が得られる。なお、投影球の中心は、全周カメラ２００の構造重心の位置に限定されず、他の位置であってもよい。
【００４３】
投影球設定部１０６の重要な機能は、上述した投影球の半径Ｒの値を可変設定できる点にある。以下、この機能について説明する。まず、指定受付部１０２が画面上の特定の位置を指定する指示を受け付けていない場合、投影球設定部１０６は、予め決められている初期設定値のＲの値を選択し、投影球の設定を行う。Ｒの初期設定値としては、例えば数ｍ〜数十ｍの値、あるいは無限遠の値が選択される。
【００４４】
指定受付部１０２が画面上の特定の位置（着目点）の指定を受け付けている場合、投影球設定部１０６は、当該着目点と投影球中心との間の距離ｒに対応させて投影球の半径Ｒの値を設定する。この例では、Ｒ＝ｒとする処理が行なわれる。Ｒはｒに完全に一致させなくてもよいが、極力一致させることが望ましい。例えば、Ｒはｒに±５％以下の精度で一致させる。
【００４５】
距離算出部１０５は、ｒの値をリアルタイムに計算する。投影球設定部１０６は、リアルタイムに計算されるｒの値に応じて、Ｒの値をリアルタイムに計算する。例えば、指定受付部１０２が受け付けるユーザが選択した着目点の位置が変わり、距離算出部１０５が計算するｒの値が変化すると、Ｒ＝ｒとなるように、投影球設定部１０６がＲの値を計算し直す。
【００４６】
合成画像形成部１０７は、投影球設定部１０６が設定した半径Ｒの投影球の内周面に全周カメラ２００の各カメラ（この場合は、６台のカメラ）が撮影した静止画像を投影し、一部が重複した状態で合成された６枚の静止画像により構成されるパノラマ画像を形成する。
【００４７】
上記の構成では、図３に示すように、パノラマ画像における特定の位置が着目点Ｐとして指定されると、ｒの値が計算され、更にＲ＝ｒとなるように処理が行なわれる。この結果、着目点Ｐの位置の変更に伴うｒの変化に対応して、投影球の半径Ｒが動的に変動する。
【００４８】
（処理の一例）
以下、図４の画像処理装置１００で実行される処理の手順の一例を説明する。以下において説明する処理を実行するプログラムは、画像処理装置１００内の記憶領域や適当な外部記憶媒体に記憶され、画像処理装置１００によって実行される。
【００４９】
処理が開始されると、全周カメラ２００が撮影した静止画像の画像データが受け付けられる（ステップＳ１０１）。ここでは、全周カメラ２００が備える６台のカメラが撮影した静止画像のデータが取得される。なお、画像データは、リアルタイムに全周カメラ２００から得る場合に限定されず、予め撮影しておき、適当な記憶領域に記憶させておいたものを改めて受け付ける形態であってもよい。この処理は、図４の画像データ受付部１０１において行われる。また、レーザスキャナ３００が計測した点群位置データを取得する（ステップＳ１０２）。この処理は、点群位置データ取得部１０３において行われる。
【００５０】
次に、投影球の半径Ｒの値を初期値に設定する（ステップＳ１０３）。初期値の値は予め定めておいた値を利用する。Ｒの初期値を設定したら、投影球の設定を行う（ステップＳ１０４）。ステップＳ１０４およびＳ１０４の処理は、図４の投影球設定部１０６において行われる。
【００５１】
投影球の設定を行ったら、ステップＳ１０１で受け付けた画像データに基づき、全周カメラ２００が備える６台のカメラが写した静止画像をステップＳ１０４で設定された投影球の内面に投影し、画像の合成を行う（ステップＳ１０５）。この処理は、図４の合成画像形成部１０７において行われる。ステップＳ１０５の処理により、投影球の中心から周囲を見たパノラマ画像が得られる。ステップ１０５の処理によって得られたパノラマ画像の画像データは、図４の画像合成部１０７から表示装置４００に出力され、当該パノラマ画像が表示装置４００に表示される。
【００５２】
パノラマ画像を得たら、パノラマ画像と点群画像とを合成する処理を行う（ステップＳ１０６）。この処理は、画像と点群画像の合成部１０８において行われる。この処理で得られた合成画像を実際に表示した場合の一例が図９に示されている。
【００５３】
パノラマ画像、およびパノラマ画像と点群との合成画像を得たら、指定受付部１０２が新たに着目点（図３の場合の点Ｐ）の指定を受け付けたか否か、を判定し（ステップＳ１０７）、新たな着目点が指定された場合、ステップＳ１０８に進み、新たな着目点が指定されていない場合、ステップＳ１０７の処理を繰り返す。例えば、着目点の指定の変更がない場合、この時点で設定されているＲの値がそのまま維持される。
【００５４】
着目点の変更がある場合、図４の距離算出部１０５において、ｒの値（図３参照）が計算される（ステップＳ１０８）。ｒの計算は、以下のようにして行われる。まず、着目点のパノラマ画像中での位置を特定する。次いで、ステップＳ１０６の処理で得たパノラマ画像と点群画像とを合成した合成画像（例えば、図９の画像）中で、着目点の位置を特定し、着目点に対応する位置（例えば、図３の点Ｐ）の三次元座標を得る。そして、この着目点の三次元位置と投影球の中心の位置との間の距離を計算する。例えば、図３の場合でいうと、点Ｐと点Ｃ０の間の距離ｒが計算される。
【００５５】
ｒを得たら、Ｒ＝ｒとした条件で投影球の再設定が行なわれる（ステップＳ１０９）。Ｒの再設定を行ったら、ステップＳ１０５以下の処理を新たに設定したＲを用いて再度実行する。この場合、表示装置４００に表示されるパノラマ画像におけるＲの値（図３参照）がＲ＝ｒとなるように変更され、この変更を反映したパノラマ画像の表示が行なわれる。
【００５６】
以上のようにして、着目点の変更により、ｒの値が変化すると、それに応じてＲの値は変更される。つまり、着目点が変更され、その三次元位置が変わった場合、パノラマ画像の投影面となる投影球の半径が動的に変更される。そしてこの投影球の変更を反映したパノラマ画像の表示が行なわれる。
【００５７】
（優位性）
図３に原理が示されているように、着目点Ｐが指定された際にｒを計算し、更にＲ＝ｒとすることで、点Ｐの位置における投影像のズレが解消される。着目点Ｐの位置が変更され、ｒの値が変わると、それに応じてＲの値も変わり、Ｒ＝ｒの関係が維持される。このため、着目点Ｐにおける像の精度は維持される。
【００５８】
図１０と図１１には、画面上においてカーソルを用いて着目点を指定した場合の例が示されている。この場合、カーソルで指示した部分が着目点であり、その点においてＲ＝ｒとなるように処理が行なわれる。その結果、カーソルで指定した着目点の画像が鮮明となる。他方で、Ｒ＝ｒの条件からはずれ、更にその程度が大きくなる程、像のぶれが大きくなる。例えば、カーソルを移動させると、その動きに従って画像中の鮮明となる位置が移動する。
【００５９】
（その他）
着目点の指定を受け付ける別の方法として、合成画像形成部１０７が形成したパノラマ画像をタッチパネルディスプレイに表示し、タッチペン等の当該ディスプレイへの接触により、着目点の指定を受け付ける方法が挙げられる。
【００６０】
また、着目点の指定を受け付ける別の方法として、合成画像形成部１０７が形成したパノラマ画像を見ているユーザの視線を検出し、更にその視線と当該パノラマ画像の画像面との交点を検出し、その位置を指定位置として受け付ける方法が挙げられる。この方法によれば、ユーザが着目した位置の画像が鮮明になるように動的に投影球の半径の調整が行なわれる。視線を検出する技術については、例えば、特開２０１５−１１８５７９号公報に記載されている。
【図１】
0006615545.tif 000002
【図２】
0006615545.tif 000003
【図３】
0006615545.tif 000004
【図４】
0006615545.tif 000005
【図５】
0006615545.tif 000006
【図６】
0006615545.tif 000007
【図７】
0006615545.tif 000008
【図８】
0006615545.tif 000009
【図９】
0006615545.tif 000010
【図１０】
0006615545.tif 000011
【図１１】
0006615545.tif 000012