TOP > 国内特許検索 > マーカの3次元位置計測方法及びシステム > 明細書

明細書 :マーカの3次元位置計測方法及びシステム

発行国 日本国特許庁(JP)
公報種別 特許公報(B2)
特許番号 特許第5322050号 (P5322050)
公開番号 特開2010-032282 (P2010-032282A)
登録日 平成25年7月26日(2013.7.26)
発行日 平成25年10月23日(2013.10.23)
公開日 平成22年2月12日(2010.2.12)
発明の名称または考案の名称 マーカの3次元位置計測方法及びシステム
国際特許分類 G01C  15/00        (2006.01)
G01C  15/06        (2006.01)
G01B  11/00        (2006.01)
FI G01C 15/00 103A
G01C 15/06 T
G01B 11/00 H
請求項の数または発明の数 2
全頁数 25
出願番号 特願2008-193047 (P2008-193047)
出願日 平成20年7月28日(2008.7.28)
審査請求日 平成21年12月3日(2009.12.3)
特許権者または実用新案権者 【識別番号】505374783
【氏名又は名称】独立行政法人日本原子力研究開発機構
発明者または考案者 【氏名】石井 裕剛
【氏名】下田 宏
【氏名】楊 首峰
【氏名】顔 偉達
【氏名】泉 正憲
個別代理人の代理人 【識別番号】100074631、【弁理士】、【氏名又は名称】高田 幸彦
審査官 【審査官】岸 智史
参考文献・文献 特開2003-130644(JP,A)
特開平09-014921(JP,A)
特開2001-235326(JP,A)
特開2003-211382(JP,A)
特開平10-170223(JP,A)
特開2001-296124(JP,A)
特開平09-311021(JP,A)
特開平04-084710(JP,A)
調査した分野 G01C 1/00-1/14
G01C 5/00-15/14
特許請求の範囲 【請求項1】
作業環境の基準となる位置に世界座標系の原点を選んで3次元で世界座標系の各軸を選定して前記原点と各軸に貼付された基準マーカと、作業環境の計測したい位置に貼付されたその他のマーカに対し、
作業環境にレーザ距離計測器とビデオカメラを電動雲台を介して配置して制御用コンピュータと通信可能に接続することによりマーカ位置計測システムを構成し、前記制御用コンピュータにより前記レーザ距離計測器とビデオカメラと電動雲台を制御することにより、
ビデオカメラで環境を撮影し、マーカ認識アルゴリズムを実現するプログラムを実行することによりカメラ画像上の総てのマーカを認識してビデオカメラとマーカの間の大まかな相対的な位置関係を求め、
求めた位置関係を用いて電動雲台を駆動してレーザ距離測定器をマーカが存在する方向に向け、
マーカにレーザを照射し、その照射位置がマーカ上の特徴点の位置に合っているかどうかを確認してレーザ照射の位置をマーカ上の特徴点の位置に合わせ、
レーザ距離計測器を用いてマーカと該レーザ距離計測器の間の距離を求めて電動雲台の位置情報に基づいて個々のマーカの正確な方向を求め、
求めた情報に基づいて個々のマーカの3次元位置を求めて該3次元位置データを保存する計測を、前記ビデオカメラの焦点距離を設定可能な最も短い値に設定して撮影した総てのマーカと、焦点距離をその2倍及び3倍の値に設定して撮影した総てのマーカについて行うことを特徴とするマーカの3次元位置計測方法。
【請求項2】
レーザ距離計測器と、電動ズーム機能付きビデオカメラと、前記レーザ距離計測器と電動ズーム機能付きビデオカメラを支持する電動雲台と、制御用コンピュータとを備え、
前記制御用コンピュータにより前記レーザ距離計測器とビデオカメラと電動雲台を制御することにより、
作業環境の基準となる位置に世界座標系の原点を選んで3次元で世界座標系の各軸を選定して前記原点と各軸に貼付された基準マーカと、作業環境の計測したい位置に貼付されたその他のマーカを、ビデオカメラで撮影し、マーカ認識アルゴリズムを実現するプログラムを実行することによりカメラ画像上の総てのマーカを認識してビデオカメラとマーカの間の大まかな相対的な位置関係を求め、
求めた位置関係を用いて電動雲台を駆動してレーザ距離測定器をマーカが存在する方向に向け、
マーカにレーザを照射し、その照射位置がマーカ上の特徴点の位置に合っているかどうかを確認してレーザ照射の位置をマーカ上の特徴点の位置に合わせ、
レーザ距離計測器を用いてマーカと該レーザ距離計測器の間の距離を求めて電動雲台の位置情報に基づいて個々のマーカの正確な方向を求め、
求めた情報に基づいて個々のマーカの3次元位置を求めて該3次元位置データを保存する計測を、前記ビデオカメラの焦点距離を設定可能な最も短い値に設定して撮影した総てのマーカと、焦点距離をその2倍及び3倍の値に設定して撮影した総てのマーカについて行うことを特徴とするマーカの3次元位置計測システム。
発明の詳細な説明 【技術分野】
【0001】
本発明は、マーカの3次元位置計測方法及びシステムに関する。
【背景技術】
【0002】
プラントの保守作業や解体作業の効率化や安全性を向上させるための技術として、現実世界に仮想世界を重畳表示する拡張現実感(Augmented Reality:AR)技術がある。このAR技術を適正に実現するためには、現場における作業者の位置と向きをリアルタイムで正確に計測するトラッキング技術の利用が必要である。
【0003】
トラッキング技術としては、各種の手法が提案されているが、原子力発電プラントの保守作業や解体作業への適用を考えると、画像マーカ法が適している。しかし、この画像マーカ法は、予め、環境(原子力発電プラント内部)に膨大な数のマーカを貼り付け、その3次元位置を計測しておくことが必要である。
【0004】

