(57)【要約】【課題】単眼カメラを用いて撮影位置を変えながら対象エリアを複数回撮影する撮影方法でも、適切な３次元計測を行うことができるようにする。【解決手段】対象エリアをカメラにより撮影した右画像および左画像と、この右画像および左画像から離間した位置でカメラにより撮影した補助画像との少なくとも３つの撮影画像を取得し、右画像および左画像と補助画像とに基づいて、右画像および左画像との間の相対的な撮影位置および撮影姿勢に関するキャリブレーション処理を実行し、このキャリブレーション処理の結果に基づいて、右画像と左画像との間の視差を取得して、その視差に基づいて、対象エリアの３次元位置情報を取得する。【選択図】図５
2020159965.tif 000002
【特許請求の範囲】
【請求項１】
対象エリアを撮影した撮影画像に基づいて、前記対象エリアの３次元位置情報を取得する３次元計測装置であって、
前記対象エリアを撮影するカメラと、
前記カメラによる前記撮影画像に基づいて前記対象エリアの３次元位置情報を取得するプロセッサと、
を備え、
前記プロセッサは、
前記対象エリアを撮影した右画像および左画像と、この右画像および左画像から離間した位置で撮影した補助画像との少なくとも３つの前記撮影画像を取得し、
前記右画像および前記左画像と前記補助画像とに基づいて、前記右画像および前記左画像との間の相対的な撮影位置および撮影姿勢に関するキャリブレーション処理を実行し、
このキャリブレーション処理の結果に基づいて、前記右画像と前記左画像との間の視差を取得して、その視差に基づいて前記対象エリアの３次元位置情報を取得することを特徴とする３次元計測装置。
【請求項２】
前記プロセッサは、
前記キャリブレーション処理の前または後に、
複数の前記撮影画像の各撮影場所を識別する処理を行うことを特徴とする請求項１に記載の３次元計測装置。
【請求項３】
前記プロセッサは、
操作画面をディスプレイに表示し、
前記操作画面上で撮影を指示するユーザの操作に応じて、前記カメラに前記対象エリアを撮影させ、
前記操作画面上で前記キャリブレーション処理を指示するユーザの操作に応じて、前記キャリブレーション処理を実行し、
前記操作画面上で計測結果の出力を指示するユーザの操作に応じて、前記３次元位置情報に基づく計測結果を画面表示することを特徴とする請求項１に記載の３次元計測装置。
【請求項４】
前記プロセッサは、
前記キャリブレーション処理において、
前記右画像および前記左画像の一方を基準画像とし、前記右画像および前記左画像の他方を参照画像として、
前記基準画像と前記補助画像との間の対応点の探索結果に基づいて、前記基準画像を基準にした前記補助画像の撮影位置および撮影姿勢を推定し、
前記補助画像と前記参照画像との間の対応点の探索結果に基づいて、前記補助画像を基準にした前記参照画像の撮影位置および撮影姿勢を推定し、
前記基準画像を基準にした前記補助画像に関する推定結果と、前記補助画像を基準にした前記参照画像に関する推定結果とに基づいて、前記基準画像を基準にした前記参照画像の撮影位置および撮影姿勢を間接的に推定することを特徴とする請求項１に記載の３次元計測装置。
【請求項５】
前記プロセッサは、
暫定的な基線長に基づいて、暫定的な３次元位置情報を取得し、
ユーザの入力操作に応じて、前記対象エリアに関する２点間の距離の実測値を取得し、
前記２点間の距離の実測値に対応する２点間の距離の計測値を、前記暫定的な３次元位置情報から取得し、
前記２点間の距離の実測値と前記２点間の距離の計測値との比率に基づいて、前記暫定的な基線長を補正して、補正された基線長を取得し、
前記補正された基線長に基づいて、スケール変換された３次元位置情報を取得することを特徴とする請求項１に記載の３次元計測装置。
【請求項６】
対象エリアを撮影した撮影画像に基づいて、前記対象エリアの３次元位置情報を取得する３次元計測システムであって、
前記対象エリアを撮影するカメラと、
前記カメラによる前記撮影画像に基づいて前記対象エリアの３次元位置情報を取得する情報処理装置と、を備え、
前記情報処理装置は、
前記対象エリアを撮影した右画像および左画像と、この右画像および左画像から離間した位置で撮影した補助画像との少なくとも３つの前記撮影画像を取得し、
前記右画像および前記左画像と前記補助画像とに基づいて、前記右画像および前記左画像との間の相対的な撮影位置および撮影姿勢に関するキャリブレーション処理を実行し、
このキャリブレーション処理の結果に基づいて、前記右画像と前記左画像との間の視差を取得して、その視差に基づいて前記対象エリアの３次元位置情報を取得することを特徴とする３次元計測システム。
【請求項７】
前記撮影画像は、単眼カメラにより、ユーザの少なくとも２回の移動を伴って撮影されたものであることを特徴とする請求項６に記載の３次元計測システム。
【請求項８】
前記撮影画像は、単眼カメラとステレオカメラとを用いて、ユーザの少なくとも１回の移動を伴って撮影されたものであることを特徴とする請求項６に記載の３次元計測システム。
【請求項９】
対象エリアを撮影した撮影画像に基づいて、前記対象エリアの３次元位置情報を取得する処理をプロセッサに行わせる３次元計測方法であって、
前記対象エリアを撮影した右画像および左画像と、この右画像および左画像から離間した位置で撮影した補助画像との少なくとも３つの前記撮影画像を取得し、
前記右画像および前記左画像と前記補助画像とに基づいて、前記右画像および前記左画像との間の相対的な撮影位置および撮影姿勢に関するキャリブレーション処理を実行し、
このキャリブレーション処理の結果に基づいて、前記右画像と前記左画像との間の視差を取得して、その視差に基づいて前記対象エリアの３次元位置情報を取得することを特徴とする３次元計測方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象エリアを撮影した撮影画像に基づいて、対象エリアの３次元位置情報を取得する３次元計測装置、３次元計測システムおよび３次元計測方法に関するものである。
【背景技術】
【０００２】
対象エリアをステレオカメラで撮影して、その撮影画像に基づいて、その対象エリアの３次元位置情報を取得する３次元計測の技術が普及している。この３次元計測の技術によると、対象エリアの３次元位置情報から３次元空間上での長さを取得することができ、実測が面倒な対象エリア上の長さを簡単に計測することができる。
【０００３】
このような３次元計測に関する技術として、従来、ステレオカメラで撮影した画像において、測定開始位置と測定終了位置との２点を指定することで、その２点の３次元位置情報から２点間の長さを算出するようにした技術が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−２３２３３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
さて、従来の技術によれば、撮影位置を変えてステレオカメラで２回撮影することにより、対象エリアから離れた位置で撮影した場合でも、測定モードを選択することで、ユーザが指定した２点間の距離を所定の精度で算出することができる。
【０００６】
しかしながら、従来の技術で用いられているステレオカメラは、高価で嵩張るため、使い勝手が悪いという問題があった。また、遠方にある大きな建築物などを対象エリアとした場合、その対象エリアまでの距離に対して、基線長、すなわち、左右のカメラ間の距離が極端に短くなると、安定したキャリブレーションを行うことができないが、ステレオカメラでは基線長を自由に変更できないため、キャリブレーションの安定性の面で問題を抱えている。
【０００７】
そこで、単眼カメラを用いて撮影位置を変えながら対象エリアを複数回撮影することが考えられる。このような撮影方法でもステレオカメラと同様に左右の撮影画像を取得できるため、対象エリアの３次元位置情報を取得することができる。しかしながら、このような撮影方法には種々の問題があり、従来の技術では解決できない。
【０００８】
そこで、本発明は、単眼カメラを用いて撮影位置を変えながら対象エリアを複数回撮影する撮影方法でも、適切な３次元計測を行うことができる３次元計測装置、３次元計測システムおよび３次元計測方法を提供することを主な目的とする。
【課題を解決するための手段】
【０００９】
本発明の３次元計測装置は、対象エリアを撮影した撮影画像に基づいて、前記対象エリアの３次元位置情報を取得する３次元計測装置であって、前記対象エリアを撮影するカメラと、前記カメラによる前記撮影画像に基づいて前記対象エリアの３次元位置情報を取得するプロセッサと、を備え、前記プロセッサは、前記対象エリアを撮影した右画像および左画像と、この右画像および左画像から離間した位置で撮影した補助画像との少なくとも３つの前記撮影画像を取得し、前記右画像および前記左画像と前記補助画像とに基づいて、前記右画像および前記左画像との間の相対的な撮影位置および撮影姿勢に関するキャリブレーション処理を実行し、このキャリブレーション処理の結果に基づいて、前記右画像と前記左画像との間の視差を取得して、その視差に基づいて前記対象エリアの３次元位置情報を取得する構成とする。
【００１０】
また、本発明の３次元計測システムは、対象エリアを撮影した撮影画像に基づいて、前記対象エリアの３次元位置情報を取得する３次元計測システムであって、前記対象エリアを撮影するカメラと、前記カメラによる前記撮影画像に基づいて前記対象エリアの３次元位置情報を取得する情報処理装置と、を備え、前記情報処理装置は、前記対象エリアを撮影した右画像および左画像と、この右画像および左画像から離間した位置で撮影した補助画像との少なくとも３つの前記撮影画像を取得し、前記右画像および前記左画像と前記補助画像とに基づいて、前記右画像および前記左画像との間の相対的な撮影位置および撮影姿勢に関するキャリブレーション処理を実行し、このキャリブレーション処理の結果に基づいて、前記右画像と前記左画像との間の視差を取得して、その視差に基づいて前記対象エリアの３次元位置情報を取得する構成とする。
【００１１】
また、本発明の３次元計測方法は、対象エリアを撮影した撮影画像に基づいて、前記対象エリアの３次元位置情報を取得する処理をプロセッサに行わせる３次元計測方法であって、前記対象エリアを撮影した右画像および左画像と、この右画像および左画像から離間した位置で撮影した補助画像との少なくとも３つの前記撮影画像を取得し、前記右画像および前記左画像と前記補助画像とに基づいて、前記右画像および前記左画像との間の相対的な撮影位置および撮影姿勢に関するキャリブレーション処理を実行し、このキャリブレーション処理の結果に基づいて、前記右画像と前記左画像との間の視差を取得して、その視差に基づいて前記対象エリアの３次元位置情報を取得する構成とする。
【発明の効果】
【００１２】
本発明によれば、右画像および左画像から離間した位置で撮影した補助画像を用いてキャリブレーション処理を行うため、右画像および左画像を撮影した位置が近接していても、安定したキャリブレーションを行うことができる。また、撮影位置が離れた撮影画像同士では、ステレオマッチングを適切に行うことができないが、適切な間隔で撮影された左画像と右画像とを用いることで、ステレオマッチングを適切に行うことができる。これにより、単眼カメラを用いて撮影位置を変えながら対象エリアを複数回撮影する撮影方法でも、適切な３次元計測を行うことができる。
【図面の簡単な説明】
【００１３】
【図１】第１実施形態に係るタブレット端末１の概略構成を示すブロック図
【図２】第１実施形態に係るタブレット端末１のプロセッサ１４で行われるキャリブレーション、画像平行化、およびステレオマッチング視差探索の処理の概要を示す説明図
【図３】第１実施形態に係るタブレット端末１のプロセッサ１４で行われる３次元情報取得の処理の概要を示す説明図
【図４】第１実施形態に係るタブレット端末１で対象エリアを撮影する要領を示す説明図
【図５】第１実施形態に係るタブレット端末１のプロセッサ１４で行われるキャリブレーションの処理の手順を示す説明図
【図６】第１実施形態に係るタブレット端末１の動作手順を示すフロー図
【図７】第１実施形態に係るタブレット端末１のタッチパネルディスプレイ１３に表示される操作画面を示す説明図
【図８】第１実施形態に係るタブレット端末１のタッチパネルディスプレイ１３に表示される操作画面を示す説明図
【図９】第１実施形態に係るタブレット端末１のタッチパネルディスプレイ１３に表示される操作画面を示す説明図
【図１０】第１実施形態に係るタブレット端末１のタッチパネルディスプレイ１３に表示される操作画面を示す説明図
【図１１】第１実施形態の変形例に係るタブレット端末１の動作手順を示すフロー図
【図１２】第２実施形態に係る３次元計測システムの概略構成を示すブロック図
【図１３】第３実施形態に係る３次元計測システムの概略構成を示すブロック図
【発明を実施するための形態】
【００１４】
前記課題を解決するためになされた第１の発明は、対象エリアを撮影した撮影画像に基づいて、前記対象エリアの３次元位置情報を取得する３次元計測装置であって、前記対象エリアを撮影するカメラと、前記カメラによる前記撮影画像に基づいて前記対象エリアの３次元位置情報を取得するプロセッサと、を備え、前記プロセッサは、前記対象エリアを撮影した右画像および左画像と、この右画像および左画像から離間した位置で撮影した補助画像との少なくとも３つの前記撮影画像を取得し、前記右画像および前記左画像と前記補助画像とに基づいて、前記右画像および前記左画像との間の相対的な撮影位置および撮影姿勢に関するキャリブレーション処理を実行し、このキャリブレーション処理の結果に基づいて、前記右画像と前記左画像との間の視差を取得して、その視差に基づいて前記対象エリアの３次元位置情報を取得する構成とする。
【００１５】
これによると、右画像および左画像から離間した位置で撮影した補助画像を用いてキャリブレーション処理を行うため、右画像および左画像を撮影した位置が近接していても、安定したキャリブレーションを行うことができる。また、撮影位置が離れた撮影画像同士では、ステレオマッチングを適切に行うことができないが、適切な間隔で撮影された左画像と右画像とを用いることで、ステレオマッチングを適切に行うことができる。これにより、単眼カメラを用いて撮影位置を変えながら対象エリアを複数回撮影する撮影方法でも、適切な３次元計測を行うことができる。
【００１６】
また、第２の発明は、前記プロセッサは、前記キャリブレーション処理の前または後に、複数の前記撮影画像の各撮影場所を識別する処理を行う構成とする。
【００１７】
これによると、複数の撮影画像の各撮影場所を識別することで、右画像および左画像と補助画像とを特定することができる。
【００１８】
また、第３の発明は、前記プロセッサは、操作画面をディスプレイに表示し、前記操作画面上で撮影を指示するユーザの操作に応じて、前記カメラに前記対象エリアを撮影させ、前記操作画面上で前記キャリブレーション処理を指示するユーザの操作に応じて、前記キャリブレーション処理を実行し、前記操作画面上で計測結果の出力を指示するユーザの操作に応じて、前記３次元位置情報に基づく計測結果を画面表示する構成とする。
【００１９】
これによると、対象エリアの撮影から計測結果の出力までの一連の操作手順にしたがった操作画面でユーザが必要な操作を行えばよいため、ユーザの操作性が向上し、使い勝手がよくなる。
【００２０】
また、第４の発明は、前記プロセッサは、前記キャリブレーション処理において、前記右画像および前記左画像の一方を基準画像とし、前記右画像および前記左画像の他方を参照画像として、前記基準画像と前記補助画像との間の対応点の探索結果に基づいて、前記基準画像を基準にした前記補助画像の撮影位置および撮影姿勢を推定し、前記補助画像と前記参照画像との間の対応点の探索結果に基づいて、前記補助画像を基準にした前記参照画像の撮影位置および撮影姿勢を推定し、前記基準画像を基準にした前記補助画像に関する推定結果と、前記補助画像を基準にした前記参照画像に関する推定結果とに基づいて、前記基準画像を基準にした前記参照画像の撮影位置および撮影姿勢を間接的に推定する構成とする。
【００２１】
これによると、安定したキャリブレーションを行うことができる。
【００２２】
また、第５の発明は、前記プロセッサは、暫定的な基線長に基づいて、暫定的な３次元位置情報を取得し、ユーザの入力操作に応じて、前記対象エリアに関する２点間の距離の実測値を取得し、前記２点間の距離の実測値に対応する２点間の距離の計測値を、前記暫定的な３次元位置情報から取得し、前記２点間の距離の実測値と前記２点間の距離の計測値との比率に基づいて、前記暫定的な基線長を補正して、補正された基線長を取得し、前記補正された基線長に基づいて、スケール変換された３次元位置情報を取得する構成とする。
【００２３】
これによると、基線長（左画像および右画像の各撮影位置の間の距離）が不明でも、正確な３次元位置情報を取得することができる。
【００２４】
また、第６の発明は、対象エリアを撮影した撮影画像に基づいて、前記対象エリアの３次元位置情報を取得する３次元計測システムであって、前記対象エリアを撮影するカメラと、前記カメラによる前記撮影画像に基づいて前記対象エリアの３次元位置情報を取得する情報処理装置と、を備え、前記情報処理装置は、前記対象エリアを撮影した右画像および左画像と、この右画像および左画像から離間した位置で撮影した補助画像との少なくとも３つの前記撮影画像を取得し、前記右画像および前記左画像と前記補助画像とに基づいて、前記右画像および前記左画像との間の相対的な撮影位置および撮影姿勢に関するキャリブレーション処理を実行し、このキャリブレーション処理の結果に基づいて、前記右画像と前記左画像との間の視差を取得して、その視差に基づいて前記対象エリアの３次元位置情報を取得する構成とする。
【００２５】
これによると、第１の発明と同様に、単眼カメラを用いて撮影位置を変えながら対象エリアを複数回撮影する撮影方法でも、適切な３次元計測を行うことができる。
【００２６】
また、第７の発明は、前記撮影画像は、単眼カメラにより、ユーザの少なくとも２回の移動を伴って撮影されたものである構成とする。
【００２７】
これによると、基線長（左画像および右画像の各撮影位置の間の距離）を、対象エリアまでの距離に応じて適切に設定することができる。例えば、対象エリアが遠い場合には、基線長を大きく設定することで、３次元計測の精度を向上させることができる。
【００２８】
また、第８の発明は、前記撮影画像は、単眼カメラとステレオカメラとを用いて、ユーザの少なくとも１回の移動を伴って撮影されたものである構成とする。
【００２９】
これによると、撮影回数を減らすことができる。また、基線長（左画像および右画像の各撮影位置の間の距離）が既知であるため、３次元計測の処理を簡素化することができる。
【００３０】
また、第９の発明は、対象エリアを撮影した撮影画像に基づいて、前記対象エリアの３次元位置情報を取得する処理をプロセッサに行わせる３次元計測方法であって、前記対象エリアを撮影した右画像および左画像と、この右画像および左画像から離間した位置で撮影した補助画像との少なくとも３つの前記撮影画像を取得し、前記右画像および前記左画像と前記補助画像とに基づいて、前記右画像および前記左画像との間の相対的な撮影位置および撮影姿勢に関するキャリブレーション処理を実行し、このキャリブレーション処理の結果に基づいて、前記右画像と前記左画像との間の視差を取得して、その視差に基づいて前記対象エリアの３次元位置情報を取得する構成とする。
【００３１】
これによると、第１の発明と同様に、単眼カメラを用いて撮影位置を変えながら対象エリアを複数回撮影する撮影方法でも、適切な３次元計測を行うことができる。
【００３２】
以下、本発明の実施の形態を、図面を参照しながら説明する。
【００３３】
（第１実施形態）
図１は、第１実施形態に係るタブレット端末１の概略構成を示すブロック図である。
【００３４】
タブレット端末１（３次元計測装置）は、単眼カメラ１１と、メモリ１２と、タッチパネルディスプレイ１３と、プロセッサ１４と、を備えている。
【００３５】
単眼カメラ１１は、撮影場所を変えながら３次元計測の対象エリアを複数回撮影し、左画像、右画像、補助画像を取得する。
【００３６】
メモリ１２は、単眼カメラ１１から入力される撮影画像や、プロセッサ１４で実行される３次元計測アプリケーションのプログラムなどを記憶する。
【００３７】
タッチパネルディスプレイ１３は、表示パネルとタッチパネルとを一体化したものであり、３次元計測アプリケーションの画面を表示するとともに、ユーザによる画面操作を検知する。
【００３８】
プロセッサ１４は、メモリ１２に記憶された３次元計測アプリケーションのプログラムを実行することで３次元計測に係る各種の処理を行う。本実施形態では、プロセッサ１４が、撮影場所識別、キャリブレーション（対応点探索、撮影位置姿勢推定）、画像平行化、ステレオマッチング視差探索、３次元情報取得、スケール変換、および計測結果出力の各処理を行う。
【００３９】
ここで、タブレット端末１で取得した左画像と右画像の２枚を用いて行う場合の処理について説明する。図２は、タブレット端末１のプロセッサ１４で行われるキャリブレーション、画像平行化、およびステレオマッチング視差探索の処理の概要を示す説明図である。図３は、タブレット端末１のプロセッサ１４で行われる３次元情報取得の処理の概要を示す説明図である。
【００４０】
タブレット端末１のプロセッサ１４では、タブレット端末１の単眼カメラ１１で対象エリアを撮影した画像を対象にして、キャリブレーション（対応点探索、撮影位置姿勢推定）、画像平行化、ステレオマッチング視差探索、３次元情報取得の各処理が行われる。
【００４１】
図２（Ａ）に示すように、キャリブレーションの処理では、左画像と右画像との間で対応点を探索して、その対応点の探索結果に基づいて、左画像を基準にした右画像の撮影位置および撮影姿勢を推定する。なお、対応点探索の処理では誤対応点を除去する処理も行う。
【００４２】
図２（Ｂ）に示すように、画像平行化の処理では、キャリブレーションの結果に基づいて、左画像と右画像とでのエピポーラ線が平行になるように左画像および右画像を変形する（幾何変換）。
【００４３】
図２（Ｃ）に示すように、ステレオマッチング視差探索の処理では、左画像と右画像との互いに対応する部分を探索して、左画像と右画像との間の視差、すなわち、撮影画像に写る被写体の像の位置のずれ幅を取得する。
【００４４】
図３に示すように、３次元情報取得の処理では、ステレオマッチング視差探索の処理で取得した視差に基づいて、対象エリアに関する３次元位置情報、具体的には、画像内の各画素単位で対象エリアまでの距離Ｚを取得する。この対象エリアまでの距離Ｚは、次式のように、焦点距離ｆ、基線長Ｂ（左画像の撮影位置と右画像の撮影位置の間隔）、および視差ｄから算出することができる。
Ｚ＝ｆ・Ｂ／ｄ
なお、距離Ｚは、単眼カメラ１１の焦点から対象エリア上の１点までの距離である。
【００４５】
このようにして３次元計測の処理が行われるが、本実施形態では、タブレット端末１を所持したユーザが移動することで、タブレット端末１の単眼カメラ１１で左画像と右画像とを撮影するため、基線長、すなわち、左画像の撮影位置と右画像の撮影位置との間の距離が不明である。また、その都度、ユーザが移動した距離を測定することは煩雑であり、精度の高い測定もできない。
【００４６】
また、基線長が、単眼カメラ１１から対象エリアまでの距離に対して極端に短いと、安定したキャリブレーション（対応点探索、姿勢推定）の処理を行うことができない。一方、基線長を長くする、すなわち、左画像の撮影位置と右画像の撮影位置とを離すと、安定したキャリブレーションを行うことができるが、左画像と右画像とで対象エリアの写り方がかなり異なるため、画像平行化が困難となり、ステレオマッチング視差探索の処理を適切に行うことができなくなる。
【００４７】
そこで、本実施形態では、ユーザが移動しながらタブレット端末１の単眼カメラ１１で対象エリアを複数回撮影して、左画像、右画像、補助画像を取得し、基線長（左画像および右画像の各撮影位置の間の距離）を測定する必要がなく、さらに、安定したキャリブレーションの処理を行うとともに、ステレオマッチング視差探索の処理を適切に行うことができるようにする。
【００４８】
次に、第１実施形態に係るタブレット端末１で対象エリアを撮影する要領について説明する。図４は、タブレット端末１で対象エリアを撮影する要領を示す説明図である。
【００４９】
本実施形態では、撮影場所を変えながらタブレット端末１の単眼カメラ１１で対象エリアを３回撮影する。まず、１回目の撮影では、適当な場所で対象エリアを撮影する。このとき撮影した画像は左画像となる。次に、２回目の撮影では、１回目の撮影場所から少し右側に移動した場所で対象エリアを撮影する。このとき撮影した画像は右画像となる。次に、３回目の撮影では、１回目および２回目の撮影場所から大きく移動した場所で、１回目および２回目の撮影と概ね同じように対象エリアが写るアングルで対象エリアを撮影する。このとき撮影した画像は補助画像となる。この補助画像はキャリブレーションに用いられる。
【００５０】
このとき、左画像の撮影場所と右画像の撮影場所との間隔は、歩幅程度の距離（例えば５０ｃｍ程度）とするとよい。また、右画像の撮影場所と補助画像の撮影場所との間隔は、左画像の撮影場所と右画像の撮影場所との間隔より十分に長い距離（例えば５ｍ程度）とするとよい。なお、撮影場所の間隔は、対象エリアまでの距離や対象エリアの大きさなどに応じて異なるが、例えば、右画像の撮影場所と補助画像の撮影場所との間隔を、左画像の撮影場所と右画像の撮影場所との間隔の５倍から１０倍程度とするとよい。
【００５１】
このようにしてタブレット端末１の単眼カメラ１１で撮影場所が異なる３枚の画像が撮影されると、次に、タブレット端末１のプロセッサ１４は、撮影場所識別の処理を行う。この場所識別の処理では、メモリ１２に記憶された３枚の各撮影画像の撮影場所を識別する。すなわち、３枚の各撮影画像が、左画像、右画像および補助画像のいずれであるかを識別する。
【００５２】
本実施形態では、タブレット端末１のタッチパネルディスプレイ１３に３次元計測アプリケーションの操作画面（図７〜図１０参照）を表示して、ユーザが対象エリアを撮影する際に、操作画面で撮影場所に対応する撮影ボタンを操作するようにしており、ユーザが操作した撮影ボタンに基づいて、撮影場所を識別する。
【００５３】
また、撮影する順番を指定するようにしてもよい。この場合、撮影画像に付与されるタイムスタンプ、ＧＰＳ（Global Positioning System）情報や、撮影順に撮影画像に付与されるインデックス番号に基づいて、撮影場所を識別することができる。例えば、図４に示した順番で撮影するようにユーザに指示した場合には、１番目の画像が左画像となり、２番目の画像が右画像となり、３番目の画像が補助画像となる。
【００５４】
なお、本実施形態では、左画像を基準画像とし、右画像を、左画像を比較される参照画像としているが、これとは逆に、右画像を基準画像とし、左画像を参照画像としてもよい。また、補助画像の撮影場所を右画像（参照画像）の撮影場所より右側としたが、これとは逆に、補助画像の撮影場所を左画像（基準画像）の撮影場所より左側としてもよい。
【００５５】
次に、第１実施形態に係るタブレット端末１のプロセッサ１４で行われるキャリブレーションの処理の手順について説明する。図５は、キャリブレーションの処理の手順を示す説明図である。
【００５６】
キャリブレーションの処理では、２枚の画像を比較して、その２枚の画像間の対応点を探索して、その対応点の探索結果に基づいて、２枚の画像のうちの一方の画像を基準にした他方の画像の撮影位置および撮影姿勢を推定する。
【００５７】
このとき、本実施形態では、まず、左画像と補助画像とを比較して、左画像と補助画像との間の対応点を探索して、その対応点の探索結果に基づいて、左画像を基準にした補助画像の撮影位置および撮影姿勢を推定して、その推定結果である第１の撮影位置姿勢情報（ｔ１，Ｒ１）を取得する。
【００５８】
次に、補助画像と右画像とを比較して、補助画像と右画像との間の対応点を探索して、その対応点の探索結果に基づいて、補助画像を基準にした右画像の撮影位置および撮影姿勢を推定して、その推定結果である第２の撮影位置姿勢情報（ｔ２，Ｒ２）を取得する。
【００５９】
次に、第１の撮影位置姿勢情報（ｔ１，Ｒ１）と第２の撮影位置姿勢情報（ｔ２，Ｒ２）とに基づいて、左画像を基準にした右画像の撮影位置および撮影姿勢を間接的に推定して、その推定結果である第３の撮影位置姿勢情報（ｔ３，Ｒ３）を取得する。具体的には、各画像の撮影位置の相対的な位置関係を表す座標値を加減算し、また、各画像の撮影姿勢の相対角度を加減算すればよい。
【００６０】
ここで、左画像と補助画像とでは撮影場所が離れているものの、撮影位置姿勢推定を安定して行うことができる。また、補助画像と右画像とでは撮影場所が離れているものの、撮影位置姿勢推定は安定して行うことができる。そして、近接した左画像と右画像との間で、左画像に対する右画像の撮影位置および撮影姿勢を間接的に推定する方法を採るため、キャリブレーションが不安定になる不具合を避けることができる。
【００６１】
なお、前記のように左画像に対する右画像の撮影位置および撮影姿勢を間接的に推定する他に、左画像に対する右画像の撮影位置および撮影姿勢を直接的に推定する。すなわち、左画像と右画像との間の対応点の探索結果に基づいて、左画像に対する右画像の撮影位置および撮影姿勢を推定して、この直接的な推定結果と間接的な推定結果との双方に基づいて、左画像に対する右画像の撮影位置および撮影姿勢の推定結果を最適化するようにしてもよい。このとき、間接的な推定結果の信頼度が高いため、間接的な推定結果を優先して、直接的な推定結果を補助的に利用してもよい。
【００６２】
次に、第１実施形態に係るタブレット端末１の動作手順について説明する。図６は、タブレット端末１の動作手順を示すフロー図である。
【００６３】
タブレット端末１では、まず、ユーザが撮影場所を変えながら単眼カメラ１１により対象エリアを３回撮影する（ＳＴ１０１）。
【００６４】
次に、プロセッサ１４において、撮影場所識別の処理を行う（ＳＴ１０２）。このとき、メモリ１２に記憶された３枚の画像の撮影場所を識別して、左画像、右画像および補助画像を特定する。
【００６５】
次に、プロセッサ１４において、キャリブレーションの処理を行う（ＳＴ１０３）。このとき、左画像と補助画像との間の対応点の探索結果に基づいて、左画像を基準にした補助画像の撮影位置および撮影姿勢を推定し、また、補助画像と右画像との間の対応点の探索結果に基づいて、補助画像を基準にした右画像の撮影位置および撮影姿勢を推定して、左画像を基準にした補助画像に関する推定結果と、補助画像を基準にした右画像に関する推定結果とに基づいて、左画像を基準にした右画像の撮影位置および撮影姿勢を間接的に推定する。
【００６６】
次に、プロセッサ１４において、左画像および右画像を対象にして画像平行化の処理を行う（ＳＴ１０４）。この画像平行化の処理では、左画像と右画像とでのエピポーラ線が平行になるように左画像および右画像を変形する（幾何変換）。
【００６７】
次に、プロセッサ１４において、ステレオマッチング視差探索の処理を行う（ＳＴ１０５）。このステレオマッチング視差探索の処理では、左画像と右画像との互いに対応する部分を探索して、左画像と右画像との間の視差、すなわち、各画像に写る被写体の像の位置のずれ幅を取得する。
【００６８】
次に、プロセッサ１４において、３次元情報取得の処理を行う（ＳＴ１０６）。この３次元情報取得の処理では、ステレオマッチング視差探索の処理で取得した視差に基づいて、対象エリアに関する３次元位置情報を取得する。具体的には、対象エリアまでの距離（奥行き）を３次元の座標値として、各画素の視差を、各画素における対象エリアまでの距離に変換する。
【００６９】
このとき、本実施形態では、基線長、すなわち、左画像の撮影位置と右画像の撮影位置との間隔が不明であるため、予め設定した基線長の暫定値（暫定的な基線長）を用いて、対象エリアに関する暫定的な３次元位置情報を取得する。
【００７０】
次に、プロセッサ１４において、スケール変換の処理を行う（ＳＴ１０７）。このスケール変換の処理では、ユーザが入力した２点間の距離の実測値と、基線長の暫定値に基づく暫定的な３次元位置情報から算出した２点間の距離の計測値とに基づいて、対象エリアに関する３次元位置情報をスケール変換して、正確な３次元位置情報を取得する。
【００７１】
このとき、まず、対象エリアにおいてユーザにとって既知である２点間の距離の実測値をユーザに入力させる。具体的には、対象エリア上の２点間の距離の実測値や、単眼カメラ１１から対象エリア上の１点までの距離の実測値をユーザに入力させる。なお、対象エリア上で測定が比較的容易な２点間の距離を実際に測定して、その測定値を入力する他に、対象エリアに含まれる物品の規格や仕様から自明な寸法を、対象エリア上の２点間の距離の実測値として入力するようにしてもよい。また、レーザー測距で測定した距離を、単眼カメラ１１から対象エリア上の１点までの距離の実測値として入力するようにしてもよい。
【００７２】
次に、ユーザが入力した２点間の距離の実測値に対応する計測値を、３次元位置情報を用いて算出する。次に、ユーザが入力した２点間の距離の実測値と計測値との比率（実測値／計測値）を補正率として求めて、その補正率を、次式のように、基線長の暫定値に乗算して、基線長の補正値を算出する。そして、基線長の補正値を用いて、３次元情報取得の処理と同様の要領で、３次元位置情報を取得する。
基線長の補正値＝基線長の暫定値×実測値／計測値
【００７３】
次に、プロセッサ１４において、計測結果出力の処理を行う（ＳＴ１０８）。この計測結果出力の処理では、ユーザが指定した２点間の距離の計測値を、スケール変換の処理で取得した３次元位置情報に基づいて算出して出力する。
【００７４】
次に、第１実施形態に係るタブレット端末１のタッチパネルディスプレイ１３に表示される操作画面について説明する。図７、図８、図９、図１０は、タブレット端末１のタッチパネルディスプレイ１３に表示される操作画面を示す説明図である。
【００７５】
タブレット端末１では、図７（Ａ）に示すように、３次元計測アプリケーションの操作画面がタッチパネルディスプレイ１３に表示される。この操作画面には、撮影画像表示部２１と、第１〜第３の撮影ボタン２２〜２４（撮影操作部）と、校正ボタン２５と、校正結果表示部２６と、実測値ボタン２７と、計測ボタン２８と、が設けられている。
【００７６】
ユーザは、まず、左画像を撮影するために、適宜な場所で第１の撮影ボタン２２を操作する。これにより、単眼カメラ１１が対象エリアを撮影して、図７（Ｂ）に示すように、撮影画像表示部２１に、単眼カメラ１１の撮影画像が表示される。また、第１の撮影ボタン２２に撮影画像のサムネイルが表示される。
【００７７】
次に、ユーザは、右画像を撮影するために、半歩程度右側の２番目の撮影場所に移動して、第２の撮影ボタン２３を操作して、単眼カメラ１１が対象エリアを撮影する。これにより、図７（Ｃ）に示すように、撮影画像表示２１部に、単眼カメラ１１の撮影画像が表示される。また、第２の撮影ボタン２３に撮影画像のサムネイルが表示される。
【００７８】
次に、ユーザは、補助画像を撮影するために、３番目の撮影場所まで大きく移動し、第３の撮影ボタン２４を操作する。これにより、単眼カメラ１１が対象エリアを撮影して、図７（Ｄ）に示すように、撮影画像表示部２１に、単眼カメラ１１の撮影画像が表示される。また、第３の撮影ボタン２４に撮影画像のサムネイルが表示される。
【００７９】
このようにして左画像、右画像および補助画像を順次撮影すると、次に、ユーザは、図８（Ａ）に示すように、校正ボタン２５を操作する。これにより、プロセッサ１４が、キャリブレーションの処理を実行する。
【００８０】
ここで、キャリブレーションが正常に終了すると、図８（Ｂ）に示すように、校正結果表示部２６に「ＯＫ」の文字が表示される。また、基準となる撮影画像、すなわち、第１の撮影ボタン２２で撮影した左画像が撮影画像表示部２１に表示される。また、キャリブレーションが正常に終了すると、プロセッサ１４が、画像平行化、ステレオマッチング視差探索、および３次元情報取得の処理を実行する。
【００８１】
一方、キャリブレーションが失敗すると、図８（Ｃ）に示すように、校正結果表示部２６に「ＮＧ」の文字が表示される。また、キャリブレーションが失敗した原因となる撮影画像に対応する撮影ボタン２２〜２４が強調表示される。具体的には、撮影ボタン２２〜２４に所定色（例えば赤色）の枠画像が表示される。これにより、ユーザは、再度撮影する必要がある撮影場所を把握することができる。また、再度撮影するようにユーザに催促するメッセージを表示するようにしてもよい。
【００８２】
次に、ユーザは、図９（Ａ）に示すように、実測値ボタン２７を操作する。これにより、プロセッサ１４が、スケール変換の処理を実行する。このとき、実測値入力モードとなり、ユーザは、対象エリアの中の既知の長さを実測値として入力する。また、実測値の対象となる対象エリア上の位置を、タッチ操作により、撮影画像表示部２１に表示された画像上で入力する。
【００８３】
このとき、ユーザは、メニューで入力モード（１点入力モード、２点入力モード）を選択することができる。図９（Ｂ）に示すように、２点入力モードでは、ユーザが２点の位置を入力することで、対象エリア上の２点が指定されて、その対象エリア上の２点間の距離を入力することができる。図９（Ｃ）に示すように、１点入力モードでは、ユーザが１点の位置を入力することで、対象エリア上の１点が指定されて、単眼カメラ１１から指定した対象エリア上の１点までの距離を入力することができる。なお、キーボードを画面表示してタッチ操作で距離の数値を入力できるようにするとよい。また、ピンチアウトなどの拡大操作により画像を拡大表示して点の位置を正確に指定できるようにしてもよい。
【００８４】
次に、ユーザは、図１０（Ａ）に示すように、計測ボタン２８を操作する。これにより、プロセッサ１４が、計測結果出力の処理を実行する。このとき、計測値表示モードとなり、ユーザは、計測結果を必要とする対象エリア上の位置を、撮影画像表示部２１に表示された画像上でタッチ操作により入力すると、計測値が表示される。
【００８５】
このとき、ユーザは、メニューで入力モード（１点入力モード、２点入力モード）を選択することができる。図１０（Ｂ）に示すように、２点入力モードでは、ユーザが２点の位置を入力することで、対象エリア上の２点が指定されて、その対象エリア上の２点間の距離が表示される。図１０（Ｃ）に示すように、１点入力モードでは、ユーザが１点の位置を入力することで、対象エリア上の１点が指定されて、単眼カメラ１１から指定した対象エリア上の１点までの距離が表示される。
【００８６】
（第１実施形態の変形例）
次に、第１実施形態の変形例について説明する。なお、ここで特に言及しない点は前記の実施形態と同様である。図１１は、第１実施形態の変形例に係るタブレット端末１の動作手順を示すフロー図である。
【００８７】
第１実施形態（図６参照）では、３枚の画像が、左画像、右画像および補助画像のいずれであるかを識別する撮影場所識別の処理の後に、キャリブレーションの処理を行うようにしたが、本実施形態では、キャリブレーションの処理の後に撮影場所識別の処理を行う。
【００８８】
具体的には、図１１に示すように、まず、ユーザが撮影場所を変えながら単眼カメラ１１により対象エリアを３回撮影する（ＳＴ１０１）。
【００８９】
次に、プロセッサ１４において、キャリブレーションの処理を行う（ＳＴ１０３）。このとき、メモリ１２に記憶された３枚の画像から任意の画像を２枚選択して、対応点探索および撮影位置姿勢推定の処理を行う。この対応点探索および撮影位置姿勢推定処理は、３枚の画像から２枚の画像を選択する全ての組み合わせで行われる。
【００９０】
次に、プロセッサ１４において、撮影場所識別の処理を行う（ＳＴ１０２）。このとき、撮影位置姿勢推定の結果に基づいて、３枚の画像の撮影場所を識別する。特に、３枚の画像のうちどの画像が、以降の処理で必要となる左画像および右画像であるかを識別する。以降は、第１実施形態（図６参照）と同様である。
【００９１】
このように本変形例では、撮影位置姿勢推定の結果に基づいて画像の撮影場所を識別するため、第１実施形態のように、画像の撮影場所を識別するために、対象エリアを撮影する際に撮影場所を入力する操作をユーザに行わせたり、撮影の順番を指定したりする必要がない。
【００９２】
（第２実施形態）
次に、第２実施形態について説明する。なお、ここで特に言及しない点は前記の実施形態と同様である。図１２は、第２実施形態に係る３次元計測システムの概略構成を示すブロック図である。
【００９３】
第１実施形態（図１参照）では、タブレット端末１に設けられた単眼カメラ１１で対象エリアを撮影して、タブレット端末１に設けられたプロセッサ１４で３次元計測の処理を行うようにしたが、本実施形態では、単眼カメラ４１とＰＣ４２（情報処理装置）とで３次元計測システムが構成され、ＰＣ４２において、単眼カメラ４１で撮影した画像を用いて３次元計測の処理を行う。
【００９４】
ＰＣ４２は、メモリ５１と、ディスプレイ５２と、入力デバイス５３と、プロセッサ５４と、を備えている。
【００９５】
メモリ５１は、単眼カメラ４１から入力される撮影画像や、プロセッサ５４で実行される３次元計測アプリケーションのプログラムなどを記憶する。
【００９６】
ディスプレイ５２は、３次元計測アプリケーションの画面を表示する。入力デバイス５３は、マウスやキーボードなどであり、ユーザが画面操作を行う。
【００９７】
プロセッサ５４は、タブレット端末１のプロセッサ１４と同様に、３次元計測の処理、具体的には、撮影場所識別、撮影位置姿勢推定、画像平行化、ステレオマッチング視差探索、３次元情報取得、スケール変換、および計測結果出力の各処理を行う。
【００９８】
なお、撮影場所を変更しながら単眼カメラ４１で対象エリアを４回以上撮影して、ＰＣ４２において、ユーザが、左画像、右画像および補助画像となる撮影画像を３枚選択して、３次元計測の処理を行うようにしてもよい。
【００９９】
（第３実施形態）
次に、第３実施形態について説明する。なお、ここで特に言及しない点は前記の実施形態と同様である。図１３は、第３実施形態に係る３次元計測システムの概略構成を示すブロック図である。
【０１００】
第２実施形態では、単眼カメラ４１のみを用いて対象エリアを撮影するようにしたが、本実施形態では、ステレオカメラ６１と単眼カメラ４１とを用いて対象エリアを撮影する。
【０１０１】
ステレオカメラ６１は、左カメラ７１と右カメラ７２とを備えており、適宜な場所から対象エリアを撮影し、左カメラ７１の撮影画像が左画像となり、右カメラ７２の撮影画像が右画像となる。単眼カメラ４１は、ステレオカメラ６１から離れた場所から対象エリアを撮影し、この単眼カメラ４１の撮影画像が補助画像となる。
【０１０２】
ＰＣ４２は、第２実施形態と同様に、メモリ５１と、ディスプレイ５２と、入力デバイス５３と、プロセッサ５４と、を備えている。プロセッサ５４は、第２実施形態と同様に、撮影場所識別、撮影位置姿勢推定、画像平行化、ステレオマッチング視差探索、３次元情報取得、および計測結果出力の各処理を行う。
【０１０３】
一方、本実施形態では、スケール変換は省略される。ステレオカメラ６１では、基線長、すなわち、左画像の撮影位置と右画像の撮影位置との間隔が既知であることから、３次元情報取得の処理では、ステレオマッチング視差探索の処理で取得した視差と、既知の基線長とに基づいて、正確な３次元位置情報を取得することができる。このため、スケール変換は不要である。
【０１０４】
以上のように、本出願において開示する技術の例示として、実施形態を説明した。しかしながら、本開示における技術は、これに限定されず、変更、置き換え、付加、省略などを行った実施形態にも適用できる。また、上記の実施形態で説明した各構成要素を組み合わせて、新たな実施形態とすることも可能である。
【産業上の利用可能性】
【０１０５】
本発明に係る３次元計測装置、３次元計測システムおよび３次元計測方法は、単眼カメラを用いて撮影位置を変えながら対象エリアを複数回撮影する撮影方法でも、適切な３次元計測を行うことができる効果を有し、対象エリアを撮影した撮影画像に基づいて、対象エリアの３次元位置情報を取得する３次元計測装置、３次元計測システムおよび３次元計測方法などとして有用である。
【符号の説明】
【０１０６】
１  タブレット端末（３次元計測装置）
１１  単眼カメラ
１２  メモリ
１３  タッチパネルディスプレイ
１４  プロセッサ
４１  単眼カメラ
４２  ＰＣ（情報処理装置）
５１  メモリ
５２  ディスプレイ
５３  入力デバイス
５４  プロセッサ
６１  ステレオカメラ
【図１】
2020159965.tif 000003
【図２】
2020159965.tif 000004
【図３】
2020159965.tif 000005
【図４】
2020159965.tif 000006
【図５】
2020159965.tif 000007
【図６】
2020159965.tif 000008
【図７】
2020159965.tif 000009
【図８】
2020159965.tif 000010
【図９】
2020159965.tif 000011
【図１０】
2020159965.tif 000012
【図１１】
2020159965.tif 000013
【図１２】
2020159965.tif 000014
【図１３】
2020159965.tif 000015