本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
<A.適用例>
まず、図1を参照して、本発明が適用される場面の一例について説明する。図1は、本実施の形態に係る位置検出装置100の適用場面の一例を示す模式図である。本実施の形態に係る位置検出装置100は、例えばキャリブレーションが実施される。キャリブレーションは、例えば位置検出装置100をアライメントのために実運用するに際して実施される。
キャリブレーションにおいては、移動機構(例えば、後述するサーボモータ300等)により移動される任意の対象物の位置を検出する。位置検出装置100は、例えば視覚センサに組込まれ得る。移動機構は、例えば、後述するサーボモータ300等の各種のアクチュエータが含まれ得る。対象物は、例えば、実運用時に視覚センサによる画像処理を用いた検査の対象となり得るワーク等を含み得る。
図1に示すように、位置検出装置100は、位置決め用の特徴部分(例えば、後述するマーク14等)が設けられた対象物の位置を変更する移動機構により、特徴部分が複数の目標位置21のそれぞれに位置決めされるとき、対象物を撮像して取得される画像データ10を格納する画像格納部60と、画像処理部50と、位置格納部80と、表示データ生成部85とを備える。上記の位置決め用の特徴部分は、より典型的には、キャリブレーションのターゲットマークのことであり、キャリブレーション専用のターゲットマークなどを使用しても良い。または、位置決め運用時の特徴部分を使用してもよい。
画像処理部50は、撮像された画像データ10から、画像処理により当該画像データ10に含まれる特徴部分の位置を検出する。位置格納部80は、各目標位置21に位置決めされた対象物の画像データ10から、上記の画像処理により検出される検出位置(すなわち、サンプリング位置20)を当該目標位置21と関連づけて格納する。表示データ生成部85は、各目標位置21と、当該目標位置21に関連付けて格納されている各検出位置(サンプリング位置20)を、表示部で同じ座標空間において表示するデータを生成する。表示部における上記の座標空間は、例えばXY軸の多次元の軸からなる2次元座標空間またはX軸(Y軸)の1次元の軸からなる座標空間を含み得る。
また、指令部95は、移動機構(例えば、サーボモータ300等)に対して、複数の目標位置21を用いて制御指令96を与えることで、対象物の特徴部分を目標位置21のそれぞれに位置決めするよう移動機構を制御する。制御指令96は、例えば、サーボモータ300への制御コマンド(例えば、駆動パルス等)に対応し得る。制御指令96の出力に同期して、画像取得部40は、カメラ104から撮像された画像データ10を、後述する画像バッファ122aを介して取得する。これにより、位置検出装置100は、各目標位置21に移動する毎に、カメラ104により撮像された画像データ10を取得することができる。
本実施の形態に係る位置検出装置100においては、目標位置21と、当該目標位置に特徴部が位置決めされるように対象物が移動機構により移動した場合に検出される特徴部の検出位置とが取得されて、これら同じ座標空間で関連付けて表示され得る。これにより、ユーザに対して、各目標位置21と、そこに位置決めされるよう移動させられた特徴部の画像処理による検出位置(サンプリング位置20)との相対的な位置関係を提示することが可能となる。位置関係は、検出位置の目標位置21からの誤差を含み得る。したがって、位置検出装置100は、提示する位置関係を、例えば移動機構または画像処理の設定または撮像の条件(照明、撮像の姿勢(アングル)等)等をユーザが調整をする場合に、その調整を支援する情報として提供することが可能となる。
また、本実施の形態に係る位置検出装置100においては、座標系における目標位置21からの差である位置差の評価を表す評価内容RAと、当該評価内容に対応付けて、当該位置差について推定される推定要因RBを有する予め定められた複数の要因データRi(i=1,2,3、・・・)を格納する要因格納部90と、位置格納部80に目標位置21と、関連付けられている検出位置との間の当該座標系における差を、予め定められた基準(基準データ35に対応する)で評価する評価部70とを備える。本実施の形態では、上記の座標系は、例えば、撮像によるカメラ座標系(単位:pix(ピクセル))を、関数(アフィン変換、歪み補正等)を用いて変換された実座標系(単位:mm)である。また、本実施の形態では、例えば移動機構の移動量(単位:mm)は、実座標系における移動量で表現され得る。表示データ生成部85は、評価部70による評価を表す評価内容RAに対応する要因格納部90の推定要因RBを、表示部に表示するデータを生成する。
本実施の形態では、画像格納部60、位置格納部80および要因格納部90は、例えば、後述する図3のRAM112等の記憶領域に相当するが、RAM112に限定されない。
本実施の形態に係る位置検出装置100においては、目標位置21からの検出位置(サンプリング位置20)の差を、検出の誤差として予め定められた基準で評価し得る。評価の結果は、当該誤差を引き起こすと推定される要因として、表示部で表示され得る。本実施の形態では、推定される要因は、移動機構の駆動条件、画像処理のパラメータ、または撮像の条件等を含み得る。これにより、位置検出装置100は、表示する推定要因を、例えば移動機構または画像処理の補正パラメータの設定または撮像条件等をユーザが調整するのを支援する情報として提供することが可能となる。
以下、本発明のより具体的な応用例として、本実施の形態に係る位置検出装置100のより詳細な構成および処理について説明する。
<B.位置制御システムの全体構成例>
図2は、本実施の形態に係る位置制御システム1の全体構成を示す図である。図2を参照して、位置制御システム1は、工業製品の生産ラインなどにおいて実際に運用されるときは、画像処理を用いてアライメントを行う。アライメントは、典型的には、ワークを生産ラインの本来の位置に配置する処理などを意味する。ワーク4は、位置決めのための特徴部分を有する。このようなアライメントの一例として、位置制御システム1は、ステージ2の上面に配置された対象物(ワーク4)を撮像して得られる画像データから、特徴部分に相当する部分画像である特徴画像を特定し、特定した特徴画像の位置を検出し、検出した位置データ(本実施の形態においては位置座標)に基づきステージ2を制御することでワーク4を正しい位置に配置する(位置決めする)。
図2に示すように、位置制御システム1は、位置検出装置100と、モーションコントローラ400と、ステージ2とを備える。位置検出装置100は、カメラ104が撮像した画像データを取得し、その取得した画像データに含まれる位置決めのためのマーク14の位置を検出することでワーク4の特徴部分の位置を特定する。カメラ104は、例えばCCD(Charge Coupled Device)カメラを含み得る。位置検出装置100は、特定位置に基づき、ワーク4を正しい位置に配置するための指令をモーションコントローラ400に出力する。
モーションコントローラ400は、位置検出装置100からの制御指令96に従って、ステージ2に対して指令を与えることで、ワーク4に対するアライメントを実現する。
ステージ2は、ワーク4を正しい位置に配置できる機構であればどのような自由度のものであってもよい。本実施の形態においては、ステージ2は、例えば水平方向の変位と回転の変位をワーク4に与えることができる。
<C.位置検出装置の全体構成>
図3は、本実施の形態に係る位置検出装置100のハードウェア構成を示す図である。図3に示すように、位置検出装置100は、典型的には、汎用的なコンピュータアーキテクチャに従う構造を有しており、予めインストールされたプログラムをプロセッサが実行することで、後述するような各種の処理を実現する。
より具体的には、位置検出装置100は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などのプロセッサ110と、RAM(Random Access Memory)112と、表示コントローラ114と、システムコントローラ116と、I/O(Input Output)コントローラ118と、ハードディスク120と、カメラインターフェイス122と、入力インターフェイス124と、モーションコントローラインターフェイス126と、通信インターフェイス128と、メモリカードインターフェイス130とを含む。これらの各部は、システムコントローラ116を中心として、互いにデータ通信可能に接続される。
プロセッサ110は、システムコントローラ116との間でプログラム(コード)などを交換して、これらを所定順序で実行することで、目的の演算処理を実現する。
システムコントローラ116は、プロセッサ110、RAM112、表示コントローラ114、およびI/Oコントローラ118とそれぞれバスを介して接続されており、各部との間でデータ交換などを行うとともに、位置検出装置100全体の処理を司る。
RAM112は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、ハードディスク120から読み出されたプログラム、またはカメラ104によって取得されたカメラ画像(画像データ)、画像データに関連するデータ(手入力座標など)、およびワークデータなどを保持する。
表示コントローラ114は、表示部132と接続されており、システムコントローラ116からの表示データ等の内部コマンドに従って、各種の情報を表示するための信号を表示部132に出力する。
I/Oコントローラ118は、位置検出装置100に接続される記録媒体または外部機器との間のデータ交換を制御する。より具体的には、I/Oコントローラ118は、ハードディスク120と、カメラインターフェイス122と、入力インターフェイス124と、モーションコントローラインターフェイス126と、通信インターフェイス128と、メモリカードインターフェイス130と接続される。
ハードディスク120は、典型的には、不揮発性の磁気記憶装置であり、プロセッサ110で実行されるアルゴリズムなどの制御プログラム150に加えて、各種設定値などが格納される。このハードディスク120にインストールされる制御プログラム150は、メモリカード136などに格納された状態で流通する。なお、ハードディスク120に代えて、フラッシュメモリなどの半導体記憶装置やDVD-RAM(Digital Versatile Disk Random Access Memory)などの光学記憶装置を採用してもよい。
カメラインターフェイス122は、ワークを撮像することで得られる画像データを取得し、プロセッサ110とカメラ104との間のデータ伝送を仲介する。カメラインターフェイス122は、カメラ104からの画像データをそれぞれ一時的に蓄積するための画像バッファ122aを含む。
入力インターフェイス124は、プロセッサ110とキーボード134、マウス138、タッチパネル、専用コンソールなどの入力装置との間のデータ伝送を仲介する。
モーションコントローラインターフェイス126は、プロセッサ110とモーションコントローラ400との間のデータ伝送を仲介する。
通信インターフェイス128は、プロセッサ110と図示しない他のパーソナルコンピュータやサーバ装置などとの間のデータ伝送を仲介する。通信インターフェイス128は、典型的には、イーサネット(登録商標)やUSB(Universal Serial Bus)などからなる。
メモリカードインターフェイス130は、プロセッサ110と記録媒体であるメモリカード136との間のデータ伝送を仲介する。メモリカード136には、位置検出装置100で実行される制御プログラム150などが格納された状態で流通し、メモリカードインターフェイス130は、このメモリカード136から制御プログラムを読み出す。メモリカード136は、SD(Secure Digital)などの汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)などの磁気記録媒体、またはCD-ROM(Compact Disk Read Only Memory)などの光学記録媒体などからなる。あるいは、通信インターフェイス128を介して、配信サーバなどからダウンロードしたプログラムを位置検出装置100にインストールしてもよい。
上述のようなコンピュータアーキテクチャに従う構造を有するコンピュータを利用する場合には、本実施の形態に係る機能を提供するためのアプリケーションに加えて、コンピュータの基本的な機能を提供するためのOS(Operating System)がインストールされていてもよい。この場合には、本実施の形態に係る制御プログラムは、OSの一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の順序および/またはタイミングで呼び出して処理を実行するものであってもよい。
さらに、本実施の形態に係る制御プログラム150は、他のプログラムの一部に組み込まれて提供されるものであってもよい。その場合にも、プログラム自体には、上記のような組み合わせられる他のプログラムに含まれるモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本実施の形態に係る制御プログラム150としては、このような他のプログラムに組み込まれた形態であってもよい。
なお、代替的に、制御プログラム150の実行により提供される機能の一部もしくは全部を、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)等の専用のハードウェア回路として実装してもよい。
<D.モーションコントローラの全体構成>
図4は、本実施の形態に係るモーションコントローラ400のハードウェア構成を示す図である。図4に示すように、モーションコントローラ400は、主制御ユニット210と、複数のサーボユニット240,242,244とを含む。本実施の形態に係る位置制御システム1では、ステージ2が3軸分のサーボモータ310,312,314を有する例を示し、この軸数に応じた数のサーボユニット240,242,244がモーションコントローラ400に含まれる。本実施の形態では、サーボモータ310,312,314を特に区別しない場合は、サーボモータ300と総称する。
主制御ユニット210は、モーションコントローラ400の全体制御を司る。主制御ユニット210は、内部バス226を介して、サーボユニット240,242,244と接続されており、互いにデータを遣り取りする。サーボユニット240,242,244は、主制御ユニット210からの内部指令などに従って、サーボドライバ250,252,254に対して制御コマンド(典型的には、駆動パルスなど)をそれぞれ出力する。サーボドライバ250,252,254は、接続されているサーボモータ310,312,314をそれぞれ駆動する。
主制御ユニット210は、チップセット212と、プロセッサ214と、不揮発性メモリ216と、主メモリ218と、システムクロック220と、メモリカードインターフェイス222と、通信インターフェイス228と、内部バスコントローラ230とを含む。チップセット212と他のコンポーネントとの間は、各種のバスを介してそれぞれ結合されている。
プロセッサ214およびチップセット212は、典型的には、汎用的なコンピュータアーキテクチャに従う構成を有している。すなわち、プロセッサ214は、チップセット212から内部クロックに従って順次供給される命令コードを解釈して実行する。チップセット212は、接続されている各種コンポーネントとの間で内部的なデータを遣り取りするとともに、プロセッサ214に必要な命令コードを生成する。システムクロック220は、予め定められた周期のシステムクロックを発生してプロセッサ214に提供する。チップセット212は、プロセッサ214における演算処理の実行の結果得られたデータなどをキャッシュする機能を有する。
主制御ユニット210は、不揮発性メモリ216および主メモリ218を有する。不揮発性メモリ216は、OS、システムプログラム、ユーザプログラム、データ定義情報、ログ情報などを不揮発的に保持する。主メモリ218は、揮発性の記憶表示領域であり、プロセッサ214で実行されるべき各種プログラムを保持するとともに、各種プログラムの実行時の作業用メモリとしても使用される。
主制御ユニット210は、通信手段として、通信インターフェイス228および内部バスコントローラ230を有する。これらの通信回路は、データの送信および受信を行う。
通信インターフェイス228は、位置検出装置100との間でデータを遣り取りする。内部バスコントローラ230は、内部バス226を介したデータの遣り取りを制御する。より具体的には、内部バスコントローラ230は、バッファメモリ236と、DMA(Dynamic Memory Access)制御回路232とを含む。
メモリカードインターフェイス222は、主制御ユニット210に対して着脱可能なメモリカード224とチップセット212とを接続する。
<E.カメラ座標系と実座標系の関係>
図5~図12は、本実施の形態にかかるカメラ座標系と実座標系の関係を説明する図である。本実施の形態では、図5のカメラ視野でカメラ104により撮像される画像データが規定する2次元座標系であるカメラ座標系(単位:pix(ピクセル))を、実座標系に変換する処理がなされる。
本実施の形態では、実座標系は、移動機構であるサーボモータ300の回転量(回転方向、回転角度等)により移動量(移動方向、距離等)が変化する、ステージ2(またはワーク4)が移動するXY2次元座標系(単位:mm)である。なお、本実施の形態では、実座標系とカメラ座標系は、2次元の座標軸(XY軸)で規定される仮想の座標空間であるが、3次元以上の多次元の座標軸(XYZ軸等)から規定される座標空間であってもよい。を規定する本実施の形態に係るキャリブレーションでは、撮像して取得される画像データから、画像処理部50が対象物の位置を検出することを「サンプリング」ともいい、また検出された位置(単位:pix)を「サンプリング点」ともいう。
まず、平行移動によるカメラ座標系に関して説明する。図6のようにステージ2上の基準位置にマークTMが配置された状態で、主制御ユニット210からの内部指令によりサーボモータ310,312,314が駆動されて、予め定められたステージ移動量(単位:mm)だけステージ2がX方向に平行移動すると、カメラ座標系におけるマークTMの位置は基準位置(X1,Y1)→位置(X2,Y2)と移動する(図7参照)。
同様に、予め定められたステージ移動量(単位:mm)だけステージ2をY方向に平行移動させると、カメラ座標系におけるマークTMは基準位置(X1,Y1)→位置(X3,Y3)と移動する(図8参照)。これにより、平行移動のカメラ座標系(図9参照)が生成される。
次に、図10~図11に示すような回転移動によるカメラ座標系に関して説明する。まず、図10のようにステージ2上の基準位置にマークTMが配置された状態で、主制御ユニット210からの内部指令によりサーボモータ310,312,314が駆動されて、予め定められた移動量(角度θ1、θ2)だけ、ステージ2が、水平面内で回転移動すると、カメラ座標系におけるマークTMは、基準位置(X1,Y1)→位置(XR1,YR1)→位置(XR2,YR2)と移動する(図10参照)。
画像処理部50は角度θ1,θ2および位置(X1,Y1)、(XR1,YR1)および(XR2,YR2)から、カメラ座標系における回転中心Cの座標を算出する。画像処理部50は、カメラ座標系の原点を、上記の回転中心Cに移動させる。これにより、回転中心を加味した図11の回転移動のカメラ座標系が生成される。
本実施の形態に係るカメラ座標系と実座標系の関係を図12に模式的に示す。移動機構によりステージ2(またはワーク4)が平行移動する場合は、画像処理部50は、図9のカメラ座標系においてマーク14の位置(単位:pix)を検出し、検出位置を図12の実座標系の位値(単位:mm)に変換する。これにより、実座標系におけるマーク14のサンプリング位置(単位:mm)が検出されて、実座標系においてマーク14のサンプリング位置(単位:mm)を目標位置(単位:mm)と比較することが可能になる。
また、移動機構によりステージ2(またはワーク4)が回転移動する場合は、画像処理部50は、図11のカメラ座標系においてマーク14の位置(単位:pix)を検出し、検出位置を図12の実座標系の位値(単位:mm)に変換する。これにより、実座標系におけるマーク14のサンプリング位置(単位:mm)が検出されて、実座標系においてマーク14のサンプリング位置(単位:mm)を目標位置(単位:mm)と比較することが可能になる。
本実施の形態では、画像処理部50は、図5~図12で説明したカメラ座標系を実座標系に変換するために、カメラ座標系を実座標系に写像する(すなわち、補正する)予め定められた関数、例えばアフィン変換、台形歪み補正、レンズ歪も補正等の各種の歪みを補正する関数を用いる。なお、変換に適用する補正関数はこれらに限定されない。
図12には、本実施の形態に係るパラメータテーブル121が例示される。パラメータテーブル121は、上記に述べた補正関数に用いられるパラメータを含む。パラメータテーブル121は表示部132に表示され得て、ユーザはキーボード134等を操作してパラメータテーブル121のパラメータの値を変更することでパラメータの設定パターンを切替えることができる。画像処理部50は、パラメータの設定パターンと上記の関数に従いサンプリング位置を算出する。これにより、設定パターンを変更することでサンプリング位置の検出精度を向上させることが可能となる。
<F.キャリブレーション処理と運用時の処理>
図13は、本実施の形態に係るキャリブレーション処理と、キャリブレーションを含む運用時の位置決め処理とを説明するための概略フローチャートである。図14は、図13のキャリブレーション処理を他の処理と関連づけ説明するフローチャートである。図13を参照して、本実施の形態によるキャリブレーション処理(ステップT1,T2)が実施されて、キャリブレーションが完了すると、位置制御システム1の実運用がなされる。
またキャリブレーションは、実運用の処理(ステップT3,T5)で実施されてもよい。図13または図14のフローチャートに従うプログラムは制御プログラム150に含まれ得る。
(F-1.キャリブレーション処理)
図14では、キャリブレーション処理が、キャリブレーションに関連した他の処理(評価の処理(ステップS9)、要因分析・出力の処理(ステップS15)および調整の処理(ステップS17))とともに示される。図14のキャリブレーション処理では、図5に示すようにカメラ104で、特徴量であるマーク14を有したワーク4を撮像しながら、移動機構によりワーク4のマーク14を実座標系の予め定められた複数の目標位置21にそれぞれ移動させて、各目標位置21でサンプリングを実施する。
具体的には、移動機構により目標位置21に移動したときに、カメラ104でワーク4が撮像されて(ステップS1)、画像取得部40は、撮像して得られた画像データ10を取得し、画像処理部50は、取得された画像データ10からパターンマッチング等の画像処理により特徴部分(マーク14)を特定し、特定された特徴部分のカメラ座標系における位置を検出し、検出位置を上記の写像関数とパラメータの設定パターンに従い、実座標系におけるサンプリング位置20に変換する(ステップS3)。また、位置検出装置100は、サンプリング位置20を、対応の目標位置21および特定された特徴部分(マーク14)の特徴画像22と関連付けて位置格納部80に格納するとともに、画像データ10をサンプリング位置20と関連付けて画像格納部60に格納する。これにより、ワーク4が目標位置21に移動する毎に、撮像された画像データ10と、当該画像データ10から特定された特徴画像22と、サンプリング位置20と、対応の目標位置21とは相互に関連付されて格納される。
位置検出装置100は、キャリブレーションのための予め定められた複数個のサンプリングがなされたかを判定する(ステップS5)。予め定められた複数個のサンプリングが終了していないと判定すると(ステップS5で‘収集未完了’)、位置検出装置100は、ステージ2を、次の目標位置21への移動量等の制御量を算出し(ステップS13)、モーションコントローラ400に対し、算出された移動量を含む移動指令を出力する(ステップS14)。モーションコントローラ400では、当該移動指令に従う制御コマンドにより移動機構が駆動されて、ワーク4は、次の目標位置21に移動する。その後、処理はステップS1に戻り、ステップS3以降の処理は実施される。
一方、位置検出装置100は、予め定められた複数個のサンプリングが終了していると判定すると(ステップS5で‘収集完了’)、評価部70は、位置格納部80に目標位置21と関連付けて格納されているサンプリング位置20を、基準データ35を用いて評価する評価処理を実施する(ステップS9)。この評価処理は、キャリブレーションが妥当(適切)であるか否かを評価する処理であり、詳細は後述する。
位置検出装置100は、評価処理による評価結果が「妥当(OK)」を示すか否かを判定する(ステップS11)。位置検出装置100は、「妥当」を示すと判定したとき(ステップS11でOK)、一連のキャリブレーション処理は終了し、上記に述べた運用処理が実施される。
一方、位置検出装置100は、評価処理による評価結果が妥当(OK)を示さないと判定すると(ステップS11でNG)、要因分析と出力がなされる(ステップS15)。
具体的には、ステップS15では、表示データ生成部85は、位置格納部80に格納されている各サンプリング位置20と、当該サンプリング位置20に関連付けされている目標位置21とを同じ座標空間において表示するデータを生成し、生成した表示データを、表示コントローラ114に出力する(ステップS7)。これにより、表示部132に同じ座標空間において各サンプリング位置20と、目標位置21とを関連付けされて表示する画面が出力される。
また、ステップS15では、評価部70は、要因格納部90を検索し、当該評価結果に対応する評価内容RAを含んだ要因データRiを特定する。そして、特定された要因データRiを表示データ生成部85に出力する。表示データ生成部85は、要因データRiから表示データを生成し、生成した表示データを表示コントローラ114に出力する。これにより、妥当でないキャリブレーションを引き起こしたとされる要因データRi(推定要因RBまたは対処)を、表示部132に表示することができる。
ユーザは、各部を調整する(ステップS17)。具体的には、ステップS17では、表示部132の表示内容から、すなわち各サンプリング位置20と目標位置21とが同じ座標空間において関連付けされた画面(以下、位置関連付け画面ともいう)または要因データRi(推定要因RBまたは対処方法RC)から、ユーザに対し、キャリブレーションの調整を支援するための情報を提供することができる。ユーザによる調整が実施された後に、再度、位置検出装置100によりキャリブレーションを実施させることができる。
(F-2.運用処理)
本実施の形態では、上記に述べたキャリブレーションによる調整が完了した後に、位置検出装置100のアライメントにための実運用がなされる。具体的には、図13を参照して、位置検出装置100は、ステージ2の上面に配置された対象物(ワーク4)を撮像して得られる画像データから、特徴部分に相当する部分画像である特徴画像を特定し、特定した特徴画像の位置を検出し(ステップT3)、検出した位置に基づき移動機構の制御指令を出力する。これにより、ステージ2は移動して、ワーク4を正しい位置に配置する(アライメントする)ことが可能となる。
また、本実施の形態では、図13で示すように、実際の運用環境に備えられた位置検出装置100を用いてキャリブレーションを実施することができる。すなわち、位置検出装置100は、予め画像格納部60に各目標位置21で撮像された1または複数の画像データ10を格納し、位置格納部80に各画像データ10からの検出に基づく置データ30を格納する。実運用時は、画像格納部60と位置格納部80の内容を用いて評価部70によりキャリブレーションの評価(妥当性の判断)を実施する。これにより、実運用においてキャリブレーションを実施するとしても、画像格納部60に画像データ10を格納する処理および位置格納部80に位置データ30を格納する処理、すなわち図14のステップS1、S3、S13およびS14の処理にかかる工数を省略することができる。
<G.位置関連付け画面の表示例>
図15、図16および図17は、本実施の形態に係る位置関連付け画面の一例を示す図である。図15(A)、図16および図17の関連付け画面では、それぞれ、XY2次元空間である実座標系において、各目標位置21と、位置格納部80の当該目標位置21に関連付けされたサンプリング位置20とが異なるアイコン(例えば+マークのアイコン)で示される。
また、図15(B)では、同様の実座標系において、各目標位置21において、位置格納部80の当該目標位置21に関連付けされた特徴画像22が表示される。
図15(C)の位置関連付け画面では、図15(A)とは異なり、実座標系における1軸(例えばX軸)方向の座標系において、各目標位置21と、位置格納部80の当該目標位置21に関連付けされたサンプリング位置20とが異なるアイコン(例えば+マークのアイコン)で示される。また、図15(D)の位置関連付け画面では、実座標系における1軸(例えばX軸)方向の座標系における各目標位置21と、位置格納部80の当該目標位置21に関連付けされた複数のサンプリング位置20それぞれとの差(誤差)のうち、最小差と最大差がデータ表で関連付けて示される。
図15~図17のキャリブレーションのケースでは、評価部70は、評価処理において、例えば、位置格納部80の複数のサンプリング位置20と関連付けられた目標位置21との差を算出し、算出した差を、基準データ35を用いて評価する。基準データ35は、例えば、差の閾値を含む。評価部70は、例えば、全ての目標位置21について(算出差≦差の閾値)の条件が満たされると判断したとき、評価結果として「妥当(OK)である」を出力するが、全ての目標位置21について(算出差≦差の閾値)の条件が満たされないと判断したとき、評価結果として「妥当(OK)でない」を出力する。
(G-1.繰返しサンプリングのバラツキの精度を表示する画面の例)
図18と図19は、本実施の形態に係るサンプリング位置のバラツキを表示する位置関連付け画面の一例を示す図である。ユーザは、画面のタブ180を操作することにより、各目標位置21において実施された複数回のサンプリングの結果を示す図18の位置関連付け画面を表示させることができる。
図18の位置関連付け画面は、キャリブレーションを繰返すことで、各目標位置21について複数個のサンプリング位置20を検出されている場合の画面の一例を示す。図18の画面は、サンプリングデータ表181,182およびサンプリング位置20の表示領域183を含む。
サンプリングデータ表181,182は、例えば、サンプリング結果の確認情報、サンプリング結果の比較情報および情報の視認性向上の表示態様を含む。具体的には、サンプリング結果の確認情報は、例えば、サンプリング位置20に関する全データ(位置、差値など)およびサンプリング位置20の統計値(最大値、最小値、平均値、バラツキの程度を表す標準偏差の値等)を含む。計測結果の比較情報は、例えば、目標位置21とサンプリング位置20を表形式で比較するための情報および過去のキャリブレーションによるサンプリング位置20を含む取得データと、今回のキャリブレーションによるサンプリング位置20を含む取得データとを表形式で比較するための情報を含む。
情報の視認性向上としては、例えば、サンプリングデータ表181,182において、一定値以上の計測結果(サンプリング位置20のバラツキ値、サンプリング位置20等)は、当該表の他の値とは異なる態様(例えば、強調表示など)で表示し、また、例えば、サンプリング位置20の統計値を、他とは異なる態様(例えば、強調表示など)で表示する。
また、サンプリング位置20の表示領域183は、サンプリング位置20を目標位置21と関連付けて確認するための情報、比較情報および視認性向上の表示態様を含む。例えば、2次元座標空間において目標位置21毎に、関連付けされている複数のサンプリング位置20を、散布図の態様で表示する。
このような比較情報により、目標位置21において、目標位置21とサンプリング位置20のマークを重畳表示または並べて表示することで提示される。また、過去のキャリブレーションデータと今回のキャリブレーションデータの比較表示(重畳表示または並べて表示)で提示される。
また、視認性向上の表示態様は、サンプリングデータ表181,182と同様に、一定閾値以上のサンプリング位置20またはそのバラツキ値を他とは異なる態様で表示(強調表示)し、またサンプリング位置20の統計値を他とは異なる態様で表示(強調表示)する。表示領域183では、目標位置21を中心にした円状のマークが示される。このマークの径は、上記の一定閾値に対応する。したがって、目標位置21からの差が一定閾値未満のバラツキを有するサンプリング位置20は、円内でマークされて、一定閾値以上でばらつくサンプリング位置20は円外でマークされる。したがって、ユーザに対し、各目標位置21についてサンプリング位置20のバラツキの程度を視覚的に提供することができる。
図19は、図18の位置関連付け画面の変形例を示す。図19の画面は、特徴画像22の表示領域192、サンプリング結果の表示領域191およびサンプリング位置20を拡大して表示する拡大表示領域183Aを含む。
画像の表示領域192は、例えば、実際に撮像された画像データ10または特徴画像22を表示する。これにより、サンプリング結果を確認する情報を提供する。
画像の表示領域192は、例えば、サンプリング結果を比較するための情報を表示する。例えば、表示領域192には、理想の画像データ(基準の画像データ)、過去のキャリブレーションで取得された画像データ、新しい画像データとの比較表示(重畳表示または並べて表示して、複数の画像データを比較するための情報を提供する。例えば、検出された画像(画像データ10または特徴画像22)と理想画像と比較して表示(重畳表示や並べて表示)する。
表示領域192は、目標位置21との差が最大であるサンプリング位置20に関連付けられた画像(画像データ10または特徴画像22)と、当該差が最小であるサンプリング位置20に関連付けられた画像(画像データ10または特徴画像22)とを比較可能な態様(重畳表示または並べて表示)で表示する。
また、表示領域192は、特徴画像22を、目標位置21の基準画像と関連づけてグラフィックに比較可能な態様(重畳表示または並べて表示)で表示する。目標位置21の基準画像は、基準データ35に含まれている。
サンプリング位置20の拡大表示領域183Aは、図18の表示領域183Aと同様の情報を表示する。
表示領域191は、サンプリング位置20の変化を座標空間においてグラフで表示する。例えば、目標位置21に関連付けられた各サンプリング位置20の当該目標位置21からの差を、当該複数のサンプリングの開始からの相対的な時間の経過に従う時系列の態様で表示する。例えば、サンプリング位置20または目標位置21との差等を、サンプリング順に従い時系列に表示する。または図19に示すように、表示領域191では、座標の横軸をサンプリングした時間、また一回目の計測からの相対時間を割当て、ある目標位置21に関連付けられたサンプリング位置20の目標位置21からの差(図中の破線参照)が、基準データ35が示す一定閾値(図中の実線参照)未満に収束する状況(収束に要する時間等)が視覚的に提示される。
(G-2.歪み補正の効果を表示する画面の例)
図20は、本実施の形態に係る歪み補正の効果を表示する位置関連付け画面の一例を示す図である。ユーザは、画面のタブ200を操作することにより、図20の画面を表示させることができる。
図20の画面は、サンプリングデータ表201,202および203、ならびサンプリング位置20の表示領域204,205、パラメータテーブル121等により設定されている現在の設定パターン206を含む。本実施の形態では、例えばサンプリングデータ表201のパターンNo.1~No.4の設定が可能であり、図20では、そのうち、例えばNo.3の設定パターンによるデータが表示されている。なお、設定パターン数は、この4パターンに限定されない。また、図20の画面で表示されるデータの設定パターンは、切替え可能である。
サンプリングデータ表201は、パラメータテーブル121等による補正処理の設定パターンのそれぞれに対応して、X軸方向の差の最大値および最小値を含む。サンプリングデータ表202は、サンプリングデータ表202の各設定パターンに対応して、当該設定パターンによるキャリブレーションでの、各目標位置21に関連付けてX軸方向の差を含む。サンプリングデータ表203は、サンプリングデータ表202の各設定パターンに対応して、当該設定パターンによるキャリブレーションでの、各目標位置21に関連付けてY軸方向の差を含む。なお、サンプリングデータ表201~203は、各設定パターンに関連付けて、例えばサンプリング位置20の全データ(例えば、目標位置21との差、目標位置21、サンプリング位置20等)、当該全データの統計値を含み得る。
サンプリングデータ表201,202および203では、補正の設定パターンと、補正処理後のデータ(例えば、目標位置21とサンプリング位置20)との比較、過去のサンプリング位置20と最新のサンプリング位置20の比較に関する情報を表示し得る。閾値の設定による一定値以上の差、または差の最大値または差の最小値等を他のデータとは異なる態様で表示(例えば、強調表示)する。
表示領域204では、位置関連付け画面を表示する。例えば、各目標位置21と、当該目標位置21に関連付けられているサンプリング位置20とを2次元座標空間に表示する。さらに、表示領域204は、このサンプリング位置20として、設定パラメータによる補正前後のサンプリング位置20を表示し得る。また、表示領域204では、例えば、各サンプリング位置20を確認しやすくするための補助線を表示する。
本実施の形態では、補助線は、例えば、目標位置21とサンプリング位置20との相対的な位置関係を示す線分207,208を含み得る。例えば、各目標位置21に関連付けらえているサンプリング位置20を、当該目標位置21への移動機構による移動の順番に従い結ぶ線分207を含み得る。または、補助線は、例えば、各目標位置21を移動機構による移動の順番に従い結ぶ線分208を含み得る。
また、表示領域204では、差が一定閾値以上のサンプリング位置20を他とは異なる態様で表示(強調表示)し得る。
また、表示領域204では、例えば、設定パターン毎に位置関連付け画面を表示する。具体的には、本実施の形態では、画像処理部50の画像処理は、画像データ10から特徴部分(マーク14)の位置を検出するために当該画像データ10を移動機構に移動量から補正する補正関数(アフィン変換、歪み補正等)のパラメータ(補正パラメータ)を含む。画像処理部50は、目標位置21に関連付けられたサンプリング位置20として、補正関数(および/または補正パラメータ)を適用する前後の画像処理による各サンプリング位置20を検出し得る。表示領域204では、目標位置21に関連付けられたサンプリング位置20は、補正関数(および/または補正パラメータ)を適用する前後の画像処理による各サンプリング位置20を含み得る。
また、本実施の形態では、画像処理部50が補正パラメータの異なる設定パターンを適用してサンプリング位置20を検出することができる。画像処理部50は、各設定パターンのうち、目標位置21との差(または統計値)を最小化し得るサンプリング位置20を算出するような設定パターンを特定し、特定した設定パターンにより検出されるサンプリング位置20と目標位置21との位置関連付け画面を、他の設定パターンによる位置関連付け画面とは異なる表示態様で表示(例えば、強調表示)することも可能である。
表示領域205は、表示領域204の位置関連付け画面における関連付けされた目標位置21とサンプリング位置20の組のうちから、ユーザが選択した組を拡大して表示する。このような拡大表示から、ユーザは目標位置21と、当該目標位置21におけるサンプリング位置20との検出における差の程度(例えば、設定パターンの違いによる差の程度)を詳細に確認することができる。
(G-3.サンプリングの直線性の精度を表示する画面の例)
図21は、本実施の形態に直線移動によるサンプリングによる位置関連付け画面の一例を示す図である。ユーザは、画面のタブ240を操作することにより、図21の画面を表示させることができる。図21の画面は、サンプリングデータ表241,242、サンプリング位置20の表示領域243、画像表示領域253、および拡大表示領域253を含む。
サンプリングデータ表示241,242は、サンプリング位置20の全データ(例えば、ステージ2の移動量、差(目標位置21との差)、目標位置21、サンプリング位置20、目標角度、検出角度等)を含む。検出角度は、画像処理部50が、特徴画像22の傾き角度であって、マーク14(特徴部分)の予め定められた姿勢からの傾き角度を示す。
また、サンプリングデータ表示241,242は、サンプリング位置20の全データの統計値等も含み得る。
サンプリングデータ表示241,242では、例えば、目標位置21とサンプリング位置20のデータの比較形式によるデータ表示、または、過去のキャリブレーションによるサンプリング位置20の全データと今回のキャリブレーションによるサンプリング位置20の全データの比較形式によるデータ表示を含み得る。
また、サンプリングデータ表示241,242は、一定閾値以上を示す差または当該差を有するサンプリング位置20を、他のデータとは異なる態様で表示(強調表示)し、または差の最大値または最小値を他のデータとは異なる態様で表示(強調表示)し、または一定閾値以上の差を有する目標位置21とサンプリング位置20との2点間距離を、他のデータとは異なる態様で表示(強調表示)する。
表示領域243は、2次元の座標空間において各目標位置21で、当該目標位置21のマーク256を予め定められた姿勢で表示し、当該目標位置21に関連付けされたサンプリング位置20のマーク255を、上記に述べた当該予め定められた姿勢からの傾き角度をもたせて表示する。傾き角度は、画像データ10から特定された特徴画像22の予め定められた姿勢からの傾き角度に対応する。
また、表示領域243では、目標位置21とサンプリング位置20を、マークを用いて、例えば重畳表示または並べて表示し、比較可能な態様で表示される。また、表示領域243では、過去のキャリブレーションによるサンプリング位置20のデータと、今回のキャリブレーションによるサンプリング位置20のデータを、マークを用いて、例えば重畳表示または並べて表示し、比較可能な態様で表示される。
また、表示領域243では、目標位置21における位置、角度等でサンプリングされていないサンプリング位置20のマーク14を他のマークとは異なる表示態様で表示(例えば、強調表示)する。また、差が一定閾値以上の目標位置21とサンプリング位置20の2点間距離を他の距離とは異なる表示態様で表示(例えば、強調表示)する。また、表示領域243では、各サンプリング位置20を確認しやすくするための補助線(例えば、表示領域243の破線)が表示され得る。
画像表示領域254は、サンプリング画像(実際に撮像された特徴画像22または画像データ10)または目標画像(基準となる特徴画像または画像データ)を表示する。この場合に、サンプリング画像と目標画像とを比較可能な態様で表示(重畳表示または並べて表示)され得る。また、画像表示領域254では、過去のキャリブレーションによるサンプリング画像と今回のキャリブレーションによるサンプリング画像とを比較可能な態様で表示(重畳表示または並べて表示)され得る。また、画像とグラフィック(サンプリング位置20の表示、拡大表示)とが比較可能な態様で表示(重畳表示または並べて表示)され得る。
拡大表示領域254は、目標位置21と、当該目標位置21に関連付けされたサンプリング位置20とがマークで拡大して表示する。その場合に、両方のマークは、比較可能な態様で表示(重畳表示または並べて表示)され得る。拡大表示の対象は、過去のキャリブレーションによるサンプリング位置20と、今回のキャリブレーションによるサンプリング位置20とを含み得る。また、拡大表示において、目標位置21、または目標角度等でサンプリングされていないマークは、他の距離とは異なる表示態様で表示(例えば、強調表示)する。
(G-4.回転移動時のサンプリングの精度を表示する画面の例)
図22は、本実施の形態に回転移動によるサンプリングによる位置関連付け画面の一例を示す図である。ユーザは、画面のタブ270を操作することにより、図22の画面を表示させることができる。図22の画面は、図18と同様のサンプリングデータ表181,182、サンプリング位置20の表示領域273を含む。表示領域273では、サンプリング位置20の表示(目標位置21と関連付けられたサンプリング位置20の表示)が、移動機構が回転駆動された場合の回転サンプリングのグラフィック表示に切替られ得る。
図23は、本実施の形態に回転移動によるサンプリングによる位置関連付け画面の他の例を示す図である。図23の表示画面は、図22の画面の変形例である。
図23の画面は、サンプリングデータ表181,182、および図19と同様の特徴画像22の表示領域192、サンプリング結果の表示領域191およびサンプリング位置20の拡大表示領域284を含む。拡大表示領域284は、図22の表示領域273と同様の情報を表示する。
(G-5.回転移動時の補正の効果を表示する画面の例)
図24は、本実施の形態に回転移動によるサンプリングによる位置関連付け画面の他の例を示す図である。ユーザは、画面のタブ200を操作することにより、図24の画面を表示させることができる。図24の画面は、図20と同様のサンプリングデータ表201,202および203、ならびパラメータテーブル121等により設定されている現在の設定パターン206を含む。さらに、図24の画面は、サンプリング位置20の表示領域294およびサンプリング位置20の拡大表示領域304を含む。図24は、現在の設定パターン206によってもステージ2の回転中心Cの推定が正しくなされていないケースを示す。
表示領域294では、ステージ2が回転する場合のサンプリング位置20から推定された回転中心Cと、パラメータテーブル121により設定された目標の回転中心CTとを区別可能な態様で表示(例えば、表示色または線種変更表示)するとともに、差を表示する。表示領域294では、各目標位置21を、目標中心位置(目標の回転中心CT)を円心とする円周線296の上に表示するデータ、または各目標位置21に関連付けられたサンプリング位置20を、推定中心位置(すなわち推定された回転中心C)を円心とする円周線295の上に表示するデータを含む。表示領域294では、推定回転中心Cおよび目標回転中心CTを区別可能な態様(例えば、表示色または線種を変更)で表示する。また、表示領域294では、推定回転中心Cを円心とする回転移動に伴いサンプリングされたサンプリング位置20を結ぶ円周線295と、目標回転中心Cを円心とする目標位置21を結ぶ円周線296とを、区別可能な態様(例えば、表示色または線種を変更)により表示する。
また、拡大表示領域304では、回転移動によるサンプリング位置20を拡大表示する。例えば、目標位置21を示すマークと、当該目標位置21に関連付けされているサンプリング位置20を示すマークとを区別可能な態様で表示(例えば、表示色または線種変更表示)する。
(G-6.回転移動時の補正の効果を表示する画面の他の例)
図25は、本実施の形態に回転移動によるサンプリングによる位置関連付け画面の他の例を示す図である。ユーザは、画面のタブ320を操作することにより、図25の画面を表示させることができる。図25の画面は、図21と同様のサンプリングデータ表241,242、およびサンプリング位置20の表示領域323、サンプリング位置20の拡大表示領域333および特徴の表示領域323含む。
図25では、サンプリングデータ表241,242は、さらに、サンプリング位置20全データ(例えば、サンプリング位置20、目標位置21、推定した回転中心Cの位置を含む)が含まれ得る。
表示領域323では、例えば、推定された回転中心Cと、目標中心CTの位置とをマークで表示するとともに、目標となるサンプリング円周線を表示する。拡大表示領域333および特徴の表示領域323では、それぞれ、図21の表示領域254および表示領域253と同様の情報が表示され得る。
ユーザは、図23の画面から、画像データ10のうちキャリブレーションできている部分は一部であること、ステージ2の回転中心Cの推定が適切でないこと、サンプリング結果が示す特徴部分の検出姿勢(傾き角度)が適切でない(ステージ2の回転中心Cの推定が適切でない)、サンプリングの間隔が等間隔でない、および目標位置21でサンプリングがなされていないことを判断するための支援情報を提供することが可能となる。
<H.キャリブレーションの評価>
図14のステップS9の評価部70による評価処理を説明する。本実施の形態では、評価部70は、主に目標位置21と、当該目標位置21に関連付けられたサンプリング位置20との差を、基準データ35が示す閾値と、予め定められた評価条件を用いて比較することにより、サンプリング位置20を評価する。また、評価部70は、評価処理により得られた評価に基づき要因格納部90を検索し、検索により、当該評価を示す評価内容RAに関連付けされた要因データRiを要因格納部90から読出す。
図26~図31は、本実施の形態に係る要因データRiの例を示す図である。図26~図31を参照しながら、評価処理と要因データRiについて説明する。
(H-1.特徴画像22を用いたサンプリング位置20の評価)
評価部70は、各目標位置21と、当該目標位置21に関連付けられたサンプリング位置20との差(検出差ともいう)を算出し、また、当該サンプリング位置20に関連付けされた特徴画像22とマーク14の基準画像とを照合する。なお、基準データ35は、マーク14の基準画像を有する。評価部70は、各目標位置21に関連付けられたサンプリング位置20のうち、予め定められた条件((検出差≧基準データ35の一定閾値)および(特徴画像22の照合不一致)を満たすサンプリング位置20を検出したとき、「目標位置とサンプリング位置が不一致の点が存在する」と評価する。評価部70は、上記の評価(評価内容RA)に関連付けされた要因データR1(図26)を要因格納部90から読出す。
ユーザは、要因データR1が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、推定要因RB(例えば、不一致の点で、ターゲットマーク外の背景部分を誤検出)と、当該要因に対処するための対処方法RC(サーチの設定(モデル画像または設定パラメータ等)を調整する)の情報を取得することができる。
この場合、例えば図15(A)と図15(B)の画面も表示され得る。ユーザは、図15(A)の位置関連付け画面から、カメラ視野の右上端の目標位置21においてサンプリングに失敗していることを確認することができる。また、図15(B)の画面から、当該目標位置21では、画像処理により特徴画像22ではなく背景画像を特定したことによるものであることを判断できる。
また、位置関連付け画面として、図18または図19に示す位置関連付け画面が表示されてもよい。
(H-2.サンプリング位置20の差の傾向を評価)
評価部70は、各目標位置21と、当該目標位置21に関連付けられたサンプリング位置20との検出差を算出し、予め定められた条件(検出差≧基準データ35の一定閾値)を満たすサンプリング位置20について、その検出差がX方向またはY方向に出現する傾向にあることを検出したとき、例えば「サンプリング位置のずれ量が、X方向に一定量ずつ増加する」と評価する。評価部70は、当該評価(評価内容RA)に関連付けされた要因データR2(図26)を要因格納部90から読出す。
ユーザは、要因データR2が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、推定要因RB(例えば、移動機構の駆動条件(例えば、ステージの移動量が不適切))と、当該要因に対処するための対処方法RC(例えば、ステージの制御を確認する)の情報を取得することができる。
この場合、例えば図16の位置関連付け画面が表示され得る。ユーザは、図16の画面から、カメラ視野において、目標位置21からX方向に差が生じる傾向にあることを確認することができる。また、位置関連付け画面として、図18または図19に示す位置関連付け画面が表示されてもよい。
(H-3.画像端部の目標位置21との差を評価)
評価部70は、各目標位置21と、当該目標位置21に関連付けられたサンプリング位置20との検出差を算出し、予め定められた条件(検出差≧基準データ35の一定閾値)を満たすサンプリング位置20が画像の端部で検出されると判断したとき、「画像端で目標位置とサンプリング位置が不一致の点が存在する」と評価する。評価部70は、当該評価(評価内容RA)に関連付けされた要因データR3(図26)を要因格納部90から読出す。
ユーザは、要因データR3が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、推定要因RB(例えば、撮像の条件(例えば、カメラレンズ歪みの影響))と、当該要因に対処するための対処方法RC(例えば、視野が歪まないレンズに変更する)の情報を取得することができる。
この場合、例えば図17の画面も表示され得る。ユーザは、図17の位置関連付け画面から、カメラ視野(画像)の端部の目標位置21においてサンプリングに失敗していることを確認することができる。また、位置関連付け画面として、図29に示す位置関連付け画面が表示されてもよい。
(H-4.目標位置21との差のバラツキを評価)
評価部70は、各目標位置21と、当該目標位置21に関連付けられたサンプリング位置20との検出差を算出し、予め定められた条件(検出差のバラツキ値≧基準データ35の一定閾値)を満たすと判断したとき、「サンプリングのばらつきが大きい」と評価する。評価部70は、当該評価(評価内容RA)に関連付けされた要因データR4(図27)を要因格納部90から読出す。なお、バラツキ値は、ばらつきの大きさを示す値であり、例えば評価部70は、検出差の標準偏差からバラツキ値を算出し得る。
ユーザは、要因データR4が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、要因データR4が示す推定要因RBと、当該要因に対処するための対処方法RCの情報を取得することができる。
この場合、例えば図18と図19の画面も表示され得る。ユーザは、図18と図19の位置関連付け画面から、バラツキ値を確認することができる。
(H-5.補正処理前後の目標位置21との差を評価)
本実施の形態では、カメラ座標系を実座標系に写像する関数のパラメータの設定パターンを変更しながらキャリブレーションを実施し得る。したがって、評価部70は、新たな設定パターンに変更してキャリブレーションを実施した場合の目標位置21とサンプリング位置20の検出差と、変更前の設定パターンでキャリブレーションを実施した場合の目標位置21の検出差とを、比較することができる。
具体的には、評価部70は、予め定められた条件(設定パターン変更後の検出差≧変更前の検出差)を満たすと判断したとき、「補正処理の設定をしてもサンプリングの誤差が大きい」と評価する。評価部70は、当該評価(評価内容RA)に関連付けされた要因データR5(図27)を要因格納部90から読出す。
ユーザは、要因データR5が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、要因データR5が示す推定要因RB(例えば、画像処理の設定が不適切)と、当該要因に対処するための対処方法RC(画像補正処理の設定を確認し、調整する)の情報を取得することができる。
この場合、例えば図20の位置関連付け画面も表示され得る。ユーザは、図20の位置関連付け画面から、設定パターンを変更前後の間における目標位置21とサンプリング位置20との差の変化を確認することができる。
(H-6.目標位置21との差を角度で評価)
評価部70は、サンプリング位置20に関連付けられた特徴画像22の傾きを、特徴画像22と基準データ35が有する基準画像と照合することにより検出し、検出された傾きが、予め定められた条件(傾きの大きさ≧基準データ35の一定閾値)を満たすと判断したとき、「サンプリングの姿勢(角度)が一定でない」と評価する。評価部70は、当該評価(評価内容RA)に関連付けされた要因データR6(図28)を要因格納部90から読出す。
ユーザは、要因データR6が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、要因データR6が示す推定要因RB(例えば画像処理のパラメータ(例えば回転した対象物を検出する設定が不適切(対象は回転しないが、回転する対象を検出する設定にしている等))と、対処方法RC(回転する対象の検出に関するサーチの設定を調整する)の情報を取得することができる。この場合、位置関連付け画面として、図21の画面が表示され得る。ユーザは、図21の位置関連付け画面から、傾きの大きさの程度を具体的に確認することができる。
(H-7.目標位置21との差からキャリブレーション範囲を評価)
評価部70は、各目標位置21においてサンプリングが実施されているかを、位置格納部80において各目標位置21に関連付けてサンプリング位置20が格納されているかに基づき評価する。格納されていないと判断したとき、「画像の一部でしかキャリブレーションできていない」と評価する。評価部70は、当該評価(評価内容RA)に関連付けされた要因データR7(図28)を要因格納部90から読出す。
ユーザは、要因データR7が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、要因データR7が示す推定要因RB(例えば、画像処理のパラメータ(例えば、キャリブレーション(サンプリング)範囲の設定が不適切、狭すぎる))と、当該要因に対処するための対処方法RC(例えば、キャリブレーション範囲の設定を見直し、設定を調整する)の情報を、対処方法を具体的情報RC1とともに取得することができる。
(H-8.回転移動時の目標位置21との差のバラツキを評価)
評価部70は、回転移動時に各目標位置21と、当該目標位置21に関連付けられたサンプリング位置20との検出差を算出し、予め定められた条件(検出差のバラツキ値≧基準データ35の一定閾値)を満たすと判断したとき、「サンプリングのばらつきが大きい(ステージ回転中止の推定が正しくできていない)」と評価する。評価部70は、当該評価(評価内容RA)に関連付けされた要因データR8(図29)を要因格納部90から読出す。
ユーザは、要因データR8が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、要因データR8が示す推定要因RBと、当該要因に対処するための対処方法RCの情報を取得することができる。
この場合、例えば図22と図23の位置関連付け画面も表示され得る。ユーザは、図22と図23の位置関連付け画面から、バラツキの程度を確認することができる。
(H-9.回転移動時の補正処理前後の目標位置21との差を評価)
評価部70は、回転移動時に予め定められた条件(設定パターン変更後の差≧変更前の差)を満たすと判断したとき、「補正処理の設定をしてもサンプリングの誤差が大きい」と評価する。評価部70は、当該評価(評価内容RA)に関連付けされた要因データR9(図29)を要因格納部90から読出す。
ユーザは、要因データR9が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、要因データR9が示す推定要因RB(例えば、画像補正処理の設定が不適切)と、当該要因に対処するための対処方法RC(画像補正処理の設定を確認し、調整する)の情報を取得することができる。
この場合、例えば図24の位置関連付け画面も表示され得る。ユーザは、図24の位置関連付け画面から、設定パターンを変更前後の間における目標位置21とサンプリング位置20との差の変化を確認することができる。
(H-10.回転移動時に目標位置21との差からキャリブレーション範囲を評価)
評価部70は、回転移動時に各目標位置21においてサンプリングが実施されているかを、位置格納部80において各目標位置21に関連付けてサンプリング位置20が格納されているかに基づき評価する。格納されていないと判断したとき、「画像の一部でしかキャリブレーションできていない(ステージ回転中心の推定が正しくない)」と評価する。評価部70は、当該評価(評価内容RA)に関連付けされた要因データR10(図30)を要因格納部90から読出す。
ユーザは、要因データR10が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、要因データR10が示す推定要因RB(移動機構の駆動条件または画像処理のパラメータ設定(例えば、サンプリング角度範囲の設定値が不適切))と、当該要因に対処するための対処方法RC(例えば、角度範囲の設定値が妥当であるか(特に角度範囲が小さすぎないか)確認し、設定を調整する))の情報を、対処方法の具体的情報RC1とともに取得することができる。この場合、位置関連付け画面として、図25の画面が表示され得る。
(H-11.回転移動時の目標位置21との差を角度で評価)
評価部70は、回転移動時にサンプリング位置20に関連付けられた特徴画像22の傾きを、特徴画像22と基準データ35が有する基準画像と照合することにより検出し、検出された傾きが、予め定められた条件(傾きの大きさ≧基準データ35の一定閾値)を満たすと判断したとき、「サンプリング結果の姿勢(角度)が適切でない(ステージ回転中心の推定が不適切)」と評価する。評価部70は、当該評価(評価内容RA)に関連付けされた要因データR11(図30)を要因格納部90から読出す。
ユーザは、要因データR11が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、要因データR11が示す推定要因RB(例えば、回転した対象物を検出する設定が不適切)と、対処方法RC(例えば、回転する対象の検出に関するサーチの設定を調整する)の情報を、対処方法の具体的情報RC1とともに取得することができる。
要因データR10またはR11が出力される場合、位置関連付け画面として、図25の画面が表示され得る。ユーザは、図25の位置関連付け画面から、推定されているステージ回転中心と、その誤差を視覚的に確認することができる。
(H-12.サンプリングの間隔を評価)
本実施の形態では、目標位置21が等間隔で設定されている場合、サンプリングも等間隔で実施されることが推定される。
この点に関し評価部70は、サンプリング位置20どうしの間隔と、間隔のバラツキとを算出し、予め定められた条件(ばらつきの大きさ≧基準データ35の一定閾値)を満たすと判断したとき、「サンプリングの間隔が等間隔でない(直線性)」と評価する。評価部70は、当該評価(評価内容RA)に関連付けされた要因データR12(図31)を要因格納部90から読出す。
ユーザは、要因データR12が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、要因データR12が示す推定要因RB(例えば、撮像の条件(例えば、キャリブレーション対象に対してカメラが垂直に設置されていない))と、対処方法RC(例えば、カメラの設置角度を確認、調整する)の情報を、対処方法の具体的情報RC1とともに取得することができる。ユーザは表示される要因データR12から、カメラ104の取り付け姿勢を調整する為の支援情報を取得することができる。
要因データR12が出力される場合、位置関連付け画面として、直線移動の場合は図21の位置関連付け画面が表示され得て、回転移動の場合は図25の位置関連付け画面が表示され得る。ユーザは、図21または図25の位置関連付け画面から、サンプリング位置20の間隔のバラツキを視覚的に確認することができる。
(H-13.目標位置21との差からサンプリング位置を評価)
評価部70は、各目標位置21について、関連付けされたサンプリング位置20との差を算出し、算出した差の統計値が予め定められた条件(統計値≧基準データ35の一定閾値)を満たすと判断したとき、「理想のサンプリング位置で計測できていない(直線性)」と評価する。評価部70は、当該評価(評価内容RA)に関連付けされた要因データR13(図31)を要因格納部90から読出す。
ユーザは、要因データR13が表示されることにより、キャリブレーションが「妥当でない」ことを確認するとともに、要因データR13が示す推定要因RBと、対処方法RCの情報を取得することができる。要因データR13は、推定要因RBは、例えばステージの移動機構にあるとの推定を示し、対処方法RCとして例えばステージ精度に関する調査を実施する旨の情報を示す。
要因データR13が出力される場合、位置関連付け画面として、直線移動の場合は図21の位置関連付け画面が表示され得て、回転移動の場合は図25の位置関連付け画面が表示され得る。ユーザは、図21または図25の位置関連付け画面から、各サンプリング位置20の目標位置21からの差を視覚的に確認することができる。
<I.UI(User Interface)画面の例示>
図32~図35は、本発明の実施の形態に係るキャリブレーション時に表示されるUI(User Interface)画面を例示する図である。まず、図32と図33は、各目標位置21で実施された複数回のサンプリングの結果を示す画面であり、タブ360をクリックすることにより、図32と図33の画面が表示される。
図32では、例えば、位置No.が「3」で特定される目標位置21の情報が表示されている。具体的には、位置No.「3」の目標位置21で実施された複数回のサンプリングにより得られた複数のサンプリング位置20の値が、散布図363で示されるとともに、位置No.「3」の目標位置21に関連付けされた特徴画像22の画像が示される。ユーザは、目標位置21とサンプリング位置20との差の程度を散布図363から判断することができる。また、ユーザは、ボタン362を操作すると、ウィンドウ361が表示されて、評価部70による評価に基づく要因データRiが出力される。ウィンドウ361では、例えば、散布図363から差が大きくばらついていることから、推定要因RBとして、装置の振動が推定されて、対処方法RCとしてステージ2を移動完了後はサンプリング開始までの待ち時間を長くする旨の情報が表示される。
図33では、図32の散布図363に代えて時系列グラフ371が表示される。時系列グラフ371は、目標位置21に関連付けられた各サンプリング位置20の当該目標位置21からの差を、当該複数のサンプリング位置20の検出開始からの相対的な時間の経過に従う時系列の態様で表示する。時系列グラフ371によれば、例えば、位置No.「3」で指定された目標位置21に関連付けされた複数のサンプリング位置20の値の時間経過に従う変化が示される。図33の時系列グラフ371によれば、例えば、基準データ35が示す差の一定閾値(実線)を基準に、位置No.「3」の目標位置21でのサンプリング位置20(破線)は、キャリブレーション開始(複数のサンプリング位置20の検出開始)から比較的早い時期に妥当な値に収束していることが示される。これにより、ユーザは、サンプリングにおいて装置の振動の影響が及んでいないことを確認することができる。
次に、図34と図35は、カメラ104が適切な撮像条件で設置されていること、または移動機構の駆動条件が適切であることを確認するためのUI画面を示す。
図34を参照して、散布図391により、各目標位置21に関連付けて、当該目標位置21に関連付けられたサンプリング位置20のバラツキが示される。また、図35では、計測値グラフ411が示される、計測値グラフ411では、各目標位置21と関連付けられたサンプリング位置20との差の、複数のサンプリング位置20の検出開始からの相対的な時間の経過による変化が示される。ユーザは、散布図391または計測値グラフ411から、各目標位置21における当該目標位置21とサンプリング位置20との差の程度、または差の時系列の変化を確認することができる。これにより、撮像条件または移動機構の動きの適否を判断することができる。
<K.変形例>
上記の実施の形態は、例えば、次のように変形することも可能である。例えば、ファイル出力機能に関して、キャリブレーションで収集したデータ(例えば、画像データ10、位置データ30、評価部70による各種統計情報、表示データ等)を外部の機器にファイル出力することができる。
また、ファイル読み込み機能に関して、上記の出力したファイルを外部のコントローラに読み込むことで、コントローラでデータ表示を再現することができる。
また、データ表示する画面から、データ生成をしているユニット(例えば、サンプリング実行するサーチユニットやキャリブレーションデータを生成している画像マスタキャリブレーション)の設定画面を起動でき、起動した画面から設定パターンなどの変更をすることが可能である。また、変更した設定パターンでキャリブレーションを実施して、新たな結果を確認することができる。また、起動した画面から、上記の設定パターンを除く他のキャリブレーションパラメータを更新することが可能である。新たな設定パターンまたはキャリブレーションパラメータによるキャリブレーションの結果が、理想的なデータを示さない場合、以前のデータに戻すこともできる。
また、本実施の形態では、画像データ10が3次元の画像データを示す場合であっても、上記と同等のキャリブレーションを実施することが可能である。また、この3次元の画像データは、単一のカメラ(例えば、3D(three-dimensional)カメラ)により撮像された画像データまたは複数カメラが撮像した画像データからの合成画像データのいずれも適用することが可能である。
また、位置検出装置100によるキャリブレーションにおいては、位置検出装置100を稼働させながら、キャリブレーションの結果(例えば、位置関連付け画面または評価部70による評価の結果等)を収集し、表示部132に表示するとしてもよく、位置検出装置100を稼働させず、キャリブレーションの結果を表示するとしてもよい。例えば、各目標位置21に移動しながら撮像された画像データ10を画像格納部60に蓄積しておき、その後は、画像格納部60の各目標位置21に関連付けされた画像データ10について、サンプリング位置20を検出する画像処理、評価処理および表示データによる出力を実施してもよい。
<L.付記>
上述したような本実施の形態は、以下のような技術思想を含む。
[構成1]
位置決め用の特徴部分(14)が設けられた対象物(4)の位置を変更する移動機構(300)により、前記特徴部分が複数の目標位置(21)のそれぞれに位置決めされるとき、対象物を撮像して取得される画像データ(10)を格納する画像格納部(60)と、画像データから、画像処理により当該画像データに含まれる特徴部分の位置を検出する画像処理部(50)と、各目標位置に位置決めされた対象物の画像データから、画像処理部により検出される検出位置を当該目標位置と関連づけて格納する位置格納部(80)と、検出位置に関する情報を、表示部(132)に表示するデータを生成する表示データ生成部(85)と、を備え、表示データ生成部は、各目標位置と、当該目標位置に関連付けて格納されている各検出位置を同じ座標空間(図15、図16、図17)において表示するデータを生成する。
[構成2]
前記対象物は、前記移動機構により前記各目標位置に複数回移動し、
前記位置格納手段に、前記各目標位置に関連付けて格納されている前記検出位置は、当該目標位置に複数回移動することにより撮像されて取得された前記画像データから検出される複数の検出位置を含む、構成1に記載の位置検出装置。
[構成3]
前記座標空間は、多次元の座標軸を有し、
前記表示データ生成手段は、
前記多次元の座標軸うちの少なくとも1つの座標軸(X軸、またはY軸)上において前記目標位置と、当該目標位置に関連付けられている前記検出位置とを表示するデータを生成する、構成2に記載の位置検出装置。
[構成4]
前記表示するデータは、
前記目標位置毎に、関連付けされている前記複数の検出位置を、前記座標空間において散布図(183)の態様で表示するデータを含む、構成2または3に記載の位置検出装置。
[構成5]
前記表示するデータは、
前記目標位置毎に、関連付けされている前記複数の検出位置を、当該複数の検出位置の検出開始からの相対的な時間の経過に従う時系列の態様で表示するデータ(191)を含む、構成3または4に記載の位置検出装置。
[構成6]
前記表示するデータは、
前記各目標位置と、当該目標位置に関連付けられた前記検出位置の相対的な位置関係を示すための線分(207;208)を表示するデータを含む、構成1から5のいずれか1に記載の位置検出装置。
[構成7]
前記相対的な位置関係を示す線分は、前記各目標位置に関連付けされている前記検出位置を、当該目標位置への前記移動機構による移動の順番に従い結ぶ線分(207)を表示するデータ、または前記各目標位置を前記移動機構による移動の順番に従い結ぶ線分(208)を表示するデータを含む、構成1から6のいずれか1に記載の位置検出装置。
[構成8]
前記移動は、予め定められた目標中心位置(CT)を円心に回転する回転移動を含み、
前記目標位置は、前記目標中心位置を含み、
前記検出位置は、前記各目標位置に関連付けられた前記各検出位置から推定される前記回転の推定中心位置(C)を含む、構成1から7のいずれか1に記載の位置検出装置。
[構成9]
前記表示するデータは、さらに、
前記各目標位置を、前記目標中心位置を円心とする円周線(296)上で表示するデータ、または前記各目標位置に関連付けられた前記検出位置を、前記推定中心位置を円心とする円周線(295)上で表示するデータを含む、構成8に記載の位置検出装置。
[構成10]
前記表示するデータは、
関連付けられた前記目標位置からの差が閾値を超える前記検出位置を、予め定められた態様で表示するデータを含む、構成1から9のいずれか1に記載の位置検出装置。
[構成11]
前記画像処理手段は、前記特徴部分の画像から、当該特徴部分の予め定められた姿勢からの傾き角度を検出し、
前記表示するデータは、前記目標位置に関連付けられた前記検出位置を、前記傾き角度を示すマーク(255)で表示するデータを含む、構成1から9のいずれか1に記載の位置検出装置。
[構成12]
前記対象物は、前記移動機構により前記各目標位置に複数回移動し、
前記位置格納手段に、前記各目標位置に関連付けて格納されている前記検出位置は、当該目標位置に複数回移動することにより撮像されて取得された前記画像データから検出される複数の検出位置を含み、
前記表示データ生成手段は、さらに、
前記各目標位置に関連付けて、当該目標位置の前記複数の検出位置の統計値を表示するデータを生成する、構成1から11のいずれか1に記載の位置検出装置。
[構成13]
前記統計値は、少なくとも、前記複数の検出位置と関連付けられた前記目標位置との差の最大値、最小値および平均値の1つを含む、構成12に記載の位置検出装置。
[構成14]
前記表示データ生成手段は、さらに、
前記目標位置に関連付けられた各前記複数の検出位置の当該目標位置からの差を、当該複数の検出位置の検出開始からの相対的な時間の経過に従う時系列の態様で表示するデータ(191)を生成する、構成12または13に記載の位置検出装置。
[構成15]
前記表示データ生成手段は、
前記目標位置に関連付けられた各前記複数の検出位置の当該目標位置からの差を、予め定められた差の閾値と関連付けて、当該複数の検出位置の検出開始からの相対的な時間の経過に従う時系列の態様で表示するデータ(191)を生成する、構成12から14のいずれか1に記載の位置検出装置。
[構成16]
前記表示データ生成手段は、さらに、
前記検出位置が検出された前記特徴部分の画像データを表示するデータ(192)を生成する手段を含む、構成1から15のいずれか1に記載の位置検出装置。
[構成17]
前記表示データ生成手段は、さらに、
前記目標位置と当該目標位置に関連付けられた前記検出位置を拡大して表示する手段(205)を含む、構成1から16のいずれか1に記載の位置検出装置。
[構成18]
前記画像処理は、前記画像データから前記特徴部分の位置を検出するために当該画像データを前記移動機構の移動量から補正する補正パラメータを含み、
前記目標位置に関連付けられた前記検出位置は、前記補正パラメータを適用する前後の画像処理による各検出位置を含む、構成1から17のいずれか1に記載の位置検出装置。[構成19]
位置決め用の特徴部分が設けられた対象物(4)の位置を変更する移動機構(300)により、前記特徴部分(14)が複数の目標位置のそれぞれに位置決めされるとき、前記対象物を撮像して取得される画像データ(10)を格納する画像格納手段(60)と、
前記画像データから、画像処理により当該画像データに含まれる前記特徴部分の位置を検出する画像処理手段(50)と、
各前記目標位置に位置決めされた前記対象物の前記画像データから、前記画像処理手段により検出される検出位置を当該目標位置と関連づけて格納する位置格納手段(80)と、
座標系における前記目標位置からの位置差の評価を表す評価内容(RA)と、当該評価内容に対応付けて、当該位置差について推定される推定要因(RB)を有する予め定められた複数の要因データ(Ri)を格納する要因格納手段(90)と、
前記位置格納手段に前記目標位置と、関連付けられている前記検出位置との間の前記座標系における差である検出差を、予め定められた基準(35)で評価する評価手段(70)と、
前記評価に関する情報を表示部に表示するデータを生成する表示データ生成手段(85)と、を備え、
前記表示データ生成手段は、
前記評価手段による評価を表す前記評価内容に対応する前記要因格納手段の前記推定要因を表示するデータを生成する、位置検出装置。
[構成20]
前記要因格納手段は、前記推定要因に対応付けて、当該推定要因に対処するための対処方法(RC)を格納し、
前記表示データ生成手段は、さらに、
前記推定要因に対応する前記対処方法を表示するデータを生成する、構成19に記載の位置検出装置。
[構成21]
前記対象物は、前記移動機構により前記各目標位置に複数回移動し、
前記位置格納手段に、前記各目標位置に関連付けて格納されている前記検出位置は、当該目標位置に複数回移動することにより撮像されて取得された前記画像データから検出される複数の検出位置を含む、構成19に記載の位置検出装置。
[構成22]
前記検出差は、
前記位置格納手段に前記目標位置と、関連付けられている前記複数の検出位置それぞれとの間の前記差の統計値を含む、構成21に記載の位置検出装置。
[構成23]
前記統計値は、
前記複数の検出位置それぞれとの間の前記差の平均値、最大値、最小値およびバラツキを示す値の少なくとも1つを含む、構成22に記載の位置検出装置。
[構成24]
前記推定要因は、前記移動機構の駆動条件、前記画像処理のパラメータ、または撮像の条件のうちの少なくとも1つを含み得る、構成19から23のいずれか1に記載の位置検出装置。
[構成25]
前記表示データ生成手段は、
前記各目標位置と、当該目標位置に関連付けて格納されている各前記検出位置を、同じ座標空間(図15、図16、図17)において表示するデータを生成する、構成19から24のいずれか1に記載の位置検出装置。
[構成26]
位置検出方法をコンピュータ(110)に実行させるためのプログラムであって、
前記位置検出方法は、
位置決め用の特徴部分(14)が設けられた対象物(4)の位置を変更する移動機構(300)により、前記特徴部分が複数の目標位置(21)のそれぞれに位置決めされるとき、前記対象物を撮像して取得される画像データ(10)から、画像処理により当該画像データに含まれる前記特徴部分の位置を検出するステップ(S3)と、
各前記目標位置に位置決めされた前記対象物の前記画像データから、前記画像処理により検出される検出位置(20)を当該目標位置と関連づけて格納するステップと、
前記検出位置に関する情報を、表示部(132)に表示するデータを生成するステップ(S15)と、を備え、
前記表示するデータを生成するステップでは、
前記各目標位置と、当該目標位置に関連付けて格納されている各前記検出位置を同じ座標空間において表示するデータ(図15、図16、図17)を生成する、プログラム。
[構成27]
位置検出方法をコンピュータ(110)に実行させるためのプログラムであって、
前記コンピュータは、座標系における目標位置からの位置差の評価を表す評価内容(RA)と、当該評価内容に対応付けて、当該位置差について推定される推定要因(RB)を有する予め定められた複数の要因データ(Ri)を格納する要因格納部(90)を有し、
前記位置検出方法は、
位置決め用の特徴部分が設けられた対象物の位置を変更する移動機構(300)により、前記特徴部分が複数の目標位置のそれぞれに位置決めされるとき、前記対象物を撮像して取得される画像データ(10)から、画像処理により当該画像データに含まれる前記特徴部分の位置を検出するステップ(S3)と、
各前記目標位置に位置決めされた前記対象物の前記画像データから、前記画像処理手段により検出される検出位置(20)を当該目標位置と関連づけて格納するステップと、
格納されている前記目標位置と、関連付けられている前記検出位置との間の前記座標系における差である検出差を、予め定められた基準で評価するステップ(S9)と、
前記評価に関する情報を表示部(132)に表示するデータを生成するステップ(S15)と、を備え、
前記表示するデータを生成するステップでは、
前記要因格納部における、前記評価するステップにおける評価を表す前記評価内容に対応する前記推定要因を表示するデータを生成する、プログラム。
<M.利点>
従来技術において、位置決め装置の稼働中または立上げ中に、位置決めの要求精度を満たさない場合に、ユーザが要因を追及するとき、位置決め有識者のノウハウが必要であり、また時間がかかっていた。
これに対して、本実施の形態においては、キャリブレーションにおいて、各目標位置21に移動したワーク4等を撮像して得られる画像データ10から検出されるサンプリング位置20を、当該目標位置21と関連づけて格納し、この格納されている各サンプリング位置20と、当該サンプリング位置20に関連付けされている目標位置21とを同じ座標空間において表示するデータが生成されるため、このような表示情報は上記の要因を特定するための支援情報となり得る。これにより、上記の要因の追及にかかる時間が短縮され得る。
また、評価部70は、位置格納部80に関連付けて格納されているサンプリング位置20と目標位置21との差を予め定められた基準データ35で評価し、この評価により当該差を引き起こす要因が推定されて、推定要因の表示データが生成される。これにより、上記の要因を追及する際の支援情報として推定要因を提示することが可能となり、最終的な要因の特定が容易となり得る。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。