【特許文献1】再公表WO2005-017644号公報
【特許文献2】特開2004-28788号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
原子力発電プラント内部に貼り付けられた膨大な数のマーカの3次元位置を1つ1つ手作業で計測しようとすると、その労力の多さが問題となる。
【0006】
従って、本発明の1つの目的は、環境に貼り付けたマーカの3次元位置を容易に計測することができる方法及びシステムを実現することにある。
【0007】
本発明の他の目的は、環境に貼り付けたマーカの3次元位置を比較的短時間に容易に計測することができる方法及びシステムを実現することにある。
【0008】
本発明の更に他の目的は、環境に貼り付けたマーカの3次元位置を比較的少ない労力で短時間に容易に計測することができる方法及びシステムを実現することにある。
【課題を解決するための手段】
【0009】
本発明は、環境に貼り付けられたマーカの位置情報をレーザ距離計測器とビデオカメラと電動雲台を利用して取得し、この位置情報を制御用コンピュータで処理することにより、計測対象のマーカの正確な3次元位置を計測する構成を骨子とするものであり、
具体的には、
作業環境の基準となる位置に世界座標系の原点を選んで右手系(3次元直交軸系)で世界座標系の各軸を選定して前記原点と各軸に貼付された基準マーカ、及び作業環境の適当な位置に貼付されたその他のマーカに対し、
作業環境にレーザ距離計測器とビデオカメラを電動雲台を介して配置して制御用コンピュータと通信可能に接続することによりマーカ位置計測システムを構成し、前記制御用コンピュータにより前記レーザ距離計測器とビデオカメラと電動雲台を制御することにより、
ビデオカメラで環境を撮影し、マーカ認識アルゴリズムを実現するプログラムを実行することによりカメラ画像上の総てのマーカを認識してビデオカメラとマーカの間の大まかな相対的な位置関係を求め、
求めた位置関係を用いて電動雲台を駆動してレーザ距離測定器をマーカが存在する方向に向け、
マーカにレーザを照射し、その照射位置がマーカ上の特徴点の位置に合っているかどうかを確認してレーザ照射の位置をマーカ上の特徴点の位置に合わせ、
レーザ距離計測器を用いてマーカと該レーザ距離計測器の間の距離を求めて電動雲台の位置情報に基づいて個々のマーカの正確な方向を求め、
求めた情報に基づいて個々のマーカの3次元位置を求めて該3次元位置データを保存する計測を、前記ビデオカメラの焦点距離を設定可能な最も短い値に設定して撮影した総てのマーカと、焦点距離をその2倍及び3倍の値に設定して撮影した総てのマーカについて行う構成である。
【発明の効果】
【0010】
本発明は、環境に貼り付けたマーカの3次元位置を容易に計測することができる方法及びシステムを実現することができる。
【0011】
また、環境に貼り付けたマーカの3次元位置を比較的短時間に容易に計測することができる方法及びシステムを実現することができる。
【0012】
更には、環境に貼り付けたマーカの3次元位置を比較的少ない労力で短時間に容易に計測することができる方法及びシステムを実現することができる。
【発明を実施するための最良の形態】
【0013】
作業環境の基準となる位置に世界座標系の原点を選んで3次元で世界座標系の各軸を選定して前記原点と各軸に貼付された基準マーカ及び作業環境の適当な位置に貼付されたその他のマーカに対し、
レーザ距離計測器と、電動ズーム機能付きビデオカメラと、前記レーザ距離計測器と電動ズーム機能付きビデオカメラを支持する電動雲台と、環境に貼り付けられたマーカの位置情報を前記レーザ距離計測器とビデオカメラと電動雲台を利用して取得して処理することにより計測対象のマーカの3次元位置を計測する制御用コンピュータを備えたマーカ位置計測システムを構成し、前記制御用コンピュータにより前記レーザ距離計測器とビデオカメラと電動雲台を制御することにより、
ビデオカメラで環境を撮影し、マーカ認識アルゴリズムを実現するプログラムを実行することによりカメラ画像上の総てのマーカを認識してビデオカメラとマーカの間の大まかな相対的な位置関係を求め、
求めた位置関係を用いて電動雲台を駆動してレーザ距離計測器をマーカが存在する方向に向け、
マーカにレーザを照射し、その照射位置がマーカ上の特徴点の位置に合っているかどうかを確認してレーザ照射の位置をマーカ上の特徴点の位置に合わせ、
レーザ距離計測器を用いてマーカと該レーザ距離計測器の間の距離を求めて電動雲台の位置情報に基づいて個々のマーカの正確な方向を求め、
求めた情報に基づいて個々のマーカの3次元位置を求めて該3次元位置データを保存する計測を、前記ビデオカメラの焦点距離を設定可能な最も短い値に設定して撮影した総てのマーカと、焦点距離をその2倍及び3倍の値に設定して撮影した総てのマーカについて行うようにする。
【実施例1】
【0014】
マーカ位置計測システム(Maker Auto-Measurement System;MAMS)は、図1に示すように、レーザ距離計測器1、電動ズーム機能付きビデオカメラ(以下、ビデオカメラという)2、電動雲台3,4、マーカ認識プログラムを組み込んだ制御用コンピュータ(ノートPC)5、三脚(支持台)6を組み合わせて構成する。
【0015】
電動雲台3,4は、レーザ距離計測器1とビデオカメラ2を約30cm間隔で保持するように三脚6の水平角材61の両端部上に水平面を平行状態にして固定し、レーザ距離計測器1とビデオカメラ2を支持する。レーザ距離計測器1,ビデオカメラ2,電動雲台3,4の制御信号線は、USBシリアル変換ケーブル7を介して制御用コンピュータ5に接続する。そして、電動雲台3,4は、レーザ距離計測器1とビデオカメラ2が共に前を向くように初期化する。この実施例では、前記制御信号線としてUSBシリアル変換ケーブル7を使用したが、シリアル通信することができるものであれば、他の形態の信号線を使用することも可能である。
【0016】
環境(機器)8に貼り付けるマーカ9は、円形マーカを使用する。具体的には、図2に示すように、裏面に貼着剤を塗布した白色台紙91の表面に直径10cmの円を描画したものであり、最も外側に外側直径10cm、太さ1.5cmの黒色の円環(最外領域)91aを形成し、最も内側に外側直径3cmの白色の円(内側領域)91bを形成し、両者の間の領域(外側直径8.5、内側直径3cmの円環)91cをコード領域として同じ形の扇形に分割してビット要素とし、個々の扇形毎に白色又は黒色を付してマーカコードとする形態である。寸法は、この値に限られるものではないが、外側領域91aと内側領域91bとコード領域91cは、このような比率とすることが望ましい。
【0017】
制御用コンピュータ5は、後述するマーカ位置計測アルゴリズムを実現するための制御プログラムを内蔵し、この制御プログラムを実行することにより、計測のためのインターフェース画面をディスプレイ51に表示し、インターフェース画面による指示入力に基づいて、レーザ距離計測器1,ビデオカメラ2,電動雲台3,4を制御し、ビデオカメラ5が撮影したカメラ画像データをUSBキャプチャを介して取り込み、マーカ画像を認識し、マーカ9の大まかな位置を計測し、レーザ距離計測器1によりマーカ9の正確な位置を計測し、保存し、また、計測結果を前記インターフェース画面に表示する。この実施例では、カメラ画像データの授受にUSBキャプチャを使用したが、シリアル通信することができるものであれば、他の形態のものを使用することも可能である。
【0018】
マーカの3次元位置計測のための作業手順について、図3を参照して説明する。
【0019】
手順1:作業環境の基準となる位置に世界座標系の原点を選んで、3次元で世界座標系の各軸を選定する。
【0020】
手順2:原点と各軸及び位置計測を行いたい適当な位置にマーカ(基準マーカとその他のマーカ)9を配置(貼付)する。
【0021】
手順3:作業環境にレーザ距離計測器1、ビデオカメラ2、電動雲台3,4、三脚6、制御用コンピュータ5を配置して通信可能に接続することによりMAMSを構成する。
【0022】
手順4:ビデオカメラ2で環境を撮影し、マーカ認識アルゴリズムを実現するプログラムを実行することによりカメラ画像上のマーカ画像を認識し、レーザ距離計測器1とマーカ9の間の相対的な位置関係を求める。
【0023】
手順5:手順4で求めた位置関係情報を用いて、電動雲台3を駆動してレーザ距離測定器1をマーカ9が存在する方向に向ける。
【0024】
手順6:マーカ9にレーザを照射してその照射位置がマーカ9上の特徴点の位置に合っているかどうかを確認し、レーザ照射の位置をマーカ9上の特徴点の位置に合わせる。
【0025】
手順7:レーザ距離計測器1を用いてマーカ9と該レーザ距離計測器1の間の距離を求め、電動雲台3の位置情報に基づいてマーカ9の正確な方向を求める。
【0026】
手順8:手順7で求めた情報に基づいてマーカ9の3次元位置を求める。
【0027】
手順9:手順8で求めたマーカ9の3次元位置データを保存する。
【0028】
手順10:使用したMAMS機器を撤去する。
【0029】
前述した手順でマーカ9の3次元位置を計測するMAMSは、次のようなアルゴリズムにより計測機能を実現する。
【0030】
アルゴリズム1:マーカ認識アルゴリズム
アルゴリズム2:ビデオカメラを用いてマーカの位置を計測するアルゴリズム
アルゴリズム3:レーザ距離計測器を用いてマーカの位置を計測するアルゴリズム
アルゴリズム4:マーカの位置を世界座標系に変換するアルゴリズム
アルゴリズム5:1つのマーカの位置を自動的に計測するアルゴリズム
アルゴリズム6:総てのマーカの位置を自動的に計測するアルゴリズム
これらのアルゴリズムは、制御用コンピュータ5に組み込んだマーカの3次元位置計測プログラムを実行することにより実現する。
【0031】
ここで、前記アルゴリズム1(マーカ認識アルゴリズム)について、図4を参照して説明する。
ステップS50101
ビデオカメラ2により環境を撮影してRGBカラー画像(カメラ画像)データを取得する。
ステップS50102
取得したカラー画像をグレースケール画像に変換した後、ラプラシアンフィルタを適用して予め定められた閾値で2値化することにより、画像のエッジ(輝度の変化の大きい部分)を認識する。
ステップS50103
画像のエッジとして認識した画素間の連結性(互いに隣り合っているかどうか)を調べ、連結すると認識した個々のエッジ群が楕円(マーカの外形)に整合(フィッティング)するかどうかを判定する。
ステップS50104
楕円にフィッティングできると判定されたエッジ群の中の領域を解析し、その領域がマーカ画像であるかどうかを判定する。
ステップS50105
マーカ画像である場合には、マーカの種類を判定すると共に、整合した楕円の中心をマーカ画像の中心とし、楕円の長軸の長さをマーカの画像上の大きさとする。
ステップS50106
マーカの種類と位置と大きさを認識する。
【0032】
前記アルゴリズム2(ビデオカメラを用いてマーカの位置を計測するアルゴリズム)について、図5を参照して説明する。
【0033】
このアルゴリズムは、マーカ9の半径rreal、カメラ画像上のマーカ画像の位置(x,y)と半径rimage、ビデオカメラ2の外部パラメータ(電動雲台座標系Sで表されたビデオカメラ2の位置Tsc、パン方向cpan、チルト方向ctilt)、ビデオカメラ2の内部パラメータ(ビデオカメラ2の焦点距離f、ビデオカメラ2のCCDのチップの幅wCCD、ビデオカメラ2の解像度wreso,hreso)から、ビデオカメラ2に写った円形マーカの電動雲台座標系で表された3次元位置ベクトルTSMを求めるアルゴリズムである。
【0034】
ここで、ビデオカメラ2のCCDチップの幅幅wCCDと解像度wreso,hresoは、ビデオカメラ2の仕様書等から得ることができ、電動雲台座標系で表されるビデオカメラ2の位置Tscとマーカ9の半径rrealは、固定であるから事前に計測して得ることができる。また、ビデオカメラ2のパン方向cpanとチルト方向ctiltと焦点距離fは、ビデオカメラ2及び電動雲台4から通信により取得する。
ステップS50201
カメラ画像上のマーカ画像の位置(x,y)と半径rimageを求める。
ステップS50202
ビデオカメラ2及び電動雲台4と通信して該ビデオカメラ2の現在のパン方向cpanとチルト方向ctiltと焦点距離fの情報を得る。
ステップS50203
(数1)式によりビデオカメラ2と実際のマーカ9の間の距離dcmを求める。
【0035】
【数1】
JP0005322050B2_000002t.gif

