(57)【要約】【課題】ワークの表面を検査する検査しシステムにおいて、被検査面以外の領域を容易に特定可能とする技術が求められている。【解決手段】装置５０は、ワークの図面データを取得する図面取得部５２と、図面データにおいてワークの被検査面の指定を受け付ける指定受付部５４と、指定された被検査面の少なくとも一部が撮像部１６の視野に入る撮像位置にワークと撮像部１６とを位置決めしたときの該撮像部１６の視野内の画像において、被検査面以外の画像領域を、非検査領域として算出する非検査領域算出部５８とを備える。【選択図】図２
2018155695.tif 000002
【特許請求の範囲】
【請求項１】
ワークを撮像する撮像部と、前記ワークまたは前記撮像部を移動させて該ワークと該撮像部とを互いに位置決めする移動機構とを有する、ワーク表面を検査する検査システムの検査対象外となる画像領域を算出する装置であって、
前記ワークの図面データを取得する図面取得部と、
前記図面データにおいて前記ワークの被検査面の指定を受け付ける指定受付部と、
指定された前記被検査面の少なくとも一部が前記撮像部の視野に入る撮像位置に前記ワークと前記撮像部とを位置決めしたときの該撮像部の視野内の画像において、前記被検査面以外の画像領域を非検査領域として算出する非検査領域算出部と、を備える、装置。
【請求項２】
前記ワークと前記撮像部とを前記撮像位置に位置決めしたときに前記撮像部によって撮像されると推定される前記視野内の推定画像を、前記図面データに基づいて生成する画像生成部をさらに備え、
前記非検査領域算出部は、前記画像生成部が生成した前記推定画像に含まれる前記被検査面以外の画像領域を、前記非検査領域として算出する、請求項１に記載の装置。
【請求項３】
前記画像生成部は、
前記図面データに基づいて、前記被検査面に点群を生成する点群生成部と、
前記ワークと前記撮像部とを前記撮像位置に位置決めしたときに撮像されると推定される前記被検査面の少なくとも一部に生成された前記点群の各々を、前記視野を規定する撮像部座標系にプロットすることによって、前記推定画像を生成するプロット画像生成部と、を有する、請求項２に記載の装置。
【請求項４】
前記非検査領域に前記被検査面とは異なる色を与えるか、または、前記非検査領域を検査対象外とするためのフラグを前記非検査領域の画素に付与する、マスク生成部をさらに備える、請求項１〜３のいずれか１項に記載の装置。
【請求項５】
前記移動機構は、前記ワークを予め定められた把持位置で把持して、該ワークを前記撮像部に対して移動させる、請求項１〜４のいずれか１項に記載の装置。
【請求項６】
前記撮像部は、前記移動機構に固定され、該移動機構よって前記ワークに対して移動される、請求項１〜５のいずれか１項に記載の装置。
【請求項７】
前記非検査領域算出部は、前記被検査面の互いに異なる複数の領域が前記撮像部の前記視野に入る複数の前記撮像位置に前記ワークと前記撮像部とを位置決めしたときの、該複数の撮像位置の各々に関して、前記撮像部の視野内の前記画像における前記非検査領域を算出する、請求項１〜６のいずれか１項に記載の装置。
【請求項８】
請求項１〜７のいずれか１項に記載の装置を備える、検査システム。
【請求項９】
ワークを撮像する撮像部と、前記ワークまたは前記撮像部を移動させて該ワークと該撮像部とを互いに位置決めする移動機構とを有する、ワーク表面を検査する検査システムの検査対象外となる領域を算出する方法であって、
前記ワークの図面データを取得することと、
前記図面データにおいて前記ワークの被検査面の指定を受け付けることと、
指定された前記被検査面の少なくとも一部が前記撮像部の視野に入る撮像位置に前記ワークと前記撮像部とを位置決めしたときの該撮像部の視野内の画像において、前記被検査面以外の画像領域を非検査領域として算出することと、を備える、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークの表面を検査する検査システムの検査対象外となる領域を算出する装置、および検査対象外となる領域を算出する方法に関する。
【背景技術】
【０００２】
ワークの表面の傷等を検査するための検査システムが知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平７−６３５３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述のような検査システムにおいては、ワークの表面を検査するとき、該表面を撮像部によって撮像し、撮像した画像から傷等を検出する。この場合において、撮像した画像に、検査すべき被検査面以外の領域が存在し得る。従来、このような被検査面以外の領域を容易に特定可能とする技術が求められている。
【課題を解決するための手段】
【０００５】
本発明の一態様において、ワークを撮像する撮像部と、前記ワークまたは前記撮像部を移動させて該ワークと該撮像部とを互いに位置決めする移動機構とを有する、ワーク表面を検査する検査システムの検査対象外となる画像領域を算出する装置は、ワークの図面データを取得する図面取得部と、前記図面データにおいて前記ワークの被検査面の指定を受け付ける指定受付部と、指定された前記被検査面の少なくとも一部が前記撮像部の視野に入る撮像位置に前記ワークと前記撮像部とを位置決めしたときの該撮像部の視野内の画像において、前記被検査面以外の画像領域を非検査領域として算出する非検査領域算出部とを備える。
【０００６】
本発明の他の態様において、ワークを撮像する撮像部と、前記ワークまたは前記撮像部を移動させて該ワークと該撮像部とを互いに位置決めする移動機構とを有する、ワーク表面を検査する検査システムの検査対象外となる領域を算出する方法は、前記ワークの図面データを取得することと、図面データにおいて前記ワークの被検査面の指定を受け付けることと、指定された前記被検査面の少なくとも一部が前記撮像部の視野に入る撮像位置に前記ワークと前記撮像部とを位置決めしたときの該撮像部の視野内の画像において、前記被検査面以外の画像領域を、非検査領域として算出することとを備える。
【発明の効果】
【０００７】
本開示の一態様によれば、ワークの図面データから、検査システムによって検査する必要のない非検査領域を算出できる。これにより、被検査面の検査時に非検査領域を自動で算出することができるので、オペレータが撮像部の視野毎に非検査領域を手動で設定する作業を省くことができる。
【図面の簡単な説明】
【０００８】
【図１】一実施形態に係る検査システムの斜視図である。
【図２】図１に示す検査システムのブロック図である。
【図３】図１に示すロボットハンドの拡大図であって、該ロボットハンドを、ツール座標系のｙ軸プラス方向から見た図である。
【図４】図１の撮像部およびワークを拡大した拡大図である。
【図５】ワークと撮像部とが第１の撮像位置に位置決めされたときの被検査面における視野を示す図である。
【図６】ワークと撮像部とが第１の撮像位置に配置されたときに撮像部によって撮像される画像の例を示す。
【図７】ワークと撮像部とが第ｎの撮像位置（ｎ＝１〜１２）に配置されたときの被検査面における視野を示す図である。
【図８】図１に示す装置の動作フローの一例を示すフローチャートである。
【図９】ワークの図面データを示す。
【図１０】図８中のステップＳ４で生成される点群の例を示す。
【図１１】図８中のステップＳ６のフローの一例を示すフローチャートである。
【図１２】図１１に示すステップＳ６の一連のフローによって生成される推定画像の例を示す。
【図１３】他の実施形態に係る点群の例を示す。
【図１４】図１３に示す点群を基にステップＳ６で生成される推定画像の例を示す。
【図１５】他の実施形態に係る検査システムのブロック図である。
【図１６】図１５に示す装置の動作フローの一例を示すフローチャートである。
【図１７】図１６中のステップＳ２１で生成されるマスクデータの一例を示す。
【図１８】さらに他の実施形態に係る検査システムの斜視図である。
【図１９】図１８に示す装置の動作フローの一例を示すフローチャートである。
【図２０】図１９中のステップＳ６’の動作フローの一例を示すフローチャートである。
【図２１】さらに他の実施形態に係る検査システムの斜視図である。
【図２２】図２１に示す装置の動作フローの一例を示すフローチャートである。
【図２３】図２２中のステップＳ３０の動作フローの一例を示すフローチャートである。
【図２４】図２１に示す撮像部の各撮像素子の視線を説明するための図である。
【図２５】さらに他の実施形態に係る検査システムの斜視図である。
【発明を実施するための形態】
【０００９】
以下、本開示の実施の形態を図面に基づいて詳細に説明する。なお、以下に説明する種々の実施形態において、同様の要素には同じ符号を付し、重複する説明を省略する。まず、図１〜図３を参照して、一実施形態に係る検査システム１０について説明する。
【００１０】
検査システム１０は、制御部１２、移動機構１４、撮像部１６、照明装置１８、および装置５０（図２）を備える。制御部１２は、ＣＰＵおよび記憶部（図示せず）等を有し、移動機構１４、撮像部１６および照明装置１８を制御する。
【００１１】
本実施形態においては、移動機構１４は、垂直多関節ロボットであって、ロボットベース２０、旋回胴２２、ロボットアーム２４、手首部２６、およびロボットハンド２８を有する。ロボットベース２０は、作業セルの床の上に固定されている。旋回胴２２は、鉛直軸周りに旋回可能となるように、ロボットベース２０に設けられている。
【００１２】
ロボットアーム２４は、旋回胴２２に回動可能に連結された上腕部３０と、該上腕部３０の先端に回動可能に連結された前腕部３２とを有する。手首部２６は、前腕部３２の先端に取り付けられ、ロボットハンド２８を３軸周りに回動可能となるように支持している。
【００１３】
図３に示すように、ロボットハンド２８は、ハンドベース３４、複数の指部３６、および指部駆動部（図示せず）を有する。ハンドベース３４は、手首部２６に連結されている。複数の指部３６は、ハンドベース３４に開閉可能に設けられている。
【００１４】
複数の指部３６は、ハンドベース３４から一方へ向かって延び、互いに対向する面に、段差部３６ａを有する。ロボットハンド２８がワークＷを把持するとき、ワークＷの上面ＳＵは、段差部３６ａと係合する。指部駆動部は、例えばエアシリンダであって、ハンドベース３４に内蔵されている。指部駆動部は、制御部１２からの指令に応じて、指部３６を開閉させる。
【００１５】
移動機構１４は、複数のサーボモータ３８（図２）を有する。サーボモータ３８は、移動機構１４の旋回胴２２、ロボットアーム２４、および手首部２６にそれぞれ内蔵され、制御部１２からの指令（速度指令、トルク指令等）に応じて、これらの構成要素を駆動する。
【００１６】
移動機構１４の各構成要素を制御するための自動制御の座標系の１つとして、ロボット座標系ＣＲ（図１）が設定される。制御部１２は、ロボット座標系ＣＲを基準として、該移動機構１４の各構成要素を動作させる。例えば、ロボット座標系ＣＲのｚ軸は、実空間の鉛直方向に平行であり、旋回胴２２は、ロボット座標系ＣＲのｚ軸周りに回動される。
【００１７】
一方、ロボットハンド２８に対しては、ツール座標系ＣＴが設定される。このツール座標系ＣＴは、自動制御の座標系の１つであって、該ツール座標系ＣＴの位置および方向をロボット座標系ＣＲで表現することにより、空間内でのロボットハンド２８の位置および姿勢を規定する。
【００１８】
図３に示すように、本実施形態においては、ツール座標系ＣＴの原点が、指部３６の段差部３６ａの間に位置し、指部３６が、ハンドベース３４からツール座標系ＣＴのｚ軸プラス方向へ延出し、ツール座標系ＣＴのｘ軸方向へ開閉するように、ツール座標系ＣＴが設定されている。
【００１９】
制御部１２は、ロボットハンド２８の位置および姿勢を、ツール座標系ＣＴによって規定される位置および姿勢に一致させるように、ロボット座標系ＣＲにおいて旋回胴２２、ロボットアーム２４、および手首部２６を動作させる。こうして、ロボットハンド２８は、ロボット座標系ＣＲにおいて任意の位置および姿勢に配置される。
【００２０】
撮像部１６は、フォーカスレンズ等の光学系と、ＣＣＤセンサまたはＣＭＯＳセンサ等の撮像センサとを有する。本実施形態においては、撮像部１６は、ロボット座標系ＣＲにおける予め定められた位置に、移動機構１４から離隔して固定されている。撮像部１６は、制御部１２からの指令に応じて、ワークＷ等の物体を撮像し、撮像した画像を制御部１２へ送信する。
【００２１】
撮像部１６の固定位置、および該撮像部１６の光軸Ｏ（すなわち、撮像部１６の光学系に入射する被写体像の光路）は、ロボット座標系ＣＲにおいて座標化され、制御部１２の記憶部に予め記憶される。これにより、制御部１２は、ロボット座標系ＣＲにおける撮像部１６および光軸Ｏの位置を、認識できる。
【００２２】
照明装置１８は、白熱灯、蛍光灯、またはＬＥＤ等を有し、予め定められた位置に固定される。照明装置１８は、制御部１２からの指令に応じてＯＮ／ＯＦＦし、ＯＮとなっているときに、移動機構１４に把持されたワークＷへ光を照射する。
【００２３】
次に、図１〜図７を参照して、検査システム１０によってワークＷの被検査面ＳＩを検査する動作の概要について、説明する。図４および図５に示すように、本実施形態においては、ワークＷは、長方形の板部材であって、計４個の孔Ｈを有する。
【００２４】
ワークＷの被検査面ＳＩを検査するとき、制御部１２は、まず、移動機構１４を動作させて、予め定められた保管場所に保管されたワークＷを、ロボットハンド２８によって把持する。このとき、ロボットハンド２８は、ワークＷを、予め指定された把持位置で把持する。この把持位置の指定については、後述する。
【００２５】
次いで、制御部１２は、移動機構１４を動作させて、被検査面ＳＩの少なくとも一部が撮像部１６の視野Ａに入る撮像位置にワークＷを移動させ、該ワークＷと該撮像部１６とを互いに位置決めする。撮像部１６の視野Ａについて、図４を参照して説明する。
【００２６】
撮像部１６には、撮像可能な範囲を示す視野角が存在する。この視野角は、撮像部１６の光学系および撮像センサの仕様に依存する。具体的には、カメラレンズの焦点距離が長い程、または撮像センサの受光面が小さい程、視野角は狭くなる。
【００２７】
撮像部１６の視野角の例を、図１および図４中の仮想線Ｂとして示す。この視野角Ｂと、撮像部１６と被検査面ＳＩとの間の距離Ｄとによって、図１に示すようにワークＷと撮像部１６とが位置決めされたときに撮像部１６が撮像可能な被検査面ＳＩ上の範囲（すなわち、視野Ａ）が、決定される。
【００２８】
つまり、この視野Ａは、撮像部１６と被検査面ＳＩとが互いから距離Ｄだけ離間するように配置されたときに、撮像部１６の焦点が合った状態で撮像部１６が撮像可能な被検査面ＳＩ上の領域を示す。なお、撮像部１６によって撮像される画像の解像度と視野Ａとは、反比例の関係にあり、視野Ａが小さい程、得られる画像の解像度は高くなる。
【００２９】
ロボットハンド２８によってワークＷの把持位置を把持した後、制御部１２は、移動機構１４を動作させて、ロボットハンド２８を、図１に示す第１の位置および姿勢に配置させる。
【００３０】
具体的には、制御部１２は、ツール座標系ＣＴを、図１に示す第１の位置および方向（すなわち、原点位置および各軸の方向）に設定する。そして、制御部１２は、移動機構１４を動作させて、ワークＷを把持したロボットハンド２８を、図１に示すツール座標系ＣＴによって規定される位置および姿勢に一致させるように、移動する。
【００３１】
その結果、ロボットハンド２８は、第１の位置および姿勢に配置され、ロボットハンド２８によって把持しているワークＷは、撮像部１６に対して第１の撮像位置に位置決めされる。このとき、撮像部１６の視野Ａは、被検査面ＳＩに対して、図１、図４、および図５に示す位置に配置される。そして、撮像部１６の光軸Ｏは、被検査面ＳＩと直交し、且つ、撮像部１６と被検査面ＳＩとは、距離Ｄだけ互いから離間する。
【００３２】
次いで、制御部１２は、照明装置１８に指令を送り、該照明装置１８をＯＮとする。これにより、移動機構１４に把持されたワークＷは、照明装置１８によって照らされることになる。
【００３３】
次いで、制御部１２は、撮像部１６に撮像指令を送る。撮像部１６は、制御部１２から撮像指令を受信すると、ワークＷの被検査面ＳＩを撮像する。ワークＷと撮像部１６とを第１の撮像位置に位置決めしたときに撮像部１６によって撮像される画像の例を、図６に示す。
【００３４】
図６に示す画像４０は、ワークＷと撮像部１６とを第１の撮像位置に位置決めしたとき（すなわち、ワークＷを把持するロボットハンド２８が第１の位置および姿勢に配置されたとき）に、撮像部１６の視野Ａに入る画像である。撮像部１６によって撮像された画像４０の各画素は、図６中の撮像部座標系ＣＩで表される。換言すれば、撮像部座標系ＣＩは、撮像部１６が撮像した画像４０の各画素のｘ−ｙ座標を規定する。
【００３５】
ロボット座標系ＣＲにおける撮像部座標系ＣＩの位置および方向（すなわち、原点位置および各軸の方向）は、ロボット座標系ＣＲにおける撮像部１６の固定位置と、撮像部１６の視線方向および視野角とから、定められる。
【００３６】
次いで、制御部１２は、移動機構１４を動作させて、ワークＷを把持したロボットハンド２８を、第２の位置および姿勢に配置させる。ロボットハンド２８が第２の位置および姿勢に配置されたとき、ロボットハンド２８によって把持されているワークＷは、撮像部１６に対して第２の撮像位置に配置される。このとき、撮像部１６の視野Ａは、被検査面ＳＩに対して、図７中の領域Ａ２に示す位置に配置される。
【００３７】
ワークＷと撮像部１６とを第２の撮像位置に位置決めしたとき（すなわち、ロボットハンド２８を第２の位置および姿勢に配置させたとき）、制御部１２は、撮像部１６に撮像指令を送り、ワークＷの被検査面ＳＩを撮像し、撮像した画像を制御部１２に送信する。これにより、図７中の領域Ａ２に対応する画像が撮像される。
【００３８】
ここで、図７中の領域Ａｎ（ｎ＝１〜１２）は、ワークＷを把持したロボットハンド２８が第ｎの位置および姿勢に配置され、これにより、ワークＷが撮像部１６に対して第ｎの撮像位置に配置されたときの、被検査面ＳＩに対する撮像部１６の視野Ａの位置を表している。
【００３９】
図７に示すように、領域Ａｎと領域Ａｎ＋１とは、一辺が互いに一致するように、隣接している。なお、互いに隣接する２つの領域Ａｎの少なくとも一部が互いに重複するように、ワークＷおよび撮像部１６の第ｎの撮像位置を規定してもよい。
【００４０】
ロボットハンド２８を第ｎの位置および姿勢に配置するとき、制御部１２は、ツール座標系ＣＴを、第ｎの位置および方向に設定する。そして、制御部１２は、第ｎの位置および方向に配置されたツール座標系ＣＴによって規定される位置および姿勢に一致させるように、移動機構１４を動作させてロボットハンド２８を移動する。
【００４１】
このようにして、制御部１２は、ロボットハンド２８を第３の位置および姿勢、第４の位置および姿勢、・・・第ｎの位置および姿勢に順次配置させ、これにより、ロボットハンド２８によって把持されたワークＷを、撮像部１６に対して第３の撮像位置、第４の撮像位置、・・・第ｎの撮像位置に、順次位置決めする。制御部１２は、ワークＷと撮像部１６とをそれぞれの撮像位置に位置決めする毎に、撮像部１６によってワークＷの被検査面ＳＩを撮像する。
【００４２】
これにより、制御部１２は、図７中の領域Ａ１〜Ａ１２に対応する計１２個の画像を取得する。そして、制御部１２は、撮像部１６から取得した各画像を解析し、被検査面ＳＩに形成された傷痕等の欠陥を検出する。
【００４３】
制御部１２は、ロボットプログラムに従って、上述した一例の動作を実行する。このロボットプログラムは、例えば、オペレータが教示操作盤（図示せず）を用いて、ロボットハンド２８を第ｎの位置および姿勢に配置させる動作を移動機構１４に教示することによって、構築され得る。
【００４４】
または、ロボットプログラムは、移動機構１４がロボットハンド２８を第ｎの位置および姿勢に配置する動作を、ワークＷの図面データに基づいて自動的に生成することによって、構築することもできる。
【００４５】
ロボットプログラムは、ロボットハンド２８を第ｎの位置および姿勢に配置させるときの、ツール座標系ＣＴの第ｎの位置および方向の情報、ならびに移動機構１４の各サーボモータ３８の回転角度の情報を含む。
【００４６】
図６に示すように、撮像部１６が撮像した画像４０には、ワークＷの孔Ｈと、ワークＷの外部空間Ｅといった、被検査面ＳＩ以外の領域が含まれている。このような被検査面ＳＩ以外の領域Ｈ、Ｅは、検査システム１０によって検査する必要のない画像領域である。
【００４７】
本実施形態に係る装置５０は、このような検査対象外となる画像領域Ｈ、Ｅを自動で算出する。図２に示すように、装置５０は、図面取得部５２、指定受付部５４、画像生成部５６、および非検査領域算出部５８を備える。画像生成部５６は、点群生成部５７およびプロット画像生成部５９を有する。
【００４８】
なお、本実施形態においては、装置５０は、制御部１２に実装されている。したがって、図面取得部５２、指定受付部５４、画像生成部５６（点群生成部５７、プロット画像生成部５９）、および非検査領域算出部５８の機能は、制御部１２が担う。
【００４９】
以下、図８〜図１２を参照して、装置５０の動作フローについて説明する。図８に示すフローは、制御部１２がオペレータから非検査領域算出指令を受け付けたときに、開始する。
【００５０】
ステップＳ１において、制御部１２は、ワークＷの図面データ（２ＤＣＡＤまたは３ＤＣＡＤデータ等）を取得する。一例として、ワークＷの図面データは、制御部１２に通信可能となるように該制御部１２の外部に設置された外部サーバに記憶される。この場合、制御部１２は、このステップＳ１において、この外部サーバにアクセスし、該外部サーバからワークＷの図面データをダウンロードする。
【００５１】
他の例として、ワークＷの図面データは、ＥＥＰＲＯＭ（登録商標）等の外部メモリに記憶される。この場合、制御部１２は、外部メモリが取り外し可能に挿入されるＩ／Ｏポート（例えば、ＵＳＢポート）を有する。そして、ステップＳ１において、オペレータは、外部メモリを、制御部１２のＩ／Ｏポートに挿入し、制御部１２は、該外部メモリからワークＷの図面データをダウンロードする。
【００５２】
さらに他の例として、ワークＷの図面データは、制御部１２の記憶部に予め記憶される。この場合、制御部１２は、このステップＳ１において、該記憶部からワークＷの図面データを読み出す。
【００５３】
このように、本実施形態においては、制御部１２は、ワークＷの図面データを取得する図面取得部５２としての機能を担う。このステップＳ１において、制御部１２は、ワークＷの図面データとして、図９に示す３ＤＣＡＤデータのワークモデルＷＭを取得する。
【００５４】
ステップＳ２において、制御部１２は、被検査面ＳＩの指定を受け付ける。一例として、制御部１２には、ＬＣＤまたは有機ＥＬディスプレイ等の表示部と、キーボートまたはタッチパネル等の操作部が設けられる。
【００５５】
オペレータは、操作部を操作して、表示部に表示された図９に示すワークモデルＷＭにおいて、被検査面モデルＳＩＭを指定する。制御部１２は、オペレータによる操作部の操作を受け付けて、被検査面モデルＳＩＭの指定を受け付ける。
【００５６】
このように、本実施形態においては、制御部１２は、図面データにおける被検査面ＳＩ（すなわち、被検査面モデルＳＩＭ）の指定を受け付ける指定受付部５４としての機能を担う。
【００５７】
ステップＳ３において、制御部１２は、オペレータから、ロボットハンド２８がワークＷを把持するときの把持位置の指定を受け付ける。この把持位置は、ロボットハンド２８でワークＷを把持するときに制御部１２が設定するツール座標系ＣＴの位置および方向によって、決められる。例えば、オペレータは、制御部１２の操作部を操作して、表示部に表示されたワークモデルＷＭにおいて、ツール座標系ＣＴの原点の位置を指定する。
【００５８】
ここで、オペレータは、図９に示すように、ツール座標系ＣＴの原点の位置を、ワークモデルＷＭの上面モデルＳＵＭの中心に指定したとする。この場合、制御部１２は、保管場所に保管されたワークＷをロボットハンド２８で把持するとき、ツール座標系ＣＴの原点が該ワークＷの上面ＳＵの中心に位置し、且つ、ツール座標系ＣＴのｙ−ｚ平面が被検査面ＳＩと平行となるように、ツール座標系ＣＴを該ワークＷに対して設定する。
【００５９】
そして、制御部１２は、移動機構１４を動作させて、ロボットハンド２８を、設定されたツール座標系ＣＴによって規定される位置および姿勢に配置させ、該ロボットハンド２８によってワークＷを把持する。
【００６０】
その結果、ロボットハンド２８は、図１、図３および図４に示すように、オペレータが指定したツール座標系ＣＴに対応する把持位置で、ワークＷを把持することになる。制御部１２は、オペレータによる操作部の操作を受け付けてツール座標系ＣＴの原点を、ワークモデルＷＭにおいて図９に示す位置に設定する。
【００６１】
ステップＳ４において、制御部１２は、ステップＳ１で取得した図面データを基に、ステップＳ２で指定された被検査面ＳＩ（すなわち、被検査面モデルＳＩＭ）に点群を生成する。被検査面モデルＳＩＭに点群を生成した画像の例を図１０に示す。
【００６２】
図１０に示す画像６０においては、被検査面モデルＳＩＭに点群６１が生成され、該点群６１は、被検査面モデルＳＩＭ上に均等に分散された複数の点を有する。これらの点の各々は、ステップＳ３で指定されたツール座標系ＣＴにおいて座標化される。こうして、被検査面モデルＳＩＭは、点群６１によって表される。
【００６３】
このように、本実施形態においては、制御部１２は、ワークＷの図面データに基づいて被検査面ＳＩ（すなわち、被検査面モデルＳＩＭ）に点群６１を生成する点群生成部５７としての機能を担う。
【００６４】
ステップＳ５において、制御部１２は、第ｎの撮像位置（すなわち、ロボットハンド２８が配置される第ｎの位置および姿勢、および、ツール座標系ＣＴが設定される第ｎの位置および方向）の番号「ｎ」を、「１」にセットする。
【００６５】
ステップＳ６において、制御部１２は、移動機構１４によってワークＷを撮像部１６に対して第ｎの撮像位置に位置決めしたときに撮像部１６によって撮像されると推定される推定画像を、ワークＷの図面データ（ワークモデルＷＭ）に基づいて生成する。
【００６６】
このステップＳ６について、図１１を参照して説明する。以下、ステップＳ６の開始時点で、第ｎの撮像位置の番号「ｎ」が「１」にセットされていた場合について、説明する。
【００６７】
ステップＳ１１において、制御部１２は、ワークＷを撮像部１６に対して第１の撮像位置に位置決めするときに設定されるツール座標系ＣＴの第１の位置および方向の情報を取得する。
【００６８】
上述したように、このツール座標系ＣＴの位置および方向は、教示等によって構築されたロボットプログラムに含まれている。制御部１２は、このステップＳ１１において、ツール座標系ＣＴの第１の位置および方向の情報を記憶部から読み出す。
【００６９】
ステップＳ１２において、制御部１２は、ツール座標系ＣＴを第１の位置および方向に配置したときの、ステップＳ４で生成した点群６１の各点のロボット座標系ＣＲにおける座標を算出する。図１０を用いて上述したように、点群６１の各点は、ツール座標系ＣＴの座標として表すことができる。
【００７０】
制御部１２は、ステップＳ１１で取得したツール座標系ＣＴの第１の位置および方向の情報に基づいて、ツール座標系ＣＴを第１の位置および方向に配置したときの、点群６１の各点のツール座標系ＣＴにおける座標を、ロボット座標系ＣＲに変換する。
【００７１】
具体的には、制御部１２は、点群６１の各点のツール座標系ＣＴにおける座標に変換行列を乗算することによって、点群６１の各点のツール座標系ＣＴにおける座標を、ロボット座標系ＣＲに変換する。この変換行列は、第１の位置および方向に配置されたツール座標系ＣＴの座標をロボット座標系に変換するための行列（例えば、ヤコビ行列）である。
【００７２】
こうして、制御部１２は、ツール座標系ＣＴを第１の位置および方向に配置したときの、点群６１の各点のロボット座標系ＣＲにおける座標を算出する。このように算出された各点の座標は、図１および図４に示すように位置決めされた被検査面ＳＩに点群６１を生成したときの、各点のロボット座標系ＣＲにおける座標に相当する。
【００７３】
次いで、制御部１２は、座標を算出した各点に番号「ｍ」を付与する。例えば、座標を算出した点の総数がγ（＝１００００）であるとすると、各点は、第ｍ番目（ｍ＝１〜γ）の点として、ナンバリングされる。ステップＳ１３において、制御部１２は、点に付与した番号「ｍ」を「１」にセットする。
【００７４】
ステップＳ１４において、制御部１２は、ステップＳ１２で座標を算出した点群６１の点のうち、第ｍ番目の点の座標を、撮像部座標系ＣＩへ変換（すなわち、投影）する。
【００７５】
具体的には、制御部１２は、ステップＳ１２で算出した第ｍ番目の点の座標に変換行列を乗算することによって、該第ｍ番目の点のロボット座標系ＣＲにおける座標を、撮像部座標系ＣＩへ変換する。この変換行列は、ロボット座標系ＣＲの座標を撮像部座標系ＣＩに変換するための行列（例えば、ヤコビ行列）である。
【００７６】
ステップＳ１５において、制御部１２は、ステップＳ１４で変換された撮像部座標系ＣＩの座標（ｘ，ｙ）が、予め定められた範囲（例えば、０≦ｘ≦α、且つ、０≦ｙ≦β）に収まっているか否かを判定する。この予め定められた範囲は、撮像部１６の視野Ａの範囲を規定するものであって、撮像部１６の仕様に応じて定められ、制御部１２の記憶部に記憶される。
【００７７】
制御部１２は、点の座標が予め定められた範囲に収まっている（すなわち、ＹＥＳ）と判定した場合、ステップＳ１６へ進む。一方、制御部１２は、点の座標が予め定められた範囲外である（すなわち、ＮＯ）と判定した場合、ステップＳ１７へ進む。
【００７８】
ステップＳ１６において、制御部１２は、ステップＳ１４で変換された撮像部座標系ＣＩの座標を点でプロットした画像を生成する。このように、本実施形態においては、制御部１２は、プロット画像生成部５９としての機能を担う。
【００７９】
ステップＳ１７において、制御部１２は、点に付与した番号「ｍ」を、「１」だけインクリメント（すなわち、ｍ＝ｍ＋１）する。
【００８０】
ステップＳ１８において、制御部１２は、点に付与した番号「ｍ」が、点の総数「γ」よりも大きい値となったか否かを判定する。制御部１２は、番号「ｍ」が「γ」よりも大きい（すなわち、ＹＥＳ）と判定した場合、図１１に示すフローを終了し、図８のステップＳ７へ進む。一方、制御部１２は、番号「ｍ」が「γ」以下である（すなわち、ＮＯ）と判定した場合、ステップＳ１４へ戻る。
【００８１】
こうして、制御部１２は、ステップＳ１８にてＹＥＳと判定するまで、ステップＳ１４〜Ｓ１８をループし、点群６１の点のうち、撮像部座標系ＣＩに変換（投影）した場合に視野Ａの範囲に収まるものをプロットした画像を生成する。
【００８２】
このように生成された画像の例を図１２に示す。図１２に示す画像６２は、ワークＷを撮像部１６に対して第１の撮像位置に位置決めしたときに撮像部１６によって撮像されると推定される画像（すなわち、推定画像）であって、図６に示す視野Ａの画像に対応する。
【００８３】
この推定画像６２は、撮像部座標系ＣＩの原点と、撮像部座標系ＣＩの点Ｐ１（α，０）、点Ｐ２（α，β）、Ｐ３（０，β）とによって画定され、点群６１が撮像部座標系ＣＩに変換された点群６１’を含む。
【００８４】
このように、制御部１２は、点群生成部５７として機能して点群６１を生成し、プロット画像生成部５９として機能して点群６１の各々を撮像部座標系ＣＩにプロットすることによって、推定画像６２を生成している。したがって、制御部１２は、ワークＷの図面データに基づいて推定画像６２を生成する画像生成部５６としての機能を担う。
【００８５】
再度、図８を参照して、ステップＳ７において、制御部１２は、非検査領域を算出する。具体的には、制御部１２は、ステップＳ６で生成した推定画像６２に含まれる点群６１’の領域以外の画像領域を、非検査領域として算出する。
【００８６】
図１２に示すように、推定画像６２においては、点群６１’の領域以外の画像領域として、画像領域Ｈ’およびＥ’がある。画像領域Ｈ’は、図６に示す孔Ｈに対応する領域であり、画像領域Ｅ’は、図６に示す外部空間Ｅに対応する領域である。
【００８７】
例えば、制御部１２は、推定画像６２内の単位区域（例えば、１０画素×１０画素の区域）当たりの点群６１’の点の個数を算出し、該個数が予め定められた閾値以下である場合、該区域が点群６１’以外の画像領域Ｈ’、Ｅ’であると判定する。
【００８８】
制御部１２は、この動作を推定画像６２の全域に亘って実行することによって、画像領域Ｈ’およびＥ’を算出することができる。このように、本実施形態においては、制御部１２は、画像領域Ｈ’およびＥ’を非検査領域Ｈ’およびＥ’として算出する非検査領域算出部５８としての機能を担う。
【００８９】
ステップＳ８において、制御部１２は、第ｎの撮像位置の番号「ｎ」を、「１」だけインクリメント（すなわち、ｎ＝ｎ＋１）する。ステップＳ９において、制御部１２は、番号「ｎ」が１２よりも大きい値となったか否かを判定する。
【００９０】
制御部１２は、番号「ｎ」が１２よりも大きい（すなわち、ＹＥＳ）と判定した場合、図８に示すフローを終了する。一方、制御部１２は、番号「ｎ」が１２以下である（すなわち、ＮＯ）と判定した場合、ステップＳ６へ戻る。
【００９１】
こうして、制御部１２は、ステップＳ９でＹＥＳと判定するまで、ステップＳ６〜Ｓ９をループする。これにより、制御部１２は、図７中の領域Ａｎ（ｎ＝１〜１２）に対応する、撮像部１６の視野Ａの推定画像を順次生成し、各推定画像において、非検査領域を算出する。このようにして、制御部１２は、第ｎの撮像位置（すなわち、領域Ａｎ）の各々に関して、非検査領域を算出する。
【００９２】
上記したように、本実施形態においては、制御部１２は、ワークＷの図面データから、検査システム１０によって検査する必要のない非検査領域Ｈ’、Ｅ’を算出している。この構成によれば、被検査面ＳＩの検査時に非検査領域Ｈ’、Ｅ’を自動で算出することができるので、オペレータが視野Ａ毎に非検査領域を手動で設定する作業を省くことができる。したがって、検査システム１０の立ち上げに掛かる工数を削減できる。
【００９３】
また、本実施形態によれば、ワークＷと撮像部１６とを位置決めする撮像位置を変更したとしても、変更後の撮像位置に応じて非検査領域を自動で算出できる。したがって、移動機構１４の位置および姿勢を変更する毎に非検査領域の設定を修正する作業を省くことができる。
【００９４】
また、本実施形態によれば、実空間で制御部１２がロボットハンド２８を第ｎの位置および姿勢に配置させるときに用いるパラメータ（例えば、ツール座標系ＣＴの位置および方向）に基づいて、図１２に示す推定画像６２を生成している。
【００９５】
この構成によれば、被検査面ＳＩの検査時に撮像部１６が実空間で撮像した画像４０における領域Ｈ、Ｅと、ステップＳ１６で生成した推定画像６２における非検査領域Ｈ’、Ｅ’とを、高精度に一致させることができる。
【００９６】
なお、上述のステップＳ４において、制御部１２は、ステップＳ１で取得した図面データを基に、被検査面ＳＩのエッジにのみ点群を生成してもよい。このような画像を、図１３に示す。図１３に示す画像６４においては、被検査面ＳＩの端縁６６、６８、７０、および７２と、孔Ｈを画定する壁面７４、７６、７８、および８０とに点群が生成されている。
【００９７】
この実施形態の場合、図１１のステップＳ１２において、制御部１２は、ツール座標系ＣＴを第ｎの位置および方向に配置したときの、点群６６、６８、７０、７２、７４、７６、７８、および８０の各点のロボット座標系ＣＲにおける座標を算出し、座標を算出した各点に番号「ｍ」を付与する。
【００９８】
そして、ステップＳ１４において、制御部１２は、ステップＳ１２で座標を算出した点群６６、６８、７０、７２、７４、７６、７８、および８０の点のうち、第ｍ番目の点の座標を、撮像部座標系ＣＩへ変換（すなわち、投影）する。
【００９９】
そして、ステップＳ１６において、制御部１２は、撮像部１６の視野Ａの推定画像を生成し、該推定画像において、ステップＳ１４で変換された撮像部座標系ＣＩの座標を点でプロットする。このように生成された推定画像の例を図１４に示す。
【０１００】
図１４に示す推定画像８２は、図１２と同様に、ワークＷを撮像部１６に対して第１の撮像位置に位置決めしたときに撮像部１６の視野Ａに入る画像（図６）に対応する。図１４に示す推定画像８２には、図１３に示す点群７０および７２が変換された点群７０’および７２’と、図１３に示す点群７６が変換された点群７６’が含まれている。
【０１０１】
そして、図８のステップＳ７において、制御部１２は、推定画像８２に含まれた点群７０’、７２’および７６’に基づいて、非検査領域Ｈ’およびＥ’を算出する。例えば、制御部１２は、ステップＳ１４において、図１３の点群７４、７６、７８および８０の内側の領域を非検査領域として識別するための情報（例えばフラグ）を、該点群７４、７６、７８および８０を構成する各点に付与する。
【０１０２】
また、制御部１２は、点群６６、６８、７０および７２で囲まれる領域を被検査面ＳＩの領域として識別するための情報（例えばフラグ）を、該点群６６、６８、７０および７２を構成する各点に付与する。
【０１０３】
これにより、ステップＳ１４で点群６６、６８、７０、７２、７４、７６、７８および８０を変換したときに、変換元の点群６６、６８、７０、７２、７４、７６、７８および８０に付与された情報を参照して、変換後の点群によって画定される領域が非検査領域であるか否かを判定できる。
【０１０４】
次に、図１および図１５を参照して、他の実施形態に係る検査システム９０について説明する。検査システム９０は、制御部１２、移動機構１４、撮像部１６、照明装置１８、および装置１００を備える。本実施形態においては、装置１００は、制御部１２に実装されており、マスク生成部１０２をさらに備える点で上述の装置５０と相違する。
【０１０５】
以下、図１６を参照して、装置１００の動作について説明する。なお、図１６に示すフローにおいて、図８に示すフローと同様のプロセスには同じステップ番号を付し、詳細な説明を省略する。図１６のフローを開始した後、制御部１２は、上述の実施形態と同様に、ステップＳ１〜ステップＳ７を実行する。
【０１０６】
ステップＳ７の後、ステップＳ２１において、制御部１２は、マスクデータを生成する。このマスクデータとは、検査システム９０が被検査面ＳＩを検査するときに撮像部１６が実空間で撮像した被検査面ＳＩの画像（例えば、図６に示す画像４０）に対して、該画像内に存在する被検査面ＳＩ以外の領域（例えば、図６に領域Ｈ、Ｅ）を検査対象外とするための処理を実行するデータである。
【０１０７】
以下、検査システム９０が被検査面ＳＩを検査するときに、撮像部１６が、図６に示す画像４０を撮像した場合について説明する。
【０１０８】
一例として、制御部１２は、ステップＳ２１において、ステップＳ６で生成した推定画像６２（図１２）の点群６１’の点を削除して非検査領域Ｈ’およびＥ’だけを抽出し、抽出した非検査領域Ｈ’およびＥ’を、被検査面ＳＩとは異なる単一色（例えば、黒色）で塗り潰したマスクデータを生成する。
【０１０９】
このようなマスクデータの一例を、図１７に示す。図１７に示すマスクデータ１０４においては、非検査領域Ｈ’およびＥ’を表す画素が黒色に塗り潰されている。制御部１２は、生成したマスクデータ１０４を記憶部に記憶する。
【０１１０】
そして、制御部１２は、被検査面ＳＩの検査時に撮像部１６が撮像した画像４０に、ステップＳ２１で生成したマスクデータ１０４を重ね合せる。これにより、非検査領域Ｈ’およびＥ’に一致する画像４０の画素（すなわち、図６中の孔Ｈおよび外部空間Ｅを表す画素）は、単一色に塗り潰されることになる。
【０１１１】
その結果、傷痕等の欠陥を検出すべく制御部１２が画像４０を解析したときに、画像４０における孔Ｈおよび外部空間Ｅの領域が単一色に塗り潰されているので、該領域には如何なる特徴も存在し得ず、故に、傷痕等の欠陥が検出されることがない。こうして、検査システム９０によって検査する必要のない画像４０内の領域Ｈ、Ｅを、検査対象から実質除外することができる。
【０１１２】
また、他の例として、制御部１２は、非検査領域Ｈ’およびＥ’に一致する画像４０の画素を、被検査面ＳＩの検査時に行う画像解析の対象から除外させるマスクデータを生成してもよい。
【０１１３】
例えば、制御部１２は、このステップＳ２１において、ステップＳ６で生成した推定画像６２から非検査領域Ｈ’およびＥ’だけを抽出し、該非検査領域Ｈ’およびＥ’にフラグ付与機能を持たせたマスクデータを生成する。
【０１１４】
そして、制御部１２は、検査面ＳＩの検査時に撮像部１６が撮像した画像４０に、生成したマスクデータを重ね合せて、マスクデータに含まれる非検査領域Ｈ’およびＥ’に一致する画像４０の画素にフラグを付与する。
【０１１５】
この場合、制御部１２は、傷痕等の欠陥を検出すべく画像４０を解析するとき、該フラグが付与された画素に関しては、画像解析を行わない。こうして、検査システム９０によって検査する必要のない画像４０内の領域Ｈ、Ｅを、検査対象から除外することができる。
【０１１６】
このように、本実施形態においては、制御部１２は、非検査領域Ｈ’、Ｅ’に被検査面ＳＩとは異なる色を与えるか、または、非検査領域Ｈ’、Ｅ’を検査対象外とするためのフラグを画素に付与するマスク生成部１０２（図１５）としての機能を担う。
【０１１７】
本実施形態によれば、ステップＳ７で算出した非検査領域Ｈ’、Ｅ’を利用して、検査が不要な画像領域を検査対象から除外することができるので、検査システム９０による被検査面ＳＩの検査作業を迅速化することができる。また、検査時に制御部１２が画像解析するときの情報処理量を削減できるので、制御部１２のリソース（例えば、ＣＰＵ）に掛かる負担を軽減することもできる。
【０１１８】
次に、図２および図１８を参照して、さらに他の実施形態に係る検査システム１１０について説明する。検査システム１１０は、上述した検査システム１０と、以下の構成において相違する。
【０１１９】
すなわち、検査システム１１０においては、撮像部１６は、移動機構１４の手首部２６に固定されている。その一方で、ワークＷは、ワーク保持部１１２に固定され、ロボット座標系ＣＲにおける予め定められた位置に、移動機構１４から離隔して配置される。制御部１２の記憶部は、ロボット座標系ＣＲにおけるワークＷの固定位置の情報を、予め記憶する。
【０１２０】
本実施形態においては、ツール座標系ＣＴが、撮像部１６に対して設定される。このツール座標系ＣＴは、自動制御の座標系の１つであって、該ツール座標系ＣＴの位置をロボット座標系ＣＲ上で表現することにより、空間内での撮像部１６の位置および姿勢を規定する。本実施形態においては、ツール座標系ＣＴのｚ軸が、撮像部１６の光軸Ｏと一致するように、ツール座標系ＣＴが設定されている。
【０１２１】
制御部１２は、撮像部１６の位置および姿勢を、ツール座標系ＣＴによって規定される位置および姿勢に一致させるように、ロボット座標系ＣＲにおいて旋回胴２２、ロボットアーム２４、および手首部２６を動作させる。こうして、撮像部１６は、ロボット座標系ＣＲにおいて任意の位置および姿勢に配置される。
【０１２２】
次に、検査システム１１０によってワークＷの被検査面ＳＩを検査する動作の概要について、説明する。ワークＷの被検査面ＳＩを検査するとき、制御部１２は、移動機構１４を動作させて、被検査面ＳＩの少なくとも一部が撮像部１６の視野Ａに入る撮像位置に撮像部１６を移動させて、該ワークＷと該撮像部１６とを互いに位置決めする。
【０１２３】
具体的には、制御部１２は、ツール座標系ＣＴを、第１の位置および方向に設定する。そして、制御部１２は、移動機構１４を動作させて、撮像部１６を、第１の位置および方向に設定されたツール座標系ＣＴによって規定される第１の位置および姿勢に一致させるように、移動する。
【０１２４】
その結果、撮像部１６は、第１の位置および姿勢に配置され、これにより、ワークＷに対して第１の撮像位置に位置決めされる。次いで、制御部１２は、照明装置１８に指令を送り、該照明装置１８をＯＮとする。これにより、ワーク保持部１１２に固定されたワークＷは、照明装置１８によって照らされることになる。
【０１２５】
次いで、制御部１２は、撮像部１６に撮像指令を送る。撮像部１６は、制御部１２から撮像指令を受信すると、ワークＷの被検査面ＳＩを撮像する。撮像部１６をワークＷに対して第１の撮像位置に位置決めしたときに該撮像部１６によって撮像される画像の例を、図６に示す。
【０１２６】
図６に示す画像４０は、撮像部１６とワークＷとを第１の撮像位置に位置決めしたときに該撮像部１６の視野Ａに入る画像である。撮像部１６によって撮像される画像４０の各画素は、図６中の撮像部座標系ＣＩで表される。
【０１２７】
ロボット座標系ＣＲにおける撮像部座標系ＣＩの位置および方向は、ロボット座標系ＣＲにおける撮像部１６の位置と、該撮像部１６の視線方向および視野角とから、求めることができる。
【０１２８】
次いで、制御部１２は、移動機構１４を動作させて、撮像部１６を第２の位置および姿勢に配置させる。これにより、撮像部１６は、ワークＷに対して第２の撮像位置に位置決めされる。撮像部１６をワークＷに対して第２の撮像位置に位置決めしたとき、撮像部１６の視野Ａは、被検査面ＳＩに対して、図７中の領域Ａ２に示す位置に配置される。
【０１２９】
撮像部１６とワークＷとを第２の撮像位置に配置させたとき、制御部１２は、撮像部１６に撮像指令を送り、ワークＷの被検査面ＳＩを撮像する。これにより、図７中の領域Ａ２に対応する画像が撮像される。
【０１３０】
このようにして、制御部１２は、撮像部１６を第３の位置および姿勢、第４の位置および姿勢、・・・第ｎの位置および姿勢に順次配置させ、これにより、撮像部１６をワークＷに対して第３の撮像位置、第４の撮像位置、・・・第ｎの撮像位置に、順次位置決めする。制御部１２は、撮像部１６とワークＷとをそれぞれの撮像位置に位置決めする毎に、撮像部１６によってワークＷの被検査面ＳＩを撮像する。
【０１３１】
こうして、制御部１２は、図７中の領域Ａ１〜Ａ１２に対応する計１２個の画像を取得する。そして、制御部１２は、撮像部１６から取得した各画像を解析し、被検査面ＳＩに形成された傷痕等の欠陥を検出する。
【０１３２】
次に、図１９および図２０を参照して、検査システム１１０に設けられた装置５０の機能について、説明する。なお、図１９に示すフローにおいて、図８に示すフローと同様のプロセスには同じステップ番号を付し、詳細な説明を省略する。
【０１３３】
ステップＳ２の後、ステップＳ３’において、制御部１２は、ロボット座標系ＣＲにおけるワークＷの固定位置の指定を受け付ける。例えば、オペレータは、制御部１２の操作部を操作して、ロボット座標系ＣＲにおけるワークＷの位置を規定するパラメータを入力する。
【０１３４】
例えば、図１８に示す実施形態においては、ワークＷの被検査面ＳＩが、ロボット座標系ＣＲのｙ−ｚ平面と平行であり、且つ、ロボット座標系ＣＲの原点からｘ軸プラス方向へ所定距離だけ離隔した位置に配置されるように、ワークＷが固定されている。
【０１３５】
オペレータは、制御部１２の操作部を操作して、ロボット座標系ＣＲにおけるワークＷの配置を規定するためのパラメータ（被検査面ＳＩの角度、原点からの距離等）を入力する。制御部１２は、オペレータによる操作部の操作を受け付けて、ロボット座標系ＣＲにおけるワークＷの固定位置を取得する。
【０１３６】
ステップＳ５’において、制御部１２は、第ｎの撮像位置（すなわち、撮像部１６が配置される第ｎの位置および姿勢、および、ツール座標系ＣＴが設定される第ｎの位置および方向）の番号「ｎ」を「１」にセットする。
【０１３７】
ステップＳ６’において、制御部１２は、移動機構１４によって撮像部１６をワークＷに対して第ｎの撮像位置に位置決めしたときに該撮像部１６によって撮像されると推定される推定画像を、ワークＷの図面データ（ワークモデルＷＭ）に基づいて生成する。
【０１３８】
このステップＳ６’について、図２０を参照して説明する。なお、図２０に示すフローにおいて、図１１に示すフローと同様のプロセスには同じステップ番号を付し、詳細な説明を省略する。以下、ステップＳ６’の開始時点で、第ｎの撮像位置の番号「ｎ」が「１」にセット（ステップＳ５）されていた場合について、説明する。
【０１３９】
ステップＳ６’の開始後、ステップＳ１２’において、制御部１２は、ステップＳ４で生成した点群６１の各点のロボット座標系ＣＲにおける座標を算出する。ここで、上述のステップＳ３’において、ロボット座標系ＣＲにおけるワークＷの固定位置が指定されている。
【０１４０】
したがって、制御部１２は、ロボット座標系ＣＲにおけるワークＷの固定位置と、ステップＳ４で生成した点群６１とに基づいて、該固定位置に固定された被検査面ＳＩに相当する点群６１の点の各々のロボット座標系ＣＲにおける座標を、算出できる。そして、制御部１２は、座標を算出した各点に番号「ｍ」（ｍ＝１〜γ）を付与する。
【０１４１】
ステップＳ１４’において、制御部１２は、ステップＳ１２’で座標を算出した点群６１の点のうち、第ｍ番目の点の座標を、撮像部座標系ＣＩへ変換（すなわち、投影）する。
【０１４２】
このときの撮像部座標系ＣＩは、ツール座標系ＣＴが設定されている第１の位置および方向の情報と、撮像部１６の視線方向（すなわち、ツール座標系ＣＴのｚ軸）および視野角とから、定められる。
【０１４３】
制御部１２は、ステップＳ１２’で算出した点の座標に変換行列を乗算することによって、該点のロボット座標系ＣＲにおける座標を、撮像部座標系ＣＩへ変換する。この変換行列は、ロボット座標系ＣＲの座標を、撮像部座標系ＣＩに変換するための行列である。
【０１４４】
そして、制御部１２は、図２０中のステップＳ１８にてＹＥＳと判定するまで、ステップＳ１４’〜Ｓ１８をループし、図１２に示す推定画像６２を生成する。
【０１４５】
こうして、制御部１２は、図１９中のステップＳ９でＹＥＳと判定するまで、ステップＳ６’〜Ｓ９をループする。これにより、制御部１２は、図７中の領域Ａｎ（ｎ＝１〜１２）に対応する、撮像部１６の視野Ａの推定画像を順次生成し、各推定画像において、非検査領域を算出する。
【０１４６】
このように、本実施形態によれば、制御部１２は、上述の実施形態と同様に、ワークＷの図面データから非検査領域Ｈ’、Ｅ’を自動で算出することができるので、オペレータが視野Ａ毎に非検査領域を手動で設定する作業を省くことができる。したがって、検査システム９０の立ち上げに掛かる工数を削減できる。
【０１４７】
次に、図２１を参照して、さらに他の実施形態に係る検査システム１２０について説明する。検査システム１２０は、上述の検査システム１０と、装置１３０を備える点において相違する。本実施形態に係る装置１３０は、図面取得部５２、指定受付部５４、および非検査領域算出部１３２を備える。
【０１４８】
装置１３０は、制御部１２に実装されている。したがって、図面取得部５２、指定受付部５４、および非検査領域算出部１３２の機能は、制御部１２が担う。本実施形態においては、制御部１２は、上述の点群６１を生成し、撮像部１６に内蔵された撮像センサの各撮像素子の視線が、点群６１の点を通過するか否かを判定することによって、非検査領域を算出する。
【０１４９】
以下、図２４を参照して、撮像素子の視線について説明する。図２４の領域（ａ）は、撮像センサ１６ａの受光面の一部を拡大した拡大図である。撮像部１６は、撮像センサ１６ａと、少なくとも１つのレンズを含む光学系１６ｂとを有する。撮像センサ１６ａは、図２４の領域（ａ）に示すように、撮像部座標系ＣＩのｘ軸方向およびｙ軸方向に整列するように配設された複数の撮像素子Ｉを有する。
【０１５０】
撮像素子Ｉの各々は、視線Ｋを有する。この視線Ｋは、各撮像素子Ｉと焦点Ｊとを結ぶ仮想直線に一致する。ここで、ロボット座標系ＣＲにおける各撮像素子Ｉおよび焦点Ｊの座標は、ロボット座標系ＣＲにおける撮像部１６の固定位置、および撮像部１６の図面データ等から求めることができる。そして、各撮像素子Ｉの視線Ｋの、ロボット座標系ＣＲにおける座標（または関数）は、ロボット座標系ＣＲにおける各撮像素子Ｉおよび焦点Ｊの座標から求めることができる。
【０１５１】
制御部１２は、各撮像素子Ｉの視線Ｋを算出し、該視線Ｋが、生成した点群６１の点を通過するか否かを判定することによって、ワークＷが撮像部１６に対して第ｎの撮像位置に配置されたときに撮像部１６の視野Ａに入る画像（図６）に含まれる非検査領域Ｈ、Ｅを算出する。
【０１５２】
以下、図２２を参照して、装置１３０の動作フローについて説明する。なお、図２２に示すフローにおいて、図８に示すフローと同様のプロセスには同じステップ番号を付し、詳細な説明を省略する。図２２のフローを開始した後、制御部１２は、上述の実施形態と同様に、ステップＳ１〜Ｓ５を実行する。
【０１５３】
ステップＳ５の後、ステップＳ３０において、制御部１２は、非検査領域を算出する。このステップ３０について、図２３を参照して説明する。なお、図２３に示すフローにおいて、図１１に示すフローと同様のプロセスには同じステップ番号を付し、詳細な説明を省略する。
【０１５４】
図２３に示すフローを開始後、制御部１２は、上述のステップＳ１１を実行する。具体的には、制御部１２は、ワークＷを撮像部１６に対して第ｎの撮像位置に位置決めするときに設定されるツール座標系ＣＴの第ｎの位置および方向の情報を取得する。
【０１５５】
次いで、制御部１２は、上述のステップＳ１２を実行する。具体的には、制御部１２は、ツール座標系ＣＴを第ｎの位置および方向に配置したときの、点群６１の各点のロボット座標系ＣＲにおける座標を算出する。
【０１５６】
ステップＳ３１において、制御部１２は、各撮像素子Ｉに付与した番号「ｉ」を「１」にセットする。例えば、撮像部１６の撮像センサが、計１０７個の撮像素子Ｉを有する場合、各撮像素子Ｉは、１〜１０７のいずれかの番号「ｉ」を付与される。
【０１５７】
ステップＳ３２において、制御部１２は、第ｉ番目の撮像素子Ｉの視線Ｋｉを算出する。例えば、このステップＳ３２の開始時点で、撮像素子Ｉの番号「ｉ」が「１００」（すなわち、ｉ＝１００）にセットされていた場合、制御部１２は、第１００番目の撮像素子Ｉの視線Ｋ１００を算出する。
【０１５８】
上述したように、制御部１２は、ロボット座標系ＣＲにおける撮像部１６の固定位置、および撮像部１６の図面データ等から、ロボット座標系ＣＲにおける第ｉ番目の撮像素子Ｉおよび焦点Ｊの座標を求めることができる。
【０１５９】
そして、制御部１２は、これら座標から、ロボット座標系ＣＲにおける視線Ｋｉの座標（または関数）を算出できる。制御部１２は、算出した視線Ｋｉの座標（または関数）を、記憶部に記憶する。
【０１６０】
ステップＳ３３において、制御部１２は、ステップＳ３２で算出した視線Ｋｉが、ステップＳ４で生成した点群６１の点を通過するか否かを判定する。具体的には、制御部１２は、ステップＳ３２で算出した視線Ｋｉの座標（または関数）と、ステップＳ１２で算出した、点群６１の各点のロボット座標系ＣＲにおける座標とに基づいて、視線Ｋｉが、点群６１の１つの点を通過するか否かを判定する。
【０１６１】
制御部１２は、視線Ｋｉが点群６１の点を通過する（すなわち、ＹＥＳ）と判定した場合、ステップＳ３４へ進む。一方、制御部１２は、視線Ｋｉが点群６１の如何なる点も通過しない（すなわち、ＮＯ）と判定した場合、ステップＳ３５ヘ進む。
【０１６２】
ステップＳ３３でＹＥＳと判定した場合、ステップＳ３４において、制御部１２は、ワークＷが撮像部１６に対して第ｎの撮像位置に配置されたときに第ｉ番目の撮像素子Ｉが撮像する第ｉ画素を、被検査面Ｓ１を表示する被検査面画素として設定する。
【０１６３】
一方、ステップＳ３４において、ステップＳ３３でＮＯと判定した場合、ステップＳ３５において、制御部１２は、ワークＷが撮像部１６に対して第ｎの撮像位置に配置されたときに第ｉ番目の撮像素子Ｉが撮像する第ｉ画素を、非検査領域Ｈ、Ｅを表示する非検査領域画素として設定する。
【０１６４】
ステップＳ３６において、制御部１２は、第ｉ番目の撮像素子Ｉの番号「ｉ」を、「１」だけインクリメント（すなわち、ｉ＝ｉ＋１）する。ステップＳ３７において、制御部１２は、番号「ｉ」が、撮像素子Ｉの総数δ（例えば、δ＝１０７）よりも大きい値となったか否かを判定する。
【０１６５】
制御部１２は、番号「ｉ」が総数δよりも大きい（すなわち、ＹＥＳ）と判定した場合、ステップＳ３８へ進む。一方、制御部１２は、番号「ｉ」が総数δ以下である（すなわち、ＮＯ）と判定した場合、ステップＳ３２へ戻る。
【０１６６】
こうして、制御部１２は、ステップＳ３７でＹＥＳと判定するまで、ステップＳ３２〜Ｓ３７をループする。これにより、制御部１２は、全ての撮像素子Ｉに関して、それらの視線Ｋｉが点群６１の点を通過するか否かを判定し、第ｎの撮像位置で撮像部１６の視野Ａに入る画像を構成する画素を、被検査面画素または非検査領域画素に設定する。
【０１６７】
ステップＳ３８において、制御部１２は、被検査領域を画定する。具体的には、第ｉ画素（ｉ＝１〜δ）の設定（被検査面画素または非検査領域画素）に基づいて、ワークＷが撮像部１６に対して第ｎの撮像位置に配置されたときの、撮像部１６の視野Ａ内の画像（すなわち、第１画素〜第δ画素から構成される画像）に含まれる非検査領域（例えば、領域Ｈ、Ｅ）を画定する。
【０１６８】
一例として、制御部１２は、撮像部１６の視野Ａの画像内の単位区域（例えば、１０画素×１０画素の区域）当たりの被検査面画素の個数を算出し、該個数が予め定められた閾値以下である場合、該区域が非検査領域Ｈ、Ｅであると判定する。
【０１６９】
制御部１２は、この動作を視野Ａ内の画像の全域に亘って実行することによって、非検査領域Ｈ、Ｅを算出することができる。このように、本実施形態においては、制御部１２は、非検査領域Ｈ、Ｅを算出する非検査領域算出部１３２としての機能を担う。
【０１７０】
本実施形態によれば、制御部１２は、上述の推定画像６２を生成することなく、撮像素子Ｉの視線Ｋに基づいて、非検査領域Ｈ、Ｅを算出することができる。
【０１７１】
なお、撮像素子Ｉの視線Ｋｉは、該撮像素子Ｉに入射する被写体像に相当するので、ロボット座標系ＣＲにおける各撮像素子Ｉの視線Ｋｉの座標（または関数）は、直線ではなく、所定の断面積を有するビーム（例えば、円柱状）として算出されてもよい。または、点群６１の点は、所定の面積を有する閉領域（例えば、円）であってもよい。
【０１７２】
また、図２１に示す装置１３０の技術的概念は、図１８に示す検査システム（すなわち、撮像部１６が手首部２６に固定されている実施形態）にも適用可能であることが、当業者であれば容易に理解できよう。
【０１７３】
なお、制御部１２は、装置５０、１００、１３０の機能を、シミュレーションソフト等を用いて模擬的に実行してもよい。具体的には、制御部１２は、検査システム１０の構成要素（ロボットベース２０、旋回胴２２、ロボットアーム２４、手首部２６、およびロボットハンド２８）の３次元モデルおよびワークモデルＷＭを、仮想空間に配置する。
【０１７４】
そして、制御部１２は、被検査面モデルＳＩＭが撮像部１６の３次元モデルの仮想視野Ａに入るように、ワークモデルＷＭと撮像部１６の３次元モデルとを仮想空間内で模擬的に位置決めする。
【０１７５】
そして、制御部１２は、撮像部１６の３次元モデルによって被検査面モデルＳＩＭを模擬的に撮像し、仮想視野Ａ内の推定画像を生成する。そして、制御部１２は、生成した推定画像から非検査領域を算出する。このようなシミュレーション的手法によっても、上述の実施形態と同様に、非検査領域を算出できる。
【０１７６】
また、検査システム１０、９０、１１０、１２０の検査対象外とする画像領域（すなわち、非検査領域）は、任意に設定されてもよい。具体的には、検査システム１０または９０において、ロボットハンド２８がワークＷを把持したときに実空間の撮像部１６の視野Ａに入る画像には、被検査面ＳＩ上の指部３６が映り込む可能性がある。
【０１７７】
この場合において、制御部１２は、図８中のステップＳ４で点群６１を生成するときに、指部３６が配置される被検査面ＳＩ上の領域を、点群を付与する対象から除外する。指部３６が配置される被検査面ＳＩ上の領域は、指部３６の図面データと、ワークＷの図面データと、ロボットハンド２８がワークＷを把持する把持位置とから特定できる。
【０１７８】
これにより、制御部１２は、上述のステップＳ７において、指部３６が配置される被検査面ＳＩの画像領域を、非検査領域として算出することができる。その結果、該画像領域を検査システム１０の検査対象外とすることができる。
【０１７９】
また、上述の実施形態においては、画像生成部５６が、点群６１、６６、６８、７０、７２、７４、７６、７８、８０を生成し（ステップＳ４）、該点群６１、６１、６６、６８、７０、７２、７４、７６、７８、８０を撮像部座標系ＣＩへ変換して（ステップＳ１４、Ｓ１４’）、推定画像６２、８２を生成する場合について述べた。
【０１８０】
しかしながら、これに限らず、画像生成部５６は、ロボット座標系ＣＲにおいて、ツール座標系ＣＴを第ｎの位置および方向に配置したときの被検査面ＳＩの３次元モデル（すなわち、被検査面モデルＳＩＭ）をモデリングし、ロボット座標系ＣＲに配置された被検査面モデルＳＩＭを撮像部座標系ＣＩへ変換し、撮像部１６の視野Ａ内の推定画像を生成してもよい。この場合、制御部１２は、図６に示すような画像４０に略一致する推定画像を生成できる。
【０１８１】
また、上述の実施形態においては、装置５０、１００が、制御部１２に実装されている場合について述べた。しかしながら、これに限らず、装置５０、１００は、制御部１２とは別の要素として構成されてもよい。
【０１８２】
このような実施形態を図２５に示す。図２５に示す検査システム１０’は、制御部１２、移動機構１４、撮像部１６、照明装置１８、および装置５０’を備える。
【０１８３】
本実施形態においては、装置５０’は、制御部１２とは別の要素として構成され、制御部１２と通信可能に接続されている。装置５０’は、上述の装置５０と同様に、図８および図１１に示すフローを実行し、非検査領域を算出する。
【０１８４】
同様に、図２１に示す装置１３０を、制御部１２とは別の要素として構成してもよい。また、上述の検査システム１０、１０’、９０、１１０、または１３０から照明装置１８を省略し、例えば自然光によって被検査面ＳＩを照らしてもよい。
【０１８５】
また、上述の実施形態においては、移動機構１４が、垂直多関節ロボットから構成されている場合について述べたが、これに限らず、例えばローダ等によって構成されてもよい。
【０１８６】
また、上述の装置５０、５０’、１００、または１３０は、ＣＰＵおよび記憶部等を有する１つのコンピュータから構成されてもよい。または、図面取得部５２、指定受付部５４、画像生成部５６（点群生成部５７、プロット画像生成部５９）、非検査領域算出部５８および１３２、ならびに、マスク生成部１０２の各々が、ＣＰＵおよび記憶部等を有する１つのコンピュータから構成されてもよい。
【０１８７】
以上、実施形態を通じて本開示を説明したが、上述の実施形態は、特許請求の範囲に係る発明を限定するものではない。
【０１８８】
以上、実施形態を通じて本開示を説明したが、上述の実施形態は、特許請求の範囲に係る発明を限定するものではない。
【符号の説明】
【０１８９】
１０，１０’，９０，１１０，１３０    検査システム
１２    制御部
１４    移動機構
１６    撮像部
５０，５０’１００    装置
５２    図面取得部
５４    指定受付部
５６    画像生成部
５８，１３２    非検査領域算出部
１０２    マスク生成部
【図１】
2018155695.tif 000003
【図２】
2018155695.tif 000004
【図３】
2018155695.tif 000005
【図４】
2018155695.tif 000006
【図５】
2018155695.tif 000007
【図６】
2018155695.tif 000008
【図７】
2018155695.tif 000009
【図８】
2018155695.tif 000010
【図９】
2018155695.tif 000011
【図１０】
2018155695.tif 000012
【図１１】
2018155695.tif 000013
【図１２】
2018155695.tif 000014
【図１３】
2018155695.tif 000015
【図１４】
2018155695.tif 000016
【図１５】
2018155695.tif 000017
【図１６】
2018155695.tif 000018
【図１７】
2018155695.tif 000019
【図１８】
2018155695.tif 000020
【図１９】
2018155695.tif 000021
【図２０】
2018155695.tif 000022
【図２１】
2018155695.tif 000023
【図２２】
2018155695.tif 000024
【図２３】
2018155695.tif 000025
【図２４】
2018155695.tif 000026
【図２５】
2018155695.tif 000027
【手続補正書】
【提出日】平成30年7月11日(2018.7.11)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０１４６
【補正方法】変更
【補正の内容】
【０１４６】
このように、本実施形態によれば、制御部１２は、上述の実施形態と同様に、ワークＷの図面データから非検査領域Ｈ’、Ｅ’を自動で算出することができるので、オペレータが視野Ａ毎に非検査領域を手動で設定する作業を省くことができる。したがって、検査システム１１０の立ち上げに掛かる工数を削減できる。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１６３
【補正方法】変更
【補正の内容】
【０１６３】
一方、ステップＳ３３でＮＯと判定した場合、ステップＳ３５において、制御部１２は、ワークＷが撮像部１６に対して第ｎの撮像位置に配置されたときに第ｉ番目の撮像素子Ｉが撮像する第ｉ画素を、非検査領域Ｈ、Ｅを表示する非検査領域画素として設定する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０１７９
【補正方法】変更
【補正の内容】
【０１７９】
また、上述の実施形態においては、画像生成部５６が、点群６１、６６、６８、７０、７２、７４、７６、７８、８０を生成し（ステップＳ４）、該点群６１、６６、６８、７０、７２、７４、７６、７８、８０を撮像部座標系ＣＩへ変換して（ステップＳ１４、Ｓ１４’）、推定画像６２、８２を生成する場合について述べた。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０１８８
【補正方法】削除
【補正の内容】
【手続補正５】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ワークを撮像する撮像部と、前記ワークまたは前記撮像部を移動させて該ワークと該撮像部とを互いに位置決めする移動機構とを有する、ワーク表面を検査する検査システムの検査対象外となる画像領域を算出する装置であって、
前記ワークの図面データを取得する図面取得部と、
前記図面データにおいて前記ワークの被検査面の指定を受け付ける指定受付部と、
前記図面データに基づいて、前記被検査面に点群を生成する点群生成部と、
指定された前記被検査面の少なくとも一部が前記撮像部の視野に入る撮像位置に前記ワークと前記撮像部とを位置決めしたときの、前記移動機構を制御するための移動機構座標系における前記点群の座標データに基づいて、該撮像部の視野内の画像において前記被検査面以外の画像領域を非検査領域として算出する非検査領域算出部と、を備える、装置。
【請求項２】
前記ワークと前記撮像部とを前記撮像位置に位置決めしたときに前記撮像部によって撮像されると推定される前記視野内の推定画像を、前記図面データに基づいて生成する画像生成部を備え、
前記画像生成部は、
前記点群生成部と、
前記ワークと前記撮像部とを前記撮像位置に位置決めしたときに撮像されると推定される前記被検査面の少なくとも一部に生成された前記点群の各々を、前記座標データを用いて、前記視野を規定する撮像部座標系にプロットすることによって、前記推定画像を生成するプロット画像生成部と、を有し、
前記非検査領域算出部は、前記画像生成部が生成した前記推定画像に含まれる前記被検査面以外の画像領域を、前記非検査領域として算出する、請求項１に記載の装置。
【請求項３】
前記座標データと、前記撮像位置に前記ワークと前記撮像部とを位置決めしたときの該撮像部の複数の撮像素子の視線の、前記移動機構座標系における座標データと、に基づいて、該移動機構座標系において該視線が前記点群を構成する点を通過するか否かを判定する判定部をさらに備え、
前記非検査領域算出部は、前記撮像位置に前記ワークと前記撮像部とを位置決めしたときの該撮像部の視野内の画像を構成する、前記視線が前記点を通過すると判定された前記撮像素子に対応する被検査面画素と、前記視線が前記点を通過しないと判定された前記撮像素子に対応する非検査領域画素と、に基づいて、前記非検査領域を算出する、請求項１に記載の装置。
【請求項４】
ワークを撮像する撮像部と、前記ワークまたは前記撮像部を移動させて該ワークと該撮像部とを互いに位置決めする移動機構とを有する、ワーク表面を検査する検査システムの検査対象外となる画像領域を算出する装置であって、
前記ワークの図面データを取得する図面取得部と、
前記図面データにおいて前記ワークの被検査面の指定を受け付ける指定受付部と、
指定された前記被検査面の少なくとも一部が前記撮像部の視野に入る撮像位置に前記ワークと前記撮像部とを位置決めしたときに前記撮像部によって撮像されると推定される前記視野内の推定画像を、前記図面データに基づいて生成する画像生成部と、
前記撮像位置に前記ワークと前記撮像部とを位置決めしたときの該撮像部の視野内の画像において、前記被検査面以外の画像領域を非検査領域として算出する非検査領域算出部と、を備え、
前記画像生成部は、
前記図面データに基づいて、前記被検査面に点群を生成する点群生成部と、
前記ワークと前記撮像部とを前記撮像位置に位置決めしたときに撮像されると推定される前記被検査面の少なくとも一部に生成された前記点群の各々を、前記視野を規定する撮像部座標系にプロットすることによって、前記推定画像を生成するプロット画像生成部と、を有し、
前記非検査領域算出部は、前記画像生成部が生成した前記推定画像に含まれる前記被検査面以外の画像領域を、前記非検査領域として算出する、装置。
【請求項５】
前記非検査領域に前記被検査面とは異なる色を与えるか、または、前記非検査領域を検査対象外とするためのフラグを前記非検査領域の画素に付与する、マスク生成部をさらに備える、請求項１〜４のいずれか１項に記載の装置。
【請求項６】
前記移動機構は、前記ワークを予め定められた把持位置で把持して、該ワークを前記撮像部に対して移動させる、請求項１〜５のいずれか１項に記載の装置。
【請求項７】
前記撮像部は、前記移動機構に固定され、該移動機構よって前記ワークに対して移動される、請求項１〜６のいずれか１項に記載の装置。
【請求項８】
前記非検査領域算出部は、前記被検査面の互いに異なる複数の領域が前記撮像部の前記視野に入る複数の前記撮像位置に前記ワークと前記撮像部とを位置決めしたときの、該複数の撮像位置の各々に関して、前記撮像部の視野内の前記画像における前記非検査領域を算出する、請求項１〜７のいずれか１項に記載の装置。
【請求項９】
請求項１〜８のいずれか１項に記載の装置を備える、検査システム。
【請求項１０】
ワークを撮像する撮像部と、前記ワークまたは前記撮像部を移動させて該ワークと該撮像部とを互いに位置決めする移動機構とを有する、ワーク表面を検査する検査システムの検査対象外となる領域を算出する方法であって、
前記ワークの図面データを取得することと、
前記図面データにおいて前記ワークの被検査面の指定を受け付けることと、
前記図面データに基づいて、前記被検査面に点群を生成することと、
指定された前記被検査面の少なくとも一部が前記撮像部の視野に入る撮像位置に前記ワークと前記撮像部とを位置決めしたときの、前記移動機構を制御するための移動機構座標系における前記点群の座標データに基づいて、該撮像部の視野内の画像において前記被検査面以外の画像領域を非検査領域として算出することと、を備える、方法。
【請求項１１】
ワークを撮像する撮像部と、前記ワークまたは前記撮像部を移動させて該ワークと該撮像部とを互いに位置決めする移動機構とを有する、ワーク表面を検査する検査システムの検査対象外となる領域を算出する方法であって、
前記ワークの図面データを取得することと、
前記図面データにおいて前記ワークの被検査面の指定を受け付けることと、
指定された前記被検査面の少なくとも一部が前記撮像部の視野に入る撮像位置に前記ワークと前記撮像部とを位置決めしたときに該撮像部によって撮像されると推定される前記視野内の推定画像を、前記図面データに基づいて生成することと、
前記撮像位置に前記ワークと前記撮像部とを位置決めしたときの該撮像部の視野内の画像において、前記被検査面以外の画像領域を非検査領域として算出することと、を備え、
前記図面データに基づいて、前記被検査面に点群を生成し、
前記ワークと前記撮像部とを前記撮像位置に位置決めしたときに撮像されると推定される前記被検査面の少なくとも一部に生成された前記点群の各々を、前記視野を規定する撮像部座標系にプロットすることによって、前記推定画像を生成し、
生成した前記推定画像に含まれる前記被検査面以外の画像領域を、前記非検査領域として算出する、方法。