(57)【特許請求の範囲】
【請求項１】
自動露光調整を行って検査部位を有する検査対象物体を撮像し、前記検査部位に相当する画像領域である検査領域が含まれる検査対象物体画像の画像データを生成する撮像部と、
前記撮像部を可動に支持するロボット本体と、
前記撮像部が生成する前記画像データから、前記検査領域の輝度値を検出する検査領域輝度値検出部と、
前記検査対象物体のテンプレート画像データを記憶するテンプレート画像記憶部と、
前記テンプレート画像記憶部が記憶する前記テンプレート画像データにおいて、前記検査領域に対応する領域の近傍であり、且つ空間周波数成分の高周波成分が閾値よりも小さく且つ反射率が閾値よりも小さい領域を参照領域として決定する参照領域決定部と、
前記参照領域決定部が決定する前記参照領域に対応する前記画像データの領域の輝度値を検出する参照領域輝度値検出部と、
前記検査領域輝度値検出部が検出する前記検査領域の輝度値と前記参照領域輝度値検出部が検出する前記参照領域の輝度値との比に基づいて、前記検査領域の状態を判定する判定部と、
を備えることを特徴とするロボット装置。
【請求項２】
前記テンプレート画像記憶部が記憶する前記テンプレート画像データから特徴点を抽出するテンプレート画像特徴点抽出部と、
前記撮像部が生成する前記画像データから特徴点を抽出する検査画像特徴点抽出部と、
前記テンプレート画像特徴点抽出部が抽出する特徴点と前記検査画像特徴点抽出部が抽出する特徴点とに基づいて、前記画像データを透視投影変換して変換画像データを生成する変換画像生成部と、
を備え、
前記ロボット本体は、三次元空間内において前記撮像部を可動に支持し、
前記検査領域輝度値検出部は、前記変換画像生成部が生成する前記変換画像データから、前記検査領域に対応する領域の輝度値を検出し、
前記参照領域輝度値検出部は、前記変換画像データから、前記参照領域決定部が決定する前記参照領域に対応する領域の輝度値を検出する
ことを特徴とする請求項１記載のロボット装置。
【請求項３】
検査領域を含む画像データから、前記検査領域の輝度値を検出する検査領域輝度値検出部と、
検査対象物体のテンプレート画像データを記憶するテンプレート画像記憶部と、
前記テンプレート画像記憶部が記憶する前記テンプレート画像データにおいて、前記検査領域に対応する領域の近傍であり、且つ空間周波数成分の高周波成分が閾値よりも小さく且つ反射率が閾値よりも小さい領域を参照領域として決定する参照領域決定部と、
前記参照領域決定部が決定する前記参照領域に対応する前記画像データの領域の輝度値を検出する参照領域輝度値検出部と、
前記検査領域輝度値検出部が検出する前記検査領域の輝度値と前記参照領域輝度値検出部が検出する前記参照領域の輝度値との比に基づいて、前記検査領域の状態を判定する判定部と、
を備えることを特徴とする検査装置。
【請求項４】
検査対象物体のテンプレート画像データを記憶するテンプレート画像記憶部を備えたコンピューターを、
検査領域を含む画像データから、前記検査領域の輝度値を検出する検査領域輝度値検出部と、
前記テンプレート画像記憶部が記憶する前記テンプレート画像データにおいて、前記検査領域に対応する領域の近傍であり、且つ空間周波数成分の高周波成分が閾値よりも小さく且つ反射率が閾値よりも小さい領域を参照領域として決定する参照領域決定部と、
前記参照領域決定部が決定する前記参照領域に対応する前記画像データの領域の輝度値を検出する参照領域輝度値検出部と、
前記検査領域輝度値検出部が検出する前記検査領域の輝度値と前記参照領域輝度値検出部が検出する前記参照領域の輝度値との比に基づいて、前記検査領域の状態を判定する判定部と、
として機能させるための検査プログラム。
【請求項５】
検査領域輝度値検出部が、検査領域を含む画像データから、前記検査領域の輝度値を検出する検査領域輝度値検出ステップと、
参照領域決定部が、検査対象物体のテンプレート画像データを記憶するテンプレート画像記憶部が記憶する前記テンプレート画像データにおいて、前記検査領域に対応する領域の近傍であり、且つ空間周波数成分の高周波成分が閾値よりも小さく且つ反射率が閾値よりも小さい領域を参照領域として決定する参照領域決定ステップと、
参照領域輝度値検出部が、前記参照領域決定ステップにおいて前記参照領域決定部が決定する前記参照領域に対応する前記画像データの領域の輝度値を検出する参照領域輝度値検出ステップと、
前記検査領域輝度値検出ステップにおいて前記検査領域輝度値検出部が検出する前記検査領域の輝度値と前記参照領域輝度値検出ステップにおいて前記参照領域輝度値検出部が検出する前記参照領域の輝度値との比に基づいて、判定部が前記検査領域の状態を判定する判定ステップと、
を有することを特徴とする検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット装置、検査装置、検査プログラム、および検査方法に関する。
【背景技術】
【０００２】
認識対象物の検査を画像認識処理に基づいて行う技術が知られている（例えば、特許文献１参照）。この文献に開示された画像認識装置は、認識対象物を撮像したカラー画像から、複数の色成分を別々に抽出し、成分ごとに二値化して合成し、この合成画像に基づいて認識対象物の有無を判定するものである。具体的には、この画像認識装置は、亜鉛メッキが施されて且つ黄色クロメート処理されたねじを認識対象物としたときに、赤みを帯びた黄色と緑みを帯びた黄色とをそれぞれ抽出し、成分ごとに二値化して合成した合成画像からねじ頭部の有無を認識する装置である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平２−１６６５６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の画像認識装置では、撮像された画像におけるねじ頭部の画像以外の画像領域にねじの色合いと同様の色合いの画像が含まれている場合、その画像をねじとして誤認識するおそれがある。また、抽出対象の色成分は、あらかじめ決定されたものであり、例えば照明や外光の条件や撮影の条件等に応じて変化させるものではない。よって、例えば、照明や外光の照度に応じて露光を自動的に調整する撮像装置を用いた場合、照明環境の変化に伴って露光のダイナミックレンジが変動するため、ねじの認識率が変化してしまう。
【０００５】
本発明は、上記問題を解決するためになされたものであり、照明条件や撮影条件の変化に対して頑健な外観検査を行うことができる、ロボット装置、検査装置、検査プログラム、および検査方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
［１］上記の課題を解決するため、本発明の一態様であるロボット装置は、自動露光調整を行って検査部位を有する検査対象物体を撮像し、前記検査部位に相当する画像領域である検査領域が含まれる検査対象物体画像の画像データを生成する撮像部と、前記撮像部を可動に支持するロボット本体と、前記撮像部が生成する前記画像データから、前記検査領域の輝度値を検出する検査領域輝度値検出部と、前記検査対象物体のテンプレート画像データを記憶するテンプレート画像記憶部と、前記テンプレート画像記憶部が記憶する前記テンプレート画像データにおいて、前記検査領域に対応する領域の近傍であり、且つ空間周波数成分の高周波成分が閾値よりも小さく且つ反射率が閾値よりも小さい領域を参照領域として決定する参照領域決定部と、前記参照領域決定部が決定する前記参照領域に対応する前記画像データの領域の輝度値を検出する参照領域輝度値検出部と、前記検査領域輝度値検出部が検出する前記検査領域の輝度値と前記参照領域輝度値検出部が検出する前記参照領域の輝度値との比に基づいて、前記検査領域の状態を判定する判定部と、を備えることを特徴とする。
ここで、検査領域の近傍の参照領域とは、検査領域の構造的な状態に類似することの第１の条件と、検査領域からの光反射の状態に類似することの第２の条件とをともに満たすことが可能な程度の周辺領域を指す。例えば、検査対象物体の外形において、検査領域に相当する部位の機構的な構造とその検査領域に隣接する周辺領域に相当する部位の構造とは同一または類似である場合が多い。また、外光や室内光の検査領域に相当する部位からの反射の状態と周辺領域に相当する部位からの反射の状態とは、両領域の距離が近ければ類似するものとみなすことができる。よって、検査領域の近傍の領域は、上記の第１および第２の条件を満たすことができる領域を、例えば、当該検査領域の中心位置から予め決定された半径の長さで示される円形領域で区分した領域とすることができる。
また、撮像部が例えば照明の照度に応じて露光のダイナミックレンジを自動調整するカメラである場合、判定部は、検査領域の輝度値と参照領域の輝度値との比に基づいて検査領域の状態を判定することが好ましい。この場合、判定部は、例えば検査領域の輝度値を参照領域の輝度値で除算することにより比を求める。例えば、比が閾値以上の値である場合、判定部は、検査領域に検査物（例えば、ねじの頭部）があると判定する。また、比がその閾値未満の値である場合、判定部は、検査領域に検査物がないと判定する。
また、撮像部が例えば照明の照度に応じて露光のダイナミックレンジを自動調整しないカメラである場合、判定部は、検査領域の輝度値と参照領域の輝度値との差に基づいて検査領域の状態を判定してもよい。この場合、判定部は、例えば検査領域の輝度値と参照領域の輝度値との差を求め、この差が閾値以上の値である場合、検査領域に検査物があると判定する。また、差がその閾値未満の値である場合、判定部は、検査領域に検査物がないと判定する。
このように構成したことにより、ロボット装置は、外光や照明による影響を抑えて、正しく検査部位の状態の検査を行うことができる。
また、ロボット装置は、上記第１の条件である検査領域の構造的な状態に類似する条件を満たした参照領域の輝度値を用いることができる。
また、ロボット装置は、上記第２の条件である検査領域からの光反射の状態に類似する条件を満たした参照領域の輝度値を用いることができる。
また、ロボット装置は、検査対象物体のテンプレート画像データをテンプレート画像記憶部に記憶させることにより、参照領域を自動的に決定することができる。
【０００７】
［２］上記［１］記載のロボット装置において、前記テンプレート画像記憶部が記憶する前記テンプレート画像データから特徴点を抽出するテンプレート画像特徴点抽出部と、前記撮像部が生成する前記画像データから特徴点を抽出する検査画像特徴点抽出部と、前記テンプレート画像特徴点抽出部が抽出する特徴点と前記検査画像特徴点抽出部が抽出する特徴点とに基づいて、前記画像データを透視投影変換して変換画像データを生成する変換画像生成部と、を備え、前記ロボット本体は、三次元空間内において前記撮像部を可動に支持し、前記検査領域輝度値検出部は、前記変換画像生成部が生成する前記変換画像データから、前記検査領域に対応する領域の輝度値を検出し、前記参照領域輝度値検出部は、前記変換画像データから、前記参照領域決定部が決定する前記参照領域に対応する領域の輝度値を検出することを特徴とする。
このように構成したことにより、ロボット装置は、三次元空間内の任意方向から撮像した画像データを用いて、検査部位の状態の検査を行うことができる。
【０００８】
［３］上記の課題を解決するため、本発明の一態様である検査装置は、検査領域を含む画像データから、前記検査領域の輝度値を検出する検査領域輝度値検出部と、検査対象物体のテンプレート画像データを記憶するテンプレート画像記憶部と、前記テンプレート画像記憶部が記憶する前記テンプレート画像データにおいて、前記検査領域に対応する領域の近傍であり、且つ空間周波数成分の高周波成分が閾値よりも小さく且つ反射率が閾値よりも小さい領域を参照領域として決定する参照領域決定部と、前記参照領域決定部が決定する前記参照領域に対応する前記画像データの領域の輝度値を検出する参照領域輝度値検出部と、前記検査領域輝度値検出部が検出する前記検査領域の輝度値と前記参照領域輝度値検出部が検出する前記参照領域の輝度値との比に基づいて、前記検査領域の状態を判定する判定部と、を備えることを特徴とする。
【０００９】
［４］上記の課題を解決するため、本発明の一態様である検査プログラムは、検査対象物体のテンプレート画像データを記憶するテンプレート画像記憶部を備えたコンピューターを、検査領域を含む画像データから、前記検査領域の輝度値を検出する検査領域輝度値検出部と、前記テンプレート画像記憶部が記憶する前記テンプレート画像データにおいて、前記検査領域に対応する領域の近傍であり、且つ空間周波数成分の高周波成分が閾値よりも小さく且つ反射率が閾値よりも小さい領域を参照領域として決定する参照領域決定部と、前記参照領域決定部が決定する前記参照領域に対応する前記画像データの領域の輝度値を検出する参照領域輝度値検出部と、前記検査領域輝度値検出部が検出する前記検査領域の輝度値と前記参照領域輝度値検出部が検出する前記参照領域の輝度値との比に基づいて、前記検査領域の状態を判定する判定部と、として機能させる。
【００１０】
［５］上記の課題を解決するため、本発明の一態様である検査方法は、検査領域輝度値検出部が、検査領域を含む画像データから、前記検査領域の輝度値を検出する検査領域輝度値検出ステップと、参照領域決定部が、検査対象物体のテンプレート画像データを記憶するテンプレート画像記憶部が記憶する前記テンプレート画像データにおいて、前記検査領域に対応する領域の近傍であり、且つ空間周波数成分の高周波成分が閾値よりも小さく且つ反射率が閾値よりも小さい領域を参照領域として決定する参照領域決定ステップと、参照領域輝度値検出部が、前記参照領域決定ステップにおいて前記参照領域決定部が決定する前記参照領域に対応する前記画像データの領域の輝度値を検出する参照領域輝度値検出ステップと、前記検査領域輝度値検出ステップにおいて前記検査領域輝度値検出部が検出する前記検査領域の輝度値と前記参照領域輝度値検出ステップにおいて前記参照領域輝度値検出部が検出する前記参照領域の輝度値との比に基づいて、判定部が前記検査領域の状態を判定する判定ステップと、を有することを特徴とする。
【００１７】
よって、本発明の各態様によれば、照明条件や撮影条件の変化に対して頑健な外観検査を行うことができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の第１実施形態であるロボット装置におけるロボットと検査対象物体との概略の外観図である。
【図２】同実施形態であるロボット装置の概略の機能構成を表すブロック図である。
【図３】同実施形態における検査装置の機能構成を表すブロック図である。
【図４】同実施形態における変換画像生成部の機能構成を表すブロック図である。
【図５】テンプレート画像とこのテンプレート画像における検査領域の位置情報とを模式的に重ねて表した図である。
【図６】同実施形態において、検査装置がテンプレート画像特徴点データを生成する処理の手順を表すフローチャートである。
【図７】同実施形態において、検査装置が参照領域を決定する処理の手順を表すフローチャートである。
【図８】同実施形態において、撮像装置が撮像した検査対象物体の単一フレームの画像データについて、検査装置が検査物であるねじの欠品を検査する処理の手順を表すフローチャートである。
【図９】本発明の第２実施形態であるロボット装置の概略の機能構成を表すブロック図である。
【図１０】同実施形態における検査装置の機能構成を表すブロック図である。
【図１１】同実施形態における移動量取得部の機能構成を表すブロック図である。
【図１２】テンプレート画像データおよび画像データにおける検査対象物体画像と検査領域の位置情報とを模式的に重ねて表した図である。
【図１３】同実施形態において、撮像装置が撮像した検査対象物体の単一フレームの画像データについて、検査装置がねじの欠品を検査する処理の手順を表すフローチャートである。
【図１４】本発明の別の実施形態であるロボット装置におけるロボットと検査対象物体との概略の外観図である。
【発明を実施するための形態】
【００１９】
以下、本発明を実施するための形態について、図面を参照して詳細に説明する。
［第１の実施の形態］
図１は、本発明の第１実施形態であるロボット装置におけるロボットと検査対象物体との概略の外観図である。同図に示すように、ロボット１０は、ロボット本体１２に撮像装置（撮像部）１１が設けられて構成される。
【００２０】
ロボット本体１２は、撮像装置１１を可動に支持する。具体的には、ロボット本体１２は、地面に固定された支持台１２ａと、旋回可能および屈伸可能に支持台１２ａに連結されたアーム部１２ｂと、回動可能および首振り可能にアーム部１２ｂに連結されたハンド部１２ｃとを含んで構成される。ロボット本体１２は、例えば６軸の垂直多関節ロボットであり、支持台１２ａとアーム部１２ｂとハンド部１２ｃとの連係した動作によって６軸の自由度を有し、撮像部１１の位置および向きを三次元空間内で自在に変更することができる。
【００２１】
なお、ロボット本体１２は、撮像装置１１、工具、部品等を作業目的に応じて持ち替えるようにしてもよい。また、ロボット本体１２の自由度は６軸によるものに限られない。また、支持台１２ａは、壁や天井等、地面に対して固定された場所に設置してもよい。また、ロボット本体１２は、撮像装置１１を支持するアーム部１２ｂおよびハンド部１２ｃの他に、工具や部品を支持する図示しないアーム部およびハンド部を備え、これら複数のアーム部およびハンド部を独立的にまたは連動させて動かす構成としてもよい。
【００２２】
また、図１に示すように、例えばロボット１０のハンド部１２ｃ先端の可動範囲内には、外観検査の対象物である検査対象物体５が図示しない台上に載置されている。この検査対象物体５は、検査部位を有している。
すなわち、本実施形態であるロボット装置は、検査対象物体５の外観を検査して、検査部位の状態、例えば、検査部位に検査物があるか否かを検査する装置である。
本実施形態においては、検査部位がねじの取付け部位であり、検査物がねじの頭部（以下、単に「ねじ」と呼ぶこともある。）である例について説明する。
【００２３】
図２は、本実施形態であるロボット装置の概略の機能構成を表すブロック図である。同図に示すように、ロボット装置１は、ロボット１０と、検査装置２０と、制御装置３０とを備える。
ロボット１０は、図１にも示したように、撮像装置１１とロボット本体１２とを備える。
【００２４】
撮像装置１１は、例えば、照明の照度に応じて露光を自動的に調整し、例えば３０フレーム／秒（ｆｐｓ；ｆｒａｍｅ  ｐｅｒ  ｓｅｃｏｎｄ）のフレームレートで撮像し画像データを出力するモノクロ撮影またはカラー撮影が可能なビデオカメラ装置である。なお、撮像装置１１は、静止画カメラ装置でもよい。撮像装置１１は、制御装置３０から供給される撮像開始要求信号にしたがって、同図に示した検査対象物体５を撮像してその画像データを出力する。また、撮像装置１１は、制御装置３０から供給される撮像停止要求信号にしたがって、撮像動作を停止する。
ロボット本体１２は、前述したように、取り付けた撮像装置１１を三次元空間内で移動させるための装置である。
【００２５】
検査装置２０は、ロボット１０の撮像装置１１が連続して出力する画像データを順次または複数フレームおきに取り込む。そして、検査装置２０は、取り込んだ画像データごとに、この画像データに含まれる検査対象物体５の画像（検査対象物体画像）に対する視点（撮像方向）を、あらかじめ記憶したテンプレート画像データに含まれるテンプレート画像に対する視点に一致させるように当該画像データを変換する。そして、検査装置２０は、変換した画像データ（変換画像データ）における検査領域から検査物であるねじの頭部の有無を判定し、その検査結果データを出力する。
【００２６】
制御装置３０は、撮像装置１１に対して撮像開始要求信号や撮像停止要求信号等の制御信号を送信する。また、制御装置３０は、撮像装置１１の三次元空間内の撮影方向を変更するために、ロボット本体１２の姿勢を制御する。
【００２７】
図３は、検査装置２０の機能構成を表すブロック図である。同図に示すように、検査装置２０は、テンプレート画像記憶部２０１と、テンプレート画像特徴点抽出部２０２と、テンプレート画像特徴点記憶部２０３と、検査位置情報記憶部２０４と、参照領域決定部２０５と、参照位置情報記憶部２０６と、画像データ取得部２０７と、画像データ記憶部２０８と、検査画像特徴点抽出部２０９と、変換画像生成部２１０と、変換画像記憶部２１１と、検査領域輝度値検出部２１２と、参照領域輝度値検出部２１３と、判定部２１４とを備える。
【００２８】
テンプレート画像記憶部２０１は、検査対象物体５のリファレンス（例えば、検査対象物体５に正常にねじが取り付けられた状態のサンプル）を所定方向、例えば当該ねじの軸心の延長上から撮像して得られるテンプレート画像のデータであるテンプレート画像データを記憶する。このテンプレート画像データは、少なくとも輝度情報を有していればよい。つまり、テンプレート画像データは、モノクロの画像データでもカラー画像データでもよい。
【００２９】
テンプレート画像特徴点抽出部２０２は、テンプレート画像記憶部２０１からテンプレート画像データを読み込み、このテンプレート画像データから複数の特徴点を抽出して、各特徴点における画像特徴量とテンプレート画像上の位置情報とを対応付けたテンプレート画像特徴点データをテンプレート画像特徴点記憶部２０３に記憶させる。例えば、テンプレート画像特徴点抽出部２０２は、複数の画素を含む小領域ごとに輝度のガウス分布の状態を調べて特徴点を抽出する公知のＳＩＦＴ（Ｓｃａｌｅ−Ｉｎｖａｒｉａｎｔ  Ｆｅａｔｕｒｅ  Ｔｒａｎｓｆｏｒｍ）方式による処理を行ってＳＩＦＴ特徴量を求める。この場合、ＳＩＦＴ特徴量は、例えば１２８次元ベクトルで表される。
また、テンプレート画像特徴点抽出部２０２は、特徴点の抽出方式として、ＳＵＲＦ（Ｓｐｅｅｄ−Ｕｐ  Ｒｏｂｕｓｔ  Ｆｅａｔｕｒｅｓ）を適用してもよい。
テンプレート画像上の位置情報は、テンプレート画像の例えば左上端の位置を原点として得られる特徴点の位置ベクトルである。
【００３０】
テンプレート画像特徴点記憶部２０３は、テンプレート画像特徴点抽出部２０２が抽出した複数の特徴点それぞれにおける画像特徴量とテンプレート画像上の位置情報とを対応付けたテンプレート画像特徴点データを記憶する。
【００３１】
検査位置情報記憶部２０４は、テンプレート画像データにおける検査領域を特定する位置情報（検査位置情報）を記憶する。例えば、検査領域が検査部位であるねじの取付け部位（ねじ穴）に相当する円形領域である場合、検査位置情報記憶部２０４は、その円形領域の中心点の位置ベクトルとその円形領域の半径の長さとを検査位置情報として記憶する。なお、円形領域以外にも矩形領域であってもよい。
【００３２】
参照領域決定部２０５は、テンプレート画像記憶部２０１からテンプレート画像データを読み込み、検査位置情報記憶部２０４から検査位置情報を読み込む。そして、参照領域決定部２０５は、テンプレート画像データにおいて、検査位置情報によって特定される検査領域の近傍であり且つ平坦な領域を参照領域として決定し、この参照領域を特定する位置情報（参照位置情報）を参照位置情報記憶部２０６に記憶させる。検査領域の近傍の領域とは、検査領域の構造的な状態に類似することの第１の条件と、検査領域からの光反射の状態に類似することの第２の条件とをともに満たすことが可能な程度の周辺領域を指す。例えば、検査対象物体５の外形において、検査領域に相当する部位の機構的な構造とその検査領域に隣接する周辺領域に相当する部位の構造とは同一または類似である場合が多い。また、外光や室内光の検査領域に相当する部位からの反射の状態と周辺領域に相当する部位からの反射の状態とは、両領域の距離が近ければ類似するものとみなすことができる。よって、検査領域の近傍の領域は、上記の第１および第２の条件を満たすことができる領域を、例えば、当該検査領域の中心位置から予め決定された半径の長さで示される円形領域で区分した領域とすることができる。また、平坦な領域とは、検査対象物体５の外形において、例えば、ブラケットや電子部品等、立体的な構造物がなく、且つ光沢が少ない（反射率が所定レベル以下である。）状態の領域である。参照位置情報は、その円形領域の中心点の位置ベクトルとその円形領域の半径の長さとである。
【００３３】
具体例として、上記の第１の条件を満たすために、参照領域決定部２０５は、テンプレート画像データにおいて、検査領域の近傍の円形領域内から空間周波数成分があらかじめ決定された閾値よりも小さい第１の領域を検出する。また、上記の第２の条件を満たすために、参照領域決定部２０５は、テンプレート画像データにおいて、反射率が所定レベル以下である領域を光沢が少ない第２の領域として検出する。参照領域決定部２０５は、検出した第１および第２の領域またはいずれかの領域を参照領域として決定し、その参照領域を特定する参照位置情報を参照位置情報記憶部２０６に記憶させる。
上述したように、参照領域決定部２０５によれば、テンプレート画像記憶部２０１に記憶したテンプレート画像データに基づいて、参照領域を自動的に決定することができる。
【００３４】
参照位置情報記憶部２０６は、参照領域決定部２０５が決定した参照領域を特定するための参照位置情報を記憶する。
画像データ取得部２０７は、ロボット１０の撮像装置１１が連続して出力する画像データを順次または複数フレームおきに取り込み、画像データ記憶部２０８に記憶させる。
画像データ記憶部２０８は、画像データ取得部２０７が取り込んだ画像データを記憶する。
【００３５】
検査画像特徴点抽出部２０９は、画像データ記憶部２０８から画像データを読み込み、この画像データから複数の特徴点を抽出して、各特徴点における特徴量（検査画像特徴量）を変換画像生成部２１０に供給する。例えば、検査画像特徴点抽出部２０９は、テンプレート画像特徴点抽出部２０２と同様に、前記のＳＩＦＴ方式による処理を行ってＳＩＦＴ特徴量を求める。また、検査画像特徴点抽出部２０９は、特徴点の抽出方式として、前記のＳＵＲＦを適用してもよい。
【００３６】
変換画像生成部２１０は、検査画像特徴点抽出部２０９から供給される検査画像特徴量を取り込み、テンプレート画像特徴点記憶部２０３からテンプレート画像特徴点データを読み込み、画像データ記憶部２０８から画像データを読み込む。そして、変換画像生成部２１０は、検査画像特徴量とテンプレート画像データの画像特徴量との全ての組み合わせについてのユークリッド距離を求めることにより、検査画像特徴量とテンプレート画像データの画像特徴量とが対応関係にあるペア（対応ペア）を選定する。そして、変換画像生成部２１０は、画像データに含まれる検査対象物体画像に対する視点をテンプレート画像データに含まれるテンプレート画像に対する視点に一致させるように、それら対応ペアと画像データとに基づいて変換画像データを生成し、この変換画像データを変換画像記憶部２１１に記憶させる。
変換画像記憶部２１１は、変換画像生成部２１０が生成した変換画像データを記憶する。
【００３７】
検査領域輝度値検出部２１２は、変換画像記憶部２１１から変換画像データを読み込み、検査位置情報記憶部２０４から検査位置情報を読み込む。そして、検査領域輝度値検出部２１２は、変換画像データにおいて検査位置情報によって特定される検査領域の輝度値（検査領域輝度値）を検出して判定部２１４に供給する。検査領域輝度値は、例えば、検査領域の各画素の輝度値の平均値である。
【００３８】
参照領域輝度値検出部２１３は、変換画像記憶部２１１から変換画像データを読み込み、参照位置情報記憶部２０６から参照位置情報を読み込む。そして、参照領域輝度値検出部２１３は、変換画像データにおいて参照位置情報によって特定される参照領域の輝度値（参照領域輝度値）を検出し判定部２１４に供給する。参照領域輝度値は、例えば、参照領域の各画素の輝度値の平均値である。
【００３９】
判定部２１４は、検査領域輝度値検出部２１２から供給される検査領域輝度値を取り込み、参照領域輝度値検出部２１３から供給される参照領域輝度値を取り込む。そして、判定部２１４は、検査領域輝度値と参照領域輝度値とに基づいて、検査領域に検査物（ねじ）があるか否かを判定し、その判定結果である検査結果データを出力する。具体的には、判定部２１４は、例えば下記の式（１）によって輝度比ｌｓ’を計算する。ただし、式（１）において、ｌｓは検査領域輝度値であり、ｌｒは参照領域輝度値である。
【００４０】
【数１】
0005799516.tif 000002
【００４１】
輝度比ｌｓ’があらかじめ決定された閾値以上の値である場合、判定部２１４は、検査領域にねじがあると判定し、ねじがあることを表す情報（例えば、“１”）を検査結果データとして出力する。また、輝度比ｌｓ’がその閾値未満の値である場合、判定部２１４は、検査領域にねじがないと判定し、ねじがないことを表す情報（例えば、“０”）を検査結果データとして出力する。
【００４２】
実際、検査領域にねじがある場合の検査領域輝度値ｌｓは、検査領域にねじがない場合の検査領域輝度値ｌｓよりも高い。しかし、例えば、撮像装置２０が照明や外光の照度に応じて露光のダイナミックレンジを自動的に調整するカメラ装置である場合、撮像装置２０自体の撮影条件の変化によって検査領域輝度値ｌｓ自体が変化してしまう。よって、検査領域の検査領域輝度値ｌｓとその検査領域の近傍にある参照領域の参照領域輝度値ｌｒとの比を求めることにより、照明条件や撮影条件の変化に対してぶれが少ない評価値を得ることができる。
【００４３】
ただし、撮像装置２０が、露光のダイナミックレンジを自動調整する動作を行わないカメラ装置の場合は、判定部２１４は、検査領域輝度値ｌｓと参照領域輝度値ｌｒとの差を求めてねじの有無を判定してもよい。具体的には、検査領域輝度値ｌｓと参照領域輝度値ｌｒとの差があらかじめ決定された閾値以下の値である場合、判定部２１４は、検査領域にねじがあると判定し、ねじがあることを表す情報（例えば、“１”）を検査結果データとして出力する。また、差がその閾値を超える値である場合、判定部２１４は、検査領域にねじがないと判定し、ねじがないことを表す情報（例えば、“０”）を検査結果データとして出力する。
【００４４】
検査装置２０において、テンプレート画像記憶部２０１と、テンプレート画像特徴点記憶部２０３と、検査位置情報記憶部２０４と、参照位置情報記憶部２０６と、画像データ記憶部２０８と、変換画像記憶部２１１とは、例えば、半導体記憶装置もしくは磁気ハードディスク装置またはこれらの組み合わせにより実現される。
【００４５】
図４は、変換画像生成部２１０の機能構成を表すブロック図である。同図に示すように、変換画像生成部２１０は、対応点抽出部２９１と、画像変換部２９２とを備える。
対応点抽出部２９１は、検査画像特徴点抽出部２０９から供給される検査画像特徴量を取り込み、テンプレート画像特徴点記憶部２０３からテンプレート画像特徴点データを読み込む。そして、対応点抽出部２９１は、検査画像特徴量とテンプレート画像データの画像特徴量との全ての組み合わせについてユークリッド距離を計算し、その距離の値があらかじめ決定された閾値よりも小さい場合の検査画像特徴量とテンプレート画像データの画像特徴量とのペアを対応ペアとして選定し画像変換部２９２に供給する。
【００４６】
画像変換部２９２は、対応点抽出部２９１から供給される、検査画像特徴量とテンプレート画像データの画像特徴量との対応ペアを取り込み、画像データ記憶部２０８から画像データを読み込む。そして、画像変換部２９２は、検査画像特徴量とテンプレート画像データの画像特徴量との対応ペアに基づいてホモグラフィー行列を求める。
【００４７】
ここで、ホモグラフィー行列について説明する。三次元空間における撮像装置の座標系をＦ＊とし、この撮像装置が任意の点Ａを撮像して得る画像における点Ａの像をｐ（ボールド体）＊＝［ｕ＊  ｖ＊  １］Ｔとする。なお、“（ボールド体）”との記載は、その記載の直前の文字がボールド体であることを表し、その文字がベクトルまたは行列であることを示す。前記の撮像装置を移動し、その移動先における撮像装置の座標系をＦとし、この撮像装置が前記の点Ａを撮像して得る画像における点Ａの像をｐ（ボールド体）＝［ｕ  ｖ  １］Ｔとする。また、Ｆ＊とＦとの相対距離を表す並進ベクトルをｔ（ボールド体）とし、姿勢変化を表す回転ベクトルをＲ（ボールド体）とする。
【００４８】
点Ａが平面π上に存在するとき、点ｐ（ボールド体）＊と点ｐ（ボールド体）との関係を表す式として下記の式（２）が成立する場合を考える。ただし、ｓは、点Ａと２つの座標系Ｆ＊とＦとの距離の割合で決まる値である。Ｇ（ボールド体）は、ホモグラフィー行列である。
【００４９】
【数２】
0005799516.tif 000003
【００５０】
ホモグラフィー行列Ｇ（ボールド体）は、３行３列の行列であり、下記の式（３）のように表される。
【００５１】
【数３】
0005799516.tif 000004
【００５２】
また、ホモグラフィー行列Ｇ（ボールド体）は、下記の式（４）のように表すことができる。ただし、ｄは、撮像装置と平面πとの間の距離、ｎ（ボールド体）は、平面πの法線ベクトルである。
【００５３】
【数４】
0005799516.tif 000005
【００５４】
ホモグラフィー行列Ｇ（ボールド体）を推定することができれば、並進ベクトルｔ（ボールド体）、回転ベクトルＲ（ボールド体）、平面πの法線ベクトルｎ（ボールド体）、および撮像装置と平面πとの間の距離ｄを計算することができる。
【００５５】
平面π上に存在する全ての点における、各点の撮像画像への投影点の座標の組を、式（２）を用いて表すと以下のようになる。まず、値ｓを下記の式（５）のように定義する。
【００５６】
【数５】
0005799516.tif 000006
【００５７】
式（２）および式（５）により、下記の式（６）が成立する。ただし、ｗ（ボールド体）は、ホモグラフィー行列Ｇ（ボールド体）の関数であり、透視投影変換行列である。この透視投影変換行列を用いて点ｐ（ボールド体）＊を対応する点ｐ（ボールド体）に変換することを、透視投影変換と呼ぶ。
【００５８】
【数６】
0005799516.tif 000007
【００５９】
式（６）によれば、平面π上に存在する点については、その平面πのホモグラフィー行列が既知であれば、一方の撮像画像上の点に対して他方の撮像画像上の対応する点を一意に求めることができる。
したがって、ホモグラフィー行列を求めることにより、元画像に対して、注目画像がどれだけ並進し、またどれだけ回転しているかを求めること、言い換えると、注目領域のトラッキングを行うことができる。
【００６０】
画像変換部２９２は、求めたホモグラフィー行列を適用して、画像データ記憶部２０８から読み込んだ画像データを、テンプレート画像に対する視点の画像のデータである変換画像データに透視投影変換して変換画像記憶部２１１に記憶させる。
【００６１】
図５は、テンプレート画像とこのテンプレート画像における検査領域の位置情報とを模式的に重ねて表した図である。同図において、テンプレート画像５０には検査対象物体画像５１が含まれている。テンプレート画像５０における検査対象物体画像５１以外の画像領域は背景画像５３である。この背景画像５３は、特徴点が現れないよう、無地である。検査対象物体画像５１には、検査領域５２と検査領域５２の近傍の参照領域５４とが含まれている。検査領域５２は、検査物がある状態の画像領域である。また、参照領域５４は、検査領域５２の近傍であり且つ構造物がない平坦な画像領域である。
テンプレート画像５０の左上端を原点として横軸方向をｘ軸とし、縦軸方向をｙ軸とする二次元座標系において、検査領域５２の中心点の位置ベクトルｐ（ボールド体）ｈ０は検査位置情報に含まれる情報である。
【００６２】
次に、本実施形態における検査装置２０の動作について説明する。
まず、検査装置２０がテンプレート画像特徴点データを生成する処理について説明する。このテンプレート画像特徴点データ生成処理は、テンプレート画像データごとに１回実行されればよいものである。
図６は、検査装置２０がテンプレート画像特徴点データを生成する処理の手順を表すフローチャートである。
【００６３】
ステップＳ１において、テンプレート画像特徴点抽出部２０２は、テンプレート画像記憶部２０１からテンプレート画像データを読み込む。
次に、ステップＳ２において、テンプレート画像特徴点抽出部２０２は、テンプレート画像データから複数の特徴点を抽出する。例えば、テンプレート画像特徴点抽出部２０２は、ＳＩＦＴ方式による処理を行ってＳＩＦＴ特徴量を抽出する。
次に、ステップＳ３において、テンプレート画像特徴点抽出部２０２は、ステップＳ２の処理において抽出した各特徴点における画像特徴量と、テンプレート画像上の位置情報とを対応付けたテンプレート画像特徴点データをテンプレート画像特徴点記憶部２０３に記憶させる。テンプレート画像上の位置情報は、テンプレート画像における特徴点の位置ベクトルである。
【００６４】
次に、検査装置２０が参照領域を決定する処理について説明する。この参照領域決定処理は、テンプレート画像の検査領域ごとに１回実行されればよいものである。
図７は、検査装置２０が参照領域を決定する処理の手順を表すフローチャートである。
【００６５】
ステップＳ１１において、参照領域決定部２０５は、テンプレート画像記憶部２０１からテンプレート画像データを読み込む。
次に、ステップＳ１２において、参照領域決定部２０５は、検査位置情報記憶部２０４から検査位置情報を読み込む。
次に、ステップＳ１３において、参照領域決定部２０５は、テンプレート画像データにおいて、検査位置情報によって特定される検査領域の近傍であり且つ平坦な領域を参照領域として決定する。例えば、参照領域決定部２０５は、検査領域の中心位置からあらかじめ決定された半径の長さで示される円形領域内の画像を解析し、この円形画像領域から空間周波数成分があらかじめ決定された閾値よりも小さい領域を検出して参照領域として決定する。
次に、ステップＳ１４において、参照領域決定部２０５は、決定した参照領域を特定する参照位置情報を参照位置情報記憶部２０６に記憶させる。参照位置情報は、参照領域である円形領域の中心点の位置ベクトルとその円形領域の半径の長さとである。
【００６６】
次に、検査装置２０の検査処理について説明する。
図８は、撮像装置１１が撮像した検査対象物体の単一フレームの画像データについて、検査装置２０が検査物であるねじの欠品を検査する処理の手順を表すフローチャートである。
【００６７】
ステップＳ２１において、画像データ取得部２０７は、ロボット１０の撮像装置１１が出力する１フレームの画像データを取り込むと、この画像データを画像データ記憶部２０８に記憶させる。
次に、ステップＳ２２において、検査画像特徴点抽出部２０９は、画像データ記憶部２０８から画像データを読み込んで複数の特徴点を抽出し、各特徴点における特徴量（検査画像特徴量）を変換画像生成部２１０に供給する。例えば、検査画像特徴点抽出部２０９は、ＳＩＦＴ方式による処理を行い、ＳＩＦＴ特徴量を求めて変換画像生成部２１０に供給する。
【００６８】
次に、ステップＳ２３において、変換画像生成部２１０の対応点抽出部２９１は、検査画像特徴点抽出部２０９から供給される検査画像特徴量を取り込み、テンプレート画像特徴点記憶部２０３からテンプレート画像特徴点データを読み込む。
次に、対応点抽出部２９１は、検査画像特徴量とテンプレート画像データの画像特徴量との全ての組み合わせについてユークリッド距離を計算する。
次に、対応点抽出部２９１は、算出した距離の値があらかじめ決定された閾値よりも小さい場合の検査画像特徴量とテンプレート画像データの画像特徴量とのペアを対応ペアとして選定し画像変換部２９２に供給する。
【００６９】
次に、ステップＳ２４において、画像変換部２９２は、対応点抽出部２９１から供給された、検査画像特徴量とテンプレート画像データの画像特徴量との対応ペアを取り込み、画像データ記憶部２０８から画像データを読み込む。
次に、画像変換部２９２は、検査画像特徴量とテンプレート画像データの画像特徴量との対応ペアに基づいてホモグラフィー行列を求める。
次に、画像変換部２９２は、求めたホモグラフィー行列を適用して、画像データを、テンプレート画像に対する視点の画像のデータである変換画像データに透視投影変換して変換画像記憶部２１１に記憶させる。
【００７０】
次に、ステップＳ２５において、検査領域輝度値検出部２１２は、変換画像記憶部２１１から変換画像データを読み込み、検査位置情報記憶部２０４から検査位置情報を読み込む。
次に、検査領域輝度値検出部２１２は、変換画像データにおいて検査位置情報によって特定される検査領域の検査領域輝度値、例えば、検査領域の各画素の輝度値の平均値を検出し、この検査領域輝度値を判定部２１４に供給する。
【００７１】
次に、ステップＳ２６において、参照領域輝度値検出部２１３は、変換画像記憶部２１１から変換画像データを読み込み、参照位置情報記憶部２０６から参照位置情報を読み込む。
次に、参照領域輝度値検出部２１３は、変換画像データにおいて参照位置情報によって特定される参照領域の参照領域輝度値、例えば、参照領域の各画素の輝度値の平均値を検出し、この参照領域輝度値を判定部２１４に供給する。
【００７２】
次に、ステップＳ２７において、判定部２１４は、検査領域輝度値検出部２１２から供給される検査領域輝度値を取り込み、参照領域輝度値検出部２１３から供給される参照領域輝度値を取り込む。
次に、判定部２１４は、検査領域輝度値と参照領域輝度値とに基づいて、検査領域にねじがあるか否かを判定し、その判定結果である検査結果データを出力する。例えば、判定部２１４は、前記の式（１）によって輝度比ｌｓ’を計算する。そして、輝度比ｌｓ’があらかじめ決定された閾値以上の値である場合、判定部２１４は、検査領域にねじがあると判定し、ねじがあることを表す情報（例えば、“１”）を検査結果データとして出力する。また、輝度比ｌｓ’がその閾値未満の値である場合、判定部２１４は、検査領域にねじがないと判定し、ねじがないことを表す情報（例えば、“０”）を検査結果データとして出力する。
【００７３】
検査装置２０が撮像装置１１から供給される次フレームの画像データを処理する場合は、ステップＳ２１の処理に戻り、本フローチャートの一連の処理を行う。
【００７４】
本発明の第１実施形態であるロボット装置１によれば、ロボット本体１２のハンド部１２ｃに設けられた撮像装置１１は、三次元空間内の任意方向から検査対象物体５の検査部位を撮像する。そして、ロボット装置１の検査装置２０は、撮像装置１１が任意方向から撮像して得た画像データに含まれる検査対象物体画像に対する視点を、あらかじめ記憶したテンプレート画像データに含まれるテンプレート画像に対する視点に一致させるように当該画像データを変換画像データに変換する。そして、検査装置２０は、その変換画像データにおける検査領域からねじの有無を判定し、その検査結果データを出力する。
このように構成したことにより、検査装置２０は、三次元空間内の任意方向から撮像した画像データを用いて、検査部位の状態の検査を行うことができる。
【００７５】
また、検査装置２０では、検査領域輝度値検出部２１２が検出した検査領域輝度値ｌｓと参照領域輝度値検出部２１３が検出した参照領域輝度値ｌｒとに基づいて、判定部２１４が検査領域輝度値ｌｓと参照領域輝度値ｌｒとの比である輝度比輝度比ｌｓ’を計算し、この輝度比ｌｓ’に応じて変換画像データにおける検査領域の状態を検査する。
このように構成したことにより、検査装置２０は、照明の照度が変化した場合に撮像装置１１が自動露光調整を行った場合であっても、正しく検査領域の状態の検査を行うことができる。つまり、外光や照明による影響を抑えて、正しく検査領域の状態の検査を行うことができる。
また、検査装置２０は、検査領域および参照領域の各画素の輝度値の平均値を用いるため、撮像装置１１を、モノクロ画像を得るカメラとすることができる。
【００７６】
よって、本実施形態であるロボット装置１によれば、モノクロ画像が適用でき、照明条件や撮影条件の変化に対して頑健な外観検査を行うことができる。
【００７７】
［第２の実施の形態］
上述した第１実施形態であるロボット装置１は、検査対象物体５を三次元空間内の任意方向から撮像して得た画像データから、検査物であるねじの有無を検査するものであった。本発明の第２実施形態であるロボット装置は、検査対象物体の検査部位の上方側で撮像装置を並進移動させて撮像して得た画像データから、ねじの有無を検査するものである。
本実施形態において、第１実施形態と同一の構成については同一の符号を付してその説明を省略する。
【００７８】
図９は、本実施形態であるロボット装置の概略の機能構成を表すブロック図である。同図において、ロボット装置１ａは、第１実施形態であるロボット装置１から、検査装置２０を検査装置２０ａに変更した構成を有する。
【００７９】
検査装置２０ａは、ロボット１０の撮像装置１１が連続して出力する画像データを順次または複数フレームおきに取り込む。そして、検査装置２０ａは、取り込んだ画像データごとに、あらかじめ記憶したテンプレート画像データに含まれる検査対象物体のテンプレート画像に対する画像データに含まれる検査対象物体画像の移動量を求める。そして、検査装置２０ａは、移動量に基づき画像データから検査領域を特定して検査物であるねじの頭部の有無を判定し、その検査結果データを出力する。
【００８０】
図１０は、検査装置２０ａの機能構成を表すブロック図である。同図において、検査装置２０ａは、第１実施形態における検査装置２０から、検査画像特徴点抽出部２０９と、変換画像生成部２１０と、検査領域輝度値検出部２１２と、参照領域輝度値検出部２１３との替わりに、検査画像特徴点抽出部２０９ａと、移動量取得部２２１と、検査領域輝度値検出部２１２ａと、参照領域輝度値検出部２１３ａとを備えた構成を有している。
【００８１】
検査画像特徴点抽出部２０９ａは、画像データ記憶部２０８から画像データを読み込み、この画像データから複数の特徴点を抽出して、各特徴点における特徴量（検査画像特徴量）と画像上の位置情報と対応付けた検査画像特徴点データを移動量取得部２２１に供給する。例えば、検査画像特徴点抽出部２０９ａは、前記のＳＩＦＴ方式による処理を行ってＳＩＦＴ特徴量を求める。また、検査画像特徴点抽出部２０９ａは、特徴点の抽出方式として、前記のＳＵＲＦを適用してもよい。
画像上の位置情報は、画像の例えば左上端の位置を原点として得られる特徴点の位置ベクトルである。
【００８２】
移動量取得部２２１は、検査画像特徴点抽出部２０９ａから供給される検査画像特徴点データを取り込み、テンプレート画像特徴点記憶部２０３からテンプレート画像特徴点データを読み込む。そして、移動量取得部２２１は、検査画像特徴量とテンプレート画像データの画像特徴量との全ての組み合わせについてのユークリッド距離を求めることにより、検査画像特徴量とテンプレート画像データの画像特徴量とが対応関係にあるペア（対応ペア）を選定する。そして、移動量取得部２２１は、対応ペアに対応する画像上の位置情報のペア（位置情報ペア）に基づいて移動量を計算し、この移動量を検査領域輝度値検出部２１２ａと参照領域輝度値検出部２１３ａとに供給する。
【００８３】
検査領域輝度値検出部２１２ａは、移動量取得部２２１から供給される移動量を取り込み、画像データ記憶部２０８から画像データを読み込み、検査位置情報記憶部２０４から検査位置情報を読み込む。そして、検査領域輝度値検出部２１２ａは、画像データにおいて検査位置情報と移動量とによって特定される検査領域の輝度値（検査領域輝度値）を検出して判定部２１４に供給する。検査領域輝度値は、例えば、検査領域の各画素の輝度値の平均値である。
【００８４】
参照領域輝度値検出部２１３ａは、移動量取得部２２１から供給される移動量を取り込み、画像データ記憶部２０８から画像データを読み込み、参照位置情報記憶部２０６から参照位置情報を読み込む。そして、参照領域輝度値検出部２１３ａは、画像データにおいて参照位置情報と移動量とによって特定される参照領域の輝度値（参照領域輝度値）を検出して判定部２１４に供給する。参照領域輝度値は、例えば、参照領域の各画素の輝度値の平均値である。
【００８５】
図１１は、移動量取得部２２１の機能構成を表すブロック図である。同図に示すように、移動量取得部２２１は、対応点抽出部２９１ａと、移動量計算部２９３とを備える。
対応点抽出部２９１ａは、検査画像特徴点抽出部２０９ａから供給される検査画像特徴点データを取り込み、テンプレート画像特徴点記憶部２０３からテンプレート画像特徴点データを読み込む。そして、対応点抽出部２９１ａは、検査画像特徴点データの検査画像特徴量とテンプレート画像データの画像特徴量との全ての組み合わせについてユークリッド距離を計算し、その距離の値があらかじめ決定された閾値よりも小さい場合の検査画像特徴量とテンプレート画像データの画像特徴量とのペアを対応ペアとして選定する。そして、対応点抽出部２９１ａは、対応ペアに対応する画像上の位置情報ペアを移動量計算部２９３に供給する。
【００８６】
移動量計算部２９３は、対応点抽出部２９１ａから供給される位置情報ペアを取り込み、ペアごとに特徴点の移動量を計算する。そして、移動量計算部２９３は、全ての特徴点の移動量の中から最頻値を選択し、この選択した最頻値を移動量として検査領域輝度値検出部２１２ａと参照領域輝度値検出部２１３ａとに供給する。なお、移動量計算部２９３は、全ての特徴点の移動量の平均値または中央値を移動量として決定してもよい。
【００８７】
図１２は、テンプレート画像データおよび画像データにおける検査対象物体画像と検査領域の位置情報とを模式的に重ねて表した図である。同図において、破線で表した図はテンプレート画像データにおける検査対象物体画像であり、実線で表した図は画像データにおける検査対象物体画像である。テンプレート画像データにおける検査対象物体画像５１には、検査領域５２が含まれている。また、画像データにおける検査対象物体画像６１には、検査領域６２が含まれている。
【００８８】
テンプレート画像の左上端を原点として横軸方向をｘ軸とし、縦軸方向をｙ軸とする二次元座標系において、テンプレート画像データにおける検査領域５２の中心点の位置ベクトルｐ（ボールド体）ｈ０は検査位置情報に含まれる情報である。また、テンプレート画像データにおける検査領域５２の中心点から画像データにおける検査領域６２の中心点までのベクトルｒ（ボールド体）ｍは、移動量取得部２２１が出力する移動量である。よって、テンプレート画像データにおける検査領域５２の中心点の位置ベクトルｐ（ボールド体）ｈ０と移動量であるベクトルｒ（ボールド体）ｍとに基づいて画像データにおける検査領域６２の中心点の位置ベクトルｐ（ボールド体）ｈを求めることができる。
【００８９】
次に、本実施形態における検査装置２０ａの動作について説明する。ここでは、検査装置２０ａの検査処理について説明する。
図１３は、撮像装置１１が撮像した検査対象物体の単一フレームの画像データについて、検査装置２０ａがねじの欠品を検査する処理の手順を表すフローチャートである。
【００９０】
ステップＳ３１において、画像データ取得部２０７は、ロボット１０の撮像装置１１が出力する１フレームの画像データを取り込むと、この画像データを画像データ記憶部２０８に記憶させる。
次に、ステップＳ３２において、検査画像特徴点抽出部２０９ａは、画像データ記憶部２０８から画像データを読み込んで複数の特徴点を抽出し、各特徴点における特徴量（検査画像特徴量）と画像上の位置情報とを対応付けた検査画像特徴点データを移動量取得部２２１に供給する。例えば、検査画像特徴点抽出部２０９ａは、ＳＩＦＴ方式による処理を行い、ＳＩＦＴ特徴量を求めて移動量取得部２２１に供給する。
【００９１】
次に、ステップＳ３３において、移動量取得部２２１の対応点抽出部２９１ａは、検査画像特徴点抽出部２０９ａから供給される検査画像特徴点データを取り込み、テンプレート画像特徴点記憶部２０３からテンプレート画像特徴点データを読み込む。
次に、対応点抽出部２９１ａは、検査画像特徴点データの検査画像特徴量とテンプレート画像データの画像特徴量との全ての組み合わせについてユークリッド距離を計算する。
次に、対応点抽出部２９１ａは、算出した距離の値があらかじめ決定された閾値よりも小さい場合の検査画像特徴量とテンプレート画像データの画像特徴量とのペアを対応ペアとして選定する。そして、対応点抽出部２９１ａは、対応ペアに対応する画像上の位置情報のペア（位置情報ペア）を移動量計算部２９３に供給する。
【００９２】
次に、ステップＳ３４において、移動量計算部２９３は、対応点抽出部２９１ａから供給される位置情報ペアを取り込み、ペアごとに特徴点の移動量を計算する。そして、移動量計算部２９３は、全ての特徴点の移動量の中から最頻値を選択し、この選択した最頻値を移動量として検査領域輝度値検出部２１２ａと参照領域輝度値検出部２１３ａとに供給する。
【００９３】
次に、ステップＳ３５において、検査領域輝度値検出部２１２ａは、移動量取得部２２１から供給される移動量を取り込み、画像データ記憶部２０８から画像データを読み込み、検査位置情報記憶部２０４から検査位置情報を読み込む。
次に、検査領域輝度値検出部２１２ａは、画像データにおいて検査位置情報と移動量とによって特定される検査領域の検査領域輝度値、例えば、検査領域の各画素の輝度値の平均値を検出し、この検査領域輝度値を判定部２１４に供給する。
【００９４】
次に、ステップＳ３６において、参照領域輝度値検出部２１３ａは、移動量取得部２２１から供給される移動量を取り込み、画像データ記憶部２０８から画像データを読み込み、参照位置情報記憶部２０６から参照位置情報を読み込む。
次に、参照領域輝度値検出部２１３ａは、画像データにおいて参照位置情報と移動量とによって特定される参照領域の参照領域輝度値、例えば、参照領域の各画素の輝度値の平均値を検出し、この参照領域輝度値を判定部２１４に供給する。
【００９５】
次に、ステップＳ３７において、判定部２１４は、検査領域輝度値検出部２１２ａから供給される検査領域輝度値を取り込み、参照領域輝度値検出部２１３ａから供給される参照領域輝度値を取り込む。
次に、判定部２１４は、検査領域輝度値と参照領域輝度値とに基づいて、検査領域にねじがあるか否かを判定し、その判定結果である検査結果データを出力する。具体的には、前述の第１実施形態におけるステップＳ２７の処理と同様であるため、ここでの説明を省略する。
【００９６】
検査装置２０ａが撮像装置１１から供給される次フレームの画像データを処理する場合は、ステップＳ３１の処理に戻り、本フローチャートの一連の処理を行う。
【００９７】
本発明の第２実施形態であるロボット装置１ａによれば、ロボット本体１２のハンド部１２ｃに設けられた撮像装置１１は、検査対象物体５の検査部位の上方側において並進移動を行って検査部位を撮像する。そして、ロボット装置１ａの検査装置２０ａは、あらかじめ記憶したテンプレート画像データに含まれる検査対象物体のテンプレート画像に対する画像データに含まれる検査対象物体画像の移動量を求める。そして、検査装置２０ａは、その移動量に基づき画像データから検査領域を特定してねじの有無を判定し、その検査結果データを出力する。
このように構成したことにより、検査装置２０ａは、並進移動した撮像装置１１が撮像した画像データを用いて、検査部位の状態の検査を行うことができる。
【００９８】
また、検査装置２０ａでは、検査領域輝度値検出部２１２ａが検出した検査領域輝度値ｌｓと参照領域輝度値検出部２１３ａが検出した参照領域輝度値ｌｒとに基づいて、判定部２１４が検査領域輝度値ｌｓと参照領域輝度値ｌｒとの比である輝度比輝度比ｌｓ’を計算し、この輝度比ｌｓ’に応じて変換画像データにおける検査領域の状態を検査する。
このように構成したことにより、検査装置２０ａは、照明の照度が変化した場合に撮像装置１１が自動露光調整を行った場合であっても、正しく検査領域の状態の検査を行うことができる。つまり、外光や照明による影響を抑えて、正しく検査領域の状態の検査を行うことができる。
また、検査装置２０ａは、検査領域および参照領域の各画素の輝度値の平均値を用いるため、撮像装置１１を、モノクロ画像を得るカメラとすることができる。
【００９９】
よって、本実施形態であるロボット装置１ａによれば、モノクロ画像が適用でき、照明条件や撮影条件の変化に対して頑健な外観検査を行うことができる。
【０１００】
上述した第１実施形態であるロボット装置１における検査装置２０と、第２実施形態であるロボット装置１ａにおける検査装置２０ａとが検出する、検査領域輝度値ｌｓと参照領域輝度値ｌｒとこれらの値に基づいて得られる輝度比ｌｓ’との具体例を、下記の表１に示す。
【０１０１】
【表１】
0005799516.tif 000008
【０１０２】
表１の具体例は、撮像装置１１を、照度に応じて露光調整を自動的に行うカメラとした場合のデータである。同表において、「環境条件」は、撮像装置１１および被写体の照明環境の条件であり、条件Ａにおける照明は条件Ｂにおける照明よりも暗い例である。
同表のデータによれば、検査領域輝度値ｌｓと参照領域輝度値ｌｒとは環境条件によって大きく異なるが、輝度比ｌｓ’は略同様の値となっている。よって、判定部２１４は、例えば閾値を０．８とすることにより、環境条件の影響を受けずに、ねじの有無を正しく判定することができる。
【０１０３】
なお、第１および第２実施形態では、検査装置２０，２０ａの参照領域決定部２０５は、テンプレート画像記憶部２０１が記憶したテンプレート画像データのテンプレート画像から参照領域を決定してその参照領域の参照位置情報を参照位置情報記憶部２０６に記憶させるものであった。これ以外に、例えば、検査装置２０，２０ａのオペレーターがテンプレート画像から参照領域を指定し、その参照領域の参照位置情報を参照位置情報記憶部２０６に記憶させるようにしてもよい。
【０１０４】
また、第１および第２実施形態において、図１４に示すように、撮像装置１１を固定設置し、検査対象物体５を移動させるようにしてもよい。
図１に対し図１４では、撮像装置１１が固定設置されるとともに、ロボット本体１２が検査対象物体５を可動に支持している。ロボット本体１２は、支持台１２ａとアーム部１２ｂとハンド部１２ｃとの連係した動作によって、被写体である検査対象物体５の検査部位を撮像装置１１に対して移動させる。このとき、例えば、撮像装置１１の撮影光軸が鉛直方向となり、検査対象物体５の検査部位を撮像装置１１側に向けて水平移動させる、言い換えると、検査対象物体５の検査部位の画像とテンプレート画像との相対変位を平面のみに固定することにより、検査装置２０は検査を簡易にすることができる。
【０１０５】
また、第２実施形態において、ロボット本体１２は、並進移動のみを行う直交ロボットであってもよい。
【０１０６】
また、第１および第２実施形態における検査装置２０，２０ａの一部の機能をコンピューターで実現するようにしてもよい。この場合、その制御機能を実現するための検査プログラムをコンピューター読み取り可能な記録媒体に記録して、この記録媒体に記録された検査プログラムをコンピューターシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピューターシステム」とは、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や周辺装置のハードウェアを含むものである。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、光ディスク、メモリーカード等の可搬型記録媒体、コンピューターシステムに内蔵される磁気ハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバー装置やクライアントとなるコンピューターシステム内部の揮発性メモリーのように、一定時間プログラムを保持するものを含んでもよい。また上記のプログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせにより実現するものであってもよい。
【０１０７】
以上、本発明の実施の形態について図面を参照して詳述したが、具体的な構成はその実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【０１０８】
１，１ａ  ロボット装置
５  検査対象物体
１０  ロボット
１１  撮像装置（撮像部）
１２  ロボット本体
１２ａ  支持台
１２ｂ  アーム部
１２ｃ  ハンド部
２０，２０ａ  検査装置
３０  制御装置
２０１  テンプレート画像記憶部
２０２  テンプレート画像特徴点抽出部
２０３  テンプレート画像特徴点記憶部
２０４  検査位置情報記憶部
２０５  参照領域決定部
２０６  参照位置情報記憶部
２０７  画像データ取得部
２０８  画像データ記憶部
２０９，２０９ａ  検査画像特徴点抽出部
２１０  変換画像生成部
２１１  変換画像記憶部
２１２，２１２ａ  検査領域輝度値検出部
２１３，２１３ａ  参照領域輝度値検出部
２１４  判定部
２２１  移動量取得部
２９１，２９１ａ  対応点抽出部
２９２  画像変換部
２９３  移動量計算部
【図１】
0005799516.tif 000009
【図２】
0005799516.tif 000010
【図３】
0005799516.tif 000011
【図４】
0005799516.tif 000012
【図５】
0005799516.tif 000013
【図６】
0005799516.tif 000014
【図７】
0005799516.tif 000015
【図８】
0005799516.tif 000016
【図９】
0005799516.tif 000017
【図１０】
0005799516.tif 000018
【図１１】
0005799516.tif 000019
【図１２】
0005799516.tif 000020
【図１３】
0005799516.tif 000021
【図１４】
0005799516.tif 000022