【0036】
ステップS50204
カメラ座標系で表されたマーカのパン方向mpanとチルト方向mtiltを(数2)式及び(数3)式により求める。
【0037】
【数2】
JP0005322050B2_000003t.gif

【0038】
【数3】
JP0005322050B2_000004t.gif

【0039】
ここで、v=arctan(wCCD/2f)は、ビデオカメラ2の水平方向の半画角である。
【0040】
ステップS50205
電動雲台座標系で表されたマーカの3次元位置ベクトルTSMを(数4)式を用いて求める。
【0041】
SM=TSC+R(mpan+cpan)R(mtilt+ctilt)D ……(数4)
ここで、D=(dcm,0,0)とし、R(α),R(β)は、それぞれ、y軸を中心にα回転、z軸を中心にβ回転させる回転行列である。
【0042】
なお、(数1)の導出方法は、次の通りである。マーカ画像がビデオカメラ2の略中心部に写っているとき、図6において、FO’=f,FO=dcmである。ここで、三角形FO’R’と三角形FORは相似であるため、FO’:FO=O’R’:ORが成り立つ。従って、下記の式(数5)が成り立つ。
【0043】
【数5】
JP0005322050B2_000005t.gif

【0044】
電動雲台4とビデオカメラ2は、1つの器具に固定して使用することを前提としているが、計測システムを設置・撤去する際に、電動雲台4とビデオカメラ2の位置や方向が変化してしまう可能性がある。また、使用可能なビデオカメラ2の解像度には上限がある。そのため、ビデオカメラ2の位置TSC、マーカ認識アルゴリズムで得られるマーカの大きさrimageには、大きな誤差が含まれることになる。そのため、このビデオカメラを用いたマーカの位置計測アルゴリズムで求められるマーカの3次元位置には、大きな誤差が含まれることが予想され、この計測結果をそのままトラッキングに使用することは精度の観点から好ましくない。
【0045】
アルゴリズム3(レーザ距離計測器を用いてマーカの位置を計測するアルゴリズム)について、図7を参照して説明する。
【0046】
このアルゴリズムは、電動雲台3のパン方向span、チルト方向stiltとレーザ距離計測器1とマーカ9の中心との間の距離dlmから、電動雲台座標系で表されたマーカ9の高精度な3次元位置TSMを求めるアルゴリズムである。レーザ距離計測器1の距離計測結果dと電動雲台3のパン方向spanとチルト方向stiltは、レーザ距離計測器1と電動雲台3から通信により取得する。
ステップS50301
手作業もしくは後述する自動化手法により、レーザ距離計測器1によるレーザ照射位置を計測の対象となる円形マーカ9の中心に合わせる。
ステップS50302
レーザ距離計測器1を作動させて該レーザ距離計測器1とマーカ9の中心の間の距離dlmの情報を得る。
ステップS50303
電動雲台3のパン方向span,チルト方向stiltの情報を得る。
ステップS50304
電動雲台座標系で表されたマーカの3次元位置ベクトルTSMを次式(数6)により求める。
【0047】
SM=R(span)R(stilt)D ……(数6)
ここで、D=(dlm,0,0)とし、R(α),R(β)は、それぞれ、y軸を中心にα回転、z軸を中心にβ回転させる回転行列である。
【0048】
アルゴリズム4(マーカの位置を世界座標系に変換するアルゴリズム)について、図8を参照して説明する。
【0049】
このアルゴリズムは、前述したレーザ距離計測器を用いてマーカの位置を計測するアルゴリズムにより得られた電動雲台座標系で表されたマーカの3次元位置を世界座標系で表されたマーカの3次元座標系に変換するアルゴリズムである。このアルゴリズムによる変換を実行するにあたり、計測対象となるマーカ9に加え、1番のマーカと、2番から4番の3つのマーカのうちの少なくとも2つのマーカが環境に貼り付けられているものとする。
ステップS50401
レーザ距離計測器1を用いてマーカの位置を計測するアルゴリズムにより、作業環境に貼り付けられた総てのマーカの電動雲台座標系で表された3次元位置TSMi(iは、マーカの番号)を求める。このとき、1番のマーカ及び2番から4番のマーカのうちの少なくとも2つのマーカの3次元位置を計測することが必要である。2番から4番の総てのマーカの3次元位置が求められている場合にはステップS50402へ進み、2つのマーカの3次元位置しか求められていない場合には、以下のようにして残りのマーカの3次元位置を求めた後にステップS50402へ進む。
【0050】
i)2番と3番のマーカの3次元位置TSM2,TSM3が求められている場合
SM4=(TSM2-TSM1)×(TSM3-TSM1) ……(数7)
ii)2番と4番のマーカの3次元位置が求められている場合
(TSM4-TSM1)×(TSM2-TSM1) ……(数8)
iii)3番と4番のマーカの3次元位置が求められている場合
(TSM3-TSM1)×(TSM2-TSM1) ……(数9)
ステップS50402
電動雲台座標系で表された世界座標系のx,y,z軸方向の単位ベクトルX,Y,Zを次式(数10),(数11),(数12)で求める。
【0051】
【数10】
JP0005322050B2_000006t.gif

