(57)【特許請求の範囲】
【請求項１】
第２のカメラで撮影した画像とのパターンマッチングに用いるパターンマッチング用の基準画像セットの作成方法であって、
ワークの撮影条件を変更し、それぞれの撮影条件ごとに第１のカメラを備えたシステムにて前記ワークを撮影して、複数の原画像を取得するステップと、
前記複数の原画像それぞれに画像処理を行って、複数の基準画像を生成するステップと、
前記複数の基準画像から、互いに倍率が異なる複数の基準画像のセットを生成するステップと、
前記第２のカメラを備えたシステムを用いて前記ワークを撮影したワーク画像を取得するステップと、
前記互いに倍率が異なる複数の基準画像のセットに含まれる各々の基準画像と、前記ワーク画像とのマッチングを行うステップと、
前記マッチングの結果に基づいて、前記互いに倍率が異なる複数の基準画像のセットの中からいずれかの倍率の基準画像のセットをパターンマッチング用の基準画像セットとして選択するステップと、
を有することを特徴とするパターンマッチング用の基準画像セットの作成方法。
【請求項２】
前記複数の原画像を取得するステップにおいて、
前記ワークの撮像位置および照明状態を変更することにより撮影条件を変更して撮影し、前記複数の原画像を取得する、
ことを特徴とする請求項１に記載のパターンマッチング用の基準画像セットの作成方法。
【請求項３】
前記互いに倍率が異なる複数の基準画像のセットを生成するステップにおいて、
前記複数の基準画像を生成するステップにて作成した前記複数の基準画像の各々に対して、複数の倍率で拡大または縮小を施すことにより、前記互いに倍率が異なる複数の基準画像のセットを生成する、
ことを特徴とする請求項１または２に記載のパターンマッチング用の基準画像セットの作成方法。
【請求項４】
前記複数の基準画像を生成するステップにおいて、
前記画像処理としてエッジを抽出する処理を施して、前記複数の基準画像を生成する、
ことを特徴とする請求項１から３のいずれか１項に記載のパターンマッチング用の基準画像セットの作成方法。
【請求項５】
前記エッジを抽出する処理におけるエッジ抽出条件として、抽出したエッジと前記複数の原画像とのマッチングを行って得られるマッチングスコアが所定の基準を満たすように前記エッジ抽出条件を設定する、
ことを特徴とする請求項４に記載のパターンマッチング用の基準画像セットの作成方法。
【請求項６】
前記互いに倍率が異なる複数の基準画像のセットのうち、前記ワーク画像とのマッチングスコアが最も高い基準画像が含まれる倍率の基準画像のセットを、前記パターンマッチング用の基準画像セットとして選択する、
ことを特徴とする請求項１から５のいずれか１項に記載のパターンマッチング用の基準画像セットの作成方法。
【請求項７】
請求項１から６のいずれか１項に記載のパターンマッチング用の基準画像セットの作成方法により得られた基準画像セットを準備する工程と、
前記第２のカメラを備えたシステムにてワークを撮像したワーク画像を取得する工程と、
前記基準画像セットと前記ワーク画像とのマッチング処理を行うステップと、
前記マッチング処理を行うステップの結果に基づいて前記ワークを認識するステップと、
を有することを特徴とするワークの認識方法。
【請求項８】
請求項１乃至６のいずれか１項に記載のパターンマッチング用の基準画像セットの作成方法をコンピュータに実行させるためのプログラム。
【請求項９】
請求項８に記載のプログラムを記録した記録媒体。
【請求項１０】
ワークの撮影条件を変更して設定可能な設定部と、
入出力部と、
第１のカメラを制御する制御部と、を備え、
前記制御部は、
前記設定部を制御して前記ワークの撮影条件を変更し、それぞれの撮影条件ごとに前記第１のカメラにて前記ワークを撮影して、複数の原画像を取得するステップと、
前記複数の原画像それぞれに画像処理を行って、複数の基準画像を生成するステップと、
前記複数の基準画像から、互いに倍率が異なる複数の基準画像のセットを生成するステップと、
前記入出力部から第２のカメラにより前記ワークを撮影したワーク画像を取得するステップと、
前記互いに倍率が異なる複数の基準画像のセットに含まれる複数の基準画像と、前記ワーク画像とのマッチングを行うステップと、
前記マッチングの結果に基づいて、前記互いに倍率が異なる複数の基準画像のセットの中からいずれかの倍率の基準画像のセットをパターンマッチング用の基準画像セットとして選択するステップと、
前記選択したパターンマッチング用の基準画像セットを前記入出力部から出力するステップと、
を実行する、
ことを特徴とするパターンマッチング用の基準画像セットの作成装置。
【請求項１１】
前記設定部は、前記第１のカメラにて前記ワークを撮影する際の照明状態を調整可能であり、
前記複数の原画像を取得するステップにおいては、前記設定部により照明状態を複数種類に異ならせたそれぞれの撮影条件で前記ワークを撮影する、
ことを特徴とする請求項１０に記載のパターンマッチング用の基準画像セットの作成装置。
【請求項１２】
前記設定部は、前記第１のカメラでワークを撮影する際の前記ワークの支持状態を調整可能であり、
前記複数の原画像を取得するステップにおいては、前記設定部により前記ワークの支持状態を複数種類に異ならせたそれぞれの撮影条件で前記ワークを撮影する、
ことを特徴とする請求項１０又は１１に記載のパターンマッチング用の基準画像セットの作成装置。
【請求項１３】
前記設定部は、多関節ロボットアームを有する、
ことを特徴とする請求項１２に記載のパターンマッチング用の基準画像セットの作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パターンマッチング処理を行うための基準画像セットの作成方法、パターンマッチング用の基準画像セットの作成装置、対象物の認識方法、プログラム、及び記録媒体に関する。
【背景技術】
【０００２】
カメラを用いてワークを撮影して取得したワーク画像について基準画像（テンプレート）を用いてパターンマッチング処理を行うことにより、ワークの認識、位置決め、測定等の処理を行うロボット装置等の処理装置が実用化されている。
【０００３】
従来の処理装置は、実際の処理装置に保持させた実際のワークを、ワーク画像の撮影に使用するカメラを用いて撮影して原画像を取得し、取得した原画像を画像処理して基準画像を作成していた。
【０００４】
従来の処理装置は、処理するワークの色彩や照明状態が変化すると、取得したワーク画像で基準画像を用いてパターンマッチング処理した際のマッチングスコアが低下することがあった。
【０００５】
そこで、特許文献１では、ワーク画像の原画像に対して複数通りの色彩効果や照明方向の変化を加える画像処理を行って撮影条件ごとの原画像を取得し、撮影条件ごとの原画像をそれぞれ画像処理して撮影条件ごとの基準画像を作成している。そして、処理装置では撮影条件ごとの基準画像を記憶保持し、撮影条件ごとの基準画像の中から１つの基準画像を選択してパターンマッチング処理を行っている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１０−２１３４２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
原画像に画像処理で撮影条件の違いを人工的に付加した場合、実際のワークにおける実際の撮影条件の違いをうまく表現できなくて、そのような原画像から作成した基準画像では、パターンマッチング処理のマッチング精度が損なわれる場合がある。そこで、実際のワークで実際に撮影条件を少しずつ異ならせて撮影を行って撮影条件ごとの原画像を取得し、撮影条件ごとの原画像を画像処理して撮影条件ごとの基準画像を作成することが提案された。ワークの色彩や照明状態を少しずつ異ならせて多数の原画像を取得し、多数の原画像をそれぞれ画像処理して多数の基準画像を作成しておくことが提案された。
【０００８】
しかし、実際の処理装置において、ワークの色彩や照明状態を少しずつ異ならせて多数の原画像を取得することは容易ではなく、加えて、ワークを撮影して原画像を取得している間、実際の処理装置においてダウンタイムが発生する。
【０００９】
本発明は、実際の処理装置にダウンタイムを発生させることなく、実際の処理装置においてパターンマッチング処理の精度を高く確保できるワークの処理方法、基準画像の作成方法、基準画像の作成装置、ワークの処理装置、プログラム、及び記録媒体を提供することを目的としている。
【課題を解決するための手段】
【００１０】
本発明は、第２のカメラで撮影した画像とのパターンマッチングに用いるパターンマッチング用の基準画像セットの作成方法であって、ワークの撮影条件を変更し、それぞれの撮影条件ごとに第１のカメラを備えたシステムにて前記ワークを撮影して、複数の原画像を取得するステップと、前記複数の原画像それぞれに画像処理を行って、複数の基準画像を生成するステップと、前記複数の基準画像から、互いに倍率が異なる複数の基準画像のセットを生成するステップと、前記第２のカメラを備えたシステムを用いて前記ワークを撮影したワーク画像を取得するステップと、前記互いに倍率が異なる複数の基準画像のセットに含まれる各々の基準画像と、前記ワーク画像とのマッチングを行うステップと、前記マッチングの結果に基づいて、前記互いに倍率が異なる複数の基準画像のセットの中からいずれかの倍率の基準画像のセットをパターンマッチング用の基準画像セットとして選択するステップと、を有することを特徴とするパターンマッチング用の基準画像セットの作成方法である。
【００１１】
また、本発明は、ワークの撮影条件を変更して設定可能な設定部と、入出力部と、第１のカメラを制御する制御部と、を備え、前記制御部は、前記設定部を制御して前記ワークの撮影条件を変更し、それぞれの撮影条件ごとに前記第１のカメラにて前記ワークを撮影して、複数の原画像を取得するステップと、前記複数の原画像それぞれに画像処理を行って、複数の基準画像を生成するステップと、前記複数の基準画像から、互いに倍率が異なる複数の基準画像のセットを生成するステップと、前記入出力部から第２のカメラにより前記ワークを撮影したワーク画像を取得するステップと、前記互いに倍率が異なる複数の基準画像のセットに含まれる複数の基準画像と、前記ワーク画像とのマッチングを行うステップと、前記マッチングの結果に基づいて、前記互いに倍率が異なる複数の基準画像のセットの中からいずれかの倍率の基準画像のセットをパターンマッチング用の基準画像セットとして選択するステップと、前記選択したパターンマッチング用の基準画像セットを前記入出力部から出力するステップと、を実行する、ことを特徴とするパターンマッチング用の基準画像セットの作成装置である。
【発明の効果】
【００１２】
本発明のワークの処理方法では、第２カメラを有するワークの処理装置とは別の第１カメラを有する基準画像の作成装置において基準画像を作成する。このため、ワークの処理装置にダウンタイムを発生させることなく、ワークの処理装置においてパターンマッチングの精度を高く確保できる基準画像を作成可能である。
【図面の簡単な説明】
【００１３】
【図１】実施の形態１における処理装置の機能ブロック図である。
【図２】処理装置のハードウエア構成の説明図である。
【図３】処理装置における基準画像の選択処理のフローチャートである。
【図４】画像データからエッジを抽出する方法の説明図である。
【図５】処理装置におけるワークの計側・検査処理のフローチャートである。
【図６】基準画像作成装置の機能ブロック図である。
【図７】基準画像作成装置のハードウエア構成の説明図である。
【図８】原画像の撮影制御のフローチャートである。
【図９】特徴量選択処理のフローチャートである。
【図１０】基準画像のセットの説明図である。
【図１１】基準画像の倍率の説明図である。
【図１２】基準画像の作成処理のフローチャートである。
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００１５】
＜実施の形態１＞
（処理装置）
図１は実施の形態１における処理装置の機能ブロック図である。図２は処理装置のハードウエア構成の説明図である。図１中、画像記録部１０３、基準選択部１０５、基準登録部１０６、測定検査部１０７などの機能は、コンピュータ１２０で実行されるプログラムとして実現されている。
【００１６】
図１に示すように、処理装置１００は、テーブル１１１に装着されたワーク１０２を計測・検査する。カメラ１０１は、ワーク１０２を含むテーブル１１１上の範囲を撮影する。照明１１０は、ワーク１０２を照明する。
【００１７】
画像撮影部１１２は、カメラ１０１及び照明１１０を制御してワーク１０２を撮影する。画像記録部１０３には、カメラ１０１によりワーク１０２を撮影して取得したワーク画像の画像データが保持される。画像記録部１０３に保持されたワーク画像の画像データは、測定検査部１０７に転送されてワークの測定・検査に使用される。
【００１８】
入力部１０４には、図６に示す基準画像作成装置６００で作成された基準画像（テンプレート）が記憶されている。基準画像は、撮影したワーク画像との間でパターンマッチング処理を実行されるエッジデータである。
【００１９】
基準選択部１０５は、画像記録部１０３に記憶されたワーク画像について、入力部１０４に記憶された基準画像を用いてパターンマッチング処理を行い、後述するように、最もマッチングスコアが高い基準画像を選択する。
【００２０】
基準登録部１０６は、基準選択部１０５により選択された基準画像を登録して、ワークの機種や塗装色が変更されるまで、基準登録部１０６に登録した基準画像を専ら使用してワークの計測・検査を行わせる。
【００２１】
測定検査部１０７は、ワークごとに画像記録部１０３に記憶されるワーク画像について、基準登録部１０６に登録された基準画像を用いてパターンマッチング処理を行い、処理結果に基づいてワークの計測・検査を行う。
【００２２】
出力部１０９は、測定検査部１０７において計測・検査された結果を出力する。表示部１０８は、基準画像の選択過程、画像形成処理の途中経過等を表示する。
【００２３】
図２に示すように、コンピュータ１２０のＣＰＵ２０２は、ＲＯＭ２０３、ＲＡＭ２０４、ハードディスク２０５、インターフェース２０６、入力部２０１、出力部１０９、表示部１０８等の構成要素にバス結合されている。
【００２４】
カメラ１０１は、ワーク１０２を撮影して撮影画像を、ワーク画像のデジタルデータへ変換する。カメラ１０１の撮影画像の画像データは、入力部２０１へ入力される。
【００２５】
ＣＰＵ２０２は、マイクロプロセッサからなり、データの計算・加工を行う。ＣＰＵ２０２は、ＲＯＭ２０３に記憶されたプログラムを実行し、ＲＡＭ２０４、ハードディスク２０５、入力部２０１等からデータを受け取って演算・加工し、表示部１０８、ハードディスク２０５、出力部１０９等に出力する。
【００２６】
ＲＯＭ２０３は、一度書き込まれた情報を読み出すための記憶装置であり、各種制御のプログラム及びデータが格納されている。ＲＡＭ２０４は、半導体素子を利用した記憶装置であって、ＣＰＵ２０２が実行する処理のためのデータの一時記憶などに使用される。ハードディスク２０５は、撮影画像のデータ、基準画像（テンプレート）等、サイズの大きいデータを保持する外部記憶装置である。
【００２７】
インターフェース２０６は、データと各種信号とを相互に変換し、信号線を通じてカメラ１０１、照明１１０を制御する。また、光ファイバ、ＬＡＮケーブル等を通じて外部のサーバー、コンピュータ、通信機と通信する。
【００２８】
表示部１０８は、処理過程を表示する画面や、操作入力を行う画面の画像信号を生成して、外部のＣＲＴディスプレイ、液晶ディスプレイ、プラズマディスプレイなどへ送出する。入力部１０９は、キーボード、タッチパネル、マウスなどのポインティングデバイスを含む。出力部２０７は、データ出力のための出力端子を持っている。
【００２９】
（基準画像の選択処理）
図３は処理装置における基準画像の選択処理のフローチャートである。図２を参照して図３に示すように、ＣＰＵ２０２は、ハードディスク２０５から基準画像を読み込む（Ｓ１）。ＣＰＵ２０２は、パターンマッチング処理を行うためのパラメータを読み込む（Ｓ２）。読み込むパラメータは、パターンマッチングのスコア閾値、探索角度、探索スケール、探索領域等である。
【００３０】
ＣＰＵ２０２は、カメラ１０１により撮影したワーク画像の画像データをハードディスク２０５から取得する（Ｓ３）。ＣＰＵ２０２は、ワーク画像の画像データを画像処理して、エッジを抽出し、抽出されたワーク画像のエッジと１つの基準画像のパターンマッチング処理を行って（Ｓ４）、マッチングスコアを保存する（Ｓ５）。
【００３１】
ＣＰＵ２０２は、ハードディスク２０５から読み込んだすべての基準画像を順番に用いて（Ｓ６のＮｏ）、抽出されたワーク画像のエッジについてパターンマッチング処理を行って、マッチングスコアを評価する（Ｓ４、Ｓ５）。そして、すべての基準画像についてパターンマッチング処理が終了すると（Ｓ６のＹｅｓ）、マッチングスコアに基づいて、複数の基準画像の中から１つの倍率の基準画像のセットを選択する（Ｓ７）。具体的には、マッチングスコアが閾値スコアを超えたものの中からスコアが一番高いものを選択する。スコア閾値は、事前に誤検知しない閾値を算出しておく。
【００３２】
ＣＰＵ２０２は、図１０の（ｂ）に示すように、それぞれ倍率の異なる複数セットの基準画像（テンプレート）の中から、ワーク画像にスケールが合った１つの倍率の基準画像のセットを選択する（Ｓ７）。これにより、処理装置１００とは異なる図６の基準画像作成装置６００を用いて作成した基準画像と、カメラ１０１で撮影したワーク画像のスケール誤差が吸収される。
【００３３】
以上説明したように、記憶部の一例であるハードディスク２０５は、撮影条件ごとに複数段階に倍率を異ならせた複数セットの基準画像を記憶している。ＣＰＵ２０２は、撮影工程、及び選択工程を実行する。撮影工程では、ＣＰＵ２０２がカメラ１０１によりワークを撮影してワーク画像を取得する。
【００３４】
選択工程では、カメラ１０１によりワークを撮影してワーク画像を取得し、ワーク画像と複数の基準画像とをパターンマッチング処理して複数の基準画像の中から処理装置１００で使用する基準画像のセットを選択する。ＣＰＵ２０２が、ハードディスク２０５から呼び出した複数段階に倍率を異ならせた複数の基準画像の中から１つの倍率の基準画像のセットを選択する。
【００３５】
（パターンマッチング）
図４は画像データからエッジを抽出する方法の説明図である。図４中、（ａ）は画像データ、（ｂ）は１つの注目画素におけるエッジ強度である。
【００３６】
パターンマッチング処理は、ワーク画像上に設定された探索領域内において、予め登録された基準画像（テンプレート）との類似度が最も高くなる位置を探索する処理である。そして、探察した位置における入力画像と基準画像の類似度（マッチングスコア）が、閾値（スコア閾値）よりも大きい場合に、マッチング成功とし、その位置の中で最もスコアが高い位置をマッチング位置として出力する。ここでは、ワーク画像から抽出したエッジ画像と基準画像とのパターンマッチング処理を説明する。
【００３７】
図４の（ａ）に示すように、ワーク画像のすべての画素のうちで、勾配強度Ｅが所定の閾値以上である画素、すなわちエッジを抽出する。エッジ抽出では、ワーク画像におけるすべての画素の輝度の勾配強度及び勾配方向を算出する。勾配強度は、ｘ方向およびｙ方向のソーベルフィルタを使用して算出される。個々の画素でｘ軸方向勾配強度Ｅｘと、ｙ軸方向勾配強度Ｅｙと、をそれぞれ算出する。
【００３８】
図４の（ｂ）に示すように、個々の画像における最終的な勾配強度Ｅは、ｘ軸方向勾配強度Ｅｘとｙ軸方向勾配強度Ｅｙの二乗和の平方根として、次式により算出する。
【００３９】
【数１】
0006765791.tif 000002
【００４０】
また、このときの勾配方向θは、ｘ軸方向勾配強度Ｅｘとｙ軸方向勾配強度Ｅｙとを用いて次式により算出する。
【００４１】
【数２】
0006765791.tif 000003
【００４２】
そして、ワーク画像のすべての画素のうちで、勾配強度Ｅが所定の閾値以上である画素を選択してワーク画像のエッジを抽出する。続いて、抽出されたエッジと１つの基準画像とのパターンマッチング処理を行って基準画像を評価する。抽出されたエッジの画像データ上のすべての画素について画素単位でその検出位置（ｉ，ｊ）における基準画像のマッチングスコアＳｉｊを次式により算出する。
【００４３】
【数３】
0006765791.tif 000004
【００４４】
ここで、局所スコアＳｋは、候補モデルのモデルエッジ点毎に算出されるスコアであり、次式により算出する。次式において、θＴｋは抽出されたエッジのエッジ点毎の勾配方向であり、θＭｋはモデルエッジのエッジ点毎の勾配方向である。
【００４５】
【数４】
0006765791.tif 000005
【００４６】
局所スコアＳｋとマッチングスコアＳｉｊとは、共に取り得る値が−１〜１となり、１に近いほどパターンマッチングのレベルが高いことを意味する。
【００４７】
（ワーク処理）
図５は処理装置におけるワークの計側・検査処理のフローチャートである。図５に示すように、ＣＰＵ２０２は、ワークの処理に用いるために選択された基準画像のセットをハードディスク２０５から読み込む（Ｓ１１）。基準画像は、エッジデータである。ＣＰＵ２０２は、上述したように、後のパターンマッチング処理等を行うためのパラメータを読み込む（Ｓ１２）。
【００４８】
ＣＰＵ２０２は、入力部２０１に記録されたワーク画像の画像データを取得する（Ｓ１３）。ＣＰＵ２０２は、取得したワーク画像の画像データからエッジを抽出する（Ｓ１４）。ＣＰＵ２０２は、ワーク画像の画像データから抽出されたエッジと基準画像とのパターンマッチング処理を行う（Ｓ１４）。ここで、ワーク画像の画像データからエッジを抽出する方法及びパターンマッチング処理の方法は、上述した処理と同じなので説明を省略する。
【００４９】
ＣＰＵ２０２は、パターンマッチング処理で取得したマッチングスコアを保存する（Ｓ１５）。ＣＰＵ２０２は、１つの倍率の基準画像のセットに含まれるすべての基準画像について（Ｓ１６のＮｏ）、同様に、抽出されたエッジの画像データに対するパターンマッチング処理を行う（Ｓ１４、Ｓ１５）。そして、すべての基準画像についてパターンマッチング処理が終了すると（Ｓ１６のＹｅｓ）、保存されたマッチングスコアに基づいて、複数の基準画像の中から１つの基準画像を選択する（Ｓ１７）。パターンマッチングのスコアが閾値スコアを超えたものの中から、スコアが一番高いものを選択する。スコア閾値は、事前に誤検知しない閾値を算出しておく。
【００５０】
ＣＰＵ２０２は、パターンマッチング処理の結果に基づきワーク１０２の計測・検査を行う（Ｓ１７）。ＣＰＵ２０２は、パターンマッチング処理の結果を表示部１０８に表示させ、出力部１０９により外部装置に出力する。
【００５１】
以上説明したように、ＣＰＵ２０２が実行する処理工程では、選択工程において選択した基準画像を用いて、カメラ１０１により取得したワーク画像をパターンマッチング処理し、処理結果に基づいてワークの処理を行う。ＣＰＵ２０２が、撮影工程により取得したワーク画像と、選択工程により選択された基準画像のセットと、を用いてワークを処理する。
【００５２】
（比較例）
ＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）分野では、ワークの有無やワークの位置・姿勢などを光学的に測定するために、或いは、ワークに生じる不良や塗られた塗布剤の検査などを行うために、カメラ（視覚センサ）が用いられている。
【００５３】
ワークの測定・検査・位置決めを行う手法の典型例として、カメラにより撮影した撮影画像に対して予め準備された基準画像（テンプレート）をパターンマッチング処理する手法が用いられている。
【００５４】
一般的な製造装置の開発業務は、設計工程、製作工程、試運転工程の３つの工程を含む。製作工程において製造装置が組立てられた後、試運転工程において実際に製造装置にワークを保持させて原画像を撮影し、製造装置においてパターンマッチング処理に用いる基準画像を作成している。しかし、製造装置が使用される生産現場では、ワークの撮像位置がずれたり、ワークの照明状態が変動したりする。このような外乱が発生すると、ワーク画像と基準画像（テンプレート）との類似度が最も高くなる位置におけるマッチングスコアが閾値に満たなくなって、マッチングエラーが出力され、製造装置が強制停止される。
【００５５】
そのため、製造装置では、このような外乱が生じた場合でも安定してパターンマッチング処理が行えるような基準画像を使用する必要がある。そして、カメラで撮影した原画像からワークのエッジ画像を選択して基準画像を作成する場合、ワークのどのエッジを選択するかで、パターンマッチング処理のロバスト性が大きく左右される。
【００５６】
このため、経験を積んだ技術者が試行錯誤して基準画像を作成する必要がある。そして、汎用性の高い基準画像を作成するためには、試行錯誤して撮影条件を異ならせた多数のワーク画像を撮影する必要がある。このため、ワーク画像の撮影だけでも膨大な時間がかかってしまう。
【００５７】
そこで、比較例では、図１示すように、処理装置１００においてカメラ１０１で撮影された１枚のみの原画像に、複数種類の照明効果や傾き効果をシミュレーション画像処理で付加して、撮影条件の異なるワーク画像を人為的に作成している。そして、人為的に作成した複数種類のワーク画像をそれぞれ画像処理して多数の基準画像を含む基準画像のセットを作成して入力部１０４に記憶させている。
【００５８】
そして、比較例では、撮影したワーク画像について、入力部１０４に記憶された１つの倍率の基準画像のセットに含まれる基準画像を順番に用いてパターンマッチング処理を行っている。そして、最もマッチングスコアの高い基準画像を選択することで、照明変化、傾き変化等に対応させている。これにより、生産現場におけるワーク画像の撮影回数が削減されて、基準画像の作成のために発生する処理装置１００のダウンタイムを削減している。比較例では、単純なスケールの違いや多少の照明状態の変化であれば、シミュレーション画像処理によって精度の高いワーク画像を再現できる。
【００５９】
しかし、比較例では、処理装置１００で偶発的に発生するワークのカメラの光軸方向に対するＲｘ，Ｒｙ，Ｒｚ方向（以下、あおり方向）の傾きに起因するワーク画像の微妙な保持状態や照明状態の変動を再現することは難しい。そのような画像に対応した基準画像の作成が困難であるため、比較例では、偶発的に誤認識、誤計測が起きてしまう可能性がある。
【００６０】
また、比較例では、準備された多数の基準画像のすべてに対してワーク画像とのパターンマッチング処理を行うため、撮影条件の種類や変動幅が増えるほど、処理装置の運転時に必要なパターンマッチング処理の回数が増えてしまう。その結果、生産現場におけるワークの計測・検査の合計の処理時間が長くなる。
【００６１】
そこで、実施の形態１では、図６に示すように、生産現場の外に基準画像作成装置６００を準備して、撮影条件を異ならせた大量の基準画像を短時間で効率的に作成することを可能にした。そして、生産現場では、基準画像作成装置６００で作成された原画像を処理装置１００にダウンロードして記憶し、その中から短時間で撮影条件に合った最適な基準画像を選択できるようにした。上述したように、処理装置１００は、記憶した基準画像の中から最適な基準画像を決定し、その基準画像を用いてワークの計測・検査を行っている。
【００６２】
（基準画像作成装置）
図６は基準画像作成装置の機能ブロック図である。図７は基準画像作成装置のハードウエア構成の説明図である。
【００６３】
図６に示すように、基準画像作成装置６００は、カメラ６０１により撮影したワーク６０２の原画像から基準画像を作成する。ワーク６０２は、図１に示すワーク１０２と同一のものである。
【００６４】
基準画像作成装置６００は、カメラ６０１、照明６０４、ロボットアーム６０３、コンピュータ６２０等を備える。画像記録部６０６、画像撮影部６０５、基準画像生成部６０７、特徴量選択部６０８は、コンピュータ６２０のプログラムとして仮想的に実現されている。
【００６５】
カメラ６０１は、ワーク６０２を撮影して、撮影画像をデジタルデータへ変換する。照明６０４は、ＬＥＤ照明で任意の明るさに調節可能である。ロボットアーム６０３は、ワーク６０２を把持してワーク６０２に任意の位置姿勢を取らせ得る。
【００６６】
設定部の一例であるロボットアーム６０３及び照明６０４は、ワークの撮影条件を変更して設定可能である。ワーク照明の一例である照明６０４は、カメラ６０１でワークを撮影する際のワークの照明状態を調整可能である。ワーク保持部の一例であるロボットアーム６０３は、多関節ロボットアームで構成され、カメラ６０１でワークを撮影する際のワークの支持状態を調整可能である。
【００６７】
撮影制御部の一例であるコンピュータ６２０は、撮影工程において、ロボットアーム６０３及び照明６０４によりワーク６０２に複数種類の撮影条件を設定し、カメラ６０１によりワーク６０２を撮影して、撮影条件ごとの原画像を取得させる。コンピュータ６２０は、照明６０４によりワークの照明状態を複数段階に異ならせ、ロボットアーム６０３によりワークの支持状態を複数段階に異ならせた多種類の組み合わせの撮影条件でそれぞれワークを撮影する。
【００６８】
画像撮影部６０５は、照明６０４によりワーク６０２の照明状態を変動させる。照明６０４の調整幅は、長時間の使用による照明６０４の輝度低下、環境光の変化、突発的な光の入射等、現場で起こりうる照明状態の変動範囲を考慮して、これよりも少し大きい範囲で変更可能である。例えば、照明６０４の寿命期間における輝度低下が２０％以下であれば、照明６０４の明るさを８０〜１１０％の範囲で変動させる。明るさのステップ数は、最大値、中央値、最小値の３段階を基本とするが、原画像の全体枚数がそれほど多くならない場合には、明るさのステップ数を４段階以上に設定してもよい。
【００６９】
画像撮影部６０５は、ロボットアーム６０３によりワーク６０２の支持状態を変動させる。ロボットアーム６０３の位置変動の範囲は、図１に示す処理装置１００においてワーク６０２が撮像原点からずれる可能性のある範囲より少し大きい範囲である。例えば、カメラ６０１の光軸に対して、Ｘ，Ｙ，Ｚ方向に±５ｍｍ、Ｒｘ，Ｒｙ，Ｒｚ周りに±２°ずれる可能性がある場合、変動位置の範囲は、ｘ，ｙ，ｚの方向に±６ｍｍ、Ｒｘ，Ｒｙ，Ｒｚ周りに±２．４°とする。位置変動のステップ数は、各軸の変動量に対して最大値、中央値、最小値の３段階を基本とするが、変動させるパラメータの数が少なく、原画像の全体枚数がそれほど多くならない場合には、変動位置のステップを４段階以上に設定してもよい。
【００７０】
図７に示すように、コンピュータ６２０のＣＰＵ７０２は、ＲＯＭ７０３、ＲＡＭ７０４、ハードディスク７０５、インターフェース７０６、入力部６１０、出力部６１１、表示部６０９などの構成要素にバス結合されている。
【００７１】
カメラ６０１の撮影画像の画像データは、入力部６１０へ入力される。カメラ６０１は、ワーク６０２を撮影して撮影画像を、原画像のデジタルデータへ変換する。
【００７２】
ＣＰＵ７０２は、マイクロプロセッサからなり、データの計算・加工を行う。ＣＰＵ７０２は、ＲＯＭ７０３に記憶されたプログラムを実行し、ＲＡＭ７０４、ハードディスク７０５、入力部６１０等からデータを受け取って演算・加工し、表示部６０９、ハードディスク７０５、または出力部６１１に出力する。
【００７３】
ＲＯＭ７０３は、一度書き込まれた情報を読み出すための記憶装置であり、各種制御のプログラム及びデータが格納されている。ＲＡＭ７０４は、半導体素子を利用した記憶装置であって、ＣＰＵ７０２が実行する処理のためのデータの一時記憶などに使用される。ハードディスク７０５は、大量のデータを保持する外部記憶装置である。
【００７４】
インターフェース７０６は、データと各種信号とを相互に変換し、信号線を通じてカメラ６０１、照明６０４を制御する。また、光ファイバ、ＬＡＮケーブル等を通じて外部のサーバー、コンピュータ、通信機と通信する。
【００７５】
表示部６０９は、ＣＲＴディスプレイ、液晶ディスプレイ、プラズマディスプレイなどである。入力部６１０は、キーボード、タッチパネル、マウスなどのポインティングデバイスを含む。出力部６１１は、処理装置１００に対するデータ出力のための出力端子を持っている。
【００７６】
（原画像の撮影）
図８は原画像の撮影制御のフローチャートである。図７を参照して図８に示すように、ＣＰＵ７０２は、上述したように、後のパターンマッチング処理を行うためのパラメータを読み込む（Ｓ２１）。
【００７７】
ＣＰＵ７０２は、ロボットアーム６０３を作動させて、ワーク６０２を撮像原点に移動する（Ｓ２２）。撮像原点は、カメラ６０１との関係において、図１に示す処理装置１００におけるワーク１０２と同じ撮像位置及び姿勢をワーク６０２に取らせた状態である。ＣＰＵ７０２は、撮影開始前に、複数の照明状態と複数の変動位置との組み合わせで規定される複数の撮影条件を設定する。
【００７８】
ＣＰＵ７０２は、ロボットアーム６０３を作動させて、ワーク６０２を上述した変動位置の１つに移動させる（Ｓ２３）。ＣＰＵ７０２は、照明６０４を調整して、ワーク６０２に上述した照明状態の１つを設定する（Ｓ２４）。ＣＰＵ７０２は、カメラ６０１を作動させて撮影条件ごとの原画像を撮影する（Ｓ２５）。
【００７９】
ＣＰＵ７０２は、撮影条件ごとの原画像の画像データを出力する（Ｓ２６）。出力する際に、撮影時にどのような撮影条件の変動を設定したかも画像データの付加情報として同時に出力する。付加情報は画像データのファイルに記載しても良いし、画像データに組み込んでも良いし、画像名に入れても良い。
【００８０】
ＣＰＵ７０２は、すべての照明状態で撮影を行ったか否かを判断する（Ｓ２７）。すべての照明状態が終了していない場合（Ｓ２７のＮｏ）、画像撮影部６０５は、プログラミングされた順序に従って残っている照明状態を次々に設定して（Ｓ２４）、効率的かつ漏れなく撮影を実行する（Ｓ２５）。そして、撮影したワーク画像の画像データを出力する（Ｓ２６）。
【００８１】
すべての照明状態が終了している場合（Ｓ２７のＹｅｓ）、画像撮影部６０５は、すべての変動位置で撮像を行ったか否かを判断する（Ｓ２８）。すべての変動位置が終了していない場合（Ｓ２８のＮｏ）、画像撮影部６０５は、プログラミングされた順序に従って残っている変動位置を次々に設定して（Ｓ２３）、効率的かつ漏れなく変動位置ごとの撮影を実行する（Ｓ２５）。そして、撮影した原画像の画像データを出力する（Ｓ２６）。
【００８２】
すべての変動位置で撮影が終了している場合（Ｓ２８のＹｅｓ）、原画像撮影処理を終了する。
【００８３】
（原画像の画像処理）
図６に示すように、画像記録部６０６は、画像撮影部６０５により撮影された撮影条件ごとの原画像の画像データを記録する。画像記録部６０６に記録された原画像の画像データは特徴量選択部６０８に入力される。特徴量選択部６０８は、画像記録部６０６で記録された原画像の画像データから特徴となるエッジ画像を抽出し、エッジ画像の中から基準画像となりうるエッジを選択する。
【００８４】
基準画像生成部６０７は、特徴量選択部６０８によって作成された撮影条件ごとの第一段階の基準画像の倍率に変動を加えて複数段階の倍率を持たせた第二段階の基準画像を作成する。出力部６１１は、基準画像生成部６０７で作成された基準画像のセットを処理装置１００へ送信する。
【００８５】
表示部６０９は、基準画像の選択過程、画像形成処理の途中経過、パターンマッチング処理に伴うマッチングスコア等を表示する。入力部６１０は、カメラ６０１以外にも、処理装置１００や記録媒体やネットワークサーバー等からワーク６０２の原画像の画像データを入力可能である。入力部６１０から入力された原画像の画像データは特徴量選択部６０８に入力される。特徴量選択部６０８は、画像記録部６０６で記録された画像データ以外の原画像の画像データからエッジ画像を抽出し、その中から基準画像となりうるエッジを選択することも可能である。
【００８６】
（特徴量選択処理）
図９は特徴量選択処理のフローチャートである。図９に示すように、ＣＰＵ７０２は、後のパターンマッチング処理を行うためのパラメータを読み込む（Ｓ３１）。ＣＰＵ７０２は、ハードディスク７０５から原画像の画像データを取得する（Ｓ３２）。
【００８７】
ＣＰＵ７０２は、取得した原画像の画像データからエッジ画像を抽出する（Ｓ３３）。ＣＰＵ７０２は、画像のエッジの抽出条件を設定して１枚の原画像からエッジを抽出する。そして、抽出されたエッジを用いて他の原画像をパターンマッチング処理してマッチングスコアを求め、抽出されたエッジとすべての原画像とのマッチングスコアが所定の基準を満たすようにエッジの抽出条件を修正する。原画像の画像データからエッジ画像を抽出する方法は、上述したワーク画像からエッジ画像を抽出する方法と同じなので説明を省略する。
【００８８】
ＣＰＵ７０２は、抽出したエッジ画像の候補を表示部６０９に表示して、作業者にエッジ画像上で基準画像となりうるエッジを選択させる（Ｓ３４）。ＣＰＵ７０２は、原画像を画像処理して作成した基準画像の複数の候補を、表示部６０９を通じてユーザーが選択可能に表示させる。ＣＰＵ７０２は、基準画像の候補を表示部６０９によりユーザーが編集可能に表示させる。経験を積んだ作業者が、表示部６０９の画像上に表示されているエッジ画像を見ながら、画像処理及びエッジ選択を行うことで、前述した変動要素に対してロバスト性の高いエッジ画像を作成することができる。
【００８９】
ＣＰＵ７０２は、表示部６０９に表示した原画像のエッジ画像上で作業者によって必要なエッジが選択されると、選択されたエッジ画像を用いて、ハードディスク７０５の関連する原画像をパターンマッチング処理する。ＣＰＵ７０２は、パターンマッチングが成功すると、マッチングスコアを演算して保存する（Ｓ３５）。
【００９０】
ＣＰＵ７０２は、撮影条件の異なる同一ワークの原画像のすべてに対してマッチングスコアが保存されるまで（Ｓ３６のＮｏ）、ハードディスク７０５から撮影条件の異なる次の原画像を取得して、パターンマッチング処理を実行する（Ｓ３５）。
【００９１】
ＣＰＵ７０２は、撮影条件の異なる同一ワークの原画像のすべてに対してマッチングスコアが保存されると（Ｓ３６のＹｅｓ）、保存されたすべてのマッチングスコアを閾値に比較する（Ｓ３７）。
【００９２】
マッチングスコアが閾値よりも小さい原画像画像がある場合（Ｓ３７のＮｏ）、ＣＰＵ７０２は、「エッジ画像の選択が不適当である」旨と「抽出したエッジ画像」とを表示部６０９に再び表示して、作業者にエッジの再選択を促す（Ｓ３４）。
【００９３】
しかし、すべての原画像についてマッチングスコアが閾値を満たしている場合（Ｓ３７のＹｅｓ）、ＣＰＵ７０２は、選択されたエッジ画像を表示部６０９に表示させ、出力部６１１に記録させる（Ｓ３８）。
【００９４】
このような処理（Ｓ３１〜Ｓ３８）を、画像記録部６０６に記録されたすべての撮影条件の原画像の画像データについて繰り返すことで、撮影条件の変動に対してロバスト性の高いエッジ画像からなる基準画像が選択される。
【００９５】
（倍率変動）
図１０は基準画像のセットの説明図である。図１１は基準画像の倍率の説明図である。図１１中、（ａ）は原画像から抽出されたエッジ、（ｂ）は０．９８倍に縮小した基準画像、（ｃ）は１．００倍の基準画像、（ｄ）は１．０２倍に拡大した基準画像である。
【００９６】
作成装置の一例である基準画像作成装置６００は、図１０の（ａ）に示すように、位置変動と照明状態とを異ならせて多数の原画像Ｇを取得し、原画像Ｇを画像処理して撮影条件ごとの基準画像Ｋ１を作成する。ここでは、位置変動の個数を３つとしているが、実際には、位置変動の個数は、ｘ，ｙ，ｚ方向に各三段階、Ｒｘ，Ｒｙ，Ｒｚ周りの回転に各二段階の乗数である７２個である。
【００９７】
基準画像作成装置６００は、カメラ６０１によりワーク２００を撮影して取得した原画像Ｇを画像処理して、パターンマッチング処理に用いる基準画像Ｋ２を作成する。しかし、第１カメラの一例であるカメラ６０１は、第２カメラの一例であるカメラ１０１とは異なる。このため、カメラ６０１で撮影した原画像から作成した基準画像は、カメラ１０１で撮影したワーク画像とパターンマッチング処理した際に、原画像とワーク画像の倍率差に基づくマッチングスコアの低下を生じる。マッチングスコアが低下すると、パターンマッチング精度が低下したり、パターンマッチングが不可能になったりする。
【００９８】
そこで、実施の形態１では、図１１の（ｂ）、（ｃ）、（ｄ）に示すように、倍率をｎ段階に異ならせたｎ個の基準画像Ｋ２のセットを準備している。基準画像作成装置６００は、図１０の（ｂ）に示すように、例えば基準画像Ｋ１の倍率を三段階に変化させた３セットの基準画像Ｋ２を作成する。
【００９９】
そして、処理装置１００は、図１０の（ｃ）に示すように、ｎセットの基準画像Ｋ２の中から、ワーク画像Ｗにスケールが合った１つの倍率の基準画像Ｋ２のセットを選択する。処理装置１００は、原画像Ｇよりも狭い位置変動範囲と照明状態の範囲でワーク画像Ｗを取得して、１セットの基準画像Ｋ２を用いたパターンマッチング処理を行い、処理結果に基づいてワーク２００の計測・検査を実行する。
【０１００】
処理装置１００は、図１１の（ｃ）に示すように、マッチングスコアが最も高くなる倍率の基準画像Ｋ２のセットを選択して、ワーク画像Ｗのパターンマッチング処理を行う。処理装置１００は、倍率が異なるｎ段階の基準画像のセットの中から最もマッチングスコアが高い基準画像を含む基準画像のセットを用いてパターンマッチング処理を含むワーク２００の計測・検査を行う。
【０１０１】
第一段階の基準画像Ｋ１は、原画像Ｇを画像処理して適正に選択されたエッジ画像Ｇ２である。基準画像生成部６０７は、第一段階の基準画像Ｋ１に対して複数の倍率で拡大縮小を行うことにより、第二段階の基準画像Ｋ２を作成する。
【０１０２】
図１１の（ａ）に示すように、特徴量選択部６０８が１つのエッジ画像Ｇ２を基準画像生成部６０７に転送する。図１１の（ｃ）に示すように、基準画像生成部６０７は、エッジ画像Ｇ２の中で基準画像Ｋ１とする範囲全体を包含する最小矩形を作成する。図１１の（ｂ）、（ｄ）に示すように、基準画像生成部６０７は、最小矩形の中心の位置を拡大縮小の原点として画像倍率を変化させることにより、ｎ個の第二段階の基準画像Ｋ２を作成する。
【０１０３】
ここで、拡大縮小の倍率の幅は、カメラのＷＤとカメラのピント位置の個体差のずれから算出する。例えば、カメラのＷＤが６００ｍｍ、カメラのピント位置の個体差が±６ｍｍの場合、２つのカメラで最も差が大きくなる場合でも対応できるよう、拡大縮小の倍率範囲を０．９８倍〜１．０２倍に定めて基準画像Ｋ２を生成する。
【０１０４】
また、カメラの設置位置のずれなどカメラの個体差以外のずれ要因がある場合には、それも考慮した拡大縮小の倍率の幅に換算する。拡大縮小の刻み幅は任意の幅であり、ユーザーが指定してもよいし、メモリ使用量や処理速度から決めても良い。
【０１０５】
（基準画像セット作成処理）
図１２は基準画像の作成処理のフローチャートである。図７を参照して図１２に示すように、ＣＰＵ７０２は、後のパターンマッチング処理を行うためのパラメータを読み込む（Ｓ４１）。
【０１０６】
ＣＰＵ７０２は、ハードディスク７０５から撮影条件ごとの基準画像を読み込む（Ｓ４２）。ＣＰＵ７０２は、読み込んだ１つの第一段階の基準画像に対して、複数の倍率で拡大縮小を行って複数の第二段階の基準画像を生成する（Ｓ４３）。
【０１０７】
ＣＰＵ７０２は、同一倍率で撮影条件が異なる基準画像を基準画像のセットとして登録する（Ｓ４４）。ＣＰＵ７０２は、登録された基準画像のセットを処理装置１００へ出力する（Ｓ４５）。基準画像作成装置６００で出力された基準画像のセットが処理装置１００にダウンロードされる。
【０１０８】
以上説明したように、画像処理部の一例であるコンピュータ６２０は、第１画像処理工程に続いて第２画像処理工程を実行して、撮影条件ごとの原画像を画像処理することにより複数段階の基準画像を作成する。第１画像処理工程では、コンピュータ６２０が、撮影工程により取得した複数種類の撮影条件に対応する複数種類の原画像をそれぞれ画像処理して撮影条件ごとの基準画像を作成する。第２画像処理工程では、コンピュータ６２０が、撮影条件ごとの原画像のそれぞれについて、５％以内の倍率差で複数段階に倍率を異ならせた基準画像のセットを作成する。
【０１０９】
なお、最高倍率と最低倍率の差を５％としたことは、倍率差として５０％、２５％、２００％を含まない意味である。低倍率の基準画像から高倍率の基準画像へ切り替えることで、パターンマッチングの演算量を削減する公知の技術を含まないためである。
【０１１０】
（実施の形態１の効果）
実施の形態１では、現場の処理装置１００とは別に設けた基準画像作成装置６００により作成された基準画像のグループを使用して、処理装置１００でワークの計測・検査を実行することが可能である。そのため、現場での基準画像の作成作業を大幅に削減でき、ある程度経験を積んだ作業者が、処理装置１００に出向いて基準画像を作成する必要がない。処理装置１００において基準画像の問題が生じた場合、基準画像作成装置６００において、処理装置１００で発生した問題を再現して、基準画像の検討を行い、新たな原画像を撮影して、基準画像生成部６０７で新たな基準画像を作成することができる。この間、処理装置１００は、問題にならない範囲で稼働させ続けることができるので、基準画像の設定に伴う処理装置１００の停止を最低限に抑えて、処理装置１００の稼働率を向上させることができる。
【０１１１】
実施の形態１では、現場の処理装置１００では偶発的に発生するが、処理装置１００で基準画像を作成する際には定常的に発生しにくい照明変動、角度変動等も、カメラ６０１でワーク６０２を撮影する際にきちんと評価して基準画像に反映できる。
【０１１２】
実施の形態１では、現場の処理装置１００では、意図的に発生しにくい突発的な撮影環境の変動等も事前に評価してロバスト性の高い基準画像を作成することが可能になる。生産現場では、偶発的に発生するが、モデル作成時において、現場で定常的に再現することが難しい変動、たとえば、あおり方向の画像変動に対しても、事前に対応できるロバスト性の高い基準画像を作成することができる。ロバスト性の高い基準画像を素早く作成することができるため、ワークの誤検知を減らして、計測・検査の精度を高めることができる。
【０１１３】
実施の形態１では、現場の処理装置１００とは別に設けた基準画像作成装置６００により基準画像を作成したことにより生じる基準画像の誤差を三段階の倍率の基準画像により吸収する。そのため、作業者は、設計工程と基準画像の作成を並行して行うことができる。その結果、装置の設計から試運転終了までの全体の期間が短縮される。
【０１１４】
実施の形態１では、既に作成されたロバスト性の高い基準画像の中から自動選択されて基準画像が選択されるので、生産現場で実行されるマッチング処理の回数が抑制されて、処理の高速化、装置の稼働率向上が見込める。
【０１１５】
＜その他の実施の形態＞
本発明は、特許請求の範囲に表現された技術思想の範囲を逸脱することなく、種々の変形、追加、および省略が可能である。
【０１１６】
実施の形態１では、基準選択部１０５で選択された基準画像を測定検査部１０７でそのまま使用した。しかし、選択された基準画像に対して縦横に拡大縮小した基準画像を測定検査部１０７において基準画像として使用してもよい。
【０１１７】
実施の形態１では、パターンマッチング処理はピクセル単位で行っていたが、これに限らず、精度が必要な場合には、サブピクセル単位でパターンマッチング処理を行ってもよい。
【０１１８】
実施の形態１では、パターンマッチング処理は１つの検出位置につき１種類のマッチングスコアを算出していたが、これに限らず、１つの検出位置に対し基準画像の角度別のスコアを保持していてもよい。
【０１１９】
実施の形態１では、基準画像は、エッジ画像によるものを説明したが、パターンマッチングに関しては、エッジ画像以外の画像を使用してもよい。例えば、正規化相関マッチングにおいても、マッチング領域を、同様にして決めることができる。
【０１２０】
実施の形態１では、基準画像作成装置の方で、処理装置と基準画像作成装置の機差を吸収するための倍率の異なる基準画像を作成したが、複数の基準画像の作成を処理装置側で行ってもよい。
【０１２１】
実施の形態１では、基準画像作成装置と処理装置との機差を吸収するための変動要素は、カメラとワークの距離差やレンズの焦点距離差を想定して、拡大縮小のみとした。しかし、カメラ設置の位置精度を考慮して、さらに、変動要素に回転要素を加えてもよい。
【０１２２】
実施の形態１では、基準画像の作成時に作業者が画面上に表示されているエッジ画像を見ながら選択していたが、エッジをワークの３Ｄモデルのエッジと共通しているエッジ画像のみを表示部６０９に表示しても良い。基準画像のエッジの選択及び編集は作業者に依らず、コンピュータ６２０の画像処理プログラムによって自動的に実行させてもよい。
【０１２３】
実施の形態１では、基準画像の作成を原画像から抽出したエッジ画像で行っていたが、これに限らず、原画像をフィルタ処理やノイズ挿入、輝度変換などでシミュレートした画像を用いて基準画像を作成してもよい。
【０１２４】
実施の形態１では、照明６０４の位置を固定として、照明の明るさのみを変動させて原画像を撮影したが、これに限らず、照明６０４を可動式または複数配置として、様々な方向からの明るさ変動を設定可能にしてもよい。スポットライトのようなものを追加しても良い。
【０１２５】
実施の形態１では、パターンマッチング処理のマッチングスコアが閾値スコアを超えたものの中から一番高いものを基準画像として選択した。しかし、これに限らず、たとえばマッチングスコアの高いものから複数選択したり、マッチングスコアの高いものを複数表示させて作業者に選ばせたりしてもよい。
【０１２６】
実施の形態１では、ロボットアーム６０３は、コンピュータ６２０によって任意の位置姿勢でワーク６０２を把持することができる。しかし、これに限らず、任意の位置姿勢でワーク６０２を把持できるようなものであれば、自動ステージを組み合わせた６軸のステージなどでもよい。
【０１２７】
実施の形態１では、カメラ６０１により原画像の撮影倍率を変動させて、その撮影倍率のまま画像処理することで倍率の異なる基準画像のセットを作成してもよい。
【符号の説明】
【０１２８】
１００  処理装置、１０１、６０１  カメラ
１０２、６０２  ワーク、１０３、６０６  画像記録部
１０４  入力部、１０５  基準選択部、１０６  基準登録部
１０７  測定検査部、１０８、６０９  表示部
１０９、６１１  出力部、１１０、６０４  照明、１１２、６０５  画像撮影部
１２０、６２０  コンピュータ、２０１、６１０  入力部
２０２、７０２  ＣＰＵ、２０３、７０３  ＲＯＭ
２０４、７０４  ＲＡＭ、２０５、７０５  ハードディスク
２０６、７０６  インターフェース、６００  基準画像作成装置
６０３  ロボットアーム、６０７  基準画像生成部、６０８  特徴量選択部
【図１】
0006765791.tif 000006
【図２】
0006765791.tif 000007
【図３】
0006765791.tif 000008
【図４】
0006765791.tif 000009
【図５】
0006765791.tif 000010
【図６】
0006765791.tif 000011
【図７】
0006765791.tif 000012
【図８】
0006765791.tif 000013
【図９】
0006765791.tif 000014
【図１０】
0006765791.tif 000015
【図１１】
0006765791.tif 000016
【図１２】
0006765791.tif 000017