(57)【要約】      （修正有）【課題】３次元視覚計測装置の測定結果に含まれるスケール誤差を低減し、測定精度を向上させる校正方法を提供する。【解決手段】３次元測定機１０１の測定プローブ１０２により、機能部品の形状、または、機能部品と結合される治具の形状を３次元測定し、ステレオカメラ１０４を備えた機能部品の基準部位に原点を有する第２の座標系を定義する。ステレオカメラ１０４により撮影可能な範囲内の３点以上の測定点に位置決めされた測定プローブ１０２の特定部位の、ステレオカメラ１０４の３次元測定値が表現される第１の座標系における座標値を３次元視覚測定させる。そして、測定された測定プローブ１０２の特定部位の測定点の第１および第２の座標系における座標値に基づき、第１の座標系と、第２の座標系と、の間で座標変換を行うための校正データと、ステレオカメラ１０４の３次元計測座標値のスケールを補正可能な補正行列と、を取得する。【選択図】図１
2019052983.tif 000002
【特許請求の範囲】
【請求項１】
３次元視覚測定装置の３次元測定値が表現される第１の座標系と、前記３次元視覚測定装置を備えた機能部品の基準部位から定まる第２の座標系と、の間で座標変換を行うための校正データを取得する校正方法において、
制御装置が、３次元視覚測定装置により撮影可能な範囲内の、前記３次元視覚測定装置との位置関係が予め既知である計測位置に、前記３次元視覚測定装置により座標値を計測可能なマークを位置決めするマーク設置工程と、
制御装置が、前記３次元視覚測定装置により、第１の座標系における前記マークの座標値を計測する３次元視覚測定工程と、
制御装置が、前記３次元視覚測定装置を備えた機能部品の基準部位から定まる第２の座標系における前記マークの座標値を算出するマーク座標値算出工程と、
制御装置が、前記３次元視覚測定工程で視覚測定された前記第１の座標系における前記マークの座標値と、前記マーク座標値計測工程で計測された前記第２の座標系における前記マークの座標値を用いて、前記第１の座標系および前記第２の座標系の間で座標変換を行うための校正データと、前記３次元視覚測定装置により計測される３次元計測座標値のスケールを補正する要素を含む補正行列と、を算出する校正データ算出工程と、を含む校正方法。
【請求項２】
請求項１に記載の校正方法において、前記校正データ取得工程では、前記第１の座標系（Ｃ)における前記マークの座標値（ＣＰi）と、前記第２の座標系（Ｍ）における前記マークの座標値（MＰi）に基づき、次式により、前記校正データとしての（ＭＴＣ）と、前記補正行列としての（Ａ）を算出する校正方法。
【数１】
2019052983.tif 000026
【請求項３】
請求項１または２に記載の校正方法において、前記校正データ取得工程では、前記補正行列（Ａ）が次式の如く、前記３次元視覚測定装置により定まる第１の座標系のスケールを補正するスケール関数ｍｘ、ｍｙ、ｍｚを含む行列である校正方法。
【数２】
2019052983.tif 000027
【請求項４】
請求項１から３のいずれか１項に記載の校正方法において、前記校正データ取得工程では、前記補正行列としての（Ａ）が次式の如く、前記３次元視覚測定装置により定まる第１の座標系のＺ方向のスケールのみを補正するスケール関数ｍｚを含む行列である校正方法。
【数３】
2019052983.tif 000028
【請求項５】
請求項３または４に記載の校正方法において、前記スケール関数のいずれかが定数である校正方法。
【請求項６】
請求項３または４に記載の校正方法において、前記３次元視覚測定装置がステレオカメラであり、前記スケール関数が、前記ステレオカメラの撮影画像上の撮影光軸中心から計測点までの距離ｒ１、ｒ２に依存した関数ｍｘ（ｒ１、ｒ２）、ｍｙ（ｒ１、ｒ２）、ｍｚ（ｒ１、ｒ２）により表現される校正方法。
【請求項７】
請求項３または４に記載の校正方法において、前記スケール関数が、前記３次元視覚測定装置により計測される３次元計測座標値ｘ、ｙ、ｚに依存した関数ｍｘ（ｘ、ｙ、ｚ）、ｍｙ（ｘ、ｙ、ｚ）、ｍｚ（ｘ、ｙ、ｚ）である校正方法。
【請求項８】
請求項１から７のいずれか１項に記載の校正方法において、前記校正データ取得工程では、前記３次元視覚測定装置の計測範囲を複数の局所領域に分割し、前記局所領域ごとに前記補正行列を算出する局所補正データ算出工程を含む校正方法。
【請求項９】
請求項８に記載の校正方法において、前記局所補正データ算出工程で、前記補正行列（Ａ）を算出した後、計測範囲をＮ個の局所領域に分割し、ｉ番目（１≦ｉ≦Ｎ）の局所領域ごとに、次式により、前記３次元視覚測定装置により計測される３次元計測座標値に対応した補正行列（Ｂｉ）を算出する校正方法。
【数４】
2019052983.tif 000029
【請求項１０】
請求項１から９のいずれか１項に記載の校正方法において、
３次元測定機の測定プローブを前記マークとして用い、
前記制御装置が、前記測定プローブにより、前記機能部品の形状、または、前記機能部品と機械的に結合可能な治具の形状を３次元測定し、その３次元測定結果に基づき前記第２の座標系を定義するプローブ測定工程を備え、
前記マーク設置工程においては、前記制御装置が、３次元視覚測定装置により撮影可能な範囲内の、前記３次元視覚測定装置との位置関係が予め既知である計測位置に、前記３次元視覚測定装置により座標値を計測可能な前記マークとして前記測定プローブを位置決めし、
前記３次元視覚測定工程においては、前記制御装置が、前記３次元視覚測定装置により、第１の座標系における前記マークの座標値を計測し、
前記マーク座標値算出工程においては、前記制御装置が、前記３次元視覚測定装置を備えた機能部品の基準部位から定まる、前記プローブ測定工程で定義された第２の座標系における前記マークの座標値を算出する校正方法。
【請求項１１】
請求項１０に記載の校正方法において、前記プローブ測定工程において、前記測定プローブにより、前記機能部品の形状、または、前記機能部品と機械的に結合可能な治具の形状として、前記機能部品の位置決め基準部、または前記治具の位置決め基準部を３次元計測する校正方法。
【請求項１２】
請求項１１に記載の校正方法において、前記機能部品が、前記３次元視覚測定装置を装着されたロボットのエンドエフェクタであって、前記プローブ測定工程において、前記測定プローブにより、前記機能部品の形状として、前記エンドエフェクタの特定部位を３次元測定する校正方法。
【請求項１３】
３次元視覚測定装置の３次元測定値が表現される第１の座標系と、前記３次元視覚測定装置を備えた機能部品の基準部位に原点を有する第２の座標系と、の間で座標変換を行うための校正データを取得する校正装置において、
前記３次元視覚測定装置により撮影可能な範囲内の、前記３次元視覚測定装置との位置関係が予め既知である計測位置に、前記３次元視覚測定装置により座標値を計測可能なマークを位置決めするマーク設置装置と、
制御装置と、を備え、
制御装置が、前記マーク設置装置によって、前記マークを前記計測位置に設置させるマーク設置工程と、
制御装置が、前記３次元視覚測定装置により、第１の座標系における前記マークの座標値を計測する３次元視覚測定工程と、
制御装置が、前記３次元視覚測定装置を備えた機能部品の基準部位から定まる第２の座標系における前記マークの座標値を算出するマーク座標値算出工程と、
制御装置が、前記３次元視覚測定工程で視覚測定された前記第１の座標系における前記マークの座標値と、前記マーク座標値計測工程で計測された前記第２の座標系における前記マークの座標値を用いて、前記第１の座標系および前記第２の座標系の間で座標変換を行うための校正データと、前記３次元視覚測定装置により計測される３次元計測座標値のスケールを補正する要素を含む補正行列と、を算出する校正データ算出工程と、
を実行する校正装置。
【請求項１４】
請求項１から１２のいずれか１項に記載の校正方法に用いられる、前記プローブ測定工程の測定結果を前記制御装置に送信する３次元測定機。
【請求項１５】
請求項１から１２のいずれか１項に記載の校正方法に用いられる、前記３次元視覚測定工程の測定結果を前記制御装置に送信する３次元視覚測定装置。
【請求項１６】
請求項１から１２のいずれか１項に記載の校正方法において、前記校正データおよび前記補正行列が、当該の機能部品の校正データとして記憶装置に格納される校正方法。
【請求項１７】
請求項１６に記載の校正方法において、前記記憶装置として、前記３次元視覚測定装置を制御する制御部の内部、前記３次元視覚測定装置、または、前記３次元視覚測定装置を備えた前記機能部品の筐体内に配置された記憶装置を用いる校正方法。
【請求項１８】
請求項１から１２のいずれか１項に記載の校正方法により取得した校正データおよび前記補正行列を格納した記憶装置を筐体内に備え、前記３次元視覚測定装置が装着された前記機能部品としてのロボットのエンドエフェクタ。
【請求項１９】
３次元視覚測定装置の３次元測定値が表現される第１の座標系と、前記３次元視覚測定装置を備えた機能部品の基準部位から定まる第２の座標系と、の間で座標変換を行うための校正データを取得する校正方法において、
制御装置が、３次元測定機の測定プローブを用いて前記機能部品の形状、または、前記機能部品と機械的に結合可能な治具の形状を３次元測定し、その３次元測定結果に基づき前記第２の座標系を定義するプローブ測定工程と、
前記制御装置が、前記３次元視覚測定装置により撮影可能な範囲内の３点以上の測定点において、前記３次元視覚測定装置により、前記第１の座標系における前記測定プローブの特定部位の座標値を３次元視覚測定させる３次元視覚測定工程と、
前記制御装置が、前記プローブ測定工程で定義された前記第２の座標系、前記３次元視覚測定工程における前記測定プローブの前記３点以上の測定点の前記第２の座標系における座標値、および、前記３次元視覚測定工程で前記３点以上の測定点において３次元視覚測定された前記測定プローブの特定部位の前記第１の座標系における座標値に基づき、前記３次元視覚測定装置を備えた機能部品の基準部位に原点を有する第１の座標系と、前記３次元視覚測定装置の３次元測定値が表現される第２の座標系と、の間で座標変換を行うための前記校正データと、前記３次元視覚測定装置により計測される３次元計測座標値のスケールを補正する要素を含む補正行列と、を取得する校正データ取得工程と、
を含む校正方法。
【請求項２０】
３次元視覚測定装置の３次元測定値が表現される第１の座標系と、前記３次元視覚測定装置を備えた機能部品の基準部位に原点を有する第２の座標系と、の間で座標変換を行うための校正データを取得する校正装置において、
測定プローブを備えた３次元測定機と、
制御装置と、を備え、前記制御装置は、
３次元測定機の測定プローブを用いて前記機能部品の形状、または、前記機能部品と機械的に結合可能な治具の形状を３次元測定し、その３次元測定結果に基づき前記第２の座標系を定義するプローブ測定工程と、
前記３次元視覚測定装置により撮影可能な範囲内の３点以上の測定点において、前記３次元視覚測定装置により、前記第１の座標系における前記測定プローブの特定部位の座標値を３次元視覚測定させる３次元視覚測定工程と、
前記プローブ測定工程で定義された前記第２の座標系、前記３次元視覚測定工程における前記測定プローブの前記３点以上の測定点の前記第２の座標系における座標値、および、前記３次元視覚測定工程で前記３点以上の測定点において３次元視覚測定された前記測定プローブの特定部位の前記第１の座標系における座標値に基づき、前記３次元視覚測定装置を備えた機能部品の基準部位に原点を有する第１の座標系と、前記３次元視覚測定装置の３次元測定値が表現される第２の座標系と、の間で座標変換を行うための前記校正データと、前記３次元視覚測定装置により計測される３次元計測座標値のスケールを補正する要素を含む補正行列と、を取得する校正データ取得工程と、
を実行する校正装置。
【請求項２１】
請求項１から１２のいずれか１項、または、請求項１９に記載の各工程を前記制御装置に実行させるための制御プログラム。
【請求項２２】
請求項２１に記載の制御プログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元視覚測定装置の３次元測定値が表現される第１の座標系と、３次元視覚測定装置を備えた機能部品の基準部位から定まる第２の座標系と、の間で座標変換を行うための校正データを取得する校正方法および校正装置に関する。
【背景技術】
【０００２】
近年、ロボットにより組立作業を実現する組立生産装置が求められている。ロボットによる組立生産装置では、ステレオカメラのような３次元視覚測定装置を用いて部品の３次元位置・姿勢を計測する手法が知られている。
【０００３】
このような３次元計測を行う場合、３次元視覚測定装置が例えばステレオカメラのような撮像装置であれば、事前に当該のカメラに対して内部・外部パラメータ校正を実施する。ここで、内部パラメータはレンズの焦点距離やひずみ特性などの光学特性を意味し、また、外部パラメータは、カメラがステレオカメラであれば、ステレオカメラ内の２つのカメラの相対位置・姿勢を意味する。これらの内部・外部パラメータが定まり、２つのカメラの撮影画像での計測点の対応付けを行えば、三角測量の原理により、計測点の３次元座標値を計測することができる。
【０００４】
ここで、内部・外部パラメータを用いて、ステレオカメラの撮影画像を平行化した際の３次元計測を考える。この平行化とは、カメラのレンズ歪みを補正し、２つのカメラが平行に設置された状態での撮影画像に変換することである。ここで、ｆをレンズの焦点距離、Ｂを２つのレンズ主点間の距離を示す基線長、ｄを２つのカメラの撮影画像での計測点位置のずれを示す視差とすると、Ｚ方向（画像の奥行き方向）の計測結果ｚはｚ＝Ｂｆ／ｄと表せる。これらのうち、焦点距離ｆは内部パラメータの一部、基線長（Ｂ）は外部パラメータの一部に相当する。
【０００５】
３次元位置計測するためには、内部・外部パラメータとして高精度な値を用いる必要がある。しかし、内部・外部パラメータを高精度に直接計測するには、精密にカメラの光学特性を測定する必要があり困難である。そこで、特許文献１に記載されているように、２つのカメラで複数の特徴点の位置を計測し、これらの特徴点に対してエピポーラ拘束条件が成立つように、例えば最適化計算により内部・外部パラメータを計算する校正手法が一般的に用いられている。ここで、エピポーラ拘束とは、ステレオカメラの２つのカメラの撮影画像上の対応点は同一平面（エピポーラ平面）内に存在するという拘束条件である。エピポーラ平面は２つのカメラのレンズ主点と計測点を通る平面である。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１０−１４３６６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載されたような手法で算出される内部・外部パラメータは、あくまでも、複数のカメラの撮影画像上に投影された各特徴点の位置が、同一平面にあるというエピポーラ拘束が成り立つように算出された値である。
【０００８】
この算出された内部・外部パラメータと、現実の真の内部・外部パラメータの間には誤差が生じる可能性がある。これは、校正時に特徴点位置を画像計測する際に誤差が生じたり、内部パラメータの一部であるレンズ歪みモデルが現実のレンズ歪みモデルとはぴったりと一致しなかったりするためである。従って、ステレオ計測で重要な内部パラメータの焦点距離や、外部パラメータの基線長の算出誤差によって、３次元視覚測定装置を用いた３次元計測にも誤差が生じる可能性がある。
【０００９】
特に、算出された焦点距離をｆ’（≠ｆ）、基線長をＢ’（≠Ｂ）とすると、Ｚ方向の計測結果ｚ’はｚ’＝Ｂ’ｆ'/ｄ＝（Ｂ’ｆ’／Ｂｆ）ｚとなる。このように、従来技術では、３次元視覚測定装置の３次元計測結果は、Ｚ成分ｚ’は、現実の真のＺ成分ｚに対して誤差を含んだものになる。この奥行き（Ｚ）方向（あるいは撮影倍率）の誤差を以下ではスケール誤差という。
【００１０】
本発明の課題は、以上の問題点に鑑み、３次元視覚測定装置のスケール誤差を含んだ３次元位置計測誤差を低減し、精度よく３次元視覚測定を行えるようにすることにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明においては、３次元視覚測定装置の３次元測定値が表現される第１の座標系と、前記３次元視覚測定装置を備えた機能部品の基準部位から定まる第２の座標系と、の間で座標変換を行うための校正データを取得する校正方法において、制御装置が、３次元視覚測定装置により撮影可能な範囲内の、前記３次元視覚測定装置との位置関係が予め既知である計測位置に、前記３次元視覚測定装置により座標値を計測可能なマークを位置決めするマーク設置工程と、制御装置が、前記３次元視覚測定装置により、第１の座標系における前記マークの座標値を計測する３次元視覚測定工程と、制御装置が、前記３次元視覚測定装置を備えた機能部品の基準部位から定まる第２の座標系における前記マークの座標値を算出するマーク座標値算出工程と、制御装置が、前記３次元視覚測定工程で視覚測定された前記第１の座標系における前記マークの座標値と、前記マーク座標値計測工程で計測された前記第２の座標系における前記マークの座標値を用いて、前記第１の座標系および前記第２の座標系の間で座標変換を行うための校正データと、前記３次元視覚測定装置により計測される３次元計測座標値のスケールを補正する要素を含む補正行列と、を算出する校正データ算出工程と、を含む構成を採用した。
【発明の効果】
【００１２】
上記構成によれば、校正データ、および３次元計測座標値のスケールを補正する要素を含む補正行列を用いて、３次元視覚測定装置のスケール誤差を含んだ３次元位置計測誤差を低減し、３次元視覚測定装置により精度よく３次元視覚測定を行える。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態１〜３に係わる校正装置の構成を示した説明図である。
【図２】本発明の実施形態１〜３に係わる測定プローブの説明図である。
【図３】本発明の実施形態１〜３に係わるステレオカメラと位置決め治具の説明図である。
【図４】本発明の実施形態１〜３に係わる３次元視覚測定装置の校正処理の全体を示したフローチャート図である。
【図５】本発明の実施形態１〜３に係わるステレオカメラの説明図である。
【図６】本発明の実施形態１〜３に係わる平行ステレオカメラの説明図である。
【図７】（Ａ）〜（Ｃ）は、本発明の実施形態１〜３に係わる位置決め座標系（Ｍ）の測定方法を示した説明図である。
【図８】本発明の実施形態１〜３に係わる測定プローブの移動範囲を示した説明図である。
【図９】本発明の実施形態１〜３に係わる３次元視覚測定装置の校正手順を示したフローチャート図である。
【図１０】本発明の実施形態２に係わる３次元視覚測定装置の補正行列の算出手順を示したフローチャート図である。
【図１１】本発明の実施形態２に係わる測定プローブの移動範囲を示した説明図である。
【図１２】本発明の実施形態３に係わる３次元視覚測定装置の補正行列の算出手順を示したフローチャート図である。
【図１３】（Ａ）、（Ｂ）は本発明の実施形態５に係わるステレオカメラを備えた機能部品としてロボット装置のエンドエフェクタ（ハンド）を示した説明図である。
【図１４】本発明の実施形態５に係わる３次元視覚センサの校正手順を示したフローチャート図である。
【図１５】（Ａ）〜（Ｃ）は本発明の実施形態５に係わるフィンガ座標系の測定方法を示した説明図である。
【図１６】本発明の各実施形態に係わる校正制御系の構成を示したブロック図である。
【図１７】本発明の実施形態６に係わるマーク設置装置を用いた校正装置の構成を示した説明図である。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照して本発明を実施するための形態につき説明する。なお、以下に示す構成はあくまでも一例であり、例えば細部の構成については本発明の趣旨を逸脱しない範囲において当業者が適宜変更することができる。また、本実施形態で取り上げる数値は、参考数値であって、本発明を限定するものではない。
【００１５】
＜実施形態１＞
本実施形態（下記の実施形態でも同様）では、校正対象構造物として３次元視覚測定装置を考える。この３次元視覚測定装置は、ロボット装置ないしその作業環境の所定部位（所定位置）に配置される。校正対象構造物としての３次元視覚測定装置は、以下の実施形態ではステレオカメラ（１０４）であり、ロボット装置ないしその作業環境の所定部位（所定位置）に装着するための位置決め部を有する機能部品である。
【００１６】
本発明の校正方法では、３次元視覚測定装置（ステレオカメラ１０４）の３次元測定値が表現される第１の座標系（Ｃ）と、３次元視覚測定装置（を備えた機能部品の）基準部位から定まる第２の座標系（Ｍ）と、の間で座標変換を行う校正データを取得する。即ち、本実施形態１〜実施形態６の校正システムでは、３次元視覚測定装置の計測に用いられる座標系と、校正対象構造物としての３次元視覚測定装置の位置決め（マウント）部を基準とした座標系の関係（相対位置姿勢）を校正する。
【００１７】
特に、本実施形態１〜実施形態５では、接触式の測定プローブ１０２を備えた３次元測定機１０１を利用する構成を前提とする。そして、後述の実施形態６でも説明するが、このステレオカメラ１０４（３次元視覚測定装置）で撮影する測定プローブ１０２は、校正用の「マーク」として考えることができる。即ち、この測定プローブ１０２は、本実施形態１〜実施形態５では、後述の実施形態６におけるマーク（７０２１：図１７）と読み換えても構わない。
【００１８】
本実施形態１〜実施形態５では、３次元測定機の測定プローブを上記の「マーク」として用いて以下のような制御過程を実行する。
【００１９】
・測定プローブ１０２により、機能部品の形状、または、機能部品と機械的に結合可能な治具の形状を３次元測定し、その３次元測定結果に基づき第２の座標系を定義する（プローブ測定工程）。
【００２０】
・ステレオカメラ１０４（３次元視覚測定装置）により撮影可能な範囲内の、同カメラ（１０４）との位置関係が予め既知である計測位置に、同カメラ（１０４）により座標値を計測可能なマークとして測定プローブ１０２を位置決めする（マーク設置工程）。
【００２１】
・ステレオカメラ１０４（３次元視覚測定装置）により、第１の座標系におけるマークの座標値を計測する（３次元視覚測定工程）。
【００２２】
・ステレオカメラ１０４（３次元視覚測定装置）を備えた機能部品の基準部位から定まる、プローブ測定工程で定義された第２の座標系におけるマークの座標値を算出する（マーク座標値算出工程）。
【００２３】
・第１の座標系、および第２の座標系におけるマークのそれぞれの座標値を用い、次のような補正データ（校正データ）を算出する（校正データ算出工程）。この補正データ（校正データ）には、第１および第２の座標系の間で座標変換を行うための校正データと、ステレオカメラ１０４（３次元視覚測定装置）で計測される３次元計測座標値のスケールを補正する要素を含む補正行列と、が含まれる。
【００２４】
図１は３次元視覚測定装置の校正システムの全体構成の一例を示してある。図１において、校正システムは定盤１０３上に、接触式の測定プローブ１０２を用いる３次元測定機１０１を備える。
【００２５】
３次元測定機１０１は、内部に配置されたＸＹＺスライダ（不図示）を用いて、接触式の測定プローブ１０２を３軸（ＸＹＺ）に沿った方向に移動することができる。３次元測定機１０１は、例えばレーザ光などを用いた位置センサ（不図示）によりＸＹＺスライダの移動量を高精度に計測することができ、これにより測定プローブ１０２の位置を高精度に計測することが可能である。測定プローブ１０２（ないしそのＸＹＺスライダ）の各軸の真直誤差（縦、横）、回転誤差（ロール、ピッチ、ヨー）、指示誤差と直角誤差などを含む計２１個の幾何学誤差は、予めレーザ干渉計やゲージなどを用いて算出し補正係数を求めておくことができる。これにより高精度に測定プローブ１０２の位置を計測可能である。なお、図１では、測定プローブ１０２（ないしそれを支持するＸＹＺスライダ）の保持部が門型に構成された３次元測定機１０１を図示しているが、３次元測定機１０１の機械的な構成はこのような門型に限定されるものではない。３次元測定機１０１には、測定プローブ１０２の位置を高精度に計測可能な装置であれば、例えば多関節アーム型など、他の機械的構造を利用することができる。
【００２６】
図２は、測定プローブ１０２の構成を示している。測定プローブ１０２はスタイラス２０１および先端球２０２から構成することができる。測定対象に接触させる先端球２０２は、スタイラス２０１の先端に取り付けられている。例えば、スタイラス２０１は３次元測定機１０１に対して着脱可能な構成とすることができる。このような着脱、交換可能な構成によって、例えば３次元視覚センサ（ステレオカメラ１０４）の光学性能や位置決め基準部の形状に適したスタイラス２０１（ないし先端球２０２）を用いることができる。
【００２７】
先端球２０２には、非透過で光沢が少なく、照明条件が安定しやすい、例えばジルコニアなどの材質が好ましい。ただし、先端球２０２には、上記のような３次元視覚センサによる計測に適した特性を有するものであれば、ルビー、窒化珪素、セラミック、その他の超硬材、といった材質を用いることができる。先端球２０２は、例えば球体形状とし、その真円度や寸法は製造時に予め特定の精度範囲にコントロールされているものが好ましい。本実施形態では、先端球２０２が球体の場合についてのみ説明するが、半球や円盤形状等の他の形状でも、後述の校正制御は実施可能である。
【００２８】
本実施形態の３次元測定機１０１において、測定プローブ１０２の装着部位には、圧力センサ２０３が内蔵されている。この圧力センサ２０３を介して、例えば、先端球２０２が対象物に接触したタイミングを検知することができる。この接触タイミング信号をトリガ信号として用いることにより、対象物に先端球２０２が接触した瞬間における先端球２０２の基準位置（例えば中心位置）を計測することができる。
【００２９】
本校正システムでは、３次元測定機１０１の定盤１０３上には位置決め治具１０５とリング照明１０６を設置し、位置決め治具１０５上には、３次元視覚測定装置としてステレオカメラ１０４を設置する。３次元測定機１０１は、３次元視覚測定装置（ステレオカメラ１０４）の校正専用であってもよく、また、３次元視覚測定装置（ステレオカメラ１０４）を校正する以外の他の用途に利用可能な製品として構成されていてもよい。
【００３０】
図３は、３次元視覚測定装置（３次元視覚センサ）としてのステレオカメラ１０４および位置決め治具１０５の構成を示している。図３に示すように、ステレオカメラ１０４は、例えばそれぞれの撮像光軸を所定の基線長だけ離間して配置された単眼カメラ３０１、３０２を備える。なお、本実施形態では、３次元視覚センサとしてパッシブ式のステレオカメラ１０４を用いることを考えるが、アクティブ式の光レーザ法、アクティブステレオ法などの測定方式による３次元視覚センサを用いてもよい。
【００３１】
ステレオカメラ１０４の所定部位、例えば、その筺体の裏側には、校正対象構造物（本実施形態では３次元視覚センサ、即ちステレオカメラ１０４）の位置決め基準部となる位置決めピン３０３、３０３を複数、例えば少なくとも２個、配置する。この位置決めピンの数は、３個以上配置してもよい。その場合、下記の位置決め治具１０５の位置決め穴３０４、３０４…の位置や数は、ステレオカメラ１０４の位置決めピンの位置や数に対応して定められる。
【００３２】
一方、定盤１０３上に配置される位置決め治具１０５には、ステレオカメラ１０４の位置決めピン３０３にそれぞれ対応する位置に位置決め穴３０４、３０４を穿孔してある。このような位置決めピン３０３と位置決め穴３０４の嵌合構造によって、ステレオカメラ１０４と治具１０５は機械的に結合可能であり、ステレオカメラ１０４のＸＹ方向の位置出しを高精度に行うことができる。また、ステレオカメラ１０４の筺体下面と、位置決め治具１０５の上面を接触させることにより、Ｚ方向の位置決めが行われる。このため、ステレオカメラ１０４の筺体下面と位置決め治具１０５の上面は、平面度が高精度に出ていることが好ましい。
【００３３】
ステレオカメラ１０４は、ロボット装置または、その作業環境の所定部位に配置することができるが、その場合、ロボット装置またはその作業環境の所定部位（所定位置）に装着するための位置決め部を有することが好ましい。例えば、ステレオカメラ１０４をロボット装置のビジョン系として用いる場合は、図３に示した位置決め治具１０５と同じ位置決め穴３０４、３０４を備えたカメラマウント１１０４をロボット装置Ｒ（ロボットアーム）の一部に配置する。ロボット装置Ｒは図３に破線で示してある。図３にロボット装置Ｒとして示した部分は、例えば手先側のリンクなどの躯体や、ハンドなどのエンドエフェクタに相当し、その一部に位置決め穴３０４、３０４を備えたカメラマウント１１０４が配置される。
【００３４】
本実施形態では、校正対象構造物の形状から定まる座標系が、位置決め基準部から定まる位置決め座標系Ｍであるものとする。図３に示すように、位置決め座標系ＭのＸＹ平面はステレオカメラ１０４筐体の下面に一致するものとする。また、位置決め座標系Ｍの原点は図３において左側の位置決めピン３０３の中心軸と、ステレオカメラ１０４筐体の下面の交点とする。また、Ｘ軸は左側の位置決めピン３０３から右側の位置決めピン３０３への方向とする。Ｙ軸はそのＸ軸と位置決め座標系Ｍの原点において直交し、同図紙面の手前から奥に向かう方向とする。なお、位置決め座標系Ｍ（第２の座標系）の原点は、機能部品たるステレオカメラ１０４の基準部位（位置決めピン３０３）の形状、寸法から一義的に定まる位置に配置すればよい。例えば、位置決め座標系Ｍ（第２の座標系）の原点は、２つの位置決めピン３０３の中心間の距離を２等分した位置のカメラ底面などに配置してもよい。
【００３５】
なお、本実施形態では、ステレオカメラ１０４の筺体（の下面）に直接、位置決め基準部が配置されているが、筺体とは別体構成であってもよい。また、本実施形態では、位置決め基準部として位置決めピン３０３、３０３を用いたが、ステレオカメラ１０４の筐体の側面を基準面として、適当な位置決め用の壁面などに押し当てて位置決めする構成などを用いてもよい。この場合、ステレオカメラ１０４の筐体の側面を直接測定プローブ１０２で接触して計測可能なため、位置決め治具１０５を用いずに済む可能性がある。
【００３６】
また、図示はしていないが、ステレオカメラ１０４が校正中に動かないようにするため、位置決め治具１０５にはステレオカメラ１０４をねじやクランプで固定できる機構を設けておくと好適である。その際、例えば、ばね等で一方向に力を印加しながら固定するような構造を採用することにより、ピン嵌合誤差を軽減でき、より高精度な校正を行えるようになる。
【００３７】
リング照明１０６は、ステレオカメラ１０４でスタイラス２０１の先端球２０２を撮影する際に使用する。リング照明１０６を用いることにより、先端球２０２を対称に照らすことが可能なため、ステレオカメラ１０４の計測精度を向上させることができる。特に、先端球２０２の外周部を均一に照明できるローアングルのリング照明が好ましい。
【００３８】
図１の校正システムの制御系の構成の一例を同図の右側に示してある。便宜上、本実施形態では、校正システムの制御系は、３次元測定機コントローラ１０７、ビジョンコントローラ１１３、計測コントローラ７００から成る構成としている。計測コントローラ７００は、本校正システムの主にユーザーインターフェースを構成するもので、少なくとも校正処理の操作に必要な表示部１２２、操作部１２３を含む。
【００３９】
ただし、校正システムの制御系の形態は必ずしも図１のような構成でなくても構わない。例えば、本実施形態の構成は、３次元測定機の部分を校正以外の目的でも利用できるような形態を考慮し、計測コントローラ７００、３次元測定機コントローラ１０７、およびビジョンコントローラ１１３を独立した構成にしてある。しかしながら、校正専用のシステムとする場合には、本校正システムの制御系は、下記のような機能を有する計測コントローラ７００、３次元測定機コントローラ１０７、およびビジョンコントローラ１１３が一体化された制御装置として構成されていてもよい。
【００４０】
３次元測定機コントローラ１０７、ビジョンコントローラ１１３および計測コントローラ７００は、例えば下記のような機能ブロックから構成される。これらのコントローラのより具体的な構成については、後で図１３を参照して説明する。
【００４１】
３次元測定機コントローラ１０７は、３次元測定機１０１および、測定プローブ１０２を制御するコントローラである。３次元測定機コントローラ１０７は、プローブ制御部１０８、不揮発性メモリ１０９、スライダ駆動部１１０、プローブ位置計測部１１１、圧力計測部１２４、温度計測部１２０、通信部１１２から成っている。３次元測定機コントローラ１０７はコンピュータであり、３次元測定機コントローラ１０７内の各部はハードウェアや回路で構成されてもよいし、ソフトウェアで構成されてもよい。
【００４２】
プローブ制御部１０８は、不揮発性メモリ１０９内に格納されている制御プログラムや、スライダ操作部１２１からの指令に沿って、３次元測定機コントローラ１０７内の各部の制御を司る機能を有する。例えば、測定プローブ１０２の位置を制御したり、先端球２０２中心の現在位置を読み込んだり、現在位置をビジョンコントローラ１１３に送信したりする手続きを制御する。
【００４３】
不揮発性メモリ１０９は、スタイラスの校正結果や、３次元測定機１０１の幾何学公差の補正関数、後述する校正制御のための制御プログラムを格納する。当然ながら、校正処理を行うに先立って、制御プログラムは不揮発性メモリ１０９に予め格納させておく。
【００４４】
スライダ駆動部１１０は３次元測定機１０１内のＸ、Ｙ、Ｚ方向のスライダを、プローブ制御部１０８から指令された量だけ移動させ、測定プローブ１０２を任意の位置に移動させる機能を有する。
【００４５】
プローブ位置計測部１１１は、スタイラス２０１の先端球２０２中心の現在位置を計測する機能を有する。３次元測定機１０１内のＸ、Ｙ、Ｚスライダ位置の計測結果と、３次元測定機１０１の幾何学公差の補正関数、スタイラス校正結果を用いて、先端球２０２の中心位置を算出する。また、各スライダには温度センサが搭載されており、温度計測部１２０を介して各スライダの温度を計測することが可能である。プローブ位置計測部１１１は温度計測部１２０を介して、各スライダ近傍の温度を計測し、この温度情報を用いて、先端球２０２の中心位置を補正する温度補償補正を行う。この温度補償補正によって、より高精度に先端球２０２の中心位置を計測することができる。
【００４６】
圧力計測部１２４は、測定プローブ１０２内の圧力センサ２０３の計測値を読み取る機能を有する。計測値が事前に設定したしきい値を超えた場合、プローブ位置計測部１１１にトリガ信号を送信する。これにより、測定プローブ１０２が接触した瞬間の先端球２０２中心の現在位置を計測することができる。
【００４７】
通信部１１２はビジョンコントローラ１１３内の通信部１１７とデータを送受信する機能を有する。３次元測定機コントローラ１０７からビジョンコントローラ１１３へは、測定プローブ１０２の先端球２０２中心の現在位置を送信する。
【００４８】
スライダ操作部１２１は、測定プローブ１０２を任意の位置に移動させるためのコントローラである。ＸＹＺ方向のスライダを別々に操作させることが可能である。
【００４９】
ビジョンコントローラ１１３はステレオカメラ１０４とリング照明１０６を制御し、校正演算を実施するコントローラである。ビジョンコントローラ１１３はコンピュータであり、ビジョンコントローラ１１３内の各部はハードウェアや回路で構成されてもよいし、ソフトウェアで構成されてもよい。
【００５０】
ビジョンコントローラ１１３内のビジョン制御部１１５は、不揮発性メモリ１１６内に格納されている制御フローや、操作部１２３からの指令に沿って、ビジョンコントローラ１１３内の各部の制御を司る機能を有する。具体的には、ステレオカメラ１０４の撮影タイミングを制御したり、撮影画像を画像処理部１１８に渡し画像処理したり、先端球２０２中心の現在位置を揮発性メモリ１１４に送信したりする手続きを制御する。また、本実施形態では、ビジョンコントローラ１１３は、後述のようにカメラ座標系Ｃと位置決め座標系Ｍ間の相対位置・姿勢を演算する機能を有する。ビジョンコントローラ１１３は、この演算結果は、カメラ座標系Ｃと位置決め座標系Ｍ間の座標変換を行うための校正情報（本実施形態の校正データ（ＭＴC）および補正行列（Ａ））は、例えば不揮発性メモリ１１６に格納することができる。不揮発性メモリ１１６はカメラ座標系Ｃと位置決め座標系Ｍ間の校正結果や、ビジョン周りの制御を行う後述のビジョン制御手順を格納するために用いられる。
【００５１】
揮発性メモリ１１４は、例えばＤＲＡＭやＳＲＡＭなどの記憶デバイスから成り、先端球２０２の中心位置の計測結果を一時的に格納する機能を有する。不揮発性メモリ１１６および揮発性メモリ１１４は本発明の記憶装置に含まれるものである。例えば、本実施形態では、揮発性メモリ１１４にデータを一時的に格納するが、同じデータは不揮発性メモリ１１６にデータを格納してもよい。
【００５２】
撮影部１１９はステレオカメラ１０４とリング照明１０６にトリガ指令を送信し、ステレオカメラ１０４から撮影画像を取得する機能を有する。
【００５３】
画像処理部１１８はステレオカメラ１０４から伝送された画像データについて画像処理を行う機能を有する。具体的には先端球２０２の中心位置計測である。本実施形態では、先端球２０２は例えば白色の球体（白球）とする。
【００５４】
白球の中心位置の計測処理の概略は、次の通りである。まず、画像処理部１１８において、ステレオカメラ１０４内部の単眼カメラ３０１と３０２の撮影画像データに対してエッジ抽出処理を行う。そして、各エッジの長さと真円度から、先端球２０２のエッジを抽出する。抽出したエッジに対して楕円近似を行い、楕円中心の画像座標を求める。各画像の楕円中心から求まる視差と、ステレオカメラ１０４の校正結果を用いて、ステレオ計測を実施し、先端球２０２中心のカメラ座標系Ｃにおける位置を求める。
【００５５】
通信部１１７は３次元測定機コントローラ１０７と通信を行う機能を有する。ビジョンコントローラ１１３から３次元測定機コントローラ１０７へは、測定プローブ１０２の移動指令を送信する。計測コントローラ７００は、撮影画像・校正結果の表示を行なう表示部１２２と、情報の入力を行なう操作部１２３と、を有する。表示部１２２は、ＬＣＤなどの表示デバイスを用いたディスプレイ装置、操作部１２３は、マウス、キーボードなどのＵＩ（ユーザーインターフェース）装置から構成される。
【００５６】
ここで、図１６に、図１の３次元測定機コントローラ１０７、ビジョンコントローラ１１３、あるいは計測コントローラ７００を実現するためのより具体的な構成の一例を示す。
【００５７】
図１６の構成は、主制御部として機能するＣＰＵ６０１を中心にＲＯＭ６０２、ＲＡＭ６０３、ＨＤＤ６０４、各種のインターフェース６０５〜６０７を配置したものである。
【００５８】
ＣＰＵ６０１には、ＲＯＭ６０２、ＲＡＭ６０３、ＨＤＤ６０４、および各種のインターフェース６０５〜６０７が接続される。ＲＯＭ６０２には、ＢＩＯＳ等の基本プログラムが格納される。３次元測定機コントローラ１０７の場合、ＲＯＭ６０２には、図１の不揮発性メモリ１０９を構成する例えばＥ（Ｅ）ＰＲＯＭのようなデバイスを含めることができる。
【００５９】
ＲＡＭ６０３は、ＣＰＵ６０１の演算処理結果を一時的に記憶する記憶装置である。図１のビジョンコントローラ１１３の揮発性メモリ１１４の記憶領域は、例えば、このＲＡＭ６０３によって実装することができる。
【００６０】
ＨＤＤ６０４は、外部記憶装置として配置することができる。ＨＤＤ６０４は、必ずしも必須ではないが、ＣＰＵ６０１の演算処理結果である各種のデータ等を記憶する記憶部を構成する。また、ＨＤＤ６０４は、上記の３次元測定機コントローラ１０７が用いる不揮発性メモリ１０９として利用することもできる。また、ＨＤＤ６０４には、ＣＰＵ６０１に各種演算処理を実行させるためのプログラムを記録したファイルを格納することができる。ＣＰＵ６０１は、ＲＯＭ６０２ないしＨＤＤ６０４に記録（格納）されたプログラムを実行することにより、後述の制御手順を実行する。
【００６１】
後述の制御手順を実行させるプログラムをＲＯＭ６０２ないしＨＤＤ６０４に記録（格納）する場合、これらの記録媒体は本発明を実施するための制御手順を格納したコンピュータ読み取り可能な記録媒体を構成することになる。なお、後述の制御手順を実行させるプログラムは、ＲＯＭ６０２ないしＨＤＤ６０４のような固定的な記録媒体に格納する他、各種フラッシュメモリや光（磁気）ディスクのような着脱可能なコンピュータ読み取り可能な記録媒体に格納してもよい。このような格納形態は、本発明を実施する制御手順を実行させるプログラムをインストールしたり更新したりする場合に利用できる。また、制御手順を実行させるプログラムをインストールしたり更新したりする場合、上記のような着脱可能な記録媒体を用いる他、ネットワーク（不図示）を介してプログラムをダウンロードする方式を利用できる。
【００６２】
ＣＰＵ６０１は、インターフェース６０５を介して、ネットワーク通信を行うことができる。インターフェース６０５は、例えば有線接続（ＩＥＥＥ  ８０２．３など）、無線接続（ＩＥＥＥ８０２．ｘｘなど）などの各種のネットワーク通信方式によって構成することができる。インターフェース６０５によって、例えば図１の３次元測定機コントローラ１０７、あるいはビジョンコントローラ１１３の通信部１１２、１１７を実装することができる。
【００６３】
また、ＣＰＵ６０１は、インターフェース６０５を介して接続された、例えばＴＣＰ／ＩＰのようなプロトコルを用いて通信を行うネットワーク（不図示）上の他の資源と通信することができる。このようなネットワーク上の他の装置（不図示）としては、本校正システムの全体の動作を制御するための上位サーバなどが考えられる。この場合、ＣＰＵ６０１はインターフェース６０５〜ネットワーク（不図示）を介して、上位サーバに対して、例えば校正処理に関するログ情報などの稼働情報をリアルタイムで送信することができる。あるいはサーバから後述の生産制御に係る制御プログラムをダウンロードしてＲＯＭ６０２やＨＤＤ６０４にインストールしたり、あるいは既にインストールされているプログラムを新版に更新したりすることもできる。
【００６４】
インターフェース６０６、６０７は、例えば各種のシリアルないしパラレルインターフェース規格に基づき構成できる。インターフェース６０６、６０７は、図１の３次元測定機コントローラ１０７においては、スライダ駆動部１１０のような駆動源を含む被制御部と通信するのに用いることができる。また、インターフェース６０６、６０７は、図１の３次元測定機コントローラ１０７において、１１１、１２０、１２４などの符号で示した計測（センサ）部から測定情報を読み込むのに用いることができる。
【００６５】
また、図１のビジョンコントローラ１１３においては、インターフェース６０６、６０７は、撮影部１１９に含まれる撮像センサなどから測定（画像）情報を読み込むのに用いることができる。
【００６６】
また、本校正システムで、主にユーザーインターフェースを構成する図１の計測コントローラ７００の場合は、インターフェース６０６、６０７は、表示部１２２や操作部１２３に対する表示情報や操作情報の入出力に用いることができる。
【００６７】
以下、図４のフローチャートを参照し、ステレオカメラ１０４（３次元視覚測定装置）の校正方法について説明する。図４の校正手順では、まずステレオカメラ１０４の内部パラメータ、外部パラメータを求める校正作業を実施する（Ｓ４０１）。内部・外部パラメータはビジョンコントローラ１１３内の不揮発性メモリ１１６に保存される。
【００６８】
図５は、本実施形態のステレオカメラ１０４（３次元視覚測定装置）と、校正処理に関係する各座標系を示している。図５において、ステレオカメラ１０４（３次元視覚測定装置）は、撮像手段としてそれぞれイメージセンサ５０１、５０２を備えた２つの単眼カメラ３０１、３０２から構成される。カメラ座標系Ｃｌ、Ｃｒの原点は、例えば、単眼カメラ３０１、３０２の撮像光学系の主点位置などに取られる。ステレオカメラ１０４を構成する単眼カメラ３０１、３０２の内部パラメータによって、イメージセンサ５０１と５０２上に定まるセンサ座標系Ｓｌ、Ｓｒと、カメラ座標系Ｃｌ、Ｃｒとの相対位置・姿勢が定まる。単眼カメラ３０１、３０２の内部パラメータには、各々の焦点距離、画像中心、レンズ歪み等の、撮影特性に関するジオメトリ情報が含まれる。
【００６９】
一方、この種のステレオ撮像系において、外部パラメータは、それら単眼カメラ３０１と３０２間の相対位置・姿勢を規定するパラメータである。これにより、単眼カメラ３０１と３０２の各カメラ座標系ＣｌとＣｒとの相対位置・姿勢が求まる。
【００７０】
ステレオカメラ１０４の内部・外部パラメータの校正は、例えば上記の特許文献１に記載されるような一般的な手法による場合、校正用被写体の撮影を介して行う。例えば、ステレオカメラ１０４によって、既知のサイズ、形状の画像パターンを付与した校正用被写体を、対象の位置姿勢を変えながら複数枚撮影する。そして、単眼カメラ３０１と３０２の撮影画像に対して画像処理を行い、画像上における校正用被写体のパターン上の特徴点の位置を求める。この時、理論上、各単眼カメラの撮影画像上で、同じ特徴点は、同一平面上（エピポーラ平面）に存在するという条件（エピポーラ拘束）が成り立つ。このエピポーラ拘束が成り立つように、例えば最適化計算などを介して、当該のステレオカメラ１０４の内部・外部パラメータを算出することができる。校正用被写体としては、一定の精度を有するよう作成された、チェスボードないし市松模様の画像パターンを付与した校正プレートなどが用いられる。
【００７１】
ただし、次のような要因により、内部・外部パラメータには誤差が生じる可能性がある。まず、画像処理によりパターンの特徴点位置を計測する場合、量子化誤差に起因する読み取り誤差が発生する。また、現実世界では複数枚のレンズを用いた複合レンズを用いており、レンズ歪みを多項式モデル等の単純なモデルのみで表現するのは極めて困難である。特に広角レンズ等の歪みが大きいレンズの場合、モデル化誤差の影響が大きくなる可能性がある。
【００７２】
ステレオカメラ１０４の内部・外部パラメータを用いると、三角測量の原理により、撮影画像上で求まるセンサ座標系Ｓｌ、Ｓｒ基準の位置を、例えば左カメラ座標系Ｃｌを基準とした３次元位置に変換する、といったステレオ計測が可能となる。このように、ステレオカメラ１０４のカメラ座標系Ｃと、左カメラ座標系Ｃｌは、便宜上、等価であるものとして扱うことがある。例えば、単眼カメラ３０１と３０２の撮像光軸が平行に配置されており、図６に示すような平行ステレオを構成する場合、計測点ＰのＺ座標のステレオ計測結果は下式のように表現できる。
【００７３】
【数１】
2019052983.tif 000003
【００７４】
ここで、ｆは焦点距離、Ｂは単眼カメラ３０１、３０２のレンズ主点間の距離である基線長、ｄは単眼カメラ３０１、３０２の撮影画像上における特徴点位置の差である視差を意味する。ｆは内部パラメータから、Ｂは外部パラメータから決定される。上式（１）から、内部・外部パラメータの校正精度がステレオ（３次元）計測精度に大きく影響を与えることがわかる。
【００７５】
次に、図４のステップＳ４０２において、３次元測定機１０１のスタイラス２０１の校正を行う。ここでは、スタイラス長や先端球２０２の球径等を算出する。スタイラス校正結果と、３次元測定機１０１の各スライダの移動量を用いることにより、先端球２０２中心の現在位置を精密に計測することができる。
【００７６】
ステップＳ４０２のスタイラス校正は、例えば次のようにして行う。例えば、所期の真球度が出ている基準球を、定盤１０３上に固定しておき、この基準球の表面の複数個所に対して、測定プローブ１０２によって接触計測を行う。この計測結果と、基準球の設計値を比較し、スタイラス校正データを取得する。
【００７７】
次に、図４のステップＳ４０３において、ステレオカメラ１０４の位置決め座標系Ｍ（第２の座標系）を定義するための測定プローブ１０２による測定点を決定する（プローブ測定工程）。
【００７８】
図３に示すように、本実施形態のステレオカメラ１０４は位置決め基準部として位置決めピン３０３を有し、この位置決めピン３０３によって、例えばロボットアーム（Ｒ）などに固定される。例えば、位置決め座標系Ｍ（第２の座標系）の原点は、図示のように左側の位置決めピン３０３の中心軸とステレオカメラ１０４の筐体の下面の交点とする。
【００７９】
この場合、ステレオカメラ１０４の筐体前面などをスタイラス２０１で測定し、上記の基準部位（位置決めピン３０３の１つ）に配置された位置決め座標系Ｍ（第２の座標系）の原点を特定するものとしてもよい。その場合、ステレオカメラ１０４の筐体および位置決めピン３０３の工作精度が充分保たれている必要がある。
【００８０】
本実施形態では、ステレオカメラ１０４の筐体前面などをスタイラス２０１で測定する時は、図１のようにステレオカメラ１０４を、位置決め治具１０５を介して３次元測定機１０１の定盤１０３上の所定位置に配置する。この位置決め治具１０５は、実際に特定のステレオカメラ１０４の装着に用いるものと同じものか、あるいは工作精度が充分保たれた上で作成された基準部材とする。
【００８１】
本実施形態では、例えば、図７（Ａ）〜（Ｃ）に示すように、位置決め治具１０５の位置決め穴３０４を測定プローブ１０２で測定する方式を取る。この場合、位置決めピン３０３と位置決め治具１０５の位置決め穴３０４の工作精度が充分保たれていることが条件となる。
【００８２】
位置決め座標系ＭのＸＹ平面を決定するため、作業者は、スライダ操作部１２１を用いて図７（Ａ）のように位置決め治具１０５の上面に、測定プローブ１０２の先端球２０２を３点以上（２０１ａ、２０１ｂ、２０１ｃ…）、接触させる。この時、３次元測定機コントローラ１０７内のプローブ制御部１０８は、接触した瞬間のプローブ位置を記憶する（プローブ測定工程）。
【００８３】
次に、図７（Ｂ）、（Ｃ）に示すように、測定プローブ１０２の先端球２０２を２つの位置決め穴３０４、３０４の内側にそれぞれ、３点以上接触させ、接触した瞬間のプローブ位置を記憶しておく。接触時の計測値を先ほど求めた位置決め座標系ＭのＸＹ平面に投影した点を求め、これらの投影点に対して円近似を行い、位置決め穴３０４の中心位置を計測する。以上のようにして、位置決め座標系Ｍ（図５）の原点とＸ、Ｙ軸の向きを取得することができる。
【００８４】
なお、本実施形態では、ステップＳ４０３では、測定プローブ１０２による測定点の教示のみ行い、実際の測定プローブ１０２の測定に基づく位置決め座標系Ｍの定義は、後述のステップＳ９０１（図９）で行うものとする。しかしながら、ステップＳ４０３では、測定プローブによる測定点の教示のみならず、実際の３次元形状測定を行い、位置決め座標系Ｍの定義まで実行してもよい。
【００８５】
次に、図４のステップＳ４０４において、ステレオカメラ１０４でスタイラス２０１の先端球２０２を撮影する際の、スタイラス２０１の位置を決定する。ここで、図８を用いてスタイラス２０１の移動領域について説明する。スタイラス２０１の移動領域は、ステレオカメラ１０４の単眼カメラ３０１、３０２の共通視野領域ＯＶをカバーすることが好ましい。この共通視野領域ＯＶとは、単眼カメラ３０１と３０２が共に焦点が合った状態で対象を撮影できる領域である。
【００８６】
例えば、単眼カメラ３０１、３０２のいわゆる被写界深度が重なり合う角錐台形状の空間範囲に相当し、この共通視野領域ＯＶ内はステレオ計測を精度よく実施可能な領域である。このように、単眼カメラ３０１と３０２に共通する視野領域全体の撮影情報を用いたほうが、各計測位置に対する誤差情報の欠落が少なくなるため、より高精度な校正を実現できる。
【００８７】
なお、測定プローブ１０２のスタイラス２０１の移動領域はステレオカメラ１０４の光学特性や校正結果から、自動的に決定してもよい。具体的には、ステレオカメラ１０４内の各単眼カメラ３０１と３０２のセンササイズ、焦点距離とワークディスタンスと、単眼カメラ３０１と３０２間の相対位置・姿勢である外部パラメータからカメラ座標系Ｃを基準とした共通視野領域を求める。また、カメラ座標系Ｃと位置決め座標系Ｍ間の相対位置・姿勢の設計値を用いて、位置決め座標系Ｍ基準での共通視野領域を求める。ステップＳ４０４において、上記のようにして決定した共通視野領域内で、プローブ制御部１０８により測定プローブ１０２のスタイラス２０１を複数、好ましくは３点以上の移動位置を自動的に移動させる。そして、それぞれの位置でスタイラス２０１の先端球２０２を撮影する。即ち、ステレオカメラ１０４で良好に撮影可能な範囲内の３点以上の測定点にスタイラス２０１を移動させ、それぞれの位置で先端球２０２を撮影させる。
【００８８】
ここまでの処理が、本実施形態の事前準備に相当する。そして、図４のステップＳ４０５（ステレオカメラ１０４によるスタイラス２０１の先端球２０２の位置計測）、Ｓ４０６（校正データ、および補正行列の演算：校正データ取得工程）が本校正システムにおける狭義の校正処理に相当する。
【００８９】
ここで、カメラ座標系Ｃと位置決め座標系Ｍにおける先端球２０２の中心位置の計測（Ｓ４０５）と、ステレオ計測結果の補正関数算出（Ｓ４０６）で実施する処理の詳細フローを図９に示す。図９では、ステップＳ９０１〜Ｓ９０７が図４のステップＳ４０５に、ステップＳ９０８が図４のステップＳ４０６にそれぞれ相当する。
【００９０】
図９の処理は、例えば操作部１２３における作業者の校正開始ボタンの押下などを契機として自動的に実施する。まず、図９のステップＳ９０１では、３次元測定機コントローラ１０７が上記のステップＳ４０３で教示した測定点をスタイラス２０１の先端球２０２で自動的に走査し、位置決め治具１０５を接触測定する（プローブ測定工程）。本測定結果を用いて、ステレオカメラ１０４の位置決め座標系Ｍ（第２の座標系）が定義される。位置決めピン３０３と位置決め穴３０４の双方の精度が充分あれば、位置決め穴３０４の中心位置は、位置決めピン３０３の中心位置として取り扱うことができる。このようにして、３次元測定機コントローラ１０７のプローブ制御部１０８は位置決め座標系Ｍ（図３：第２の座標系）の原点の位置とＸ軸（Ｙ軸）の向きを定義することができる。これにより、３次元測定機コントローラ１０７は、例えば位置決め座標系Ｍを基準として、スタイラス２０１の先端球２０２の中心位置を計測することが可能となる。
【００９１】
次に、ステップＳ９０２において、作業者はステレオカメラ１０４を位置決め治具１０５上に、定盤１０３上にリング照明１０６を設置する。
【００９２】
ステップＳ９０３〜Ｓ９０７のループでは、図４のステップＳ４０４でステレオカメラ１０４の共通視野領域ＯＶ内に配置した３点以上の測定点のそれぞれにスタイラス２０１を移動させる。そして、それぞれの各測定点において、ステレオカメラ１０４により、測定プローブ１０２の先端球２０２を３次元視覚測定する。
【００９３】
まず、ステップＳ９０３では、ビジョン制御部１１５は３次元測定機コントローラ１０７にプローブ移動指令を送信する。指令を受信したプローブ制御部１０８は、スタイラスの移動位置の決定処理（図４のＳ４０４）で事前に設定した測定点にスタイラス２０１の先端球２０２を移動させる。続いて、ステップＳ９０４において、スタイラス２０１の移動が完了すると、プローブ位置計測部１１１を介して、位置決め座標系Ｍ基準の先端球２０２中心の現在位置を計測する。計測値をビジョンコントローラ１１３に送信する。これに応じて、ビジョンコントローラ１１３内のビジョン制御部１１５は、受信した先端球２０２の中心位置を揮発性メモリ１１４に格納する。
【００９４】
次に、ステップＳ９０５では、ビジョンコントローラ１１３のビジョン制御部１１５は、撮影部１１９を介してステレオカメラ１０４とリング照明１０６に撮影指令を送信し、先端球２０２を撮影させる。これにより単眼カメラ３０１、３０２で撮影されたステレオ撮影画像は画像処理部１１８に送信される。ステップＳ９０６では、ビジョン制御部１１５が３次元計測処理を行い、カメラ座標系Ｃにおける撮影された当該の先端球２０２の中心位置の座標値を取得する。この先端球２０２の中心位置の座標値は揮発性メモリ１１４に格納する（Ｓ９０６）。
【００９５】
次に、ステップＳ９０７において、スタイラス２０１の移動位置の決定処理（Ｓ４０４）で決定した、全測定点への移動が完了したか否かを判定する。全測定点への移動とステレオカメラ１０４による撮影が完了していない場合、ステップＳ９０３に戻り、次の移動位置にスタイラス２０１を移動させ、ステップＳ９０３〜Ｓ９０６の処理を再度実施する。ステップＳ９０７で全測定点への移動と撮影が完了している場合には、ステップＳ９０８のステレオ計測結果の補正関数算出処理に移行する。
【００９６】
ステップＳ９０８の補正関数算出処理では、ステップＳ９０４で求めた位置決め座標系Ｍにおける先端球２０２の中心位置と、ステップＳ９０６で求めたカメラ座標系Ｃにおける先端球２０２の中心位置のデータを使用する。理想的には、これらのデータには次式（２）の関係が成立する。
【００９７】
【数２】
2019052983.tif 000004
【００９８】
ここでＴは左上の添え字の座標系から、右下の添え字の座標系への同次座標変換行列とする。同次座標変換行列は回転行列（３自由度）と、平行移動行列（３自由度）を用いて次式（３）のように表す。
【００９９】
【数３】
2019052983.tif 000005
【０１００】
しかしながら、現実には、位置決め座標系Ｍとカメラ座標系Ｃとの関係を式（２）のような関係式だけで表すことは困難である。なぜなら、位置決め座標系Ｍとカメラ座標系ＣのＺ座標のスケールが異なる場合があるためである。
【０１０１】
ここで、図６のような平行ステレオの場合を例に説明する。一般に、ステレオカメラの内部・外部パラメータは、エピポーラ拘束が成り立つように算出された値であり、光学的に定まる実際の焦点距離や基線長とは異なる。ここで、真の焦点距離をｆ、基線長をＢとし、内部・外部パラメータから求まる焦点距離をｆ’（≠ｆ）、基線長をＢ’（≠Ｂ）とする。
【０１０２】
ステレオカメラ１０４の撮影画像は、レンズを通して光学的に画像センサに投影されたものであるから、撮影画像は真の焦点距離（ｆ）と、基線長（Ｂ）に依存した画像となる。この撮影画像に対して画像処理を実施し、計測点Ｐ（ｘ，ｙ，ｚ）の視差を算出した場合、理想的には視差ｄは次式（４）のように表せる。
【０１０３】
【数４】
2019052983.tif 000006
【０１０４】
上式で求めた視差を用いてステレオ計測を行う場合、焦点距離と基線長は内部・外部パラメータから求めた値を用いる。従って、ステレオ計測で求まる計測点ＰのＺ座標ｚ’は次式（５）のように表される。
【０１０５】
【数５】
2019052983.tif 000007
【０１０６】
上式（４）、（５）より、計測点Ｐの物理的な真のＺ座標zと、ステレオ計測で求まるＺ座標ｚ’には次式（６）のような関係がある。
【０１０７】
【数６】
2019052983.tif 000008
【０１０８】
上式（６）に示すように、物理的な真のＺ座標zとステレオ計測結果のＺ座標ｚ’のスケールが異なることがわかる。ここで、位置決め座標系Ｍのスケールは、３次元測定機１０１を用いて高精度に測定できるから、物理的なスケールと同等と考えられる。一方、カメラ座標系Ｃとステレオ計測から定まる座標系は同じ座標系である。以上のように、位置決め座標系Ｍとカメラ座標系ＣのＺ座標のスケールは異なるということがわかる。
【０１０９】
また、式（２）のような関係式だけで表すことは困難である理由としては、レンズ歪みを精密にモデル化することが困難であるという点もある。一般的に、レンズ歪みは多項式モデルで近似されるが、複数枚のレンズで組み立てられた複合レンズを用いた現実世界では、歪み曲線を単調なモデルで表すのは困難である。歪みモデル化誤差の影響が、計測位置によって変化するため、一概に式（２）のような関係式だけでは表すことが困難である。特に、レンズ歪みが大きいレンズでは、このモデル化誤差が大きく、ステレオ計測精度に与える影響も増大する。
【０１１０】
以上のような事情から、位置決め座標系Ｍにおける先端球２０２の中心位置と、カメラ座標系Ｃにおける先端球２０２の中心位置のデータの関係式を次式のように修正する。
【０１１１】
【数７】
2019052983.tif 000009
【０１１２】
この補正行列（Ａ）が、本実施形態におけるステレオ計測結果を補正する行列で、この補正行列（Ａ）は３次元計測座標値のスケールを補正する要素を含む。ここで、上式（７）は、変形すると下式（８）のように表すことができる。
【０１１３】
【数８】
2019052983.tif 000010
【０１１４】
ここで、位置決め座標系Ｍのける先端球２０２の中心位置と、カメラ座標系Ｃにおける先端球２０２の中心位置は、図９のステップＳ９０４、Ｓ９０６で計測しているため既知である。
【０１１５】
次に、図１０を参照して、ステレオ計測結果の補正行列Ａの算出フローを説明する。本実施形態では、ステレオ計測結果のスケール補正のみを実施する場合について説明する。図１０のステップＳ１００１では、補正行列Ａをスケール変換行列としてモデル化する。Ｚ座標のスケール関数をｍｚとすると、補正行列Ａは次式（９）のように表すことができる。
【０１１６】
【数９】
2019052983.tif 000011
【０１１７】
なお、上式（９）ではＺ座標のスケール関数のみを考慮したが、Ｘ、Ｙ座標のスケール関数も組み込んでもよい。ステレオ計測のＸ、Ｙ方向の計測精度はＺ方向の計測精度に依存するため、Ｚ方向のみならず、Ｘ、Ｙ方向のスケールも異なるからである。Ｘ、Ｙ座標のスケール関数を関数ｍｘ、ｍｙとすると、補正行列Ａは下式（１０）のように表すことができる。この補正行列Ａにより、Ｘ、Ｙ、Ｚ座標のすべてのスケールが補正されるため、さらに高精度に校正を行うことが可能となる。
【０１１８】
【数１０】
2019052983.tif 000012
【０１１９】
上記のｍｘ、ｍｙ、ｍｚは定数でもよいし、撮影光軸中心からの距離や、ステレオ計測結果に依存した変数を用いてもよい。定数の場合、補正が単純なため、ステレオ計測結果の補正時間を短縮できる可能がある。
【０１２０】
このように補正行列Ａのモデルを定義した後、図１０のステップＳ１００２において、下式（１１）に示すように、式（８）のノルムの二乗和が０に近づくよう、同次座標変換行列ＭＴＣと補正行列Ａに対して、非線形最適化計算を解く。これにより、補正行列Ａを高精度に算出すことが可能である。ここで、Ｎは測定プローブ１０２の全移動回数（測定プローブ１０２を移動させて行った撮影の回数）である。
【０１２１】
【数１１】
2019052983.tif 000013
【０１２２】
このようにして算出したステレオ計測結果の補正行列Ａおよび、同次座標変換行列ＭＴＣを、ビジョンコントローラ１１３内の不揮発性メモリ１１６に保存する（Ｓ１００３）。実際にロボット等にステレオカメラ１０４を設置して用いる場合、ステレオカメラ１０４で計測した３次元測定結果に対して、本実施形態の補正行列Ａによるスケール補正を行うことにより、高精度な３次元測定が可能となる。
【０１２３】
なお、本実施形態では、接触式の測定プローブ１０２を有する３次元測定機１０１を用いた校正システムについて説明したが、高精度に加工した治具システムを用いてもよい。具体的には、ステレオカメラで高精度な位置計測可能なマークのような対象物（チェッカボードなど）が位置決め基準部に対して、例えば異なるＺ方向の位置に高精度に位置決めされるよう、加工または調整されていればよい。
【０１２４】
ただし、本実施形態のように３次元測定機１０１を用いると、３次元視覚測定装置を備えた機能部品または、その位置決め治具の位置決め部の位置を直接、計測できるため、機能部品または、位置決め治具をラフにセッティングしても構わない、という利点がある。また、３次元測定機１０１を用いる場合には、３次元視覚測定装置を含む機能部品の形状が変わっても、同様にラフなセッティングで校正を行える利点がある。即ち、本実施形態のように３次元測定機１０１を用いることにより、機能部品と測定プローブ間の位置調整の工数を削減でき、大幅に校正時間を短縮し、高精度に校正データを取得できるという効果がある。
【０１２５】
以上では、３次元測定機１０１の測定プローブ１０２の先端球２０２の計測位置データを用いて、１つのステレオ計測結果の補正行列Ａを算出する方法について説明した。しかしながら、ステレオカメラ１０４の計測範囲が広大な場合、レンズ歪みモデル化誤差や画像量子化誤差等の様々な誤差要因による影響が大きくなり、高精度な補正が困難となる。
【０１２６】
そこで、図１１に示すようにステレオカメラ１０４を構成する単眼カメラ３０１、３０２の共通視野領域ＯＶを複数の局所領域１１０１、１１０２に区切ることが考えられる。そして、各局所領域１１０１、１１０２における先端球２０２の位置情報を用いて、局所領域ごとにステレオ計測結果するための補正行列Ａをそれぞれ算出する。このような局所補正データ算出工程によって、局所領域１１０１、１１０２ごとに最適化された補正行列Ａを取得でき、より高精度に補正された３次元測定結果（３次元測定値）を得ることができる。なお、図１１の例では、共通視野領域ＯＶを２つの局所領域１１０１、１１０２に分けているが、本実施形態では２つに区切ったがそれ以上の数に共通視野領域ＯＶを分割してそれぞれの撮影範囲ごとに補正行列Ａを求めて使い分けても構わない。その場合、例えば、ステレオ計測精度を検証しながら、局所領域１１０１、１１０２の分割を繰り返すような実験を行い、局所領域１１０１、１１０２の分割数や、分割位置を決定してもよい。このような手続により、局所領域の分割を繰り返し、当該のステレオカメラ１０４のハードウェアにおいて、許容できるステレオ計測精度が得られるような局所領域の分割態様を決定することができる。
【０１２７】
また、同次座標変換行列ＭＴＣを単位行列とすることにより、スケールが正しく補正されたカメラ座標系Ｃにおける３次元計測が可能となる。その場合、ステレオカメラ１０４から位置決め基準部（３０３、３０３）を外して用いても、高精度な３次元計測を行うことができる。
【０１２８】
＜実施形態２＞
本実施形態２では、ステレオカメラの補正行列算出処理（図９のステップＳ９０８）において、カメラ座標系のスケールを補正するスケール関数として撮影光軸中心からの距離に依存する関数を用いる例を示す。
【０１２９】
本実施形態２では、ハードウェア構成および、制御手順の大部分の構成については、上述の実施形態１と同様であるものとする。本実施形態では、ステレオカメラの補正行列算出処理（図９のステップＳ９０８）のみが異なり、以下ではこの補正行列算出処理についてのみ説明する。
【０１３０】
一般に、レンズ歪み量は撮影光軸中心からの距離に応じて変化する。撮影光軸中心付近では歪みはほぼ発生せず、距離が遠くなれば歪み量は増大する傾向にある。例えば、カメラ校正（図４のステップＳ４０１）においてレンズ歪み補正パラメータを算出することができるが、上記のようにレンズ歪みを精密に補正することは極めて困難である。以上のように、視差算出時の画像処理でレンズ歪みの影響が補正し切れずに残る場合がある。そして、例えばレンズ歪みに起因する視差の計測誤差は、レンズの光軸中心からの距離に応じて変化する傾向を有する、と考えられる。例えば、光軸中心付近ではレンズ歪みの影響をほとんど受けないため、高精度に視差を計測可能であるが、撮影画像の周辺視野、特にその端部付近ではレンズ歪み補正誤差の影響を受け、視差計測時により大きな誤差が生じる。
【０１３１】
上記のように、視差の計測誤差Δｄは、単眼カメラ３０１と３０２における、撮影画像上での光軸中心から計測点までの距離ｒ１、ｒ２に依存する、と考えられる。そこで、この距離ｒ１、ｒ２に依存する視差の計測誤差Δｄは、下式（１２）や式（１３）のように、線形や２次関数的にモデル化することができる。ここで、α、β、γ、α１、α２、β１、β２、γ１は補正係数である。
【０１３２】
【数１２】
2019052983.tif 000014
【０１３３】
【数１３】
2019052983.tif 000015
【０１３４】
ここで、レンズの光軸中心の位置はカメラ校正で求まる、内部パラメータの値を用いてもよいし、カメラの設計値を用いてもよい。本実施形態では、線形および、２次関数的にモデル化したが、さらに高次のモデル化を行ってもよい。ただし、より高次の関数によるモデル化を行う場合、後に行う最適化計算に時間を要したり、局所解に陥ったりするリスクが増える可能性がある。
【０１３５】
次に、上記のような視差の計測誤差Δｄが存在する場合、ステレオ計測で求まる計測点ＰのＺ座標ｚ’’は下式（１４）のように書ける。
【０１３６】
【数１４】
2019052983.tif 000016
【０１３７】
式（４）と式（１４）を用いる場合、計測点Ｐの物理的な真のＺ座標と、ステレオ計測で求まる計測点ＰのＺ座標ｚ’’には下式（１５）のような関係がある。
【０１３８】
【数１５】
2019052983.tif 000017
【０１３９】
このように、視差の計測誤差Δｄに依存して、計測点Ｐの物理的な真のＺ座標ｚと、ステレオ計測で求まる計測点ＰのＺ座標ｚ’’のスケールが変化することが判る。そこで、Ｚ座標のスケール関数ｍｚを以下の２つの式に示すようにモデル化すれば、視差の計測誤差Δｄの影響を軽減することができる。
【０１４０】
【数１６】
2019052983.tif 000018
【０１４１】
【数１７】
2019052983.tif 000019
【０１４２】
上式（１６）、（１７）の右辺分母のａ、ａ１は補正係数である。以上が、補正行列Ａのスケール関数ｍｚのモデル設定である。この補正行列Ａのスケール関数ｍｚのモデルを用いて、実施形態１に示した式（１１）の最適化計算を実施し、座標変換行列ＭＴＣおよび補正行列Ａの各変数を算出することができる。
【０１４３】
なお、本実施形態２では、一例として式（１６）や（１７）のようにスケール関数ｍｚを定義した。しかし、スケール関数ｍｚとして、単純に、各単眼カメラの撮影画像におけるそれぞれの光軸中心から計測点までの距離ｒ１、ｒ２の１次関数や２次関数などの多項式を採用してもよい。これにより、スケール関数ｍｚの数式が単純になり、式（１１）の最適化計算の時間短縮や、局所解に陥ったりするリスクを軽減できる可能性がある。以上のように、本実施形態では、レンズ歪みなどに起因するスケール誤差を補正するため、スケール関数ｍｚのモデルを用いること、そしてこのスケール関数ｍｚが光軸中心からの距離に依存する関数である点に特徴がある。
【０１４４】
また、以上では、Ｚ軸方向に関するスケール関数ｍｚを考慮したが、ｍｘやｍｙも同様に距離ｒ１、ｒ２の１次関数や２次関数等の多項式によって表現することができる。このように、Ｚ軸方向に関するスケール関数ｍｚのみならず、ｍｘやｍｙにも光軸中心からの距離ｒ１、ｒ２に依存した関数モデルを用いることによって、より高精度に補正された３次元計測結果を得ることができる。
【０１４５】
＜実施形態３＞
本実施形態３では、ステレオカメラの補正行列算出処理（図９のステップＳ９０８）において、カメラ座標系のスケールを補正するスケール関数としてステレオ計測で求まる３次元計測座標値に依存する関数を用いる例を示す。
【０１４６】
本実施形態３では、ハードウェア構成および、制御系の構成については上述の実施形態１、２と同様であるものとする。本実施形態３では、ステレオカメラの補正行列算出処理（図９のステップＳ９０８）のみが異なり、以下ではこの補正行列算出処理についてのみ説明する。
【０１４７】
実施形態２で述べたように、視差算出時の画像処理においてレンズ歪みを補正しきれない可能性があり、レンズの光軸中心からの距離に応じて視差の計測誤差は変化する傾向にある。また、撮影画像上でレンズの光軸中心からの距離が異なるということは、計測した点の３次元座標値が本来の値と異なる計測誤差を有する、ということを意味する。このことは、計測点の３次元座標値に依存して視差の計測誤差が変化する、といってもよい。
【０１４８】
このように、視差の計測誤差Δｄが計測点の３次元座標値（ｘ、ｙ、ｚ）に依存する、と考えると、上記の下式（１８）、（１９）のように、計測誤差Δｄは線形、あるいは２次関数的にモデル化することができる。ここで、ｋ、ｌ、ｍ、ｎ、ｋ１、ｋ２、ｌ１、ｌ２、ｍ１、ｍ２、ｎ1は補正係数である。
【０１４９】
【数１８】
2019052983.tif 000020
【０１５０】
【数１９】
2019052983.tif 000021
【０１５１】
本実施形態では、線形および、２次関数的にモデル化したが、さらに高次のモデル化を行ってもよい。ただし、より高次の関数によるモデル化を行う場合、後に行う最適化計算に時間を要したり、局所解に陥ったりするリスクが増える可能性がある。
【０１５２】
また、実施形態２で示した式（１５）のように、視差の計測誤差Δｄが存在する場合、計測点Ｐの物理的な真のＺ座標と、ステレオ計測で求まる計測点ＰのＺ座標ｚ’’のスケールが変化する。そこで、Ｚ座標のスケール関数ｍｚを以下のようにモデル化すれば、視差の計測誤差Δｄの影響を軽減させることが可能である。
【０１５３】
【数２０】
2019052983.tif 000022
【０１５４】
【数２１】
2019052983.tif 000023
【０１５５】
ここでｂ、ｂ１は補正係数である。以上が、補正行列Ａのスケール関数ｍｚのモデル設定である。この補正行列Ａのスケール関数ｍｚのモデルを用いて、実施形態１に示した式（１１）の最適化計算を実施し、座標変換行列ＭＴＣおよび補正行列Ａをそれぞれを算出することができる。
【０１５６】
なお、本実施形態では、一例として式（２０）、（２１）のようにｍｚを定義した。しかし、スケール関数ｍｚとして、単純に計測点の３次元座標値（ｘ、ｙ、ｚ）の１次関数や２次関数等の多項式を採用してもよい。これにより、スケール関数ｍｚの数式が単純になり、式（１１）の最適化計算の時間短縮や、局所解に陥ったりするリスクを軽減できる可能性がある。以上のように、本実施形態では、レンズ歪みなどに起因するスケール誤差を補正するため、スケール関数ｍｚのモデルを用いること、そしてこのスケール関数ｍｚが計測点の３次元座標値に依存する関数である点に特徴がある。
【０１５７】
また、以上では、Ｚ軸方向に関するスケール関数ｍｚを考慮したが、ｍｘやｍｙも同様に計測点の３次元座標値（ｘ、ｙ、ｚ）の１次関数や２次関数等の多項式によって表現することができる。このように、Ｚ軸方向に関するスケール関数ｍｚのみならず、ｍｘやｍｙにも計測点の３次元座標値（ｘ、ｙ、ｚ）の依存した関数モデルを用いることによって、より高精度に補正された３次元計測結果を得ることができる。
【０１５８】
＜実施形態４＞
本実施形態４では、ステレオカメラの補正行列算出処理（図９のステップＳ９０８）において、３次元の補正マップを生成する処理について説明する。
【０１５９】
本実施形態４では、ハードウェア構成および、制御系の構成については上述の実施形態１、２と同様であるものとする。本実施形態４では、ステレオカメラの補正行列算出処理（図９のステップＳ９０８）のみが異なり、以下ではこの補正行列算出処理についてのみ説明する。
【０１６０】
以下、図１２を用いて、ステレオ計測結果の補正行列の算出フローを説明する。本実施形態の校正処理は、同次座標変換行列ＭＴＣおよび補正行列Ａを求めてから、３次元補正マップに相当する補正行列Ｂｉを後で算出する処理（局所補正行列算出工程）を含む。
【０１６１】
以下では、ｉは、計測範囲をＮ個の局所領域に分割した際の、ｉ番目の局所領域を意味し、１≦ｉ≦Ｎであるものとする。まず、補正行列Ａをモデル化する（ステップＳ１２０１）。この補正行列Ａをモデル化では、実施形態１の式（９）や（１０）に示したように、スケール関数を組み込んだモデルを用いてもよいし、スケールを変換しない単位行列としてもよい。本実施形態では、補正行列Ａは単位行列であるとして説明する。
【０１６２】
次に、同次座標変換行列ＭＴＣおよび、補正行列Ａの各変数を算出する（ステップＳ１２０２）。同次座標変換行列ＭＴＣおよび、補正行列Ａの各変数の算出方法は実施形態１と同様に式（１１）に対して最適化計算を解けばよい。
【０１６３】
続いて、ステップＳ１２０３において、各計測位置でのステレオ計測結果の誤差を算出する。ここでは、同次座標変換行列ＭＴＣとステップＳ９０６（図９）で算出したカメラ座標系Ｃにおける先端球２０２の中心位置と、ステップＳ９０４（同）で算出した位置決め座標系Ｍにおける先端球２０２の中心位置と、を用いる。この補正行列Ｂiは次式（２２）のように書くことができる。
【０１６４】
【数２２】
2019052983.tif 000024
【０１６５】
この補正行列Ｂiがステレオ計測結果の誤差である。この補正行列Ｂiをｉが１からＮまでの局所領域ごとに算出する。算出した補正行列Ｂiは、ビジョンコントローラ１１３内の不揮発性メモリ１１６に保存する（Ｓ１２０４）。
【０１６６】
ステレオ計測結果の補正行列の算出は次のように行う。校正後のステレオカメラ１０４の計測位置が決まっている場合には、計測位置近傍にて先端球２０２の中心位置を計測して、ステレオ計測結果の誤差を算出する。そして、この誤差をそのままステレオ計測結果の補正行列として使用すればよい。一方、計測位置が定まっていなかったり、計測範囲が広大で全範囲で誤差を算出したりするのが困難な場合には、次のような処理を行う。
【０１６７】
ここで、ステレオ計測結果の誤差を算出する際の先端球２０２の中心位置を誤差算出点という。まず、計測点ｐの近傍の誤差算出点ｑｉをＮ点、抽出する。この誤差算出点ｑｉの数は２点以上であればよい。そして、計測点ｐと各誤差算出点間の距離が短いほど、重みが重くなるように重みｗｉの重み付けを行う。そして、下式（２３）に示すように、誤差算出点の補正行列Ｂ（ｑｉ）に対し重み付き平均を算出して、補正行列Ｂ（ｐ）を求める。
【０１６８】
【数２３】
2019052983.tif 000025
【０１６９】
以上のようにして、ステレオ計測結果の補正行列Ｂ（ｐ）を算出する。このような補間手法によると、誤差算出点が計測範囲の広い範囲を網羅していた方が高精度な補正が可能となる。なお、本実施形態では重み付き平均を用いて補間する手法を説明したが、その他の手法たとえば、単純な平均や、スプライン補間などの手法を用いてもよい。
【０１７０】
＜実施形態５＞
例えば、上記の実施形態１では、ステレオカメラ１０４の筐体が３次元視覚測定装置（部）を備えた機能部品を構成しているものと考えることができる。しかし、ロボット装置（Ｒ）などに３次元視覚測定装置としてのステレオカメラ１０４を組合せる場合、例えばステレオカメラ１０４がロボット装置（Ｒ）のエンドエフェクタなどに組み込まれこれらが一体の機能部品のアセンブリを構成している場合もある。その場合、ステレオカメラ１０４が組み付け済みのロボット装置（Ｒ）のエンドエフェクタの部分が３次元視覚測定装置（ステレオカメラ１０４）を備えた機能部品を構成している、と考えることができる。
【０１７１】
本実施形態５では、ステレオカメラ１０４が組み付け済みのエンドエフェクタの部分が３次元視覚測定装置（ステレオカメラ１０４）を備えた機能部品を構成し、第２の座標系（本実施形態ではＦ）がエンドエフェクタの特定の基準部位に配置される例を示す。
【０１７２】
本実施形態５では、図１３（Ａ）に示すように、ロボット装置のエンドエフェクタを構成するハンド１１０１ａの側面などに配置されたカメラマウント１１０４にステレオカメラ１０４が装着済みとなっているものとする。カメラマウント１１０４とステレオカメラ１０４の間の位置決め固定方式は任意であり、両者は容易に着脱可能であってもよく、また、ネジ止めや接着などによって固着されていてもよい。
【０１７３】
要するに、本実施形態５では、エンドエフェクタとしてのハンド１１０１ａのアセンブリが、一体として３次元視覚測定装置（ステレオカメラ１０４）を備えた機能部品を構成している状態であるものとする。
【０１７４】
ハンド１１０１ａは、例えば２本（あるいはそれ以上の数）のフィンガ１１０２、１１０２（…）をハンド１１０１ａの掌部１１０３上に備える。フィンガ１１０２、１１０２（…）はハンド１１０１ａの内部に配置された不図示の駆動源（モータ、ソレノイド、その他のアクチュエータ）により開閉駆動され、これによりワークを把持して操作することができる。
【０１７５】
本実施形態５では、ハンド１１０１ａのフィンガ１１０２（の１つ）から定まるフィンガ座標系Ｆ（本実施形態の第２の座標系）と、ステレオカメラ１０４のカメラ座標系Ｃ（第１の座標系）との間で座標変換を行うための校正データを取得する。図１３（Ｂ）はハンド１１０１ａを上方から示しており、フィンガ座標系Ｆ（本実施形態の第２の座標系）の原点は、例えばフィンガ１１０２の１つ（この例では図中左側）の角部に配置されている。
【０１７６】
本実施形態５では、エンドエフェクタとしてのハンド１１０１ａのアセンブリが、一体として３次元視覚測定装置（ステレオカメラ１０４）を備えた機能部品を構成している。この場合、ハンド１１０１ａのフィンガ１１０２、１１０２（…）でワークを把持するような操作を行う場合、例えばステレオカメラ１０４の３次元視覚測定によって、フィンガ１１０２に対する部品の相対位置姿勢を求めることになる。
【０１７７】
そして、本実施形態５では、フィンガ座標系Ｆ（第２の座標系）およびカメラ座標系Ｃ（第１の座標系）の間で座標変換を行える校正データを取得する。本実施形態５によれば、この校正データは、３次元視覚測定装置（ステレオカメラ１０４）を備えた機能部品に相当するハンド１１０１ａないしフィンガの部位を３次元測定機１０１（図１）で接触計測することによって精度よく求めることができる。
【０１７８】
フィンガ座標系Ｆ（第２の座標系）とカメラ座標系Ｃの間で座標変換を行う校正データを用いることにより、ステレオカメラ１０４で３次元視覚測定したカメラ座標系Ｃ（第１の座標系）における位置姿勢データをフィンガ座標系Ｆ基準に容易に変換できる。これにより、ステレオカメラ１０４の３次元視覚測定結果を利用して、ロボットアームで小物部品を把持するなどの高精度な操作が実現できる。
【０１７９】
本実施形態５においても、校正システムのハードウェアや制御系は実施形態１と同様であるものとし、実施形態１と異なる部分に関してのみ説明する。図１４は本実施形態５の３次元視覚センサの校正手順の全体を示している。図１４は実施形態１の図４に相当する図で、図４と異なるのは、フィンガ部の位置教示（Ｓ１２０３）と、カメラとフィンガ部間の校正処理（Ｓ１２０５）の部分である。それ以外のステップＳ４０１、Ｓ４０２、Ｓ４０４の処理については図４で説明したのと同様であるから、ここでは詳細な説明は省略する。
【０１８０】
図１５（Ａ）〜（Ｃ）は、図１４のステップＳ１２０３（あるいは図９のステップＳ９０１の位置決め基準部の接触計測）におけるフィンガ座標系Ｆの定義の様子を示している。本実施形態５では、フィンガ座標系ＦのＸＹ平面はハンド１１０１ａの掌部１１０３（図１３（Ａ）、（Ｂ））である。また、図１３（Ａ）、（Ｂ）に示すようにフィンガ座標系Ｆの原点は左側のフィンガ１１０２の根本部であり、Ｘ軸は左側のフィンガ１１０２から右側のフィンガ１１０２への方向とする。
【０１８１】
まず、図１５（Ａ）に示すように、３次元測定機１０１の定盤１０３上に、ステレオカメラ１０４を備えたハンド１１０１ａを載置する。この例では、ステレオカメラ１０４それ自体は実施形態１の例えば図３で説明したものと同様の構造を有するものとし、カメラマウント１１０４を介してハンド１１０１ａの側方部位に装着されている。なお、ステレオカメラ１０４の単眼カメラ（実施形態１における３０１、３０２）は、本実施形態では簡略化のため詳細な図示を省略する。
【０１８２】
次に、図１５（Ａ）に示すように、フィンガ座標系ＦのＸＹ平面を決定するため、ハンド１１０１ａの掌部１１０３に測定プローブ（の先端球２０２）を３点以上接触させる（２０１ｇ〜２０１ｉ）。３次元測定機コントローラ１０７内のプローブ制御部１０８は、プローブ位置計測部１１１から接触した瞬間のプローブ位置を受信し、例えば不揮発性メモリ１０９に記録させる。次に、図１５（Ｂ）に示すように、測定プローブ（の先端球２０２）を左右のフィンガ１１０２の内側の側面にそれぞれ３点以上接触させる（２０１ｊ、２０１ｋ）。この時、３次元測定機コントローラ１０７内のプローブ制御部１０８は、接触した瞬間のプローブ位置を不揮発性メモリ１０９に記録させる。続いて、図１５（Ｃ）に示すように、測定プローブ（の先端球２０２）を左右のフィンガの図中手前側面にそれぞれ３点以上、接触させる（２０１ｌ、２０１ｍ）。この時、３次元測定機コントローラ１０７内のプローブ制御部１０８は、接触した瞬間のプローブ位置を不揮発性メモリ１０９に記録させる。
【０１８３】
以上の計測結果から、３次元測定機コントローラ１０７内のプローブ制御部１０８は、フィンガ１１０２の各面の平面を画成する座標値を取得する。次に、３次元測定機コントローラ１０７内のプローブ制御部１０８は、左右のフィンガ１１０２、１１０２の内側側面と、手前側面と掌部１１０３のＸＹ平面の交点をそれぞれ求める。そして、図１３（Ｂ）に示すように、左側のフィンガの交点をフィンガ座標系Ｆの原点とし、左側から右側のフィンガの交点への方向をＸ方向と定義する。以上のようにしてフィンガ座標系Ｆの定義が終了する（ステップＳ１２０３）。なお、以上の説明で右、左などの修飾は、図面の表示との関係を示すものであって、一例に過ぎない。
【０１８４】
図１４のステップＳ１２０５におけるフィンガ座標系Ｆ（第２の座標系）と、カメラ座標系Ｃ（第１の座標系）の相対位置・姿勢に相当する演算処理は、実施形態１（式（１）〜（４））で説明したものと同様に実行することができる。
【０１８５】
以上のように、本実施形態では、ステレオカメラ１０４（３次元視覚測定装置）を備えた機能部品として、ロボットのエンドエフェクタとして（ハンド１１０１ａ）を考えた。ただし、溶接トーチ、塗装ガンなどの他のロボット用のエンドエフェクタの場合でも同様の構成処理が可能であるのはいうまでもない。その場合、接触式の測定プローブ１０２の測定によって定義する第１の座標系の原点位置は、各エンドエフェクタの特定の基準部位に適宜配置すればよい。
【０１８６】
そして、本実施形態によれば、ステレオカメラ１０４（３次元視覚測定装置）を備えた機能部品の基準部位から定まるフィンガ座標系Ｆ（第２の座標系）と、カメラ座標系Ｃ（第１の座標系）の間で座標変換を行う校正データを取得することができる。校正データ（座標変換行列ＭＴＣおよび補正行列Ａ）の格納先としては、上記実施形態と同様に、ビジョンコントローラ１１３内の不揮発性メモリ１１６や、ステレオカメラ１０４の筐体内の不揮発性メモリなどが考えられる。あるいはさらに、本実施形態の場合は、ハンド１１０１ａ（エンドエフェクタ）の躯体内部に校正データ（座標変換行列ＭＴＣおよび補正行列Ａ）を格納した不揮発性メモリを配置する構成も考えられる。
【０１８７】
ロボット装置のアームにステレオカメラ１０４（３次元視覚測定装置）を備えた機能部品を装着した場合の校正データの利用方法は、実施形態１で説明したものと同様である。ロボット装置の制御部（あるいはビジョンコントローラ１１３）が、ステレオカメラ１０４がワークなどの対象物をステレオ撮影した画像を利用して、撮影されている対象物の特定部位の座標値を求めると、上記の第１の座標系（Ｃ）の座標値が取得される。ロボット装置の制御部（あるいはビジョンコントローラ１１３）は、上記の校正データ（座標変換行列ＭＴＣおよび補正行列Ａ）を利用することにより、直ちに対象物の特定部位を第２の座標系（Ｍ）の座標値に変換することができる。
【０１８８】
ロボット装置Ｒの制御部（不図示）には、ロボットアームに対して装着されたハンド１１０１ａ（エンドエフェクタ）の相対位置・姿勢は既知である。このため、ステレオカメラ１０４で３次元視覚測定した対象物の特定部位の位置・姿勢は、例えばロボットアームに対する相対位置・姿勢に容易に変換することができる。しかも、本実施形態によれば、上記校正データ（座標変換行列ＭＴＣおよび補正行列Ａ）は３次元測定機１０１を用いて極めて高精度に取得（校正）することができる。従って、ステレオカメラ１０４の３次元視覚測定に基づき、ロボット装置（Ｒ）は対象物（ワーク）を精度よく操作することができる。
【０１８９】
＜実施形態６＞
本発明の校正方法では、３次元視覚測定装置（ステレオカメラ１０４）の３次元測定値が表現される第１の座標系（Ｃ）と、３次元視覚測定装置（を備えた機能部品の）基準部位から定まる第２の座標系（Ｍ）と、の間で座標変換を行う校正データを取得する。
【０１９０】
そして、上記各実施形態では、接触式の測定プローブ１０２を備えた３次元測定機１０１を利用する構成を例示した。ここで、この上記各実施形態の構成を考察すると、ステレオカメラ１０４（３次元視覚測定装置）で撮影する測定プローブ１０２は、校正用の「マーク」として考えることができる。
【０１９１】
上記各実施形態の測定プローブ１０２を校正用の「マーク」と考えると、上記各実施形態における校正制御は、以下のような工程を備えるもの、と考えることができる。
【０１９２】
・３次元視覚測定装置（ステレオカメラ１０４）により撮影可能な範囲内の、３次元視覚測定装置との位置関係が予め既知である計測位置に、３次元視覚測定装置により座標値を計測可能なマークを位置決めするマーク設置工程。
【０１９３】
・３次元視覚測定装置（ステレオカメラ１０４）により、第１の座標系（カメラ座標系Ｃ）におけるマークの座標値を計測する３次元視覚測定工程。
【０１９４】
・３次元視覚測定装置（ステレオカメラ１０４）の基準部位から定まる第２の座標系（位置決め座標系Ｍ）におけるマークの座標値を算出するマーク座標値算出工程。
【０１９５】
・上記の視覚測定された第１の座標系におけるマークの座標値と、計測された第２の座標系におけるマークの座標値を用いて校正データを算出する校正データ算出工程。この校正データ算出工程で算出される校正データは、第１の座標系および第２の座標系の間で座標変換を行うための校正データと、３次元視覚測定装置により計測される３次元計測座標値のスケールを補正する要素を含む補正行列と、を含む。
【０１９６】
その場合、上記各実施形態の３次元測定機１０１は、ステレオカメラ１０４（３次元視覚測定装置）により撮影可能な範囲内の、ステレオカメラ１０４によって座標値を計測可能なマークを位置決めするマーク設置装置と考えることができる。
【０１９７】
そして、上記各実施形態では、３次元測定機１０１の測定プローブ１０２によって、ステレオカメラ１０４（３次元視覚測定装置）の位置決め穴３０４、３０４を実測している。しかしながら、ステレオカメラ１０４（３次元視覚測定装置）との位置関係が予め既知である計測位置に、測定プローブ１０２と同様の校正用の「マーク」を位置決めできるマーク設置装置があれば、この装置は３次元測定機１０１の代りに利用できる。
【０１９８】
このようなマーク設置装置７０００は、例えば図１７のように構成することができる。図１７において、ステレオカメラ１０４（３次元視覚測定装置）は、位置決め治具１０５に対して装着されている。位置決め治具１０５に対する装着は、上述同様の位置決めピン３０３、３０３と、位置決め穴３０４、３０４の係合構造を利用する。そして、ステレオカメラ１０４は、位置決め治具１０５を介してマーク設置装置７０００の基台７０５上に固定される。
【０１９９】
マーク設置装置７０００の基台７０５上には、ステレオカメラ１０４により撮影可能な範囲の撮影距離（Ｌ）にマーカ板７０２を配置することができる。また、マーク設置装置７０００は、マーカ板７０２を、例えばその中心とステレオカメラ１０４の２光軸の中心がほぼ一致するような姿勢を保ったまま、図の左右方向に移動する駆動部１０７２を備える。この駆動部１０７２は、上記各実施形態の３次元測定機コントローラ１０７（図１）に相当するマーク設置制御装置１０７１によって制御される。マーク設置制御装置１０７１のＣＰＵレベルの構成は図１６のものと同様でよい。
【０２００】
上記各実施形態では、３次元測定機コントローラ１０７（図１）が、ステレオカメラ１０４で測定プローブ１０２を撮影させる時の測定プローブ１０２の位置決めを行った。これに対して、本実施形態では、マーク設置制御装置１０７１は、ステレオカメラ１０４でマーカ板７０２のマーク７０２１を撮影させる時に、マーカ板７０２ないしマーク７０２１の撮影距離を決定するよう位置決めを行えばよい。
【０２０１】
マーク設置制御装置１０７１は、上記各実施形態のように、位置決め穴３０４、３０４を実測する機能は有していない。しかしながら、位置決め治具１０５〜基台７０５の寸法精度、および、駆動部１０７２によるマーカ板７０２ないしマーク７０２１の撮影距離を制御する精度が予め充分保たれているものとする。即ち、マーク設置制御装置１０７１に対して、位置決め穴３０４、３０４の位置は、予め所定の精度を持って既知である。これにより、マーク設置制御装置１０７１によって、上記実施形態におけるようなプローブ実測を行わなくても、ステレオカメラ１０４の位置決め座標系Ｍ（第２の座標系）を定義することができる。そして、ステレオカメラ１０４（を備えた機能部品）の基準部位（３０３）から定まる位置決め座標系Ｍ（第２の座標系）におけるマークの座標値を算出する（マーク座標値算出工程）ことができる。
【０２０２】
マーカ板７０２には、図１７の右側に示すように、例えば、互いに等間隔、などの円形のマーク７０２１、７０２１…を多数、配置しておく。マーク７０２１と背景は、例えば、黒地に白、あるいは白地に黒、など、ステレオカメラ１０４の撮影結果からマーク７０２１の位置を画像処理によって計測するのが容易な配色関係とする。
【０２０３】
本実施形態の構成は、ステレオカメラ１０４（３次元視覚測定装置）の３次元測定値が表現される第１の座標系（座標系Ｃ）と、３次元視覚測定装置（を備えた機能部品）の基準部位に原点を有する第２の座標系（座標系Ｍ）と、を有する校正装置に相当する。そして、この校正装置は、第１の座標系（座標系Ｃ）と、第２の座標系（座標系Ｍ）と、の間で座標変換を行うための校正データを取得するものである。
【０２０４】
上記のように、本実施形態の構成は、ステレオカメラ１０４（３次元視覚測定装置）により撮影可能な範囲内にステレオカメラ１０４によって座標値を計測可能なマーク７０２１を位置決めするマーク設置装置７０００を備える。
【０２０５】
マーク設置制御装置１０７１は、マーク設置装置７０００の駆動部１０７２を介して、マーク７０２１を予め所定の精度をもって既知である計測位置、例えば、所定の撮影距離Ｌに設置させることができる（マーク設置工程）。
【０２０６】
マーク設置制御装置１０７１は、ステレオカメラ１０４（３次元視覚測定装置）によって、カメラ座標系Ｃ（第１の座標系）におけるマークの座標値を計測させる（３次元視覚測定工程）。
【０２０７】
そして、マーク設置制御装置１０７１は、ステレオカメラ１０４（を備えた機能部品）の基準部位（３０３ないし３０４）から定まるカメラ座標系Ｍ（第２の座標系）におけるマーク７０２１の座標値を算出することができる（マーク座標値算出工程）。ここで、位置決め治具１０５〜基台７０５の寸法精度、および、駆動部１０７２によるマーカ板７０２（マーク７０２１）の撮影距離の制御精度が充分保たれている。
【０２０８】
このため、マーク設置制御装置１０７１は、マーカ板７０２の撮影距離Ｌを決定すれば、例えばその際の駆動部１０７２の制御量など基づき、カメラ座標系Ｍ（第２の座標系）におけるマーク７０２１の座標値を算出できる。このカメラ座標系Ｍ（第２の座標系）は、上記のようにマーク設置装置７０００の機械的な精度仕様に基づき、所定の精度で予め定義されているものと考えてよい。従って、図１７の構成によれば、例えば位置決め穴３０４、３０４を測定プローブ１０２で実測するような過程を必要とせず、マーク設置制御装置１０７１は、第２の座標系（位置決め座標系Ｍ）におけるマークの座標値を算出することができる（マーク座標値算出工程）。
【０２０９】
本実施形態の校正処理では、マーク設置装置７０００により、マーク７０２１を特定の計測位置（撮影距離Ｌ）に設置させる（マーク設置工程）。そして、３次元視覚測定装置（ステレオカメラ１０４）により、第１の座標系（カメラ座標系Ｃ）におけるマーク７０２１の座標値を計測する（３次元視覚測定工程）。一方、マーク設置制御装置１０７１は、計測位置（撮影距離Ｌ）における駆動部１０７２の制御量など基づき、カメラ座標系Ｍ（第２の座標系）におけるマーク７０２１の座標値を算出できる。
【０２１０】
そして、視覚測定された第１の座標系におけるマークの座標値と、計測された第２の座標系におけるマークの座標値と、を用いて校正データを算出することができる（校正データ算出工程）。この校正データは、第１の座標系および第２の座標系の間で座標変換を行うための校正データと、３次元視覚測定装置により計測される３次元計測座標値のスケールを補正する要素を含む補正行列と、を含む。
【０２１１】
上記の第１の座標系、および第２の座標系におけるマークの座標値と、を用いて第１および第２の座標系の間の座標変換を行う校正データと、３次元計測座標値のスケールを補正する要素を含む補正行列と、を算出する演算過程は上記実施形態１と同様である。また、例えば、校正データ取得工程に関して上記実施形態２〜５で示した校正制御の細部の構成は本実施形態においても同様に実施することができる。
【０２１２】
また、図８（実施形態１）では、３次元視覚測定工程で、測定プローブ１０２（本実施形態のマーク７０２１）をステレオカメラ１０４を構成する単眼カメラ３０１、３０２の共通視野領域ＯＶに位置決めしてステレオカメラ１０４で撮影する制御を示した。また、図１１では、共通視野領域ＯＶを局所領域１１０１、１１０２に分割して、それぞれについて別に補正行列（Ａ）を算出する制御を示した。このような校正制御は、図１７の構成においても可能である。
【０２１３】
例えば、図１７の撮影距離Ｌの右側の部分には、図８、図１１の共通視野領域ＯＶに相当する撮影距離の範囲を示してある。また、この共通視野領域ＯＶは、図１１の局所領域１１０１、１１０２に相当する撮影距離の範囲に分割して考えることができる。従って、例えば、共通視野領域ＯＶの局所領域１１０１、１１０２の各境界の縦線の位置に、マーカ板７０２を移動してステレオカメラ１０４でマーク７０２１を撮影することにより、図８、図１１で説明したのと同様の３次元視覚測定の態様を実現できる。
【０２１４】
また、その場合、単眼カメラ３０１、３０２の被写界深度が重なり合う角錐台形状の共通視野領域ＯＶの空間範囲にあるマーク７０２１を３次元視覚測定すればよい。このためには、例えば、マーカ板７０２の撮影距離に応じて、３次元視覚測定に用いるマーク７０２１は、マーカ板７０２の中央、その外側、さらに外側などの各領域７０２１ａ、７０２１ｂ、７０２１ｃに配置したものを選択すればよい。このようにして、図８、図１１で説明したのと同様の３次元視覚測定の態様を実現できる。例えば、局所領域１１０１、１１０２に分割して、それぞれについて別に補正行列（Ａ）を算出する構成では、補正行列（Ａ）によって、撮影距離に適したスケール補正を行うことができる。
【符号の説明】
【０２１５】
１０１…３次元測定機、１０２…測定プローブ、１０４…ステレオカメラ、１０５…位置決め治具、１０７…３次元測定機コントローラ、１１３…ビジョンコントローラ、２０１…スタイラス、２０２…先端球、ＯＶ…共通視野領域、７０００…マーク設置装置、７０２１…マーク。
【図１】
2019052983.tif 000030
【図２】
2019052983.tif 000031
【図３】
2019052983.tif 000032
【図４】
2019052983.tif 000033
【図５】
2019052983.tif 000034
【図６】
2019052983.tif 000035
【図７】
2019052983.tif 000036
【図８】
2019052983.tif 000037
【図９】
2019052983.tif 000038
【図１０】
2019052983.tif 000039
【図１１】
2019052983.tif 000040
【図１２】
2019052983.tif 000041
【図１３】
2019052983.tif 000042
【図１４】
2019052983.tif 000043
【図１５】
2019052983.tif 000044
【図１６】
2019052983.tif 000045
【図１７】
2019052983.tif 000046