【0052】
【数11】
JP0005322050B2_000007t.gif

【0053】
=X×Y ……(数12)
ステップS50403
電動雲台座標系から世界座標系への回転行列Rswを次式(数13)により求める。
【0054】
【数13】
JP0005322050B2_000008t.gif

【0055】
ステップS50404
世界座標系で表された電動雲台3の3次元位置Sを次式(数14)により求める。
【0056】
=-RswSM1 ……(数14)
ステップS50405
電動雲台座標系から世界座標系への変換行列を次式(数15)により求める。
【0057】
【数15】
JP0005322050B2_000009t.gif

【0058】
ステップS50406
次式(数16)を用いて電動雲台座標系で表されたマーカの3次元位置を世界座標系で表されたマーカの3次元座標系に変換する。
【0059】
【数16】
JP0005322050B2_000010t.gif

【0060】
アルゴリズム5(1つのマーカの位置を自動的に計測するアルゴリズム)について、図9a,図9bを参照して説明する。
【0061】
このアルゴリズムは、ビデオカメラ2に円形マーカ9が写っている状態で、そのマーカの世界座標系で表された3次元位置を自動的に計測するアルゴリズムである。
ステップS50501
前述したビデオカメラを用いてマーカの位置を計測するアルゴリズムにより、カメラ座標系で表されたマーカのパン・チルト方向を求める。
ステップS50502
前記ステップS50501で求めたマーカのパン・チルト方向の情報を用いて、マーカ9がカメラ画像の中心に写るようにビデオカメラ2の撮影方向を調整する。
ステップS50503
前記ステップS50501で実行したビデオカメラを用いてマーカの位置を計測するアルゴリズムにより電動雲台座標系で表されたマーカの3次元位置位置ベクトルTSMi=(xsi,ysi,zsi)を求め、次式(数17),(数18)を用いて、電動雲台座標系で表されたマーカのパン方向mpans,チルト方向mtiltsを求める。
【0062】
pans=arctan(ysi/xsi) ……(数17)
【0063】
【数18】
JP0005322050B2_000011t.gif

【0064】
ステップS50504
前記ステップS50503で求めたパン・チルト方向を用いて、レーザ距離計測器1をマーカ9の方向に向ける。これは、レーザ距離計測器1がこれから計測するマーカ9の方向とは違う方向を向いている場合に、レーザ距離計測器1がビデオカメラ2の視野を遮ることを避けるためである。ただし、前述したように、ビデオカメラ2のみを用いて求めたマーカ9の3次元位置情報には比較的大きな誤差が含まれるため、この時点でレーザを照射してもマーカ9の中心から離れた位置にレーザが照射される可能性が高い。
【0065】
ステップS50505
カメラ画像上でのマーカ画像の半径が、ビデオカメラ2の縦方向の解像度の35%になるようにビデオカメラ2の焦点距離を調整する。その際の焦点距離f35%は、次式(数19)により近似的に求める。
【0066】
【数19】
JP0005322050B2_000012t.gif

