(57)【要約】【課題】  撮像装置及び照明源を把持したロボットアームに対する撮像装置及び照明源の配置の教示工数を低減させる。【解決手段】  光学配置生成装置は、鏡面を有する被検査体の形状を形成する点群の位置座標と形状の表面に対する法線ベクトルとを含む形状データを取得する取得部と、形状データを用いて、被検査体を撮像するための撮像点と、表面で正反射した反射光の光路上に撮像点が存在するように配置する被検査体を照射するための照明点との、被検査体に対するそれぞれの配置パターンを示す光学配置データを生成し出力する生成部とを備える。【選択図】図３
2020051806.tif 000002
【特許請求の範囲】
【請求項１】
光学配置生成装置であって、
鏡面を有する被検査体の形状を形成する点群の位置座標と、前記点群に対する法線ベクトルと、を含む形状データを取得する取得部と、
前記形状データを用いて、前記被検査体を撮像するための撮像点と、前記被検査体の前記鏡面で正反射した反射光の光路上に前記撮像点が存在するような照明点との、前記被検査体に対するそれぞれの配置パターンを示す光学配置データを生成し、出力する生成部と、
を備える、光学配置生成装置。
【請求項２】
請求項１に記載の光学配置生成装置であって、
前記生成部は、前記形状データを用いて、
前記被検査体に対して、前記撮像点に配置される撮像装置の視野幅に応じて複数の撮像エリアを設定し、
前記撮像エリアのそれぞれに対して前記複数の撮像点のそれぞれを配置し、
前記被検査体の全表面の範囲に対する前記複数の撮像点により撮像可能な前記被検査体上の撮像範囲の比率を用いて、前記複数の撮像点それぞれの配置を調整し、
調整された前記複数の撮像点それぞれの配置位置から前記照明点の配置位置を決定する、光学配置生成装置。
【請求項３】
請求項２に記載の光学配置生成装置であって、
前記生成部は、前記撮像エリアの設定において、
前記形状データを用いて前記被検査体の骨格を表す代表線を生成し、
前記代表線に対して前記視野幅に応じて複数の点をプロットし、
前記代表線に対して前記被検査体の形状の変化の度合いに応じて設定した重みを用いて前記複数の点の位置を調整し、
調整した前記複数の点のそれぞれを中心した前記撮像エリアを設定する、光学配置生成装置。
【請求項４】
請求項２または請求項３に記載の光学配置生成装置であって、
前記生成部は、前記撮像点の配置において、
前記形状データに含まれる前記点群の位置座標と前記法線ベクトルに対する主成分分析により、前記撮像エリアのそれぞれにおける前記形状データの幾何学的特徴を算出し、
前記幾何学的特徴を用いて、前記撮像エリアのそれぞれにおける複数の撮像点の配置位置候補から、１つの撮像点の配置位置を決定する、光学配置生成装置。
【請求項５】
請求項２から請求項４のいずれか一項に記載の光学配置生成装置であって、
前記生成部は、前記撮像点の配置の調整において、
前記被検査体の全表面の範囲に対する前記複数の撮像点により撮像可能な前記被検査体上の撮像範囲の比率が最大または所定値以上になるまで、前記撮像エリアの設定と前記撮像点の配置とを繰り返す、光学配置生成装置。
【請求項６】
請求項２から請求項５のいずれか一項に記載の光学配置生成装置であって、
前記生成部は、前記撮像点の配置の調整において、
前記撮像点に配置する撮像装置により撮像することができない前記被検査体上の範囲に応じて、前記代表線に対して前記重みを更新して、前記撮像エリアの設定と前記撮像点の配置とを繰り返す、光学配置生成装置。
【請求項７】
請求項３から請求項６のいずれか一項に記載の光学配置生成装置であって、
前記生成部は、前記撮像点の配置の調整において、
前記撮像エリアの設定を行う場合、前記被検査体の表面形状に応じて前記複数の撮像エリアをグループ化し、
グループ化した撮像エリア毎に前記代表線を生成し、前記代表線のそれぞれに対して異なる前記重みを設定する、光学配置生成装置。
【請求項８】
請求項２から請求項７のいずれか一項に記載の光学配置生成装置であって、
前記生成部は、前記照明点の配置位置の決定において、
前記撮像点からの撮像方向を示す撮像線と前記被検査体との交点を示す反射点と前記撮像点との間の距離と、前記反射点と前記照明点との間の距離との和が一定になるように、前記照明点を配置する、光学配置生成装置。
【請求項９】
光学配置生成プログラムであって、情報処理装置に、
鏡面を有する被検査体の形状を形成する点群の位置座標と、前記点群に対する法線ベクトルと、を含む形状データを取得するステップと、
前記形状データを用いて、前記被検査体を撮像するための撮像点と、前記被検査体の前記鏡面で正反射した反射光の光路上に前記撮像点が存在するような照明点との、前記被検査体に対するそれぞれの配置パターンを示す光学配置データを生成し、出力するステップと、
を実行させる、光学配置生成プログラム。
【請求項１０】
光学配置生成方法であって、情報処理装置を用いて、
鏡面を有する被検査体の形状を形成する点群の位置座標と、前記点群に対する法線ベクトルと、を含む形状データを取得する工程と、
前記形状データを用いて、前記被検査体を撮像するための撮像点と、前記被検査体の前記鏡面で正反射した反射光の光路上に前記撮像点が存在するような照明点との、前記被検査体に対するそれぞれの配置パターンを示す光学配置データを生成し、出力する工程と、
を実行する、光学配置生成方法。
【請求項１１】
表面検査システムであって、
鏡面を有する被検査体の形状を形成する点群の位置座標と前記点群に対する法線ベクトルとを含む形状データを取得し、前記形状データを用いて、前記被検査体を撮像するための撮像点と、前記被検査体の前記鏡面で正反射した反射光の光路上に前記撮像点が存在するような照明点との、前記被検査体に対するそれぞれの配置パターンを示す光学配置データを生成する光学配置生成部と、
前記被検査体を写り込ませる照明源と、
前記被検査体を撮像する撮像部と、
前記照明源及び前記撮像部それぞれを３次元方向に移動可能に駆動する駆動部と、
前記光学配置データを用いて、前記駆動部の駆動を制御する駆動制御部と、
を備える、表面検査システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表面が鏡面であり立体形状の被検査体の表面状態を検査する技術に関する。
【背景技術】
【０００２】
複数のセンサによる観測対象の観測に関し、観測範囲に対して適切なセンサ配置の決定が行われている。このセンサ配置の決定について、例えば、特許文献１には、大気汚染を観測する際のセンサ配置を決定する技術が開示されている。また、特許文献２，３には、カメラなど視覚センサを有する移動体を用いた監視システムにおいて、死角を無くすことを目的としたセンサ配置の決定技術が開示されている。
【０００３】
一方、鏡面を有する検査対象の外観検査システムに関しては、以下のような技術が知られている。例えば、特許文献４には、被検査体表面が鏡面光沢を有していても、被検査体表面の凹凸の検出精度をより高めることができる表面検査技術が開示されている。特許文献５には、光の強度による縞パターンを写り込ませた対象物を、時間相関カメラにより撮像した時間相関画像を解析して被検査体の異常を検出する技術が開示されている。特許文献６には、鏡面を有する検査対象の外観検査システムにおいて、照明源と検査対象の配置が予め決められた状況でカメラ配置を決定することが開示されている。
【０００４】
一般に、目視検査の自働化を目的とした外観検査システムは、照明源とカメラからなる検査装置を用いて、被検査体に生じたきずが写った画像を生成する第１段階、その画像に処理を施してきずを検出する第２段階、検出したきずのサイズや種類を認識する第３段階に分けて考えることができる。上述の特許文献６には、上記の第１段階において、スリット状に発光する発光面を被検査体に写り込ませるように照明源を移動する間に被検査体に写り込んだスリットパターンをカメラで連続的に撮像する方法、および撮像した複数枚の画像からきずの検査用画像を生成する方法が開示されている。このような外観検査システムでは、例えば、ロボットアームにカメラと照明源を把持させて、被検査体の形状に応じたカメラの配置と照明源の経路走査を行うことができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１７−２０７４２０号公報
【特許文献２】特開２０１６−１１８９９６号公報
【特許文献３】特許第５０３１０４３号
【特許文献４】特許第５１８２８３３号
【特許文献５】特許第６３１６０６８号
【特許文献６】特開２０１８−５９８８３号公報
【非特許文献】
【０００６】
【非特許文献１】O.Lobachev, M. Schmidt and M. Guthe, “Optimizing Multiple Camera Positions forthe Deflectometric Measurement of Multiple Varying Targets”, Journal of WSCG,Vol. 21, 145-152 (2013)
【非特許文献２】Yi.Maet.al. “An Invitation to 3-D Vision From Image to Geometric Models”, Springer(2004)
【非特許文献３】石井健一郎，上田修功著  「続・わかりやすいパターン認識」  オーム社，pp.191-201  (2014)
【非特許文献４】藤代一成  編著 「コンピュータグラフィクス,   4-2-6. レイトレーシング法」  CG-ARTS協会 (2011)
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述したロボットアームによる経路走査では、まず、ロボットアームに対して、被検査体の形状に応じたカメラの配置と照明源の走査経路を教示することが必要である。この点、カメラの配置と照明源の走査経路の教示を手動で行う場合、膨大な教示工数が必要とされる。この教示工数を縮小するために、従来から、被検査体の形状データからカメラの配置と照明源の走査経路を事前に生成し、生成されたカメラの配置と照明源の走査経路に基づいてロボットアームに連携させて教示する、という自働教示技術が求められていた。
【０００８】
しかし、特許文献１〜３に記載の技術では、鏡面を有する検査対象（検査対象の鏡面性）について、カメラの配置と照明源の走査経路を生成することについては何ら考慮されていない。また、特許文献４〜６には、カメラと照明源の配置を自動的に決定する技術は開示されていない。
【０００９】
本発明は、上述した課題の少なくとも一部を解決するためになされたものであり、撮像装置及び照明源を把持したロボットアームに対する撮像装置及び照明源の配置の教示工数を低減させることを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態として実現することが可能である。
（１）本発明の一形態によれば、光学配置生成装置が提供される。この光学配置生成装置は、鏡面を有する被検査体の形状を形成する点群の位置座標と、前記点群に対する法線ベクトルと、を含む形状データを取得する取得部と、前記形状データを用いて、前記被検査体を撮像するための撮像点と、前記被検査体の前記鏡面で正反射した反射光の光路上に前記撮像点が存在するような照明点との、前記被検査体に対するそれぞれの配置パターンを示す光学配置データを生成し、出力する生成部と、を備える。
【００１１】
この構成によれば、鏡面を有する検査対象の形状に応じたカメラの配置と照明源の配置パターンを容易に生成することができる。これにより、撮像装置及び照明源を把持したロボットアームに対する撮像装置及び照明源の配置の教示工数を低減させることができる。
【００１２】
（２）上記形態の光学配置生成装置において、前記生成部は、前記形状データを用いて、前記被検査体に対して、前記撮像点に配置される撮像装置の視野幅に応じて複数の撮像エリアを設定し、前記撮像エリアのそれぞれに対して前記複数の撮像点のそれぞれを配置し、前記被検査体の全表面の範囲に対する前記複数の撮像点により撮像可能な前記被検査体上の撮像範囲の比率を用いて、前記複数の撮像点それぞれの配置を調整し、調整された前記複数の撮像点それぞれの配置位置から前記照明点の配置位置を決定してもよい。この構成によれば、複数の撮像エリアを設定し、各撮像エリアに撮像点を初期配置し、撮像範囲の比率を用いて撮像点の配置を調整し、撮像点の配置位置から前記照明点の配置位置を決定することにより、鏡面を有する検査対象の形状に応じたカメラの配置と照明源の配置パターンを容易に生成することができる。これにより、撮像装置及び照明源を把持したロボットアームに対する撮像装置及び照明源の配置の教示工数を低減させることができる。
【００１３】
（３）上記形態の光学配置生成装置において、前記生成部は、前記撮像エリアの設定において、前記形状データを用いて前記被検査体の骨格を表す代表線を生成し、前記代表線に対して前記視野幅に応じて複数の点をプロットし、前記代表線に対して前記被検査体の形状の変化の度合いに応じて設定した重みを用いて前記複数の点の位置を調整し、調整した前記複数の点のそれぞれを中心とした前記撮像エリアを設定してもよい。この構成によれば、代表点に対して被検査体の形状の変化の度合いに応じた重みを設定し、その重みを用いて複数の撮像エリアを設定することができる。これにより、例えば曲率が高い部分は２方向から光を写り込ませないと適切な画像を撮像できないから、それを抑制するためにプロト点の配置を調整することができる。
【００１４】
（４）上記形態の光学配置生成装置において、前記生成部は、前記撮像点の配置において、前記形状データに含まれる前記点群の位置座標と前記法線ベクトルに対する主成分分析により、前記撮像エリアのそれぞれにおける前記形状データの幾何学的特徴を算出し、前記幾何学的特徴を用いて、前記撮像エリアのそれぞれにおける複数の撮像点の配置位置候補から、１つの撮像点の配置位置を決定してもよい。この構成によれば、形状データの幾何学的特徴を用いて、複数の撮像点の配置位置の候補から１つの撮像点の配置位置を決定することができる。これにより、照明源の走査範囲を低減させると共に、被検査体の表面に写り込む範囲を低減させることができる。
【００１５】
（５）上記形態の光学配置生成装置において、前記生成部は、前記撮像点の配置の調整において、前記被検査体の全表面の範囲に対する前記複数の撮像点により撮像可能な前記被検査体上の撮像範囲の比率が最大または所定値以上になるまで、前記撮像エリアの設定と前記撮像点の配置とを繰り返してもよい。この構成によれば、被検査体上の撮像範囲の比率を向上させることができる。これにより、非撮像範囲を低減させることができる。
【００１６】
（６）上記形態の光学配置生成装置において、前記生成部は、前記撮像点の配置の調整において、前記撮像点に配置する撮像装置により撮像することができない前記被検査体上の範囲に応じて、前記代表線に対して前記重みを更新して、前記撮像エリアの設定と前記撮像点の配置とを繰り返してもよい。この構成によれば、被検査体上の撮像範囲の比率を向上させることができる。これにより、非撮像範囲を低減させることができる。
【００１７】
（７）上記形態の光学配置生成装置において、前記生成部は、前記撮像点の配置の調整において、前記撮像エリアの設定を行う場合、前記被検査体の表面形状に応じて前記複数の撮像エリアをグループ化し、グループ化した撮像エリア毎に前記代表線を生成し、前記代表線のそれぞれに対して異なる前記重みを設定してもよい。この構成によれば、例えば、被検査体の外側、内側に応じて前記代表線のそれぞれに対して異なる前記重みを設定することができる。これにより、非撮像範囲を低減させることができる。
【００１８】
（８）上記形態の光学配置生成装置において、前記生成部は、前記照明点の配置位置の決定において、前記撮像点からの撮像方向を示す撮像線と前記被検査体との交点を示す反射点と前記撮像点との間の距離と、前記反射点と前記照明点との間の距離との和が一定になるように、前記照明点を配置してもよい。この構成によれば、カメラ原点と反射点との距離と、反射点と照明源の中心との距離の和を一定とすることができる。これにより、カメラ原点と反射点との距離と、反射点と照明源の中心との距離の和が一定となる条件を満たすように照明源の配置を設定することができる。
【００１９】
（９）本発明の一形態によれば、光学配置生成プログラムが提供される。この光学配置生成プログラムでは、情報処理装置に、鏡面を有する被検査体の形状を形成する点群の位置座標と、前記点群に対する法線ベクトルと、を含む形状データを取得するステップと、前記形状データを用いて、前記被検査体を撮像するための撮像点と、前記被検査体の前記鏡面で正反射した反射光の光路上に前記撮像点が存在するような照明点との、前記被検査体に対するそれぞれの配置パターンを示す光学配置データを生成し、出力するステップと、を実行させる。
【００２０】
（１０）本発明の一形態によれば、光学配置生成方法が提供される。この光学配置生成方法では、情報処理装置を用いて、鏡面を有する被検査体の形状を形成する点群の位置座標と、前記点群に対する法線ベクトルと、を含む形状データを取得する工程と、前記形状データを用いて、前記被検査体を撮像するための撮像点と、前記被検査体の前記鏡面で正反射した反射光の光路上に前記撮像点が存在するような照明点との、前記被検査体に対するそれぞれの配置パターンを示す光学配置データを生成し、出力する工程と、を実行する。
【００２１】
（１１）本発明の一形態によれば、表面検査システムが提供される。この表面検査システムは、鏡面を有する被検査体の形状を形成する点群の位置座標と前記点群に対する法線ベクトルとを含む形状データを取得し、前記形状データを用いて、前記被検査体を撮像するための撮像点と、前記被検査体の前記鏡面で正反射した反射光の光路上に前記撮像点が存在するような照明点との、前記被検査体に対するそれぞれの配置パターンを示す光学配置データを生成する光学配置生成部と、前記被検査体を写り込ませる照明源と、前記被検査体を撮像する撮像部と、前記照明源及び前記撮像部それぞれを３次元方向に移動可能に駆動する駆動部と、前記光学配置データを用いて、前記駆動部の駆動を制御する駆動制御部と、を備える。
【００２２】
なお、本発明は、種々の態様で実現することが可能であり、例えば、光学配置生成装置及び光学配置生成方法、光学配置生成装置を含むシステム、これら装置、方法、システムにおいて実行されるコンピュータプログラム、そのコンピュータプログラムを配布するためのサーバ装置、そのコンピュータプログラムを記憶した一時的でない記憶媒体等の形態で実現することができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の実施形態における外観検査システムの概要を説明する図である。
【図２】本実施形態における外観検査システムの概略構成を示す図である。
【図３】本実施形態における光学配置生成装置によるカメラと照明源の配置パターンの生成の処理の全体の流れを示すフローチャートである。
【図４】本実施形態における鏡面を有する被検査体の形状データの一例を示す図である。
【図５】被検査体の形状データに対する撮像エリアの生成処理（ステップＳ２）を示すフローチャートである。
【図６】被検査体の形状データから算出した代表線の一例を示す図である。
【図７】図６の代表線上に配置した初期プロト点の一例を示す図である。
【図８】図６の代表線上に付与した重みと初期プロト点の一例を示す図である。
【図９】代表線の初期プロト点に対して重み付きＫ−ｍｅａｎｓ法を実行した結果を示す図である。
【図１０】重み付きＫ−ｍｅａｎｓ法実行後の代表線に配置したプロト点の一例を示す図である。
【図１１】図１０の代表線に配置したプロト点を中心とする撮像エリアの一例を示す図である。
【図１２】屋根型の被検査体の断面の一例と、撮像エリアの分割の一例を示す図である。
【図１３】被検査体の形状データに対して設定される撮像エリアの例を示す図である。
【図１４】形状データの基準とする点ｐに対する、カメラの傾き角θとカメラまでの距離Ｄを説明する図である。
【図１５】点ｐに対するカメラの配置方法の一例を示す図である。
【図１６】カメラ配置の設定処理（ステップＳ３）を示すフローチャートである。
【図１７】各撮像エリアにおける被検査体の形状データの幾何学的特徴の一例を説明する図である。
【図１８】図１７の幾何学的特徴に基づくカメラの配置方法を説明する図である。
【図１９】カメラ配置の設定処理（ステップＳ３）に基づいて被検査体の形状データに対して生成したカメラの配置例を示す図である。
【図２０】カメラ配置の設定処理（ステップＳ３）に基づいて各撮像エリアに配置された各カメラにより撮像される画像例を示す図である。
【図２１】撮像エリアに対する重みの加算分を示す図である。
【図２２】本実施形態における重み更新回数と撮像範囲網羅率の関係を示す図である。
【図２３】照明源の配置の設定処理（ステップＳ６）のフローチャートである。
【図２４】本実施形態における照明源の配置方法について説明する図である。
【図２５】本実施形態における照明源の方向を決める際の演算方法について説明する図である。
【図２６】図３のステップＳ７で出力される光学配置データに基づいて作成された被検査体に対するカメラと照明源の配置パターンを示す図である。
【図２７】本実施形態の一実施例における全体の実行処理例を示すフローチャートである。
【発明を実施するための形態】
【００２４】
図１は、本発明の実施形態における外観検査システムの概要を説明する図である。外観検査システム１は、鏡面を有する被検査体５を検査対象とし、被検査体５の外観を検査するシステムである。図１に示す外観検査システム１では、被検査体５に写り込んだ照明源３の発光面３ａをカメラ２で撮像する。カメラ２と照明源３とは、ロボットアームに把持され（又は設けられ）、それぞれｘ方向、ｙ方向、ｚ方向の３次元方向に移動可能なように構成されている。ここで、ｚ方向は鉛直方向を表し、ｘ方向及びｙ方向はｚ方向に対して垂直な方向であってかつｘ方向とｙ方向が垂直の関係になる方向を表す。また、各照明源３の前面には、発光面３ａとして所定パターンの開口を有するスリットが設けられていてもよい。
【００２５】
カメラ２により撮像される画像平面２ｂは、カメラ２のイメージセンサに対応し、画像を形成するピクセル２ｃから構成される。撮像線６は、カメラ原点ｏとピクセル２ｃを通る直線であり、ピクセルの数だけ存在する。この撮像線６はピクセル２ｃで受光する光の経路を表している。カメラ２で撮像される画像を構成するピクセル２ｃの輝度は、撮像線６に沿ってカメラ原点ｏに向かって伝播する光の強度に比例する。ここで、符号７は、光の伝播方向を示す。
【００２６】
被検査体５は、その表面が鏡面を有する立体形状の物体である。被検査体５は、例えばＬ字形状やＳ字形状等の様々な形状に屈曲または湾曲した形状を有していてもよく、このため表面が凹凸状に湾曲して、さらに、表面がめっき処理されて鏡面である部品であってもよい。
【００２７】
鏡面を有する被検査体５をカメラ２で撮像する場合、画像平面２ｂに到達する光の強度分布は、被検査体５で反射した撮像線６と交差する発光面３ａの光強度の分布で決まる。つまり、その反射した撮像線６と発光面３ａの交差における光強度が高い場合、撮像線６に対応するピクセル２ｃの輝度が高くなる。反対に、撮像線６と発光面３ａの交差における光強度がゼロに近い場合、対応するピクセル２ｃの輝度は、被検査体５が存在しない場合と同程度の輝度となる。
【００２８】
図２は、本実施形態における外観検査システム１の概略構成を示す図である。外観検査システム（表面検査システム）１は、表面が鏡面である立体形状の被検査体５の外観表面を検査する表面検査装置である。表面検査システム１は、カメラ２、照明源３、ロボットアーム４、アーム駆動部１０、駆動制御部１１、演算部１２、検査部１３、光学配置生成装置１４を含む。照明源３は、被検査体５に光を写り込ませるものであり、例えば照明装置である。カメラ２は、照明源３からの光が写り込んだ被検査体５の鏡面を撮像する撮像装置である。ロボットアーム４には、カメラ２及び照明源３が把持され（又は設けられ）ている。アーム駆動部１０は、駆動制御部１１からの指示に基づいてロボットアーム４を、ｘ方向、ｙ方向、ｚ方向の３次元方向に移動させる。なお、ロボットアームは、１つでもよいし、または複数でもよい。また、カメラ２及び照明源３は、１つのロボットアームに設けられていてもよいし、異なるロボットアームにそれぞれ設けられていてもよい。
【００２９】
光学配置生成装置１４は、検査用画像取得のためのカメラ２及び照明源３の配置パターンの生成において、鏡面を有する被検査体を対象としたカメラ２及び照明源３の配置パターンに関する光学配置データを生成する。光学配置生成装置１４は、例えばコンピュータ等の情報処理装置であって、制御部１５、記憶部１６、通信部１７、入力部１８、出力部１９、バス２０を含む。バス２０は、制御部１５、記憶部１６、通信インターフェース（以下、インターフェースを「Ｉ／Ｆ」と称する。）１７、入力Ｉ／Ｆ１８、出力Ｉ／Ｆ１９を電気的に接続する信号線である。
【００３０】
制御部１５は、光学配置生成装置全体の動作を制御する電子装置であり、例えば中央演算装置（ＣＰＵ）であってもよい。制御部１５は、後述する光学配置プログラムを実行することにより、取得部１５ａ、生成部１５ｂとして機能する。取得部１５ａは、鏡面を有する被検査体の形状を形成する点群の位置座標と、点群（形状の表面）に対する法線ベクトルと、を含む形状データを取得する。より具体的には、取得部１５ａは、通信Ｉ／Ｆ１７、入力Ｉ／Ｆ１８を介して入力された、または予め記憶部１６に記憶された形状データを取得する。生成部１５ｂは、形状データを用いて、被検査体を撮像するための撮像点と、被検査体の鏡面で反射した反射光の光路上に撮像点が存在するような照明点との、被検査体に対するそれぞれの配置パターンを示す光学配置データを生成し、出力する。光学配置データの出力先は、記憶部１６であってもよいし、通信Ｉ／Ｆ１７を介して駆動制御部１１や他の装置であってもよいし、ユニバーサルシリアルバス（ＵＳＢ）メモリ装置等の記録媒体等であってもよいし、プリンタやディスプレイ等の出力装置であってもよい。
【００３１】
記憶部１６は、情報を記憶するメモリ装置の総称であり、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ソリッドステートドライブ（ＳＳＤ）、ハードディスク、フラッシュメモリカードなど様々な形式の記憶装置を使用することができる。記憶部１６には、オペレーティングシステム（ＯＳ）や本実施形態に係るプログラムが格納されている。
【００３２】
通信Ｉ／Ｆ１７は、無線または有線により駆動制御部１１やその他の装置と通信を可能にする通信インターフェースである。入力Ｉ／Ｆ１８は、キーボード等の入力装置（不図示）や、ＵＳＢメモリ装置やフラッシュメモリ等の記録装置等から入力された指令やデータを、制御部１５や記憶部１６へ伝達するインターフェースである。出力Ｉ／Ｆ１９は、表示装置やプリンタ等の出力装置（不図示）や、ＵＳＢメモリ装置及びフラッシュメモリ等の記録装置等に文字や画像等を出力するインターフェースである。
【００３３】
本実施形態で説明する処理を実現するプログラムは、プログラム提供者側から通信ネットワーク及び通信Ｉ／Ｆ１７を介して、例えば記憶部１６に格納されてもよい。また、上記実施形態で説明した処理を実現するプログラムは、市販され、流通している可搬型記憶媒体に格納されていてもよい。この場合、この可搬型記憶媒体は外付け又は内蔵の読取装置にセットされて、制御部１５によってそのプログラムが読み出されて、実行されてもよい。可搬型記憶媒体としてはＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、フレキシブルディスク、光ディスク、光磁気ディスク、ＩＣカード、ＵＳＢメモリ装置など様々な形式の記憶媒体を使用することができる。このような記憶媒体に格納されたプログラムが読取装置によって読み取られる。
【００３４】
駆動制御部１１は、光学配置生成装置１４によって生成された光学配置データを用いて、カメラ２、照明源、及びアーム駆動部１０の動作を制御する。演算部１２は、カメラ２により撮像された複数の画像をそれぞれ微分処理して、これら微分処理後の複数の画像を加算する。検査部１３は、演算部１２による加算後の画像に基づいて、被検査体５の鏡面表面のきずを検査する。なお、駆動制御部１１、演算部１２、検査部１３及び光学配置生成装置１４は、１つの情報処理装置に含まれていてもよいし、異なる情報処理装置に含まれていてもよい。
【００３５】
図３は、本実施形態における光学配置生成装置１４によるカメラと照明源の配置パターンの生成の処理の全体の流れを示すフローチャートである。本実施形態の全体の流れとしては、鏡面を有する被検査体５の形状データに対して撮像エリアを生成する段階（ステップＳ２）、各撮像エリアに対してカメラ２を配置する段階（ステップＳ３〜Ｓ５）、撮像線６が反射する方向に応じて照明源３を配置する段階（ステップＳ６）に分けられる。また、カメラ２を配置する段階では、被検査体の表面の範囲に対する各カメラ２の撮像範囲に応じて撮像エリアを調整することにより、各カメラ２による撮像範囲が最大となるように、カメラ２の配置を調整することができる。以下では、図３を用いて、光学配置生成装置１４の制御部１５により実行される本実施形態の全体の処理について説明する。
【００３６】
図３において、まず、制御部１５は、鏡面を有する被検査体５の形状データを読み込む（ステップＳ１）。制御部１５は、読み込んだ被検査体５の形状データから、被検査体５を撮像するための複数の撮像エリアを生成し（ステップＳ２）、カメラ２の配置（位置及び向き）を設定し（ステップＳ３）、カメラ２による撮像範囲を算出し（ステップＳ４）、カメラ２の配置（位置及び向き）の調整を行う（ステップＳ５）。その後、制御部１５は、照明源３の配置（位置及び向き）を設定し（ステップＳ６）、カメラ２の配置と照明源３の配置に関する光学配置データを出力する（ステップＳ７）。以下では、ステップＳ１〜Ｓ７の各処理を順次説明する。
【００３７】
図４は、本実施形態における鏡面を有する被検査体の形状データの一例を示す図である。被検査体５は、その表面が鏡面状になっている物体である。鏡面状は、例えばステンレスやめっき加工、研磨等により光が反射して物が写る鏡状になっていることを意味する。被検査体５の形状データは、立体的形状の表面を表す点群の座標値、表面に対する法線ベクトルｎ、及び各点の繋がりを表すメッシュデータを含む。本実施形態では、一例として、図４に表す形状データを用いる。なお、このような被検査体５の形状データが、図３のステップＳ１の処理にて、制御部１５に読み込まれる。
【００３８】
ステップＳ２の処理の詳細なフローについて説明する。
【００３９】
図５は、被検査体５の形状データに対する撮像エリアの生成処理（ステップＳ２）を示すフローチャートである。図６は、被検査体５の形状データから算出した代表線の一例を示す図である。図７は、図６の代表線上に配置した初期プロト点の一例を示す図である。図８は、図６の代表線上に付与した重みと初期プロト点の一例を示す図である。図９は、代表線の初期プロト点に対して重み付きＫ−ｍｅａｎｓ法を実行した結果を示す図である。図１０は、重み付きＫ−ｍｅａｎｓ法実行後の代表線に配置したプロト点の一例を示す図である。図１１は、図１０の代表線に配置したプロト点を中心とする撮像エリアの一例を示す図である。図１２は、屋根型の被検査体の断面の一例と、撮像エリアの分割の一例を示す図である。図１３は、被検査体の形状データに対して設定される撮像エリアの例を示す図である。以下、図６〜図１３を参照しながら、図５について説明する。例えば、被検査体５の形状データに対する撮像エリアは、次の手順で生成される。
【００４０】
制御部１５は、例えば、図４に表す被検査体５の形状データに対して、図６に示すように、被検査体５の背骨に相当するような、被検査体５の形状の代表線を生成する（ステップＳ１１）。なお、今回の代表線の生成方法は、一例として被検査体５の形状データに対して、一辺が５０ｍｍのボックスを並べて生成し、被検査体５の形状データが含まれるボックスにおいて、形状データの点群の位置座標の平均を求めて代表点とし、ボックス毎に生成した代表点を接続することにより代表線とする。ボックスの大きさは任意に決定できる。なお、代表線は、この生成方法に限定されず、例えば、位置座標の分散や標準偏差を求めて代表点としてもよい。また、形状データにより示される被検査体の外形（輪郭）を求めて代表点とし、それらを繋げて代表点を接続することにより代表線としてもよい。
【００４１】
次に、制御部１５は、使用するカメラ２における、イメージセンサのピクセルサイズ、カメラレンズの焦点距離、検査用画像の撮像分解能から、カメラの視野の幅ｗを決定する（ステップＳ１２）。なお、本実施形態では、一例として、カメラの視野の幅ｗ＝１００ｍｍとする。
【００４２】
次に、制御部１５は、例えば、図７に示すように、代表線に対して、初期プロト点を視野の幅ｗごとに配置する（ステップＳ１３）。初期プロト点を配置する幅ｗとは、初期プロト点とこれに隣接する初期プロト点との間の代表線の実際の距離を示す。なお、代表線を形成する線が点の集まりで構成されている場合、１つの点のサイズは予め判明しているから、隣接する初期プロト点間においてこの点の数の個数を計測することにより、隣接する初期プロト点間の幅の距離を計測して初期プロト点を配置してもよい。
【００４３】
次に、制御部１５は、図８に示すように、代表線に対して、その曲率に応じた重みを設定する（ステップＳ１４）。例えば、曲率が小さい場合は１．０に近づき、大きい場合には０．０に近づくような重みとできる。本実施形態では、一例として、代表線に対する主成分分析により得られる分散値を重みとして付与する。主成分分析とは、たくさんの量的な説明変数を、より少ない指標や合成変数（複数の変数が合体したもの）に要約する手法を示す。なお、本実施形態では、その曲率に応じた重みを設定するがこれに限定されず、様々な表面形状の変化の度合いに応じて重みを設定してもよい。
【００４４】
次に、制御部１５は、代表線を分類対象集合としてクラスタリングを行って分割することにより、プロト点の位置を調整する（ステップＳ１５）。制御部１５は、例えば、図９に示すように、代表線に対する重み付きＫ−ｍｅａｎｓ法により、プロト点の位置を調整することができる（例えば、非特許文献３）。なお、本実施形態では、一例として重み付きＫ−ｍｅａｎｓ法を用いるが、これに限定されず、その他のクラスタリング方法を用いてもよい。
【００４５】
次に、制御部１５は、ステップＳ１５の計算結果に基づいて、図１０に示すように、代表線のプロト点を再配置する（ステップＳ１６）。図５の撮像エリア５，１５に着目して、図５と図１０を比べてみると、曲率が高い部分に配置されていたプロト点がその曲率が高い部分の前後（左右）にずらされて配置されているが、このような曲率が高い部分は２方向から光を当てないと適切な画像を撮像できないから、プロト点の配置を調整している。
【００４６】
次に、制御部１５は、図１１に示すように、再配置されたプロト点を中心とした撮像エリアを生成する（ステップＳ１７）。本実施形態では、上述の通り、撮像エリアは、一例として、一辺がｗ＝１００ｍｍの矩形のエリアが生成される。
【００４７】
そして、制御部１５は、各撮像エリア内の被検査体５の断面形状の曲率に応じて撮像エリアを分割（グループ化）する（ステップＳ１８）。なお、ステップＳ１７で生成した全ての撮像エリア内の被検査体５の断面形状が屋根型であったため、制御部１５は、一例として、図１２に示すように、屋根の稜線に沿って撮像エリアを撮像エリアＡ１と撮像エリアＡ２に２分割する。これを図１１の形状データに対して行ったものが図１３である。なお、本実施形態では、断面形状の曲率に応じて撮像エリアを分割するがこれに限定されず、様々な表面形状の変化の度合いに応じて撮像エリアを２つ以上に分割してもよい。例えば、被検査体５の断面形状がコの字形状の場合にはその稜線に沿って撮像エリアを３つの撮像エリアに分割してもよい。表面形状に応じて撮像エリアをグループ化すれば、後述の非撮像範囲を低減することができる。
【００４８】
図１３は、図５の手順で被検査体５の形状データに生成された撮像エリアの一例を示す図である。撮像エリア１〜１９は、稜線に基づいて分割して得られた被検査体５の外側の撮像エリアである。撮像エリア２０〜３８は、稜線に基づいて分割して得られた被検査体５の内側の撮像エリアである。
【００４９】
次に、図３のステップＳ３の処理について説明する。
【００５０】
図１４は、形状データの基準とする点ｐに対する、カメラの傾き角θとカメラまでの距離Ｄを説明する図である。図１５は、点ｐに対するカメラの配置方法の一例を示す図である。図１で述べたように、被検査体５に写り込む発光面をカメラ２で撮像するためには、カメラ２と照明源３は、反射の法則を満足するように配置する必要がある。このため、カメラ２のｚ軸方向は被検査体５の法線ベクトルｎに対して傾いている必要がある。そこで、図１４に示すように、形状データの基準とする点ｐからカメラ原点ｏまでの距離Ｄ、点ｐにおける法線ベクトルｎに対する傾き角θを初期設定として与えることとする。
【００５１】
しかしながら、距離Ｄと傾き角θを与えただけでは、図１５に示すように、点ｐを頂点とする円錐２１の底面の外周線２２上に、カメラ２を任意に配置できることとなり、カメラ２の配置を一意に決定することができない。
【００５２】
そこで本実施形態では、ステップＳ２で生成した各撮像エリアにおける点群の座標値と法線ベクトルから幾何学的な特徴を算出し、それらの特徴に基づいて各撮像エリア内に１台のカメラ２を配置する方法を用いる。
【００５３】
図１６は、カメラ配置の設定処理（ステップＳ３）を示すフローチャートである。図１７は、各撮像エリアにおける被検査体の形状データの幾何学的特徴の一例を説明する図である。図１８は、図１７の幾何学的特徴に基づくカメラの配置方法を説明する図である。図１７及び図１８を参照しながら、ステップＳ２で生成された各撮像エリアに対して、カメラ２を配置する図１６のアルゴリズムについて述べる。各撮像エリアに対するカメラ２の配置は次の手順で設定する。
【００５４】
制御部１５は、各撮像エリア内の被検査体５の形状データの幾何学的な特徴を算出する（ステップＳ２１）。ここでは、制御部１５は、各撮像エリアの形状データを構成する点群の座標値と法線ベクトルｎに対する主成分分析により、図１７に示す幾何学的な特徴を算出する。
ｐａｖｇ：撮像エリア内の点群の位置座標の重心に最も近い点の位置座標（図１７（ａ））
ｎａｖｇ：撮像エリア内の点群の法線ベクトルの平均（図１７（ｂ））
ｖｍａｘ：撮像エリア内の点群の位置座標の分散が最大となる方向ベクトル（図１７（ｃ））
ｎｍａｘ：撮像エリア内の点群の法線ベクトルの分散が最大となる方向ベクトル（図１７（ｄ））
【００５５】
次に、制御部１５は、ｐａｖｇから距離Ｄだけ離れた位置にカメラ原点ｏを配置する（ステップＳ２２）。このとき、図１８（ａ）に示すように、カメラ２のｚ軸は方向ベクトル−ｎａｖｇと平行とし、ｘ軸方向は方向ベクトルｖｍａｘと方向ベクトルｎｍａｘからなる平面３１内に沿うものとする。
【００５６】
制御部１５は、図１８（ｂ）に示すように、カメラ２を方向ベクトルｎｍａｘを中心軸として、方向ベクトルｎｍａｘと直交する平面内で、±θだけ傾け２台配置する（ステップＳ２３）。
【００５７】
制御部１５は、図１８（ｃ）に示すように、撮像エリア内の頂点の法線ベクトルと、２台のカメラ２それぞれのｚ軸を向く単位方向ベクトルとの内積の分散を算出し、分散の小さい内積の方に配置したカメラ配置Ｃを、最終的なカメラ配置（カメラの位置座標及び向き）とする（ステップＳ２４）。ここで、分散の小さい内積の方に配置したカメラ配置を選択するのは、内積の分散が大きくなると、照明源３の走査範囲が広がるので好ましくないからであり、被検査体の表面に写り込む範囲が小さい方がより有効であるからである。
【００５８】
図１９は、カメラ配置の設定処理（ステップＳ３）に基づいて被検査体５の形状データに対して生成したカメラの配置例を示す図である。図１９中の数字１〜３８はそれぞれ、図１３の撮像エリア１〜３８に対応するカメラ配置位置１〜３８である。
【００５９】
図２０は、カメラ配置の設定処理（ステップＳ３）に基づいて各撮像エリアに配置された各カメラ２により撮像される画像例を示す図である。図２０（ａ）は、カメラ配置の設定処理（ステップＳ３）に基づいて撮像エリア１に配置されたカメラ２により撮像された画像例である。図２０（ｂ）は、カメラ配置の設定処理（ステップＳ３）に基づいて撮像エリア１に配置されたカメラ２により撮像された画像例である。図２０（ａ），（ｂ）では、カメラ２の視野Ｖを破線で表す。
【００６０】
次に、ステップＳ４のカメラによる撮像範囲の算出処理について説明する。各カメラ２による被検査体５の撮像範囲は、例えばレイトレーシング法などを用いて、各カメラ２の撮像線６から算出することができる（例えば、非特許文献４）。具体的には、制御部１５は、例えば、ピンホールカメラモデル２ａにおける、カメラ原点ｏから各ピクセル２ｃを向く方向ベクトルを有する撮像線６と、被検査体５の形状データの交点を算出することにより、撮像範囲を算出する。
【００６１】
上記の計算を各カメラ２に対して実行することにより、各カメラ２により撮像できる被検査体５の範囲（以降、「撮像範囲」と称す）、および各カメラ２では撮像できない被検査体５の範囲（以降、「非撮像範囲」と称す）、また、被検査体５の検査範囲の全面積（すなわち、被検査体５全体の表面積）と、撮像範囲の面積との比率（以下、「撮像範囲網羅率」と称す）を算出することができる。なお、被検査体５の表面が点の集まりで構成されている場合、１つの点のサイズは予め判明しているから、この点の数の個数を計測してその計測した点の個数を面積と同等に扱ってもよい。
【００６２】
次に、ステップＳ５のカメラ配置の調整処理について説明する。カメラ配置の設定処理（ステップＳ３）で生成した各カメラの配置による撮像範囲網羅率は、例えば８６％程度となる。この撮像範囲網羅率を１００％に近づけるためには、各カメラ２の配置を調整する必要がある。そこで、制御部１５は、カメラによる撮像範囲の算出処理（ステップＳ４）で算出された被検査体５の非撮像範囲に基づいて、図５のステップＳ１４の処理で算出した代表線の重みを更新し、ステップＳ２〜Ｓ４の計算を再度行う。被検査体５の非撮像範囲に基づいて重みを更新するとは、非撮像範囲に近い点や近いエリアに対してある定数を掛け、その定数の値を徐々に増やしていく。これによりカメラ２が非撮像範囲に寄っていくことができる。ここでの例では、重みの更新方法は、被検査体の外側に相当する撮像エリア１〜１９、内側に相当する撮像エリア２０〜３８で、代表線を別々に想定して、それぞれ異なる重みを付与する。代表線の重みに付与する加算分の例を図２１に示す。
【００６３】
図２１は、撮像エリアに対する重みの加算分を示す図である。図２１（ａ）は、撮像エリア１〜１９に対する重みの加算分を示す。図２１（ｂ）は、撮像エリア２０〜３８に対する重みの加算分を示す。
【００６４】
制御部１５は、上記の重みの更新と再計算を繰返し行い、カメラ２の配置を調整する。すると、重み更新回数と撮像範囲網羅率について、図２２の関係が得られる。
【００６５】
図２２は、本実施形態における重み更新回数と撮像範囲網羅率の関係を示す図である。初回の撮像範囲網羅率は約８６％であるが、非撮像範囲に基づいて、図５のステップＳ１４の処理で算出した代表線の重みを更新し、ステップＳ２〜Ｓ４の計算を再度行うことで、撮像範囲網羅率が上昇し、最大で約９６％まで上昇している。このように、重みの更新回数の増加に伴い、撮像範囲網羅率を上昇させることができる。このことから、制御部１５は、撮像範囲網羅率が最大または所定値以上になるまで、非撮像範囲に基づいて図５のステップＳ１４の処理で算出した代表線の重みを更新し、ステップＳ２〜Ｓ４の処理を繰り返す。
【００６６】
次に、図３のステップＳ６の処理について説明する。
【００６７】
図２３は、照明源の配置の設定処理（ステップＳ６）のフローチャートである。図２４は、本実施形態における照明源の配置方法について説明する図である。図２５は、本実施形態における照明源の方向を決める際の演算方法について説明する図である。図２４及び図２５を参照しながら、図２３で示すように、カメラ配置の調整処理（ステップＳ５）で調整した被検査体５の形状に対するカメラ２の配置に基づいて、照明源３の配置を設定する方法を述べる。
【００６８】
制御部１５は、カメラ２の原点ｏと画像平面の中心ｐＣを通る撮像線に沿った単位ベクトルｉと、被検査体５の反射点ｐの位置座標、反射点ｐにおける法線ベクトルｎから、反射ベクトルｒを式（１）に示す反射の法則から算出する（ステップＳ３１）。
ｒ＝２（ｉ・ｎ）ｎ−ｉ      ・・・（１）
【００６９】
次に、制御部１５は、撮像範囲の被検査体５の点群の位置座標に対して主成分分析を実施し、分散が最大となるベクトルｖｍａｘを算出する（ステップＳ３２）。
【００７０】
そして、制御部１５は、式（２）に示すように、カメラ原点ｏと反射点ｐとの間の距離、反射点ｐと照明源の中心点ｐｌとの間の距離の和が一定の距離Ｄｔとなるように、照明源３の中心点ｐｌの座標を決定する（ステップＳ３３）。例えば、Ｄｔ＝３００［ｍｍ］とする。
｜ｏ−ｐ｜＋｜ｐ−ｐｌ｜＝Ｄｔ      ・・・（２）
【００７１】
そして、制御部１５は、ステップＳ３１〜Ｓ３３の結果に基づいて、照明源３の配置を決定する（ステップＳ３４）。具体的には、照明源３のz軸方向を、反射ベクトル−ｒとする。また、図２５に示すように、ベクトルｖｍａｘとベクトル−ｒは直交しているとは限らないため、反射ベクトルrとベクトルｖｍａｘの外積から得られるベクトルsを照明源３のｙ軸方向、ベクトルｓと反射ベクトルｒの外積から得られるベクトルｍを照明源３のｘ軸方向とする。
【００７２】
図２６は、図３のステップＳ７で出力される光学配置データに基づいて作成された被検査体５に対するカメラ２と照明源３の配置パターンを示す図である。被検査体５のモデルの周囲において、曲面状に曲がっている帯が照明源３の発光面３ａの配置を示す。また、四角錐形状のものがカメラ２の配置を示す。
【００７３】
このようにして、光学配置生成装置１４は、被検査体５の形状データから、被検査体５に対するカメラ２と照明源３の配置パターンを示す光学配置データを生成することができる。光学配置生成装置１４によって生成された光学配置データは、駆動制御部１１によって読み込まれる。駆動制御部１１は、光学配置データが示す、被検査体５に対するカメラ２と照明源３の配置パターンに基づいて、アーム駆動部１０を制御してロボットアーム４を動作させ、カメラ２と照明源３を配置する。
【００７４】
図２７は、本実施形態の一実施例における全体の実行処理例を示すフローチャートである。制御部１５は、本実施形態に係るプログラム、すなわち記憶部１６に格納されている光学配置プログラムを読み出し、実行する。
【００７５】
制御部１５は、被検査体５の形状データを読み込む（ステップＳ４１）。制御部１５は、その被検査体５の形状データの背骨（骨格）に相当する代表線を生成する（ステップＳ４２）。制御部１５は、代表線に対する初期プロト点を配置する（ステップＳ４３）。制御部１５は、代表線に対する重みを付与する（ステップＳ４４）。制御部１５は、クラスタリングの一例として重み付きＫ−ｍｅａｎｓ法による代表線に対するプロト点を再配置する（ステップＳ４５）。制御部１５は、撮像エリア内の形状に応じて撮像エリアを分割する（ステップＳ４６）。制御部１５は、形状データの内側に相当する撮像エリアの代表線と、外側に相当する撮像エリアの代表線の重みをそれぞれ設定する（ステップＳ４７）。制御部１５は、各撮像エリアの形状データに対する特徴を算出する（ステップＳ４８）。制御部１５は、各撮像エリアのカメラ配置を算出する（ステップＳ４９）。制御部１５は、カメラ配置から撮像範囲、非撮像範囲、及び撮像範囲網羅率を算出する（ステップＳ５０）。
【００７６】
制御部１５は、撮像範囲網羅率が所定値以上か否かを判定する（ステップＳ５１）。所定値未満であると判定した場合（ステップＳ５１でＮＯ）、制御部１５は、非撮像範囲から形状データの内側及び外側の代表線に対する重みの加算分を算出し（ステップＳ５２）、ステップＳ４７の処理を行う。制御部１５は、撮像範囲網羅率が所定値以上になるまでステップＳ４７〜Ｓ５２の処理を繰り返す。この例では、図２２を参考に所定値は９５％で設定されているとする。
【００７７】
撮像範囲網羅率が所定値以上になった場合（ステップＳ５１でＹＥＳ）、制御部１５は、各撮像エリアに対するカメラ配置を決定する（ステップＳ５３）。制御部１５は、各カメラの画像平面の中心を通る撮像線に対する反射の法則から照明源の位置を決定する（ステップＳ５４）。制御部１５は、各カメラの撮像範囲に含まれる点群に対する主成分分析と、主成分分析により得られる、点群の位置座標の分散が最大となる主軸ベクトルと反射ベクトルとを用いて、グラムシュミット直交化法を利用することにより、照明源の向きを決定する（ステップＳ５５）。制御部１５は、形状データに対するカメラの配置と、照明源の配置に関するデータを出力する（ステップＳ５６）。
【００７８】
以上のように、本発明の実施形態における外観検査システム１によれば、鏡面を有する被検査体５（検査対象）の形状に応じたカメラ２の配置と照明源３の配置パターンを容易に生成することができる。具体的には、制御部１５（生成部１５ｂ）は、複数の撮像エリアを設定し（図３：ステップＳ２）、各撮像エリアに撮像点を初期配置し（図３：ステップＳ３）、撮像範囲の比率を用いて撮像点の配置を調整し（図３：ステップＳ４，Ｓ５）、撮像点の配置位置から照明点の配置位置を決定する（図３：ステップＳ６）ことにより、鏡面を有する被検査体５（検査対象）の形状に応じたカメラ２の配置と照明源３の配置パターンを容易に生成することができる。これにより、カメラ２（撮像装置）及び照明源３を把持したロボットアーム４に対する、カメラ２（撮像装置）及び照明源３の配置の教示工数を低減させることができる。
【００７９】
以上、実施形態、変形例に基づき本態様について説明してきたが、上記した態様の実施の形態は、本態様の理解を容易にするためのものであり、本態様を限定するものではない。本態様は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本態様にはその等価物が含まれる。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することができる。
【符号の説明】
【００８０】
１…外観検査システム（表面検査システム）
２…カメラ
３…照明源
４…ロボットアーム
５…被検査体
１０…アーム駆動部
１１…駆動制御部
１２…演算部
１３…検査部
１４…光学配置生成装置
１５…制御部
１５ａ…取得部
１５ｂ…生成部
１６…記憶部
１７…通信Ｉ／Ｆ
１８…入力Ｉ／Ｆ
１９…出力Ｉ／Ｆ
２０…バス
【図１】
2020051806.tif 000003
【図２】
2020051806.tif 000004
【図３】
2020051806.tif 000005
【図４】
2020051806.tif 000006
【図５】
2020051806.tif 000007
【図６】
2020051806.tif 000008
【図７】
2020051806.tif 000009
【図８】
2020051806.tif 000010
【図９】
2020051806.tif 000011
【図１０】
2020051806.tif 000012
【図１１】
2020051806.tif 000013
【図１２】
2020051806.tif 000014
【図１３】
2020051806.tif 000015
【図１４】
2020051806.tif 000016
【図１５】
2020051806.tif 000017
【図１６】
2020051806.tif 000018
【図１７】
2020051806.tif 000019
【図１８】
2020051806.tif 000020
【図１９】
2020051806.tif 000021
【図２０】
2020051806.tif 000022
【図２１】
2020051806.tif 000023
【図２２】
2020051806.tif 000024
【図２３】
2020051806.tif 000025
【図２４】
2020051806.tif 000026
【図２５】
2020051806.tif 000027
【図２６】
2020051806.tif 000028
【図２７】
2020051806.tif 000029