(57)【特許請求の範囲】
【請求項１】
計測対象物の像を撮像して得られた画像情報を用いて前記計測対象物の形状を計測する画像計測装置であって、
前記画像情報を記憶するメモリと；
前記画像情報に対応する画像を表示画面上に表示する画像表示装置と；
前記表示画面上に表示された画像に対して計測箇所の近傍の点の指示を入力するための点入力手段と；
前記メモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいて、前記点入力手段により指示された点の近傍に存在する前記対象物の像のエッジ上の複数点の内所定の条件を満たすエッジ上の点の座標であるエッジ座標を検出する第１のエッジ検出手段と；
前記エッジ座標が検出された前記エッジ上の点を基準点として含む所定範囲内に前記指示された点と前記基準点とを結ぶ方向の複数ラインを設定し、該複数ラインの前記基準点を含むライン以外の少なくとも２ラインについて、各ライン毎に前記メモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいてエッジ上の点の座標を検出する第２のエッジ検出手段と；
前記第１、第２のエッジ検出手段により検出された相互に近接する少なくとも３点のエッジ上の点の座標に基づき前記３点が属するエッジ要素の種類を認識することにより、前記計測対象物の少なくとも一部の形状を認識する形状認識手段とを有する画像計測装置。
【請求項２】
任意の幾何形状の指示を入力するための計測条件入力手段と、前記計測条件入力手段により指示された幾何形状を求める計測処理をする計測手段とを更に有し、該計測手段は、前記形状認識手段により認識された形状の中から前記指示に対応する幾何形状のパラメータを求めることを特徴とする請求項１に記載の画像計測装置。
【請求項３】
計測対象物の像を撮像して得られた画像情報を用いて前記計測対象物の形状を計測する画像計測装置であって、
前記画像情報を記憶するメモリと；
前記画像情報に対応する画像を表示画面上に表示する画像表示装置と；
前記表示画面上に表示された画像に対して計測箇所の近傍の点の指示を入力するための点入力手段と；
前記メモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいて、前記点入力手段により指示された点の近傍に存在する前記対象物の像のエッジ上の複数点の内所定の条件を満たすエッジ上の点の座標であるエッジ座標を検出する第１のエッジ検出手段と；
前記エッジ座標が検出された前記エッジ上の点を基準点として含む所定範囲内に前記指示された点と前記基準点とを結ぶ方向の複数ラインを設定し、該複数ラインの前記基準点を含むライン以外の少なくとも２ラインについて、各ライン毎に前記メモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいてエッジ上の点の座標を検出する第２のエッジ検出手段とを備え、
前記第２のエッジ検出手段は、前記基準点のエッジ座標及びこれに近接する少なくとも２点のエッジ上の座標に基づき直線要素を認識し、該直線要素と、前記基準点を含む前記指示された点と前記基準点とを結ぶ方向のライン上に存在する画素の階調変化とに基づいて前記直線要素の法線ベクトルを求める機能をも更に有することを特徴とする画像計測装置。
【請求項４】
前記第１のエッジ検出手段は、前記点入力手段により指示された指示点を中心とする放射状の複数のサーチ方向のライン上に存在する画素の位置情報と階調情報とに基づいて複数のエッジ上の点を検出し、これらの点の内の前記指示点との距離が最短の点の座標をエッジ座標として検出することを特徴とする請求項１〜３のいずれか一項に記載の画像計測装置。
【請求項５】
前記第１のエッジ検出手段は、点入力手段により指示された点を中心とする所定の矩形範囲内に行方向及び列方向の複数ラインを設定し、前記行方向及び列方向のそれぞれについて、前記指示された点を含むラインと、該ライン以外の少なくとも２ラインについて、各ライン毎に前記メモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいてエッジ上の点の座標を検出し、これらの点の内の前記指示された点との距離が最短の点の座標をエッジ座標とする請求項１〜３のいずれか一項に記載の画像計測装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像計測装置に係り、更に詳しくは対象物の画像情報から対象物の輪郭上の複数点を検出し、これに基づいて形状認識やその他の計測処理を行う画像計測装置に関する。
【０００２】
【従来の技術】
工業や医療の分野で用いられる画像計測装置では、撮像して得た対象物の画像をディスプレイの表示画面に表示するだけでなく、対象物の画像情報から対象物の輪郭上の複数点を抽出し、それに基づいて計測処理を行うようになっている。特に、画像情報から対象物の輪郭即ちエッジを検出するエッジ検出処理は、画像から長さ、面積測定等の様々な計測処理を行う前提となるので、これらの処理に先立って行う必要がある。
【０００３】
エッジ検出用の計測処理プログラムの一つに、キャリパーツールと呼ばれる計測処理プログラムがある。このキャリパーツールでは、対象物の画像のエッジ（輪郭）の一部の上にエッジ検出の対象となる所定の小さな範囲を設定すると共に、その範囲にあるエッジ上の点の座標を自動的に検出するようになっている。
【０００４】
【発明が解決しようとする課題】
しかしながら、上述したキャリパーツールによる測定では、オペレータが画面上に表示されるエッジ検出の対象範囲、位置及び方向を示すエッジ位置検出領域のマーク（目印）であるキャリパを、マウスでつかみ対象物の画像のうち測定したい箇所に移動し、エッジの方向に応じてキャリパの傾き（方向）をその都度マウスで指示することにより、エッジ検出の対象となる上記所定の範囲を画像のエッジ上に設定する必要があった。このため、キャリパをマウスでつかむ動作や測定箇所への移動、エッジの方向に応じてキャリパの方向を変える操作が必要不可欠となり、操作が煩わしくなる原因となっていた。
【０００５】
本発明は、かかる事情の下になされたもので、その目的はより簡単な操作でエッジ検出を行うことができる画像計測装置を提供することにある。
【０００６】
【課題を解決するための手段】
請求項１に記載の発明は、計測対象物（１０）の像を撮像して得られた画像情報（５１Ｂ）を用いて前記計測対象物（１０）の形状を計測する画像計測装置であって、前記画像情報を記憶するメモリ（４１Ｄ）と；前記画像情報に対応する画像を表示画面上に表示する画像表示装置（４３）と；前記表示画面上に表示された画像に対して計測箇所の近傍の点の指示を入力するための点入力手段（４２ｂ、５３Ｂ）と；前記メモリ（４１Ｄ）内の画像情報（５１Ｂ）に含まれる各画素の位置情報と階調情報とに基づいて、前記点入力手段（４２ｂ、５３Ｂ）により指示された点の近傍に存在する前記対象物（１０）の像（１０’）のエッジ上の複数点の内所定の条件を満たすエッジ上の点の座標であるエッジ座標を検出する第１のエッジ検出手段（５３Ｄ1 ）と；前記エッジ座標が検出された前記エッジ上の点を基準点として含む所定範囲内に前記指示された点と前記基準点とを結ぶ方向の複数ラインを設定し、該複数ラインの前記基準点を含むライン以外の少なくとも２ラインについて、各ライン毎に前記メモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいてエッジ上の点の座標を検出する第２のエッジ検出手段（５３Ｄ2 ）と；前記第１、第２のエッジ検出手段により検出された相互に近接する少なくとも３点のエッジ上の点の座標に基づき前記３点が属するエッジ要素の種類を認識することにより、前記計測対象物の少なくとも一部の形状を認識する形状認識手段（５３Ｆ）とを有する。
【０００７】
これによれば、メモリに記憶された画像情報に対応する画像が画像表示装置の表示画面上に表示された状態で、その画像に対して点入力手段により計測箇所の近傍の点の指示が入力されると、第１のエッジ検出手段によりメモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいて、点入力手段により指示された点の近傍に存在する対象物の像のエッジ上の複数点の内最近傍に存在するエッジ上の点の座標であるエッジ座標が検出される。次いで、第２のエッジ検出手段により、エッジ座標が検出されたエッジ上の点を基準点として含む所定範囲内に指示された点と基準点とを結ぶ方向の複数ラインが設定され、該複数ラインの前記基準点を含むライン以外の少なくとも２ラインについて、各ライン毎にメモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいてエッジ上の点の座標が検出される。そして、形状認識手段により、第１、第２のエッジ検出手段により検出された相互に近接する少なくとも３点のエッジ上の点の座標に基づき前記３点が属するエッジ要素の種類を認識することにより、計測対象物の少なくとも一部の形状が認識される。従って、計測箇所を指示する点の入力という簡単な操作のみで、計測対象物のエッジ検出及び形状認識を行うことができる。
【０００８】
請求項２に記載の発明は、請求項１に記載の画像計測装置において、任意の幾何形状の指示を入力するための計測条件入力手段（４２ｂ、４２ａ、５３Ｂ）と、前記計測条件入力手段により指示された幾何形状を求める計測処理をする計測手段（５３Ｈ）とを更に有し、該計測手段（５３Ｈ）は、前記形状認識手段（５３Ｆ）により認識された形状の中から前記指示に対応する幾何形状のパラメータを求めることを特徴とする。
【０００９】
これによれば、計測条件入力手段により任意の幾何形状の指示を入力すると、計測手段により、形状認識手段により認識された形状の中から指示に対応する幾何形状のパラメータが求められる。従って、任意の幾何形状の指示を入力するという簡単な操作で、その幾何形状の計測の結果を得ることができる。
【００１０】
請求項３に記載の発明は、計測対象物（１０）の像を撮像して得られた画像情報（５１Ｂ）を用いて前記計測対象物（１０）の形状を計測する画像計測装置であって、前記画像情報を記憶するメモリ（４１Ｄ）と；前記画像情報に対応する画像を表示画面上に表示する画像表示装置（４３）と；前記表示画面上に表示された画像に対して計測箇所の近傍の点の指示を入力するための点入力手段（４２ｂ、５３Ｂ）と；前記メモリ（４１Ｄ）内の画像情報（５１Ｂ）に含まれる各画素の位置情報と階調情報とに基づいて、前記点入力手段（４２ｂ、５３Ｂ）により指示された点の近傍に存在する前記対象物（１０）の像（１０’）のエッジ上の複数点の内所定の条件を満たすエッジ上の点の座標であるエッジ座標を検出する第１のエッジ検出手段（５３Ｄ1 ）と；前記エッジ座標が検出された前記エッジ上の点を基準点として含む所定範囲内に前記指示された点と前記基準点とを結ぶ方向の複数ラインを設定し、該複数ラインの前記基準点を含むライン以外の少なくとも２ラインについて、各ライン毎に前記メモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいてエッジ上の点の座標を検出する第２のエッジ検出手段（５３Ｄ2 ）とを備え、前記第２のエッジ検出手段（５３Ｄ2 ）は、前記基準点のエッジ座標及びこれに近接する少なくとも２点のエッジ上の座標に基づき直線要素を認識し、該直線要素と、基準点を含む前記指示された点と前記基準点とを結ぶ方向のライン上に存在する画素の階調変化とに基づいて前記直線要素の法線ベクトルを求める機能をも更に有することを特徴とする。
【００１１】
これによれば、メモリに記憶された画像情報に対応する画像が画像表示装置の表示画面上に表示された状態で、その画像に対して点入力手段により計測箇所の近傍の点の指示が入力されると、第１のエッジ検出手段によりメモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいて、点入力手段により指示された点の近傍に存在する対象物の像のエッジ上の複数点の内最近傍に存在するエッジ上の点の座標であるエッジ座標が検出される。次いで、第２のエッジ検出手段により、エッジ座標が検出されたエッジ上の点を基準点として含む所定範囲内に指示された点と基準点とを結ぶ方向の複数ラインが設定され、該複数ラインの前記基準点を含むライン以外の少なくとも２ラインについて、各ライン毎にメモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいてエッジ上の点の座標が検出される。また、この場合、基準点を含むエッジが直線、曲線のいずれであっても、第２のエッジ検出手段（５３Ｄ2 ）により、基準点のエッジ座標及びこれに近接する少なくとも２点のエッジ上の座標に基づき直線要素（最小２乗近似による要素）を認識し、かつ該直線要素と基準点を含む前記指示された点と前記基準点とを結ぶ方向のライン上に存在する画素の階調変化（これにより直線要素の法線ベクトルの概略方向がわかる）とに基づいて前記直線要素の法線ベクトルを確実に求めることができる。
【００１２】
上記請求項１〜３に記載の各発明において、第１のエッジ検出手段は、メモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいて、指示された点の最近傍に存在するエッジ上の点の座標であるエッジ座標を検出するものであれば、その検出方法は如何なる方法であっても良く、例えば、請求項４に記載の発明の如く、前記第１のエッジ検出手段（５３Ｄ1 ）は、前記点入力手段により指示された指示点を中心とする放射状の複数のサーチ方向のライン上に存在する画素の位置情報と階調情報とに基づいて複数のエッジ上の点を検出し、これらの点の内の前記指示点との距離が最短の点の座標をエッジ座標として検出しても良い。かかる場合には、指示点を中心とする放射状の複数のサーチ方向のライン上に存在する画素の位置情報と階調情報とに基づいて複数のエッジ上の点を検出し、これらの点の内の前記指示点との距離が最短の点の座標をエッジ座標として検出するので、例えば、指示点を中心とする同心円の半径を徐々に大きくしてエッジ座標を計測する場合等に比べ、エッジ検出に用いられる画素の数が少なくなり、迅速なエッジ検出が可能になる。この場合、サーチ方向を増やすことにより、より精度良く指示点の最近傍に存在するエッジ上の点の座標を検出できるようになる。
【００１３】
あるいは、請求項５に記載の発明の如く、前記第１のエッジ検出手段（５３Ｄ1 ）は、点入力手段により指示された点を中心とする所定の矩形範囲（Ｒ）内に行方向及び列方向の複数ラインを設定し、前記行方向及び列方向のそれぞれについて、前記指示された点を含むラインと、該ライン以外の少なくとも２ラインについて、各ライン毎に前記メモリ内の画像情報に含まれる各画素の位置情報と階調情報とに基づいてエッジ上の点の座標を検出し、これらの点の内の前記指示された点との距離が最短の点の座標をエッジ座標とするようにしても良い。
【００１９】
【発明の実施の形態】
以下、本発明の一実施形態を図１ないし図１２に基づいて説明する。
【００２０】
図１には、一実施形態に係る画像計測装置の全体構成が概略的に示されている。この図１の画像計測装置は、計測対象物（以下、「対象物」という）１０の像を撮像して得られた画像情報である画像データを用いて対象物１０の形状等を計測する装置であり、撮像ユニット２０と、光源ユニット６０と、インターフェイスユニット３０と、ホストコンピュータ４０とを備えている。
【００２１】
前記撮像ユニット２０は、対象物１０（例えば、機械部品や半導体チップや液晶ディスプレイパネル、生物・生体試料など）を撮像するための構成部分である。この撮像ユニット２０は、対象物１０を載置してベース２１上を２次元移動可能なＸＹステージ２２と、ＸＹステージ２２の上方に配置され、ベース２１上に植設された支柱２３に固定された光学系ユニット２４とを備えている。
【００２２】
これをさらに詳述すると、ＸＹステージ２２は、ベース２１上をＹ方向（図１における紙面直交方向）に移動するＹステージ２２Ｙと、このＹステージ２２Ｙ上をＹ方向に直交するＸ方向（図１における紙面内左右方向）に移動可能なＸステージ２２Ｘとを備えている。この内、Ｘステージ２２Ｘ上に対象物１０が載置されている。Ｙステージ２２Ｙ、Ｘステージ２２Ｘは、後述するインターフェイスユニット３０内の制御部３１によって制御される不図示のリニアアクチュエータを含む駆動系により駆動されるようになっている。また、Ｙステージ２２Ｙ、Ｘステージ２２Ｘの位置は、不図示のレーザ干渉計あるいはエンコーダ等の位置検出装置によって計測されるようになっており、この位置検出装置の出力信号が制御部３１及びこれを介してホストコンピュータ４０に送出されるようになっている。
【００２３】
光学系ユニット２４内には、対象物１０の像を結像面に結像させる対物レンズ等の光学系２５、光学系２５の結像面に配置されたＣＣＤカメラ２６、落射照明用光学系２７等が収容されている。ＣＣＤカメラ２６は、光学系２５によって結像面に結像された対象物１０の像を撮像して撮像信号（電気信号）を後述するインターフェイスユニット３０内の撮像制御部３２に出力する。このＣＣＤカメラ２６は、ホストコンピュータ４０からの制御信号（コマンド）に基づき後述するインターフェイスユニット３０内の撮像制御部３２によって撮像可能状態、撮像停止状態などが制御される。なお、対象物１０の撮像装置としては、ＣＣＤカメラの他、撮像管を用いても良く、あるいは非常に大きな画素数の撮像をする場合は１次元撮像素子（いわゆるラインセンサ）を用いることも可能である。後者のラインセンサを用いる場合には、ＸＹステージ２２を移動させ、対象物１０とラインセンサとを相対移動させながら順次対象物の画像を１ラインづつ読み取るようにして撮像を行う必要がある。
【００２４】
また、撮像ユニット２０では、ベース２１の内部に透過照明用光学系２８が設けられている。そして、後述する光源ユニット６０内の不図示の光源からの光によって対象物１０が前記落射照明用光学系２７を介して図１の上方から落射照明、又は透過照明用光学系２８を介して下方からの透過照明で照明され、光学系ユニット２４内の光学系２５によって結像面に対象物１０の像が結像されるようになっている。
【００２５】
前記光源ユニット６０は、光ファイバなどを介して撮像ユニット２０に落射又は透過の照明光を出力するものであり、光源を含み光量が調節可能な調光装置とこの調光装置からの光を前記光ファイバに導くための光学系とを有する。また、落射照明、透過照明の選択及びこれらの光の光量の調整は後述するインターフェイスユニット３０内部の制御部３１によって制御されるようになっている。
【００２６】
インターフェイスユニット３０は、制御部３１、撮像制御部３２を含んで構成されている。制御部３１は、ホストコンピュータ４０からの制御信号を受けてＸＹステージ２２のリニアアクチュエータを制御してＸＹステージ２２を移動させたり、落射照明、透過照明を選択したり、光源ユニット６０から出力される光の光量を制御するための構成部分であり、マイクロプロセッサとそのファームウェアで構成される。
【００２７】
撮像制御部３２は、前述の如く、ホストコンピュータ４０からの制御信号（コマンド）に基づきＣＣＤカメラ２６の撮像可能状態、撮像停止状態を制御したり、ＣＣＤカメラ２６からの撮像信号を、白黒２５６階調でＡ／Ｄ変換して画像データ（１画素について１バイト）としてホストコンピュータ４０に出力する。
【００２８】
前記ホストコンピュータ（以下、適宜「コンピュータ」という）４０は、本実施形態ではマウスなどのポインティングデバイスによる操作が可能な所定のオペレーティングシステムで動作するパーソナルコンピュータを用いて構成され、コンピュータ本体４１に入力デバイスであるキーボード４２ａ，マウス４２ｂと画像表示装置としてのディスプレイ４３とを接続した構成になっている。
【００２９】
コンピュータ本体４１は、マイクロプロセッサ４１Ｂ、メモリ４１Ｄ、キーボード４２ａ，マウス４２ｂを接続するためのキーボードインターフェイス（キーボードコントローラ）４１Ｈ、ディスプレイ４３を接続するためのビデオインターフェイス４１Ｊ、シリアルインターフェイス４１Ｌ、ハードディスク４１Ｐ及び画像入力ボード４１Ｒを有している。
【００３０】
マイクロプロセッサ４１Ｂはハードディスク４１Ｐに格納された制御プログラムをメモリ４１Ｄにロードしてプログラムを起動させることによって、シリアルインターフェイス（ＲＳ２３２Ｃ）４１Ｌを介してインターフェイスユニット３０の制御部３１に制御信号を送ってＸＹステージ２２のリニアアクチュエータの制御、光学系２５の倍率制御、光量制御等を行うようになっており、これらの設定はハードディスク４１Ｐに記憶できるようになっている。また、マイクロプロセッサ４１Ｂは、画像入力ボード４１Ｒ及び撮像制御部３２を介してＣＣＤカメラ２６の撮像の制御を行うとともに、ＣＣＤカメラ２６からの撮像信号が撮像制御部３２でＡ／Ｄ変換されて得られる画像データ５１Ｂをメモリ４１Ｄに転送し予め用意している配列を用いて各画素の画像データを配列要素として記憶するようになっている。従って、メモリ４１Ｄ内には、各画素の２５６階調の階調情報と位置情報（配列の情報）とを含む画像情報としての画像データが記憶されることになる。
【００３１】
前記ハードディスク４１Ｐには、エッジ（輪郭）検出、ピッチ測定など測定対象物１０の画像データに対して様々な画像処理・計測処理を行う様々なプログラムが格納されており、マイクロプロセッサ４１Ｂではこれらのプログラムをメモリ４１Ｄにロードしてプログラムを起動させることによって画像処理・計測処理を行うようになっている。
【００３２】
また、マイクロプロセッサ４１Ｂは、ビデオインターフェイス４１Ｈに制御コマンドを送るとともに、メモリ４１Ｄ内の画像データ５１Ｂや画像処理・計測処理の結果の情報をビデオインターフェイス４１Ｊを介してディスプレイ４３に転送して対象物１０の画像や画像処理・計測処理の結果をディスプレイ４３の表示画面の所定の領域（ウィンドウ）に表示する。
【００３３】
図１には、メモリ４１Ｄに、画像データ５１Ｂが記憶されるとともに、計測条件入力のためのプログラム５３Ｂ、エッジ検出のためのプログラム５３Ｄ、形状認識のためのプログラム５３Ｆ、計測のためのプログラム５３Ｈ、マーク位置移動のためのプログラム５３Ｊ及びオペレーティングシステム５３Ｌがロードされた状態が示されている。エッジ検出のためのプログラム５３Ｄは、詳細を後述する第１のエッジ検出プログラム５３Ｄ1 と第２のエッジ検出プログラム５３Ｄ2 と第３のエッジ検出プログラム５３Ｄ3 とを含んでいる。上記各プログラムは、それぞれを一つの実行モジュール（あるいは実行ファイル）で構成することが勿論できるが、任意の複数を一つの実行モジュールで構成したり、全てを単一の実行モジュールで構成することも可能である。どのような構成にするかは、オペレーティングシステム、開発言語等に基づいて決定すれば良い。なお、オペレーティングシステム５３Ｌに表示管理機能、入出力管理機能等の管理機能がある場合、各プログラムはこの機能を呼び出して表示、入出力等を行う。
【００３４】
上記各プログラムを用いて様々な処理を行う点が本実施形態の特徴であるので、以下、これらのプログラムについて簡単に説明する。
【００３５】
計測条件入力のためのプログラム５３Ｂは、ディスプレイ４３の表示画面上に計測条件のメニュー（タスクバーやツールバー、ツールボックスなどで表示される）及びメモリ４１Ｄ内の画像データ５１Ｂの画像が表示された状態において、マウス４２ｂ（又はキーボード４２ａ）の操作によりマウスカーソル（又はグラフィックカーソル、カーソル）の位置を検出することによって、光学系２５の倍率、透過照明／落射照明の選択、照明光量の調整等の計測条件やディスプレイ４３の表示画面に表示された画像上に対して計測箇所の指示やエッジ検出処理、幾何形状の計測処理の指示その他の計測条件を入力するためのプログラムである。本実施形態では、上記のマウス４２ｂ（及びキーボード４２ａ）及び計測条件入力のためのプログラム５３Ｂによって、点入力手段及び計測条件入力手段が実現されている。
【００３６】
第１のエッジ検出プログラム５３Ｄ1 は、ディスプレイ４３の表示画面上に表示された計測条件のメニューの内のエッジ検出処理を指示することにより起動し、キーボード４２ａ、マウス４２ｂ等の入力デバイスにより点（測定開始点）の指示とともに第１の検出モード又は第２の検出モードの選択がなされ、それらの指示、選択内容が計測条件入力のためのプログラム５３Ｂで入力された場合に、前記モードの選択に応じてそれぞれ次のような処理を実行するプログラムである。すなわち、このプログラム５３Ｄ1 は、第１の検出モード、すなわちベクトルサーチのモードが選択された場合に、その指示された点の近傍に存在するエッジ上の点の内、所定の条件を満たす点、例えば最近傍に存在するエッジ上の点（対象物１０の画像の輪郭上の１点：以下、適宜「エッジ点」、「エッジ位置」あるいは「エッジの位置」という）の座標を後述するベクトルサーチによりメモリ４１Ｄ内の対象物１０の画像データ５１Ｂ（この画像データには、各画素についての２５６階調の階調情報と位置情報とが含まれる）に基づいて検出し、また、第２の検出モード、すなわちエリアサーチのモードが選択された場合に、その指示された点を中心とする所定の範囲内について後述するエリアサーチを行い、その所定の範囲内の対象物１０の画像データに基づいて前記指示された点の最近傍に存在するエッジ点の座標を検出するプログラムである。前記所定の条件は、最近傍の他、最もシャープなエッジ上、明から暗に変化するエッジ上、暗から明に変化するエッジ上、マニュアル指定されたエッジ上等の条件とすることができる。
【００３７】
このプログラム５３Ｄ1 では第１の検出モードの場合、指示された指示点を中心とする複数の検出方向の直線を用いてエッジを検出し、指示点の最近傍のエッジ点の座標をエッジ座標として検出する（ベクトルサーチを行う）。また、第２の検出モードの場合、前記指示された点を中心とする所定範囲内で検出して見つかったエッジ点の内、その範囲内の指示された点の最近傍のエッジ点の座標をエッジ座標とするようにしてエッジの検出を行う。また、本実施形態の場合、このエッジの検出の際に、画像データ５１Ｂの各画素の階調情報を微分することにより、エッジ点を検出するか、画像データ５１Ｂの各画素を白黒２値化してエッジ点を検出するかの設定が可能になっている。
【００３８】
第２のエッジ検出プログラム５３Ｄ2 は、第１のエッジ検出プログラム５３Ｄ1 の終了によって起動する。このプログラム５３Ｄ2 では前記検出モード及び設定がいずれの場合でも、メモリ４１Ｄ内の画像データが示す各画素の位置情報と階調情報とに基づいてエッジ座標が検出されたエッジ点を基準点とし、この基準点を含む所定範囲内に指示された点と基準点とを結ぶ方向の複数ラインを設定し、各ライン毎にエッジ上の点を求め、求めた点の中から各ライン毎に基準点に最短な点の座標を求めることにより近接する複数のエッジ点の座標を検出するようになっている。また、このプログラム５３Ｄ2 は、前記検出した複数のエッジ点の座標に基づき直線要素を認識し、該直線要素と基準点を含む方向のライン上に存在する画素の階調変化とに基づいて前記直線要素の法線ベクトルを求め、前記法線ベクトルと同一の方向を向いたキャリパ（エッジ検出の対象範囲、位置、方向を示すマーク）を前記基準点の位置に設定するようになっている。第３のエッジ検出プログラム５３Ｄ3 は、第２のエッジ検出プログラム５３Ｄ2 の終了によって起動する。このプログラム５３Ｄ3 は、前記設定されたキャリパの範囲内に含まれる画素の階調変化に基づいてエッジ点を検出しその点の座標を求める。
【００３９】
なお、前記プログラム５３Ｄ1 、５３Ｄ2 、５３Ｄ3 が検出するエッジ点は、計測条件入力のためのプログラム５３Ｂによって設定されるエッジ検出処理条件によって、計測目的に最適のエッジ上から検出することができるようになっている。これについての詳細は後述する。
【００４０】
本実施形態ではこのエッジ検出のためのプログラム５３Ｄに含まれる第１のエッジ検出プログラム５３Ｄ1 によって第１のエッジ検出手段が実現され、第２のエッジ検出プログラム５３Ｄ2 によって第２のエッジ検出手段が実現されている。
【００４１】
前記形状認識のためのプログラム５３Ｆは、エッジ検出のためのプログラム５３Ｄで検出された近接する少なくとも３点のエッジ点の座標に基づいて前記３点が属するエッジ要素の種類を認識することにより、計測対象物１０の少なくとも一部の形状を認識するプログラムであり、これによって形状認識手段が実現される。本実施形態では、このプログラム５３Ｆは、認識した対象物１０の形状を直線、円又は円弧といった幾何学的に表現できる図形（以下、これを「幾何形状」という）に要素分割し、この要素分割した形状の情報を各図形のコードや位置情報などを含むファイルにしてメモリ４１Ｄ及びハードディスク４１Ｐに記憶する機能をも有している。かかる機能の設定は、ディスプレイ４３の表示画面上に表示された計測条件のメニュー（タスクバーやツールバー、ツールボックスなどで表示される）をマウス４２ｂにより選択することにより計測条件入力のためのプログラム５３Ｂによって行われる。上記のように、認識した対象物１０の形状を要素分割し、その要素分割した形状の情報にしておくことで、データ量が減少するだけでなく、対象物１０がＣＡＤ又はＣＡＭなどにより設計・製作されている場合、計算機上で設計値と比較し誤差を算出するのが容易且つ迅速になる。
【００４２】
計測のためのプログラム５３Ｈは、マウス４２ｂで表示画面上のメニューからある幾何形状が選択され、その幾何形状の指示が計測条件入力のためのプログラム５３Ｂによって入力された際に、形状認識のためのプログラム５３Ｆによって認識された対象物１０の形状の中からその指示に対応する幾何形状のパラメータの計測を実行するプログラムである。幾何形状として、例えば、直線、線分、円、多角形等があり、計測内容としては長さ、距離、角度、面積等がある。計測結果は、ディスプレイ４３の表示画面の所定の領域（ウィンドウ内のボックス）に表示されるようになっている。
【００４３】
また、このプログラム５３Ｈは、後述するように、マーク位置移動のためのプログラム５３Ｊでマウス４２ｂ等によりキャリパを移動させるのに伴って、第２のエッジ検出プログラム５３Ｄ2 及び、第３のエッジ検出プログラム５３Ｄ3 を子プロセスとしてプログラム５３Ｄ2 でキャリパを設定すると共に、プログラム５３Ｄ3 によってそのキャリパで示されたエッジ検出の対象範囲内のエッジ点の座標をリアルタイムで検出し、そのエッジ座標をディスプレイ４３の表示画面の所定の領域（ウィンドウ内のボックス）に表示する機能をも有する。さらに、このプログラム５３Ｈは、マーク位置移動のためのプログラム５３Ｊと並行して動作し、キャリパで示されたエッジ検出の対象範囲内で検出された複数のエッジ点相互間の距離をリアルタイムで算出してディスプレイ４３の表示画面の所定の領域（ウィンドウ内のボックス）に表示する。本実施形態では、このプログラム５３Ｈによって任意の幾何形状の計測を実行する計測手段及びリアルタイム検出手段が実現されている。
【００４４】
マーク位置移動のためのプログラム５３Ｊは、画面上に表示されるエッジ検出の対象範囲、位置及び方向を示すマークであるキャリパを、マウス４２ｂ等で指示された所望の位置に移動させるためのプログラムであり、本実施形態ではマウス４２ｂとプログラム５３Ｊとによってマーク位置移動手段が実現されている。
【００４５】
上記の各プログラム５３Ｄ、５３Ｆ、５３Ｈ、５３Ｊによってそれぞれ実行されるエッジ検出及び法線ベクトル検出、形状認識、幾何形状の計測、キャリパの移動、リアルタイム検出・表示等の各処理の内容については、後に更に詳述する。
【００４６】
次に、上記のようにして構成された本実施形態に係る画像計測装置の動作について説明する。
【００４７】
まず、対象物１０をＸＹステージ２２上に置いて、コンピュータ４０の入力デバイスを操作し、対象物１０の撮像のため照明条件等の設定後、撮像開始の設定をする。この撮像開始の設定により、コンピュータ４０からの制御信号に基づき撮像制御部３２によりＣＣＤカメラ２６は撮像可能状態に設定される。ＣＣＤカメラ２６によりその撮像範囲内にある対象物１０の像が撮像され、その画像信号が撮像制御部３２によりＡ／Ｄ変換され画像データとしてホストコンピュータ４０に出力され、コンピュータ本体４１のマイクロプロセッサ４１Ｂにより前述の如くしてメモリ４１Ｄに記憶される。そして、マイクロプロセッサ４１Ｂによりビデオインターフェイス４１Ｊを介してメモリ４１Ｄ内の画像データ５１Ｂによる対象物１０の画像がディスプレイ４３の表示画面の所定の領域（ウインドウ）に表示される。
【００４８】
オペレータは、ディスプレイ４３に表示された画像データ５１Ｂによる対象物１０の像を見ながら、マウス４２ｂ等によりディスプレイ４３に表示された計測条件のメニューのうちのエッジ検出処理及びその検出モード（第１の検出モード又は第２の検出モード）の選択、並びに点（表示画面上に表示された対象物１０の画像の輪郭近傍の点（計測開始点））の指示等の計測条件の入力操作を行う。これにより、計測条件入力のためのプログラム５３Ｂによって上記の計測条件が入力される。この計測条件の入力により、エッジ検出のためのプログラム５３Ｄ、計測のためのプログラム５３Ｈ及びマーク位置移動のためのプログラム５３Ｊが起動する。そして、エッジ検出のためのプログラム５３Ｄによってエッジ検出が開始される。
【００４９】
（ベクトルサーチの設定の場合）
前記エッジ検出は、まず第１のエッジ検出プログラム５３Ｄ1 によるエッジ検出が行われる。図２は、第１の検出モード、すなわちべクトルサーチのサーチ方向のラインを例示した図である。この図２において、中心の点Ｐがマウス４２ｂによって指示された点である。
【００５０】
サーチ方向は方向１から１２までの１２方向あり、直線１−７，２−８，３−９，４−１０，５−１１，６−１２の６つの直線の方向を順次正方向負方向の順でエッジ検出を行う。例えば、直線１−７の検出をする場合、第１のエッジ検出プログラム５３Ｄ1 ではマウス４２ｂ等により指示した点Ｐを基準として方向１のライン上に位置する点（画素）の画像データを順次メモリ４１Ｄから読み出し、その画像データが示す輝度（階調）とその微分値（輝度（階調）の変化率）を計算する。この場合、輝度の微分値に極大点又は極小点があればその点の位置をエッジ点とする。次いで、方向７についてもその方向のライン上に位置する点（画素）の画像データが示す輝度（階調）とその微分値（輝度（階調）の変化率）を計算し、エッジ点をサーチする。そして、直線２−８、……、６−１２についても上記と同様にして順次エッジ検出を行う。
【００５１】
今、図２の方向４の方向にエッジがあるものとして説明を進める。図３（ａ）は後述するようにキャリパＳが設定された状態を示す図であるが、以下、便宜上この図及び同図（ｂ）、（ｃ）に基づいて、上記のエッジ位置の検出の原理について更に詳述する。図２の方向４の直線が、図３（ａ）の３ラインに相当する。
【００５２】
図２の方向４のサーチ即ち、図３（ａ）の３ラインに沿ってサーチが行われると、同図（ｂ）のような画像データの示す輝度の変化、（ｃ）のような輝度の微分値の変化が検出される。この場合、図３（ｂ）から明らかなように、対象物１０（その像１０’）があると輝度が大きくなるという変化を示し、その輝度の微分値は、輝度が暗から明に変化するとき極大点Ｍを示し、その逆の明から暗に変化するときは極小点Ｍ’を示している。この場合、マウス４２ｂ等により指示した点Ｐ（図３（ａ）の左側にある）には極大点Ｍが近くにありこのＭの座標をエッジ座標として検出する。
【００５３】
このようにして、各サーチ方向について求めたエッジ位置の座標について、マウス４２ｂ等により指示した点の座標までの距離をそれぞれ計算する。そして、この距離が最も短い点、すなわちマウス４２ｂ等により指示した点の最近傍に存在するエッジ点の座標をエッジ座標として検出する。これにより、グレイスケールで高精度にエッジの位置が求められる。
【００５４】
上述のようにして、マウス等で指示された点の最近傍に存在するエッジ点の座標であるエッジ座標が求まると、第２のエッジ検出プログラム５３Ｄ2 が起動する。プログラム５３Ｄ2 は前記エッジ点を中心とするエッジ検出の対象となる所定の小さな長方形状の範囲（エッジ位置検出領域）を設定する。上記の「エッジ位置検出領域」が画像上のどの範囲、どの位置及び方向にあるかを示すマーク（目印）が、キャリパであり、その一方の辺の長さであるサーチ長と他方の辺の長さであるプロジェクション長は、計測条件入力のためのプログラム５３Ｂにおいて設定可能であり、予め設定された値が用いられる。また、上記の「エッジ位置検出領域」の設定と同時に、計測のためのプログラム５３Ｈによりそれに対応するキャリパＳがディスプレイ４３の表示画面上に表示される。キャリパとエッジ位置検出領域とは１対１に対応しているので、以下適宜エッジ位置検出領域をもキャリパという。このときのキャリパＳの角度は、上記の検出されたエッジ座標に対応する点が求められたサーチ方向に一致している。
【００５５】
上記のようにして、キャリパＳ及びそのキャリパＳで表示されるエッジ位置検出領域の設定が終了すると、第２のエッジ検出プログラム５３Ｄ2 は、次のようにして法線ベクトルの算出処理を行う。
【００５６】
ここでは、図３（ａ）に示されるように、図２の４の方向にエッジ点Ｍが検出され、該エッジ点Ｍを中心としてキャリパＳが設定された場合を採り上げて説明する。なお、図３（ａ）に示したキャリパＳの場合、左右方向の長さがサーチ長であり、上下方向がプロジェクション長である。第２のエッジ検出プログラム５３Ｄ2 は、サーチ長の方向に設定したライン上にある画素の輝度の微分値に基づいてエッジ点を検出する。前記サーチ長の方向に設定するラインは複数とすることができ、プロジェクション長が、ラインの数に対応している。
【００５７】
この場合、図３（ａ）の３ライン目のサーチ結果である図３（ｂ）、（ｃ）の輝度の変化、輝度の微分値の変化から明らかなように、エッジ点Ｍにおけるエッジの法線ベクトルの概略的な方向は方向４になる。ここで、エッジの法線ベクトルの方向は、エッジの明方向に向かうものと定義している。
【００５８】
図３（ａ）中にキャリパＳで示される領域内の１、２、４、５の各ラインについて、前述したエッジ座標Ｍの検出の際と同様の各画素の画像データの階調（輝度）及び階調の微分値（変化率）の変化に基づくエッジ位置検出を行う。これにより、図３（ｂ）、（ｃ）の３ラインの場合と同様の１、２、４、５の各ラインについての輝度の変化と輝度の微分値の変化を示すデータが得られ、エッジの位置ｍ１，ｍ２，ｍ４，ｍ５、ｍ１’、ｍ２’、ｍ４’、ｍ５’の座標が求められる。そして、各ラインについて、原点（基準点）Ｍに最短なエッジ点の座標を検出することにより、エッジ点ｍ１，ｍ２，ｍ４，ｍ５の座標が求められる。これらのエッジ点は、マウス４２ｂ等により指示した点Ｐ近傍における対象物１０の画像１０’の輪郭の微小部分であり、求めたエッジ点ｍ１，ｍ２，ｍ４，ｍ５及びＭの座標から最小２乗直線などを計算し、この最小２乗直線の傾きを求めることによりエッジ点Ｍにおける正しい法線ベクトルＶの方向が求められる。法線ベクトルを求める際に隣接する（又は連続する）エッジ位置の座標を用いているので、その処理は速くなる。上記のようにして、エッジ点Ｍにおける法線ベクトルが求まると、その向きに合わせてキャリパＳが点Ｍを中心に表示画面上で回転移動され、正しい法線ベクトルと同一方向に設定され、ディスプレイ４３の表示画面上に表示される。
【００５９】
以上の処理が終了すると、第３のエッジ検出プログラム５３Ｄ3 が起動する。プログラム５３Ｄ3 は、前記設定されたキャリパＳの範囲内に相当する画像データをメモリ４１Ｄから読み出し、その画像データが示す輝度（階調）とその微分値を計算し、微分値の極大点又は極小点をエッジ点として検出し、その点の座標値を求め、エッジ座標データ５１Ｄとしてメモリ４１Ｄに記憶する（図１参照）。エッジの法線方向に設定されたキャリパＳによってエッジ点が検出されるので、高精度にエッジ点の座標を求めることができる。この場合、計測対象物の形状、表面状態によっては、複数の極大点、極小点が検出されるので、プログラム５３Ｄ3 は、計測目的に最適のエッジ上の点を選択する機能も備えている。
【００６０】
図１２（ａ）にそのような計測対象物６０の平面図を、図１２（ｂ）に前記計測対象物の画像データが示す輝度（階調）の微分値を示す。計測対象物６０は、その左右の端部の斜面部６１、６１’と、長孔６２とを有する。図１２（ａ）において、符号６１ａ、６１ｂ、６１ａ’、６１ｂ’は夫々前記斜面の端部である。符号６２ａ、６２ｂは、夫々長孔６２の側面である。符号６３は表面の傷（溝）である。点Ｍは第１のエッジ検出プログラム５３Ｄ1 が検出した基準点、ベクトルＶは第２のエッジ検出プログラム５３Ｄ2 が検出したベクトル、破線で示したＳは第２のエッジ検出プログラム５３Ｄ2 が設定したキャリパである。図１２（ｂ）に示す微分値は、前記斜面６１、６１’の端部、長孔６２の側面、傷６３の位置で極大値、又は極小値を示している。図１２（ｂ）の各極大値、極小値には夫々図１２（ａ）の対応する位置の符号を付してある。これらの位置は、いずれもエッジである。
【００６１】
計測条件入力のためのプログラム５３Ｂでは、第３のエッジ検出プログラム５３Ｄ3 が検出するエッジ点を計測目的に応じて、これらの極大値、極小値の位置から選択する条件を設定することができるようになっている。
【００６２】
例えば、▲１▼キャリパＳの最も点Ｍ側端部（又はその反対側端部側）にあるエッジ点、即ち６１ａ（６１ａ’）を検出する。▲２▼キャリパＳの点Ｍ側端部（又はその反対側端部）からＮ番目にあるエッジ点、即ち、Ｎ＝２であれば６１ｂ（６１ｂ’）を検出する。▲３▼微分値が正（又は負）であるエッジ点、即ち６１ｂ、６３、６２ａ、６１ａ’（６１ａ、６３、６２ｂ、６１ｂ’）を検出する。これは、像が明から暗（暗から明）に変化するエッジ点である。▲４▼微分値が所定の値以上のエッジ点のみ検出する。これによって、コントラストが小さい、微少な傷のエッジ点、例えば６３を検出しないようにすることができる。▲５▼微分値が最大（又は最小）（即ちコントラスト最大）であるエッジ点を検出する。▲６▼前記▲１▼〜▲５▼の組み合わせを設定することができる。
【００６３】
なお、このような検出するエッジ点の選択は、第１のエッジ検出プログラム５３Ｄ1 、第２のエッジ検出プログラム５３Ｄ2 におけるエッジ点の検出についても適用することができるようになっている。
【００６４】
次に、エッジ検出モードとして第２の検出モード（以下「エリアサーチ」という）が選択された場合を説明する。
【００６５】
（エリアサーチの設定の場合）
この場合も、まず、第１のエッジ検出プログラム５３Ｄ1 によるエッジ検出が行われる。
【００６６】
エリアサーチの場合、第１のエッジ検出プログラム５３Ｄ1 は、まず、計測条件入力のためのプログラム５３Ｂでマウス４２ｂ等により指示した点を中心として、所定面積のサーチエリアを設定する。このサーチエリアがディスプレイ４３の画面上に表示される。
【００６７】
図４は、このサーチエリアＲの一例を示したものであり、マウス４２ｂ等により指示した点はこのサーチエリアＲの中心点Ｐになっている。
【００６８】
第１のエッジ検出プログラム５３Ｄ1 はサーチエリアＲ内に行方向と列方向の細かなエリア（表示画面上のピクセルの幅の１ラインのエリアに相当）を設定し、それぞれの細分化された細長いエリア（以下、適宜「細分化エリア」という）について、対象物１０の画像１０’のエッジ点を検出する。
【００６９】
この場合、最初に点Ｐを含む行方向の直線（基準線）Ｌの細分化エリアについて上記のエッジ点の検出が行われる。ここで、このエッジ点の検出は、行方向及び列方向の何れの方向の場合も必ずしも全てのラインの細分化エリアについて行う必要はなく、予め設定された数のピクセルおきに行うようにしても良い。行方向について、２ピクセルおきに検出対象細分化エリアを設定した場合、エッジ検出を行う行方向の細分化エリアは、図４の斜線部のように示される。
【００７０】
図５は、このエリアサーチによるエッジ検出の様子を概念的に示した図であり、図５（ａ）のように、まずサーチエリアＲの基準線Ｌ上のエッジ検出が行われる。このときの処理は、ベクトルサーチの場合の検出と同様であり、対象物の画像１０’に対して点Ｐから基準線Ｌ上に位置する点（画素）の画像データを順次メモリ４１Ｄから読み出し、その画像データで示される輝度とその微分値を計算し、輝度の微分値の極大点又は極小点からエッジの位置（エッジ点）ｍ１０を検出する。同様にして、他の行方向の細分化エリアについてもエッジ点ｍ１１、ｍ１２、ｍ１４、ｍ１５の検出が行われる。次いで、図５（ｂ）のように、サーチエリアＲの列方向にエッジ検出を行いエッジ点ｍ２０、ｍ２１を検出する。
【００７１】
こうして得られた各エッジ点と点Ｐとの距離をそれぞれ計算し、最も小さな値になる（即ち点Ｐに対して最短距離にある）エッジ点を見つけ、その点の座標をエッジ座標として検出する。
【００７２】
上述のようにして、マウス４２ｂで指示された点Ｐの最近傍に存在するエッジ点の座標であるエッジ座標が求まると、第２のエッジ検出プログラム５３Ｄ2 が起動する。プログラム５３Ｄ2 は、前記エッジ点を中心としてエッジ位置検出領域を設定するとともに、計測のためのプログラム５３Ｈによりそれに対応する前記領域の範囲、位置及び方向を示すマークであるキャリパＳをディスプレイ４３の表示画面上に表示する。この時のキャリパＳの角度は、次のようにして求める。
【００７３】
点Ｐに対して最短距離にある、上で求めたエッジ点の座標（エッジ座標）Ｍ（ｘ，ｙ）と点Ｐの座標Ｐ（ｘ，ｙ）から
ベクトルＶ（ｘ，ｙ）＝Ｍ（ｘ，ｙ）−Ｐ（ｘ，ｙ）  ………（１）
となるベクトルＶを求め、このベクトルＶの傾きを求め、それをキャリパの角度とする。すなわち、キャリパの角度Ｕは、
角度Ｕ＝ＡＲＣＴＡＮ（Ｖｘ／Ｖｙ）    （Ｖｙ≠０）………（２）
エッジ検出のためのプログラム５３Ｄにより、上記のようにしてベクトルＶの角度が算出されると、エッジ座標ＭをキャリパＳの中心位置、ベクトルＶの角度をその傾きとしてキャリパＳがディスプレイ４３の表示画面上に表示される。図６は、その表示例を示したものである。
【００７４】
この場合、上記のエリアサーチは必ずしもサーチエリアＲ内の行方向、列方向の全てのラインの細分化エリアについて行われているとは限らない（図６の場合、行方向について２ピクセルおきに行われている）ので、上記のベクトルＶの方向がエッジ点Ｍにおけるエッジの法線方向に一致しているとは限らない。
【００７５】
上記のようにしてキャリパＳが表示されると、前述したベクトルサーチの場合と同様にして、キャリパＳで示されるエッジ位置検出領域内のキャリパＳの向きと同方向の各ラインについて、各画素の画像データの階調（輝度）及び階調の微分値（変化率）の変化に基づくエッジ位置検出が行われ、各ラインについて点Ｍに最短なエッジ点の座標が求められ、求めたエッジ点の座標及び点Ｍの座標から最小２乗直線に基づいてエッジ点Ｍにおける正しい法線ベクトルの方向が求められる。そして、その法線ベクトルの向きに合わせてキャリパＳが点Ｍを中心に表示画面上で回転移動され、正しい法線ベクトルと同一方向で表示される。
【００７６】
以上の処理が終了すると、第３のエッジ検出プログラム５３Ｄ3 が起動し、ベクトルサーチの場合と同様にしてエッジ点が検出され、その座標が高精度に求められる。
【００７７】
ところで、エッジの検出の際に、画像データ５１Ｂの各画素の階調情報を微分することによりエッジ点を検出する設定でなく、画像データ５１Ｂの各画素を白黒２値化してエッジ点を検出する設定がなされている場合には、第１のエッジ検出プログラム５３Ｄ1 では、まず、サーチエリアＲ内の画素の画像データを２値化する。図７は、その２値化を例示したものであり、サーチエリアＲのうち対象物の画像１０’があるところは「１」、ないところは「０」になる。そして、「１」になっている点（画素）のそれぞれとマウス４２ｂで指示された点Ｐとの距離を計算し、その距離が最短となる点の座標をエッジ座標として検出する。そして、第２のエッジ検出プログラム５３Ｄ2 では、各ラインの「１」の画素の内、点Ｐとの距離が最短な画素の座標に基づいて最小２乗直線を求め、エッジ座標に対応する点の概略的な法線ベクトルを求めるようにしても良い。このようにすれば、前述した各画素の階調情報を微分（変化率）するエリアサーチの場合に比べ、より高速に演算しエッジを検出することができる。
【００７８】
いずれにしても、これまでに説明したエッジサーチ（ベクトルサーチ、エリアサーチ）により、マウス４２ｂにより指示した点最近傍のエッジ座標と、そのエッジ座標に対応する点におけるエッジの法線ベクトルが求められ、その法線ベクトルの向きに合わせて、上記エッジ座標の点を中心としてキャリパが設定され画面上に表示され、そのキャリパに基づいて再度エッジ点の座標が求められる。このようにすることによってどのような形状のエッジであっても、必ずエッジの法線方向にキャリパを設定することが可能となり、測定の再現性が向上する。
【００７９】
なお、エッジサーチの範囲は大きくないので、サーチされる部分が直線以外の例えば円弧であっても、前述した直線近似に基づいて求めた法線ベクトルは、エッジ点Ｍの正しい法線ベクトルとほぼ一致するものである。サーチされる部分の形状についての情報を与え、その形状に対応する最小２乗曲線を求め、該曲線上の検出点Ｍにおける法線ベクトルを求めるようにしても良い。
【００８０】
次に、形状認識のためのプログラム５３Ｆの詳細を説明する。前記第３のエッジ検出プログラム５３Ｄ3 と同時に、又はこれに代えて形状認識のためのプログラム５３Ｆが起動し、対象物１０の少なくとも一部の形状の形状認識が行えるようになっている。ここで形状認識された結果は、計測のためのプログラム５３Ｈで用いられる。
【００８１】
まず、プログラム５３Ｄ1 によって検出された基準点とプログラム５３Ｄ2 によって検出されたこれに近接する少なくとも２点の合計３点以上のエッジ点の座標に基づき最小２乗法、又はhough 変換法によりエッジ要素の形状の種類を認識する。形状の種類の認識方法は、最小２乗形状からの誤差の大きさ検出による方法や、hough 変換による方法が選択できるようになっている。即ち、最小２乗法による認識方法の場合、前記３点以上のエッジ点の座標に基づいて、最小２乗直線、最小２乗円を求め、夫々に対する残差の少ない方の形状であると認識する。
【００８２】
hough 変換による方法の場合は、多数の点から任意に選んだ２点によって構成される直線の法線ベクトルの方向の分布の状態を監視し、分布が特定の方向に集約するならば直線であると認識し、多数の点から任意に選んだ３点によって構成される円の中心座標の分布の状態を監視し、分布が特定の位置に集約するならば円であると認識する。このときの処理に用いられるエッジ点の個数が多い程、正確に形状認識されるので、プログラム５３Ｄ2 で設定するサーチラインの数は多い方が好ましい。例えば、前記サーチラインを４本と設定した場合は、基準点と合わせて合計５個のエッジ点の座標からどのような幾何形状か（例えば、直線、円又は円弧）を認識する。
【００８３】
形状認識のためのプログラム５３Ｆは、更に、上記認識した形状の詳細を正確に求める処理を行う。前記形状の種類を認識する処理において、キャリパ内のエッジ要素が直線の形状として認識された場合、認識された直線のパラメータが概略求められている。そこで、更にその直線のパラメータを詳細に求める処理が行われる。最小２乗法による誤差の大きさによる検出方法が選択されていた場合、基準点から認識した直線上で一方の側に一定間隔離れた位置にエッジ検出の対象となるエッジ位置検出領域（キャリパ）を設定し、そのキャリパの範囲にあるエッジ及びその法線方向の検出が行われる。そして、順次一定距離ずつエッジ検出の場所を移動させながらエッジ検出を行う。そして、エッジ検出して得たエッジ点が前記直線上に有るか否かを検査する。直線との誤差が所定値以下ならば直線上の点とみなし、その点も含めて直線を再計算する。そして、再度誤差を計算し、所定値以下であれば次のエッジ点について上記の処理を繰り返す。誤差が所定値よりも大きい場合は、その直前の点を直線の一端の点とする。そして、もう一方の端について上記処理を行う。かくして、対象物の形状の一部を構成する直線を表わす直線のパラメータが、両端の点の位置を含めて求められる。求めた直線のパラメータはメモリ４１Ｄ内に幾何形状データ５１Ｃ（図１参照）として記憶される。
【００８４】
hough 変換法が選択された場合、次のようにして直線のパラメータを求めるようになっている。
【００８５】
一般に、直線の方程式「ｙ＝ａｘ＋ｂ」は、「ρ＝ｘ・ＣＯＳθ＋ｙ・ＳＩＮθ  ただしρは、原点から直線に下ろした垂線の長さ、θは垂線とｘ軸とのなす角度である）」の式で表され、原点を点Ｐにとると、ρ及びθはエッジの法線ベクトルの長さ及び角度が近似的にあてはまるようになっている。ここでは、この近似値近傍で適当な大きさのρ−θ空間を表す２次元配列を予め用意し、検出したエッジ点（ｘ，ｙ）をρ，θをパラメータとした直線の式に代入し、得られたρ−θの関係を示す軌跡がρ−θ空間を通過する毎に、その２次元配列の配列要素に１を加える、という処理が行われる。画像中の検出したエッジ点に対するすべての軌跡を描いた後、最も大きな値となっている配列要素を抽出する。最小２乗法の場合と同様に、キャリパの位置を順次移動させながらエッジ点を新たに検出して点数を増やしていき、抽出された点近傍に次の点が存在しなくなるまで繰り返す。最も大きな値となっている配列要素がρ及びθであり、最後に検出した点が両端の点である。
【００８６】
いずれの設定でも、同一直線上のエッジ点列を求めることができ、直線が検出される。
【００８７】
図９は、第１のエッジ検出プログラム５３Ｄ1 において第１の検出モード（ベクトルサーチ）で基準点を検出し、形状認識のためのプログラム５３Ｆで直線の形状要素を抽出する様子を例示したものである。
【００８８】
点Ｐ１、Ｐ２、Ｐ３で囲まれた対象物の画像１０’の輪郭を成す直線Ｐ１ーＰ２近傍の点Ｘをマウスで指示すると、同図（ａ）のように、第１のエッジ検出プログラム５３Ｄ1 によって第１の検出モードでマウスによる指示点Ｘを中心として放射状にベクトルサーチによるエッジ検出が行われ、第２のエッジ検出プログラム５３Ｄ2 によって指示点Ｘの最近傍のエッジ点ｐ０の座標及びその法線ベクトルが検出され、キャリパが設定され、第３のエッジ検出プログラム５３Ｄ3 によって、このキャリパによるエッジ点の正確な座標が求められる。そして、形状認識のためのプログラム５３Ｆによってこれらのエッジ点に基づき前述の如くして直線要素が認識される。次いで、同図（ｂ）のように、指示点Ｘの最近傍点のエッジ座標ｐ０から順に所定の距離だけ離れた点ｐ１、ｐ２、ｐ３、ｐ４、ｐ５、ｐ６の順にエッジ位置の検出が行われ、同様に、反対方向の点ｐ７，ｐ８の順にエッジ位置の検出が行われ、上述した直線を求める処理と両端の点Ｐ１，Ｐ２を検出する処理とが行われる。このようにして、対象物の画像１０’の輪郭を成す直線（線分）Ｐ１−Ｐ２が認識され、認識した直線のパラメータ（直線の方程式、両端点の位置など）が求められ、メモリ４１Ｄに記憶される。
【００８９】
こうして、対象物の画像１０’の輪郭（エッジ）近傍をマウスなどで指示するだけで、直線の両端及び直線のパラメータを求めることができる。第２の検出モードでも同様であり、対象物の画像１０’の輪郭（エッジ）近傍をマウスなどで指示するだけで、サーチエリアＲが設定されて、エッジ座標が検出され、その直線の両端及び直線のパラメータを求めることができる。
【００９０】
形状認識のためのプログラム５３Ｆの形状の種類を認識する処理において、キャリパで示されるエッジ位置検出領域内のエッジ要素が円又は円弧の形状として認識された場合、円のパラメータを求める処理が行われる。
【００９１】
形状の種類を認識する処理によって、円の半径と中心の位置とが概略求められている。はじめに基準点の位置から認識した円の周上で一方方向に一定距離離れた位置にエッジ検出の対象となるエッジ位置検出領域（キャリパ）を設定し、そのキャリパ範囲にあるエッジ及びその法線方向の検出が行われる。そして、順次一定距離ずつエッジ検出の場所を移動させながらエッジ検出が行われる。こうしてエッジ検出して得たエッジ点が前記円周上に有るか否かを検査する。円要素との誤差が所定値以下ならば同一円周上の点とみなし、その点も含めて円を再計算する。再度誤差を計算し、所定値以下であれば、次のエッジ検出の場所の点について上記処理を繰り返す。誤差が所定値よりも大きい場合は、その直前の点を円弧の一端の点とする。そして、もう一方の端について上記処理を行う。かくして、対象物の形状の一部を構成する円弧を表わす円弧のパラメータが、両端の点の位置を含めて求められる。円弧が閉じた円である場合は、一方方向への処理において、基準点に戻った時に処理を終了する。求めた円弧のパラメータはメモリ４１Ｄ内に幾何形状データ５１Ｃとして記憶される。
【００９２】
この場合も上述した最小２乗形状からの誤差の大きさによる検出方法だけでなく、hough 変換法による方法が選択できるようになっている。hough 変換法の場合は、前記直線の場合の直線の式を円の式に替えて直線の場合と同様の処理を行うことによって円パラメータの詳細が求められる。
【００９３】
本実施形態の画像計測装置では、以上のようにして、撮像ユニット２０を用いて読み取られた画像データ５１Ｂからディスプレイ４３の表示画面に表示された画像に対して、測定したい対象物の輪郭（エッジ）近傍をマウス４２ｂで指定することにより、その位置から最も近い位置にあるエッジの座標の検出を行い、検出されたエッジ座標を基準にしてエッジ検出を行って対象物１０の形状を認識するようになっている。そして、対象物１０の輪郭をなす直線又は円弧の始点終点座標を自動的に求めることができる。このように、本実施形態の画像計測装置は、マウス４２ｂなどにより表示画面上の１点を指示するという簡単な操作で、対象物の形状認識ができる。
【００９４】
計測対象物の像１０’を構成する直線や円、円弧などの各要素に対して形状認識のためのプログラム５３Ｆによる処理を行うことによって得られた様々な情報、例えば、指示された位置最近傍のエッジ座標と法線ベクトル及びその座標を含む形状情報（直線なら両端点座標、円弧なら両端点座標と中心座標、といった要素分割して得られた情報）などは、所定のフォーマットにして登録し、メモリ４１Ｄ（仮想メモリの場合も含む）に幾何形状データ５１Ｃとして記憶しておくとともに、ファイルとしてハードディスク４１Ｐに保存されるようになっている。このファイルを読みだすことで、１度撮像した対象物について、くり返し表示と後述するような測定とができるようになっている。
【００９５】
このように、認識した形状を直線、円又は円弧に要素分割した情報を記憶するので、測定対象物の形状に関するデータ量が小さくなり、また、計測のためのプログラム５３Ｈによる幾何形状の計測を実行する処理速度が速くなる。
【００９６】
次に、計測のためのプログラム５３Ｈによる、前記メモリ４１Ｄ内の幾何形状データ５１Ｃを用いた計測について説明する。マウス４２ｂなどにより、計測のためのプログラム５３Ｈを起動すると、ディスプレイ４３の画面上に表示された図形と所望の演算・計測内容を指示することにより、前述した処理により認識された対象物１０の形状及び要素分割して得られた情報を用いて以下のような演算処理及び計測処理が行われる。
【００９７】
一般的な幾何寸法は、「直線−直線」の計算又は「円−直線」又は「円−円」の計算によって求めることができる。そこで、直線と直線が指示された場合は、交点座標、直角度、平行度、直線と直線との距離などが自動的に計算される。また、円と直線が指示された場合は、交点座標、円と直線の最短距離、中心座標と直線との距離、中心座標から直線に下だした垂線の足の座標等が自動的に演算される。円と円が指示された場合は、円と円の交点座標、円中心間距離などが求まる。また、指示された図形が複数の直線からなる閉形状の場合、要素分割して得られた情報から閉図形を認識し、その閉図形を構成する直線の数に応じて、３本では三角形、４本では四角形などと認識し、これらの頂点の座標や重心座標、中心座標が求められる。所定の数の円や直線から成る閉図形の場合を複数選べば、予め登録しておいた円の数、直線の数から、指定の形状が認識され、所定の出力が計算される。
【００９８】
上記の演算・計測結果はディスプレイ４３の表示画面の所定の領域（ウィンドウ内のボックス）に表示されるようになっている。
【００９９】
図１１は、別の計測対象物に対してこのような幾何寸法を求める計測処理が行われる場合のディスプレイ４３の表示の一例である。図１１に示されるような対象物の画像１０’がディスプレイの表示画面上のウィンドウに表示されている場合において、マウス４２ｂにより、計測のためのプログラム５３Ｈで幾何寸法計測処理を指定した後、２点１、２を計測箇所として指示すれば、幾何形状データ５１Ｃからそれらの点が属する幾何形状、即ち夫々直線が選択され、上述した直線−直線計算が行われ、交点Ｂの座標、２直線の角度θなどが求められる。同様に、２点９、９’をマウス４２ｂにより計測箇所として指示すれば、２直線の角度、平行度、２直線間の距離Ｌが求められる。また、４つの点３、４、５、６を連続で選べば四角形の要素成分が求められる。また、２点７、８を連続で選べば上述した円−円計算が行われ、円と円の交点Ａの座標が求められ、同様に２点１１、１２を連続で選べば２つの円の中心間距離Ｄが求められる。上記いずれの場合も、求められた計測結果は、ディスプレイ４３の表示画面上のウィンドウ４４Ｄに表示される。
【０１００】
なお、計測箇所として指示された点が属する図形要素が幾何形状データ５１Ｃに含まれていない場合は、その時点で前記した各処理がなされ、その点が属する図形要素の形状の種類と詳細パラメータとが求められ、前記幾何寸法を求める処理が行われる。そして、求めた幾何形状データはメモリ４１Ｄに記憶される。
【０１０１】
本実施形態の装置は、表示画面４４上に表示された計測対象物のエッジに沿って、キャリパＳを移動させ、キャリパＳの位置における計測対象物のエッジ座標をリアルタイムに求めることもできる。以下これについて説明する。即ち、計測処理のためのプログラム５３Ｈによって、リアルタイムエッジ検出処理が指示されると、マウス４２ｂの操作に応じてマーク位置移動のためのプログラム５３Ｊによって表示画面上でキャリパＳの位置が移動される度毎に、エッジ検出、法線ベクトルの検出、エッジ座標再検出の一連の処理が、計測のためのプログラム５３Ｈによりエッジ検出のためのプログラム５３Ｄ（プログラム５３Ｄ1 、５３Ｄ2 、５３Ｄ3 ）を子プロセスとして行われ、キャリパＳが法線方向を向くように表示画面上に表示されると共に、移動したキャリパの位置、方向に基づいて検出されたエッジ点の座標が求められる。このときキャリパＳは対象物１０の画像１０’の輪郭に添って移動するように表示される。
【０１０２】
図８はその表示例を示したものである。ディスプレイ４３の表示画面４４上で対象物１０の画像１０’が表示されるウィンドウ４４Ａにおいて、まず始めに、対象物１０の画像１０’の輪郭近傍の点Ａをマウス４２ｂ等により指示する。その後、この点Ａに表示されたキャリパＳを点Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｇに移動させると、各点でエッジ座標及び法線方向が求められ、キャリパＳは矢印で示した方向になるように表示され、このキャリパの範囲内の画素の輝度変化に基づいてエッジ点が検出され、その点の座標が求められる。また、計測のためのプログラム５３Ｈにより、キャリパＳの移動位置毎に、キャリパＳの中心を通る法線方向の輝度分布がウィンドウ４４Ｂに、また点Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｇ各点におけるエッジの座標がウィンドウ４４Ｃに表示されるようになっている。ウィンドウ４４Ｄは、計測結果を表示する部分でありこの点については後述する。
【０１０３】
このように、キャリパＳを移動にさせるのに伴って、エッジ点の座標がリアルタイムで検出されてそのエッジ座標が画面上に表示される。その際、キャリパＳも表示されるので、エッジ検出の対象範囲を容易に把握することができ、使い易くなる。また、キャリパＳが法線ベクトルと同方向にして画面上にリアルタイムに表示されるので、どの方向で計測を行っているかが確認でき、かつ、法線方向に設定されたキャリパＳに基づいてエッジ座標を求めているので、高精度に座標を求めることができる。
【０１０４】
更に、本実施形態の装置の計測のためのプログラム５３Ｈは、マウス４２ｂによるキャリパの移動に伴って、任意幾何形状の寸法をリアルタイム計測処理する機能も備えている。
【０１０５】
図１０（ａ）は、この場合の計測の様子を示したものである。ディスプレイ４３の表示画面４４上で対象物の画像１０’が表示されるウィンドウ４４Ａにおいて、計測のためのプログラム５３Ｈでリアルタイム計測処理を指定した後、まず、対象物の輪郭上の点Ｋ１，Ｋ２を通るようにマウス４２ｂ等によりキャリパＳを移動させて計測位置を指示する。この場合、キャリパＳのプロジェクション長を長目に設定することが好ましい。すると、図１０（ａ）の計測対象部分の拡大図である図１０（ｂ）に示されるように、キャリパＳ内において、点Ｋ１の近傍に複数のエッジ点ｋ1 〜ｋn が検出される。同様に、キャリパＳ内において、点Ｋ２の近傍に複数のエッジ点ｋ1 ’〜ｋn ’が検出される。
【０１０６】
そして、検出したエッジ点ｋ1 〜ｋn 、ｋ1 ’〜ｋn ’を用いて前述した最小２乗法又はhough 変換法による形状認識処理を行い、点Ｋ１、Ｋ２の属する図形要素の形状の種類（この場合は共に直線）を認識する。この場合、形状認識処理に用いる点は、キャリパＳ内に存在する点に限られるのでデー多数が少なく、形状認識は短時間に終了する。
【０１０７】
そして、形状認識の処理によって得られた直線要素に関する情報を用いて直線−直線計算が開始され、演算・計測結果が表示される。キャリパ内における形状の代表点、例えば検出した点ｋ1 〜ｋn 、ｋ1 ’〜ｋn ’それぞれの平均点（Ｋ１１，Ｋ１２）の座標はウィンドウ４４Ｃに、２直線（点Ｋ１１を通る対象物の輪郭，点Ｋ１２を通る対象物の輪郭）の平行度、距離、角度、直角度等はウィンドウ４４Ｄに、直線Ｋ１１−Ｋ１２の輝度分布はウィンドウ４４Ｂにそれぞれ表示される。同様に、対象物１０の輪郭上の点Ｋ３，Ｋ４を通るようにキャリパＳを移動させて計測位置を指示すると、点Ｋ３，Ｋ４について同様に処理が行われ結果が表示される。こうしてマウスなどにより、形状を指示するという簡単な操作で、その幾何形状の計測の結果を得ることができる。また、対象物１０の輪郭上の点Ｋ１，Ｋ２，Ｋ３，Ｋ４の相互間の距離がリアルタイムで算出され表示されるので、対象物の画像１０’からその輪郭上の２点間の距離を容易に測定することができる。また、キャリパを法線ベクトルと同方向にして画面上にリアルタイムに表示するので、どの方向で計測を行っているかが把握し易くなる。なお、点ｋ1 〜ｋn 、ｋ1 ’〜ｋn ’を検出した後、幾何形状データ４１Ｃを参照して、形状を認識するようにしても良い。
【０１０８】
このように、計測箇所の指示をマウスによりキャリパを用いて行う場合には、キャリパを移動させるだけで、対象物の画像に基づく上記の種々の計測を自動的に行なうことができる。この他、キャリパが輪郭上の１点のみを通るように設定し、このキャリパによって検出した点から任意に選んだ直線への垂線の長さあるいは前記点と任意に選んだ点との距離、若しくは該任意点を端点として含む任意に選んだ直線との角度をリアルタイムで算出し表示することも可能である。かかる計測は、対象物上のあるエッジ点の座標（ｘ、ｙ）を検出した場合に、この座標を対象物上の任意に選んだ点を原点とする極座標（ｒ、θ）に変換する等によって容易に行うことができる。
【０１０９】
以上説明したように、本実施形態の画像計測装置によると、マウス４２ｂにより測定箇所を指示するという簡単な操作で、対象物１０の画像１０’に基づいて様々な計測を行うことができる。
【０１１０】
なお、上記実施形態では、ベクトルサーチの際のサーチ方向を１２方向とした場合について説明したが、これに限らず、そのサーチ方向の数は、より多くすることは可能であり、多ければ多いほど検出確度が上がるのは言うまでもない。また、検出したエッジの法線ベクトルはエッジの明方向に方向をとるものとしたが、その逆方向でもよいことは勿論である。
【０１１１】
さらに、上記実施形態では、計測処理などの演算は、プログラムを用いてマイクロプロセッサで行われる場合について説明したが、これに限らず、デジタルシグナルプロセッサ（ＤＳＰ）などを用いて処理を行うようにしても良い。
【０１１２】
また、上記実施形態では、ＣＣＤカメラにより撮像して得た画像データをそのままメモリ内に記憶し、この画像情報を用いて種々の計測処理を行う場合について説明したが、本発明がこれに限定されることはなく、例えば予め撮像して得た対象物の画像情報をフロッピーディスク、光磁気ディスク等の情報記録媒体に記録し、この記録媒体に記録した情報をメモリ内に記録し、この情報を用いて上述した種々の計測を行うようにしても良い。
【０１１３】
【発明の効果】
以上説明したように、請求項１ないし５に記載の発明によれば、点の指示を入力するという簡単な操作で計測対象物のエッジ検出及び形状認識をすることができるという従来にない優れた効果がある。
【０１１４】
特に、請求項２に記載の発明によれば、上記効果に加え、任意の幾何形状の指示を入力するという簡単な操作で、その幾何形状の計測の結果を得ることができるという効果もある。
【図面の簡単な説明】
【図１】本発明の実施形態に係る画像計測装置を示す図である。
【図２】第１の検出モードの設定をした場合のサーチ方向を例示した図である。
【図３】（ａ）はキャリパＳが設定された状態を示す図、（ｂ）は（ａ）中の３ライン上において方向４のサーチをしたときのライン上の画素の画像データの示す輝度の変化を示す図、（ｃ）は（ｂ）輝度の微分値の変化を示す図である。
【図４】サーチエリアを例示した図である。
【図５】エッジ検出によって見つかったエッジの位置を例示した図であって、（ａ）はサーチエリアＲの行方向に複数のエッジ点が得られた様子を示す図、（ｂ）はサーチエリアＲの列方向に複数のエッジ点が得られた様子を示す図である。
【図６】エッジ座標を中心位置として設定されたキャリパの表示例を示した図である。
【図７】サーチエリアＲおける画像データの２値化を例示した図である。
【図８】キャリパＳが対象物の画像１０’の輪郭に添って移動する様子を示す図である。
【図９】第１の検出モードでエッジ検出をした後に、直線の形状要素を抽出する様子を例示した図である（（ａ）、（ｂ））。
【図１０】（ａ）は計測のためのプログラムによる任意幾何形状のリアルタイム計測処理の一例を説明するための図、（ｂ）は（ａ）の計測対象部分を拡大して示す図である。
【図１１】別の計測対象物に対して幾何寸法を求める計測処理が行われる場合のディスプレイの表示の一例を示す図である。
【図１２】（ａ）はエッジ点検出の対象となる計測対象物の一例を示す平面図、（ｂ）は（ａ）の計測対象物の画像データが示す輝度（階調）の微分値を示す図である。
【符号の説明】
１０    計測対象物
４１Ｄ  メモリ
４２ａ  キーボード（計測条件入力手段の一部）
４２ｂ  マウス（点入力手段の一部、計測条件入力手段の一部、マーク位置移動手段の一部）
４３    ディスプレイ（表示装置）
５１Ｂ  画像データ（画像情報）
５３Ｂ  計測条件入力のためのプログラム（点入力手段の一部、計測条件入力手段の一部）
５３Ｄ1   第１のエッジ検出プログラム（第１のエッジ検出手段）
５３Ｄ2   第２のエッジ検出プログラム（第２のエッジ検出手段）
５３Ｆ  形状認識のためのプログラム（形状認識手段）
５３Ｈ  計測のためのプログラム（計測手段、リアルタイム検出手段）
５３Ｊ  マーク位置移動のためのプログラム（マーク位置移動手段の一部）
Ｐ      基準点
Ｓ      キャリパ（マーク）
【図１】
0003887807.tif 000002
【図２】
0003887807.tif 000003
【図３】
0003887807.tif 000004
【図４】
0003887807.tif 000005
【図５】
0003887807.tif 000006
【図６】
0003887807.tif 000007
【図７】
0003887807.tif 000008
【図８】
0003887807.tif 000009
【図９】
0003887807.tif 000010
【図１０】
0003887807.tif 000011
【図１１】
0003887807.tif 000012
【図１２】
0003887807.tif 000013