【0067】
ただし、fは前記ステップS50501において取得したマーカのパン・チルト方向を求めたときにマーカを認識した際の焦点距離、aはそのときのマーカ画像のカメラ画像上での長軸半径(マーカを楕円としてみたときの長い方の半径)、hresoはビデオカメラ2の縦方向の解像度とする。
【0068】
ステップS50506
レーザ距離計測器1がマーカ9の方向に正確に向いているかどうかを判定して処理を分岐する。この判定は、ステップS50505において焦点距離の調整制御を行ったかどうかに基づいて行うものであり、焦点距離調整を行ったときには、レーザ距離計測器1がマーカ9の正確な方向からずれた、と判定する。レーザ距離計測器1がマーカ9の方向に正確からずれたときにはステップS50501に戻る。
【0069】
ビデオカメラ2の焦点距離を調整すると、カメラ画像上でのマーカ画像の位置が中心からずれる可能性がある。従って、ステップS50501,S50502を繰り返すことにより、マーカ画像がカメラ画像の中心に位置するようにビデオカメラ2の方向を調整する。
【0070】
そして、ステップS50501を再実行することにより、より精度の高い電動雲台座標系で表されたマーカの3次元位置ベクトルを求めることができる。このときに認識したマーカの中心座標(x,y)と短軸半径(マーカを楕円としてみたときの短い方の半径)bを記憶しておく。
【0071】
また、ステップS50503,S50504を繰り返すことにより、レーザ距離計測器1をマーカ9の方向に向ける。これにより、ステップS50504を実行したときに比べて、より正確な方向にレーザ距離計測器1を向けることができるようになる。
【0072】
ステップS50507
ビデオカメラ2のシャッタースピードを早くしてカメラ画像の全体的な明るさを下げる。カメラ画像の明るさは、カメラ画像データ信号系のゲインを下げることによって行うこともできる。
【0073】
ステップS50508
レーザ距離計測器1のレーザ照射をOFFにする。
【0074】
ステップS50509
現在のカメラ画像を保存する。このカメラ画像をIorgとする。
【0075】
ステップS50510
レーザ距離計測器1のレーザ照射をONにする。
【0076】
ステップS50511
現在のカメラ画像を保存する。このカメラ画像をIlaserとする。
【0077】
ステップS50512
画像Iorgと画像Ilaserの差分を取り、予め定めた閾値よりも大きい画素を求め、その画素の面積Sを求める。
【0078】
ステップS50513
求めた面積Sを予め定めた閾値と大小判定して処理を分岐する。
【0079】
ステップS50514
面積Sが閾値よりも小さい場合には、カメラ画像にレーザの照射が正しく写っていない状態であることから、レーザ距離計測器1の向きをマーカ9が存在すると思われる方向を中心に回転させてステップS50508に戻ってステップS50508~ステップS50513を繰り返す。ただし、この繰り返し回数が規定値を超えたときには自動計測が失敗したと判断する。
【0080】
ステップS50515
面積Sが閾値以上であるときには、そのカメラ画像上での重心座標G=(x,y)を求める。
【0081】
ステップS50516
重心座標GとステップS50501を再実行することにより得たカメラ画像上でのマーカ画像の中心座標(x,y)の差のベクトルを計算する。
ステップS50517
差のベクトルの長さとステップS50501を再実行することにより得たカメラ画像上でのマーカ画像の短軸半径bの1.5倍の値とを長短を判定して処理を分岐する。長いときには、ステップS50514でレーザ距離計測器1の向きをマーカ9が存在すると思われる方向を中心に回転させてステップS50508に戻り、短いときにはステップS50518に進む。
【0082】
ステップS50518
ステップS50516で求めたベクトルの長さと予め定めた閾値(例えば、2画素)とを長短判定して処理を分岐する。ベクトルの長さが閾値よりも短いときには、レーザがマーカ9の中心に照射されているものと判断してステップS50520に進み、閾値以上のときにはステップS50519に進む。
【0083】
ステップS50519
ステップS50516で求めたベクトルを用いてレーザ距離計測器1の向きをマーカ9の中心位置方向に向けるように調整してステップS50508に戻る。ここで、レーザ距離計測器1の向きをマーカ9の中心位置に向けるように調整するための方向は、次式(数20),(数21)により求める。
【0084】
pan=span0+(v/wreso)(x-x) ……(数20)
tilt=stilt0+(v/wreso)(y-y) ……(数21)
ただし、vは、ステップS50506の時点でのビデオカメラ2の水平方向の半画角、span0,stilt0は、ステップS50511の時点でのレーザ距離計測器1のパン・チルト方向である。
【0085】
ステップS50520
前述したレーザ距離計測器を用いてマーカの位置を計測するアルゴリズムを用いてマーカ9の正確な3次元位置を求める。
【0086】
なお、ステップS50513におけるレーザの照射位置判定に基づく処理の分岐において、直ちにステップS50520に進まずに、ステップS50515,S50516のように、レーザの照射位置とマーカ9の中心位置の距離がマーカのカメラ画像上での短軸半径の1.5倍よりも小さいときにステップS50520に進むようにしたのは、マーカ9が貼り付けられた環境は、必ずしも平面ではなく、凹凸があり、カメラ画像上に投影された後のマーカとレーザ照射位置の関係だけでは、レーザ照射方向をどの方向に修正すればマーカ9の中心位置に調整することができるかを知ることができないためである。レーザの照射位置とマーカ9の中心位置の距離がマーカ9のカメラ画像上での短軸半径の1.5倍よりも小さいときには、レーザは既にマーカ9上に照射していると判断することができ、マーカ9は必ず平面であることから、ステップS50520により、必ずレーザの照射位置をマーカ9の中心に近い方向に調整することができる。ここで、判定基準を短軸方向の1.0倍でなく1.5倍としたのは、円形マーカ9の周りには空白の領域があり、その領域も平面であるからである。
【0087】
アルゴリズム6(総てのマーカの位置を自動的に計測するアルゴリズム)について、図10を参照して説明する。
【0088】
このアルゴリズムは、ビデオカメラ2で撮影可能な総てのマーカの世界座標系で表された3次元位置を全自動で計測するアルゴリズムである。基本的には、総ての方向を1回は撮影するようにビデオカメラ2のパン方向とチルト方向を一定の角度間隔で回転させ、その際に、前述したビデオカメラを用いてマーカの位置を計測するアルゴリズムを用いてマーカ9の3次元位置を計測することにより、環境内に存在するビデオカメラ2で撮影可能な総てのマーカ9の3次元位置を計測し、その後、前述した1つのマーカの位置を自動的に計測するアルゴリズムを用いて個々のマーカ9の正確な3次元位置を計測するようにする。しかし、最初に総ての方向を撮影するときのビデオカメラ2の焦点距離をどのように設定するかが問題になる。すなわち、短い焦点距離で撮影すると、ビデオカメラ2から遠い位置にあるマーカ9を撮影するときにカメラ画像上でのマーカ画像の大きさが極めて小さくなり、マーカとして認識することができなくなる。一方、長い焦点距離で撮影すると、ビデオカメラ2から近い位置にあるマーカ9を撮影するときにカメラ画像上でのマーカ画像の大きさが極めて大きくなり、ビデオカメラ2の視野からマーカ画像がはみ出し、マーカとして認識することができなくなる可能性がある。従って、ビデオカメラ2から様々な距離に配置された多数のマーカの総てを一種類の焦点距離に設定したビデオカメラ2で撮影して認識することは困難である。しかし、様々な距離に存在する多数のマーカをビデオカメラ2で撮影して計測するためには、ビデオカメラ2の焦点距離を何段階かに変化させて繰り返し撮影することが必要となるが、ビデオカメラ2で制御可能な総ての焦点距離について総ての方向を繰り返し撮影するには長時間を要することになるので実用的ではない。そこで、この実施例では、焦点距離をビデオカメラ2で設定可能な最も短い値に設定して総ての方向について行う撮影と、その2倍及び3倍の焦点距離に設定して総ての方向について行う撮影によってマーカのカメラ画像を得るようにした。
【0089】
ステップS50601
ビデオカメラ2の焦点距離を設定可能な最も短い値に設定して総ての方向について撮影して取得した画像データを記憶する。
【0090】
ステップS50602
ビデオカメラ2の焦点距離を設定可能な最も短い値の2倍に設定して総ての方向について撮影して取得した画像データを記憶する。
【0091】
ステップS50603
ビデオカメラ2の焦点距離を設定可能な最も短い値の3倍に設定して総ての方向について撮影して取得した画像データを記憶する。
【0092】
ステップS50604
各記憶画像の総てのマーカ画像を認識する。
【0093】
ステップS50605
認識した総てのマーカの3次元位置を計測する。
【0094】
図11を参照して、制御用コンピュータ5によって前述したアルゴリズムを実現するために実行する制御プログラムによるインターフェース画面5100について説明する。
【0095】
このインターフェース画面5100は、制御用コンピュータ5の制御プログラムが起動すると該制御プログラムによってディスプレイ51に表示するものであり、カメラ画像表示インターフェース5110とマーカ位置自動計測インターフェース5120とカメラ制御インターフェース5130とレーザ距離計測器制御インターフェース5140とマーカ計測状態表示インターフェース5150と手動マーカ位置計測インターフェース5160とシステム動作記録インターフェース5170その他のインターフェース5180とを備える。
【0096】
カメラ画像表示インターフェース5110は、ビデオカメラ2のキャプチャ映像を表示するインターフェースであり、MAMSが処理している映像をユーザが見ることができるようにする。システムが円形マーカを認識しているときには、認識したマーカの輪郭を緑色の線で描くと共にマーカの中心にマーカの番号を表示する。
【0097】
マーカ位置自動計測インターフェース5120は、MAMSのマーカ自動計測機能を駆動するために操作するボタン等を表示するインターフェースであり、「全自動」ボタン5121、「全自動(距離1m程度)」ボタン5122、「全自動(距離3m程度)」ボタン5123、「全自動(距離5m程度)」ボタ5124、「選択中のマーカ」ボタン5125、「現在撮影中のマーカ」ボタン5126、「予定■付きのマーカ」ボタン5127、「自動計測中止」ボタン5128を備える。
【0098】
「全自動」ボタン5121は、MAMSの周りの環境(機器)に貼り付けられた総ての円形マーカの3次元位置を自動的に計測することを指示するボタンである。具体的には、前述した各種のアルゴリズムを実現する制御プログラムを実行することにより、ビデオカメラ2の焦点距離を最短値(例えば7.0mm)に設定し、ビデオカメラ2のパン方向とチルト方向を一定間隔で変化させながら環境を撮影してマーカを認識し、その後、焦点距離を2倍(14.0mm)、3倍(21.0mm)に設定して同様の撮影とマーカ認識を繰り返し、認識したマーカの3次元位置をレーザ距離計測器1により自動的に計測する処理の実行を指示する。この機能を実現する処理の実行中は「全自動」ボタン5121の表示色を赤色に制御する。
【0099】
「全自動(距離1m程度)」ボタン5122は、MAMSから1m程度離れた位置に貼り付けられた円形マーカの3次元位置を自動的に計測することを指示するボタンである。具体的には、前述した各種のアルゴリズムを実現する制御プログラムを実行することにより、ビデオカメラ2の焦点距離を最短値(例えば7.0mm)に設定し、ビデオカメラ2のパン方向とチルト方向を一定間隔で変化させながら環境を撮影してマーカを認識し、その後、認識したマーカの3次元位置をレーザ距離計測器1により自動的に計測する処理の実行を指示する。この機能を実現する処理の実行中は「全自動(距離1m程度)」ボタン5122の表示色を赤色に制御する。
【0100】
「全自動(距離3m程度)」ボタン5123は、MAMSから3m程度離れた位置に貼り付けられた円形マーカの3次元位置を自動的に計測することを指示するボタンである。具体的には、前述した各種のアルゴリズムを実現する制御プログラムを実行することにより、ビデオカメラ2の焦点距離を最短値の2倍(例えば14.0mm)に設定し、ビデオカメラ2のパン方向とチルト方向を一定間隔で変化させながら環境を撮影してマーカを認識し、その後、認識したマーカの3次元位置をレーザ距離計測器1により自動的に計測する処理の実行を指示する。この機能を実現する処理の実行中は「全自動(距離3m程度)」ボタン5123の表示色を赤色に制御する。
【0101】
「全自動(距離5m程度)」ボタ5124は、MAMSから5m程度離れた位置に貼り付けられた円形マーカの3次元位置を自動的に計測することを指示するボタンである。具体的には、前述したアルゴリズムを実現する制御プログラムを実行することにより、ビデオカメラ2の焦点距離を最短値の3倍(例えば21.0mm)に設定し、ビデオカメラ2のパン方向とチルト方法を一定間隔で変化させながら環境を撮影してマーカを認識し、その後、認識したマーカの3次元位置をレーザ距離計測器1により自動的に計測する処理の実行を指示する。この機能を実現する処理の実行中は「全自動(距離5m程度)」ボタン5124の表示色を赤色に制御する。
【0102】
「選択中のマーカ」ボタン5125は、後述するマーカ計測状態表示インターフェース5150内のマーカリストで選択中のマーカの3次元位置を自動的にレーザ距離計測器で計測するアルゴリズムを実現する制御プログラムの実行を指示するボタンである。この機能を使用するには、マーカが画面に映っている必要はないが、MAMSが過去にマーカを認識し、後述するマーカリストの「認識」項目に「■」印が付いていることが必要である。この機能を実現する処理の実行中は「選択中のマーカ」ボタン5125の表示色を赤色に制御する。
【0103】
「現在撮影中のマーカ」ボタン5126は、ビデオカメラ2で現在撮影して認識されている総てのマーカの3次元位置を自動的にレーザ距離計測器で計測するアルゴリズムを実現する制御プログラムの実行を指示するボタンである。この機能を実現する処理の実行中は「現在撮影中のマーカ」ボタン5126の表示色を赤色に制御する。
【0104】
「予定■付きのマーカ」ボタン5127は、後述するマーカ計測状態表示インターフェース5150内のマーカリストの「予定」項目に「■」印が付いている総てのマーカの3次元位置をレーザ距離計測器で計測するアルゴリズムを実現する制御プログラムの実行を指示するボタンである。この機能を実現する処理の実行中は「予定■付きのマーカ」ボタン5127の表示色を赤色に制御する。
【0105】
「自動計測中止」ボタン5128は、前述した7つのボタンにより指示されて実行中の自動計測処理を中止することを指示するボタンである。
【0106】
カメラ制御インターフェース5130は、ビデオカメラ2の向きや焦点距離を手動で変更するときに使用するボタン等を表示するインターフェースであり、カメラパン制御スライドバー5131、カメラチルト制御スライドバー5132、カメラ焦点距離制御スライドバー5133、アングルマップ5134、「カメラ初期化」ボタン5135を備える。
【0107】
カメラパン制御スライドバー5131は、ビデオカメラ2の向きを左右方向に回転させることを指示するスライドバーである。
【0108】
カメラチルト制御スライドバー5132は、ビデオカメラ2の向きを上下方向に回転させることを指示するスライドバーである。
【0109】
カメラ焦点距離制御スライドバー5133は、ビデオカメラ2の焦点距離(ズーム)を変えることを指示するスライドバーである。
【0110】
アングルマップ5134は、ビデオカメラ2が現在撮影している範囲を朱枠で表示する機能と、アングルマップ上の点をクリックすることによりビデオカメラ2の撮影範囲の中心方向をクリックされた点に対応する方向に移動させることを指示する機能を有する。
【0111】
「カメラ初期化」ボタン5135は、ビデオカメラ2のシャッタースピード、焦点距離、向きをシステム起動時の状態に戻すことを指示するボタンである。
【0112】
レーザ距離計測器制御インターフェース5140は、レーザ距離計測器の向きを手動で変更するときに使用するボタン等を表示するインターフェースであり、レーザパン制御スライドバー5141、レーザチルト制御スライドバー5142、「レーザ初期化」ボタン5143、「レーザ照射ON」ボタン5144、「レーザ照射OFF」ボタン5145を備える。
【0113】
レーザパン制御スライドバー5141は、レーザ距離計測器1の向きを左右に回転させることを指示するスライドバーである。
【0114】
レーザチルト制御スライドバー5142は、レーザ距離計測器1の向きを上下に回転させることを指示するスライドバーである。
【0115】
「レーザ初期化」ボタン5143は、レーザ距離計測器1の向きをシステム起動時の状態に戻すことを指示するボタンである。
【0116】
「レーザ照射ON」ボタン5144は、レーザ距離計測器1からレーザ照射を行うことを指示するボタンである。
【0117】
「レーザ照射OFF」ボタン5145は、レーザ距離計測器1からのリーザ照射を停止することを指示するボタンである。
【0118】
マーカ計測状態表示インターフェース5150は、マーカの詳細情報(位置の計測結果やMAMSがマーカの存在を認識しているか等)を表示するインターフェースであり、マーカ計測状態一覧表5151、「選択中のマーカの情報削除」ボタン5152、「結果をファイルに保存」ボタン5153、計測結果表示モード切替ラジオボタン5154、認識済マーカ総数表示欄5155、計測予定マーカ総数表示欄5156、計測済マーカ総数表示欄5157を備える。
【0119】
マーカ計測状態一覧表5151は、円形マーカの個々の計測状態を一覧で表示する表であり、個々のマーカ毎に、「No.」,「認識」,「確定」,「予定」,「X,Y,Z」の項目を表示する。
【0120】
「No.」は、各行の情報がどの番号のマーカの情報であるかを示す。
【0121】
「認識」は、システムが該当するマーカを認識しているか否かを示す。「■」印が表示されていれば、そのマーカが環境に存在しており、システムが既に認識していることを示す。ただし、該当するマーカの3次元位置が既に計測されているとは限らず、「■」をクリックすることにより認識の状態を外すことを指示し、また、過去に認識の状態になったことがあるときのみ、同じ場所をクリックすることにより認識の状態に戻すことを指示することができる。
【0122】
「確定」は、システムが該当するマーカの3次元位置をレーザ距離計測器1を使って既に計測したか否かを示す。「■」印が表示されていれば、そのマーカの3次元位置は既に計測されて確定している。この場合、自動計測機能を機能させてもそのマーカの3次元位置は計測されない。「■」をクリックすることにより確定の状態を外すことを指示し、また、過去に確定の状態になったことがあるときのみ、同じ場所をクリックすることにより確定の状態に戻すことを指示することができる。
【0123】
「予定」は、システムが該当するマーカを今後計測する予定があるか否かを示す。「■」印が表示されていれば、そのマーカの3次元位置をこれから計測する予定である。「■」をクリックすることにより予定の状態を外すことを指示し、また、マーカが認識の状態にあるときのみ、同じ場所をクリックすることにより予定の状態に戻すことを指示することができる。
【0124】
「X,Y,Z」は、該当のマーカの3次元位置の計測結果を示す。この表示は、「計測結果表示モード切替」ラジオボタンによる指示入力により、世界座標系を基準に表示するモードと電動雲台座標系を基準に表示するモードの何れかにより表示する。該当するマーカの3次元位置が計測されていないときにはこの項目には何も表示されない。
【0125】
「選択中のマーカの情報削除」ボタン5152は、マーカの計測状態一覧表5151で選択されているマーカの総ての情報の削除を指示するボタンである。
【0126】
「結果をファイルに保存」ボタン5153は、ファイル名と保存先を入力するダイアログを表示させ、計測結果をテキストファイルに保存することを指示するボタンである。
【0127】
計測結果表示モード切替ラジオボタン5154は、マーカの計測状態一覧表5151におけるマーカの3次元計測結果を、世界座標系を基準にした表示モードと電動雲台座標系を基準にした表示モードの何れのモードで表示するかを切り替え指示するボタンである。ただし、世界座標系を基準とする表示モードは、システムが1番から3番までのマーカの3次元位置の計測が終了しているときにのみ選択可能となる。
【0128】
認識済マーカ総数表示欄5155は、システムが環境に存在すると現在認識しているマーカの総数を表示する。この数は、マーカの計測状態一覧表5151の「認識」の項目に「■」印が付いているマーカの総数に相当する。
【0129】
計測予定マーカ総数表示欄5156は、システムが今後計測する予定のマーカの総数を表示する。この数は、マーカの計測状態一覧表5151における「予定」の項目に「■」印が付いているマーカの総数に相当する。
【0130】
計測済マーカ総数表示欄5157は、システムが既にレーザ距離計測器1を用いて3次元位置を計測済みのマーカの総数を表示する。この数は、マーカの計測状態一覧表5151における「確定」の項目に「■」印が付いているマーカの総数に相当する。
【0131】
手動マーカ位置計測インターフェース5160は、MAMSの自動機能ではマーカの3次元位置を計測することができないときに、手動でマーカの3次元位置を計測するために使用する機能を表示するインターフェースであり、「照射位置を計測」ボタン5161、「選択中のマーカの位置として設定」ボタン5162、計測結果表示欄5163を備える。
【0132】
「照射位置を計測」ボタン5161は、レーザ距離計測器1の向きを固定したままで該レーザ距離計測器1を作動させ、レーザ照射位置とレーザ距離計測器1の間の距離を計測することを指示するボタンである。
【0133】
「選択中のマーカの位置として設定」ボタン5162は、「照射位置を計測」ボタン5161による指示入力に基づいて得られる結果を、マーカの計測状態一覧表5151で現在選択されているマーカの3次元位置の計測結果として設定することを指示するボタンである。
【0134】
計測結果表示欄5163は、「照射位置を計測」ボタン5161による指示入力に基づいて得られた計測結果を表示する欄である。
【0135】
システム動作記録インターフェース5170は、システムの動作ログを表示し、ユーザがシステムの現在の動作状態や過去の動作の履歴を確認することができるようにするインターフェースであり、システムの動作の記録を時間と共にテキストで表示する。
【0136】
その他のインターフェース5180は、「システムの初期化」ボタン5181と計測開始からの経過時間表示欄5182を備える。
【0137】
「システムの初期化」ボタン5181は、レーザ距離計測器1、ビデオカメラ2、電動雲台3,4の総てをシステム起動時の状態に戻し、マーカの計測状態一覧表5151で表示しているマーカの計測結果や現在の状態等の情報の総てを削除することを指示するボタンである。
【0138】
計測開始からの経過時間表示欄5182は、マーカの3次元位置の自動計測を開始してからの経過時間を表示する欄である。
【0139】
MAMSを用いてマーカの3次元位置を計測する方法には、次の3つの計測方法がある。
(1)環境に貼り付けられた総てのマーカを自動的に計測する方法
(2)MAMSからある範囲の距離だけ離れた限定された範囲のマーカを自動的に計測する方法
(3)個々のマーカを半自動的に計測する方法
環境に貼り付けられた総てのマーカを自動的に計測する方法について、図12を参照して説明する。
【0140】
まず、計測準備作業として、ユーザは、1番のマーカと、2番から4番のマーカの少なくとも2つマーカの計3つのマーカをそれぞれ、世界座標系の原点、X軸上の点、Y軸上の点に貼り付け、その他のマーカをトラッキングを実行するのに必要な個所に貼り付ける。そして、貼り付けたマーカの総てが見渡せる場所にMAMSを設置し、MAMS(制御用コンピュータ5の制御プログラム)を起動操作する。
【0141】
ステップS50701
制御用コンピュータ5は、ディスプレイ51にインターフェース画面5100(図11) (3.3)を表示する。
ステップS50702
マーカ位置自動計測インターフェース5120における「全自動」ボタン5121による指示入力を確認すると、前述した総てのマーカの位置を自動的に計測するアルゴリズムを実現するプログラムを起動して全自動計測を開始する。
ステップS50703
ビデオカメラ2の焦点距離を制御することにより近・中・遠の位置にある総てのマーカ9を撮影して認識する。
【0142】
ステップS50704
認識したマーカの3次元位置を計測する。
【0143】
ステップS50705
認識した総てのマーカの位置の計測を終了すると、ベルを鳴らしてその旨を報知する。
【0144】
ステップS50706
「結果をファイルに保存」ボタン5153による指示入力を確認すると、ファイル名と保存先を入力するダイアログを表示して入力させ、計測結果をテキストファイルに保存して自動計測を終了する。
【0145】
その後、ユーザは、MAMSを撤去して計測作業を終了する。
【0146】
MAMSからある範囲の距離だけ離れた限定された範囲のマーカ9を自動的に計測する方法について説明する。
【0147】
この方法は、基本的には、前述した総てのマーカを自動的に計測する方法を実現する手順と同じであるが、インターフェース画面5100のマーカ位置自動計測インターフェース5120からの指示入力が、「全自動(距離1m程度)」ボタン5122、「全自動(距離3m程度)」ボタン5123、「全自動(距離5m程度)」ボタン5124の何れかのボタンからの指示入力に応じて実行する。
【0148】
従って、ユーザは、計測するマーカがMAMSからどの程度は離れているかを判断して前記「全自動(距離1m程度)」ボタン5122、「全自動(距離3m程度)」ボタン5123、「全自動(距離5m程度)」ボタ5124を選択して指示入力する。
【0149】
この計測の指示入力を確認すると、前述した総てのマーカの位置を自動的に計測するアルゴリズムを実現するプログラムを起動し、入力されたボタン(「全自動(距離1m程度)」ボタン5122,「全自動(距離3m程度)」ボタン5123,「全自動(距離5m程度)」ボタ5124)に対応するようにビデオカメラ2の焦点距離を制御(近・中・遠の何れかに設定)して相応するマーカを撮影して認識し、3次元位置を計測し、保存する処理を実行する。
【0150】
個々のマーカを半自動的に計測する方法について説明する。
【0151】
この計測方法は、新たに追加したマーカ9を測定するときに追加計測するマーカ9を個々に指定して計測するのに有用である。
【0152】
この計測方法は、マーカ位置自動計測インターフェース5120における「選択中のマーカ」ボタン5125,「現在撮影中のマーカ」ボタン5126,「予定■付きのマーカ」ボタン5127による指示入力または手動マーカ位置計測インターフェース5160による指示入力により実行する。
【0153】
「選択中のマーカ」ボタンによる指示入力に基づいて実行する計測方法は、
マーカの計測状態一覧表5151において、「認識」に「■」印が付いているマーカに限って実行可能である。この方法では、マーカの計測状態一覧表5151から追加で計測したいマーカを選択して特定した後に、「選択中のマーカ」ボタン5125から指示入力することにより、ビデオカメラ2を自動的に当該マーカ9を撮影・認識することができる方向と焦点距離に調整し、1つのマーカの位置を自動的に計測するアルゴリズムを実現するプログラムを実行して3次元位置を自動的に計測する。
【0154】
「現在撮影中のマーカ」ボタンによる指示入力に基づいて実行する計測方法は、
ユーザが、カメラ制御インターフェース5130を用いて追加計測したいマーカ9をシステムが認識している状態に操作した後に、「現在撮影中のマーカ」ボタン5126により指示入力することにより、カメラに写っている個々のマーカに対して、1つのマーカの位置を自動的に計測するアルゴリズムを実現するプログラムを実行してビデオカメラ2で撮影して認識している総てのマーカの3次元位置を自動的に計測する。
【0155】
「予定■付きのマーカ」ボタンによる指示入力に基づいて実行する計測方法は、
ユーザが、マーカの計測状態一覧表5151において、追加で計測するマーカ9の「予定」の項目を「■」印を付けた状態に操作した後に、「予定■付きのマーカ」ボタン5127により指示入力することにより、「■」印を付けた個々のマーカに対して、1つのマーカの位置を自動的に計測するアルゴリズムを実現するプログラムを実行して計測を実現する。この方法では、マーカの計測状態一覧表5151における「予定」の項目に「■」印が付いている総てのマーカ9を自動計測する。
【0156】
手動マーカ位置計測インターフェース5160による指示に基づく計測方法は、レーザ距離計測器1、ビデオカメラ2、電動雲台3,4を総て手動操作で制御し、マーカの3次元位置を計測する。レーザ距離計測器1を制御する手動マーカ位置計測インターフェイス5160を使用してレーザの照射位置をマーカの中心に移動させた後、レーザ距離計測器を用いてマーカの位置を計測するアルゴリズムを実現するプログラムを実行することにより行う。
【0157】
この計測方法の手順を図13を参照して説明する。
【0158】
まず、計測準備作業として、ユーザは、1番のマーカと、2番から4番のマーカの少なくとも2つのマーカの計3つのマーカ9をそれぞれ、世界座標系の原点、X軸上の点、Y軸上の点に貼り付け、その他のマーカ9をトラッキングを実行するのに必要な個所に貼り付ける。そして、貼り付けたマーカ9の総てが見渡せる場所にMAMSを設置し、MAMS(制御用コンピュータ5の制御プログラム)を起動操作する。
【0159】
ステップS50801
制御用コンピュータ5は、ディスプレイ51にインターフェース画面5100(図11)を表示する。
【0160】
ステップS50802
インターフェース画面5100のレーザ距離計測器制御インターフェース5140における「レーザ照射ON」ボタン5144から指示入力を確認し、この指示入力に基づいてレーザ距離計測器1によるレーザ照射をONする。
【0161】
ステップS50803
レーザ照射位置をマーカの中心に合わせる。この制御は、ユーザがインターフェース画面5100におけるアングルマップ5134やカメラ画像表示インターフェース5110、実際のレーザ照射位置等を見ながらレーザ距離計測器制御インターフェース5140を操作して入力する指示に基づいて距離計測器1を追加計測するマーカ9に向けるようにして行う。
【0162】
ステップS50804
「照射位置を計測」ボタン5161からの指示入力に基づいて計測対象マーカの3次元位置を計測し、計測結果表示欄5163に表示して位置データをユーザに確認させる。
【0163】
ステップS50805
ユーザがマーカの計測状態一覧表5151から追加で計測したマーカを選択し、「選択中のマーカの位置として設定」ボタン5162を操作して指示入力すると、この指示入力に基づいて、計測結果を一覧表に追加して表示する。
【0164】
ステップS50806
「結果をファイルに保存」ボタン5153からの指示入力に基づいて結果を保存する。
【図面の簡単な説明】
【0165】
【図1】本発明のマーカ位置計測システムの一実施例を示す外観図である。
【図2】本発明の実施例におけるマーカ位置計測で使用するマーカの平面図である。
【図3】本発明の実施例において実行するマーカの3次元位置計測のための作業手順を示すフローチャートである。
【図4】本発明の一実施例において実行するマーカ認識アルゴリズムのフローチャートである。
【図5】本発明の一実施例において実行するビデオカメラを用いてマーカの位置を計測するアルゴリズムのフローチャートである。
【図6】ビデオカメラとマーカの位置関係を説明するための模式図である。
【図7】本発明の一実施例において実行するレーザ距離計測器を用いてマーカの位置を計測するアルゴリズムのフローチャートである。
【図8】本発明の一実施例で実行するマーカの位置を世界座標系に変換するアルゴリズムのフローチャートである。
【図9a】本発明の一実施例で実行する1つのマーカの位置を自動的に計測するアルゴリズムの一部を示すフローチャートである。
【図9b】本発明の一実施例で実行する1つのマーカの位置を自動的に計測するアルゴリズムの他の一部を示すフローチャートである。
【図10】本発明の一実施例において実行する総てのマーカの位置を自動的に計測するアルゴリズムのフローチャートである。
【図11】本発明の一実施例において制御用コンピュータによってアルゴリズムを実現するために実行する制御プログラムによるインターフェース画面である。
【図12】本発明の一実施例において実行する環境に貼り付けられた総てのマーカを自動的に計測する方法のフローチャートである。
【図13】本発明の一実施例において実行する手動マーカ位置計測インターフェースによる指示に基づく計測方法の手順を示すフローチャートである。
【符号の説明】
【0166】
1…レーザ距離計測器、2…電動ズーム機能付きビデオカメラ、3,4…電動雲台、5…制御用コンピュータ、6…三脚、7…USBシリアル変換ケーブル、8…環境(機器)、9…マーカ。
図面
【図1】
0
【図2】
1
【図3】
2
【図4】
3
【図5】
4
【図6】
5
【図7】
6
【図8】
7
【図9a】
8
【図9b】
9
【図10】
10
【図11】
11
【図12】
12
【図13】
13