(57)【特許請求の範囲】
【請求項１】
回転軸を中心にパン方向に回転する駆動装置と、
前記回転軸に対してチルト軸が垂直となるように前記駆動装置に取り付けられて前記回転軸を中心として円軌道に沿って移動される状態で、前記チルト軸を中心に回転する光学系により、前記チルト軸を中心に回転する方向であるチルト方向に走査しながらレーザを物体に向けて照射して自装置から前記物体までの距離を測定する測定装置と、
前記回転軸に対する前記チルト方向の回転角であるチルト角が０度のときのレーザを照射する方向の前記回転軸に対する角度を示す前記測定装置のチルト傾斜角、および／または、前記回転軸に垂直な面に対する前記チルト軸の角度を示す前記測定装置のロール傾斜角を表す補正パラメータを含み、前記測定装置により測定される距離と測距方向から計測点の３次元座標を導出する計測モデルを用いて、前記測定装置がレーザを照射する範囲のうち、前記回転軸に対する前記チルト方向の回転角であるチルト角が、０〜１８０度の有効範囲または１８０〜３６０度の冗長範囲のいずれか一方の範囲を用いて距離が測定された各点の３次元座標を算出し、
前記一方の範囲を用いて前記各点の距離が測定されたときの測距方向に基づいて、前記有効範囲または前記冗長範囲のうちの他方の範囲を用いて前記各点の距離が測定されたときの測距方向を推定し、
推定した前記測距方向に基づいて、前記計測モデルを用いて、前記他方の範囲を用いて距離が測定された前記各点の３次元座標を算出し、
前記一方の範囲を用いて距離が測定された前記各点の３次元座標と、前記他方の範囲を用いて距離が測定された前記各点の３次元座標との差を最小化するように、前記補正パラメータの値を算出する制御装置と、
を有することを特徴とする情報処理装置。
【請求項２】
前記制御装置は、
算出した前記補正パラメータの値に基づいて、前記計測モデルを用いて、前記有効範囲を用いて距離が測定された各点の３次元座標を含む３次元モデルを生成し、
生成した前記３次元モデルを出力する、ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
回転軸を中心にパン方向に回転する駆動装置と、前記回転軸に対してチルト軸が垂直となるように前記駆動装置に取り付けられて前記回転軸を中心として円軌道に沿って移動される状態で、前記チルト軸を中心に回転する光学系により、前記チルト軸を中心に回転する方向であるチルト方向に走査しながらレーザを物体に向けて照射して自装置から前記物体までの距離を測定する測定装置と、を有する情報処理装置のコンピュータが、
前記回転軸に対する前記チルト方向の回転角であるチルト角が０度のときのレーザを照射する方向の前記回転軸に対する角度を示す前記測定装置のチルト傾斜角、および／または、前記回転軸に垂直な面に対する前記チルト軸の角度を示す前記測定装置のロール傾斜角を表す補正パラメータを含み、前記測定装置により測定される距離と測距方向から計測点の３次元座標を導出する計測モデルを用いて、前記測定装置がレーザを照射する範囲のうち、前記回転軸に対する前記チルト方向の回転角であるチルト角が、０〜１８０度の有効範囲または１８０〜３６０度の冗長範囲のいずれか一方の範囲を用いて距離が測定された各点の３次元座標を算出し、
前記一方の範囲を用いて前記各点の距離が測定されたときの測距方向に基づいて、前記有効範囲または前記冗長範囲のうちの他方の範囲を用いて前記各点の距離が測定されたときの測距方向を推定し、
推定した前記測距方向に基づいて、前記計測モデルを用いて、前記他方の範囲を用いて距離が測定された前記各点の３次元座標を算出し、
前記一方の範囲を用いて距離が測定された前記各点の３次元座標と、前記他方の範囲を用いて距離が測定された前記各点の３次元座標との差を最小化するように、前記補正パラメータの値を算出する、
処理を実行することを特徴とするキャリブレーション方法。
【請求項４】
回転軸を中心にパン方向に回転する駆動装置と、前記回転軸に対してチルト軸が垂直となるように前記駆動装置に取り付けられて前記回転軸を中心として円軌道に沿って移動される状態で、前記チルト軸を中心に回転する光学系により、前記チルト軸を中心に回転する方向であるチルト方向に走査しながらレーザを物体に向けて照射して自装置から前記物体までの距離を測定する測定装置と、を有する情報処理装置のコンピュータに、
前記回転軸に対する前記チルト方向の回転角であるチルト角が０度のときのレーザを照射する方向の前記回転軸に対する角度を示す前記測定装置のチルト傾斜角、および／または、前記回転軸に垂直な面に対する前記チルト軸の角度を示す前記測定装置のロール傾斜角を表す補正パラメータを含み、前記測定装置により測定される距離と測距方向から計測点の３次元座標を導出する計測モデルを用いて、前記測定装置がレーザを照射する範囲のうち、前記回転軸に対する前記チルト方向の回転角であるチルト角が、０〜１８０度の有効範囲または１８０〜３６０度の冗長範囲のいずれか一方の範囲を用いて距離が測定された各点の３次元座標を算出し、
前記一方の範囲を用いて前記各点の距離が測定されたときの測距方向に基づいて、前記有効範囲または前記冗長範囲のうちの他方の範囲を用いて前記各点の距離が測定されたときの測距方向を推定し、
推定した前記測距方向に基づいて、前記計測モデルを用いて、前記他方の範囲を用いて距離が測定された前記各点の３次元座標を算出し、
前記一方の範囲を用いて距離が測定された前記各点の３次元座標と、前記他方の範囲を用いて距離が測定された前記各点の３次元座標との差を最小化するように、前記補正パラメータの値を算出する、
処理を実行させることを特徴とするキャリブレーションプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、キャリブレーション方法、およびキャリブレーションプログラムに関する。
【背景技術】
【０００２】
従来、物体に向けてレーザを照射し、反射光が返ってくるまでの時間を測定することにより、物体までの距離を計測するセンサがある。また、センサ内で光学系を回転させて水平方向のスキャニングを行いながら物体までの距離を計測する、いわゆる２Ｄ（２次元：２−Ｄｉｍｅｎｓｉｏｎｓ）センサがある。
【０００３】
先行技術としては、例えば、レーザレンジファインダのペアから共通に観測される対象物の位置の誤差が最小となるように、センサネットワーク座標系での各レーザレンジファインダの位置および向きを校正する技術がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１２７６６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術では、２Ｄセンサを駆動装置により回転させて３Ｄ計測を行おうとすると、２Ｄセンサを駆動装置に取り付ける際の組み立て誤差により、２Ｄセンサが正規姿勢から傾斜して計測誤差が発生してしまう場合がある。具体的には、２Ｄセンサが正規姿勢から傾斜していると計測空間に歪みが生じる。このため、２Ｄセンサの正規姿勢からの傾斜を校正することになるが、どの方向にどの程度傾斜しているのかを人手で判断することが難しく、校正作業に時間や手間がかかる。
【０００６】
一つの側面では、本発明は、測定装置の正規姿勢からの傾斜角を算出することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様によれば、回転軸を中心にパン方向に回転する駆動装置と、前記駆動装置に取り付けられて前記回転軸を中心として円軌道に沿って移動される状態で、前記パン方向に垂直なチルト方向に走査しながら光を物体に向けて照射して自装置から前記物体までの距離を測定する測定装置と、を有する情報処理装置が、前記測定装置の傾斜角を表す補正パラメータを含み、前記測定装置により測定される距離と測距方向から計測点の３次元座標を導出する計測モデルを用いて、前記測定装置が光を照射する範囲のうちの前記チルト方向に０〜１８０度の有効範囲または前記チルト方向に１８０〜３６０度の冗長範囲のいずれか一方の範囲を用いて距離が測定された各点の３次元座標を算出し、前記一方の範囲を用いて前記各点の距離が測定されたときの測距方向に基づいて、前記有効範囲または前記冗長範囲のうちの他方の範囲を用いて前記各点の距離が測定されたときの測距方向を推定し、推定した前記測距方向に基づいて、前記計測モデルを用いて、前記他方の範囲を用いて距離が測定された前記各点の３次元座標を算出し、前記一方の範囲を用いて距離が測定された前記各点の３次元座標と、前記他方の範囲を用いて距離が測定された前記各点の３次元座標との差を最小化するように、前記補正パラメータの値を算出する情報処理装置、キャリブレーション方法、およびキャリブレーションプログラムが提案される。
【発明の効果】
【０００８】
本発明の一側面によれば、測定装置の正規姿勢からの傾斜角を算出することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施の形態にかかる情報処理装置１００の一実施例を示す説明図である。
【図２】図２は、測定装置１０２の傾斜角を示す説明図である。
【図３】図３は、測定装置１０２が正規姿勢から傾斜している場合の計測誤差を示す説明図である。
【図４】図４は、情報処理装置１００のキャリブレーション方法の一実施例を示す説明図である。
【図５】図５は、情報処理装置１００のハードウェア構成例を示すブロック図である。
【図６】図６は、情報処理装置１００の機能的構成例を示すブロック図である。
【図７】図７は、センサ座標系および世界座標系を示す説明図である。
【図８】図８は、測距方向（θ’h，θ’v）の推定方法を示す説明図である。
【図９】図９は、補正パラメータｐの探索例を示す説明図である。
【図１０】図１０は、情報処理装置１００のキャリブレーション処理手順の一例を示すフローチャート（その１）である。
【図１１】図１１は、情報処理装置１００のキャリブレーション処理手順の一例を示すフローチャート（その２）である。
【図１２】図１２は、モデル生成処理の具体的処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下に図面を参照して、本発明にかかる情報処理装置、キャリブレーション方法、およびキャリブレーションプログラムの実施の形態を詳細に説明する。
【００１１】
（実施の形態）
図１は、実施の形態にかかる情報処理装置１００の一実施例を示す説明図である。図１において、情報処理装置１００は、駆動装置１０１と、測定装置１０２と、制御装置１０３と、を有する。駆動装置１０１は、回転軸１１０（図１中、Ｚ軸に対応）を中心にパン方向ｄ１に回転するモータである。
【００１２】
以下の説明では、パン方向ｄ１の回転角（図１中、Ｘ軸に対する角度）を「回転角θh（θh＝０〜３６０°（度））」と表記する場合がある。ただし、駆動装置１０１が初期位置のときの正面方向とＸ軸方向とが一致しているものとする。
【００１３】
測定装置１０２は、チルト方向ｄ２に走査しながら光（例えば、レーザ）を物体に向けて照射し、反射光を受光するまでの時間を用いて自装置から物体までの距離を測定する２Ｄセンサである。チルト方向ｄ２は、チルト軸１２０を中心に回転する方向である。すなわち、測定装置１０２は、チルト軸１２０を中心に光学系（例えば、後述の図５に示す発光部５１１、受光部５１２等）を回転させながら、図１中の太線矢印で示す方向（照射方向）に光を照射する。
【００１４】
情報処理装置１００において、測定装置１０２は、パン方向ｄ１に対してチルト方向ｄ２が垂直となるように駆動装置１０１に取り付けられる。そして、測定装置１０２は、回転軸１１０を中心として円軌道に沿って移動される状態で、チルト方向ｄ２に走査しながら光（以下、「レーザ」という）を物体に向けて照射して物体までの距離を測定する。
【００１５】
この際、測定装置１０２は、チルト方向ｄ２に「０〜２２５°（０°以上２２５°未満）、３１５〜３６０°」の範囲でレーザを照射する。チルト方向ｄ２に「２２５〜３１５°」の範囲は、レーザを照射しない死角部分となる。ただし、チルト方向ｄ２に「１８０〜３６０°」の範囲のうち、どの範囲にレーザを照射するかは任意に設定可能であり、例えば、チルト方向ｄ２に「１８０〜３６０°」の範囲にレーザを照射することにしてもよい（死角部分なし）。
【００１６】
より詳細に説明すると、例えば、測定装置１０２は、チルト方向ｄ２に「０〜２２５°、３１５〜３６０°」の範囲を１０８０分割して、１周当たり２５［ｍｓｅｃ］で１０８０点の計測を行う。測定装置１０２は、駆動装置１０１によってパン方向ｄ１に、０°から３６０°まで０．２４°ずつ移動される度に、この計測を行う。
【００１７】
これにより、２Ｄセンサである測定装置１０２を利用して３Ｄ計測を行うことができる。３Ｄ計測とは、立体的なものの位置や形状をデータ化することである。３Ｄ計測によって得られるデータ（３次元モデル）は、例えば、各種シミュレーションやＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）などのアプリケーションに利用することができる。
【００１８】
制御装置１０３は、測定装置１０２の正規姿勢からのズレ（傾斜）を解析するコンピュータである。測定装置１０２の正規姿勢からのズレは、測定装置１０２を駆動装置１０１に取り付ける際の組み立て誤差（あるいは、経年劣化）により生じるものであり、例えば、図２に示すような、測定装置１０２の傾斜角（チルト傾斜角φt、ロール傾斜角φr）によって表される。
【００１９】
図２は、測定装置１０２の傾斜角を示す説明図である。図２において、チルト傾斜角φtは、チルト角θvが０°のときのレーザを照射する方向の回転軸１１０に対する角度を表す。チルト角θvは、回転軸１１０に対するチルト方向ｄ２の角度である。すなわち、測定装置１０２の正規姿勢からのズレがなければ、チルト傾斜角φtは０°となる。
【００２０】
また、ロール傾斜角φrは、回転軸１１０に垂直な面に対するチルト軸１２０の角度を表す。すなわち、測定装置１０２の正規姿勢からのズレがなければ、ロール傾斜角φrは０°となる。ところが、測定装置１０２を駆動装置１０１により回転させて３Ｄ計測を行う場合、図２に示したように、測定装置１０２が正規姿勢から傾斜していると、計測誤差が発生して計測空間に歪みが生じてしまう。
【００２１】
ここで、図３を用いて、測定装置１０２が正規姿勢から傾斜している場合の計測誤差について説明する。
【００２２】
図３は、測定装置１０２が正規姿勢から傾斜している場合の計測誤差を示す説明図である。図３の（３−１）において、測定装置１０２の正規姿勢からの傾斜として、チルト傾斜角φtが「φt＝−５°」である場合を想定する。この場合、チルト角θvを「θv＝１６０°」として、回転角θhが０〜１８０°の１０°間隔で床面までの距離を測定した際の計測点（レーザが照射されて距離が測定される点）は、（３−１）に示すように、らせん状にずれる。
【００２３】
（３−１）において、○印は、チルト傾斜角φtが「φt＝−５°」である場合の計測点を示す。一方、●印は、測定装置１０２が正規姿勢から傾斜していない場合の計測点を示す。このように、測定装置１０２が正規姿勢から傾斜（φt＝−５°）しているときの計測点「○印」は、測定装置１０２が正規姿勢から傾斜していないときの計測点「●印」に比べて、計測方向へずれることになり、計測誤差が発生する。
【００２４】
図３の（３−２）において、測定装置１０２の正規姿勢からの傾斜として、ロール傾斜角φrが「φr＝５°」である場合を想定する。この場合、チルト角θvを「θv＝１６０°」として、回転角θhが０〜１８０°の１０°間隔で床面までの距離を測定した際の計測点は、（３−２）に示すように、らせん状にずれる。
【００２５】
（３−２）において、○印は、ロール傾斜角φrが「φr＝５°」である場合の計測点を示す。一方、●印は、測定装置１０２が正規姿勢から傾斜していない場合の計測点を示す。このように、測定装置１０２が正規姿勢から傾斜（φr＝５°）しているときの計測点「○印」は、測定装置１０２が正規姿勢から傾斜していないときの計測点「●印」に比べて、計測方向と垂直方向へずれることになり、計測誤差が発生する。
【００２６】
したがって、測定装置１０２を駆動装置１０１に取り付けて３Ｄ計測を行う場合、測定装置１０２の正規姿勢からの傾斜（ズレ）を校正する必要がある。しかしながら、測定装置１０２の正規姿勢からの傾斜を人手で判断して校正するには知識やスキルが必要となるとともに時間や手間がかかる。
【００２７】
なお、２Ｄセンサを回転機構により回転させて３Ｄ計測を行う際に生じる２Ｄセンサの傾斜を校正する従来技術として、例えば、ある補正パラメータをもとに３次元点群を計算し、３次元点群から平面パッチを抽出して、平面パッチの平面性・面積を評価し、補正パラメータを修正していくものがある（例えば、下記参考文献参照）。
【００２８】
参考文献：Ｂｏｒｅｓｉｇｈｔ  Ｃａｌｉｂｒａｔｉｏｎ  ｏｆ  Ｃｏｎｓｔｒｕｃｔｉｏｎ  Ｍｉｓａｌｉｇｎｍｅｎｔｓ  ｆｏｒ  ３Ｄ  Ｓｃａｎｎｅｒｓ  Ｂｕｉｌｔ  ｗｉｔｈ  ａ  ２Ｄ  Ｌａｓｅｒ  Ｒａｎｇｅｆｉｎｄｅｒ  Ｒｏｔａｔｉｎｇ  ｏｎ  Ｉｔｓ  Ｏｐｔｉｃａｌ  Ｃｅｎｔｅｒ
【００２９】
ところが、この従来技術では、凹凸面（例えば、砂利道やレンガ壁）や曲面構造はノイズとなるため、一様に平らな面が環境中に存在する必要がある。また、平面パッチを抽出可能な密度・範囲の計測データを評価する必要がある。このため、キャリブレーションが適用可能な環境条件や計測条件に制約が生じ、キャリブレーションのロバスト性や計測機器の精度・利便性を損なうおそれがある。
【００３０】
そこで、本実施の形態では、測定装置１０２の有効範囲外の計測（冗長スキャン）を利用して、測定装置１０２の傾斜を補正するための補正パラメータを求めることで、測定装置１０２の正規姿勢からの傾斜に伴う計測誤差を自動校正可能にするキャリブレーション方法について説明する。
【００３１】
ここで、測定装置１０２の有効範囲および冗長範囲について説明する。測定装置１０２は、駆動装置１０１に取り付けられて回転軸１１０を中心として円軌道に沿って移動される。したがって、測定装置１０２がチルト方向ｄ２に０〜１８０°の範囲を走査（スキャン）すれば、３次元空間全体の３Ｄ計測が行えることになる。
【００３２】
換言すれば、測定装置１０２がレーザを照射する範囲のうち、チルト方向に１８０〜３６０°（１８０°≦θv＜３６０°）の範囲は、レーザを照射しなくてもよい範囲となる。このため、チルト方向に０〜１８０°（０°≦θv＜１８０°）の範囲を「有効範囲」と表記し、チルト方向に１８０〜３６０°（１８０°≦θv＜３６０°）の範囲を「冗長範囲」と表記する。
【００３３】
例えば、測定装置１０２は、チルト方向ｄ２に「０〜２２５°、３１５〜３６０°」の範囲でレーザを照射する。この場合、測定装置１０２がレーザを照射する範囲のうち、「０〜１８０°」は有効範囲であり、「１８０〜２２５°、３１５〜３６０°」は冗長範囲となる。
【００３４】
つぎに、図４を用いて、実施の形態にかかる情報処理装置１００のキャリブレーション方法の一実施例について説明する。
【００３５】
図４は、情報処理装置１００のキャリブレーション方法の一実施例を示す説明図である。図４において、ＸＹ平面に略平行な楕円図形は、パン方向ｄ１の回転を示している。また、ＸＹ平面に略直交する円形図形は、チルト方向ｄ２の回転を示している。円形図形の中心は、測定装置１０２の中心（例えば、光学中心）を示している。
【００３６】
（１）情報処理装置１００は、計測モデルＭＬを用いて、有効範囲または冗長範囲のいずれか一方の範囲を用いて距離が測定された各点の３次元座標を算出する。ここで、計測モデルＭＬは、測定装置１０２の傾斜角を表す補正パラメータｐを含み、測定装置１０２により測定される距離と測距方向から計測点の３次元座標を導出する関数であり、例えば、後述する下記式（１）〜（４）または下記式（７）〜（１０）である。
【００３７】
測定装置１０２の傾斜角は、例えば、測定装置１０２のチルト傾斜角φtやロール傾斜角φrである。補正パラメータｐは、測定装置１０２の正規姿勢からのズレ（傾斜）により生じる３次元座標の誤差を補正するための変数であり、例えば、測定装置１０２のチルト傾斜角φtおよび／またはロール傾斜角φrである。
【００３８】
測距方向は、測定装置１０２により計測点の距離が測定されたときのパン方向ｄ１の角度（水平インデックス：回転角θh）と、チルト方向ｄ２の角度（垂直インデックス：チルト角θv）とから特定される方向である。以下の説明では、測定装置１０２により距離が測定された任意の点を「計測点Ｐ」と表記する場合がある。
【００３９】
図４の例では、一方の範囲が「冗長範囲（１８０°≦θv＜２２５°，３１５°≦θv＜３６０°）」である場合を例に挙げて、冗長範囲を用いて距離が測定された、ある計測点Ｐの３次元座標ＭCが示されている。なお、図４の例では、１点の計測点Ｐのみに着目しているが、冗長範囲を用いて距離が測定された各計測点Ｐについて３次元座標が算出される。
【００４０】
以下の説明では、測定装置１０２により冗長範囲を用いて測定された計測点Ｐの距離（測距値Ｌ）と測距方向（θh，θv）とを対応付けて表す情報（レンジデータ）を「冗長データＬ（θh，θv）」と表記する場合がある。ただし、θhは、計測点Ｐの距離が測定されたときの回転角である。θvは、計測点Ｐの距離が測定されたときのチルト角である。
【００４１】
（２）情報処理装置１００は、一方の範囲を用いて各点の距離が測定されたときの測距方向に基づいて、有効範囲または冗長範囲のうちの他方の範囲を用いて各点の距離が測定されたときの測距方向を推定する。ここで、測定装置１０２は回転軸１１０を中心として円軌道に沿って移動されるため、有効範囲または冗長範囲のうちの一方の範囲で距離が測定された点は、他方の範囲でも距離が測定されるはずである。
【００４２】
情報処理装置１００は、この対称性をもとに、他方の範囲を用いて各点の距離が測定されたときの測距方向を幾何学的に推定する。そして、情報処理装置１００は、推定した測距方向に基づいて、他方の範囲を用いて測定された各点の距離と測距方向とを対応付けて表す情報（レンジデータ）を取得する。
【００４３】
なお、測距方向を推定する具体的な処理内容については、図８を用いて後述する。
【００４４】
図４の例では、冗長範囲を用いて計測点Ｐの距離が測定されたときの測距方向（θh，θv）に基づいて、有効範囲（０°≦θv＜１８０°）を用いて計測点Ｐの距離が測定されたときの測距方向が推定される。そして、冗長データＬ（θh，θv）に対応する有効データＬ（θ’h，θ’v）が取得される。
【００４５】
有効データＬ（θ’h，θ’v）は、測定装置１０２により有効範囲を用いて測定された計測点Ｐの距離（測拒値Ｌ’）と測距方向（θ’h，θ’v）とを対応付けて表す情報（レンジデータ）である。ただし、θ’hは、計測点Ｐの距離が測定されたときの回転角である。θ’vは、計測点Ｐの距離が測定されたときのチルト角である。
【００４６】
（３）情報処理装置１００は、一方の範囲を用いて距離が測定された各点の３次元座標と、他方の範囲を用いて距離が測定された各点の３次元座標との差を最小化するように、補正パラメータｐの値を算出する。ここで、測定装置１０２の正規姿勢からの傾斜がなければ、ある点について、有効範囲および冗長範囲それぞれを用いて測定される距離は一致し、当該距離から導出される３次元座標は一致する。
【００４７】
そこで、本実施の形態では、有効範囲を用いて測定された各点の距離から導出される３次元座標と、冗長範囲を用いて計測された各点の距離から導出される３次元座標との誤差を最小化することにより、測定装置１０２の傾斜の補正に最適な補正パラメータｐの値を算出する。
【００４８】
図４の例では、情報処理装置１００は、冗長データＬ（θh，θv）に対応する有効データＬ（θ’h，θ’v）に基づいて、計測モデルＭＬを用いて、有効範囲を用いて距離が測定された計測点Ｐの３次元座標Ｍ’Cを算出する。そして、情報処理装置１００は、３次元座標ＭCと３次元座標Ｍ’Cとの差を表す３次元誤差εを最小化するように、補正パラメータｐの値を算出する。
【００４９】
補正パラメータｐの計算には、例えば、Ｎｅｌｄｅｒ−Ｍｅａｄ法やＬｅｖｅｎｂｅｒｇ−Ｍａｒｑｕａｒｄｔ法などの反復的な非線形最適化を適用することができる。具体的には、例えば、情報処理装置１００は、補正パラメータｐの値を微少に変化させながら、上記（１）〜（３）の処理を反復することにより、３次元誤差εを最小化するような、補正パラメータｐの値を探索する。
【００５０】
図１の例では、３次元誤差εがほぼ０となる補正パラメータｐの値、すなわち、測定装置１０２のチルト傾斜角φt，ロール傾斜角φrが算出される。これにより、測定装置１０２の傾斜角（チルト傾斜角φt、ロール傾斜角φr）を反映した校正済みの計測点Ｐの３次元座標を求めることができる。
【００５１】
このように、情報処理装置１００によれば、測定装置１０２の有効範囲外の計測（冗長スキャン）を利用して、有効／冗長範囲の計測誤差を評価・最小化することで、測定装置１０２の傾斜を補正するための補正パラメータｐを計算して、測定装置１０２の正規姿勢からの傾斜に伴う計測誤差を校正することができる。
【００５２】
（情報処理装置１００のハードウェア構成例）
つぎに、情報処理装置１００のハードウェア構成例について説明する。
【００５３】
図５は、情報処理装置１００のハードウェア構成例を示すブロック図である。図５において、情報処理装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５０１と、メモリ５０２と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）５０３と、駆動装置１０１と、測定装置１０２と、を有する。また、各構成部は、バス５００によってそれぞれ接続される。
【００５４】
ここで、ＣＰＵ５０１は、情報処理装置１００の全体の制御を司る。メモリ５０２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）およびフラッシュＲＯＭなどを有する。具体的には、例えば、フラッシュＲＯＭやＲＯＭが各種プログラムを記憶し、ＲＡＭがＣＰＵ５０１のワークエリアとして使用される。メモリ５０２に記憶されるプログラムは、ＣＰＵ５０１にロードされることで、コーディングされている処理をＣＰＵ５０１に実行させる。
【００５５】
Ｉ／Ｆ５０３は、有線または無線のネットワークに接続され、ネットワークを介して他のコンピュータ（例えば、利用者のパーソナル・コンピュータ）に接続される。そして、Ｉ／Ｆ５０３は、ネットワークと自装置内部とのインターフェースを司り、他のコンピュータからのデータの入出力を制御する。なお、図１に示した制御装置１０３は、例えば、ＣＰＵ５０１と、メモリ５０２と、Ｉ／Ｆ５０３と、を含む。
【００５６】
駆動装置１０１は、図１に示したように、回転軸１１０を中心にパン方向ｄ１に回転するモータである。測定装置１０２は、発光部５１１と、受光部５１２と、駆動部５１３と、センサ制御部５１４と、を含む。発光部５１１は、レーザを照射する光源であり、例えば、半導体レーザである。受光部５１２は、反射光を受光する。駆動部５１３は、チルト軸１２０（図１参照）を中心にチルト方向ｄ２に発光部５１１を回転させる。センサ制御部５１４は、チルト方向ｄ２に走査しながらレーザを物体に向けて照射し、反射光を受光するまでの時間を用いて自装置から物体までの距離を測定する。
【００５７】
なお、情報処理装置１００は、上述した構成部のほかに、例えば、ディスクドライブ、ディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、入力装置、ディスプレイなどを有することにしてもよい。
【００５８】
（情報処理装置１００の機能的構成例）
図６は、情報処理装置１００の機能的構成例を示すブロック図である。図６において、情報処理装置１００は、取得部６０１と、算出部６０２と、対応付け部６０３と、評価部６０４と、生成部６０５と、出力部６０６と、を含む構成である。取得部６０１〜出力部６０６は制御部となる機能であり、具体的には、例えば、図５に示したメモリ５０２に記憶されたプログラムをＣＰＵ５０１に実行させることにより、または、Ｉ／Ｆ５０３により、その機能を実現する。各機能部の処理結果は、例えば、メモリ５０２に記憶される。
【００５９】
取得部６０１は、測定装置１０２により測定された計測点Ｐまでの距離（測距値Ｌ）と測距方向（θh，θv）とを対応付けて表すレンジデータＬ（θh，θv）を取得する。具体的には、例えば、取得部６０１は、全周のレンジデータ群を取得する（０°≦θh＜３６０°、０°≦θv＜３６０°（ただし、死角部分を除く））。
【００６０】
算出部６０２は、計測モデルＭＬを用いて、測定装置１０２の有効範囲または冗長範囲のいずれか一方の範囲を用いて距離が測定された計測点Ｐの３次元座標ＭCを算出する。以下の説明では、有効範囲または冗長範囲のいずれか一方の範囲として「冗長範囲」を例に挙げて説明する。
【００６１】
具体的には、例えば、算出部６０２は、全周のレンジデータ群から冗長データＬ（θh，θv）を選択する。そして、算出部６０２は、選択した冗長データＬ（θh，θv）に基づいて、計測モデルＭＬを用いて、計測点Ｐの３次元座標ＭCを算出する。ここで、図７を用いて、計測モデルＭＬについて説明する。
【００６２】
図７は、センサ座標系および世界座標系を示す説明図である。図７において、センサ座標系は、ＸS軸（不図示）とＹS軸とＺS軸とからなる直交座標系である（ただし、ＸS＝０）。センサ座標系の原点ＯSは、測定装置１０２の中心（例えば、光学中心）である。世界座標系は、図１に示したような、Ｘ軸とＹ軸とＺ軸とからなる直交座標系である。
【００６３】
計測モデルＭＬは、例えば、下記式（１）〜（４）により表すことができる。ただし、ＭCは、世界座標系における計測点Ｐの位置を示す３次元座標である。ＭSは、センサ座標系における計測点Ｐの位置を示す３次元座標であり、例えば、下記式（２）により表される。Ｌは、測距値である。θh，θvは、測距方向を示す水平インデックス（回転角）、垂直インデックス（チルト角）である。ＲCは、回転を表しており、例えば、下記式（３）により表される。Ｒx，Ｒy，Ｒzは、それぞれＸ，Ｙ，Ｚ軸周りの回転行列である。φt，φrは、補正パラメータｐである。ｔは、並進を表しており、例えば、下記式（４）により表される。Ｄは、回転軸１１０から測定装置１０２の中心までの最短距離を表すオフセット値である（例えば、図１参照）。
【００６４】
【数１】
0006747038.tif 000002
【００６５】
この場合、算出部６０２は、冗長データＬ（θh，θv）に基づいて、上記式（１）〜（４）を用いて、計測点Ｐの３次元座標ＭCを算出する。なお、３次元座標ＭCの算出は、例えば、全周のレンジデータ群に含まれる全ての冗長データＬ（θh，θv）について行われる。
【００６６】
対応付け部６０３は、有効範囲または冗長範囲のうち、一方の範囲を用いて距離が測定された計測点Ｐの３次元座標ＭCと、他方の範囲を用いて距離が測定された計測点Ｐの３次元座標Ｍ’Cとを対応付ける。ここでは、一方の範囲は「冗長範囲」であり、他方の範囲は「有効範囲」である。
【００６７】
このため、対応付け部６０３は、冗長範囲を用いて距離が測定された計測点Ｐの３次元座標ＭCと、有効範囲を用いて距離が測定された計測点Ｐの３次元座標Ｍ’Cとの対応付けを行う。この場合、まず、対応付け部６０３は、冗長範囲を用いて計測点Ｐの距離（測距値Ｌ）が測定されたときの測距方向（θh，θv）に基づいて、有効範囲を用いて計測点Ｐの距離（測距値Ｌ’）が測定されたときの測距方向（θ’h，θ’v）を推定する。
【００６８】
ここで、図８を用いて、測距方向（θ’h，θ’v）の推定方法について説明する。
【００６９】
図８は、測距方向（θ’h，θ’v）の推定方法を示す説明図である。図８に示すように、測定装置１０２が正規姿勢から傾斜（チルト傾斜角φt、ロール傾斜角φr）していると、測定装置１０２は、回転軸１１０を中心として点線で示す円軌道に沿って移動される。点ＭCは、冗長範囲を用いて距離が測定された、測距方向（θh，θv）の計測点Ｐを示している。
【００７０】
この場合、有効範囲を用いて計測点Ｐの距離が測定されるときの水平インデックスは、（水平インデックス：θh）との対称的な関係から、（上面図）に示すような「θ’h」となる。このため、（水平インデックス：θ’h）は、例えば、下記式（５）を用いて表すことができる。ただし、Ｘ，Ｙは、計測点Ｐの３次元座標ＭCのＸ，Ｙ座標である。
【００７１】
【数２】
0006747038.tif 000003
【００７２】
また、有効範囲を用いて計測点Ｐの距離が測定されるときの垂直インデックスは、（垂直インデックス：θv）との対称的な関係から、（側面図）に示すような「θ’v」となる。このため、（垂直インデックス：θ’v）は、例えば、下記式（６）を用いて表すことができる。
【００７３】
【数３】
0006747038.tif 000004
【００７４】
これにより、対応付け部６０３は、冗長データＬ（θh，θv）に基づいて、上記式（５）および（６）を用いて、有効範囲を用いて計測点Ｐの距離（測距値Ｌ’）が測定されたときの測距方向（θ’h，θ’v）を推定することができる。
【００７５】
つぎに、対応付け部６０３は、推定した測距方向（θ’h，θ’v）に基づいて、全周のレンジデータ群から、冗長データＬ（θh，θv）に対応する有効データＬ（θ’h，θ’v）を取得する。具体的には、例えば、対応付け部６０３は、全周のレンジデータ群から、測距方向が推定した測距方向（θ’h，θ’v）に最も近いレンジデータを、有効データＬ（θ’h，θ’v）として探索する（ただし、１８０≦θ’v＜２２５°、３１５≦θ’v＜３６０°）。
【００７６】
ここで、測距方向が推定した測距方向（θ’h，θ’v）に最も近いレンジデータとは、例えば、推定した測距方向（θ’h，θ’v）との水平／垂直インデックスそれぞれの角度差の総和が最小となるレンジデータである。また、有効データＬ（θ’h，θ’v）の探索手法としては、例えば、ｋｄ木による最近傍探索を用いることができる。
【００７７】
これにより、冗長データＬ（θh，θv）に対応する有効データＬ（θ’h，θ’v）を取得することができる。ただし、水平／垂直インデックスそれぞれの角度差の総和の最小値が、予め決められた閾値以上となる場合は、対応付け部６０３は、冗長データＬ（θh，θv）に対応する有効データがないと判断することにしてもよい（探索失敗）。
【００７８】
つぎに、対応付け部６０３は、取得した有効データＬ（θ’h，θ’v）に基づいて、計測モデルＭＬを用いて、有効範囲を用いて距離（測距値Ｌ’）が測定された計測点Ｐの３次元座標Ｍ’Cを算出する。具体的には、例えば、対応付け部６０３は、下記式（７）〜（１０）を用いて、計測点Ｐの３次元座標Ｍ’Cを算出する。
【００７９】
【数４】
0006747038.tif 000005
【００８０】
そして、対応付け部６０３は、算出部６０２によって算出された計測点Ｐの３次元座標ＭCと、算出した計測点Ｐの３次元座標Ｍ’Cとを対応付ける。なお、３次元座標ＭCと３次元座標Ｍ’Cとの対応付けは、例えば、３次元座標ＭCが算出された計測点Ｐごとに行われる。
【００８１】
評価部６０４は、対応付けられた計測点Ｐの３次元座標ＭCと、計測点Ｐの３次元座標Ｍ’Cとの差を最小化するように、補正パラメータｐの値を算出する。ここで、補正パラメータｐは、測定装置１０２のチルト傾斜角φtおよび／またはロール傾斜角φrである。具体的には、例えば、評価部６０４は、下記式（１１）を用いて、各計測点Ｐの３次元座標ＭCと３次元座標Ｍ’Cとの差を表す３次元誤差εをそれぞれ算出する。
【００８２】
【数５】
0006747038.tif 000006
【００８３】
つぎに、評価部６０４は、例えば、下記式（１２）を用いて、各計測点Ｐの３次元座標ＭCと３次元座標Ｍ’Cとの差を表す３次元誤差εを累積することにより、評価値Ｅ（ｐ）を算出する。この際、評価部６０４は、例えば、閾値εth以下となる３次元誤差εのみを累積することにより、定義域に制限を設けて外れ値を除外することにしてもよい。
【００８４】
【数６】
0006747038.tif 000007
【００８５】
そして、評価部６０４は、例えば、下記式（１３）を用いて、評価値Ｅ（ｐ）を最小化するような、補正パラメータｐの値を探索する。ただし、補正パラメータｐを「ｐ＝（φt，φr）」とする。補正パラメータｐの初期値ｐ0は、「ｐ0＝（０，０）」、あるいは、解析的な手法により推定した値に設定される。
【００８６】
【数７】
0006747038.tif 000008
【００８７】
ここで、図９を用いて、評価値Ｅ（ｐ）を最小化する補正パラメータｐの探索例について説明する。
【００８８】
図９は、補正パラメータｐの探索例を示す説明図である。図９において、グラフ９００は、φtとφrとの組み合わせに応じて変化する評価値Ｅ（ｐ）の大きさを表す。ここでは、評価部６０４は、Ｎｅｌｄｅｒ−Ｍｅａｄ法を用いて、補正パラメータｐの値を微少に変化させながら、評価値Ｅ（ｐ）を最小化する補正パラメータｐの値（図９中、「ｐ＾」）を探索する。
【００８９】
より詳細に説明すると、評価部６０４は、評価値Ｅ（ｐ）の大きさがグラフ９００の谷に向かうように、補正パラメータｐの値を微少に変化させていく。すなわち、評価部６０４が、補正パラメータｐの値を更新するたびに、算出部６０２、対応付け部６０３が上述した処理を行う。そして、評価部６０４は、評価値Ｅ（ｐ）の大きさの変化量（減少量）が閾値未満となったら収束したと判断し、そのときの補正パラメータｐの値を、評価値Ｅ（ｐ）を最小化する補正パラメータｐ＾とする。
【００９０】
これにより、各計測点Ｐの３次元座標Ｍ’Cとの差を最小化するような補正パラメータｐの値を算出することができる。
【００９１】
なお、ここでは、補正パラメータｐの値を微少に変化させながら、グラフ９００の谷となる補正パラメータｐ＾を探索する場合を例に挙げて説明したが、これに限らない。例えば、評価部６０４は、φtとφrとの様々な組み合わせについて、評価値Ｅ（ｐ）の大きさを事前に計算し、評価値Ｅ（ｐ）の大きさが最小となるときの組み合わせを、補正パラメータｐ＾とすることにしてもよい。
【００９２】
図６の説明に戻り、生成部６０５は、算出された補正パラメータｐの値に基づいて、３次元モデルＱを生成する。ここで、３次元モデルＱは、情報処理装置１００の周囲環境を表す３次元モデルであり、測定装置１０２の傾斜角（チルト傾斜角φt、ロール傾斜角φr）を反映した校正済みの各計測点Ｐの３次元座標ＭCを含む情報である。
【００９３】
具体的には、例えば、生成部６０５は、全周のレンジデータ群から、有効範囲を用いて測定された計測点Ｐの距離（測拒値Ｌ）と測距方向（θh，θv）とを対応付けて表すレンジデータＬ（θh，θv）を取得する。そして、生成部６０５は、取得したレンジデータと、算出された補正パラメータｐ（ｐ＝（φt，φr））の値とに基づいて、上記式（１）〜（４）を用いて、計測点Ｐの３次元座標ＭCを算出する。
【００９４】
３次元座標ＭCの算出は、例えば、全周のレンジデータ群のうちの有効範囲を用いて距離が測定された全てのレンジデータＬ（θh，θv）について行われる。これにより、測定装置１０２により有効範囲を用いて距離が測定された各計測点Ｐの３次元座標ＭCを含む３次元モデルＱを生成することができる。
【００９５】
出力部６０６は、生成された３次元モデルＱを出力する。出力部６０６の出力形式としては、例えば、Ｉ／Ｆ５０３による外部のコンピュータへの送信、メモリ５０２への記憶、不図示のディスプレイへの表示、不図示のプリンタへの印刷出力などがある。
【００９６】
なお、上述した説明では、有効範囲または冗長範囲のいずれか一方の範囲として、「冗長範囲」を例に挙げて説明したが、一方の範囲を「有効範囲」とし、他方の範囲を「冗長範囲」とすることにしてもよい。ただし、この場合、冗長範囲に死角部分があれば、対応する冗長データがない有効データについても処理（探索）することになる。このため、一方の範囲を「冗長範囲」とし、他方の範囲を「有効範囲」とするほうが処理効率的に望ましいといえる。
【００９７】
（情報処理装置１００のキャリブレーション処理手順）
つぎに、図１０および図１１を用いて、情報処理装置１００のキャリブレーション処理手順について説明する。
【００９８】
図１０および図１１は、情報処理装置１００のキャリブレーション処理手順の一例を示すフローチャートである。図１０のフローチャートにおいて、まず、情報処理装置１００は、駆動装置１０１により測定装置１０２を回転させて距離を測定することにより、全周（０°≦θh＜３６０°、０°≦θv＜３６０°（ただし、死角部分を除く））のレンジデータ群を取得する（ステップＳ１００１）。
【００９９】
そして、情報処理装置１００は、補正パラメータｐの初期値ｐ0を設定する（ステップＳ１００２）。ただし、補正パラメータｐを「ｐ＝（φt，φr）」とする。初期値ｐ0としては、例えば、「ｐ0＝（０，０）」、あるいは、解析的な手法により推定した値が設定される。
【０１００】
つぎに、情報処理装置１００は、取得した全周のレンジデータ群から、未選択の冗長データＬ（θh，θv）を選択する（ステップＳ１００３）。そして、情報処理装置１００は、選択した冗長データＬ（θh，θv）に基づいて、上記式（１）〜（４）を用いて、計測点Ｐの３次元座標ＭCを算出する（ステップＳ１００４）。
【０１０１】
つぎに、情報処理装置１００は、冗長データＬ（θh，θv）に基づいて、上記式（５）および（６）を用いて、有効範囲を用いて計測点Ｐの距離（測距値Ｌ’）が測定されたときの測距方向（水平インデックス：θ’h，垂直インデックス：θ’v）を推定する（ステップＳ１００５）。そして、情報処理装置１００は、推定した測距方向（θ’h，θ’v）に基づいて、全周のレンジデータ群から、冗長データＬ（θh，θv）に対応する有効データＬ（θ’h，θ’v）を取得する（ステップＳ１００６）。
【０１０２】
つぎに、情報処理装置１００は、取得した有効データＬ（θ’h，θ’v）に基づいて、上記式（７）〜（１０）を用いて、計測点Ｐの３次元座標Ｍ’Cを算出する（ステップＳ１００７）。そして、情報処理装置１００は、計測点Ｐの３次元座標ＭCと、算出した計測点Ｐの３次元座標Ｍ’Cとを対応付ける（ステップＳ１００８）。
【０１０３】
つぎに、情報処理装置１００は、全周のレンジデータ群から選択されていない未選択の冗長データＬ（θh，θv）があるか否かを判断する（ステップＳ１００９）。ここで、未選択の冗長データＬ（θh，θv）がある場合（ステップＳ１００９：Ｙｅｓ）、情報処理装置１００は、ステップＳ１００３に戻る。
【０１０４】
一方、未選択の冗長データＬ（θh，θv）がない場合（ステップＳ１００９：Ｎｏ）、情報処理装置１００は、図１１に示すステップＳ１１０１に移行する。
【０１０５】
図１１のフローチャートにおいて、まず、情報処理装置１００は、上記式（１１）を用いて、ステップＳ１００８において対応付けた３次元座標ＭCと３次元座標Ｍ’Cとの各ペアの３次元誤差εをそれぞれ算出する（ステップＳ１１０１）。つぎに、情報処理装置１００は、算出した各ペアの３次元誤差εに基づいて、上記式（１２）を用いて、評価値Ｅ（ｐ）を算出する（ステップＳ１１０２）。
【０１０６】
そして、情報処理装置１００は、評価値Ｅ（ｐ）を最小化するように、補正パラメータｐの値を微少に変化させて、補正パラメータｐの値を更新する（ステップＳ１１０３）。つぎに、情報処理装置１００は、評価値Ｅ（ｐ）の大きさの変化量（減少量）が収束したか否かを判断する（ステップＳ１１０４）。
【０１０７】
ここで、収束していない場合（ステップＳ１１０４：Ｎｏ）、情報処理装置１００は、図１０に示したステップＳ１００３に戻る。一方、収束した場合（ステップＳ１１０４：Ｙｅｓ）、情報処理装置１００は、更新した補正パラメータｐ（ｐ＝（φt，φr））の値に基づいて、３次元モデルＱを生成するモデル生成処理を実行する（ステップＳ１１０５）。
【０１０８】
なお、モデル生成処理の具体的な処理手順については、図１２を用いて後述する。
【０１０９】
そして、情報処理装置１００は、生成した３次元モデルＱを出力して（ステップＳ１１０６）、本フローチャートによる一連の処理を終了する。これにより、駆動装置１０１に取り付ける際の組み立て誤差により生じる測定装置１０２の正規姿勢からの傾斜に伴う計測誤差を自動校正することができる。
【０１１０】
つぎに、図１２を用いて、図１１に示したステップＳ１１０５のモデル生成処理の具体的な処理手順について説明する。
【０１１１】
図１２は、モデル生成処理の具体的処理手順の一例を示すフローチャートである。図１２のフローチャートにおいて、まず、情報処理装置１００は、全周のレンジデータ群を取得する（ステップＳ１２０１）。そして、情報処理装置１００は、水平インデックス（回転角）：θhを「０」とし、３次元モデルＱを｛｝とする（ステップＳ１２０２）。
【０１１２】
つぎに、情報処理装置１００は、垂直インデックス（チルト角）：θvを「０」とする（ステップＳ１２０３）。そして、情報処理装置１００は、上記式（１）〜（４）を用いて、レンジデータＬ（θh，θv）と補正パラメータｐ（ｐ＝（φt，φr））の値とに基づいて、３次元座標Ｍcを算出する（ステップＳ１２０４）。
【０１１３】
つぎに、情報処理装置１００は、算出した３次元座標Ｍcを３次元モデルＱ｛｝に追加する（ステップＳ１２０５）。そして、情報処理装置１００は、垂直インデックス：θvを「θv＋Δθv」として（ステップＳ１２０６）、θvが１８０°よりも大きくなったか否かを判断する（ステップＳ１２０７）。ただし，Δθvは，垂直インデックス：θvにおける増分である。
【０１１４】
ここで、θvが１８０°以下の場合（ステップＳ１２０７：Ｎｏ）、情報処理装置１００は、ステップＳ１２０４に戻る。一方、θvが１８０°より大きい場合（ステップＳ１２０７：Ｙｅｓ）、情報処理装置１００は、水平インデックス：θhを「θh＋Δθh」として（ステップＳ１２０８）、θhが３６０°以上となったか否かを判断する（ステップＳ１２０９）。ただし，Δθhは，水平インデックス：θhにおける増分である。
【０１１５】
ここで、θhが３６０°未満の場合（ステップＳ１２０９：Ｎｏ）、情報処理装置１００は、ステップＳ１２０３に戻る。一方、θhが３６０°以上の場合（ステップＳ１２０９：Ｙｅｓ）、情報処理装置１００は、モデル生成処理を呼び出したステップに戻る。
【０１１６】
これにより、測定装置１０２の傾斜角（チルト傾斜角φt、ロール傾斜角φr）を反映した校正済みの各計測点Ｐの３次元座標ＭCを含む３次元モデルＱを生成することができる。
【０１１７】
以上説明したように、実施の形態にかかる情報処理装置１００によれば、測定装置１０２の傾斜角を表す補正パラメータｐを含む計測モデルＭＬを用いて、測定装置１０２の冗長範囲を用いて距離が測定された各計測点Ｐの３次元座標ＭCを算出することができる。また、情報処理装置１００によれば、冗長範囲を用いて計測点Ｐの距離（測距値Ｌ）が測定されたときの測距方向（θh，θv）に基づいて、有効範囲を用いて計測点Ｐの距離（測距値Ｌ’）が測定されたときの測距方向（θ’h，θ’v）を推定することができる。また、情報処理装置１００によれば、推定した測距方向（θ’h，θ’v）に基づいて、計測モデルＭＬを用いて、有効範囲を用いて距離が測定された各計測点Ｐの３次元座標Ｍ’Cを算出することができる。そして、情報処理装置１００によれば、算出した各計測点Ｐの３次元座標ＭCと各計測点Ｐの３次元座標Ｍ’Cとの差を表す３次元誤差εを最小化するように、補正パラメータｐの値を算出することができる。
【０１１８】
これにより、測定装置１０２を駆動装置１０１に取り付ける際の組み立て誤差により生じる、測定装置１０２の正規姿勢からの傾斜（ズレ）に伴う計測誤差を自動校正することが可能となる。
【０１１９】
また、情報処理装置１００は、測定装置１０２のチルト傾斜角φtおよび／またはロール傾斜角φrを補正パラメータｐとして用いることができる。これにより、計測誤差の要因となるチルト傾斜角φtおよび／またはロール傾斜角φrを考慮して、測定装置１０２の正規姿勢からの傾斜に伴う計測誤差を自動校正することが可能となる。
【０１２０】
一例として、測定装置１０２のチルト傾斜角φtが「φt＝１．１７°」で、ロール傾斜角φrが「φr＝−０．３３°」の状態から、測定装置１０２の下にスペーサを入れて、ロール傾斜角φrをさらに「３．８５°」上げた場合を想定する。この場合、情報処理装置１００により、補正パラメータｐとして「ｐ＝（φt，φr）＝（１．２１°，３．５７°）」が得られた。これは、スペーサを入れる前の状態からの差分が（＋０．０４°，＋３．９０°）となっており、誤差が（＋０．０４°，＋０．０５°）で０．１°の精度でキャリブレーション可能であることがわかる。
【０１２１】
また、情報処理装置１００は、算出した補正パラメータｐの値に基づいて、計測モデルＭＬを用いて、有効範囲を用いて距離が測定された各計測点Ｐの３次元座標ＭCを含む３次元モデルＱを生成して出力することができる。これにより、測定装置１０２の傾斜角（チルト傾斜角φt、ロール傾斜角φr）を反映した校正済みの計測点Ｐの３次元座標群を含む３次元モデルＱを生成することができる。
【０１２２】
これらのことから、情報処理装置１００によれば、環境の３次元構造に関する何らかの知識（ターゲット、平面など）を必要とすることなく、任意の３次元構造の環境で、測定装置１０２の正規姿勢からの傾斜（ズレ）に伴う計測誤差を自動校正することができる。また、キャリブレーションが適用可能な環境条件や計測条件に関する制約を緩和しつつ、計測精度および利便性を向上させることができる。
【０１２３】
なお、本実施の形態で説明したキャリブレーション方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本キャリブレーションプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  ｄｉｓｋ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本キャリブレーションプログラムは、インターネット等のネットワークを介して配布してもよい。
【０１２４】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１２５】
（付記１）回転軸を中心にパン方向に回転する駆動装置と、
前記駆動装置に取り付けられて前記回転軸を中心として円軌道に沿って移動される状態で、前記パン方向に垂直なチルト方向に走査しながら光を物体に向けて照射して自装置から前記物体までの距離を測定する測定装置と、
前記測定装置の傾斜角を表す補正パラメータを含み、前記測定装置により測定される距離と測距方向から計測点の３次元座標を導出する計測モデルを用いて、前記測定装置が光を照射する範囲のうちの前記チルト方向に０〜１８０度の有効範囲または前記チルト方向に１８０〜３６０度の冗長範囲のいずれか一方の範囲を用いて距離が測定された各点の３次元座標を算出し、
前記一方の範囲を用いて前記各点の距離が測定されたときの測距方向に基づいて、前記有効範囲または前記冗長範囲のうちの他方の範囲を用いて前記各点の距離が測定されたときの測距方向を推定し、
推定した前記測距方向に基づいて、前記計測モデルを用いて、前記他方の範囲を用いて距離が測定された前記各点の３次元座標を算出し、
前記一方の範囲を用いて距離が測定された前記各点の３次元座標と、前記他方の範囲を用いて距離が測定された前記各点の３次元座標との差を最小化するように、前記補正パラメータの値を算出する制御装置と、
を有することを特徴とする情報処理装置。
【０１２６】
（付記２）前記補正パラメータは、前記測定装置のチルト傾斜角および／またはロール傾斜角を表すパラメータである、ことを特徴とする付記１に記載の情報処理装置。
【０１２７】
（付記３）前記制御装置は、
算出した前記補正パラメータの値に基づいて、前記計測モデルを用いて、前記有効範囲を用いて距離が測定された各点の３次元座標を含む３次元モデルを生成し、
生成した前記３次元モデルを出力する、ことを特徴とする付記１または２に記載の情報処理装置。
【０１２８】
（付記４）前記チルト傾斜角は、前記チルト方向に０度のときに光を照射する方向の前記回転軸に対する角度を表し、
前記チルト方向は、チルト軸を中心に回転する方向であり、
前記ロール傾斜角は、前記回転軸に垂直な面に対する前記チルト軸の角度を表す、ことを特徴とする付記２に記載の情報処理装置。
【０１２９】
（付記５）回転軸を中心にパン方向に回転する駆動装置と、前記駆動装置に取り付けられて前記回転軸を中心として円軌道に沿って移動される状態で、前記パン方向に垂直なチルト方向に走査しながら光を物体に向けて照射して自装置から前記物体までの距離を測定する測定装置と、を有する情報処理装置のコンピュータが、
前記測定装置の傾斜角を表す補正パラメータを含み、前記測定装置により測定される距離と測距方向から計測点の３次元座標を導出する計測モデルを用いて、前記測定装置が光を照射する範囲のうちの前記チルト方向に０〜１８０度の有効範囲または前記チルト方向に１８０〜３６０度の冗長範囲のいずれか一方の範囲を用いて距離が測定された各点の３次元座標を算出し、
前記一方の範囲を用いて前記各点の距離が測定されたときの測距方向に基づいて、前記有効範囲または前記冗長範囲のうちの他方の範囲を用いて前記各点の距離が測定されたときの測距方向を推定し、
推定した前記測距方向に基づいて、前記計測モデルを用いて、前記他方の範囲を用いて距離が測定された前記各点の３次元座標を算出し、
前記一方の範囲を用いて距離が測定された前記各点の３次元座標と、前記他方の範囲を用いて距離が測定された前記各点の３次元座標との差を最小化するように、前記補正パラメータの値を算出する、
処理を実行することを特徴とするキャリブレーション方法。
【０１３０】
（付記６）回転軸を中心にパン方向に回転する駆動装置と、前記駆動装置に取り付けられて前記回転軸を中心として円軌道に沿って移動される状態で、前記パン方向に垂直なチルト方向に走査しながら光を物体に向けて照射して自装置から前記物体までの距離を測定する測定装置と、を有する情報処理装置のコンピュータに、
前記測定装置の傾斜角を表す補正パラメータを含み、前記測定装置により測定される距離と測距方向から計測点の３次元座標を導出する計測モデルを用いて、前記測定装置が光を照射する範囲のうちの前記チルト方向に０〜１８０度の有効範囲または前記チルト方向に１８０〜３６０度の冗長範囲のいずれか一方の範囲を用いて距離が測定された各点の３次元座標を算出し、
前記一方の範囲を用いて前記各点の距離が測定されたときの測距方向に基づいて、前記有効範囲または前記冗長範囲のうちの他方の範囲を用いて前記各点の距離が測定されたときの測距方向を推定し、
推定した前記測距方向に基づいて、前記計測モデルを用いて、前記他方の範囲を用いて距離が測定された前記各点の３次元座標を算出し、
前記一方の範囲を用いて距離が測定された前記各点の３次元座標と、前記他方の範囲を用いて距離が測定された前記各点の３次元座標との差を最小化するように、前記補正パラメータの値を算出する、
処理を実行させることを特徴とするキャリブレーションプログラム。
【符号の説明】
【０１３１】
１００  情報処理装置
１０１  駆動装置
１０２  測定装置
１０３  制御装置
１１０  回転軸
１２０  チルト軸
５００  バス
５０１  ＣＰＵ
５０２  メモリ
５０３  Ｉ／Ｆ
５１１  発光部
５１２  受光部
５１３  駆動部
５１４  センサ制御部
６０１  取得部
６０２  算出部
６０３  対応付け部
６０４  評価部
６０５  生成部
６０６  出力部
９００  グラフ
【図１】
0006747038.tif 000009
【図２】
0006747038.tif 000010
【図３】
0006747038.tif 000011
【図４】
0006747038.tif 000012
【図５】
0006747038.tif 000013
【図６】
0006747038.tif 000014
【図７】
0006747038.tif 000015
【図８】
0006747038.tif 000016
【図９】
0006747038.tif 000017
【図１０】
0006747038.tif 000018
【図１１】
0006747038.tif 000019
【図１２】
0006747038.tif 000020