(57)【要約】【課題】容易に工作機械の機械座標系と、カメラのカメラ座標系との関係をキャリブレーションすることができるカメラ校正装置及びカメラ校正方法を提供すること。【解決手段】カメラ校正装置１００は、工作機械の撮像手段を校正するカメラ校正装置であって、工作機械は、機械座標が既知である１点を取得するタッチプローブ２４０と、機械座標が既知である１点、及び、校正に使用する特徴を含むパターンを撮像するカメラ２３０と、機械座標系の直交する２方向にテーブル又は主軸を直線移動させる駆動機構とを備え、機械座標が既知である１点、及び、特徴を含むパターンを撮像した画像と、機械座標系の直交する２方向にテーブル２２０又は加工機２１０を直線移動させ、その際に撮像して得た特徴を含むパターン又は／及び機械座標が既知の１点を撮像した画像と、を用い、機械座標系とパターンとの位置姿勢関係を算出することにより、外部パラメータを算出する。【選択図】図２
2020080105.tif 000002
【特許請求の範囲】
【請求項１】
工作機械に含まれる撮像手段を校正するカメラ校正装置であって、
前記工作機械は、
機械座標が既知である１点を取得する取得手段と、
前記機械座標が既知である１点、及び、校正に使用する特徴を含むパターンを撮像する撮像手段と、
機械座標系の直交する２方向にテーブル又は主軸を直線移動させる駆動機構とを備え、
前記機械座標が既知である１点、及び、前記校正に使用する特徴を含むパターンを撮像した画像と、
前記駆動機構が機械座標系の直交する２方向に前記テーブル又は前記主軸を直線移動させ、その際に撮像して得た前記校正に使用する特徴を含むパターン又は／及び前記機械座標が既知の１点を撮像した画像と、
を用い、
機械座標系と前記校正に使用する特徴を含むパターンとの位置姿勢関係を算出することにより、
機械座標系とカメラ座標系との位置姿勢関係を示す外部パラメータを算出するカメラ校正装置。
【請求項２】
前記校正に使用する特徴を含むパターンには、機械座標系に対して任意の位置姿勢で配置されたチェッカーボードやドットパターンの校正器具を含む請求項１に記載のカメラ校正装置。
【請求項３】
前記校正に使用する特徴を含むパターンには、前記テーブル上のキズ、コーナー点、模様を含む請求項１に記載のカメラ校正装置。
【請求項４】
前記校正に使用する複数の特徴を含むパターンが形成する平面と、機械座標系の平面とが平行である場合、１方向の前記駆動機構の動作により前記撮像手段の前記外部パラメータを算出する請求項１から請求項３に記載のカメラ校正装置。
【請求項５】
コンピュータにより実現され工作機械に含まれる撮像手段を校正するカメラ校正方法であって、
前記工作機械は、
機械座標が既知である１点を取得する取得手段と、
前記機械座標が既知である１点、及び、校正に使用する特徴を含むパターンを撮像する撮像手段と、
機械座標系の直交する２方向にテーブル又は主軸を直線移動させる駆動機構とを備え、
前記機械座標が既知である１点、及び、前記校正に使用する特徴を含むパターンを撮像した画像と、
前記駆動機構が機械座標系の直交する２方向に前記テーブル又は前記主軸を直線移動させ、その際に撮像して得た前記校正に使用する特徴を含むパターン又は／及び前記機械座標が既知の１点を撮像した画像と、
を用い、
機械座標系と前記校正に使用する特徴を含むパターンとの位置姿勢関係を算出することにより、
機械座標系とカメラ座標系との位置姿勢関係を示す外部パラメータを算出するカメラ校正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械上に設定された機械座標系と、工作機械に設置されたカメラのカメラ座標系との関係をキャリブレーションするカメラ校正装置及びカメラ校正方法に関する。
【背景技術】
【０００２】
従来、工作機械上に設定された機械座標系と、工作機械に設置されたカメラの画像座標系との関係をキャリブレーションするために、チェッカーボード、ドットパターン等のキャリブレーション器具（以下「校正器具」ともいう）を使用する方法が知られている。例えば、カメラに対して静止し、機械座標が既知である既定の場所に校正器具を設置することで、例えば、チェッカーボードの交点や、ドット、マーカの中心点を検出して、これらを対応点とすることで、１度の撮像で多数の対応点を得る手法がある。
しかしながら、この手法では、工作機械毎に校正器具を機械座標が既知である既定の場所に設置するための専用の治具が必要となる。また、治具を用いて校正器具を規定の場所に設置するための労力が必要となる。
【０００３】
この点、例えば、特許文献１には、任意の位置にマークが付された工作機械のテーブルを、基準位置からＸ軸及びＹ軸方向に平行移動させて撮像した複数の画像と、基準位置を中心にしてＸＹ平面内で回転移動させて撮像した複数の画像とを用いて、カメラのキャリブレーションを行う技術が提案されている。
【０００４】
また、特許文献２には、１つの特徴点を有したキャリブレーションパターンの撮像対象部材を工作機械の主軸に装着し、ＸＹＺ軸の各方向に主軸を移動させている間に撮像した撮像対象部材の複数の画像を用いて、同じ特徴点を示す画像における位置と、機械座標系における位置とを対応付けした複数組のデータに基づいて、カメラのキャリブレーションを行う技術が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−０５０１０６号公報
【特許文献２】特開２０１０−２７６６０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１では、工作機械のテーブルが、Ｘ軸及びＹ軸方向への平行移動とともに、基準位置を中心にＸＹ平面で回転移動できるという、動作の自由度が多いことから、テーブル上に１つのマークを付すことで、カメラのキャリブレーションを行うことができる。
【０００７】
しかしながら、テーブルが、Ｘ軸及びＹ軸方向への平行移動のみ可能、又は工作機械に固定されている、すなわち自由度が少ない場合、特許文献１の技術を適用することが困難となる。また、機械座標のＺ軸を合わせる方法については不明である。
一方、特許文献２は、テーブル可動型３軸機や主軸のみ可動型３軸機等の工作機械に適用できるが、キャリブレーションするための撮像対象部材等の校正器具と、校正器具をテーブル等に固定するための冶具が必要になり、手間と費用がかかる。
【０００８】
本発明は、工作機械の任意の位置に任意の姿勢で校正器具を配置することで、容易に工作機械上に設定された機械座標系と、工作機械に設置されたカメラのカメラ座標系との関係をキャリブレーションすることができるカメラ校正装置及びカメラ校正方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
（１）本発明のカメラ校正装置（後述する「カメラ校正装置１００」）は、工作機械に含まれる撮像手段を校正するカメラ校正装置であって、前記工作機械（後述する「工作機械２００」）は、機械座標が既知である１点を取得する取得手段（後述する「タッチプローブ２４０」）と、前記機械座標が既知である１点（後述する「タッチ点ＴＰ」）、及び、校正に使用する特徴を含むパターンを撮像する撮像手段（後述する「カメラ２３０」）と、機械座標系の直交する２方向にテーブル（後述する「テーブル２２０」）又は主軸（後述する「加工機２１０」）を直線移動させる駆動機構とを備え、前記機械座標が既知である１点、及び、前記校正に使用する特徴を含むパターンを撮像した画像と、前記駆動機構が機械座標系の直交する２方向に前記テーブル又は前記主軸を直線移動させ、その際に撮像して得た前記校正に使用する特徴を含むパターン又は／及び前記機械座標が既知の１点を撮像した画像と、を用い、機械座標系と前記校正に使用する特徴を含むパターンとの位置姿勢関係を算出することにより、機械座標系とカメラ座標系との位置姿勢関係を示す外部パラメータを算出する。
【００１０】
（２）  （１）に記載のカメラ校正装置において、前記校正に使用する特徴を含むパターンには、機械座標系に対して任意の位置姿勢で配置されたチェッカーボードやドットパターンの校正器具を含んでも良い。
【００１１】
（３）  （２）に記載のカメラ校正装置において、前記校正に使用する特徴を含むパターンには、前記テーブル上の傷、コーナー点、模様を含んでも良い。
【００１２】
（４）  （１）から（３）に記載のカメラ校正装置において、前記校正に使用する複数の特徴を含むパターンが形成する平面と、機械座標系の平面とが平行である場合、１方向の前記駆動機構の動作により前記撮像手段の外部パラメータを算出しても良い。
【００１３】
（６）本発明のカメラ校正方法は、コンピュータにより実現され工作機械に含まれる撮像手段を校正するカメラ校正方法であって、前記工作機械は、機械座標が既知である１点を取得する取得手段と、前記機械座標が既知である１点、及び、校正に使用する特徴を含むパターンを撮像する撮像手段と、機械座標系の直交する２方向にテーブル又は主軸を直線移動させる駆動機構とを備え、前記機械座標が既知である１点、及び、前記校正に使用する特徴を含むパターンを撮像した画像と、前記駆動機構が機械座標系の直交する２方向に前記テーブル又は前記主軸を直線移動させ、その際に撮像して得た前記校正に使用する特徴を含むパターン又は／及び前記機械座標が既知の１点を撮像した画像と、を用い、機械座標系と前記校正に使用する特徴を含むパターンとの位置姿勢関係を算出することにより、機械座標系とカメラ座標系との位置姿勢関係を示す外部パラメータを算出する。
【発明の効果】
【００１４】
本発明によれば、工作機械の任意の位置に任意の姿勢で校正器具を配置することで、容易に工作機械上に設定された機械座標系と、工作機械に設置されたカメラの画像座標系との関係をキャリブレーションすることができる。
【図面の簡単な説明】
【００１５】
【図１Ａ】カメラ座標系と画像座標系との一例を示す図である。
【図１Ｂ】チェッカーボード座標系の一例を示す図である。
【図１Ｃ】機械座標系の一例を示す図である。
【図２】本発明の第１の実施形態に係るカメラ校正装置の一例を示す図である。
【図３】タッチプローブがチェッカーボードをタッチした時のテーブル及びチェッカーボードの状態の一例を示す図である。
【図４】タッチプローブがチェッカーボードをタッチした時のチェッカーボードの画像の一例を示す図である。
【図５】Ｘｍ軸及びＹｍ軸の各方向に移動したテーブル及びチェッカーボードの状態の一例を示す図である。
【図６】３つの画像におけるチェッカーボードの位置関係の一例を示す図である。
【図７】第１の実施形態に係るカメラ校正装置におけるカメラ校正処理の一例を示す図である。
【図８】本発明の第２の実施形態に係るカメラ校正装置の一例を示す図である。
【図９】Ｘｍ軸及びＹｍ軸の各方向に移動したテーブルの一例を示す図である。
【図１０】第２の実施形態に係るカメラ校正装置におけるカメラ校正処理の一例を示す図である。
【図１１】本発明の第３の実施形態に係るカメラ校正装置の一例を示す図である。
【図１２】第３の実施形態に係る数値制御装置におけるカメラ校正処理の一例を示す図である。
【図１３】本発明の第４の実施形態に係るカメラ校正装置の一例を示す図である。
【図１４】カメラ校正処理における加工機の動作の一例を示す図である。
【図１５】４つの画像から取得された画像座標系におけるタッチ点の位置関係の一例を示す図である。
【図１６】第４の実施形態に係るカメラ校正装置におけるカメラ校正処理の一例を示す図である。
【図１７】本発明の第５の実施形態に係るカメラ校正装置の一例を示す図である。
【図１８】カメラ校正処理における加工機の動作の一例を示す図である。
【図１９】第５の実施形態に係るカメラ校正装置におけるカメラ校正処理の一例を示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態について説明する。
[第１の実施形態]
第１の実施形態について説明する。第１の実施形態を説明する前に、カメラ座標系Σｃと、画像座標系Σｉと、チェッカーボード座標系Σｂと、機械座標系Σｍについて図１Ａ、図１Ｂ及び図１Ｃを参照して説明する。図１Ａは、カメラ座標系Σｃと画像座標系Σｉの関係を示す図である。図１Ｂは、チェッカーボード座標系Σｂの一例を示す図である。図１Ｃは、機械座標系Σｍの一例を示す図である。
【００１７】
図１Ａに示すように、カメラ座標系Σｃは、デジタルカメラの光学中心Ｏｃを原点とし、原点Ｏｃから右方向をＸｃ軸、下方向をＹｃ軸、光軸方向をＺｃ軸とする３次元座標系である。また、画像座標系Σｉは、カメラ座標系Σｃに平行で、原点Ｏｃから焦点距離ｆ離れた画像平面の左上を原点とし、Ｘｃ軸及びＹｃ軸にそれぞれ平行な方向に、ｘ軸及びｙ軸を有する２次元直交座標系である。
図１Ｂに示すように、チェッカーボード座標系Σｂは、例えばチェッカーボードの模様の左下を原点Ｏｂとし、原点Ｏｂからチェッカーボード面に垂直な方向をＺｂ軸、原点Ｏｂからチェッカーボード面上の右方向をＸｂ軸、原点Ｏｂからチェッカーボード面上の上方向をＹｂ軸とする３次元座標系である。
【００１８】
図１Ｃに示すように、機械座標系Σｍは機械原点Ｏｍを中心とする座標系であり、原点ＯｍからＸｍ軸、Ｙｍ軸、Ｚｍ軸を有する３次元座標系である。
歪曲収差のない理想的なレンズの場合、工作機械の機械座標系Σｍの座標（Ｘｍ，Ｙｍ，Ｚｍ）で表される空間上の点は、式（１）のように線形変換で画像座標系Σｉの（ｘ，ｙ）に投影されることが知られている。
【数１】
2020080105.tif 000003
ここで、ｓは、画素のせん断係数を示し、（ｃｘ，ｃｙ）は、画像の中心座標を示す。右辺の１つ目の３×３の行列は、内部パラメータＫであり、カメラ座標系Σｃと画像座標系Σｉとの関係を示す。右辺の２つ目の３×４の行列は、外部パラメータであり、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒ及び位置関係ｔを有する。
なお、実際のレンズには径方向と接線方向の歪曲収差がある。例えば、レンズの径方向の歪曲収差（radial distortion）を考慮する場合、画像座標（ｘ、ｙ）は式（２）のような非線形変換により歪められる。
【数２】
2020080105.tif 000004
κ１、κ２は、歪曲収差係数を示す。また、ｒ＝（（ｘ−ｃｘ）２＋（ｙ−ｃｙ）２）１／２である。カメラキャリブレーションでは、当業者に公知の方法で、カメラの内部パラメータＫに加えて歪曲収差係数κ１、κ２を予め求めることができる。なお、以下の説明では、カメラ校正装置１００は、予め算出された歪曲収差係数κ１、κ２を用いて、カメラ２３０により撮像された画像の歪みが補正された画像に基づいて校正処理を実行するものとする。
【００１９】
第１の実施形態では、カメラ校正装置１００は、第１段階として、当業者にとって公知の方法（例えば、Ｔｓａｉの方法（Tsai, Roger Y. (1987) “A Versatile Camera Calibration Technique for High-Accuracy 3D Machine Vision Metrology Using Off-the-Shelf TV Cameras and Lenses,’’ IEEE Journal of Robotics and Automation, Vol. RA-3, No. 4, pp. 323-344, August 1987））により、テーブル２２０の任意の位置に設置したチェッカーボード上の１点を機械座標系Σｍの機械座標の既知の１点として得た時にカメラにより撮像された画像から、カメラの内部パラメータ及びチェッカーボード座標系Σｂに対するカメラ座標系Σｃの姿勢Ｒｃ及び位置関係ｔｃを求める。
そうすることで、チェッカーボード座標系Σｂとカメラ座標系Σｃとの関係を得ることができる。具体的には、チェッカーボード座標系Σｂの座標（Ｘｂ，Ｙｂ，Ｚｂ）で表される空間上の点は、式（３）により線形変換することで、カメラ座標系Σｃの座標（Ｘｃ，Ｙｃ，Ｚｃ）で表すことができる。
【数３】
2020080105.tif 000005
【００２０】
次に、カメラ校正装置１００は、第２段階として、後述するように、機械座標が既知の１点とその点を撮像して得た画像、及び工作機械の２方向の直線軸移動とその際に撮像して得た画像とを用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを求める。
さらに、カメラ校正装置１００は、第３段階として機械座標が既知の１点を撮像して得た画像から、カメラの内部パラメータ及び式（３）に基づいて、機械座標が既知の１点のチェッカーボード座標系Σｂの座標（Ｘｔｂ，Ｙｔｂ，Ｚｔｂ）を算出する。他方、この点の機械座標が既知であることからこの点の機械座標系Σｍの座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）とすると、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを求める。
以上により、工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションすることができる。
このように、第１の実施形態では、機械座標系Σｍに対するカメラ座標系Σｃの姿勢及び位置関係は、チェッカーボードに設定されたチェッカーボード座標系Σｂを介して算出される。
以下に、第１実施形態について詳細に説明する。
【００２１】
図２は、本発明の第１の実施形態に係るカメラ校正装置１００の一例を示す図である。
第１の実施形態に係るカメラ校正装置１００は、プロセッサ等の制御部１０と、ハードディスク装置等の記憶部２０とを有するコンピュータである。また、カメラ校正装置１００は、入出力デバイス及び通信インタフェース等の外部装置とのインタフェース機能を有する。これにより、カメラ校正装置１００は、有線又は無線を介して、外部の数値制御装置１５０に接続される。なお、カメラ校正装置１００は、ネットワークを介して、数値制御装置１５０に接続されても良い。
【００２２】
数値制御装置１５０は、当業者にとって公知の制御装置であり、工作機械２００の動作を制御する。
工作機械２００は、例えば、テーブル可動型３軸機であり、加工機（工具主軸装置）２１０と、テーブル２２０と、カメラ２３０とを有する。工作機械２００は、数値制御装置１５０に接続される。
【００２３】
加工機２１０は、例えば、主軸ユニットであり、数値制御装置１５０の指令に基づいて、機械座標系ΣｍのＺｍ軸方向に移動する。
【００２４】
また、加工機２１０には、カメラ校正処理の際に任意の位置の機械座標を計測するタッチプローブ２４０が、加工機２１０の先端に配置される。タッチプローブ２４０は、プローブ先端のスタイラス球がタッチした点の機械座標を取得する。なお、これに限定されず、加工機２１０の先端には、レーザ光源等が配置されても良い。
【００２５】
テーブル２２０は、例えば、数値制御装置１５０の指令に基づいて移動機構が動作することで、機械座標系ΣｍのＸｍ軸及びＹｍ軸方向にそれぞれ移動することができる。
【００２６】
また、テーブル２２０の上面には、カメラ校正処理の際に、校正器具としてのチェッカーボード２５０が、カメラ２３０から見える任意の位置に任意の姿勢で配置される。なお、これに限定されず、テーブル２２０には、ドットパターン等の複数の特徴点を有した校正器具が配置されても良い。また、カメラ校正処理の際に、加工機２１０の先端に配置されたタッチプローブ２４０がチェッカーボード２５０上の任意の位置をタッチできるように、チェッカーボード２５０がテーブル２２０に配置されることが好ましい。
【００２７】
また、図２では、チェッカーボード２５０に設定されるチェッカーボード座標系Σｂを示し、チェッカーボード２５０の左下をチェッカーボード座標系Σｂの原点に設定される。そして、チェッカーボード２５０における市松模様の複数の交点（特徴点）が、チェッカーボード座標系Σｂにおける位置として、予め記憶部２０に記憶される。
【００２８】
カメラ２３０は、ＣＣＤ（Charge Coupled Device）やＣＭＯＳ（Complementary Metal Oxide Semiconductor）等のイメージセンサを有する単眼のデジタルカメラである。カメラ２３０は、加工機２１０の加工動作に干渉しない位置で、かつテーブル２２０及び加工機２１０により加工されているワークの状態を監視できる工作機械２００内の位置に配置される。なお、図２では、カメラ２３０に設定されるカメラ座標系Σｃを示す。
【００２９】
カメラ校正装置１００は、工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションするため、制御部１０が記憶部２０に記憶されたカメラ校正処理のプログラムを実行することにより、機械座標計測部１１、画像取得部１２及び校正部１３として機能する。
制御部１０は、例えば、プロセッサ等であり、カメラ校正装置１００の各部の動作を制御する。また、制御部１０は、カメラ校正処理に基づいて、工作機械２００の動作も制御する。
機械座標計測部１１は、加工機２１０に配置されたタッチプローブ２４０がタッチしたタッチ点の機械座標を含む信号を数値制御装置１５０を介して受信し、タッチしたタッチ点の機械座標を取得する。機械座標計測部１１は、タッチ点の機械座標を、記憶部２０の計測値データ２２の格納領域に記憶する。
画像取得部１２は、カメラ２３０が撮像した画像を取得する。画像取得部１２は、取得した画像を、記憶部２０の画像データ２１の格納領域に記憶する。
校正部１３は、取得したタッチ点の機械座標及び画像を用いて、工作機械２００上に設定された機械座標系Σｍと、工作機械に設置されたカメラ２３０のカメラ座標系Σｃとの間の姿勢Ｒ及び位置関係ｔを算出する。
記憶部２０は、ハードディスク装置やメモリ等であり、カメラ校正処理のプログラムを記憶するとともに、カメラ２３０により撮像された画像を記憶する画像データ２１の格納領域、タッチ点の機械座標を記憶する計測値データ２２の格納領域、及び姿勢Ｒ及び位置関係ｔ等の校正データを記憶する校正データ２３の格納領域を有する。
なお、制御部１０、機械座標計測部１１、画像取得部１２及び校正部１３の動作の詳細な説明については後述する。
【００３０】
＜第１段階＞
例えば、機械座標計測部１１は、キーボード等の入力装置を介して入力された、オペレータ等の指示によりカメラ校正処理が実行された場合、図３に示すように、数値制御装置１５０を介して加工機２１０を機械座標系ΣｍのＺｍ軸の負の方向（すなわち、テーブル２２０の方向）に移動させ、チェッカーボード２５０上の任意の位置にタッチプローブ２４０をタッチさせる。機械座標計測部１１は、タッチプローブ２４０がタッチしたタッチ点ＴＰの機械座標を含む信号をタッチプローブ２４０から受信し、タッチ点ＴＰの機械座標を取得する。機械座標計測部１１は、タッチ点ＴＰの機械座標系Σｍの機械座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）をチェッカーボード２５０上の機械座標の既知の１点として、記憶部２０の計測値データ２２の格納領域に記憶する。
【００３１】
図３は、タッチプローブ２４０がチェッカーボード２５０をタッチした時のテーブル２２０及びチェッカーボード２５０の状態の一例を示す図である。
そして、画像取得部１２は、タッチプローブ２４０がテーブル２２０をタッチした時のチェッカーボード２５０を撮像させる撮像指示をカメラ２３０に出力する。画像取得部１２は、タッチプローブ２４０がチェッカーボード２５０をタッチした時に、カメラ２３０により撮像されたタッチプローブ２４０及びチェッカーボード２５０の画像３００−１をカメラ２３０から取得し、記憶部２０の画像データ２１の格納領域に記憶する。その後、機械座標計測部１１は、加工機２１０をＺｍ軸の正の方向（すなわち、テーブル２２０から離れる方向）に移動させ、元の位置に復帰させる。
【００３２】
図４は、タッチプローブ２４０がチェッカーボード２５０をタッチした時のチェッカーボード２５０の画像３００−１の一例を示す図である。図４に示すように、画像３００−１には、チェッカーボード２５０とともに、タッチプローブ２４０の先端も撮像される。
前述したように、校正部１３は、当業者にとって公知の方法（例えば、Ｔｓａｉの方法）により、画像３００−１から、カメラの内部パラメータＫ及びチェッカーボード座標系Σｂとカメラ座標系Σｃとの間の姿勢Ｒｃ及び位置関係ｔｃを求める。
これにより、式（３）で示したように、チェッカーボード座標系Σｂの座標（Ｘｂ，Ｙｂ，Ｚｂ）で表される空間上の点は、式（３）により線形変換することで、カメラ座標系Σｃの座標（Ｘｃ，Ｙｃ，Ｚｃ）で表すことができる。
また、カメラの内部パラメータＫを用いることで、チェッカーボード座標系Σｂの座標（Ｘｂ，Ｙｂ，Ｚｂ）で表される空間上の点は、線形変換で画像座標系Σｉの（ｘ，ｙ）に投影することができる。
【００３３】
なお、チェッカーボード座標系Σｂとカメラ座標系Σｃとの間の姿勢Ｒｃ及び位置関係ｔｃの算出方法はＴｓａｉの方法に限られない。
校正部１３は、チェッカーボード座標系Σｂとカメラ座標系Σｃとの間の姿勢Ｒｃ及び位置関係ｔｃを算出するために、画像３００−１から、例えば、当業者にとって公知のＰｎＰ問題に対するMoreno-Noguer et al., "Accurate Non-Iterative O(n) Solution to the PnP Problem", Proceedings of the IEEE International Conference on Computer Vision (ICCV), Oct. 2007）の方法（以下、「Ｍｏｒｅｎｏ−Ｎｏｇｕｅｒの方法」とも称される）を用いて、チェッカーボード座標系Σｂとカメラ座標系Σｃとの間の姿勢Ｒｃ及び位置関係ｔｃを算出しても良い。
【００３４】
＜第２段階＞
制御部１０は、カメラ校正処理において、図５に示すように、数値制御装置１５０を介して機械座標系ΣｍのＸｍ軸及びＹｍ軸の各方向にテーブル２２０を移動量ｄの距離移動させ、画像取得部１２は、各方向に移動したチェッカーボード２５０の状態を撮像させる撮像指示を、カメラ２３０に出力する。
【００３５】
図５は、Ｘｍ軸及びＹｍ軸の各方向に移動したテーブル２２０及びチェッカーボード２５０の状態の一例を示す図である。図５では、基準となる元の位置にあるテーブル２２０を破線で示し、Ｘｍ軸又はＹｍ軸の各方向に移動量ｄの距離移動したテーブル２２０を、テーブル２２０ａ、２２０ｂで示す。また、図５では、Ｘｍ軸及びＹｍ軸の各方向に移動したチェッカーボード２５０を、チェッカーボード２５０ａ、２５０ｂで示す。また、タッチプローブ２４０がチェッカーボード２５０をタッチしたタッチ点ＴＰが、網掛けで示した領域で示される。
【００３６】
より具体的には、制御部１０は、例えば、破線で示した元の位置（以下、「基準位置」とも称される）にあるテーブル２２０を、Ｘｍ軸方向に移動量ｄの距離移動させる。画像取得部１２は、移動したチェッカーボード２５０ａを撮像させる撮像指示を、カメラ２３０に出力する。画像取得部１２は、カメラ２３０により撮像されたチェッカーボード２５０ａの画像３００−２をカメラ２３０から取得し、記憶部２０の画像データ２１の格納領域に記憶する。その後、制御部１０は、テーブル２２０をＸｍ軸方向に移動量−ｄの距離移動させ、基準位置に復帰させる。
【００３７】
次に制御部１０は、基準位置にあるテーブル２２０を、Ｙｍ軸方向に移動量ｄの距離移動させる。画像取得部１２は、移動したチェッカーボード２５０ｂを撮像させる撮像指示を、カメラ２３０に出力する。画像取得部１２は、カメラ２３０により撮像されたチェッカーボード２５０ｂの画像３００−３をカメラ２３０から取得し、記憶部２０の画像データ２１の格納領域に記憶する。その後、カメラ校正装置１００は、テーブル２２０をＹｍ軸方向に移動量−ｄの距離だけ移動させ、基準に復帰させる。
なお、Ｘｍ軸方向に移動したチェッカーボード２５０ａの画像３００−２、及びＹｍ軸方向に移動したチェッカーボード２５０ｂの画像３００−３には、タッチプローブ２４０の先端が撮像されていなくても良い。
【００３８】
次に校正部１３は、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを算出するために、画像３００−１とともに、Ｘｍ軸方向に移動したチェッカーボード２５０ａの画像３００−２と、Ｙｍ軸方向に移動したチェッカーボード２５０ｂの画像３００−３とを、記憶部２０の画像データ２１の格納領域から読み込む。
図６は、３つの画像３００−１、３００−２、及び３００−３におけるチェッカーボード２５０、２５０ａ、２５０ｂの位置関係の一例を示す図である。なお、図６では、チェッカーボード２５０の特徴点Ａ、Ｂに対応するチェッカーボード２５０ａの特徴点をＡ１、Ｂ１で示し、チェッカーボード２５０ｂの特徴点をＡ２、Ｂ２で示す。
【００３９】
図６に示すように、チェッカーボード２５０ａは、チェッカーボード２５０がＸｍ軸方向に移動したものであるから、矢印で示した特徴点Ａと特徴点Ａ１との直線は、機械座標系ΣｍのＸｍ軸方向を示す。同様に、特徴点Ｂと特徴点Ｂ１との直線も、機械座標系ΣｍのＸｍ軸方向を示す。そうすると、特徴点Ａ、Ａ１、Ｂ、Ｂ１の４点は、２次元の画像座標系Σｉ上の画素であることから、特徴点Ａと特徴点Ａ１との直線と特徴点Ｂと特徴点Ｂ１との直線とは、ある一点、すなわち消失点Ｖｘで交わる。そこで、校正部１３は、画像座標系Σｉにおける特徴点Ａ、Ａ１、Ｂ、Ｂ１の座標から、機械座標系ΣｍのＸｍ軸方向の消失点Ｖｘを算出することができる。
【００４０】
また、チェッカーボード２５０ｂは、チェッカーボード２５０がＹｍ軸方向に移動したものであるから、矢印で示した特徴点Ａと特徴点Ａ２との直線は、機械座標系ΣｍのＹｍ軸方向を示す。同様に、特徴点Ｂと特徴点Ｂ２との直線も、機械座標系ΣｍのＹｍ軸方向を示す。そうすると、特徴点Ａ、Ａ２、Ｂ、Ｂ２の４点は、２次元の画像座標系Σｉ上の画素であることから、特徴点Ａと特徴点Ａ２との直線と特徴点Ｂと特徴点Ｂ２との直線とは、ある一点、すなわち消失点Ｖｙで交わる。そこで、校正部１３は、画像座標系Σｉにおける特徴点Ａ、Ａ２、Ｂ、Ｂ２の座標から、機械座標系ΣｍのＹｍ軸方向の消失点Ｖｙを算出することができる。
【００４１】
そうすることで、校正部１３は、当業者に公知の消失点を用いる方法により、算出した消失点Ｖｘ、Ｖｙと、内部パラメータＫとから式（４）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを構成する行ベクトルｒｘ、ｒｙ、ｒｚを算出することができる。
【数４】
2020080105.tif 000006
以上により、第２段階として、画像３００−１、及び工作機械の２方向の直線軸移動とその際に撮像して得た画像３００−２、及び画像３００−３とを用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを求めることができる。
なお、機械座標系Σｍに対するチェッカーボード座標系Σｂの姿勢Ｒｂは、Ｒ＝Ｒｃ・Ｒｂという関係から算出することができる。
【００４２】
＜第３段階＞
次に、校正部１３は、機械座標系Σｍとカメラ座標系Σｃとの間の位置関係ｔを算出するために、記憶部２０の計測値データ２２の格納領域から、機械座標系Σｍのタッチ点ＴＰの機械座標を読み込み、読み込んだタッチ点ＴＰの機械座標と、内部パラメータＫ、姿勢Ｒｃ、位置関係ｔｃ及び姿勢Ｒとを用いて、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを算出する。
【００４３】
より具体的には、校正部１３は、Ｒ＝Ｒｃ・Ｒｂの関係に基づいて、機械座標系Σｍに対するチェッカーボード座標系Σｂの姿勢Ｒｂを最初に算出する。
また、校正部１３は、図４に示した画像３００を用いて、タッチプローブ２４０の先端円の中心を通り、画像３００−１から算出したタッチプローブ２４０の軸方向の破線で示した直線と、タッチプローブ２４０の先端の円周との交点を、画像座標系Σｉにおけるタッチ点ＴＰの座標（ｘｔ，ｙｔ）として取得する。そして、校正部１３は、式（５）を用いて、画像座標系Σｉにおけるタッチ点ＴＰの座標（ｘｔ，ｙｔ）を、チェッカーボード座標系Σｂにおけるタッチ点ＴＰの座標（Ｘｔｂ，Ｙｔｂ，Ｚｔｂ）に変換する。
【数５】
2020080105.tif 000007
なお、スケールαは、Ｚｔｂ＝０により算出される。
【００４４】
校正部１３は、変換したチェッカーボード座標系Σｂにおけるタッチ点ＴＰの座標（Ｘｔｂ，Ｙｔｂ，Ｚｔｂ）と、記憶部２０の計測値データ２２の格納領域に記憶されたタッチ点ＴＰの機械座標系Σｍの機械座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）とから、式（６）を用いて、機械座標系Σｍに対するチェッカーボード座標系Σｂの位置関係ｔｂを算出する。
【数６】
2020080105.tif 000008
そして、校正部１３は、式（７）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを算出する。
ｔ＝Ｒｃ・ｔｂ＋ｔｃ    （７）
校正部１３は、算出した位置関係ｔを、記憶部２０の校正データ２３の格納領域に記憶する。
以上により、第３段階として、機械座標系Σｍとカメラ座標系Σｃとの間の位置関係ｔを求めることができる。
以上、第１の実施形態に係るカメラ校正装置１００の構成について説明した。
【００４５】
次に、図７に示すフローチャートを参照してカメラ校正装置１００の動作について説明する
図７は、第１の実施形態に係るカメラ校正装置１００におけるカメラ校正処理の一例を示す図である。図７に示した処理は、例えば、オペレータ等によるカメラ校正装置１００の入力装置の操作により実行される。なお、図７に示した処理を実行するにあたり、オペレータ等は、図２に示すように、テーブル２２０にチェッカーボード２５０を任意の位置に任意の姿勢で配置する。
【００４６】
ステップＳ１において、機械座標計測部１１は、図３に示すように、加工機２１０を機械座標系ΣｍのＺｍ軸の負の方向（すなわち、テーブル２２０の方向）に移動させ、タッチプローブ２４０にチェッカーボード２５０をタッチさせる。機械座標計測部１１は、タッチプローブ２４０がタッチしたタッチ点ＴＰの機械座標を取得する。
【００４７】
ステップＳ２において、画像取得部１２は、カメラ２３０により撮像されたタッチプローブ２４０及びチェッカーボード２５０の画像３００−１をカメラ２３０から取得する。
【００４８】
ステップＳ３において、校正部１３は、例えば、Ｔｓａｉの方法により、ステップＳ２で取得した画像３００−１から、内部パラメータＫ及びチェッカーボード座標系Σｂに対するカメラ座標系Σｃの姿勢Ｒｃ及び位置関係ｔｃを算出する。
【００４９】
ステップＳ４において、制御部１０は、図５に示すように、基準位置にあるテーブル２２０を機械座標系ΣｍのＸｍ軸及びＹｍ軸の各方向に移動量ｄの距離移動させ、画像取得部１２は、Ｘｍ軸方向に移動したチェッカーボード２５０ａの画像３００−２、及びＹｍ軸方向にチェッカーボード２５０ｂの画像３００−３を取得する。
【００５０】
ステップＳ５において、校正部１３は、画像３００−２及び画像３００−３を用いて、機械座標系ΣｍのＸｍ軸及びＹｍ軸方向の消失点Ｖｘ、Ｖｙを算出し、算出した消失点Ｖｘ、Ｖｙから式（４）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを算出する。
【００５１】
ステップＳ６において、校正部１３は、タッチ点ＴＰの機械座標系Σｍの機械座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）と、画像３００−１におけるタッチ点ＴＰの画像座標系Σｉの座標（ｘｔ，ｙｔ）とから、式（５）から式（７）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを算出する。
【００５２】
以上説明したように、第１の実施形態では、カメラ校正装置１００は、テーブル２２０に任意の位置に任意の姿勢で配置されたチェッカーボード２５０を、加工機２１０に配置されたタッチプローブ２４０でタッチしてタッチ点ＴＰの機械座標、及びタッチプローブ２４０がタッチした時のタッチプローブ２４０及びチェッカーボード２５０の画像３００−１を取得する。また、カメラ校正装置１００は、テーブル２２０を機械座標系ΣｍのＸｍ軸及びＹｍ軸の各方向に移動させ、各方向に移動した時のチェッカーボード２５０の画像３００−２及び画像３００−３を取得する。カメラ校正装置１００は、取得した３つの画像３００−１、画像３００−２、及び画像３００−３におけるチェッカーボード２５０の複数の特徴点の位置関係に基づいて、チェッカーボード座標系Σｂを介して、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒ及び位置関係ｔを算出する。
【００５３】
これにより、カメラ校正装置１００は、チェッカーボード２５０を任意の位置に任意の姿勢でテーブル２２０に配置することで、自由度が少ない工作機械においても容易に工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションできる。そして、カメラ校正装置１００は、専用の校正器具を規定位置に設置する作業、及び校正器具を設置する冶具が不要となるため、カメラ校正にかかる作業負担や設備負担を軽減できる。
以上、第１の実施形態について説明した。
【００５４】
[第１の実施形態の変形例１]
第１の実施形態に係るカメラ校正装置１００は、基準位置にあるチェッカーボード２５０の画像３００−１と、Ｘｍ軸方向に移動させたチェッカーボード２５０ａの画像３００−２と、Ｙｍ軸方向に移動させたチェッカーボード２５０ｂの画像３００−３との３つの画像を用いて、特徴点Ａ、Ｂ等の複数の特徴点の位置の変化から機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを算出したが、これに限定されない。例えば、第１の実施形態の変形例１として、カメラ校正装置１００は、１つの特徴点の位置の変化から姿勢Ｒを算出しても良い。
【００５５】
この場合、カメラ校正装置１００は、画像３００−１、画像３００−２及び画像３００−３とともに、テーブル２２０をＸｍ軸方向に移動量ｄの距離移動させて、Ｙｍ軸方向に移動量ｄの距離移動させた画像３００−４も取得する必要がある。すなわち、カメラ校正装置１００は、４つの画像を用いることで、解が不定となることなく、１つの特徴点の位置の変化から姿勢Ｒを算出できる。
【００５６】
[第１の実施形態の変形例２]
第１の実施形態に係るカメラ校正装置１００は、機械座標系ΣｍのＸｍＹｍ平面とチェッカーボード座標系ΣｂのＸｂＹｂ平面とが必ずしも平行とは限らないことから、Ｘｍ軸及びＹｍ軸の各方向にテーブル２２０を移動させたが、これに限定されない。例えば、第１の実施形態の変形例２として、カメラ校正装置１００は、機械座標系ΣｍのＸｍＹｍ平面とチェッカーボード座標系ΣｂのＸｂＹｂ平面とが互いに平行な場合、Ｘｍ軸又はＹｍ軸のいずれか１方向にテーブル２２０を移動させるだけでも良い。
【００５７】
この場合、カメラ校正装置１００は、画像平面に対して内部パラメータＫ、姿勢Ｒｃの逆変換を行なった平面上における、特徴点Ａと特徴点Ａ１との直線とチェッカーボード座標系ΣｂのＸｂ軸との回転移動として姿勢Ｒｂを直接求めることができる。この場合の姿勢Ｒは、Ｒ＝Ｒｂ・Ｒｃにより算出される。
【００５８】
[第２の実施形態]
次に第２の実施形態について説明する。第２の実施形態では、カメラ校正装置は、チェッカーボードに替えて、テーブル上の溝やキズ、模様又はコーナー点等を校正に使用する複数の特徴点を含むパターンとして用いる点が、第１の実施形態と異なる。
これにより、第２の実施形態の第１段階では、カメラ校正装置１００Ａは、機械座標の既知の１点と複数の特徴点を撮像して得た画像を取得する。
そして、カメラ校正装置１００Ａは、第２段階として、後述するように、機械座標が既知の１点と複数の特徴点を撮像して得た画像と、工作機械の２方向の直線軸移動とその際に撮像して得た画像との各画像における複数の特徴点の画像座標系Σｉの座標を用いて、第１の実施形態と同様に、消失点を用いる方法により機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを求める。
【００５９】
さらに、カメラ校正装置１００Ａは、第３段階として、後述するように、機械座標が既知の１点とその点を撮像して得た画像、及び工作機械の２方向の直線軸移動とその際に撮像して得た画像と、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒとを用いて、機械座標系Σｍに対するテーブル座標系Σｔの姿勢Ｒｔ及び位置関係ｔｔを算出することで、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを求めることができる。
【００６０】
なお、第２の実施形態では、カメラ校正装置１００Ａは、カメラ校正処理前に、公知の手法により、予め内部パラメータＫ及び歪曲収差係数κ１、κ２を算出し、算出した内部パラメータＫ及び歪曲収差係数κ１、κ２を記憶部２０に記憶する。
以上により、工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションすることができる。
以下に、第２実施形態について説明する。
【００６１】
図８は、本発明の第２の実施形態に係るカメラ校正装置の一例を示す図である。なお、図８では、第１の実施形態に係るカメラ校正装置１００の要素と同様の機能を有する要素については、同じ符号を付し、詳細な説明は省略する。
第２の実施形態に係るカメラ校正装置１００Ａは、第１の実施形態に係るカメラ校正装置１００と同様の構成を備える。
なお、図８に示すように、テーブル２２０には、テーブル座標系Σｔが設定される。
【００６２】
カメラ校正装置１００Ａは、工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションするため、制御部１０が記憶部２０に記憶されたカメラ校正処理のプログラムを実行することにより、機械座標計測部１１、画像取得部１２及び校正部１３ａとして機能する。
機械座標計測部１１及び画像取得部１２は、第１の実施形態における機械座標計測部１１及び画像取得部１２と同等の機能を有する。
【００６３】
校正部１３ａは、取得したタッチ点ＴＰの機械座標及び画像を用いて、工作機械２００上に設定された機械座標系Σｍと、工作機械に設置されたカメラ２３０のカメラ座標系Σｃとの間の姿勢Ｒ及び位置関係ｔを算出する。
【００６４】
＜第１段階＞
例えば、機械座標計測部１１は、テーブル２２０上の任意の位置にタッチプローブ２４０をタッチさせ、タッチプローブ２４０がタッチしたタッチ点ＴＰの機械座標を取得する。また、画像取得部１２は、タッチプローブ２４０がテーブル２２０をタッチした時のテーブル２２０の画像３００ａ−１を取得する。
【００６５】
＜第２段階＞
制御部１０は、カメラ校正処理において、図９に示すように、機械座標系ΣｍのＸｍ軸及びＹｍ軸の各方向にテーブル２２０を移動量ｄの距離移動させ、画像取得部１２は、Ｘｍ軸方向に移動したテーブル２２０ａの画像３００ａ−２と、Ｙｍ軸方向に移動したテーブル２２０ｂの画像３００ａ−３を取得する。
図９は、Ｘｍ軸及びＹｍ軸の各方向に移動したテーブル２２０の一例を示す図である。図９では、図５と同様に、基準位置にあるテーブル２２０を破線で示し、Ｘｍ軸及びＹｍ軸の各方向に移動量ｄの距離移動したテーブル２２０を、テーブル２２０ａ、２２０ｂで示す。また、図９では、Ｘｍ軸及びＹｍ軸の各方向に移動した特徴点Ｄ、Ｆ、Ｅを、特徴点Ｄ１、Ｅ１、Ｆ１及び特徴点Ｄ２、Ｅ２、Ｆ２で示す。
【００６６】
そして、校正部１３ａは、画像３００ａ−１と、画像３００ａ−２と、画像３００ａ−３とに対して当業者にとって公知のエッジ検出処理等の画像処理により、カメラ２３０から見えるキズ、模様又はコーナー点等の複数の特徴点を検出し、検出した複数の特徴点の画像座標系Σｉの座標を取得する。例えば、校正部１３ａは、画像３００ａ−１から特徴点Ｄ、Ｅ、Ｆの画像座標系Σｉの座標を取得し、画像３００ａ−２から特徴点Ｄ１、Ｅ１、Ｆ１の画像座標系Σｉの座標を取得し、画像３００ａ−２から特徴点Ｄ２、Ｅ２、Ｆ２の画像座標系Σｉの座標を取得する。
【００６７】
図９に示すように、テーブル２２０ａは、テーブル２２０がＸｍ軸方向に移動したものであるから、特徴点Ｄと特徴点Ｄ１との直線は、機械座標系ΣｍのＸｍ軸方向を示す。同様に、特徴点Ｅと特徴点Ｅ１との直線及び特徴点Ｆと特徴点Ｆ１との直線も、機械座標系ΣｍのＸｍ軸方向を示す。そうすると、特徴点Ｄ、Ｅ、Ｆと、特徴点Ｄ１、Ｅ１、Ｆ１の６点は、２次元の画像座標系Σｉ上の画素であることから、特徴点Ｄと特徴点Ｄ１との直線と、特徴点Ｅと特徴点Ｅ１との直線と、特徴点Ｆと特徴点Ｆ１との直線とは、ある一点、すなわち消失点Ｖｘで交わる。そこで、校正部１３ａは、画像座標系Σｉにおける特徴点Ｄ、Ｅ、Ｆと特徴点Ｄ１、Ｅ１、Ｆ１との座標から、機械座標系ΣｍのＸｍ軸方向の消失点Ｖｘを算出することができる。
【００６８】
また、テーブル２２０ｂは、テーブル２２０がＹｍ軸方向に移動したものであるから、特徴点Ｄと特徴点Ｄ２との直線は、機械座標系ΣｍのＹｍ軸方向を示す。同様に、特徴点Ｅと特徴点Ｅ２との直線及び特徴点Ｆと特徴点Ｆ２との直線も、機械座標系ΣｍのＹｍ軸方向を示す。そうすると、特徴点Ｄ、Ｅ、Ｆと、特徴点Ｄ２、Ｅ２、Ｆ２の６点は、２次元の画像座標系Σｉ上の画素であることから、特徴点Ｄと特徴点Ｄ２との直線と、特徴点Ｅと特徴点Ｅ２との直線と、特徴点Ｆと特徴点Ｆ２との直線とは、ある一点、すなわち消失点Ｖｙで交わる。そこで、校正部１３ａは、画像座標系Σｉにおける特徴点Ｄ、Ｅ、Ｆと特徴点Ｄ２、Ｅ２、Ｆ２との座標から、機械座標系ΣｍのＹｍ軸方向の消失点Ｖｙを算出することができる。
校正部１３ａは、算出した消失点Ｖｘ、Ｖｙと、内部パラメータＫとから、式（４）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを構成する行ベクトルｒｘ、ｒｙ、ｒｚを算出することができる。
【００６９】
＜第３段階＞
校正部１３ａは、図９に示した特徴点Ｄ、Ｄ１、Ｄ２の平面と、特徴点Ｅ、Ｅ１、Ｅ２の平面と、特徴点Ｆ、Ｆ１、Ｆ２の平面との３つの平面の座標系と、カメラ座標系Σｃとの間の位置関係ｔＤ、ｔＥ、ｔＦを算出する。なお、位置関係ｔＤを算出する場合について説明するが、位置関係ｔＥ、ｔＦについても同様に算出される。
ここで、特徴点Ｄ１、Ｅ１、Ｆ１は、特徴点Ｄ、Ｅ、ＦがＸｍ軸方向に移動したものであり、特徴点Ｄ２、Ｅ２、Ｆ２は、特徴点Ｄ、Ｅ、ＦがＹｍ軸方向に移動したものであるとから、特徴点Ｄ、Ｄ１、Ｄ２の平面と、特徴点Ｅ、Ｅ１、Ｅ２の平面と、特徴点Ｆ、Ｆ１、Ｆ２の平面は、機械座標系ΣｍのＸｍＹｍ平面に平行な平面である。ただし、テーブル２２０上の平面と機械座標系ΣｍのＸｍＹｍ平面と平行でない限り、特徴点Ｄ、Ｄ１、Ｄ２の平面と、特徴点Ｅ、Ｅ１、Ｅ２の平面と、特徴点Ｆ、Ｆ１、Ｆ２の平面は、Ｚｍ軸方向の位置が互いに異なる。
【００７０】
そこで、校正部１３ａは、特徴点Ｄを機械座標系Σｍの仮原点（０，０，０）とする場合、特徴点Ｄ１の機械座標は（ｄ，０，０）、及び特徴点Ｄ２の機械座標は（０，ｄ，０）となる。この場合、特徴点Ｄ、Ｄ１、Ｄ２の機械座標（０，０，０）、（ｄ，０，０）、（０，ｄ，０）と、画像座標系Σｉにおける特徴点Ｄ、Ｄ１、Ｄ２の座標（ｘＤ，ｙＤ）、（ｘＤ１，ｙＤ１）、（ｘＤ２，ｙＤ２）とは、式（８）のように関係付けられる。なお、スケールα、β、γと、位置関係ｔＤとは未知数である。また、式（８）の左辺は、特徴点Ｄ、Ｄ１、Ｄ２の画像座標系Σｉにおける座標をカメラ座標系Σｃにおける座標に変換したものである。
【数７】
2020080105.tif 000009
【００７１】
校正部１３ａは、式（８）から特徴点Ｄ、Ｄ１、Ｄ２の平面に対するカメラ座標系Σｃの位置関係ｔＤを算出する。校正部１３ａは、同様に、特徴点Ｅ、Ｅ１、Ｅ２の平面に対するカメラ座標系Σｃの位置関係ｔＥ、及び特徴点Ｆ、Ｆ１、Ｆ２の平面に対するカメラ座標系Σｃの位置関係ｔＦを算出する。そして、校正部１３ａは、テーブル２２０に設定されたテーブル座標系Σｔの座標原点を特徴点Ｄの位置とし、Ｘｔ軸の方向をｔＸ＝ｔＤ−ｔＥと定義する場合、Ｚｔ軸の方向はｔＺ＝（ｔＤ−ｔＥ）×（ｔＤ−ｔＦ）となり、Ｙｔ軸の方向はｔＹ＝ｔＺ×ｔＸとなることから、機械座標系Σｍに対するテーブル座標系Σｔの姿勢Ｒｔを算出することができる。そして、校正部１３ａは、Ｒ＝Ｒｃ・Ｒｔという関係から、テーブル座標系Σｔに対するカメラ座標系Σｃの間の姿勢Ｒｃを算出することができる。
【００７２】
また、校正部１３ａは、タッチプローブ２４０がテーブル２２０をタッチしている時に撮像された画像３３０ａ−１を用いて、図４の場合と同様に、画像座標系Σｉにおけるタッチ点ＴＰの座標（ｘｔ，ｙｔ）として取得する。校正部１３ａは、式（９）を用いて、画像座標系Σｉにおけるタッチ点ＴＰの座標（ｘｔ，ｙｔ）を、テーブル座標系Σｔにおけるタッチ点ＴＰの座標（Ｘｔｂ，Ｙｔｂ，Ｚｔｂ）に変換する。
【数８】
2020080105.tif 000010
なお、スケールαは、Ｚｔｂ＝０により算出される。
【００７３】
校正部１３ａは、変換したテーブル座標系Σｔにおけるタッチ点ＴＰの座標（Ｘｔｂ，Ｙｔｂ，Ｚｔｂ）と、記憶部２０の計測値データ２２の格納領域に記憶されたタッチ点ＴＰの機械座標系Σｍの機械座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）とから、式（１０）を用いて、機械座標系Σｍに対するテーブル座標系Σｔの位置関係ｔｔを算出する。
【数９】
2020080105.tif 000011
そして、校正部１３ａは、式（１１）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを算出する。
ｔ＝Ｒｃ・ｔｔ＋ｔＤ    （１１）
校正部１３ａは、算出した位置関係ｔを、記憶部２０の校正データ２３の格納領域に記憶する。
以上により、第３段階として、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを求めることができる。
以上、第２の実施形態に係るカメラ校正装置１００Ａの構成について説明した。
【００７４】
次に、図１０に示すフローチャートを参照してカメラ校正装置１００Ａの動作について説明する。
図１０は、第２の実施形態に係るカメラ校正装置１００Ａにおけるカメラ校正処理の一例を示す図である。図１０に示した処理は、複数の特徴点Ｄ、Ｅ、Ｆをチェッカーボードとして用いる点が、図７に示した第１の実施形態の処理と異なる。
図１０に示した処理は、例えば、オペレータ等によるカメラ校正装置１００Ａの入力装置の操作により実行される。
【００７５】
ステップＳ１１において、機械座標計測部１１は、加工機２１０を機械座標系ΣｍのＺ軸の負の方向（すなわち、テーブル２２０の方向）に移動させ、タッチプローブ２４０にテーブル２２０をタッチさせる。機械座標計測部１１は、タッチプローブ２４０がタッチしたタッチ点ＴＰの機械座標を取得する。
【００７６】
ステップＳ１２において、画像取得部１２は、カメラ２３０により撮像されたタッチプローブ２４０及びテーブル２２０の画像３００ａ−１をカメラ２３０から取得する。
【００７７】
ステップＳ１３において、制御部１０は、図９に示すように、基準位置にあるテーブル２２０を、機械座標系ΣｍのＸｍ軸及びＹｍ軸の各方向に移動量ｄの距離移動させ、画像取得部１２は、Ｘｍ軸方向に移動したテーブル２２０ａの画像３００ａ−２、及びＹｍ軸方向に移動したテーブル２２０ｂの画像３００ａ−３を取得する。
【００７８】
ステップＳ１４において、校正部１３ａは、画像３００ａ−１の特徴点Ｄ、Ｅ、Ｆ、画像３００ａ−２の特徴点Ｄ１、Ｅ１、Ｆ１及び画像３００ａ−３の特徴点Ｄ２、Ｅ２、Ｆ２を用いて、機械座標系ΣｍのＸｍ軸及びＹｍ軸方向の消失点Ｖｘ、Ｖｙを算出し、算出した消失点Ｖｘ、Ｖｙから式（４）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを算出する。
【００７９】
ステップＳ１５において、校正部１３ａは、タッチ点ＴＰの機械座標系Σｍの機械座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）と、画像３００ａ−１におけるタッチ点ＴＰの画像座標系Σｉの座標（ｘｔ，ｙｔ）とから、式（８）から式（１１）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを算出し、算出した位置関係ｔを記憶部２０の校正データ２３の格納領域に記憶する。
【００８０】
以上説明したように、第２の実施形態では、カメラ校正装置１００Ａは、加工機２１０に配置されたタッチプローブ２４０がテーブル２２０をタッチしたタッチ点ＴＰの機械座標、及びタッチプローブ２４０がタッチした時のテーブル２２０の画像３００ａ−１を取得する。また、カメラ校正装置１００Ａは、テーブル２２０を機械座標系ΣｍのＸｍ軸及びＹｍ軸の各方向に移動させ、各方向に移動した時のテーブル２２０の画像３００ａ−２及び画像３００ａ−３を取得する。カメラ校正装置１００Ａは、取得した３つの画像３００ａ−１、画像３００ａ−２及び画像３００ａ−３におけるテーブル２２０上の複数の特徴点の位置関係に基づいて、テーブル座標系Σｔを介して、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒ及び位置関係ｔを算出する。
【００８１】
これにより、カメラ校正装置１００Ａは、テーブル２２０上の複数の特徴点を校正器具として用いることで、自由度が少ない工作機械においても容易に工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションできる。そして、カメラ校正装置１００Ａは、専用の校正器具を規定位置に設置する作業、及び校正器具を設置する冶具が不要となるため、カメラ校正にかかる作業負担や設備負担を軽減できる。
以上、第２の実施形態について説明した。
【００８２】
[第２の実施形態の変形例１]
第２の実施形態に係るカメラ校正装置１００Ａは、公知の手法により、予め内部パラメータＫ及び歪曲収差係数κ１、κ２を算出し、記憶部２０に記憶したが、これに限定されない。例えば、第２の実施形態の変形例１として、カメラ校正装置１００Ａは、テーブル２２０上のキズ等の複数の特徴点をチェッカーボードと見立て、公知の手法により内部パラメータＫ及び歪曲収差係数κ１、κ２を算出しても良い。
この場合、カメラ校正装置１００Ａは、テーブル２２０を機械座標系ΣｍのＸｍＹｍ平面上の様々な位置に移動させた３以上の複数の画像を取得することが好ましい。
【００８３】
[第２の実施形態の変形例２]
第２の実施形態に係るカメラ校正装置１００Ａは、テーブル２２０上の複数の特徴点Ｄ、Ｅ、Ｆを検出したが、これに限定されない。例えば、第２の実施形態の変形例２として、カメラ校正装置１００Ａは、機械座標系ΣｍのＸｍＹｍ平面とテーブル座標系ΣｔのＸｔＹｔ平面とが互いに平行な場合、１つの特徴点を用いるだけで良い。
【００８４】
[第３の実施形態]
次に第３の実施形態について説明する。第３の実施形態では、カメラ校正装置は、工作機械に含まれるカメラとして３Ｄカメラを用いる点が、第１の実施形態と異なる。これにより、第３の実施形態では、カメラ校正装置は、カメラ座標系Σｃから見たタッチプローブ２４０の先端の位置を直接取得できるため、タッチプローブ２４０の先端の機械座標が既知の場合、チェッカーボード２５０へのタッチ動作が不要となる。このため、以下では、タッチ点の代わりに、タッチプローブ２４０の先端の位置は、「先端位置」ともいう。
したがって、第３の実施形態の第３段階では、カメラ校正装置１００Ｂは、先端位置の機械座標系Σｍの機械座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）と、カメラ座標系Σｃの座標（Ｘｔｃ，Ｙｔｃ，Ｚｔｃ）とは、式（１２）のように関係付けられるため、チェッカーボード座標系Σｂを経由せず、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを求めることができる。
【数１０】
2020080105.tif 000012
【００８５】
なお、カメラ校正装置１００Ｂは、第１段階として、タッチプローブ２４０を含むテーブル２２０上の任意の位置に設置したチェッカーボード２５０の画像３００ｂ−１を取得し、公知の手法により、取得した画像からカメラの内部パラメータ及びチェッカーボード座標系Σｂに対するカメラ座標系Σｃの姿勢Ｒｃ及び位置関係ｔｃを求める。
また、カメラ校正装置１００Ｂは、第１の実施形態と同様に、第２段階として、機械座標系ΣｍのＸｍ軸方向に移動したチェッカーボード２５０ａの画像３００ｂ−２と、Ｙｍ軸方向に移動したチェッカーボード２５０ｂの画像３００ｂ−３とを用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを求める。
以上により、工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションすることができる。
以下に、第３実施形態について説明する。
【００８６】
図１１は、本発明の第３の実施形態に係るカメラ校正装置の一例を示す図である。なお、図１１では、第１の実施形態に係るカメラ校正装置１００の要素と同様の機能を有する要素については、同じ符号を付し、詳細な説明は省略する。
【００８７】
第３の実施形態に係るカメラ校正装置１００Ｂは、第１の実施形態に係るカメラ校正装置１００と同様の構成を備える。
工作機械２００は、加工機２１０と、テーブル２２０と、カメラ２３０ａとを有する。
【００８８】
カメラ２３０ａは、ＣＣＤやＣＭＯＳ等のイメージセンサを２つ有する３Ｄカメラ（例えば、ステレオカメラ又は深度カメラ等）である。カメラ２３０ａは、加工機２１０の加工動作に干渉しない位置で、かつテーブル２２０及び加工機２１０により加工されているワークの状態が観察できる工作機械２００内の位置に配置される。なお、カメラ２３０ａにおける基線長等については、予め校正され、基線長等の校正データは記憶部２０の校正データ２３の格納領域に記憶される。
【００８９】
カメラ校正装置１００Ｂは、工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションするため、制御部１０が記憶部２０に記憶されたカメラ校正処理のプログラムを実行することにより、機械座標計測部１１、画像取得部１２及び校正部１３ｂとして機能する。
機械座標計測部１１及び画像取得部１２は、第１の実施形態における機械座標計測部１１及び画像取得部１２と同等の機能を有する。
【００９０】
校正部１３ｂは、第１の実施形態における校正部１３と同等の機能を有する。ただし、校正部１３ｂは、カメラ２３０ａが３Ｄカメラであるため、カメラ２３０ａにより撮像された画像からタッチプローブ２４０の先端位置ＳＰのカメラ座標系Σｃにおける座標を直接取得できる点が、第１の実施形態に係る校正部１３と異なる。
より具体的には、上述したように、校正部１３ｂは、第３段階において、先端位置ＳＰの機械座標系Σｍの機械座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）と、カメラ２３０ａにより撮像された画像から取得した先端位置ＳＰのカメラ座標系Σｃの座標（Ｘｔｃ，Ｙｔｃ，Ｚｔｃ）とから、式（１２）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを算出する。
以上、第３の実施形態に係るカメラ校正装置１００Ｂの構成について説明した。
【００９１】
次に、図１２に示すフローチャートを参照してカメラ校正装置１００Ｂの動作について説明する
図１２は、第３の実施形態に係るカメラ校正装置１００Ｂにおけるカメラ校正処理の一例を示す図である。図１２に示した処理のうち、図７に示したステップと同様の処理については、同じステップ番号を付し、詳細な説明は省略する。
図１２に示した処理は、例えば、オペレータ等によるカメラ校正装置１００Ｂの入力装置の操作により実行される。なお、図１２に示した処理を実行するにあたり、オペレータ等は、図１１に示すように、テーブル２２０にチェッカーボード２５０を任意の位置に任意の姿勢で配置する。
【００９２】
ステップＳ１ａにおいて、機械座標計測部１１は、基準位置にある加工機２１０に配置されたタッチプローブ２４０が検出した先端位置ＳＰの機械座標を取得する。
【００９３】
ステップＳ２ａにおいて、画像取得部１２は、基準位置にある加工機２１０のタッチプローブ２４０及びチェッカーボード２５０の画像３００ｂ−１を取得する。
ステップＳ３において、校正部１３ｂは、第１の実施形態におけるステップ３に記載した処理において、ステップＳ２をステップＳ２ａに読み替え、画像３００−１を画像３００ｂ−１に読み替えた動作と同様の処理を行い、内部パラメータＫ及びチェッカーボード座標系Σｂに対するカメラ座標系Σｃの姿勢Ｒｃ及び位置関係ｔｃを算出する。
【００９４】
ステップＳ４において、カメラ校正装置１００Ｂは、第１の実施形態におけるステップＳ４に記載した処理において、画像３００−２を画像３００ｂ−２と読み替え、画像３００−３を画像３００ｂ−３と読み替えた動作と同様の処理を行い、画像３００ｂ−２及び画像３００ｂ−３を取得する。
ステップＳ５において、校正部１３ｂは、第１の実施形態におけるステップＳ４に記載した処理において、画像３００−１を画像３００ｂ−１に、画像３００−２を画像３００ｂ−２に、画像３００−３を画像３００ｂ−３にそれぞれ読み替えた動作と同様の処理を行い、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを算出し、算出した姿勢Ｒを記憶部２０の校正データ２３の格納領域に記憶する。
【００９５】
ステップＳ６ａにおいて、校正部１３ｂは、先端位置ＳＰの機械座標系Σｍの機械座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）と、画像３００ａ−１から取得される先端位置ＳＰのカメラ座標系Σｃにおける座標（Ｘｔｃ，Ｙｔｃ，Ｚｔｃ）と、姿勢Ｒとから式（１２）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを算出する。
【００９６】
以上説明したように、第３の実施形態では、カメラ校正装置１００Ｂは、加工機２１０に配置されたタッチプローブ２４０の先端位置ＳＰの機械座標、及びテーブル２２０に任意の位置に任意の姿勢で配置されたチェッカーボード２５０とタッチプローブ２４０の画像３００ｂ−１を取得する。また、カメラ校正装置１００Ｂは、テーブル２２０を機械座標系ΣｍのＸｍ軸及びＹｍ軸の各方向に移動させ、各方向に移動した時のチェッカーボード２５０の画像３００ｂ−２及び画像３００ｂ−３を取得する。カメラ校正装置１００Ｂは、取得した３つの画像３００ｂ−１、画像３００ｂ−２、及び画像３００ｂ−３におけるチェッカーボード２５０の複数の特徴点の位置関係に基づいて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを算出する。また、カメラ校正装置１００Ｂは、取得した先端位置ＳＰの機械座標系Σｍの機械座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）と、画像３００ｂ−１から取得した先端位置ＳＰのカメラ座標系Σｃの座標（Ｘｔｃ，Ｙｔｃ，Ｚｔｃ）とから、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを算出する。
【００９７】
これにより、カメラ校正装置１００Ｂは、チェッカーボード２５０を任意の位置に任意の姿勢でテーブル２２０に配置することで、自由度が少ない工作機械においても容易に工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションできる。そして、カメラ校正装置１００Ｂは、専用の校正器具を規定位置に設置する作業、及び校正器具を設置する冶具が不要となるため、カメラ校正にかかる作業負担や設備負担を軽減できる。
以上、第３の実施形態について説明した。
【００９８】
[第４の実施形態]
次に第４の実施形態について説明する。第４の実施形態では、工作機械は、テーブルが固定して配置され、工具主軸のみ可動する可動型３軸機（主軸が機械座標系ΣｍのＸｍＹｍＺｍ方向に移動可能）であるという点が、第１の実施形態と異なる。また、第４の実施形態では、加工機に配置されたタッチプローブの先端を特徴点とするため、機械座標系Σｍとカメラ座標系Σｃとの姿勢Ｒ及び位置関係ｔを求めるために、４つの画像が必要となる点が、第１の実施形態と異なる。
これにより、カメラ校正装置１００Ｃは、第２段階として、後述するように、工作機械の２方向の直線軸移動により撮像して得た４つ画像を用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを求める。
なお、第４の実施形態における第１段階及び第３段階は、第１の実施形態と同様であり詳細な説明は省略する。
以上により、工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションすることができる。
以下に、第４実施形態について説明する。
【００９９】
図１３は、本発明の第４の実施形態に係るカメラ校正装置の一例を示す図である。なお、図１３では、第１の実施形態に係るカメラ校正装置１００の要素と同様の機能を有する要素については、同じ符号を付し、詳細な説明は省略する。
【０１００】
第４の実施形態に係るカメラ校正装置１００Ｃは、第１の実施形態に係るカメラ校正装置１００と同様の構成を備える。
一方、工作機械２００は、例えば、工具主軸のみ可動する可動型３軸機であり、加工機２１０ａ（工具主軸装置）と、テーブル２２０ｃと、カメラ２３０とを有する。
【０１０１】
加工機２１０ａは、例えば、主軸ユニットであり、数値制御装置１５０の指令に基づいて、機械座標系ΣｍのＸｍ軸、Ｙｍ軸及びＺｍ軸の各方向に移動する。
【０１０２】
また、加工機２１０ａには、カメラ校正処理の際に任意の位置の機械座標を計測するタッチプローブ２４０が、加工機２１０ａの先端に配置される。なお、これに限定されず、加工機２１０ａの先端には、レーザ光源等が配置されても良い。
テーブル２２０ｃは、例えば、工作機械２００に固定して配置され、上面に加工対象のワークが配置される。
【０１０３】
また、テーブル２２０ｃの上面には、カメラ校正処理の際に、チェッカーボード２５０が校正器具として任意の位置に任意の姿勢で配置される。なお、これに限定されず、テーブル２２０ｃには、ドットパターン等を有した校正器具が配置されても良い。また、カメラ校正処理の際に、加工機２１０ａの先端に配置されたタッチプローブ２４０がチェッカーボード２５０上の任意の位置をタッチできるように、チェッカーボード２５０がテーブル２２０ｃに配置されることが好ましい。
【０１０４】
カメラ校正装置１００Ｃは、工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションするため、制御部１０が記憶部２０に記憶されたカメラ校正処理のプログラムを実行することにより、機械座標計測部１１、画像取得部１２及び校正部１３ｃとして機能する。
機械座標計測部１１及び画像取得部１２は、第１の実施形態における機械座標計測部１１及び画像取得部１２と同等の機能を有する。
校正部１３ｃは、第１の実施形態における校正部１３と同等の機能を有する。ただし、校正部１３ｃは、上述したように、加工機２１０ａに配置されたタッチプローブ２４０の先端位置ＳＰを１つの特徴点をとするため、第２段階において、４つの異なる位置で撮像された４つの画像を用いて機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを算出する点が、第１の実施形態における校正部１３と異なる。
【０１０５】
＜第２段階＞
画像取得部１２は、図１４に示すように、破線で示した加工機２１０ａの基準位置と、加工機２１０ａが機械座標系ΣｍのＺｍ軸方向の高さを一定にしてＸｍＹｍ平面上を移動した３つの位置とのそれぞれで、撮像された加工機２１０ａのタッチプローブ２４０を含む４つ画像を、カメラ２３０から取得する。
図１４は、カメラ校正処理における加工機２１０ａの動作の一例を示す図である。図１４では、基準位置にある加工機２１０ａを破線で示す。画像取得部１２は、カメラ２３０により撮像された基準位置にあるタッチプローブ２４０の画像３００ｃ−２を取得する。そして、図１４に示すように、制御部１０は、基準位置にある加工機２１０ａを、テーブル２２０ｃに対して機械座標系ΣｍのＸｍ軸方向に移動量ｄの距離移動させ、画像取得部１２は、カメラ２３０により撮像されたタッチプローブ２４０の画像３００ｃ−３を取得する。
次に、制御部１０は、加工機２１０ａを、現在の位置からＹｍ軸方向に移動量ｄの距離移動させ、画像取得部１２は、カメラ２３０により撮像されたタッチプローブ２４０の画像３００ｃ−４を取得する。そして、制御部１０は、加工機２１０ａを、現在の位置からＸｍ軸方向に移動量−ｄの距離を移動させ、画像取得部１２は、カメラ２３０により撮像されたタッチプローブ２４０の画像３００ｃ−５を取得する。
【０１０６】
校正部１３ｃは、図１４に示すように、４つの位置で撮像された画像３００ｃ−２、画像３００ｃ−３、画像３００ｃ−４及び画像３００ｃ−５から、図４の場合と同様に、タッチプローブ２４０の先端位置ＳＰの画像座標系Σｉにおける座標を取得する。
【０１０７】
図１５は、４つの画像３００ｃ−２、画像３００ｃ−３、画像３００ｃ−４及び画像３００ｃ−５から取得された画像座標系Σｉにおける先端位置ＳＰ１−ＳＰ４の位置関係の一例を示す図である。先端位置ＳＰ１は、画像３００ｃ−２における画素位置を示し、先端位置ＳＰ２は、画像３００ｃ−３における画素位置を示す。また、先端位置ＳＰ３は、画像３００ｃ−４における画素位置を示し、先端位置ＳＰ４は、画像３００ｃ−５における画素位置を示す。
【０１０８】
先端位置ＳＰ１と先端位置ＳＰ２との直線は、図６の場合と同様に、機械座標系ΣｍのＸｍ軸方向を示す。同様に、先端位置ＳＰ３と先端位置ＳＰ４との直線も、機械座標系ΣｍのＸｍ軸方向を示す。そうすると、先端位置ＳＰ１−ＳＰ４の４点は、２次元の画像座標系Σｉ上の画素であることから、先端位置ＳＰ１と先端位置ＳＰ２との直線と先端位置ＳＰ３と先端位置ＳＰ４との直線とは、ある一点、すなわち消失点Ｖｘで交わる。そこで、校正部１３ｃは、画像座標系Σｉにおける先端位置ＳＰ１−ＳＰ４の座標から、機械座標系ΣｍのＸｍ軸方向の消失点Ｖｘを算出することができる。
【０１０９】
また、先端位置ＳＰ１と先端位置ＳＰ４との直線は、図６の場合と同様に、機械座標系ΣｍのＹｍ軸方向を示す。同様に、先端位置ＳＰ２と先端位置ＳＰ３との直線も、機械座標系ΣｍのＹｍ軸方向を示す。そうすると、先端位置ＳＰ１−ＳＰ４の４点は、２次元の画像座標系Σｉ上の画素であることから、先端位置ＳＰ１と先端位置ＳＰ４との直線と先端位置ＳＰ２と先端位置ＳＰ３との直線とは、ある一点、すなわち消失点Ｖｙで交わる。そこで、校正部１３ｃは、画像座標系Σｉにおける先端位置ＳＰ１−ＳＰ４の座標から、機械座標系ΣｍのＹｍ軸方向の消失点Ｖｙを算出することができる。
【０１１０】
そうすることで、校正部１３ｃは、算出した消失点Ｖｘ、Ｖｙと、内部パラメータＫとから式（４）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを構成する行ベクトルｒｘ、ｒｙ、ｒｚを算出することができる。
以上、第４の実施形態に係るカメラ校正装置１００Ｃの構成について説明した。
【０１１１】
次に、図１６に示すフローチャートを参照してカメラ校正装置１００Ｃの動作について説明する
図１６は、第４の実施形態に係るカメラ校正装置１００Ｃにおけるカメラ校正処理の一例を示す図である。図１６に示した処理のうち、図７に示したステップと同様の処理については、同じステップ番号を付し、詳細な説明は省略する。
【０１１２】
図１６に示した処理は、例えば、オペレータ等によるカメラ校正装置１００Ｃの入力装置の操作により実行される。なお、図１６に示した処理を実行するにあたり、オペレータ等は、図１３に示すように、テーブル２２０ｃにチェッカーボード２５０を任意の位置に任意の姿勢で配置する。
【０１１３】
ステップＳ１において、機械座標計測部１１は、第１の実施形態におけるステップ１と同様の処理を行い、タッチ点ＴＰの機械座標系Σｍの機械座標を取得する。
【０１１４】
ステップＳ２において、画像取得部１２は、第１の実施形態におけるステップ２と同様の処理を行い、カメラ２３０により撮像されたタッチプローブ２４０及びチェッカーボード２５０の画像３００−１をカメラ２３０から取得する。
【０１１５】
ステップＳ３において、校正部１３ｃは、第１の実施形態におけるステップ３と同様の処理を行い、公知の手法により、画像３００−１から、内部パラメータＫ及びチェッカーボード座標系Σｂに対するカメラ座標系Σｃの姿勢Ｒｃ及び位置関係ｔｃを算出する。
【０１１６】
ステップＳ４ｂにおいて、制御部１０は、図１４に示すように、基準位置にある加工機２１０ａを機械座標系ΣｍのＸｍ軸及びＹｍ軸の各方向に移動量ｄの距離移動させ、画像取得部１２は、画像３００ｃ−２、画像３００ｃ−３、画像３００ｃ−４及び画像３００ｃ−５を取得する。
【０１１７】
ステップＳ５ｂにおいて、校正部１３ｃは、取得した４つの画像３００ｃ−２、画像３００ｃ−３、画像３００ｃ−４及び画像３００ｃ−５における先端位置ＳＰ１−ＳＰ４の画像座標系Σｉにおける座標を用いて、機械座標系ΣｍのＸｍ軸及びＹｍ軸方向の消失点Ｖｘ、Ｖｙを算出し、算出した消失点Ｖｘ、Ｖｙと、内部パラメータＫとから式（４）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを算出する。
【０１１８】
ステップＳ６では、校正部１３ｃは、第１の実施形態におけるステップＳ６と同様の処理を行い、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを算出し、算出した位置関係ｔを、記憶部２０の校正データ２３の格納領域に記憶する。
【０１１９】
以上説明したように、第４の実施形態では、カメラ校正装置１００Ｃは、テーブル２２０ｃに任意の位置に任意の姿勢で配置されたチェッカーボード２５０を、加工機２１０ａに配置されたタッチプローブ２４０でタッチしてタッチ点ＴＰの機械座標、及びタッチプローブ２４０がタッチした時のタッチプローブ２４０及びチェッカーボード２５０の画像３００−１を取得する。また、カメラ校正装置１００Ｃは、加工機２１０ａを機械座標系ΣｍのＸｍ軸及びＹｍ軸の各方向に移動させ、各方向に移動した時のタッチプローブ２４０の４つの画像３００ｃ−２、画像３００ｃ−３、画像３００ｃ−４及び画像３００ｃ−５を取得する。カメラ校正装置１００Ｃは、取得した画像３００−１におけるタッチ点ＴＰの画像座標系Σｉの座標と、取得した４つの画像３００ｃ−２、画像３００ｃ−３、画像３００ｃ−４及び画像３００ｃ−５における先端位置ＳＰの画像座標系Σｉの座標と、タッチ点ＴＰの機械座標系Σｍの機械座標とを用いて、チェッカーボード座標系Σｂを介して、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒ及び位置関係ｔを算出する。
【０１２０】
これにより、カメラ校正装置１００Ｃは、チェッカーボード２５０を任意の位置に任意の姿勢でテーブル２２０ｃに配置することで、自由度が少ない工作機械においても容易に工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションできる。そして、カメラ校正装置１００Ｃは、専用の校正器具を規定位置に設置する作業、及び校正器具を設置する冶具が不要となるため、カメラ校正にかかる作業負担や設備負担を軽減できる。
以上、第４の実施形態について説明した。
[第５の実施形態]
【０１２１】
次に第５の実施形態について説明する。第５の実施形態では、工作機械は、テーブルが固定して配置され、工具主軸のみ可動する可動型３軸機であり、テーブルに替わり、カメラから見える加工機の側面に任意の位置に任意の姿勢でチェッカーボードが配置される点が、第１の実施形態と異なる。
これにより、第５の実施形態の第１段階では、カメラ校正装置１００Ｄは、タッチプローブ２４０の先端位置である機械座標の既知の１点と、先端位置とチェッカーボード２５０の画像を取得する点が、第１の実施形態と異なる。
【０１２２】
また、第５の実施形態の第２段階では、工作機械の２方向は、機械座標系ΣｍのＹｍ軸とＺｍ軸との方向である点が、第１の実施形態と異なる。しかしながら、第１の実施形態における機械座標系ΣｍのＸｍ軸及びＹｍ軸を、Ｙｍ軸及びＺｍ軸と読み替えることで、カメラ校正装置１００Ｄは、後述するように、第１の実施形態と同様に、機械座標が既知の１点とその点を撮像して得た画像、及び工作機械の２方向の直線軸移動とその際に撮像して得た画像とを用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを求める。
さらに、カメラ校正装置１００Ｄは、第３段階として、後述するように、機械座標が既知の１点とその点を撮像して得た画像、及び工作機械の２方向の直線軸移動とその際に撮像して得た画像と、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒとを用いて、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを求めることができる。
【０１２３】
以上により、工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションすることができる。
このように、第５の実施形態では、機械座標系Σｍに対するカメラ座標系Σｃの姿勢及び位置は、テーブルに設定されたテーブル座標系Σｔを介して算出される。
以下に、第５実施形態について説明する。
【０１２４】
図１７は、本発明の第５の実施形態に係るカメラ校正装置の一例を示す図である。なお、図１７では、第１の実施形態に係るカメラ校正装置１００の要素と同様の機能を有する要素については、同じ符号を付し、詳細な説明は省略する。
第５の実施形態に係るカメラ校正装置１００Ｄは、第１の実施形態に係るカメラ校正装置１００と同様の構成を備える。
【０１２５】
一方、工作機械２００は、第４の実施形態に係る工作機械２００と同様の構成を備える。そして、加工機２１０ａは、例えば、カメラ２３０から見える側面に、チェッカーボード２５０が任意の位置に任意の姿勢で配置される。これにより、加工機２１０ａの側面にチェッカーボード座標系Σｂが設定される。なお、これに限定されず、加工機２１０ａには、ドットパターン等を有した校正器具が配置されても良い。
【０１２６】
カメラ校正装置１００Ｄは、工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションするため、制御部１０が記憶部２０に記憶されたカメラ校正処理のプログラムを実行することにより、機械座標計測部１１、画像取得部１２及び校正部１３ｄとして機能する。
機械座標計測部１１及び画像取得部１２は、第１の実施形態における機械座標計測部１１及び画像取得部１２と同等の機能を有する。
【０１２７】
＜第１段階＞
例えば、機械座標計測部１１は、基準位置にある加工機２１０ａのタッチプローブ２４０が検出した先端位置ＳＰの機械座標の機械座標を取得する。また、画像取得部１２は、先端位置ＳＰの機械座標を検出した時のタッチプローブ２４０及びチェッカーボード２５０の画像３００ｄ−１を取得する。
【０１２８】
＜第２段階＞
制御部１０は、カメラ校正処理において、図１８に示すように、基準位置にある加工機２１０ａを、機械座標系ΣｍのＹｍ軸及びＺｍ軸の各方向に移動量ｄの距離移動させ、画像取得部１２は、各方向に移動した加工機２１０ａのチェッカーボード２５０の画像３００ｄ−２及び画像３００ｄ−３を取得する。
図１８は、カメラ校正処理における加工機２１０ａの動作の一例を示す図である。図１８では、基準位置に位置する加工機２１０ａを破線で示す。
なお、Ｙｍ軸方向に移動したチェッカーボード２５０の画像３００ｄ−２、及びＺｍ軸方向に移動したチェッカーボード２５０の画像３００ｄ−３には、タッチプローブ２４０の先端が撮像されていなくても良い。
【０１２９】
校正部１３ｄは、第１の実施形態と同様に、画像３００ｄ−１、画像３００ｄ−２及び画像３００ｄ−３のチェッカーボード２５０の特徴点に基づいて、機械座標系ΣｍのＸｍ軸及びＹｍ軸の各方向の消失点Ｖｘ、Ｖｙを算出し、算出した消失点Ｖｘ、Ｖｙと、内部パラメータＫとから、式（４）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを構成する行ベクトルｒｘ、ｒｙ、ｒｚを算出することができる。
【０１３０】
＜第３段階＞
次に、校正部１３ｄは、第１段階で検出された先端位置ＳＰの機械座標系Σｍの機械座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）に基づいて、画像３００ｄ−２及び画像３００ｄ−３が撮像された時の先端位置ＳＰの機械座標（Ｘｔｍ，Ｙｔｍ＋ｄ，Ｚｔｍ）、（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ＋ｄ）を取得する。また、校正部１３ｄは、取得した３つ画像３００ｄ−１、画像３００ｄ−２及び３００ｄ−３から、図４の場合と同様に、先端位置ＳＰの画像座標系Σｉの座標（ｘｔ０，ｙｔ０）、（ｘｔ１，ｙｔ１）、（ｘｔ２，ｙｔ２）を取得する。なお、（ｘｔ０，ｙｔ０）は、画像３００ｄ−１における先端位置ＳＰの座標を示し、（ｘｔ１，ｙｔ１）は、画像３００ｄ−２における先端位置ＳＰの座標を示し、（ｘｔ２，ｙｔ２）は、画像３００ｄ−３における先端位置ＳＰの座標を示す。
【０１３１】
そうすることで、校正部１３ｄは、各位置の先端位置ＳＰの機械座標系Σｍの機械座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）、（Ｘｔｍ，Ｙｔｍ＋ｄ，Ｚｔｍ）、（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ＋ｄ）と、先端位置ＳＰの画像座標系Σｉの座標（ｘｔ０，ｙｔ０）、（ｘｔ１，ｙｔ１）、（ｘｔ２，ｙｔ２）とは、式（１３）のように関係付けられる。校正部１３ｄは、式（１３）を解くことにより、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを算出することができる。
【数１１】
2020080105.tif 000013
以上により、第３段階として、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを求めることができる。
以上、第５の実施形態に係るカメラ校正装置１００Ｄの構成について説明した。
【０１３２】
次に、図１９に示すフローチャートを参照してカメラ校正装置１００Ｄの動作について説明する。
図１９は、第５の実施形態に係るカメラ校正装置１００Ｄにおけるカメラ校正処理の一例を示す図である。図１９示した処理のうち、図７に示したステップと同様の処理については、同じステップ番号を付し、詳細な説明は省略する。
【０１３３】
図１９に示した処理は、例えば、オペレータ等によるカメラ校正装置１００Ｄの入力装置の操作により実行される。なお、図１９に示した処理を実行するにあたり、オペレータ等は、図１７に示すように、加工機２１０ａの側面にチェッカーボード２５０を任意の位置に任意の姿勢で配置する。
【０１３４】
ステップＳ１ｃにおいて、機械座標計測部１１は、基準位置にある加工機２１０ａのタッチプローブ２４０が検出した先端位置ＳＰの機械座標を取得する。
【０１３５】
ステップＳ２ｃにおいて、画像取得部１２は、先端位置ＳＰの機械座標を検出した時に撮像されたタッチプローブ２４０及びチェッカーボード２５０の画像３００ｄ−１を取得する。
【０１３６】
ステップＳ３において、校正部１３ｄは、第１の実施形態におけるステップ３と同様の処理を行い、例えば、Ｔｓａｉの方法により、ステップＳ２で取得した画像３００ｄ−１から、内部パラメータＫ及びチェッカーボード座標系Σｂに対するカメラ座標系Σｃの姿勢Ｒｃ及び位置関係ｔｃを算出する。
【０１３７】
ステップＳ４ｃにおいて、制御部１０は、図１８に示すように、基準位置にある加工機２１０ａを、Ｙｍ軸方向に移動量ｄの距離移動させ、画像取得部１２は、移動したチェッカーボード２５０の画像３００ｄ−２を取得する。次に、制御部１０は、基準位置にある加工機２１０ａを、Ｚｍ軸方向に移動量ｄの距離移動させ、画像取得部１２は、移動したチェッカーボード２５０の画像３００ｄ−３を取得する。
【０１３８】
ステップＳ５において、校正部１３ｄは、第１の実施形態におけるステップＳ５に記載した処理において、Ｘｍ軸をＹｍ軸に、Ｙｍ軸をＺｍ軸にそれぞれ読み替えた同様の処理を行い、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒを算出する。
【０１３９】
ステップＳ６ｃにおいて、校正部１３ｄは、先端位置ＳＰの機械座標系Σｍの機械座標（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ）、（Ｘｔｍ，Ｙｔｍ＋ｄ，Ｚｔｍ）、（Ｘｔｍ，Ｙｔｍ，Ｚｔｍ＋ｄ）と、先端位置ＳＰの画像座標系Σｉの座標（ｘｔ０，ｙｔ０）、（ｘｔ１，ｙｔ１）、（ｘｔ２，ｙｔ２）とから、式（１３）を用いて、機械座標系Σｍに対するカメラ座標系Σｃの位置関係ｔを算出する。
【０１４０】
以上説明したように、第５の実施形態では、カメラ校正装置１００Ｄは、基準位置にある加工機２１０ａのタッチプローブ２４０が検出した先端位置ＳＰの機械座標、タッチプローブ２４０及びチェッカーボード２５０の画像３００ｄ−１を取得する。また、カメラ校正装置１００Ｄは、Ｙｍ軸及びＺｍ軸の各方向に移動した加工機２１０ａのタッチプローブ２４０及びチェッカーボード２５０の画像３００ｄ−２及び画像３００ｄ−３とを取得する。カメラ校正装置１００Ｄは、取得した３つの画像３００ｄ−１、３００ｄ−２、３００ｄ−３と、先端位置ＳＰの機械座標系Σｍの機械座標とを用いて、機械座標系Σｍに対するカメラ座標系Σｃの姿勢Ｒ及び位置関係ｔを算出する。
【０１４１】
これにより、カメラ校正装置１００Ｄは、チェッカーボード２５０を任意の位置に任意の姿勢で加工機２１０ａの側面に配置することで、自由度が少ない工作機械においても容易に工作機械上に設定された機械座標系Σｍと、工作機械に設置されたカメラのカメラ座標系Σｃとの関係をキャリブレーションできる。そして、カメラ校正装置１００Ｄは、専用の校正器具を規定位置に設置する作業、及び校正器具を設置する冶具が不要となるため、カメラ校正にかかる作業負担や設備負担を軽減できる。
以上、第５の実施形態について説明した。
【０１４２】
[第５の実施形態の変形例]
第５の実施形態に係るカメラ校正装置１００Ｄは、加工機２１０ａの側面にチェッカーボード２５０を配置したが、これに限定されない。例えば、第５の実施形態の変形例として、チェッカーボード２５０は、加工機２１０ａの工具取り付け位置に配置されても良い。
この場合、カメラ校正装置１００Ｄは、チェッカーボード２５０上の１点（工具主軸線とチェッカーボード座標系ΣｂのＸｂＹｂ平面との交点）の機械座標が既知であるとして、チェッカーボード２５０のＸｂＹｂ平面の姿勢を算出する。
【０１４３】
本発明の第１の実施形態から第５の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、前述した実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されるものではない。
＜システム構成の自由度＞
上述した実施形態では、カメラ校正装置１００が数値制御装置１５０と独立して配置されるケースを例示して説明したが、これに限られない。カメラ校正装置１００は、カメラ校正装置１００の機能を適宜複数のサーバに分散する、分散処理システムとしても良い。また、クラウド上で仮想サーバ機能等を利用して、カメラ校正装置１００の各機能を実現しても良い。また、カメラ校正装置１００の一部の機能を数値制御装置１５０が備えるようにしても良い。
【０１４４】
[実施形態の変形例１]
第１の実施形態及び第４の実施形態では、カメラ２３０は、加工機２１０（２１０ａ）とは異なる工作機械２００内の固定位置に配置されたが、これに限定されない。例えば、カメラ２３０は、加工機２１０（２１０ａ）に配置されても良い。この場合、カメラ２３０は、テーブル２２０及びチェッカーボード２５０とともにタッチプローブ２４０の先端を撮像できる加工機２１０（２１０ａ）の位置に配置されることが好ましい。
これにより、カメラ２３０は、チェッカーボード２５０をＺｍ軸方向から撮像することから、カメラ校正装置１００（１００Ｃ）は、チェッカーボード２５０における複数の特徴点を精度良く算出できる。
【０１４５】
［実施形態の変形例２］
第１の実施形態、第３の実施形態から第５の実施形態では、カメラ校正装置１００（１００Ｂ、１００Ｃ、１００Ｄ）は、内部パラメータ及びチェッカーボード座標系Σｂに対するカメラ座標系Σｃの姿勢Ｒｃ及び位置関係ｔｃを算出したが、これに限定されない。カメラ校正装置１００（１００Ｂ、１００Ｃ、１００Ｄ）は、カメラ校正処理前に、公知の手法により、テーブル２２０又は加工機２１０ａに配置されたチェッカーボード等の画像から、予め内部パラメータＫ及びチェッカーボード座標系Σｂに対するカメラ座標系Σｃの姿勢Ｒｃ及び位置関係ｔｃを算出しても良い。
これにより、カメラ校正装置１００（１００Ｂ、１００Ｃ、１００Ｄ）は、カメラ校正処理の処理時間を短縮することができる。
【符号の説明】
【０１４６】
１０  制御部
２０  記憶部
１１  機械座標計測部
１２  画像取得部
１３  校正部
１００  カメラ校正装置
１５０  数値制御装置
２００  工作機械
【図１Ａ】
2020080105.tif 000014
【図１Ｂ】
2020080105.tif 000015
【図１Ｃ】
2020080105.tif 000016
【図２】
2020080105.tif 000017
【図３】
2020080105.tif 000018
【図４】
2020080105.tif 000019
【図５】
2020080105.tif 000020
【図６】
2020080105.tif 000021
【図７】
2020080105.tif 000022
【図８】
2020080105.tif 000023
【図９】
2020080105.tif 000024
【図１０】
2020080105.tif 000025
【図１１】
2020080105.tif 000026
【図１２】
2020080105.tif 000027
【図１３】
2020080105.tif 000028
【図１４】
2020080105.tif 000029
【図１５】
2020080105.tif 000030
【図１６】
2020080105.tif 000031
【図１７】
2020080105.tif 000032
【図１８】
2020080105.tif 000033
【図１９】
2020080105.tif 000034